From: Motion Team Date: Fri, 4 Dec 2015 14:57:28 +0000 (+0100) Subject: Built motion from commit bc0f91f on branch develop. X-Git-Tag: 0.0.2 X-Git-Url: http://repos.xcallymotion.com/?a=commitdiff_plain;h=2c658898f4bd077ccf8284df74ce5420ede8b921;p=motion.git Built motion from commit bc0f91f on branch develop. --- diff --git a/package.json b/package.json index 5191bf8..383309e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "motion", - "version": "0.0.2", + "version": "0.0.3", "main": "server/app.js", "dependencies": { "accept-language-parser": "^1.0.2", @@ -54,6 +54,7 @@ "sequelize": "^3.14.1", "serve-favicon": "~2.3.0", "shelljs": "^0.5.3", + "simple-git": "^1.16.0", "simple-random": "^1.0.3", "socket.io": "^1.3.7", "socket.io-client": "^1.3.7", diff --git a/public/app/5c053d28.app.js b/public/app/84bcebb1.app.js similarity index 75% rename from public/app/5c053d28.app.js rename to public/app/84bcebb1.app.js index d685bd3..3d9e755 100644 --- a/public/app/5c053d28.app.js +++ b/public/app/84bcebb1.app.js @@ -2,13 +2,13 @@ g.UserId=a.application.UserId;break;case"queue":g.chatQueueId=a.application.chatQueueId}switch(a.application.intType){case"always":g.interval=e.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(e[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),e[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",e[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",e[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",g.interval=e.join(","),delete a.application.IntervalId;break;case"list":g.IntervalId=a.application.IntervalId}b.put("/api/chat/applications/"+c.actionId,g).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites.view.actions.view",{url:"/view/:actionId",templateUrl:"app/chat/website/view/action/view/view.html",controller:"chatWebsiteViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("chatWebsiteViewActionWizardCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){console.log(c),a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){b.get("/api/chat/queues",{params:{page:0,per_page:1e3}}).success(function(b){a.queues=b.rows}).error(function(a){console.error(a)})},a.getAgents=function(){b.get("/api/agents",{params:{page:0,per_page:1e3}}).success(function(b){a.agents=b.rows}).error(function(a){console.error(a)})},a.getIntervals=function(){b.get("/api/intervals",{params:{page:0,per_page:500}}).success(function(b){a.intervals=b.rows}).error(function(a){console.error(a)})},a.createItem=function(){var d=["*","*","*","*"],f={app:a.application.app,timeout:a.application.timeout,ChatWebsiteId:c.websiteId};switch(a.application.app){case"agent":f.UserId=a.application.UserId;break;case"queue":f.ChatQueueId=a.application.ChatQueueId}switch(a.application.intType){case"always":f.interval=d.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(d[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),d[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",d[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",d[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",f.interval=d.join(","),delete a.application.IntervalId;break;case"list":f.IntervalId=a.application.IntervalId}b.post("/api/chat/applications",f).success(function(){e.path("/chat/websites/view/"+c.websiteId+"/actions/list")}).error(function(a){console.error(a)})},a.formValidation=function(a){return a},a.next=function(){g.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites.view.actions.wizard",{url:"/wizard",templateUrl:"app/chat/website/view/action/wizard/wizard.html",controller:"chatWebsiteViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites.view.snippet",{url:"/snippet",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("chatWebsiteViewSnippetViewCtrl",["$scope","$http","$stateParams","$translate",function(a,b,c,d){a.$translate=d,a.statePreview={state:"online"},a.lang={HeaderCurrentlyChatting:"Live Chat",HeaderOffline:"Contact us",OperatorOfflineMessage:"It appears as if all operators are currently offline.",OfflineMessage:"We're not online.
It doesn't mean we're not there to help - leave your message below and we'll be in touch as soon as possible.",EnquiryMessagePlaceholder:"Your message...",EnquiryButtonText:"Leave message",EnquirySubmitSuccess:"Your message was sucessfully submitted - we will contact you as soon as possible.",OperatorComposing:"{fullname} is typing...",FirstMessageText:"",ExitChatButtonText:"Exit Chat",ExitChatQuestionText:"Are you sure?",ExitChatButtonConfirmText:"Yes",ExitChatButtonCancelText:"No",MessagePlaceholderText:"Your message...",MessageSendButtonText:"Send",ValidationEmailRequired:"Please enter your email address",ValidationEmailInvalid:"Please enter a valid email address",ValidationEmailMaxLength:"The email address may not exceed 85 characters",ValidationUsernameRequired:"Please enter your name",ValidationUsernameMaxLength:"The name may not exceed 45 characters",ValidationEnquiryRequired:"Please enter your enquiry",ValidationEnquiryMaxLength:"The enquiry may not exceed 1500 characters",ValidationMessageRequired:"Please enter your message",ValidationMessageMaxLength:"The message may not exceed 750 characters"},a.getSnippetCode=function(){b.get("api/chat/websites/"+c.websiteId+"/snippet").success(function(b){a.snippetCode=b})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites.view.snippet.view",{url:"/view",templateUrl:"app/chat/website/view/snippet/view/view.html",controller:"chatWebsiteViewSnippetViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewCtrl",["$scope","xAlert","$http","$location","$stateParams","$translate","WizardHandler",function(a,b,c,d,e,f,g){a.initApplication=function(){a.forms={},a.application={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.deleteItem=function(a){c["delete"]("api/chat/applications/"+a).error(function(){b.show(f.instant("Something went wrong!"),"danger")})},a.initView=function(){c.get("/api/chat/websites/"+e.websiteId).success(function(b){a.chatWebsite=b}).error(function(a){b.show(a.message,"danger")})},a.updateItem=function(){c.put("/api/chat/websites/"+a.chatWebsite.id,a.chatWebsite).success(function(){b.show(f.instant("MESSAGE_CHAT_WEBSITE_UPDATE_SUCCESS")+"!","success")}).error(function(){b.show(f.instant("MESSAGE_CHAT_WEBSITE_UPDATE_FAILURE"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites.view",{url:"/view/:websiteId",templateUrl:"app/chat/website/view/view.html",controller:"ChatWebsiteViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites",{url:"/websites",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert",function(a,b,c,d,e,f){a.$translate=d,a.forms={formSetting:void 0,formAppearance:void 0,formLabel:void 0,formFunctionality:void 0},a.next=function(){e.wizard().next()},a.exitValidation=function(a){return a},a.item={},a.createItem=function(){b.post("api/chat/websites",a.item).success(function(){f.show(d.instant("MESSAGE_CHAT_WEBSITE_CREATE_SUCCESS"),"success"),c.path("/chat/websites/list")}).error(function(){f.show(d.instant("MESSAGE_CHAT_WEBSITE_CREATE_FAILURE"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.chat.websites.wizard",{url:"/wizard",templateUrl:"app/chat/website/wizard/wizard.html",controller:"ChatWebsiteWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("DashboardCtrl",["$scope","$translate",function(a,b){a.voice=[{name:b.instant("APPLICATION_QUEUE"),link:"main.dashboard.voice"}],a.mail=[{name:b.instant("APPLICATION_QUEUE"),link:"main.dashboard.mail"}]}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.dashboard",{"abstract":!0,url:"/dashboard",templateUrl:"app/dashboard/dashboard.html",controller:"DashboardCtrl"}).state("main.dashboard.voice",{url:"/voice",controller:"DashboardVoiceCtrl",templateUrl:"app/dashboard/voice/voice.html"}).state("main.dashboard.mail",{url:"/mail",controller:"DashboardMailCtrl",templateUrl:"app/dashboard/mail/mail.html"})}]),angular.module("xCallyShuttleApp").controller("DashboardMailCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").controller("DashboardVoiceCtrl",["$scope","$http","xAlert","socket",function(a,b,c,d){function e(b,c){console.log("element in check Function is",b);var d;return!b.queuecallerjoinAt||b.queuecallerleaveAt||b.queuecallercompleteAt||b.queuecallerabandonAt?b.queuecallerjoinAt&&b.queuecallerleaveAt&&!b.queuecallercompleteAt&&!b.queuecallerabandonAt?d="activeCalls":b.queuecallerjoinAt&&b.queuecallerleaveAt&&b.queuecallercompleteAt&&!b.queuecallerabandonAt?d="completedCalls":b.queuecallerjoinAt&&b.queuecallerleaveAt&&!b.queuecallercompleteAt&&b.queuecallerabandonAt&&(d="abandonedCalls"):d="waitCalls",console.log("result type is",d),c?d:void(d&&a.queueStats[d]++)}a.queueStats={abandonedCalls:0,completedCalls:0,waitCalls:0,activeCalls:0},a.getQueueStats=function(){b.get("/api/report/queues").then(function(b){a.queueReports=b.data,a.queueReports.forEach(function(a){e(a,!1)}),d.socket.on("report_queue:save",function(b){console.log("report save or update");var c=_.find(a.queueReports,{id:b.id}),d=a.queueReports.indexOf(c);if(c){console.log("found item, is an update");var f=e(c,!0);console.log("old item value is "+f+", decrementing..."),f&&a.queueStats[f]--,_.merge(a.queueReports[d],b)}else console.log("item not found in collection, is a create"),a.queueReports.unshift(b);console.log("checking new item type and increasing..."),e(b,!1)})})["catch"](function(a){c.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.accounts",{url:"/accounts",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("FaxAccountListCtrl",["$scope","$http","xAlert","$translate","socket","Modal","$rootScope","$log","stResource",function(a,b,c,d,e,f,g,h,i){a.conf={faxAccountsByPage:{name:"10",value:10}},a.faxAccountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.fax_accounts={checked:[]},a.check=function(b,c){c?a.fax_accounts.checked=angular.copy(_.pluck(a.displayedFaxAccounts,"id")):a.fax_accounts.checked=[]},a.initList=function(b){e.unsyncUpdates("fax_account"),b.url="/api/fax/accounts",i.getPage(b).then(function(c){a.displayedFaxAccounts=c.rows,b.pagination.numberOfPages=c.total_pages,g.updateTableConfig(a.faxAccountsByPage,a.displayedFaxAccounts.length),g.updateTableConfig(a.conf.faxAccountsByPage,a.displayedFaxAccounts.length)}),e.socket.on("fax_account:save",function(){a.initList(b)}),e.socket.on("fax_account:remove",function(c){a.fax_accounts.checked=_.without(a.fax_accounts.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("api/fax/accounts/"+a).success(function(){c.show(d.instant("MESSAGE_FAX_ACCOUNT_DELETE_SUCCESS"),"success")}).error(function(){c.show(d.instant("MESSAGE_FAX_ACCOUNT_DELETE_FAILURE"),"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/fax/accounts",{params:{id:a.fax_accounts.checked}}).success(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){c.show(d.instant(a.message),"danger")})}),a.getFaxAccounts=function(b){return _.map(a.faxAccountsByPage,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.$on("$destroy",function(){e.unsyncUpdates("fax_account")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.accounts.list",{url:"/list",templateUrl:"app/fax/account/list/list.html",controller:"FaxAccountListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.forms={},a.sortableOptions={stop:function(){b.post("api/fax/accounts/"+c.id+"/applications",{applications:_.pluck(a.faxApplications,"id")}).success(function(b){a.faxApplications=b}).error(function(a){console.error(a)})},"ui-floating":!0},a.goNext=function(){f.wizard().next()},a.formValidation=function(a){return a},a.initApplication=function(){a.forms={},a.application={}},a.deleteItem=i.confirm["delete"](function(a){b["delete"]("api/fax/applications/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.getAppdata=function(b,c){switch(b){case"agent":return a.agents?_.find(a.agents,{id:c}).name:c;case"queue":return a.faxQueues?_.find(a.faxQueues,{id:c}).name:c}return"UNKNOWN"},a.createItem=function(){switch(a.application.appdata=a.application.appdata.id,a.application.app){case"agent":a.application.UserId=parseInt(a.application.appdata,10);break;case"queue":a.application.FaxQueueId=parseInt(a.application.appdata,10)}a.application.FaxAccountId=c.id,b.post("api/fax/applications",a.application).success(function(){e.path("fax/accounts/view/"+c.id+"/routes")}).error(function(){h.show("Something went wrong!","danger")})},a.$watch("application.app",function(c){if(c){var d;switch(c){case"agent":d="api/agents";break;case"queue":d="api/fax/queues"}b.get(d).success(function(b){a.items=b.rows})}},!0),a.initView=function(){b.get("/api/trunks").success(function(b){a.trunks=b.rows}).error(function(a){console.log(a)}),b.get("/api/fax/accounts/"+c.id).success(function(b){a.account=b}).error(function(){})},a.getAgents=function(){b.get("api/fax/agents").success(function(b){a.agents=b})},a.getFaxApplications=function(){b.get("/api/fax/applications",{params:{FaxAccountId:c.id}}).success(function(b){a.faxApplications=b,g.socket.on("fax_application:remove",function(b){_.remove(a.faxApplications,{id:b.id})})}),b.get("/api/agents").success(function(b){a.agents=b.rows}),b.get("/api/fax/queues").success(function(b){a.faxQueues=b.rows})},a.updateItemFaxAccount=function(){b.put("/api/fax/accounts/"+c.id,a.account).success(function(){h.show(d.instant("MESSAGE_FAX_ACCOUNT_UPDATE_SUCCESS")+".","success")}).error(function(){h.show(d.instant("MESSAGE_FAX_ACCOUNT_UPDATE_FAILURE")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.accounts.view",{url:"/view/:id",templateUrl:"app/fax/account/view/view.html",controller:"FaxAccountViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.fax.accounts.view.settings",{url:"/settings",templateUrl:"app/fax/account/view/view.settings.html",authenticate:!0}).state("main.fax.accounts.view.routes",{url:"/routes",templateUrl:"app/fax/account/view/view.routes.html",authenticate:!0}).state("main.fax.accounts.view.applications",{url:"/applications",templateUrl:"app/fax/account/view/view.applications.html",authenticate:!0})}]),angular.module("xCallyShuttleApp").controller("FaxAccountWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.$translate=d,a.forms={},a.item={},a.item.ecm=!1,a.item.minrate="9600",a.item.maxrate="33600",b.get("/api/trunks").success(function(b){a.trunks=b.rows}).error(function(a){console.error(a)})},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("api/fax/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_FAX_ACCOUNT_CREATE_SUCCESS")+".","success"),c.path("/fax/accounts/list")}).error(function(){e.show(d.instant("MESSAGE_FAX_ACCOUNT_CREATE_FAILURE")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.accounts.wizard",{url:"/wizard",templateUrl:"app/fax/account/wizard/wizard.html",controller:"FaxAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.automations",{url:"/automations",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("FaxAutomationListCtrl",["$scope","$http","$translate","$rootScope","stResource","Modal","socket","xAlert",function(a,b,c,d,e,f,g,h){a.conf={faxAutomationsByPage:{name:"10",value:10}},a.faxAutomationsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.faxAutomations={checked:[]},a.check=function(b,c){c?a.faxAutomations.checked=angular.copy(_.pluck(a.displayedFaxAutomations,"id")):a.faxAutomations.checked=[]},a.getFaxAutomations=function(b){return _.map(a.displayedFaxAutomations,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){g.unsyncUpdates("fax_business_automation"),b.url="/api/fax/business/automations",e.getPage(b).then(function(c){a.displayedFaxAutomations=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.faxAutomationsByPage,a.displayedFaxAutomations.length),d.updateTableConfig(a.conf.faxAutomationsByPage,a.displayedFaxAutomations.length)}),g.socket.on("fax_business_automation:save",function(){a.initList(b)}),g.socket.on("fax_business_automation:remove",function(c){a.faxAutomations.checked=_.without(a.faxAutomations.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/fax/business/automations/"+a).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/fax/business/automations",{params:{id:a.faxAutomations.checked}}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(c.instant(a.message),"danger")})}),a.updateItem=function(a,d){b.put("api/fax/business/automations/"+a,{status:d}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.$on("$destroy",function(){g.unsyncUpdates("fax_business_automation")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.automations.list",{url:"/list",templateUrl:"app/fax/automation/list/list.html",controller:"FaxAutomationListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FaxAutomationViewCtrl",["$scope","$stateParams","$http","automation","socket","xAlert","$translate","$log",function(a,b,c,d,e,f,g,h){a.initView=function(){a.forms={info:{}},a.automations=d.automations,c.get("/api/fax/business/automations/"+b.id).success(function(c){h.debug(c),a.test=c,a.automation=c,e.syncUpdatesByAttributes("business_condition",{FaxBusinessAutomationId:b.id},c.BusinessConditions)}).error(function(){f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateAutomation=function(){c.put("/api/fax/business/automations/"+a.automation.id,{name:a.automation.name,description:a.automation.description}).success(function(a){h.debug(a),f.show(g.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),h.error(a)})},a.getOperatorsByCondition=function(a){var b=[],c=_.find(d.automations.conditions,{key:a});return c.operators&&c.operators.length&&(b=c.operators),b},a.getAttributesByCondition=function(a){var b=[],c=_.find(d.automations.conditions,{key:a});if(c.attributes&&c.attributes.length)switch(c.key){case"createdAt":b=_.map(c.attributes,function(a){return a.value=parseInt(a.value,10),a});break;default:b=c.attributes}return b},a.addNewCondition=function(b){c.post("/api/business/conditions",{type:b,condition:"status",FaxBusinessAutomationId:a.automation.id}).success(function(b){a.automation.BusinessConditions.push(b)}).error(function(a){console.error(a),f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addNewAction=function(){c.post("/api/business/actions",{condition:"status",FaxBusinessAutomationId:a.automation.id}).success(function(b){a.automation.BusinessActions.push(b)}).error(function(a){console.error(a)})},a.removeCondition=function(a){c["delete"]("/api/business/conditions/"+a).success(function(a){console.log(a),f.show(g.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){console.error(a),f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.removeAction=function(b){c["delete"]("/api/business/actions/"+b).success(function(b){console.log(b),a.automation.BusinessActions=_.reject(a.automation.BusinessActions,{id:b.id})}).error(function(a){console.error(a),f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateCondition=function(a,b,d){var e={};e[b]=d,c.put("/api/business/conditions/"+a,e).success(function(a){console.log(a),f.show(g.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){console.error(a),f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateAction=function(a,b,d){var e={};e[b]=d,c.put("/api/business/actions/"+a,e).success(function(a){console.log(a),f.show(g.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){console.error(a),f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.automations.view",{url:"/view/:id",templateUrl:"app/fax/automation/view/view.html",controller:"FaxAutomationViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.fax.automations.view.settings",{url:"/settings",templateUrl:"app/fax/automation/view/view.settings.html",authenticate:!0}).state("main.fax.automations.view.routes",{url:"/routes",templateUrl:"app/fax/automation/view/view.routes.html",authenticate:!0}).state("main.fax.automations.view.application",{url:"/application",templateUrl:"app/fax/automation/view/view.application.html",authenticate:!0})}]),angular.module("xCallyShuttleApp").controller("FaxAutomationWizardCtrl",["$scope","$http","$location","automation","WizardHandler","xAlert","$translate",function(a,b,c,d,e,f,g){a.forms={},a.automations={or:[],and:[],actions:[]},a.addNewChoice=function(b){var c=angular.copy(d.automations);a.automations[b].push(c)},a.removeChoice=function(b,c){a.automations[b].splice(c)},a.goNext=function(){e.wizard().next()},a.createItem=function(){a.automations.or.forEach(function(a){a.condition=a.condition.key,a.type="or",delete a.conditions,delete a.actions}),a.automations.and.forEach(function(a){a.condition=a.condition.key,a.type="and",delete a.conditions,delete a.actions}),a.automations.actions.forEach(function(a){a.condition=a.condition.key,delete a.conditions,delete a.actions}),b.post("api/fax/business/automations",a.automations).success(function(){f.show(g.instant("MESSAGE_WELL_DONE"),"success"),c.path("/fax/automations/list")}).error(function(a){console.error(a),f.show(g.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.formValidation=function(a){return a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.automations.wizard",{url:"/wizard",templateUrl:"app/fax/automation/wizard/wizard.html",controller:"FaxAutomationWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax",{url:"/fax",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("FaxInboxComposeCtrl",["$scope","$http","FileUploader","$location","Auth","xAlert","$cookieStore","$translate",function(a,b,c,d,e,f,g,h){a.forms={},a.form={to:[],sto:[]},b.get("api/fax/accounts").success(function(b){a.faxAccounts=b.rows}),a.isNewMessageFromEmpty=!0;var i=a.uploader=new c({url:"api/fax/messages",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+g.get("token")}});i.filters.push({name:"pdfFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|pdf|".indexOf(b)}}),i.onBeforeUploadItem=function(b){b.formData.push({accountId:a.form.from.id,toNum:a.form.sto[0],isNewRoom:a.isNewMessageFromEmpty,userId:e.getCurrentUser().id,html:a.form.html?a.form.html:""})},i.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d)},i.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d)},i.onCompleteAll=function(){i.clearQueue(),f.show(h.instant("MESSAGE_WELL_DONE"),"success"),d.path("/fax/inbox/incoming")},i.onWhenAddingFileFailed=function(){f.show(h.instant("MESSAGE_WRONG_FORMAT"),"danger")},a.sendFax=function(){return a.form.sto.length?void(i.queue.length?i.uploadAll():b.post("api/fax/messages",{accountId:a.form.from.id,toNum:a.form.sto[0],isNewRoom:a.isNewMessageFromEmpty,userId:e.getCurrentUser().id,html:a.form.html,onlyText:!0}).success(function(){f.show(h.instant("MESSAGE_WELL_DONE"),"success"),d.path("/fax/inbox/incoming")}).error(function(a){f.show(h.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),console.error(a)})):(a.forms.compose.to.$valid=!1,void(a.forms.compose.to.$invalid=!0))},a.cancel=function(){a.form.sto=[],delete a.form.from}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.inbox.compose",{url:"/compose",templateUrl:"app/fax/inbox/room/room.html",controller:"FaxInboxComposeCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxInboxCtrl",["$scope","$http","$location","$translate","$timeout","$notification","Auth","socket","$interval",function(a,b,c,d,e,f,g,h,i){a.go=function(a,d,e){e?b.put("/api/fax/rooms/"+d,{status:e}).success(function(){c.path(a)}).error(function(a){console.error(a)}):c.path(a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.inbox",{url:"/inbox",templateUrl:"app/fax/inbox/inbox.html",controller:"FaxInboxCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/inbox.css","assets/css/todo.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxIncomingCtrl",["$scope","$http","$location","socket","Auth","xAlert",function(a,b,c,d,e,f){a.$location=c,a.getRooms=function(){e.isAdmin()?b.get("api/fax/rooms").success(function(b){a.faxRooms=b,d.syncUpdates("fax_room",a.faxRooms)}).error(function(a){console.error(a),f.show($translate.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")}):b.get("api/fax/rooms/agent/"+e.getCurrentUser().id).success(function(b){a.faxRooms=b,d.socket.on("fax_room:update",function(b){b.UserId===e.getCurrentUser().id&&a.faxRooms.push(b)})}).error(function(a){f.show($translate.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.inbox.incoming",{url:"/incoming",templateUrl:"app/fax/inbox/incoming/incoming.html",controller:"FaxInboxIncomingCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxInboxRoomCtrl",["$scope","$http","$stateParams","$location","FileUploader","socket","Auth","xAlert","$translate","$cookieStore",function(a,b,c,d,e,f,g,h,i,j){function k(){a.lastMessage=_.reject(a.faxRoom.FaxMessages,function(a){return"RECEIVED"!==a.status}),a.lastMessage=_.sortByOrder(a.lastMessage,["id"],["desc"])[0],a.lastMessage&&(console.log(a.faxRoom),a.form.from=a.faxRoom.FaxAccount,a.form.to=[a.lastMessage.From.phone],a.form.sto=[a.lastMessage.From.phone])}var l=a.uploader=new e({url:"api/fax/messages",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+j.get("token")}});l.filters.push({name:"pdfFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|pdf|".indexOf(b)}}),l.onBeforeUploadItem=function(b){console.log(a.form.from.id,a.form.sto[0],a.isNewMessageFromEmpty,c.id,g.getCurrentUser().id),b.formData.push({accountId:a.form.from.id,toNum:a.form.sto[0],isNewRoom:a.isNewMessageFromEmpty,roomId:c.id,userId:g.getCurrentUser().id,html:a.form.html}),console.log(b)},l.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d)},l.onErrorItem=function(a,b,c,d){console.info("onErrorItem",b,c,d)},l.onCompleteAll=function(){l.clearQueue(),h.show(i.instant("MESSAGE_WELL_DONE"),"success")},l.onWhenAddingFileFailed=function(){h.show(i.instant("MESSAGE_WRONG_FORMAT"),"danger")},a.initRoomView=function(){a.isNewMessageFromEmpty=!0,a.Auth=g,a.forms={},a.form={to:[],sto:[]},b.get("api/agents").success(function(b){a.agents=b}),b.get("api/fax/accounts").success(function(b){a.faxAccounts=b.rows}),c.id&&b.get("/api/fax/rooms/"+c.id).success(function(b){a.faxRoom=b,a.isNewMessageFromEmpty=!1,f.syncUpdates("fax_message",[],function(b,c){"created"===b&&c.FaxRoomId===a.faxRoom.id&&(a.faxRoom.FaxMessages.push(c),k())}),k()}).error(function(a){console.error(a),h.show(i.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.sendFax=function(){return a.form.sto.length?void(l.queue.length?l.uploadAll():b.post("api/fax/messages",{accountId:a.form.from.id,toNum:a.form.sto[0],isNewRoom:a.isNewMessageFromEmpty,userId:g.getCurrentUser().id,html:a.form.html,onlyText:!0}).success(function(){h.show(i.instant("MESSAGE_WELL_DONE"),"success"),console.log("Fax Message sent")}).error(function(a){h.show(i.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),console.error(a)})):(a.forms.compose.to.$valid=!1,void(a.forms.compose.to.$invalid=!0))},a.assignAgent=function(a){b.put("/api/fax/rooms/"+c.id,{UserId:a}).success(function(){h.show(i.instant("MESSAGE_WELL_DONE"),"danger")}).error(function(){h.show(i.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateStatus=function(d){b.put("/api/fax/rooms/"+c.id,{status:d}).success(function(b){a.faxRoom.status=b.status,h.show(i.instant("MESSAGE_WELL_DONE"),"danger")}).error(function(a){console.error(a),h.show(i.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){a.form.sto=[],delete a.form.from,l.clearQueue()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.inbox.room",{url:"/room/:id",templateUrl:"app/fax/inbox/room/room.html",controller:"FaxInboxRoomCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxQueueListCtrl",["$scope","$rootScope","$http","$translate","socket","Modal","xAlert","stResource",function(a,b,c,d,e,f,g,h){a.$on("$destroy",function(){e.unsyncUpdates("fax_queue")}),a.conf={queuesByPage:{name:"10",value:10}},a.queuesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.faxQueues={checked:[]},a.check=function(b,c){ c?a.faxQueues.checked=angular.copy(_.pluck(a.displayedFaxQueues,"id")):a.faxQueues.checked=[]},a.getFaxQueues=function(b){return _.map(a.displayedFaxQueues,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(c){e.unsyncUpdates("fax_queue"),c.url="/api/fax/queues",h.getPage(c).then(function(d){a.displayedFaxQueues=d.rows,c.pagination.numberOfPages=d.total_pages,b.updateTableConfig(d.queuesByPage,a.displayedFaxQueues.length),b.updateTableConfig(a.conf.queuesByPage,a.displayedFaxQueues.length)}),e.socket.on("fax_queue:save",function(){a.initList(c)}),e.socket.on("fax_queue:remove",function(b){a.faxQueues.checked=_.without(a.faxQueues.checked,b.id),a.initList(c)})},a.deleteItem=f.confirm["delete"](function(a){c["delete"]("/api/fax/queues/"+a).success(function(){g.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){g.show(a.message,"danger")})}),a.deleteItems=f.confirm["delete"](function(){c["delete"]("/api/fax/queues/",{params:{id:a.faxQueues.checked}}).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(d.instant(a.message),"danger")})}),a.deleteItems=f.confirm["delete"](function(){c["delete"]("/api/fax/queues/",{params:{id:a.faxQueues.checked}}).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.queues.list",{url:"/list",templateUrl:"app/fax/queue/list/list.html",controller:"FaxQueueListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.queues",{url:"/queues",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("FaxQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert",function(a,b,c,d,e){var f=function(){return{select:function(c){b.post("/api/fax/queues/"+a.queue.id+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})},deselect:function(c){b.put("/api/fax/queues/"+a.queue.id+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})}}};a.getQueue=function(){b.get("/api/fax/queues/"+d.id).success(function(b){a.queue=b}).error(function(){e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateFaxQueue=function(){var f=angular.copy(a.queue);b.put("/api/fax/queues/"+d.id,f).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"danger")}).error(function(){e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),a.queue=f})},a.getTeams=function(){b.get("/api/teams").success(function(c){a.teams=c.rows,b({url:"/api/fax/user_has_queues",method:"GET",params:{FaxQueueId:a.queue.id}}).success(function(b){ComponentsDropdowns.bindFaxQueue(a.teams,_.pluck(b,"UserId"),f)})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.queues.view",{url:"/view/:id",templateUrl:"app/fax/queue/view/view.html",controller:"FaxQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.fax.queues.view.settings",{url:"/settings",templateUrl:"app/fax/queue/view/view.settings.html"}).state("main.fax.queues.view.agents",{url:"/agents",templateUrl:"app/fax/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("FaxQueueWizardCtrl",["$scope","$http","WizardHandler","xAlert","$translate","$location",function(a,b,c,d,e,f){a.forms={},a.item={},a.next=function(){c.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/fax/queues",a.item).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success"),f.path("/fax/queues/list")}).error(function(a){d.show(e.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.queues.wizard",{url:"/wizard",templateUrl:"app/fax/queue/wizard/wizard.html",controller:"FaxQueueWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxTimelineListCtrl",["$scope","$http","socket","xAlert","$translate",function(a,b,c,d,e){function f(b){a.events>50&&a.events.pop(),a.events.unshift(b)}a.initList=function(){a.events=[],b.get("/api/events/channel/fax").success(function(a){a.forEach(f),c.socket.on("event:fax:save",f)}).error(function(a){console.error(a),d.show(e.instant("MESSAGE_FAX_ACCOUNT_GET_FAILURE"),"danger")})},a.$on("$destroy",function(){c.socket.removeAllListeners("event:fax:save")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.timeline.list",{url:"/list",templateUrl:"app/fax/timeline/list/list.html",controller:"FaxTimelineListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/timeline.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.fax.timeline",{url:"/timeline",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.integrations",{url:"/integrations",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("Integration",["$resource",function(a){return a("/api/integrations/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").controller("IntegrationListCtrl",["$scope","Modal","socket","FileUploader","Integration","xAlert",function(a,b,c,d,e,f){a.integrationsByPage=10;var g=a.uploader=new d({url:"api/integrations",autoUpload:!0,removeAfterUpload:!0});g.filters.push({name:"zipFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|zip|".indexOf(b)}}),g.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),f.show(b.name,"success")},g.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),b.errors.forEach(function(a){f.show(a.message,"danger")})},a.deleteItem=b.confirm["delete"](function(a){e["delete"]({id:a},function(){f.show("Integration Removed","success")},function(a){f.show(a.data.errors,"danger")})}),a.initList=function(){a.integrations=e.query({},function(a){c.syncUpdates("integration",a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.integrations.list",{url:"/list",templateUrl:"app/integration/list/list.html",controller:"IntegrationListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.intervals",{url:"/intervals",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("IntervalListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={intervalsByPage:{name:"10",value:10},labels:["name"]},a.intervalsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.intervals={checked:[]},a.check=function(b,c){c?a.intervals.checked=angular.copy(_.pluck(a.displayedIntervals,"id")):a.intervals.checked=[]},a.getIntervals=function(b){return _.map(a.displayedIntervals,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("interval"),b.url="/api/intervals",h.getPage(b).then(function(c){a.displayedIntervals=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.intervalsByPage,a.displayedIntervals.length),e.updateTableConfig(a.conf.intervalsByPage,a.displayedIntervals.length)}),c.socket.on("interval:save",function(){a.initList(b)}),c.socket.on("interval:remove",function(c){a.intervals.checked=_.without(a.intervals.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/intervals/"+a).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){f.show(d.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/intervals",{params:{id:a.intervals.checked}}).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.intervals.list",{url:"/list",templateUrl:"app/interval/list/list.html",controller:"IntervalListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("IntervalViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","interval",function(a,b,c,d,e,f,g,h,i,j){a.$translate=d,a.$interval=j.interval,a.forms={subinterval:void 0,general:void 0},a.initSubInterval=function(){a.subinterval={IntervalId:e.id},a.splittedInterval={t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0}},a.next=function(){b.post("/api/intervals/validate/",a.subinterval).success(function(a){console.log(a),a.length?c.show(d.instant("MESSAGE_EXIST_SUBINTERVAL"),"danger"):h.wizard().next()}).error(function(a){c.show(d.instant(a.message),"danger")})},a.previous=function(){h.wizard().previous()},a.exitValidation=function(a){return a},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from,a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to)):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from,a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to)):e="*",b+","+c+","+d+","+e},a.getInterval=function(){b.get("/api/intervals/"+e.id).success(function(b){a.interval=b,a.subIntervals=b.SubIntervals,f.unsyncUpdates("interval"),f.socket.on("interval:remove",function(b){b.id&&_.remove(a.subIntervals,function(a){return b.id===a.id})}),f.socket.on("interval:update",function(b){var c=_.find(a.subIntervals,{id:b.id});c.interval=b.interval}),f.socket.on("interval:save",function(b){if(b.IntervalId===e.id){var c=_.find(a.subIntervals,{id:b.id});c||a.subIntervals.push(b)}})}).error(function(a){console.error(a),g.path("/intervals/list")})},a.updateInterval=function(){var f=angular.copy(a.interval);b.put("/api/intervals/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.interval=f})},a.getSubInterval=function(){b.get("/api/intervals/"+e.appId).success(function(b){a.splittedInterval={t_from:moment(new Date),t_to:moment(new Date)},a.subinterval=b;var c,d=b.interval?b.interval.split(","):["*","*","*","*"];d.forEach(function(b,d){switch(d){case 0:"*"!==b?(c=b.split("-"),a.splittedInterval.t_from=moment(c[0],"HH:mm"),a.splittedInterval.t_to=moment(c[1],"HH:mm"),a.splittedInterval.alwaysTime=!1):(a.splittedInterval.t_from=moment(new Date),a.splittedInterval.t_to=moment(new Date),a.splittedInterval.alwaysTime=!0);break;case 1:"*"!==b?(c=b.split("-"),a.splittedInterval.wd_from=_.capitalize(c[0]),a.splittedInterval.wd_to=c[1]?_.capitalize(c[1]):"always"):(a.splittedInterval.wd_from="always",a.splittedInterval.wd_to="always");break;case 2:"*"!==b?(c=b.split("-"),a.splittedInterval.md_from=c[0],a.splittedInterval.md_to=c[1]?c[1]:"always"):(a.splittedInterval.md_from="always",a.splittedInterval.md_to="always");break;case 3:"*"!==b?(c=b.split("-"),a.splittedInterval.m_from=_.capitalize(c[0]),a.splittedInterval.m_to=c[1]?_.capitalize(c[1]):"always"):(a.splittedInterval.m_from="always",a.splittedInterval.m_to="always")}})}).error(function(a){console.error(a),g.path("/intervals/view/"+e.id+"/subintervals")})},a.createItem=function(){a.subinterval.interval=a.joinInterval(a.splittedInterval),b.post("/api/intervals/",a.subinterval).success(function(){g.path("/intervals/view/"+e.id+"/subintervals")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.updateItem=function(){a.subinterval.interval=a.joinInterval(a.splittedInterval),b.put("/api/intervals/"+e.appId,a.subinterval).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),g.path("/intervals/view/"+e.id+"/subintervals")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.deleteItem=i.confirm["delete"](function(a){b["delete"]("/api/intervals/"+a).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){console.log(a),c.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.intervals.view",{url:"/view/:id",templateUrl:"app/interval/view/view.html",controller:"IntervalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.intervals.view.settings",{url:"/settings",templateUrl:"app/interval/view/view.settings.html"}).state("main.intervals.view.subintervals",{url:"/subintervals",templateUrl:"app/interval/view/view.subintervals.html",cache:!1}).state("main.intervals.view.subinterval",{url:"/subinterval",templateUrl:"app/interval/view/view.subinterval.html",authenticate:!0}).state("main.intervals.view.subintervals.settings",{url:"/settings/:appId",templateUrl:"app/interval/view/view.subintervalSettings.html",authenticate:!0,controller:"IntervalViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("IntervalWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={interval:void 0},a.item={},a.next=function(){b.post("/api/intervals/validate/",a.item).success(function(a){console.log(a),a.length?e.show(f.instant("MESSAGE_EXIST_INTERVAL"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/intervals/",a.item).success(function(a){d.path("/intervals/view/"+a.id+"/subintervals")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.intervals.wizard",{url:"/wizard",templateUrl:"app/interval/wizard/wizard.html",controller:"IntervalWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("LoginCtrl",["$scope","Auth","$location","$window","$rootScope",function(a,b,c,d,e){a.userLogin={},a.userSignUp={},a.loginSubmitted=!1,a.signupSubmitted=!1,a.errorLogin=!1,a.errorSignup=!1,a.errorLog="",a.flagLogin1=!1,a.toogleLogin=function(){a.flagLogin1=!a.flagLogin1},e.bodyLayout="login",a.$on("$viewContentLoaded",function(){Metronic.init(),Layout.init()}),a.login=function(d){a.loginSubmitted=!0,d.$valid?b.login({name:a.userLogin.name,password:a.userLogin.password,remember:a.userLogin.remember}).then(function(){c.path("/dashboard/voice")})["catch"](function(b){a.errorLog=b.message,a.errorLogin=!0}):a.errorLogin=!0},a.signup=function(d){a.signupSubmitted=!0,d.$valid?b.createUser({email:a.userSignUp.email,fullname:a.userSignUp.fullname,name:a.userSignUp.name,password:a.userSignUp.password,role:a.userSignUp.role,online:!0}).then(function(){c.path("/")})["catch"](function(b){a.errorLog=b.message,a.errorSignup=!0}):a.errorSignup=!0},a.loginOauth=function(a){d.location.href="/auth/"+a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("login",{url:"/login",templateUrl:"app/login/login.html",controller:"LoginCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/login.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts",{url:"/accounts",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailAccountListCtrl",["$scope","$http","socket","$translate","$rootScope","Modal","stResource","xAlert",function(a,b,c,d,e,f,g,h){a.conf={mailAccountsByPage:{name:"10",value:10}},a.mailAccountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.mailAccounts={checked:[]},a.check=function(b,c){c?a.mailAccounts.checked=angular.copy(_.pluck(a.displayedMailAccounts,"id")):a.mailAccounts.checked=[]},a.getMailAccounts=function(b){return _.map(a.displayedMailAccounts,function(a){var c={};return b.forEach(function(b){_.isObject(b)?_.forIn(b,function(b,d){c[b]=a[d][b]}):c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("mail_server_in"),c.unsyncUpdates("mail_account"),b.url="/api/mail/accounts",g.getPage(b).then(function(c){a.displayedMailAccounts=c.rows,b.pagination.numberOfPages=c.total_pages}),c.socket.on("mail_server_in:save",function(){a.initList(b)}),c.socket.on("mail_account:save",function(){a.initList(b)}),c.socket.on("mail_account:remove",function(c){a.mailAccounts.checked=_.without(a.mailAccounts.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/mail/accounts/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(a.message,"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/mail/accounts",{params:{id:a.mailAccounts.checked}}).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(d.instant(a.message),"danger")})}),a.restart=function(a){c.socket.emit("IMAP:"+a+":RESTART",{msg:"IMAP:"+a+":RESTART"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.list",{url:"/list",templateUrl:"app/mail/account/list/list.html",controller:"MailAccountListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.view.actions",{url:"/actions",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionListCtrl",["$scope","$http","$translate","$stateParams","socket","xAlert","Modal",function(a,b,c,d,e,f,g){a.initActons=function(){console.log(d),a.sortableOptions={stop:function(){console.log("stop",_.pluck(a.mailApplications,"id")),b.post("api/mail/accounts/"+d.accountId+"/applications",{applications:_.pluck(a.mailApplications,"id")}).success(function(b){angular.copy(b,a.mailApplications)}).error(function(a){console.error(a)})}},b.get("/api/mail/applications",{params:{MailAccountId:d.accountId}}).success(function(b){a.mailApplications=b,e.socket.on("mail_application:remove",function(b){_.remove(a.mailApplications,{id:b.id})})})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("api/mail/applications/"+a).success(function(){f.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.view.actions.list",{url:"/list",templateUrl:"app/mail/account/view/action/list/list.html",controller:"MailAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],b.get("/api/mail/applications/"+c.actionId).success(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),console.log(c),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})}).error(function(a){console.error(a)})},a.getQueues=function(){b.get("/api/mail/queues",{params:{page:0,per_page:500}}).success(function(b){a.queues=b.rows}).error(function(a){console.error(a)})},a.getAgents=function(){b.get("/api/agents",{params:{page:0,per_page:500}}).success(function(b){a.agents=b.rows}).error(function(a){console.error(a)})},a.getIntervals=function(){b.get("/api/intervals",{params:{page:0,per_page:500}}).success(function(b){a.intervals=b.rows}).error(function(a){console.error(a)})},a.updateItem=function(){var e=["*","*","*","*"],g={app:a.application.app,timeout:a.application.timeout,MailAccountId:c.id};switch(a.application.app){case"agent":g.UserId=a.application.UserId;break;case"queue":g.MailQueueId=a.application.MailQueueId}switch(a.application.intType){case"always":g.interval=e.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(e[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),e[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",e[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",e[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",g.interval=e.join(","),delete a.application.IntervalId;break;case"list":g.IntervalId=a.application.IntervalId}b.put("/api/mail/applications/"+c.actionId,g).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.view.actions.view",{url:"/view/:actionId",templateUrl:"app/mail/account/view/action/view/view.html",controller:"MailAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionWizardCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){console.log(c),a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){b.get("/api/mail/queues",{params:{page:0,per_page:500}}).success(function(b){a.queues=b.rows}).error(function(a){console.error(a)})},a.getAgents=function(){b.get("/api/agents",{params:{page:0,per_page:500}}).success(function(b){a.agents=b.rows}).error(function(a){console.error(a)})},a.getIntervals=function(){b.get("/api/intervals",{params:{page:0,per_page:500}}).success(function(b){a.intervals=b.rows}).error(function(a){console.error(a)})},a.createItem=function(){var d=["*","*","*","*"],f={app:a.application.app,timeout:a.application.timeout,MailAccountId:c.accountId};switch(a.application.app){case"agent":f.UserId=a.application.UserId;break;case"queue":f.MailQueueId=a.application.MailQueueId}switch(a.application.intType){case"always":f.interval=d.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(d[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),d[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",d[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",d[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",f.interval=d.join(","),delete a.application.IntervalId;break;case"list":f.IntervalId=a.application.IntervalId}b.post("/api/mail/applications",f).success(function(){e.path("/mail/accounts/view/"+c.accountId+"/actions/list")}).error(function(a){console.error(a)})},a.formValidation=function(a){return a},a.next=function(){g.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.view.actions.wizard",{url:"/wizard",templateUrl:"app/mail/account/view/action/wizard/wizard.html",controller:"MailAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert",function(a,b,c,d,e,f){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){b.get("/api/mail/accounts/"+c.accountId).success(function(b){a.account=b})},a.updateItemMailAccount=function(){b.put("/api/mail/accounts/"+c.accountId,{name:a.account.name,description:a.account.description,address:a.account.address}).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateItemMailServerIn=function(){b.put("/api/mail/servers/in/"+a.account.MailServerIn.id,a.account.MailServerIn).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateItemMailServerOut=function(){b.put("/api/mail/servers/out/"+a.account.MailServerOut.id,a.account.MailServerOut).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.view",{url:"/view/:accountId",templateUrl:"app/mail/account/view/view.html",controller:"MailAccountViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.mail.accounts.view.settings",{url:"/settings",templateUrl:"app/mail/account/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("MailAccountWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert",function(a,b,c,d,e,f){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.forms={},a.info={},a["in"]={"delete":!1,ssl:!0,protocol:"IMAP",port:993,mailbox:"INBOX",filter:"UNSEEN"},a.out={ssl:!0,port:465},a.$translate=d},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a},a.createItem=function(){var e={name:a.info.name,address:a.info.address,description:a.info.description,incoming:a["in"],outgoing:a.out};b.post("api/mail/accounts",e).success(function(){c.path("/mail/accounts/list")}).error(function(a){console.log(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.accounts.wizard",{url:"/wizard",templateUrl:"app/mail/account/wizard/wizard.html",controller:"MailAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.automations",{url:"/automations",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailAutomationListCtrl",["$scope","$http","$translate","$rootScope","stResource","Modal","socket","xAlert",function(a,b,c,d,e,f,g,h){a.conf={mailAutomationsByPage:{name:"10",value:10}},a.mailAutomationsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.mailAutomations={checked:[]},a.check=function(b,c){c?a.mailAutomations.checked=angular.copy(_.pluck(a.displayedMailAutomations,"id")):a.mailAutomations.checked=[]},a.getMailAutomations=function(b){return _.map(a.displayedMailAutomations,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){g.unsyncUpdates("mail_business_automation"),b.url="/api/mail/business/automations",e.getPage(b).then(function(c){a.displayedMailAutomations=c.mailAutomations,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.mailAutomationsByPage,a.displayedMailAutomations.length),d.updateTableConfig(a.conf.mailAutomationsByPage,a.displayedMailAutomations.length)}),g.socket.on("mail_business_automation:save",function(){a.initList(b)}),g.socket.on("mail_business_automation:remove",function(c){a.mailAutomations.checked=_.without(a.mailAutomations.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/mail/business/automations/"+a).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"danger")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/mail/business/automations",{params:{id:a.mailAutomations.checked}}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(c.instant(a.message),"danger")})}),a.updateItem=function(a,d){b.put("api/mail/business/automations/"+a,{status:d}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.automations.list",{url:"/list",templateUrl:"app/mail/automation/list/list.html",controller:"MailAutomationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAutomationViewCtrl",["$scope","$stateParams","$http","$translate","automation","socket","xAlert",function(a,b,c,d,e,f,g){ a.initView=function(){a.forms={info:{}},a.automations=e.automations,c.get("/api/mail/business/automations/"+b.id).success(function(c){a.test=c,a.automation=c,f.syncUpdatesByAttributes("business_condition",{MailBusinessAutomationId:b.id},c.BusinessConditions)}).error(function(){})},a.updateAutomation=function(){c.put("/api/mail/business/automations/"+a.automation.id,{name:a.automation.name,description:a.automation.description}).success(function(a){g.show(d.instant("MESSAGE_WELL_DONE"),"success"),console.log(a)}).error(function(a){console.error(a)})},a.getOperatorsByCondition=function(a){var b=[],c=_.find(e.automations.conditions,{key:a});return c.operators&&c.operators.length&&(b=c.operators),b},a.getAttributesByCondition=function(a){var b=[],c=_.find(e.automations.conditions,{key:a});if(c.attributes&&c.attributes.length)switch(c.key){case"createdAt":b=_.map(c.attributes,function(a){return a.value=parseInt(a.value,10),a});break;default:b=c.attributes}return b},a.addNewCondition=function(b){c.post("/api/business/conditions",{type:b,condition:"status",MailBusinessAutomationId:a.automation.id}).success(function(b){a.automation.BusinessConditions.push(b)}).error(function(a){console.error(a)})},a.removeCondition=function(a){c["delete"]("/api/business/conditions/"+a).success(function(a){console.log(a)}).error(function(a){console.error(a)})},a.addNewAction=function(){c.post("/api/business/actions",{condition:"status",MailBusinessAutomationId:a.automation.id}).success(function(b){a.automation.BusinessActions.push(b)}).error(function(a){console.error(a)})},a.removeAction=function(b){c["delete"]("/api/business/actions/"+b).success(function(b){a.automation.BusinessActions=_.reject(a.automation.BusinessActions,{id:b.id})}).error(function(a){console.error(a)})},a.updateCondition=function(a,b,d){var e={};e[b]=d,c.put("/api/business/conditions/"+a,e).error(function(a){console.error(a)})},a.updateAction=function(a,b,d){var e={};e[b]=d,c.put("/api/business/actions/"+a,e).success(function(a){console.log(a)}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.automations.view",{url:"/view/:id",templateUrl:"app/mail/automation/view/view.html",controller:"MailAutomationViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.mail.automations.view.settings",{url:"/settings",templateUrl:"app/mail/automation/view/view.settings.html"}).state("main.mail.automations.view.routes",{url:"/routes",templateUrl:"app/mail/automation/view/view.routes.html"}).state("main.mail.automations.view.application",{url:"/application",templateUrl:"app/mail/automation/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("MailAutomationWizardCtrl",["$scope","$http","$location","$translate","automation","WizardHandler","xAlert",function(a,b,c,d,e,f,g){a.forms={},a.automations={or:[],and:[],actions:[]},a.addNewChoice=function(b){var c=angular.copy(e.automations);a.automations[b].push(c)},a.removeChoice=function(b,c){a.automations[b].splice(c)},a.goNext=function(){return a.automations.actions.length?a.automations.or.length||a.automations.and.length?void f.wizard().next():(g.show(d.instant("MESSAGE_INSERT_AT_LEAST_ONE_CONDITION"),"danger"),!1):(g.show(d.instant("MESSAGE_INSERT_AT_LEAST_ONE_ACTION"),"danger"),!1)},a.createItem=function(){a.automations.or.forEach(function(a){a.condition=a.condition.key,a.type="or",delete a.conditions,delete a.actions}),a.automations.and.forEach(function(a){a.condition=a.condition.key,a.type="and",delete a.conditions,delete a.actions}),a.automations.actions.forEach(function(a){a.condition=a.condition.key,delete a.conditions,delete a.actions}),b.post("api/mail/business/automations",a.automations).success(function(){c.path("/mail/automations/list")}).error(function(){g.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG","danger"))})},a.formValidation=function(a){return a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.automations.wizard",{url:"/wizard",templateUrl:"app/mail/automation/wizard/wizard.html",controller:"MailAutomationWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailComposeCtrl",["$scope","$http","$location","$cookieStore","$translate","xAlert","FileUploader",function(a,b,c,d,e,f,g){var h=a.uploader=new g({url:"api/mail/messages",withCredentials:!0,headers:{Authorization:"Bearer "+d.get("token")},queueLimit:1});h.onBeforeUploadItem=function(b){b.formData.push({mailAccountId:a.form.from.id,status:"SENDING",roomStatus:"OPEN",from:a.form.from.address,to:a.form.sto.join(";"),cc:a.form.scc.join(";"),subject:a.form.subject||null,html:a.form.html||null,text:a.form.text||null,attachment:!0})},h.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),f.show(e.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success")},h.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),f.show(e.instant("MESSAGE_MAIL_MESSAGE_SEND_FAILURE"),"danger")},h.onCompleteAll=function(){console.log("onCompleteAll"),c.path("/mail/inbox/incoming")},a.forms={},a.form={to:[],sto:[],cc:[],scc:[]},b.get("api/mail/accounts").success(function(b){a.mailAccounts=b.rows}),a.sendMail=function(){if(h.queue.length)console.log("file"),h.uploadAll();else{console.log("no file");var d={mailAccountId:a.form.from.id,status:"SENDING",roomStatus:"OPEN",from:a.form.from.address,to:a.form.sto.join(";"),cc:a.form.scc.join(";"),subject:a.form.subject||null,html:a.form.html||null,text:a.form.text||null};b.post("/api/mail/messages",d).success(function(){f.show(e.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success"),c.path("/mail/inbox/incoming")}).error(function(){f.show(e.instant("MESSAGE_MAIL_MESSAGE_SEND_FAILURE"),"danger")})}},a.cancel=function(){a.form.sto=[],a.form.scc=[],delete a.form.from,delete a.form.text,delete a.form.html}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.inbox.compose",{url:"/compose",templateUrl:"app/mail/inbox/room/room.html",controller:"MailComposeCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailInboxCtrl",["$scope","$http","$location",function(a,b,c){a.go=function(a){c.path(a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.inbox",{url:"/inbox",templateUrl:"app/mail/inbox/inbox.html",controller:"MailInboxCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css","assets/css/todo.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("MailIncomingCtrl",["$scope","$http","$location","$translate","$timeout","socket","xAlert","Auth","stResource","Modal",function(a,b,c,d,e,f,g,h,i,j){a.$location=c,a.conf={mailRoomsByPage:{name:"10",value:10},labels:["fullname","name","email"],test:"OPEN"},a.mailRoomsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.mailRooms={checked:[]},a.check=function(b,c){c?a.mailRooms.checked=angular.copy(_.pluck(a.displayedMailRooms,"id")):a.mailRooms.checked=[]},a.initList=function(b){f.unsyncUpdates("mail_room"),b.search.predicateObject||(b.search.predicateObject={}),b.sort.predicate="createdAt",b.sort.reverse=!0,h.isAdmin()?(f.socket.on("mail_room:save",function(){e(function(){g.show(d.instant("MESSAGE_MAIL_NEW_INCOMING_MAIL"),"success"),a.initList(b)},2e3)}),f.socket.on("mail_room:remove",function(c){a.mailRooms.checked=_.without(a.mailRooms.mailRooms,c.id),a.initList(b)})):(f.socket.on("mail_room:save",function(c){c.UserId===h.getCurrentUser().id&&a.initList(b)}),f.socket.on("mail_room:remove",function(c){c.UserId===h.getCurrentUser().id&&(a.mailRooms.checked=_.without(a.mailRooms.checked,c.id),a.initList(b))}),b.search.predicateObject.UserId=h.getCurrentUser().id),b.url="/api/mail/rooms",i.getPage(b).then(function(c){a.displayedMailRooms=c.mailRooms,b.pagination.numberOfPages=c.total_pages})},a.deleteItems=j.confirm["delete"](function(){b["delete"]("/api/mail/rooms",{params:{id:a.mailRooms.checked}}).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(d.instant(a.message),"danger")})}),a.$on("$destroy",function(){f.unsyncUpdates("mail_room")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.inbox.incoming",{url:"/incoming",templateUrl:"app/mail/inbox/incoming/incoming.html",controller:"MailIncomingCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("MailRoomCtrl",["$scope","$http","$stateParams","$timeout","$cookieStore","$location","$translate","$log","xAlert","Auth","socket","FileUploader",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(){a.lastMessage=_.reject(a.mailRoom.MailMessages,function(a){return"RECEIVED"!==a.status}),a.lastMessage=_.sortByOrder(a.lastMessage,["id"],["desc"])[0],a.lastMessage&&(a.form.subject=a.mailRoom.subject,a.form.from=a.mailRoom.MailAccount,a.form.to=[a.lastMessage.From.email],a.form.cc=a.lastMessage.To.concat(a.lastMessage.Cc),a.form.cc=_.pluck(a.form.cc,"email"),a.form.cc=_.remove(a.form.cc,function(b){return a.mailRoom.MailAccount?b!==a.mailRoom.MailAccount.address:void 0}),a.form.cc=a.form.cc,a.form.inReplyTo=a.lastMessage.messageId,a.form.MailRoomId=a.lastMessage.MailRoomId)}var n=a.uploader=new l({url:"api/mail/messages",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+e.get("token")}});n.onBeforeUploadItem=function(b){var c={mailAccountId:a.form.from.id,status:"SENDING",roomStatus:"OPEN",from:a.form.from.address,to:a.form.sto.join(";"),cc:a.form.scc.join(";"),subject:a.form.subject||null,html:a.form.html||null,text:a.form.text||null,MailRoomId:a.mailRoom.id};a.mailRoom.roomId&&(c.inReplyTo=a.mailRoom.roomId),b.formData.push(c)},n.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d)},n.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d)},n.onCompleteAll=function(){console.log("onCompleteAll"),f.path("/mail/inbox/incoming")},a.initRoomView=function(){a.Auth=j,a.forms={},a.form={to:[],sto:[],cc:[],scc:[]},b.get("/api/agents").success(function(b){a.agents=b.rows}),b.get("/api/mail/accounts").success(function(b){a.mailAccounts=b.rows}),b.get("/api/mail/rooms/"+c.id).success(function(c){a.mailRoom=c,k.syncUpdatesByAttributes("mail_message",{MailRoomId:a.mailRoom.id},a.mailRoom.MailMessages),"NEW"===a.mailRoom.status&&b.put("/api/mail/rooms/"+a.mailRoom.id,{status:"OPEN"}),m()}).error(function(){f.path("/mail/inbox/incoming")})},a.getMailString=function(a){return a.fullname?a.fullname+" <"+a.email+">":"<"+a.email+">"},a.sendMail=function(){if(n.queue.length)n.uploadAll();else{if(!a.form.to.length)return a.forms.compose.to.$valid=!1,void(a.forms.compose.to.$invalid=!0);a.forms.compose.to.$valid=!0,a.forms.compose.to.$invalid=!1;var c={mailAccountId:a.form.from.id,status:"SENDING",roomStatus:"OPEN",from:a.form.from.address,to:a.form.sto.join(";"),cc:a.form.scc.join(";"),subject:a.form.subject||null,html:a.form.html||null,text:a.form.text||null,MailRoomId:a.mailRoom.id};a.mailRoom.roomId&&(c.inReplyTo=a.mailRoom.roomId),h.debug(c),b.post("/api/mail/messages",c).success(function(){i.show(g.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success"),Metronic.scrollTop()}).error(function(){i.show(g.instant("MESSAGE_MAIL_MESSAGE_SEND_FAILURE"),"danger")})}},a.cancel=function(){a.form.sto=[],a.form.scc=[],delete a.form.text},a.updateStatus=function(d){b.put("/api/mail/rooms/"+c.id,{status:d}).success(function(b){a.mailRoom.status=b.status,i.show(g.instant("MESSAGE_STATUS_UPDATE_SUCCESS"),"success")}).error(function(){i.show(g.instant("MESSAGE_STATUS_UPDATE_FAILURE"),"danger")})},a.assignAgent=function(a){b.put("/api/mail/rooms/"+c.id,{UserId:a}).success(function(){i.show(g.instant("MESSAGE_MAIL_MESSAGE_ASSIGNEMNT_SUCCESS"),"success")}).error(function(){i.show(g.instant("MESSAGE_MAIL_MESSAGE_ASSIGNEMNT_FAILURE"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.inbox.room",{url:"/room/:id",templateUrl:"app/mail/inbox/room/room.html",controller:"MailRoomCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail",{url:"/mail",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailQueueListCtrl",["$scope","$http","$translate","$rootScope","socket","Modal","stResource","xAlert",function(a,b,c,d,e,f,g,h){a.$on("$destroy",function(){e.unsyncUpdates("mail_queue")}),a.conf={queuesByPage:{name:"10",value:10}},a.queuesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.mailQueues={checked:[]},a.check=function(b,c){c?a.mailQueues.checked=angular.copy(_.pluck(a.displayedMailQueues,"id")):a.mailQueues.checked=[]},a.getMailQueues=function(b){return _.map(a.displayedMailQueues,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){e.unsyncUpdates("mail_queue"),b.url="/api/mail/queues/",g.getPage(b).then(function(c){a.displayedMailQueues=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(c.queuesByPage,a.displayedMailQueues.length),d.updateTableConfig(a.conf.queuesByPage,a.displayedMailQueues.length)}),e.socket.on("mail_queue:save",function(){a.initList(b)}),e.socket.on("mail_queue:remove",function(c){a.mailQueues.checked=_.without(a.mailQueues.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/mail/queues/"+a).success(function(){h.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){h.show(a.message,"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/mail/queues/",{params:{id:a.mailQueues.checked}}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.queues.list",{url:"/list",templateUrl:"app/mail/queue/list/list.html",controller:"MailQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.queues",{url:"/queues",template:"
","abstract":!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert",function(a,b,c,d,e){var f=function(){return{select:function(c){b.post("/api/mail/queues/"+a.queue.id+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})},deselect:function(c){b.put("/api/mail/queues/"+a.queue.id+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})}}};a.getQueue=function(){b.get("/api/mail/queues/"+d.id).success(function(b){a.queue=b}).error(function(a){console.error(a)})},a.updateMailQueue=function(){var f=angular.copy(a.queue);b.put("/api/mail/queues/"+d.id,f).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(b){e.show(b.message,"success"),a.queue=f})},a.getTeams=function(){b.get("/api/teams").success(function(c){a.teams=c.rows,b.get("/api/mail/user_has_queues",{params:{MailQueueId:a.queue.id}}).success(function(b){ComponentsDropdowns.bindMailQueue(a.teams,_.pluck(b,"UserId"),f)})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.queues.view",{url:"/view/:id",templateUrl:"app/mail/queue/view/view.html",controller:"MailQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.mail.queues.view.settings",{url:"/settings",templateUrl:"app/mail/queue/view/view.settings.html"}).state("main.mail.queues.view.agents",{url:"/agents",templateUrl:"app/mail/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailQueueWizardCtrl",["$scope","$http","$location","WizardHandler","xAlert",function(a,b,c,d,e){a.forms={},a.item={},a.next=function(){d.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/mail/queues",a.item).success(function(){c.path("/mail/queues/list")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.queues.wizard",{url:"/wizard",templateUrl:"app/mail/queue/wizard/wizard.html",controller:"MailQueueWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.realtime",{url:"/realtime",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentCtrl",["$scope","$http","socket",function(a,b,c){console.log("MailRealtimeViewAgentCtrl"),a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.$on("$destroy",function(){c.unsyncUpdates("report_mail:save"),c.unsyncUpdates("report_mail:update")}),a.initAgents=function(){b.get("/api/report/mails").success(function(b){a.agents=b,c.socket.on("report_mail:save",function(b){var c=_.find(a.agents,{id:b.id});c||a.agents.unshift(b)}),c.socket.on("report_mail:update",function(b){var c=_.find(a.agents,{id:b.id}),d=a.agents.indexOf(c);c&&_.merge(a.agents[d],b)})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewSessionCtrl",["$scope","$http","socket",function(a,b,c){a.conf={sessionsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.sessionsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.$on("$destroy",function(){c.unsyncUpdates("report_mail:save"),c.unsyncUpdates("report_mail:update")}),a.initMails=function(){b.get("/api/report/mail/sessions").success(function(b){a.sessions=b,c.socket.on("report_mail_session:save",function(b){var c=_.find(a.sessions,{id:b.id}),d=a.sessions.indexOf(c);c?_.merge(a.sessions[d],b):a.sessions.unshift(b)})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewCtrl",["$scope",function(a){a.agents=[{name:"View1",link:"main.mail.realtime.view.agents"}],a.sessions=[{name:"View1",link:"main.mail.realtime.view.sessions"}]}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.realtime.view",{url:"/view",templateUrl:"app/mail/realtime/view/view.html",controller:"MailRealtimeViewCtrl"}).state("main.mail.realtime.view.agents",{url:"/agents",controller:"MailRealtimeViewAgentCtrl",templateUrl:"app/mail/realtime/view/agent/agent.html"}).state("main.mail.realtime.view.sessions",{url:"/sessions",controller:"MailRealtimeViewSessionCtrl",templateUrl:"app/mail/realtime/view/session/session.html"})}]),angular.module("xCallyShuttleApp").controller("MailStatisticsCtrl",["$scope","$http","$translate","socket",function(a,b,c,d){a.message="Hello",a.$translate=c,b.get("api/mail/rooms").success(function(b){a.mailRooms=b,d.syncUpdates("mail_room",a.mailRooms)}),b.get("api/mail/messages").success(function(b){a.mailMessages=b,d.syncUpdates("mail_message",a.mailMessages)})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.statistics",{url:"/statistics",templateUrl:"app/mail/statistics/statistics.html",controller:"MailStatisticsCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.mail.statistics.summary",{url:"/summary",templateUrl:"app/mail/statistics/statistics.summary.html",controller:"MailStatisticsCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile-old.css"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailTemplateListCtrl",["$scope","$http","$translate","$rootScope","socket","Modal","stResource","xAlert",function(a,b,c,d,e,f,g,h){a.$on("$destroy",function(){e.unsyncUpdates("mail_template")}),a.conf={templatesByPage:{name:"10",value:10}},a.templatesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.mailTemplates={checked:[]},a.check=function(b,c){c?a.mailTemplates.checked=angular.copy(_.pluck(a.displayedMailTemplates,"id")):a.mailTemplates.checked=[]},a.getMailTemplates=function(b){return _.map(a.displayedMailTemplates,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){e.unsyncUpdates("mail_template"),b.url="/api/mail/templates/",g.getPage(b).then(function(c){a.displayedMailTemplates=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(c.templatesByPage,a.displayedMailTemplates.length),d.updateTableConfig(a.conf.templatesByPage,a.displayedMailTemplates.length)}),e.socket.on("mail_template:save",function(){a.initList(b)}),e.socket.on("mail_template:remove",function(c){a.mailTemplates.checked=_.without(a.mailTemplates.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/mail/templates/"+a).success(function(){h.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){h.show(a.message,"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/mail/templates/",{params:{id:a.mailTemplates.checked}}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.templates.list",{url:"/list",templateUrl:"app/mail/template/list/list.html",controller:"MailTemplateListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.templates",{url:"/templates",template:"
","abstract":!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailTemplateViewCtrl",["$scope","$http","$translate","$stateParams","xAlert",function(a,b,c,d,e){a.items={},a.initItem=function(){b.get("/api/mail/accounts").success(function(c){a.mailAccounts=c.rows,b.get("/api/mail/templates/"+d.id).success(function(b){var c=_.find(a.mailAccounts,{address:b.from});a.item={name:b.name,description:b.description,subject:b.subject,from:{address:c.address,name:c.name,id:c.id},to:[],sto:b.to.split(";"),cc:[],scc:b.cc.split(";"),html:b.html,text:b.text,MailAccountId:b.MailAccountId}}).error(function(a){e.show(a.message,"danger")})})},a.updateItem=function(){var f={name:a.item.name,description:a.item.description,from:a.item.from.address,to:a.item.sto.join(";"),cc:a.item.scc.join(";"),subject:a.item.subject||null,html:a.item.html||null,text:a.item.text||null,MailAccountId:a.item.from.id};b.put("/api/mail/templates/"+d.id,f).success(function(a){console.log(a),e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.templates.view",{url:"/view/:id",templateUrl:"app/mail/template/view/view.html",controller:"MailTemplateViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.mail.templates.view.settings",{url:"/settings",templateUrl:"app/mail/template/view/view.settings.html"}).state("main.mail.templates.view.agents",{url:"/agents",templateUrl:"app/mail/template/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailTemplateWizardCtrl",["$scope","$http","$location","WizardHandler","xAlert",function(a,b,c,d,e){a.form={to:[],sto:[],cc:[],scc:[]},b.get("api/mail/accounts").success(function(b){a.mailAccounts=b.rows}),a.forms={},a.next=function(){d.wizard().next()},a.exitValidation=function(a){return a},a.saveTemplate=function(){var d={name:a.form.name,description:a.form.description,from:a.form.from.address,to:a.form.sto.join(";"),cc:a.form.scc.join(";"),subject:a.form.subject||null,html:a.form.html||null,text:a.form.text||null,MailAccountId:a.form.from.id};b.post("/api/mail/templates",d).success(function(){c.path("/mail/templates/list")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.templates.wizard",{url:"/wizard",templateUrl:"app/mail/template/wizard/wizard.html",controller:"MailTemplateWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailTimelineListCtrl",["$scope","$http","socket",function(a,b,c){function d(b){a.events>50&&a.events.pop(),a.events.unshift(b)}a.initList=function(){a.events=[],b.get("/api/events/channel/mail").success(function(a){a.forEach(d),c.socket.on("event:chat:save",d)}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.timeline.list",{url:"/list",templateUrl:"app/mail/timeline/list/list.html",controller:"MailTimelineListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/timeline.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.mail.timeline",{url:"/timeline",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MainCtrl",["$scope","$http","$rootScope","$cookies","$translate","$interval","socket","Auth",function(a,b,c,d,e,f,g,h){a.awesomeThings=[],a.isLoggedIn=h.isLoggedIn,a.isAdmin=h.isAdmin,a.getCurrentUser=h.getCurrentUser,a.$on("$viewContentLoaded",function(){Metronic.init()}),c.language=e.use(),a.changeLanguage=function(a){e.use(a).then(function(a){c.language=a})["catch"](function(a){console.error(a)})},a.$on("$destroy",function(){})}]),angular.module("xCallyShuttleApp").directive("ngSpinnerBar",["$rootScope",function(a){return{link:function(b,c){c.addClass("hide"),a.$on("$stateChangeStart",function(){"spinner-page"===c[0].id&&c.removeClass("hide")}),a.$on("$stateChangeSuccess",function(){"spinner-page"===c[0].id&&(c.addClass("hide"),$("body").removeClass("page-on-load"),Layout.setSidebarMenuActiveLink("match"),setTimeout(function(){Metronic.scrollTop()},1e3))}),a.$on("$spinnerStart",function(){"spinner-request"===c[0].id&&c.removeClass("hide")}),a.$on("$spinnerStop",function(){"spinner-request"===c[0].id&&c.addClass("hide")}),a.$on("$stateNotFound",function(){"spinner-page"===c[0].id&&c.addClass("hide")}),a.$on("$stateChangeError",function(){"spinner-page"===c[0].id&&c.addClass("hide")})}}}]).directive("a",function(){return{restrict:"E",link:function(a,b,c){(c.ngClick||""===c.href||"#"===c.href)&&b.on("click",function(a){a.preventDefault()})}}}).directive("nxEqual",function(){return{require:"ngModel",link:function(a,b,c,d){return c.nxEqual?(a.$watch(c.nxEqual,function(a){d.$setValidity("nxEqual",a===d.$viewValue)}),void d.$parsers.push(function(b){var e=b===a.$eval(c.nxEqual);return d.$setValidity("nxEqual",e),e?b:void 0})):void console.error("nxEqual expects a model as an argument!")}}}).directive("ngEnter",function(){return function(a,b,c){b.bind("keydown keypress",function(b){13===b.which&&(a.$apply(function(){a.$eval(c.ngEnter)}),b.preventDefault())})}}).directive("dropdownMenuHover",function(){return{link:function(a,b){b.dropdownHover()}}}).directive("uiSelectRequired",function(){return{require:"ngModel",link:function(a,b,c,d){d.$validators.uiSelectRequired=function(a){return a&&a.length}}}}).directive("rpattern",function(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a,b){return null==b||""===b||!h||a.test(b)?(d.$setValidity("pattern",!0),b):void d.$setValidity("pattern",!1)}var f,g=c.rpattern,h=!0;g&&(g.match(/^\/(.*)\/$/)?(g=new RegExp(g.substr(1,g.length-2)),f=function(a){return e(g,a)}):f=function(b){var c=a.$eval(g);if(!c||!c.test)throw new Error("Expected "+g+" to be a RegExp but was "+c);return e(c,b)}),d.$formatters.push(f),d.$parsers.push(f),c.$observe("required",function(a){h=a,f(d.$viewValue)})}}}).directive("queryBuilder",["$compile",function(a){return{restrict:"E",scope:{group:"=",fields:"=",operators:"=",properties:"="},templateUrl:"app/main/template.queryBuilderView.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){b.booleans=[{name:"AND"},{name:"OR"}],b.addCondition=function(a){"CONDITION"==a?b.group.rules.push({operator:"=",field:"",data:""}):b.group.rules.push({field:"",data:""})},b.removeCondition=function(a){b.group.rules.splice(a,1)},b.addGroup=function(a){b.group.rules.push({group:{"boolean":"AND",rules:[],type:a,main:!1}})},b.removeGroup=function(){b.$parent.group.rules.splice(b.$parent.$index,1)},e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]),angular.module("xCallyShuttleApp").filter("capitalize",function(){return function(a){return a?a.replace(/([^\W_]+[^\s-]*) */g,function(a){return a.charAt(0).toUpperCase()+a.substr(1).toLowerCase()}):""}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main",{"abstract":!0,templateUrl:"app/main/main.html",controller:"MainCtrl",resolve:{authorization:["$q","Auth","$state","$timeout","$location",function(a,b,c,d,e){return b.getToken()?a.when():(d(function(){e.path("/login")}),a.reject())}]}})}]),angular.module("xCallyShuttleApp").factory("xAlert",["$translate","Notification",function(a,b){return{show:function(c,d){switch(d){case"success":b.success({message:c,title:' '+a.instant("MESSAGE_SUCCESS")+"!",delay:5e3});break;case"danger":b.error({message:c,title:' '+a.instant("MESSAGE_ERROR")+"!",delay:1e4});break;default:b.info(c)}}}}]).factory("stResource",["$q","$filter","$timeout","$rootScope","$http","$translate","xAlert",function(a,b,c,d,e,f,g){return{getPage:function(b){var c={page:Math.ceil(b.pagination.start/b.pagination.number),per_page:b.pagination.number};b.sort.predicate&&(c.sort_by=b.sort.predicate,c.sort_order=b.sort.reverse?"DESC":"ASC"),_.forIn(b.search.predicateObject,function(a,b){c[b]=a}),d.$broadcast("$spinnerStart"),e.get(b.url,{params:c}).success(function(a){h.resolve(a),d.$broadcast("$spinnerStop")}).error(function(a){g.show(f.instant(a.message),"danger"), -d.$broadcast("$spinnerStop")});var h=a.defer();return h.promise}}}]),angular.module("xCallyShuttleApp").controller("MarketCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.market",{url:"/market",templateUrl:"app/market/market.html",controller:"MarketCtrl"})}]),angular.module("xCallyShuttleApp").controller("MotionbarCtrl",["$scope","$stateParams","$cookieStore","settings","Auth",function(a,b,c,d,e){e.loginWithToken(b.token,b.userId,b.name),a.getCurrentUser=e.getCurrentUser,d.layout.pageQuickSidebarOpened=!0}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("motionbar",{url:"/motionbar",template:"
","abstract":!0}).state("motionbar.chat",{url:"/chat?token&userId&name",templateUrl:"app/motionbar/motionbar.chat.html",controller:"MotionbarCtrl"})}]),angular.module("xCallyShuttleApp").controller("SoundListCtrl",["$scope","$http","socket","Modal","$q","FileUploader","$translate","xAlert","$cookieStore","$sce",function(a,b,c,d,e,f,g,h,i,j){a.isCollapsed=!0,a.audioSources={},a["delete"]=d.confirm["delete"](function(a){b["delete"]("/api/uploads/"+a).success(function(a){}).error(function(a){console.log(a)})}),a.getAudioSrc=function(a){return"/api/uploads/"+a},a.updateAudio=function(a,c){var d=e.defer();return b.put("/api/uploads/"+a,c).success(function(a){d.resolve()}).error(function(a){console.log(a.message),d.reject(a.message)}),d.promise},a.$on("$destroy",function(){c.unsyncUpdates("upload")}),a.initList=function(){b.get("/api/uploads").success(function(b){a.sounds=b,a.sounds.forEach(function(a){k(a)}),c.syncUpdates("upload",a.sounds)}).error(function(a){})};var k=function(c){b.get("/api/uploads/stream/"+c.id).success(function(b){a.audioSources[c.id]=b}).error(function(a){console.error(a)})};a.getSecureSrc=function(a){return j.trustAsResourceUrl("data:audio/ogg;base64,"+a)},a.getSecureDownloadSrc=function(a){return j.trustAsResourceUrl("data:application/octet-stream;charset=utf-16le;base64,"+a)};var l=a.uploader=new f({url:"/api/uploads",withCredentials:!0,headers:{Authorization:"Bearer "+i.get("token")}});l.filters.push({name:"customFilter",fn:function(a,b){return this.queue.length<10}}),l.onWhenAddingFileFailed=function(a,b,c){console.info("onWhenAddingFileFailed",a,b,c)},l.onAfterAddingFile=function(a){console.info("onAfterAddingFile",a)},l.onAfterAddingAll=function(a){console.info("onAfterAddingAll",a)},l.onBeforeUploadItem=function(a){console.info("onBeforeUploadItem",a)},l.onProgressItem=function(a,b){console.info("onProgressItem",a,b),a.isUploading=!0},l.onProgressAll=function(a){console.info("onProgressAll",a)},l.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),a.isUploading=!1},l.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),a.responseMessage=b,a.isUploading=!1},l.onCancelItem=function(a,b,c,d){console.info("onCancelItem",a,b,c,d),a.isUploading=!1},l.onCompleteItem=function(a,b,c,d){console.info("onCompleteItem",a,b,c,d),a.isUploading=!1},l.onCompleteAll=function(){console.info("onCompleteAll")},console.info("uploader",l)}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sounds.list",{url:"/list",templateUrl:"app/sound/list/list.html",controller:"SoundListCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sounds",{url:"/sounds",templateUrl:"app/sound/sound.html","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={odbcsByPage:{name:"10",value:10}},a.odbcsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.Odbcs={checked:[]},a.check=function(b,c){c?a.Odbcs.checked=angular.copy(_.pluck(a.displayedOdbcs,"id")):a.Odbcs.checked=[]},a.getOdbcs=function(b){return _.map(a.displayedOdbcs,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("square_odbc"),b.url="/api/square/odbc",h.getPage(b).then(function(c){a.displayedOdbcs=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.odbcsByPage,a.displayedOdbcs.length),d.updateTableConfig(a.conf.odbcsByPage,a.displayedOdbcs.length)}),c.socket.on("square_odbc:save",function(){a.initList(b)}),c.socket.on("square_odbc:remove",function(c){a.Odbcs.checked=_.without(a.Odbcs.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/square/odbc/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/square/odbc",{params:{id:a.Odbcs.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs.list",{url:"/list",templateUrl:"app/square/odbc/list/list.html",controller:"SquareOdbcListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs",{url:"/odbcs",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getOdbc=function(){b.get("/api/square/odbc/"+e.id).success(function(b){delete b.pwd,a.odbc=b}).error(function(a){console.error(a),f.path("/square/odbcs/list")})},a.updateOdbc=function(){var f=angular.copy(a.odbc);b.put("/api/square/odbc/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.odbc=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs.view",{url:"/view/:id",templateUrl:"app/square/odbc/view/view.html",controller:"SquareOdbcViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.square.odbcs.view.settings",{url:"/settings",templateUrl:"app/square/odbc/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={odbc:void 0},a.item={},a.next=function(){b.post("/api/square/odbc/validate/",a.item).success(function(a){a.length?e.show(f.instant("MESSAGE_EXIST_ODBC"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/square/odbc/",a.item).success(function(){d.path("/square/odbcs/list")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs.wizard",{url:"/wizard",templateUrl:"app/square/odbc/wizard/wizard.html",controller:"SquareOdbcWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("SquareProjectListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={projectsByPage:{name:"10",value:10}},a.projectsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.Projects={checked:[]},a.check=function(b,c){c?a.Projects.checked=angular.copy(_.pluck(a.displayedProjects,"id")):a.Projects.checked=[]},a.getProjects=function(b){return _.map(a.displayedProjects,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("square_project"),b.url="/api/square/projects",h.getPage(b).then(function(c){a.displayedProjects=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.projectsByPage,a.displayedProjects.length),d.updateTableConfig(a.conf.projectsByPage,a.displayedProjects.length)}),c.socket.on("square_project:save",function(){a.initList(b)}),c.socket.on("square_project:remove",function(c){a.Projects.checked=_.without(a.Projects.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/square/projects/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/square/projects",{params:{id:a.Projects.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.list",{url:"/list",templateUrl:"app/square/project/list/list.html",controller:"SquareProjectListCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects",{url:"/projects",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SquareProjectViewCtrl",["$scope","$http","$stateParams","socket","Auth","Modal","xAlert","$translate","$rootScope",function(a,b,c,d,e,f,g,h,i){a.squareProject={},a.getProject=function(){b.get("/api/square/projects/"+c.id).success(function(b){a.squareProject=b,angular.element(document).ready(function(){window.onerror=function(a,b,c){try{if(null!=a&&-1!=a.indexOf("Script error."));else{var d=new Image;d.src="assets/plugins/mxgraph/images/1x1.png?msg="+encodeURIComponent(a)+"&url="+encodeURIComponent(b)+"&lnum="+encodeURIComponent(c)}}catch(e){}},b.token=e.getToken();var a=new EditorUi(new Editor);a.openString(b.preproduction,b.name,b),a.editor.graphChangeListener=function(a,b){var c=b.properties.rtChange||!1;c||(this.modified=!0)}}),d.syncUpdates("square_project",[b],function(a,c,d){c.id===b.id})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.view",{url:"/view/:id",templateUrl:"app/square/project/view/view.html",controller:"SquareProjectViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",serie:!0,cache:!1,files:["assets/plugins/mxgraph/css/common.css","assets/plugins/mxgraph/css/explorer.css","assets/plugins/mxgraph/styles/grapheditor.css","assets/plugins/mxgraph/styles/custom.css","assets/plugins/mxgraph/js/custom.js","assets/plugins/mxgraph/js/mxClient.js","assets/plugins/mxgraph/js/Editor.js","assets/plugins/mxgraph/js/Graph.js","assets/plugins/mxgraph/js/EditorUi.js","assets/plugins/mxgraph/js/Actions.js","assets/plugins/mxgraph/js/Menus.js","assets/plugins/mxgraph/js/Sidebar.js","assets/plugins/mxgraph/js/Toolbar.js","assets/plugins/mxgraph/js/Dialogs.js"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("SquareProjectWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={project:void 0},a.item={},a.next=function(){b.post("/api/square/projects/validate/",a.item).success(function(a){a.length?e.show(f.instant("MESSAGE_EXIST_PROJECT"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/square/projects/",a.item).success(function(){d.path("/square/projects/list")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.wizard",{url:"/wizard",templateUrl:"app/square/project/wizard/wizard.html",controller:"SquareProjectWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square",{url:"/square",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TeamListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={teamsByPage:{name:"10",value:10}},a.teamsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.teams={checked:[]},a.check=function(b,c){c?a.teams.checked=angular.copy(_.pluck(a.displayedTeams,"id")):a.teams.checked=[]},a.getTeams=function(b){return _.map(a.displayedTeams,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("team"),b.url="/api/teams/",h.getPage(b).then(function(c){a.displayedTeams=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.teamsByPage,a.displayedTeams.length),d.updateTableConfig(a.conf.teamsByPage,a.displayedTeams.length)}),f.socket.on("team:save",function(){a.initList(b)}),f.socket.on("team:remove",function(c){a.teams.checked=_.without(a.teams.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("api/teams/"+a).success(function(){e.show(c.instant("MESSAGE_TEAM_DELETE_SUCCESS"),"success")}).error(function(){e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/teams",{params:{id:a.teams.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams.list",{url:"/list",templateUrl:"app/team/list/list.html",controller:"TeamListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams",{url:"/teams",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TeamViewCtrl",["$scope","$http","$stateParams","$translate","xAlert",function(a,b,c,d,e){a.message="Hello";var f=function(){return{select:function(c){b.post("/api/teams/"+a.team.id+"/agents",{agents:c}).error(function(a){console.error(a)})},deselect:function(c){b.put("/api/teams/"+a.team.id+"/agents",{agents:c}).error(function(a){console.error(a)})}}};a.initView=function(){b.get("/api/teams/"+c.id).success(function(b){a.team=b}).error(function(a){e.show(a.message,"danger")})},a.initAgents=function(){b.get("/api/agents").success(function(d){a.agents=d.rows,b.get("/api/user_has_teams",{params:{TeamId:c.id}}).success(function(b){ComponentsDropdowns.bindTeam(_.pluck(b,"UserId"),_.map(a.agents,function(a){return{id:a.id,name:a.name}}),f)}).error(function(a){console.error(a)})})},a.updateItem=function(){var f=angular.copy(a.team),g=angular.copy(a.team);b.put("/api/teams/"+c.id,f).success(function(){e.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(b){a.team=g,b.errors.forEach(function(a){e.show(a.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams.view",{url:"/view/:id",templateUrl:"app/team/view/view.html",controller:"TeamViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.teams.view.agents",{url:"/agents",templateUrl:"app/team/view/view.agents.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]}])}]}}).state("main.teams.view.settings",{url:"/settings",templateUrl:"app/team/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TeamWizardCtrl",["$scope","$http","$translate","$location","WizardHandler","xAlert",function(a,b,c,d,e,f){a.forms={info:void 0},a.item={},a.createItem=function(){b.post("api/teams",a.item).success(function(){f.show(c.instant("MESSAGE_TEAM_CREATE_SUCCESS"),"success"),d.path("/teams/list")}).error(function(a){a.errors.forEach(function(a){f.show(a.message,"danger")})})},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams.wizard",{url:"/wizard",templateUrl:"app/team/wizard/wizard.html",controller:"TeamWizardCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({name:"ui.select",insertBefore:"#ng_load_plugins_before",files:["assets/plugins/ui-select/select.min.css","assets/plugins/ui-select/select.min.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("TriggerListCtrl",["$scope","$http","$translate","$rootScope","stResource","Modal","socket","xAlert",function(a,b,c,d,e,f,g,h){a.conf={TriggersByPage:{name:"10",value:10}},a.TriggersByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.Triggers={checked:[]},a.check=function(b,c){c?a.Triggers.checked=angular.copy(_.pluck(a.displayedTriggers,"id")):a.Triggers.checked=[]},a.getTriggers=function(b){return _.map(a.displayedTriggers,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){g.unsyncUpdates("trigger"),b.url="/api/triggers",e.getPage(b).then(function(c){a.displayedTriggers=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.TriggersByPage,a.displayedTriggers.length),d.updateTableConfig(a.conf.TriggersByPage,a.displayedTriggers.length)}),g.socket.on("trigger:save",function(){a.initList(b)}),g.socket.on("trigger:remove",function(c){a.Triggers.checked=_.without(a.Triggers.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/triggers/"+a).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/triggers",{params:{id:a.Triggers.checked}}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(c.instant(a.message),"danger")})}),a.updateItem=function(a,d){b.put("api/triggers/"+a,{status:d}).success(function(a){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers.list",{url:"/list",templateUrl:"app/trigger/list/list.html",controller:"TriggerListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers",{url:"/triggers",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TriggerViewCtrl",["$scope","$stateParams","$http","$translate","xAlert","triggers",function(a,b,c,d,e,f){a.$triggers=f,a.forms={info:{}},a.fields={},a.properties=f.properties,a.initView=function(){c.get("/api/triggers/"+b.id).success(function(b){a.trigger=b,a.conditionsFilter=JSON.parse(b.conditions),a.actionsFilter=JSON.parse(b.actions),a.fields.conditions=a.$triggers.triggers[b.channel].conditions,a.fields.actions=a.$triggers.triggers[b.channel].actions}).error(function(a){e.show(a.message,"danger")})},a.getProperties=function(){g()};var g=function(){c.get("/api/mail/templates/").success(function(b){a.mailTemplates=b.rows;var c=[];b.rows.forEach(function(a){c.push({name:a.name,value:a.id})}),a.properties.mail.template=c}).error(function(a){e.show(a.message,"danger")})};a.updateTrigger=function(){c.put("/api/triggers/"+a.trigger.id,{name:a.trigger.name,description:a.trigger.description,conditions:angular.toJson(a.conditionsFilter),actions:angular.toJson(a.actionsFilter)}).success(function(){e.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers.view",{url:"/view/:id",templateUrl:"app/trigger/view/view.html",controller:"TriggerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.triggers.view.settings",{url:"/settings",templateUrl:"app/trigger/view/view.settings.html"}).state("main.triggers.view.routes",{url:"/routes",templateUrl:"app/trigger/view/view.routes.html"}).state("main.triggers.view.application",{url:"/application",templateUrl:"app/trigger/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("TriggerWizardCtrl",["$scope","$http","$location","xAlert","triggers","WizardHandler",function(a,b,c,d,e,f){a.$triggers=e,a.tempData={voice:{},mail:{},chat:{},fax:{}},a.item={},a.fields={},a.properties=e.properties,a.forms={general:{}};var g={group:{"boolean":"AND",rules:[],type:"CONDITION",main:!0}},h={group:{rules:[],type:"ACTION"}};a.conditionsFilter=_.clone(g,!0),a.actionsFilter=_.clone(h,!0),a.$watch("item.channel",function(b,c){c&&(a.tempData[c].conditionsFilter=_.clone(a.conditionsFilter,!0),a.tempData[c].actionsFilter=_.clone(a.actionsFilter,!0)),a.conditionsFilter=a.tempData[b].conditionsFilter?a.tempData[b].conditionsFilter:_.clone(g,!0),a.actionsFilter=a.tempData[b].actionsFilter?a.tempData[b].actionsFilter:_.clone(h,!0),a.fields.conditions=a.$triggers.triggers[b].conditions,a.fields.actions=a.$triggers.triggers[b].actions},!0),a.item.channel="voice",a.getProperties=function(){i()};var i=function(){b.get("/api/mail/templates/").success(function(b){a.mailTemplates=b.rows;var c=[];b.rows.forEach(function(a){c.push({name:a.name,value:a.id})}),a.properties.mail.template=c}).error(function(a){d.show(a.message,"danger")})};a.createItem=function(){a.item.conditions=angular.toJson(a.conditionsFilter),a.item.actions=angular.toJson(a.actionsFilter),b.post("/api/triggers",a.item).success(function(){c.path("/triggers/list")}).error(function(a){d.show(a.message,"danger")})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers.wizard",{url:"/wizard",templateUrl:"app/trigger/wizard/wizard.html",controller:"TriggerWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("TrunkListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={trunksByPage:{name:"10",value:10},labels:["name","host","context","description"]},a.trunksByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.trunks={checked:[]},a.check=function(b,c){c?a.trunks.checked=angular.copy(_.pluck(a.displayedTrunks,"id")):a.trunks.checked=[]},a.getTrunks=function(b){return _.map(a.displayedTrunks,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("trunk"),b.url="/api/trunks",console.log(b),h.getPage(b).then(function(c){a.displayedTrunks=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.trunksByPage,a.displayedTrunks.length),d.updateTableConfig(a.conf.trunksByPage,a.displayedTrunks.length)}),f.socket.on("trunk:save",function(){a.initList(b)}),f.socket.on("trunk:remove",function(c){a.trunks.checked=_.without(a.trunks.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/trunks/"+a).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/trunks",{params:{id:a.trunks.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})}),a.$on("$destroy",function(){console.log("trunks destroy")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks.list",{url:"/list",templateUrl:"app/trunk/list/list.html",controller:"TrunkListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks",{url:"/trunks",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TrunkViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location",function(a,b,c,d,e,f,g){a.getTrunk=function(){b.get("/api/trunks/"+e.id).success(function(b){b.nat=""===b.nat?[]:b.nat.split(","),b.allow=""===b.allow?[]:b.allow.split(";"),b.insecure=""===b.insecure?[]:b.insecure.split(","),b.transport=""===b.transport?[]:b.transport.split(","),delete b.secret,a.trunk=b}).error(function(a){console.error(a),g.path("/trunks/list")})},a.updateTrunk=function(){""===a.trunk.password&&delete a.trunk.password;var f=angular.copy(a.trunk);f.nat=f.nat.join(","),f.allow=f.allow.join(";"),f.insecure=f.insecure.join(","),f.transport=f.transport.join(","),b.put("/api/trunks/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),f.nat=f.nat.split(","),f.naallowt=f.allow.split(";"),f.insecure=f.insecure.split(","),f.transport=f.transport.split(","),a.trunk=f})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(d.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks.view",{url:"/view/:id",templateUrl:"app/trunk/view/view.html",controller:"TrunkViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.trunks.view.settings",{url:"/settings",templateUrl:"app/trunk/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TrunkWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.initWizard=function(){a.forms={},a.item={context:"from-voip-provider"}},a.next=function(d){d?b.post("/api/trunks/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_TRUNK"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")}):c.wizard().next()},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/trunks/",a.item).success(function(){d.path("/trunks/list")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks.wizard",{url:"/wizard",templateUrl:"app/trunk/wizard/wizard.html",controller:"TrunkWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("UserListCtrl",["$scope","$http","xAlert","$rootScope","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={usersByPage:{name:"10",value:10}},a.usersByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.users={checked:[]},a.check=function(b,c){c?a.users.checked=angular.copy(_.pluck(a.displayedUsers,"id")):a.users.checked=[]},a.getUsers=function(b){return _.map(a.displayedUsers,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/users/"+a).success(function(){c.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){a.errors.forEach(function(b){c.show(a.message+": "+b.message,"danger")})})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/users",{params:{id:a.users.checked}}).success(function(){c.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){a.errors.forEach(function(b){c.show(a.message+": "+b.message,"danger")})})}),a.initList=function(b){f.unsyncUpdates("user"),b.url="/api/users/",h.getPage(b).then(function(c){a.displayedUsers=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.usersByPage,a.displayedUsers.length),d.updateTableConfig(a.conf.usersByPage,a.displayedUsers.length)}),f.socket.on("user:save",function(){a.initList(b)}),f.socket.on("user:remove",function(c){a.users.checked=_.without(a.users.checked,c.id),a.initList(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users.list",{url:"/list",templateUrl:"app/user/list/list.html",controller:"UserListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users",{url:"/users",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("UserViewCtrl",["$scope","$http","$stateParams","$translate","FileUploader","$cookieStore","Auth","xAlert",function(a,b,c,d,e,f,g,h){a.Auth=g,a.updatePassword=function(){var e,f;g.isAdmin()?(e="/api/users/password/"+c.id+"/reset",f={newPassword:a.user.newPwd}):(e="/api/users/password/",f={oldPassword:a.user.currentPwd,newPassword:a.user.newPwd}),b.put(e,f).success(function(a){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})};var i=a.uploader=new e({url:"api/users/"+c.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+f.get("token")}});i.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),i.onSuccessItem=function(b,c,e,f){a.user.userpic=c.userpic,a.user.id===g.getCurrentUser().id&&(g.getCurrentUser().userpic=c.userpic),h.show(d.instant("MESSAGE_WELL_DONE"),"success")},i.onErrorItem=function(a,b,c,e){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},i.onCompleteAll=function(){i.clearQueue()},a.initView=function(){b.get("/api/users/"+c.id).success(function(b){a.user=b,a.user.transport=a.user.transport?a.user.transport.split(","):[],a.user.allow=a.user.allow?a.user.allow.split(";"):[]}).error(function(a){a.errors.forEach(function(b){h.show(a.message+": "+b.message,"danger")})})},a.updateItem=function(){var e=angular.copy(a.user),f=angular.copy(a.user);delete e.password,delete e.md5secret,e.transport=e.transport.join(","),e.allow=e.allow.join(";"),b.put("/api/users/"+c.id,e).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(b){a.user=f,b.errors.forEach(function(a){h.show(b.message+": "+a.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users.view",{url:"/view/:id",templateUrl:"app/user/view/view.html", -controller:"UserViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.users.view.account",{url:"/account",templateUrl:"app/user/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css","assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("UserWizardCtrl",["$scope","$http","$location","WizardHandler","xAlert","$translate",function(a,b,c,d,e,f){a.forms={info:void 0,voice:void 0},a.item={role:"user",host:"dynamic",context:"from-sip"},a.next=function(){d.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/users/",a.item).success(function(){e.show(f.instant("MESSAGE_WELL_DONE"),"success"),c.path("/users/list")}).error(function(a){a.errors.forEach(function(b){e.show(a.message+": "+b.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users.wizard",{url:"/wizard",templateUrl:"app/user/wizard/wizard.html",controller:"UserWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VariableListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VariableListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource","$uibModal","$log",function(a,b,c,d,e,f,g,h,i,j){a.conf={variablesByPage:{name:"10",value:10}},a.variablesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.Variables={checked:[]},a.check=function(b,c){c?a.Variables.checked=angular.copy(_.pluck(a.displayedVariables,"id")):a.Variables.checked=[]},a.getVariables=function(b){return _.map(a.displayedVariables,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("variable"),b.url="/api/variables",h.getPage(b).then(function(c){a.displayedVariables=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.variablesByPage,a.displayedVariables.length),d.updateTableConfig(a.conf.variablesByPage,a.displayedVariables.length)}),c.socket.on("variable:save",function(){a.initList(b)}),c.socket.on("variable:remove",function(c){a.Variables.checked=_.without(a.Variables.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/variables/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/variables",{params:{id:a.Variables.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.create=function(){var a=i.open({animation:!0,templateUrl:"app/variable/list/create.modal.html",controller:"VariableListCreateModalCtrl"});a.result.then(function(a){b.post("/api/variables",a).then(function(a){f.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.data.message,"danger")})},function(){j.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.variables.list",{url:"/list",templateUrl:"app/variable/list/list.html",controller:"VariableListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.variables",{url:"/variables",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VariableViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getVariable=function(){b.get("/api/variables/"+e.id).success(function(b){a.variable=b}).error(function(a){console.error(a),f.path("/variables/list")})},a.updateVariable=function(){var f=angular.copy(a.variable);b.put("/api/variables/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.variable=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.variables.view",{url:"/view/:id",templateUrl:"app/variable/view/view.html",controller:"VariableViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.variables.view.settings",{url:"/settings",templateUrl:"app/variable/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts",{url:"/contexts",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceContextListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={contextsByPage:{name:"10",value:10}},a.contextsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.voiceContexts={checked:[]},a.check=function(b,c){c?a.voiceContexts.checked=angular.copy(_.pluck(a.displayedVoiceContexts,"id")):a.voiceContexts.checked=[]},a.getVoiceContexts=function(b){return _.map(a.displayedVoiceContexts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_context"),b.url="/api/voice/contexts",h.getPage(b).then(function(c){a.displayedVoiceContexts=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.contextsByPage,a.displayedVoiceContexts.length),d.updateTableConfig(a.conf.contextsByPage,a.displayedVoiceContexts.length)}),c.socket.on("voice_context:save",function(){a.initList(b)}),c.socket.on("voice_context:remove",function(c){a.voiceContexts.checked=_.without(a.voiceContexts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/contexts/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/contexts",{params:{id:a.voiceContexts.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts.list",{url:"/list",templateUrl:"app/voice/context/list/list.html",controller:"VoiceContextListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceContextViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getContext=function(){b.get("/api/voice/contexts/"+e.id).success(function(b){a.context=b}).error(function(a){console.error(a),f.path("/voice/contexts/list")})},a.updateVoiceContext=function(){var f=angular.copy(a.context);b.put("/api/voice/contexts/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.context=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts.view",{url:"/view/:id",templateUrl:"app/voice/context/view/view.html",controller:"VoiceContextViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.contexts.view.settings",{url:"/settings",templateUrl:"app/voice/context/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("VoiceContextWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={context:void 0},a.item={},a.next=function(){b.post("/api/voice/contexts/validate/",a.item).success(function(a){console.log(a),a.length?e.show(f.instant("MESSAGE_EXIST_CONTEXT"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/contexts/",a.item).success(function(){d.path("/voice/contexts/list")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts.wizard",{url:"/wizard",templateUrl:"app/voice/context/wizard/wizard.html",controller:"VoiceContextWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceMohListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={mohsByPage:{name:"10",value:10},labels:["name","directory","sort","description"]},a.mohsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.mohs={checked:[]},a.check=function(b,c){c?a.mohs.checked=angular.copy(_.pluck(a.displayedMohs,"id")):a.mohs.checked=[]},a.getMohs=function(b){return _.map(a.displayedMohs,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("voice_musiconhold"),b.url="/api/voice/musiconholds",h.getPage(b).then(function(c){a.displayedMohs=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.mohsByPage,a.displayedMohs.length),d.updateTableConfig(a.conf.mohsByPage,a.displayedMohs.length)}),f.socket.on("voice_musiconhold:save",function(){a.initList(b)}),f.socket.on("voice_musiconhold:remove",function(c){a.mohs.checked=_.without(a.mohs.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/musiconholds/"+a).success(function(){e.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){e.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/musiconholds",{params:{id:a.mohs.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs.list",{url:"/list",templateUrl:"app/voice/moh/list/list.html",controller:"VoiceMohListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs",{url:"/mohs",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceMohViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","Modal","$sce","$location",function(a,b,c,d,e,f,g,h,i){a.$translate=d,a.audioSources={},a.sortOptions=[{value:"random",name:"APPLICATION_RANDOM"},{value:"alpha",name:"APPLICATION_ALPHABETICAL"}],a.getMoh=function(){b.get("/api/voice/musiconholds/"+e.id).success(function(b){delete b.stamp,a.moh=b}).error(function(a){console.error(a),i.path("/voice/mohs/list")})},a.updateVoiceMoh=function(){console.log("update");var f=angular.copy(a.moh);b.put("/api/voice/musiconholds/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.voiceMoh=f})},a.addMohs=function(){b.post("/api/voice/musiconholds/"+e.id+"/files",a.item).success(function(){i.path("voice/mohs/view/"+e.id+"/audios")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getAudioFiles=function(){b.get("/api/voice/musiconholds/"+e.id+"/files").success(function(b){a.audioFiles=b.files,a.mohPath=b.path,a.audioFiles.forEach(function(a){j(a)})}).error(function(a){console.error(a)})},a.getSecureSrc=function(a){return h.trustAsResourceUrl(a)};var j=function(c){b.get("/api/voice/musiconholds/stream",{params:{path:encodeURI(a.mohPath+"/"+c)}}).success(function(b){a.audioSources[c]="data:audio/ogg;base64,"+b}).error(function(a){console.error(a)})};a.getSounds=function(){a.item={sounds:[]},b.get("/api/uploads").success(function(b){a.soundList=b}).error(function(a){console.error(a)})},a.deleteItem=g.confirm["delete"](function(f){b["delete"]("/api/voice/musiconholds/"+e.id+"/files",{params:{filename:f}}).success(function(){_.remove(a.audioFiles,function(a){return a===f}),c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){c.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs.view",{url:"/view/:id",templateUrl:"app/voice/moh/view/view.html",controller:"VoiceMohViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.mohs.view.settings",{url:"/settings",templateUrl:"app/voice/moh/view/view.settings.html"}).state("main.voice.mohs.view.audios",{url:"/audios",templateUrl:"app/voice/moh/view/view.audios.html",cache:!1}).state("main.voice.mohs.view.add",{url:"/add",templateUrl:"app/voice/moh/view/view.addFiles.html",cache:!1})}]),angular.module("xCallyShuttleApp").controller("VoiceMohWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.$translate=g,a.initWizard=function(){a.forms={},a.item={sort:"alpha"}},a.next=function(){b.post("/api/voice/musiconholds/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_MOH"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/musiconholds/",a.item).success(function(a){d.path("/voice/mohs/view/"+a.id+"/audios")}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs.wizard",{url:"/wizard",templateUrl:"app/voice/moh/wizard/wizard.html",controller:"VoiceMohWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueListCtrl",["$scope","$http","socket","$translate","$rootScope","Modal","xAlert","stResource",function(a,b,c,d,e,f,g,h){a.conf={voiceQueuesByPage:{name:"10",value:10},labels:["name","description","strategy","context"]},a.voiceQueuesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.queues={checked:[]},a.check=function(b,c){c?a.queues.checked=angular.copy(_.pluck(a.displayedQueues,"name")):a.queues.checked=[]},a.getQueues=function(b){return _.map(a.displayedQueues,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_queue"),b.url="/api/voice/queues",h.getPage(b).then(function(c){a.displayedQueues=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.voiceQueuesByPage,a.displayedQueues.length),e.updateTableConfig(a.conf.voiceQueuesByPage,a.displayedQueues.length)}),c.socket.on("voice_queue:save",function(){a.initList(b)}),c.socket.on("voice_queue:remove",function(c){console.log("remove"),a.queues.checked=_.without(a.queues.checked,c.name),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/voice/queues/"+a).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(a.message,"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/voice/queues",{params:{name:a.queues.checked}}).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues.list",{url:"/list",templateUrl:"app/voice/queue/list/list.html",controller:"VoiceQueueListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues",{url:"/queues",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location",function(a,b,c,d,e,f,g){a.binaryChoices=[{name:"Yes",value:1},{name:"No",value:0}],a.monitorFormats=[{name:"wav",value:"wav"},{name:"gsm",value:"gsm"},{name:"Inactive",value:""}],a.queueAnnounces=[{display_name:"Default",value:null},{display_name:"Disabled",value:""}];var h=function(){return{select:function(c){b.post("/api/voice/queues/"+a.queue.name+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})},deselect:function(c){b.put("/api/voice/queues/"+a.queue.name+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})}}};a.getQueue=function(){b.get("/api/voice/queues/"+e.id).success(function(b){b.joinempty=""===b.joinempty?[]:b.joinempty.split(","),b.leavewhenempty=""===b.leavewhenempty?[]:b.leavewhenempty.split(","),b.periodic_announce=""===b.periodic_announce?[]:b.periodic_announce.split(","),a.queue=b}).error(function(a){g.path("/voice/queues/list")})},a.updateVoiceQueue=function(){var f=angular.copy(a.queue);f.joinempty=f.joinempty.join(","),f.leavewhenempty=f.leavewhenempty.join(","),f.periodic_announce=f.periodic_announce.join(","),f.context||(f.context=null),b.put("/api/voice/queues/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),f.joinempty=f.joinempty.split(","),f.leavewhenempty=f.leavewhenempty.split(","),f.periodic_announce=f.periodic_announce.split(","),a.queue=f})},a.getTeams=function(){b.get("/api/teams").success(function(c){a.teams=c.rows,b({url:"/api/voice/user_has_queues",method:"GET",params:{queue:a.queue.name}}).success(function(b){ComponentsDropdowns.bindQueue(a.teams,_.pluck(b,"UserId"),h)})}).error(function(a){console.error(a)})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getMohs=function(){b.get("/api/voice/musiconholds").success(function(b){a.voiceMohs=b.rows,f.syncUpdates("voice_musiconhold",a.voiceMohs)}).error(function(a){c.show(a.message,"danger")})},a.getSounds=function(){b.get("/api/uploads").success(function(b){a.queueAnnounces=a.queueAnnounces.concat(b),a.periodicAnnounces=angular.copy(b),b.unshift({display_name:"None",converted_path:null,value:""}),a.sounds=b,f.syncUpdates("upload",a.sounds)}).error(function(a){console.error(a)})},a.returnAnnouncePath=function(a){return console.log("func"),a.converted_path?a.converted_path+"/"+a.save_name:null===a.value?null:a.value}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues.view",{url:"/view/:id",templateUrl:"app/voice/queue/view/view.html",controller:"VoiceQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.queues.view.settings",{url:"/settings",templateUrl:"app/voice/queue/view/view.settings.html"}).state("main.voice.queues.view.agents",{url:"/agents",templateUrl:"app/voice/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={queue:void 0},a.item={},a.next=function(){b.post("/api/voice/queues/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_QUEUE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/queues/",a.item).success(function(){d.path("/voice/queues/list")}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues.wizard",{url:"/wizard",templateUrl:"app/voice/queue/wizard/wizard.html",controller:"VoiceQueueWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.realtime",{url:"/realtime",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentCtrl",["$scope","$http","$log","$uibModal","$translate","socket","xAlert",function(a,b,c,d,e,f,g){a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.$on("$destroy",function(){f.unsyncUpdates("user_has_voice_queue")}),a.groups=[],a.pauses=["pausa1","pausa2","pausa3"],a.pause=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/agent/pause.modal.html",controller:"VoiceRealtimeViewAgentPauseModalCtrl",resolve:{items:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){b.post("/api/ami",a).then(function(a){console.log(a),g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.log(a),g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.add=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/agent/queue.modal.add.html",controller:"VoiceRealtimeViewAgentQueueModalCtrl",resolve:{pauses:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){console.log(a),b.post("/api/voice/user_has_queues",a).then(function(){a.login?b.post("/api/ami",a).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.remove=function(a,f){var h=d.open({animation:!0,size:a,templateUrl:"app/voice/realtime/view/agent/queue.modal.remove.html",controller:"VoiceRealtimeViewAgentQueueModalCtrl",resolve:{pauses:function(){return null},data:function(){return f}}});h.result.then(function(a){_.isArray(a)?a.forEach(function(a){b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})}):b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.initAgents=function(){b.get("/api/voice/user_has_queues").success(function(b){a.agents=b,a.groups=_.map(_.groupBy(a.agents,"membername"),function(a,b){return{membername:b,queues:a}}),f.socket.on("user_has_voice_queue:save",function(b){var c=_.find(a.groups,{membername:b.membername}),d=a.groups.indexOf(c);if(c){var e=_.find(c.queues,{queue:b.queue});e?_.merge(e,b):a.groups[d].queues.push(b)}else{var f={membername:b.membername,queues:[b]};a.groups.unshift(f)}}),f.socket.on("user_has_voice_queue:remove",function(b){var c=_.find(a.groups,{membername:b.membername});_.remove(c.queues,{queue:b.queue}),c.queues.length||_.remove(a.groups,{membername:b.membername})}),f.socket.on("report_agent:save",function(b){var c=_.find(a.groups,{membername:b.membername}),d=a.groups.indexOf(c);if(c){var e=_.find(c.queues,{queue:b.queue});e?_.merge(e,b):a.groups[d].queues.push(b)}else{var f={membername:b.membername,queues:[b]};a.groups.unshift(f)}})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentPauseModalCtrl",["$scope","$uibModalInstance","items","data",function(a,b,c,d){a.items=c,a.data=d,a.selected={item:a.items[0],queue:_.isArray(d)?a.data[0].queue:a.data.queue,membername:_.isArray(d)?a.data[0].membername:a.data.membername,"interface":_.isArray(d)?a.data[0]["interface"]:a.data["interface"]},a.ok=function(c){var e={action:"QueuePause","interface":a.selected["interface"],paused:c,reason:a.selected.item};_.isArray(d)||(e.queue=a.selected.queue),b.close(e)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","pauses","data",function(a,b,c,d,e){a.initAdd=function(){a.data=e,a.pauses=d,a.selected={membername:a.data[0].membername,"interface":a.data[0]["interface"],penalty:0,paused:!1,reason:a.pauses[0],UserId:a.data[0].UserId},c.get("/api/voice/queues",{params:{page:0,per_page:100}}).success(function(b){a.queues=_.reject(b.rows,function(b){return _.find(a.data,{queue:b.name})?!0:!1}),a.selected.queue=a.queues[0]?a.queues[0].name:null,console.log(a.queues)}).error(function(a){console.error(a)})},a.initRemove=function(){a.data=e,_.isArray(e)?a.selected={membername:a.data[0].membername,"interface":a.data[0]["interface"],logout:!1,UserId:a.data[0].UserId}:a.selected={membername:a.data.membername,"interface":a.data["interface"],queue:a.data.queue,logout:!1,UserId:a.data.UserId}},a.okAdd=function(){console.log(a.selected);var c={action:"QueueAdd",logged:a.data[0].logged,loggedAt:a.data[0].loggedAt,queue:a.selected.queue,membername:a.selected.membername,"interface":a.selected["interface"],penalty:a.selected.penalty,paused:a.selected.paused,UserId:a.selected.UserId};c.paused&&(c.reason=a.selected.reason),b.close(c)},a.okRemove=function(){var c;_.isArray(a.data)?(c=[],a.data.forEach(function(b){c.push({action:"QueueRemove",queue:b.queue,"interface":b["interface"],logout:a.selected.logout,UserId:b.UserId})})):c={action:"QueueRemove",queue:a.selected.queue,logout:a.selected.logout,"interface":a.selected["interface"],UserId:a.selected.UserId},b.close(c)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentReportCtrl",["$scope","$http","socket",function(a,b,c){a.$on("$destroy",function(){c.unsyncUpdates("report_agent")}),a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.initReport=function(){a.agents=[],b.get("/api/report/agents").success(function(b){a.agents=b,c.syncUpdates("report_agent",a.agents)}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").filter("VoiceRealtimeViewAgentReportFilter",function(){return function(a){return new Date(1970,0,1).setSeconds(a)}}),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueReportCtrl",["$scope","$http","socket",function(a,b,c){a.$on("$destroy",function(){c.unsyncUpdates("report_queue")}),a.conf={queuesByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.queuesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.initReport=function(){a.queues=[],b.get("/api/report/queues").success(function(b){console.log(b),a.queues=b,c.syncUpdates("report_queue",a.queues)}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").filter("VoiceRealtimeViewQueueReportFilter",function(){return function(a){return new Date(1970,0,1).setSeconds(a)}}),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueuePauseModalCtrl",["$scope","$uibModalInstance","items","data",function(a,b,c,d){a.items=c,a.data=d,console.log(d),a.selected={item:a.items[0],queue:_.isArray(d)?a.data[0].queue:a.data.queue,membername:_.isArray(d)?a.data[0].membername:a.data.membername,"interface":_.isArray(d)?a.data[0]["interface"]:a.data["interface"]},a.ok=function(c,e){var f;_.isArray(d)?(f=[],d.forEach(function(b){f.push({action:"QueuePause",queue:b.queue,membername:b.membername,"interface":b["interface"],paused:c,reason:a.selected.item})})):f={action:"QueuePause",queue:a.selected.queue,membername:a.selected.membername,"interface":a.selected["interface"],paused:c,reason:a.selected.item},b.close(f)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueCtrl",["$scope","$http","$log","$uibModal","$translate","socket","xAlert",function(a,b,c,d,e,f,g){a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.$on("$destroy",function(){f.unsyncUpdates("user_has_voice_queue")}),a.groups=[],a.pauses=["pausa1","pausa2","pausa3"],a.pause=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/queue/pause.modal.html",controller:"VoiceRealtimeViewQueuePauseModalCtrl",resolve:{items:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){_.isArray(a)?a.forEach(function(a){b.post("/api/ami",a).then(function(a){console.log(a),g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.log(a),g.show(a.data.message,"danger")})}):b.post("/api/ami",a).then(function(a){console.log(a),g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.log(a),g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.add=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/queue/queue.modal.add.html",controller:"VoiceRealtimeViewQueueQueueModalCtrl",resolve:{pauses:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){console.log("action",a),b.post("/api/voice/user_has_queues",a).then(function(){a.login?b.post("/api/ami",a).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")}),console.log(a)},function(){c.info("Modal dismissed at: "+new Date)})},a.remove=function(a,f){var h=d.open({animation:!0,size:a,templateUrl:"app/voice/realtime/view/queue/queue.modal.remove.html",controller:"VoiceRealtimeViewQueueQueueModalCtrl",resolve:{pauses:function(){return null},data:function(){return f}}});h.result.then(function(a){_.isArray(a)?a.forEach(function(a){ -b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})}):b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.initQueues=function(){b.get("/api/voice/user_has_queues").success(function(b){a.queues=b,a.groups=_.map(_.groupBy(a.queues,"queue"),function(a,b){return{queue:b,agents:a}}),console.log("ok"),f.socket.on("user_has_voice_queue:save",function(b){console.log("item",b);var c=_.find(a.groups,{queue:b.queue}),d=a.groups.indexOf(c);if(c){var e=_.find(c.agents,{membername:b.membername});e?_.merge(e,b):a.groups[d].agents.push(b)}else{var f={queue:b.queue,agents:[b]};a.groups.unshift(f)}}),f.socket.on("user_has_voice_queue:remove",function(b){var c=_.find(a.groups,{queue:b.queue});_.remove(c.agents,{membername:b.membername}),c.agents.length||_.remove(a.groups,{queue:b.queue})}),f.socket.on("report_agent:save",function(b){var c=_.find(a.groups,{queue:b.queue}),d=a.groups.indexOf(c);if(c){var e=_.find(c.agents,{membername:b.membername});e?_.merge(e,b):a.groups[d].agents.push(b)}else{var f={queue:b.queue,agents:[b]};a.groups.unshift(f)}})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueQueueModalCtrl",["$scope","$uibModalInstance","$http","pauses","data",function(a,b,c,d,e){a.initAdd=function(){a.data=e,a.pauses=d,a.selected={penalty:0,paused:!1,reason:a.pauses[0]},a.$watch("selected.agent",function(b){b&&(a.selected.membername=b.name,a.selected["interface"]="SIP/"+b.name,a.selected.UserId=b.id)}),c.get("/api/agents",{params:{page:0,per_page:500}}).success(function(b){a.agents=_.reject(b.rows,function(b){return _.find(a.data,{membername:b.name})?!0:!1}),a.selected.queue=a.data[0]?a.data[0].queue:null}).error(function(a){console.error(a)})},a.initRemove=function(){a.data=e,console.log(e),_.isArray(e)?a.selected={queue:a.data[0].queue,logout:!1}:a.selected={membername:a.data.membername,"interface":a.data["interface"],queue:a.data.queue,logout:!1,UserId:a.data.UserId}},a.okAdd=function(){var c={action:"QueueAdd",queue:a.selected.queue,membername:a.selected.membername,"interface":a.selected["interface"],penalty:a.selected.penalty,paused:a.selected.paused,UserId:a.selected.UserId};c.paused&&(c.reason=a.selected.reason),b.close(c)},a.okRemove=function(){var c;_.isArray(a.data)?(c=[],a.data.forEach(function(b){c.push({action:"QueueRemove",queue:b.queue,"interface":b["interface"],logout:a.selected.logout,UserId:b.UserId})})):c={action:"QueueRemove",queue:a.selected.queue,logout:a.selected.logout,"interface":a.selected["interface"],UserId:a.selected.UserId},b.close(c)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewCtrl",["$scope",function(a){a.agents=[{name:"View1",link:"main.voice.realtime.view.agents"},{name:"View2",link:"main.voice.realtime.view.areports"}],a.queues=[{name:"View1",link:"main.voice.realtime.view.queues"},{name:"View2",link:"main.voice.realtime.view.qreports"}]}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.realtime.view",{url:"/view",templateUrl:"app/voice/realtime/view/view.html",controller:"VoiceRealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.realtime.view.queues",{url:"/queues",controller:"VoiceRealtimeViewQueueCtrl",templateUrl:"app/voice/realtime/view/queue/queue.html"}).state("main.voice.realtime.view.qreports",{url:"/qreport/:search",controller:"VoiceRealtimeViewQueueReportCtrl",templateUrl:"app/voice/realtime/view/qreport/report.html"}).state("main.voice.realtime.view.agents",{url:"/agents",controller:"VoiceRealtimeViewAgentCtrl",templateUrl:"app/voice/realtime/view/agent/agent.html"}).state("main.voice.realtime.view.areports",{url:"/areport",controller:"VoiceRealtimeViewAgentReportCtrl",templateUrl:"app/voice/realtime/view/areport/report.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound",{url:"/inbound",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={routesByPage:{name:"10",value:10}},a.routesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.routes={checked:[]},a.check=function(b){b?a.routes.checked=angular.copy(_.pluck(a.displayedRoutes,"id")):a.routes.checked=[]},a.getRoutes=function(b){return _.map(a.displayedRoutes,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_extension"),b.url="/api/voice/extensions/route/inbound",h.getPage(b).then(function(c){a.displayedRoutes=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.routesByPage,a.displayedRoutes.length),e.updateTableConfig(a.conf.routesByPage,a.displayedRoutes.length)}),c.socket.on("voice_extension:save",function(c){"inbound"===c.type&&a.initList(b)}),c.socket.on("voice_extension:remove",function(c){"inbound"===c.type&&(a.routes.checked=_.without(a.routes.checked,c.id),a.initList(b))})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/extensions/"+a).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/extensions/",{params:{id:a.routes.checked}}).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound.list",{url:"/list",templateUrl:"app/voice/route/inbound/list/list.html",controller:"VoiceRouteInboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundViewCtrl",["$scope","$http","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=c,a.$application=j.application,a.$interval=k.interval,a.initApplication=function(){a.forms={settings:void 0,interval:void 0},a.application={VoiceExtensionId:d.id,type:"inbound"},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toLowerCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toLowerCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from.toLowerCase(),a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to.toLowerCase())):e="*",b+","+c+","+d+","+e},a.$watch("main.app",function(c){if(c){var e,f;switch(d.appId||(a.application={VoiceExtensionId:d.id,type:"inbound",interval:a.application.interval}),c){case"Queue":e="api/voice/queues",f="/api/uploads";break;case"Playback":e="/api/uploads";break;case"AGI":e="/api/square/projects";break;case"Goto":e="/api/voice/contexts";break;default:e=null,f=null}e&&b.get(e).success(function(b){a.items="Playback"!==c?b.rows:b}),f&&b.get(f).success(function(b){a.items2=b})}},!0),a.getIntervals=function(){b.get("/api/intervals").success(function(b){a.Intervals=b.rows,e.syncUpdates("interval",a.Intervals)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.getRouteApplications=function(){b.get("/api/voice/extensions/"+d.id+"/applications").success(function(b){a.routeApplications=b,e.unsyncUpdates("voice_extension"),e.socket.on("voice_extension:remove",function(b){b.where.appGroup&&_.remove(a.routeApplications,function(a){return b.where.appGroup==a.appGroup})}),e.socket.on("voice_extension:save",function(b){if(b.VoiceExtensionId===d.id&&b.isApp){var c=_.find(a.routeApplications,{id:b.id});c||a.routeApplications.push(b)}})})},a.sortableOptions={stop:function(){b.post("api/voice/extensions/"+d.id+"/applications",{applications:_.pluck(a.routeApplications,"appGroup")}).success(function(b){a.getRouteApplications()}).error(function(a){console.error(a)})},"ui-floating":!0},a.getRoute=function(){b.get("/api/voice/extensions/"+d.id).success(function(b){a.route=b,e.socket.on("voice_extension:update",function(b){b.id==d.id&&(a.route=b)})}).error(function(a){f.path("/voice/routes/inbound/list")})},a.getApplication=function(){b.get("/api/voice/extensions/applications/"+d.appId).success(function(b){var c=_.filter(a.$application.applications,function(a){return a.value===b.app});if(c.length>0&&!b.customApp?a.main.app=b.app:a.main.app="custom",a.application=b,a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),"Queue"===b.app&&(a.application.app_options=b.app_options?b.app_options.split(","):[]),a.interval.intType=b.IntervalId?"list":"*,*,*,*"===b.interval?"always":"custom",a.interval.IntervalId=b.IntervalId,!b.IntervalId){var d,e=b.interval?b.interval.split(","):["*","*","*","*"];e.forEach(function(b,c){switch(c){case 0:"*"!==b?(d=b.split("-"),a.interval.t_from=moment(d[0],"HH:mm"),a.interval.t_to=moment(d[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==b?(d=b.split("-"),a.interval.wd_from=_.capitalize(d[0]),a.interval.wd_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==b?(d=b.split("-"),a.interval.md_from=d[0],a.interval.md_to=d[1]?d[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==b?(d=b.split("-"),a.interval.m_from=_.capitalize(d[0]),a.interval.m_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}).error(function(a){f.path("/voice/routes/inbound/view/"+d.id+"/applications")})},a.updateRoute=function(){var e=angular.copy(a.route);b.put("/api/voice/extensions/"+d.id,e).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){i.show(c.instant(b.message),"danger"),a.route=e})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,e.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.createItem=function(){switch(a.application.app=a.main.app,a.application.exten=a.route.exten,a.application.context=a.route.context,a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.post("/api/voice/extensions/",a.application).success(function(){f.path("/voice/routes/inbound/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.updateItem=function(){switch(a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.put("/api/voice/extensions/applications/"+d.appId,a.application).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),f.path("/voice/routes/inbound/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.deleteItem=h.confirm["delete"](function(d){b["delete"]("/api/voice/extensions/"+d).success(function(){a.getRouteApplications(),i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){i.show(c.instant(a.message),"danger")})}),a.goNext=function(){g.wizard().next()},a.previous=function(){g.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){e.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound.view",{url:"/view/:id",templateUrl:"app/voice/route/inbound/view/view.html",controller:"VoiceRouteInboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.routes.inbound.view.settings",{url:"/settings",templateUrl:"app/voice/route/inbound/view/view.settings.html"}).state("main.voice.routes.inbound.view.applications",{url:"/applications",templateUrl:"app/voice/route/inbound/view/view.applications.html",cache:!1}).state("main.voice.routes.inbound.view.application",{url:"/application",templateUrl:"app/voice/route/inbound/view/view.application.html",authenticate:!0}).state("main.voice.routes.inbound.view.applications.settings",{url:"/settings/:appId",templateUrl:"app/voice/route/inbound/view/view.applicationSettings.html",authenticate:!0,controller:"VoiceRouteInboundViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={route:void 0},a.item={type:"inbound",appdata:"Inbound Call",context:"from-voip-provider"},a.next=function(){b.post("/api/voice/extensions/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_ROUTE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/extensions/",a.item).success(function(a){d.path("/voice/routes/inbound/view/"+a.id+"/applications")}).error(function(a){e.show(g.instant(a.message),"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound.wizard",{url:"/wizard",templateUrl:"app/voice/route/inbound/wizard/wizard.html",controller:"VoiceRouteInboundWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal",{url:"/internal",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={routesByPage:{name:"10",value:10}},a.routesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.routes={checked:[]},a.check=function(b){b?a.routes.checked=angular.copy(_.pluck(a.displayedRoutes,"id")):a.routes.checked=[]},a.getRoutes=function(b){return _.map(a.displayedRoutes,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_extension"),b.url="/api/voice/extensions/route/internal",h.getPage(b).then(function(c){a.displayedRoutes=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.routesByPage,a.displayedRoutes.length),e.updateTableConfig(a.conf.routesByPage,a.displayedRoutes.length)}),c.socket.on("voice_extension:save",function(c){"internal"===c.type&&a.initList(b)}),c.socket.on("voice_extension:remove",function(c){"internal"===c.type&&(a.routes.checked=_.without(a.routes.checked,c.id),a.initList(b))})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/extensions/"+a).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/extensions/",{params:{id:a.routes.checked}}).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal.list",{url:"/list",templateUrl:"app/voice/route/internal/list/list.html",controller:"VoiceRouteInternalListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalViewCtrl",["$scope","$http","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=c,a.$application=j.application,a.$interval=k.interval,a.initApplication=function(){a.forms={settings:void 0,interval:void 0},a.application={VoiceExtensionId:d.id,type:"internal"},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toLowerCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toLowerCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from.toLowerCase(),a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to.toLowerCase())):e="*",b+","+c+","+d+","+e},a.$watch("main.app",function(c){if(c){var e,f;switch(d.appId||(a.application={VoiceExtensionId:d.id,type:"internal",interval:a.application.interval}),c){case"Queue":e="api/voice/queues",f="/api/uploads";break;case"Playback":e="/api/uploads";break;case"AGI":e="/api/square/projects";break;case"Goto":e="/api/voice/contexts";break;default:e=null,f=null}e&&b.get(e).success(function(b){a.items="Playback"!==c?b.rows:b}),f&&b.get(f).success(function(b){a.items2=b})}},!0),a.getIntervals=function(){b.get("/api/intervals").success(function(b){a.Intervals=b.rows,e.syncUpdates("interval",a.Intervals)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.getRouteApplications=function(){b.get("/api/voice/extensions/"+d.id+"/applications").success(function(b){a.routeApplications=b,e.unsyncUpdates("voice_extension"),e.socket.on("voice_extension:remove",function(b){b.where.appGroup&&_.remove(a.routeApplications,function(a){return b.where.appGroup==a.appGroup})}),e.socket.on("voice_extension:save",function(b){if(b.VoiceExtensionId===d.id&&b.isApp){var c=_.find(a.routeApplications,{id:b.id});c||a.routeApplications.push(b)}})})},a.sortableOptions={stop:function(){b.post("api/voice/extensions/"+d.id+"/applications",{applications:_.pluck(a.routeApplications,"appGroup")}).success(function(b){a.getRouteApplications()}).error(function(a){console.error(a)})},"ui-floating":!0},a.getRoute=function(){b.get("/api/voice/extensions/"+d.id).success(function(b){a.route=b,e.socket.on("voice_extension:update",function(b){b.id==d.id&&(a.route=b)})}).error(function(a){console.error(a),f.path("/voice/routes/internal/list")})},a.getApplication=function(){b.get("/api/voice/extensions/applications/"+d.appId).success(function(b){var c=_.filter(a.applications,function(a){return a.value===b.app});if(c.length>0&&!b.customApp?a.main.app=b.app:a.main.app="custom",a.application=b,a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),"Queue"===b.app&&(a.application.app_options=b.app_options?b.app_options.split(","):[]),a.interval.intType=b.IntervalId?"list":"custom",a.interval.IntervalId=b.IntervalId,!b.IntervalId){var d,e=b.interval?b.interval.split(","):["*","*","*","*"];e.forEach(function(b,c){switch(c){case 0:"*"!==b?(d=b.split("-"),a.interval.t_from=moment(d[0],"HH:mm"),a.interval.t_to=moment(d[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==b?(d=b.split("-"),a.interval.wd_from=_.capitalize(d[0]),a.interval.wd_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==b?(d=b.split("-"),a.interval.md_from=d[0],a.interval.md_to=d[1]?d[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==b?(d=b.split("-"),a.interval.m_from=_.capitalize(d[0]),a.interval.m_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}).error(function(a){f.path("/voice/routes/internal/view/"+d.id+"/applications")})},a.updateRoute=function(){var e=angular.copy(a.route);b.put("/api/voice/extensions/"+d.id,e).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){i.show(c.instant(b.message),"danger"),a.route=e})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,e.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.createItem=function(){switch(a.application.app=a.main.app,a.application.exten=a.route.exten,a.application.context=a.route.context,a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.post("/api/voice/extensions/",a.application).success(function(){f.path("/voice/routes/internal/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.updateItem=function(){switch(a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.put("/api/voice/extensions/applications/"+d.appId,a.application).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),f.path("/voice/routes/internal/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.deleteItem=h.confirm["delete"](function(d){b["delete"]("/api/voice/extensions/"+d).success(function(b){a.getRouteApplications(),i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){i.show(c.instant(a.message),"danger")})}),a.goNext=function(){g.wizard().next()},a.previous=function(){g.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){e.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal.view",{url:"/view/:id",templateUrl:"app/voice/route/internal/view/view.html",controller:"VoiceRouteInternalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.routes.internal.view.settings",{url:"/settings",templateUrl:"app/voice/route/internal/view/view.settings.html"}).state("main.voice.routes.internal.view.applications",{url:"/applications",templateUrl:"app/voice/route/internal/view/view.applications.html",cache:!1}).state("main.voice.routes.internal.view.application",{url:"/application",templateUrl:"app/voice/route/internal/view/view.application.html",authenticate:!0}).state("main.voice.routes.internal.view.applications.settings",{url:"/settings/:appId",templateUrl:"app/voice/route/internal/view/view.applicationSettings.html",authenticate:!0,controller:"VoiceRouteInternalViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={route:void 0},a.item={type:"internal",appdata:"Iternal Call",context:"from-sip"},a.next=function(){b.post("/api/voice/extensions/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_ROUTE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/extensions/",a.item).success(function(a){d.path("/voice/routes/internal/view/"+a.id+"/applications")}).error(function(a){e.show(g.instant(a.message),"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal.wizard",{url:"/wizard",templateUrl:"app/voice/route/internal/wizard/wizard.html",controller:"VoiceRouteInternalWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={routesByPage:{name:"10",value:10}},a.routesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.routes={checked:[]},a.check=function(b){b?a.routes.checked=angular.copy(_.pluck(a.displayedRoutes,"id")):a.routes.checked=[]},a.getRoutes=function(b){return _.map(a.displayedRoutes,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_extension"),b.url="/api/voice/extensions/route/outbound",h.getPage(b).then(function(c){a.displayedRoutes=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.routesByPage,a.displayedRoutes.length),d.updateTableConfig(a.conf.routesByPage,a.displayedRoutes.length)}),c.socket.on("voice_extension:save",function(c){"outbound"===c.type&&a.initList(b)}),c.socket.on("voice_extension:remove",function(c){"outbound"===c.type&&(a.routes.checked=_.without(a.routes.checked,c.id),a.initList(b))})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/extensions/"+a).success(function(){f(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/extensions/",{params:{id:a.routes.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(e.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound.list",{url:"/list",templateUrl:"app/voice/route/outbound/list/list.html",controller:"VoiceRouteOutboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound",{url:"/outbound",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","application","interval",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=d,a.$application=j.application,a.$interval=k.interval,a.initApplication=function(){a.forms={info:void 0,interval:void 0},a.application={VoiceExtensionId:e.id,type:"outbound"},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""},a.applications=[{name:"Dial",value:"Dial"},{name:"Custom",value:"custom"}]},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toLowerCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toLowerCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from.toLowerCase(),a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to.toLowerCase())):e="*",b+","+c+","+d+","+e},a.$watch("main.app",function(c){if(c){var d,f;switch(e.appId||(a.application={VoiceExtensionId:e.id,type:"outbound",interval:a.application.interval}),c){case"Dial":d="api/trunks",f="/api/voice/contexts";break;default:d=null,f=null}d&&b.get(d).success(function(b){a.items="Dial"===c?b.rows:b}),f&&b.get(f).success(function(b){a.items2="Dial"===c?b.rows:b})}},!0),a.$watch("application.TrunkId",function(b){b&&(a.application.trunk=_.result(_.find(a.items,{id:b}),"name"))},!0),a.getIntervals=function(){b.get("/api/intervals").success(function(b){a.Intervals=b.rows,f.syncUpdates("interval",a.Intervals)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getRouteApplications=function(){b.get("/api/voice/extensions/"+e.id+"/applications").success(function(b){a.routeApplications=b,f.unsyncUpdates("voice_extension"),f.socket.on("voice_extension:remove",function(b){b.where.appGroup&&_.remove(a.routeApplications,function(a){return b.where.appGroup==a.appGroup})}),f.socket.on("voice_extension:save",function(b){if(b.VoiceExtensionId===e.id&&b.isApp){var c=_.find(a.routeApplications,{id:b.id});c||a.routeApplications.push(b)}})})},a.sortableOptions={stop:function(){b.post("api/voice/extensions/"+e.id+"/applications",{applications:_.pluck(a.routeApplications,"appGroup")}).success(function(){a.getRouteApplications()}).error(function(a){console.error(a)})},"ui-floating":!0},a.getRoute=function(){b.get("/api/voice/extensions/"+e.id).success(function(b){a.route=b,f.socket.on("voice_extension:update",function(b){b.id==e.id&&(a.route=b)})}).error(function(a){g.path("/voice/routes/outbound/list")})},a.getApplication=function(){b.get("/api/voice/extensions/applications/"+e.appId).success(function(b){var c=_.filter(a.applications,function(a){return a.value===b.app});if(c.length>0&&!b.customApp?a.main.app=b.app:a.main.app="custom",a.application=b, -a.interval.intType=b.IntervalId?"list":"custom",a.interval.IntervalId=b.IntervalId,!b.IntervalId){var d,e=b.interval?b.interval.split(","):["*","*","*","*"];e.forEach(function(b,c){switch(c){case 0:"*"!==b?(d=b.split("-"),a.interval.t_from=moment(d[0],"HH:mm"),a.interval.t_to=moment(d[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==b?(d=b.split("-"),a.interval.wd_from=_.capitalize(d[0]),a.interval.wd_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==b?(d=b.split("-"),a.interval.md_from=d[0],a.interval.md_to=d[1]?d[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==b?(d=b.split("-"),a.interval.m_from=_.capitalize(d[0]),a.interval.m_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}).error(function(a){console.error(a),g.path("/voice/routes/outbound/view/"+e.id+"/routes")})},a.updateRoute=function(){var f=angular.copy(a.route);b.put("/api/voice/extensions/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.route=f})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.createItem=function(){switch(a.application.app=a.main.app,a.application.exten=a.route.exten,a.application.context=a.route.context,a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.post("/api/voice/extensions/",a.application).success(function(){g.path("/voice/routes/outbound/view/"+e.id+"/routes")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.updateItem=function(){switch(a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.put("/api/voice/extensions/applications/"+e.appId,a.application).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),g.path("/voice/routes/outbound/view/"+e.id+"/routes")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.deleteItem=i.confirm["delete"](function(e){b["delete"]("/api/voice/extensions/"+e).success(function(b){a.getRouteApplications(),c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){c.show(d.instant(a.message),"danger")})}),a.goNext=function(){h.wizard().next()},a.previous=function(){h.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){f.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound.view",{url:"/view/:id",templateUrl:"app/voice/route/outbound/view/view.html",controller:"VoiceRouteOutboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.routes.outbound.view.settings",{url:"/settings",templateUrl:"app/voice/route/outbound/view/view.settings.html"}).state("main.voice.routes.outbound.view.routes",{url:"/routes",templateUrl:"app/voice/route/outbound/view/view.routes.html",cache:!1}).state("main.voice.routes.outbound.view.route",{url:"/route",templateUrl:"app/voice/route/outbound/view/view.route.html",authenticate:!0}).state("main.voice.routes.outbound.view.routes.settings",{url:"/settings/:appId",templateUrl:"app/voice/route/outbound/view/view.routeSettings.html",authenticate:!0,controller:"VoiceRouteOutboundViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={route:void 0},a.item={type:"outbound",appdata:"Outbound Call",context:"from-sip"},a.next=function(){b.post("/api/voice/extensions/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_ROUTE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/extensions/",a.item).success(function(a){d.path("/voice/routes/outbound/view/"+a.id+"/routes")}).error(function(a){e.show(g.instant(a.message),"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound.wizard",{url:"/wizard",templateUrl:"app/voice/route/outbound/wizard/wizard.html",controller:"VoiceRouteOutboundWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes",{url:"/routes",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice",{url:"/voice",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={voicemailsByPage:{name:"10",value:10},labels:["mailbox","fullname","email"]},a.voicemailsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.voicemails={checked:[]},a.check=function(b,c){c?a.voicemails.checked=angular.copy(_.pluck(a.displayedVoicemails,"uniqueid")):a.voicemails.checked=[]},a.getVoicemails=function(b){return _.map(a.displayedVoicemails,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("voice_voicemail"),b.url="/api/voice/voicemails",h.getPage(b).then(function(c){a.displayedVoicemails=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.voicemailsByPage,a.displayedVoicemails.length),d.updateTableConfig(a.conf.voicemailsByPage,a.displayedVoicemails.length)}),f.socket.on("voice_voicemail:save",function(){a.initList(b)}),f.socket.on("voice_voicemail:remove",function(c){a.voicemails.checked=_.without(a.voicemails.checked,c.uniqueid),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/voicemails/"+a).success(function(){e.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){e.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/voicemails",{params:{uniqueid:a.voicemails.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails.list",{url:"/list",templateUrl:"app/voice/voicemail/list/list.html",controller:"VoiceVoicemailListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$sce","Modal","$location",function(a,b,c,d,e,f,g,h,i){a.getVoicemail=function(){b.get("/api/voice/voicemails/"+e.uniqueid).success(function(b){delete b.password,delete b.stamp,a.voicemail=b}).error(function(a){console.error(a),i.path("/voice/voicemails/list")})},a.updateVoiceVoicemail=function(){var f=angular.copy(a.voicemail);b.put("/api/voice/voicemails/"+e.uniqueid,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.voicemail=f})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(a.message,"danger")})},a.getMessages=function(){b.get("/api/voice/voicemails/"+e.uniqueid+"/messages/").success(function(b){a.voicemailMessages=b,f.syncUpdates("voice_voicemail_messages",a.voicemailMessages)}).error(function(a){c.show(a.message,"danger")})},a.encodeRecording=function(a){return g.trustAsResourceUrl("data:audio/ogg;base64,"+j(a.data))},a.returnMessageDate=function(a){return a.split("T")[0]},a.returnDuration=function(a){return 1e3*a},a.deleteItem=h.confirm["delete"](function(a){b["delete"]("/api/voice/voicemails/messages/"+a+"/delete").success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){console.log(a),c.show(a.message,"danger")})});var j=function(a){for(var b=new Uint8Array(a),c=b.byteLength,d="",e=0;c>e;e++)d+=String.fromCharCode(b[e]);return window.btoa(d)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails.view",{url:"/view/:uniqueid",templateUrl:"app/voice/voicemail/view/view.html",controller:"VoiceVoicemailViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.voicemails.view.settings",{url:"/settings",templateUrl:"app/voice/voicemail/view/view.settings.html"}).state("main.voice.voicemails.view.messages",{url:"/messages",templateUrl:"app/voice/voicemail/view/view.messages.html"})}]),angular.module("xCallyShuttleApp").controller("VoicemailCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails",{url:"/voicemails",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.initWizard=function(){a.forms={},a.item={}},a.next=function(){b.post("/api/voice/voicemails/validate/",a.item).success(function(a){a.length?e.show(g.instant("MESSAGE_EXIST_MAILBOX"),"danger"):c.wizard().next()}).error(function(a){e.show(a.message,"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){a.item.customer_id=a.item.mailbox,b.post("/api/voice/voicemails/",a.item).success(function(){d.path("/voice/voicemails/list")}).error(function(a){e.show(a.message,"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails.wizard",{url:"/wizard",templateUrl:"app/voice/voicemail/wizard/wizard.html",controller:"VoiceVoicemailWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource","$uibModal","$log",function(a,b,c,d,e,f,g,h,i,j){a.conf={dashboardsByPage:{name:"10",value:10}},a.dashboardsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.dashboards={checked:[]},a.check=function(b,c){c?a.dashboards.checked=angular.copy(_.pluck(a.displayedDashboards,"id")):a.dashboards.checked=[]},a.getDashboards=function(b){return _.map(a.displayedDashboards,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){b.url="/api/dashboards",h.getPage(b).then(function(c){a.displayedDashboards=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.dashboardsByPage,a.displayedDashboards.length),d.updateTableConfig(a.conf.dashboardsByPage,a.displayedDashboards.length)}),c.socket.on("dashboard:save",function(){a.initList(b)}),c.socket.on("dashboard:remove",function(c){a.dashboards.checked=_.without(a.dashboards.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/dashboards/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/dashboards",{params:{id:a.dashboards.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.create=function(){var a=i.open({animation:!0,templateUrl:"app/yourdashboard/list/create.modal.html",controller:"YourdashboardListCreateModalCtrl"});a.result.then(function(a){b.post("/api/dashboards",a).then(function(a){f.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.data.message,"danger")})},function(){j.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards.list",{url:"/list",templateUrl:"app/yourdashboard/list/list.html",controller:"YourdashboardListCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardShowCtrl",["$scope","localStorageService","$http","xAlert","$translate","Auth","$stateParams","$location",function(a,b,c,d,e,f,g,h){a.Auth=f,a.dashboard={name:"dashboard",structure:"4-8",enableconfirmdelete:!0,editable:f.isAdmin()?!0:!1,maximizable:!0,collapsible:!0},a.getDashboard=function(){c.get("/api/dashboards/"+g.id).success(function(b){b.model=JSON.parse(b.model),a.dashboard=_.merge(a.dashboard,b)}).error(function(a){h.path("/yourdashboards/list")})};var i=function(b,f,h){var i=angular.copy(a.dashboard);i.name=a.dashboard.model.title,i.model=JSON.stringify(i.model),c.put("/api/dashboards/"+g.id,i).success(function(){d.show(e.instant("MESSAGE_DASHBOARD_SAVED")+"!","success")}).error(function(b){d.show(b.message,"danger"),i.model=JSON.parse(i.model),i.name="dashboard",a.dashboard=i})};a.$on("adfDashboardChanged",i),a.$on("destroy",function(){console.log("main dashboard")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards.show",{url:"/show/:id",templateUrl:"app/yourdashboard/show/show.html",controller:"YourdashboardShowCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.radioSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.getDashboard=function(){b.get("/api/dashboards/"+e.id).success(function(b){delete b.model,a.dashboard=b}).error(function(a){f.path("/yourdashboards/list")})},a.updateDashboard=function(){var f=angular.copy(a.dashboard);b.put("/api/dashboards/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.dashboard=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards.view",{url:"/view/:id",templateUrl:"app/yourdashboard/view/view.html",controller:"YourdashboardViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.yourdashboards.view.settings",{url:"/settings",templateUrl:"app/yourdashboard/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards",{url:"/yourdashboards",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ZendeskListCtrl",["$scope","$http","$rootScope","xAlert","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={accountsByPage:{name:"10",value:10}},a.accountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.accounts={checked:[]},a.check=function(b,c){c?a.accounts.checked=angular.copy(_.pluck(a.displayedZdAccounts,"id")):a.accounts.checked=[]},a.getAccounts=function(b){return _.map(a.displayedZdAccounts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("zendesk_account"),b.url="/api/zendesk/accounts",h.getPage(b).then(function(d){a.displayedZdAccounts=d.rows,b.pagination.numberOfPages=d.total_pages,c.updateTableConfig(a.accountsByPage,a.displayedZdAccounts.length),c.updateTableConfig(a.conf.accountsByPage,a.displayedZdAccounts.length)}),f.socket.on("zendesk_account:save",function(){a.initList(b)}),f.socket.on("zendesk_account:remove",function(c){a.accounts.checked=_.without(a.accounts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/zendesk/accounts/"+a).success(function(){d.show(e.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/zendesk/accounts",{params:{id:a.accounts.checked}}).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.checkAccount=function(a){b.get("/api/zendesk/accounts/"+a+"/check").then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.list",{url:"/list",templateUrl:"app/zendesk/list/list.html",controller:"ZendeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i){a.$stateParams=c,a.initCustomField=function(){a.forms={},a.field={}},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){f.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){g.unsyncUpdates("zendesk_field"),g.unsyncUpdates("zendesk_configuration"),g.unsyncUpdates("zendesk_text")}),a.initView=function(){b.get("/api/zendesk/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){h.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/zendesk/accounts/"+c.id,a.account).success(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getCustomFields=function(){b.get("/api/zendesk/fields",{params:{ZendeskAccountId:c.id}}).success(function(b){a.customFields=b,g.socket.on("zendesk_field:remove",function(b){_.remove(a.customFields,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.deleteItem=i.confirm["delete"](function(a){b["delete"]("api/zendesk/fields/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.getCustomField=function(){b.get("/api/zendesk/fields/"+c.fieldId).success(function(b){a.field=b}).error(function(a){h.show(a.message,"danger")})},a.updateField=function(){b.put("/api/zendesk/fields/"+c.fieldId,a.field).success(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success"),e.path("/zendesk/view/"+c.id+"/fields")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.createItem=function(){a.field.ZendeskAccountId=c.id,b.post("api/zendesk/fields",a.field).success(function(){e.path("zendesk/view/"+c.id+"/fields")}).error(function(){h.show("Something went wrong!","danger")})},a.getConfigurations=function(){b.get("/api/zendesk/configurations",{params:{ZendeskAccountId:c.id}}).success(function(b){a.configurations=b,g.socket.on("zendesk_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.deleteConfiguration=i.confirm["delete"](function(a){b["delete"]("api/zendesk/configurations/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.createConfiguration=function(){a.configuration.ZendeskAccountId=c.id,b.post("api/zendesk/configurations",a.configuration).success(function(a){e.path("zendesk/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){h.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.getConfiguration=function(){b.get("/api/zendesk/configurations/"+c.configurationId).success(function(b){a.subjectConfig=b.Subject,g.socket.on("zendesk_text:remove",function(b){_.remove(a.subjectConfig,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){h.show(a.message,"danger")})},a.removeItemFromSubject=function(a){b["delete"]("api/zendesk/texts/"+a.id).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/zendesk/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.updateSubjectText=function(a){b.put("/api/zendesk/texts/"+a.id,a).success(function(){}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateSubjectText(b)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view",{url:"/view/:id",templateUrl:"app/zendesk/view/view.html",controller:"ZendeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.zendesk.view.account",{url:"/account",templateUrl:"app/zendesk/view/view.account.html"}).state("main.zendesk.view.fields",{url:"/fields",templateUrl:"app/zendesk/view/view.fields.html"}).state("main.zendesk.view.fields.settings",{url:"/settings/:fieldId",templateUrl:"app/zendesk/view/view.fieldSettings.html",controller:"ZendeskViewCtrl"}).state("main.zendesk.view.field",{url:"/field",templateUrl:"app/zendesk/view/view.field.html"}).state("main.zendesk.view.configurations",{url:"/configurations",templateUrl:"app/zendesk/view/view.configurations.html"}).state("main.zendesk.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/zendesk/view/view.configurationSettings.html",controller:"ZendeskViewCtrl"}).state("main.zendesk.view.configuration",{url:"/configuration",templateUrl:"app/zendesk/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("ZendeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={},a.item.authType="password"},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("api/zendesk/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/zendesk/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.wizard",{url:"/wizard",templateUrl:"app/zendesk/wizard/wizard.html",controller:"ZendeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk",{url:"/zendesk",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").service("application",function(){var a={applications:[{name:"Queue",value:"Queue"},{name:"Playback",value:"Playback"},{name:"Dial",value:"Dial"},{name:"Cally-Square IVR",value:"AGI"},{name:"GoTo",value:"Goto"},{name:"Hangup",value:"Hangup"},{name:"Set",value:"Set"},{name:"Custom",value:"custom"},{name:"VoiceMail",value:"Voicemail"}],queueOptions:[{value:"C",name:"APPLICATION_QUEUE_OPTION_C"},{value:"c",name:"APPLICATION_QUEUE_OPTION_c"},{value:"d",name:"APPLICATION_QUEUE_OPTION_d"},{value:"F",name:"APPLICATION_QUEUE_OPTION_F"},{value:"h",name:"APPLICATION_QUEUE_OPTION_h"},{value:"H",name:"APPLICATION_QUEUE_OPTION_H"},{value:"n",name:"APPLICATION_QUEUE_OPTION_n"},{value:"i",name:"APPLICATION_QUEUE_OPTION_i"},{value:"I",name:"APPLICATION_QUEUE_OPTION_I"},{value:"r",name:"APPLICATION_QUEUE_OPTION_r"},{value:"R",name:"APPLICATION_QUEUE_OPTION_R"},{value:"t",name:"APPLICATION_QUEUE_OPTION_t"},{value:"T",name:"APPLICATION_QUEUE_OPTION_T"},{value:"w",name:"APPLICATION_QUEUE_OPTION_w"},{value:"W",name:"APPLICATION_QUEUE_OPTION_W"},{value:"k",name:"APPLICATION_QUEUE_OPTION_k"},{value:"K",name:"APPLICATION_QUEUE_OPTION_K"},{value:"x",name:"APPLICATION_QUEUE_OPTION_x"},{value:"X",name:"APPLICATION_QUEUE_OPTION_X"}],audioOptions:[{value:"skip",name:"APPLICATION_PLAYBACK_OPTION_SKIP"},{value:"noanswer",name:"APPLICATION_PLAYBACK_OPTION_NOANSWER"},{value:"j",name:"APPLICATION_PLAYBACK_OPTION_J"},{value:"say",name:"APPLICATION_PLAYBACK_OPTION_SAY"}],hangupCauses:[{value:"",name:"--"},{value:"1",name:"APPLICATION_HANGUP_CAUSE_1"},{value:"16",name:"APPLICATION_HANGUP_CAUSE_16"},{value:"17",name:"APPLICATION_HANGUP_CAUSE_17"},{value:"18",name:"APPLICATION_HANGUP_CAUSE_18"},{value:"21",name:"APPLICATION_HANGUP_CAUSE_21"},{value:"22",name:"APPLICATION_HANGUP_CAUSE_22"},{value:"27",name:"APPLICATION_HANGUP_CAUSE_27"},{value:"38",name:"APPLICATION_HANGUP_CAUSE_38"},{value:"41",name:"APPLICATION_HANGUP_CAUSE_41"}],intTypes:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"custom",name:"APPLICATION_CUSTOM"},{value:"list",name:"APPLICATION_FROM_LIST"}]};return{application:a}}),angular.module("xCallyShuttleApp").factory("Auth",["$location","$rootScope","$http","User","$cookieStore","$q",function(a,b,c,d,e,f){var g={};return e.get("token")&&(g=d.me()),{login:function(a,h){var i=h||angular.noop,j=f.defer();return c.post("/auth/local",{name:a.name,password:a.password,remember:a.remember}).success(function(a){return e.put("token",a.token),e.put("userId",a.userId),g=d.me({},function(){b.$broadcast("login")}),j.resolve(a),i()}).error(function(a){return this.logout(),j.reject(a),i(a)}.bind(this)),j.promise},loginWithToken:function(a,b,c){e.put("token",a),e.put("userId",b),e.put("name",c),g=d.me()},logout:function(){c.put("/api/users/"+g.id,{online:!1}).success(function(){e.remove("token"),e.remove("userId"),g={},b.$broadcast("logout")}).error(function(a){return a})},createUser:function(a,b){var c=b||angular.noop;return d.save(a,function(b){return e.put("token",b.token),g=d.me(),c(a)},function(a){return this.logout(),c(a)}.bind(this)).$promise},changePassword:function(a,b,c){var e=c||angular.noop;return d.changePassword({id:g.id},{oldPassword:a,newPassword:b},function(a){return e(null,a)},function(a){return e(a)}).$promise},getCurrentUser:function(){return g},isLoggedIn:function(){return g.hasOwnProperty("role")},isLoggedInAsync:function(a){g.hasOwnProperty("$promise")?g.$promise.then(function(){a(!0)})["catch"](function(){a(!1)}):a(g.hasOwnProperty("role")?!0:!1)},isAdmin:function(){return"admin"===g.role},getRole:function(){return g.role},getToken:function(){return e.get("token")},getUserId:function(){return console.log(e.get("userId")),e.get("userId")},getName:function(){return e.get("name")}}}]),angular.module("xCallyShuttleApp").factory("User",["$resource",function(a){return a("/api/users/:id/:controller",{id:"@id"},{changePassword:{method:"PUT",params:{controller:"password"}},me:{method:"GET",params:{id:"me"}}})}]),angular.module("xCallyShuttleApp").service("automations",function(){var a={voice:{conditions:[],actions:[]},mail:{conditions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select",operators:"equals"},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",propertyField:"number",operators:"noequals"}],actions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select"}]},chat:{conditions:[],actions:[]},fax:{conditions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select",operators:"equals"},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",propertyField:"number",operators:"noequals"}],actions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select"}]}},b=["voice","mail","chat","fax"],c={equals:[{value:"=",name:"APPLICATION_EQUALS_TO"},{value:"<>",name:"APPLICATION_NOT_EQUALS_TO"}],all:[{value:"=",name:"APPLICATION_EQUALS_TO"},{value:"<>",name:"APPLICATION_NOT_EQUALS_TO"},{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}],noequals:[{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}]},d={voice:{},mail:{status:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_PENDING",value:"PENDING"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"},{name:"APPLICATION_STATUS_SOLVED",value:"SOLVED"}]},chat:{},fax:{status:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_PENDING",value:"PENDING"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"},{name:"APPLICATION_STATUS_SOLVED",value:"SOLVED"}]}};return{automations:a,properties:d,channels:b,operators:c}}),angular.module("xCallyShuttleApp").controller("FooterController",["$scope",function(a){a.$on("$includeContentLoaded",function(){Layout.initFooter()})}]),angular.module("xCallyShuttleApp").controller("HeaderController",["$scope","$rootScope","$location","$state","$http","$notification","Auth","xAlert","socket","ngAudio","settings","toastr","localStorageService",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.toggleQuickSidebar=function(){k.layout.pageQuickSidebarOpened=!k.layout.pageQuickSidebarOpened,k.layout.pageQuickSidebarOpened||m.remove("chatRoomId")},a.initHeader=function(){var c=j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3");"agent"===g.getCurrentUser().role&&(i.socket.on("report_mail:save",function(a){c.play();var b=f("MAIL CHANNEL",{icon:"assets/images/media/channels/mail64.png",body:"NEW Incoming Mail Message!",delay:1e3*a.timeslot});b.$on("click",function(){e.put("/api/report/mails/"+a.id,{connect:!0}).success(function(){b.close(),h.show("Mail properly assigned","success")}).error(function(a){h.show(a.message,"danger")})})}),i.socket.on("report_chat:save",function(a){c.play();var d=f("CHAT CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Incoming Chat Visitor!",delay:1e3*a.timeslot -});d.$on("click",function(){e.put("/api/report/chats/"+a.id,{connect:!0}).success(function(){d.close(),h.show("Chat properly assigned","success"),b.$broadcast("chatMessageEvent",{type:"external",chatRoomId:a.chatroomid})}).error(function(a){h.show(a.message,"danger")})})}),i.socket.on("chat_message:save",function(a){var d=m.get("chatRoomId");if(!d||d!==a.ChatRoomId){c.play();var e=f(a.User.fullname,{icon:"assets/images/media/channels/chat64.png",body:a.body.length>35?a.body.substring(0,35)+"...":a.body,delay:1e4});e.$on("click",function(){b.$broadcast("chatMessageEvent",{type:"internal",chatRoomId:a.ChatRoomId})})}})),e({url:"/api/fax/user_has_queues",method:"GET",params:{UserId:g.getCurrentUser().id}}).success(function(b){a.faxQueues=_.pluck(b,"FaxQueueId"),a.faxQueues.forEach(function(a){i.socket.on("FAX:QUEUE:"+a,function(a,b){var c=f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*a.timeout});c.$on("click",function(){e.put("/api/fax/rooms/"+a.roomId,{UserId:g.getCurrentUser().id}).success(function(){c.close(),b(g.getCurrentUser().id),l.success("Fax properly assigned","Success",{closeButton:!0,timeOut:5e3})}).error(function(){l.warning("Fax already assigned","Warning",{closeButton:!0,timeOut:5e3})})})})}),i.socket.on("FAX:AGENT:"+g.getCurrentUser().id,function(a,b){var c=f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*a.timeout});c.$on("click",function(){e.put("/api/fax/rooms/"+a.roomId,{UserId:g.getCurrentUser().id}).success(function(){c.close(),b(g.getCurrentUser().id),l.success("Fax properly assigned","Success",{closeButton:!0,timeOut:5e3})}).error(function(){b(g.getCurrentUser().id),l.warning("Fax already assigned","Warning",{closeButton:!0,timeOut:5e3})})})})}).error(function(a){console.error(a)}),i.socket.on("user_has_fax_queue:save",function(b){b=_.map(b,function(a){return a.UserId=parseInt(a.UserId,10),a}),b=_.find(b,{UserId:g.getCurrentUser().id}),b&&-1===_.indexOf(a.faxQueues,b.FaxQueueId)&&(a.faxQueues.push(b.FaxQueueId),i.socket.on("FAX:QUEUE:"+b.FaxQueueId,function(a,b){var c=f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*a.timeout});c.$on("click",function(){e.put("/api/fax/rooms/"+a.roomId,{UserId:g.getCurrentUser().id}).success(function(){c.close(),b(g.getCurrentUser().id),l.success("Fax properly assigned","Success",{closeButton:!0,timeOut:5e3})}).error(function(){b(g.getCurrentUser().id),l.warning("Fax already assigned","Warning",{closeButton:!0,timeOut:5e3})})})}))}),i.socket.on("user_has_fax_queue:remove",function(b){_.indexOf(b.where.UserId,g.getCurrentUser().id.toString())>=0&&_.indexOf(a.faxQueues,b.where.FaxQueueId)>=0&&(a.faxQueues=_.remove(a.faxQueues,b.where.FaxQueueId),i.socket.removeAllListeners("FAX:QUEUE:"+b.where.FaxQueueId))})},a.logout=function(){e.get("/auth/local/logout").success(function(){g.logout(),c.path("/login")}).error(function(a){console.error(a)})},a.isActive=function(a){return a===c.path()}}]),angular.module("xCallyShuttleApp").service("interval",function(){var a={months:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"jan",name:"APPLICATION_JANUARY"},{value:"feb",name:"APPLICATION_FEBRUARY"},{value:"mar",name:"APPLICATION_MARCH"},{value:"apr",name:"APPLICATION_APRIL"},{value:"may",name:"APPLICATION_MAY"},{value:"jun",name:"APPLICATION_JUNE"},{value:"jul",name:"APPLICATION_JULY"},{value:"aug",name:"APPLICATION_AUGUST"},{value:"sep",name:"APPLICATION_SEPTEMBER"},{value:"oct",name:"APPLICATION_OCTOBER"},{value:"nov",name:"APPLICATION_NOVEMBER"},{value:"dec",name:"APPLICATION_DECEMBER"}],daysOfWeek:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"mon",name:"APPLICATION_MONDAY"},{value:"tue",name:"APPLICATION_TUESDAY"},{value:"wed",name:"APPLICATION_WEDNESDAY"},{value:"thu",name:"APPLICATION_THURSDAY"},{value:"fri",name:"APPLICATION_FRIDAY"},{value:"sat",name:"APPLICATION_SATURDAY"},{value:"sun",name:"APPLICATION_SUNDAY"}],daysOfMonth:["always",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{interval:a}}),angular.module("xCallyShuttleApp").factory("Modal",["$rootScope","$uibModal",function(a,b){function c(c,d){console.log("openModal",d);var e=a.$new();return c=c||{},d=d||"modal-default",angular.extend(e,c),b.open({templateUrl:"components/modal/delete.html",windowClass:d,scope:e})}return{confirm:{"delete":function(a){return a=a||angular.noop,function(){var b,d=Array.prototype.slice.call(arguments),e=d.shift();b=c({modal:{dismissable:!0,title:"Confirm Delete",html:"

Are you sure you want to delete"+(e?" "+e+"":" selected items")+"?

",buttons:[{classes:"btn red",text:"Delete",click:function(a){b.close(a)}},{classes:"btn default",text:"Cancel",click:function(a){b.dismiss(a)}}]}},"over-topbar center"),b.result.then(function(b){a.apply(b,d)})}}}}}]),angular.module("xCallyShuttleApp").controller("QuickSidebarControllerAddModal",["$scope","$uibModalInstance","Agent","items",function(a,b,c,d){a.items=d,a.agents=c.get(function(b){a.agents=b,a.items.forEach(function(b){_.remove(a.agents.rows,{id:b.id})})}),a.selected={items:[]},a.modal={title:"APPLICATION_AGENTS_SELECTION"},a.ok=function(){b.close(_.union(_.pluck(a.selected.items,"id"),_.pluck(a.items,"id")))},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("QuickSidebarControllerCloseModal",["$scope","$uibModalInstance",function(a,b){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_CHAT"},a.ok=function(){b.close()},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("QuickSidebarController",["$scope","$rootScope","$window","$http","$uibModal","$log","$timeout","Auth","Agent","User","ChatRoom","ChatMessage","socket","settings","localStorageService","xAlert","$translate",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a.emojiMessage={},a.options={link:!0,linkTarget:"_blank",pdf:{embed:!1},image:{embed:!0},audio:{embed:!0},code:{highlight:!0,lineNumbers:!1},basicVideo:!1,video:{embed:!1,width:null,height:null,ytTheme:"dark",details:!1,ytAuthKey:"_nkO9h1A7HlVyiUICO17oA"}};var r=a.currentUser=h.getCurrentUser();a.message={body:"",user:""},a.$on("$includeContentLoaded",function(){o.get("chatRoomId")&&k.get({id:o.get("chatRoomId")},t,u),o.get("currentTab")&&(a.currentTab=o.get("currentTab"))});var s=angular.element(c);a.getWindowDimensions=function(){return{h:s.height(),w:s.width()}},a.$watch(a.getWindowDimensions,function(b){a.style={height:b.h-46-46-46+"px"},a.style2={height:b.h-46-46-46-180+"px"}},!0),s.bind("resize",function(){a.$apply()}),a.agents=i.get({page:0,per_page:1e3},function(){m.syncUpdates("agent",a.agents.rows)}),a.users=j.get({page:0,per_page:1e3},function(){m.syncUpdates("user",a.users.rows)}),a.chatRooms=k.me(function(b){a.chatRooms=b,m.syncUpdates("chat_room",a.chatRooms)},function(a){console.error(a)}),a.currentTab=0,a.messagesTab=!1,b.$on("chatMessageEvent",function(b,c){switch(c.type){case"internal":a.currentTab=0;break;case"external":a.currentTab=2}k.get({id:c.chatRoomId},t,u)}),a.goToTab=function(b){a.currentTab=b,a.messagesTab=!1,a.chatRoom=null,o.set("currentTab",a.currentTab),o.set("messagesTab",a.messagesTab),o.remove("chatRoomId"),m.unsyncUpdates("chat_message"),m.unsyncUpdates("chat_room")},a.goToMessage=function(a,b){a?k.users({users:[r.id,a]},t,u):k.get({id:b},t,u)},a.sendMessage=function(){a.message.body.trim().length&&l.save({ChatRoomId:a.chatRoom.id,body:a.message.body},function(){a.message.body=""},function(a){console.error(a)})},a.goBack=function(){a.messagesTab=!1,a.chatRoom=null,o.set("messagesTab",a.messagesTab),o.remove("chatRoomId"),m.unsyncUpdates("chat_message"),m.unsyncUpdates("user_has_chat_room")},a.chatRoomsGroupsGreaterThan=function(a){return function(b){return b.Users?"external"!==b.type&&b.Users.length>a:!1}},a.closeChatRoom=function(a,b){var c=e.open({animation:!0,size:b,templateUrl:"components/quickSidebar/modal/close.html",controller:"QuickSidebarControllerCloseModal"});c.result.then(function(){d.put("/api/chat/rooms/"+a,{status:"close"}).then(function(){p.show(q.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){p.show(a.data.message,"danger")})},function(){f.info("Modal dismissed at: "+new Date)})},a.addAgent=function(b,c){var g=e.open({animation:!0,size:c,templateUrl:"components/quickSidebar/modal/add.html",controller:"QuickSidebarControllerAddModal",resolve:{items:function(){return _.map(a.chatRoom.Users?a.chatRoom.Users:[],function(a){return{id:a.id,fullname:a.fullname}})}}});g.result.then(function(c){d.put("/api/chat/rooms/"+b+"/users",{users:c}).then(function(b){m.unsyncUpdates("chat_message"),a.chatRoom=b.data,a.currentTab=3,a.messagesTab=!0;var c=_.find(a.chatRooms,{id:b.id}),d=a.chatRooms.indexOf(c);c?_.merge(a.chatRooms[d],b.data):a.chatRooms.push(b.data),m.socket.on("chat_message:save",function(c){c.ChatRoomId===b.data.id&&(a.chatRoom.ChatMessages.push(c),angular.element("page-quick-sidebar-chat-user-messages").mCustomScrollbar("scrollTo","last"))}),p.show(q.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){p.show(a.data.message,"danger")})},function(){f.info("Modal dismissed at: "+new Date)})};var t=function(b){a.messagesTab=!0,n.layout.pageQuickSidebarOpened=!0,o.set("chatRoomId",b.id),o.set("messagesTab",a.messagesTab),a.chatRoom=b;var c=_.find(a.chatRooms,{id:b.id}),d=a.chatRooms.indexOf(c);c?_.merge(a.chatRooms[d],b):a.chatRooms.push(b),g(function(){angular.element("page-quick-sidebar-chat-user-messages").mCustomScrollbar("scrollTo","last")},1e3),m.socket.on("chat_message:save",function(c){c.ChatRoomId===b.id&&(a.chatRoom.ChatMessages.push(c),angular.element("page-quick-sidebar-chat-user-messages").mCustomScrollbar("scrollTo","last"))}),m.socket.on("chat_room:save",function(b){b.id===a.chatRoom.id&&(a.chatRoom.status=b.status)})},u=function(a){console.error(a)};a.$on("$destroy",function(){m.unsyncUpdates("agent"),m.unsyncUpdates("user")})}]),angular.module("xCallyShuttleApp").directive("resizeQuickSidebar",["$window",function(a){return function(b){var c=angular.element(a);b.getWindowDimensions=function(){return{h:c.height(),w:c.width()}},b.$watch(b.getWindowDimensions,function(a){b.style={height:a.h-46-46-46+"px"}},!0),c.bind("resize",function(){b.$apply()})}}]),angular.module("xCallyShuttleApp").controller("SidebarController",["$scope","$rootScope","$resource","$location","Auth","$http","xAlert","$stateParams","socket",function(a,b,c,d,e,f,g,h,i){a.Auth=e,a.$stateParams=h,a.$on("$includeContentLoaded",function(){Metronic.init(),Layout.initSidebar()}),a.isAssociated=function(a){if(e.isAdmin())return!0;if(e.getCurrentUser().Modules)for(var b=0;b",name:"APPLICATION_NOT_EQUALS_TO"}],all:[{value:"=",name:"APPLICATION_EQUALS_TO"},{value:"<>",name:"APPLICATION_NOT_EQUALS_TO"},{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}],noequals:[{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}]},c={voice:{},mail:{},chat:{},fax:{}},d=["voice","mail","chat","fax"];return{triggers:a,properties:c,operators:b,channels:d}}),function(a,b){angular.module("adf.widget.counter",["adf.provider"]).value("apiServiceUrlCounter","/api/widgets/counter").config(["dashboardProvider",function(a){a.widget("counter",{title:"Counter",description:"Counter for db results",templateUrl:"{widgetsPath}/counter/src/view.html",controller:"apiwidgetCounterViewCtrl",edit:{templateUrl:"{widgetsPath}/counter/src/edit.html",controller:"apiwidgetCounterEditCtrl"}})}]).service("apiServiceCounter",["$q","$http","apiServiceUrlCounter",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiwidgetCounterEditCtrl",["$scope",function(a){a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.colors=[{name:"Blue",value:"blue-madison"},{name:"Red",value:"red-intense"},{name:"Green",value:"green-haze"},{name:"Purple",value:"purple-plum"},{name:"Orange",value:"yellow-casablanca"},{name:"Yellow",value:"yellow-crusta"}],a.config.icons=[{name:"Talk bubbles",value:"fa-comments"},{name:"Bar Chart",value:"fa-bar-chart"},{name:"Shopping Cart",value:"fa-shopping-cart"},{name:"Globe",value:"fa-globe"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE"}]).controller("apiwidgetCounterViewCtrl",["$scope","$interval","apiServiceCounter",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE",a.counterApiCall=function(){a.config.condition&&a.config.report&&c.get(a.config).then(function(b){a.count=parseInt(b[0].count)})},a.counterApiCall();var d=b(function(){a.counterApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.counter").run(["$templateCache",function(a){a.put("{widgetsPath}/counter/src/edit.html","
{{$select.selected.name}}
{{$select.selected.name}}
{{$select.selected.name}}
"),a.put("{widgetsPath}/counter/src/view.html",'
{{count}}
{{config.details}}
{{config.linkText}}
')}])}(window),function(a,b){angular.module("adf.widget.pie-chart",["adf.provider"]).value("apiServiceUrlPieChart","/api/widgets/piechart").config(["dashboardProvider",function(a){a.widget("pie-chart",{title:"Pie-Chart",description:"Display a pie-chart starting from DB values",templateUrl:"{widgetsPath}/pie-chart/src/view.html",controller:"apiWidgetPieChartViewCtrl",edit:{templateUrl:"{widgetsPath}/pie-chart/src/edit.html",controller:"apiWidgetPieChartEditCtrl"}})}]).service("apiServicePieChart",["$q","$http","apiServiceUrlPieChart",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report,fields:d.fields}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiWidgetPieChartEditCtrl",["$scope",function(a){function b(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){b().push({})},a.removeField=function(a){b().splice(a,1)}}]).controller("apiWidgetPieChartViewCtrl",["$scope","$interval","apiServicePieChart",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.pieChartApiCall=function(){a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){if(b&&1===b.length){a.labels=[],a.data=[];for(var c in b[0])a.labels.push(c),a.data.push(b[0][c])}else a.labels=[],a.data=[]})},a.pieChartApiCall();var d=b(function(){a.pieChartApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.pie-chart").run(["$templateCache",function(a){a.put("{widgetsPath}/pie-chart/src/edit.html",'
{{$select.selected.name}}
as
'),a.put("{widgetsPath}/pie-chart/src/view.html",'
')}])}(window),function(a,b){angular.module("adf.widget.table",["adf.provider"]).value("apiServiceUrlTable","/api/widgets/table").config(["dashboardProvider",function(a){a.widget("table",{title:"Table",description:"Show tabbed results from db",templateUrl:"{widgetsPath}/table/src/view.html",controller:"apiWidgetTableViewCtrl",edit:{templateUrl:"{widgetsPath}/table/src/edit.html",controller:"apiWidgetTableEditCtrl"}})}]).service("apiServiceTable",["$q","$http","apiServiceUrlTable",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report,fields:d.fields}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiWidgetTableEditCtrl",["$scope",function(a){function b(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){b().push({})},a.removeField=function(a){b().splice(a,1)}}]).controller("apiWidgetTableViewCtrl",["$scope","$interval","apiServiceTable",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.style={"max-height":a.config.height+"px",overflow:"scroll"},a.tableApiCall=function(){a.config.condition&&a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){a.results=b})},a.tableApiCall();var d=b(function(){a.tableApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.table").run(["$templateCache",function(a){a.put("{widgetsPath}/table/src/edit.html",'
{{$select.selected.name}}
as
'),a.put("{widgetsPath}/table/src/view.html",'
{{field.alias}}
{{result[field.alias]}}
{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}
')}])}(window),function(){angular.module("pdf",[]).directive("ngPdf",["$window",function(a){return{restrict:"E",templateUrl:function(a,b){return b.templateUrl?b.templateUrl:"partials/viewer.html"},link:function(b,c,d){var e=d.pdfUrl,f=null,g=d.page?d.page:1,h=d.scale>0?d.scale:1,i=c.find("canvas"),j=i[0],k=j.getContext("2d"),l=angular.element(a);l.on("scroll",function(){b.$apply(function(){b.scroll=l[0].scrollY})}),PDFJS.disableWorker=!0,b.pageNum=g,b.renderPage=function(a){f.getPage(a).then(function(a){var e,f,g,i={};"page-fit"!==d.scale||h?e=a.getViewport(h):(e=a.getViewport(1),f=c[0].clientWidth/e.width,g=c[0].clientHeight/e.height,h=Math.min(f,g)),j.height=e.height,j.width=e.width,i={canvasContext:k,viewport:e},a.render(i).promise.then(function(){"function"==typeof b.onPageRender&&b.onPageRender()})})},b.goPrevious=function(){b.pageToDisplay<=1||(b.pageNum=parseInt(b.pageNum)-1); -},b.goNext=function(){b.pageToDisplay>=f.numPages||(b.pageNum=parseInt(b.pageNum)+1)},b.zoomIn=function(){return h=parseFloat(h)+.2,b.renderPage(b.pageToDisplay),h},b.zoomOut=function(){return h=parseFloat(h)-.2,b.renderPage(b.pageToDisplay),h},b.changePage=function(){b.renderPage(b.pageToDisplay)},b.rotate=function(){"rotate0"===j.getAttribute("class")?j.setAttribute("class","rotate90"):"rotate90"===j.getAttribute("class")?j.setAttribute("class","rotate180"):"rotate180"===j.getAttribute("class")?j.setAttribute("class","rotate270"):j.setAttribute("class","rotate0")},PDFJS.getDocument(e,null,null,b.onProgress).then(function(a){"function"==typeof b.onLoad&&b.onLoad(),f=a,b.renderPage(b.pageToDisplay),b.$apply(function(){b.pageCount=a.numPages})},function(a){a&&"function"==typeof b.onError&&b.onError(a)}),b.$watch("pageNum",function(a){b.pageToDisplay=parseInt(a),null!==f&&b.renderPage(b.pageToDisplay)})}}}])}(),function(a){a.module("angular-elastic-builder",["RecursionHelper"])}(window.angular),function(a){a.module("angular-elastic-builder").directive("elasticBuilder",["elasticQueryService",function(a){return{scope:{data:"=elasticBuilder"},templateUrl:"angular-elastic-builder/BuilderDirective.html",link:function(b){var c=b.data;b.filters=[],b.removeChild=function(a){b.filters.splice(a,1)},b.addRule=function(){b.filters.push({})},b.addGroup=function(){b.filters.push({type:"group",subType:"and",rules:[]})},b.$watch("data.needsUpdate",function(d){d&&(b.filters=a.toFilters(c.query,b.data.fields),b.data.needsUpdate=!1)}),b.$watch("filters",function(d){d&&(c.query=a.toQuery(b.filters,b.data.fields))},!0)}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticBuilderChooser",["RecursionHelper","groupClassHelper",function(a,b){return{scope:{elasticFields:"=",item:"=elasticBuilderChooser",onRemove:"&"},templateUrl:"angular-elastic-builder/ChooserDirective.html",compile:function(c){return a.compile(c,function(a,c,d){var e=a.depth=+d.depth,f=a.item;a.getGroupClassName=function(){var a=e;return"group"===f.type&&a++,b(a)}})}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticBuilderGroup",["RecursionHelper","groupClassHelper",function(a,b){return{scope:{elasticFields:"=",group:"=elasticBuilderGroup",onRemove:"&"},templateUrl:"angular-elastic-builder/GroupDirective.html",compile:function(c){return a.compile(c,function(a,c,d){var e=a.depth=+d.depth,f=a.group;a.addRule=function(){f.rules.push({})},a.addGroup=function(){f.rules.push({type:"group",subType:"and",rules:[]})},a.removeChild=function(a){f.rules.splice(a,1)},a.getGroupClassName=function(){return b(e+1)}})}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticBuilderRule",[function(){return{scope:{elasticFields:"=",rule:"=elasticBuilderRule",onRemove:"&"},templateUrl:"angular-elastic-builder/RuleDirective.html",link:function(a){a.getType=function(){var b=a.elasticFields,c=a.rule.field;return b&&c?"boolean"===b[c].subType?"boolean":b[c].type:void 0}}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticType",[function(){return{scope:{type:"=elasticType",rule:"=",guide:"="},template:'',link:function(a){a.getTemplateUrl=function(){var b=a.type;if(b)return b=b.charAt(0).toUpperCase()+b.slice(1),"angular-elastic-builder/types/"+b+".html"},a.booleans=["False","True"],a.booleansOrder=["True","False"],a.inputNeeded=function(){var b=["equals","notEquals","gt","gte","lt","lte"];return~b.indexOf(a.rule.subType)}}}}])}(window.angular),function(a){a.module("angular-elastic-builder").factory("groupClassHelper",function(){return function(a){var b=[""];return b[a%b.length]}})}(window.angular),function(a){function b(a,b){var c=a.map(d.bind(a,b));return c}function c(a,b){var c=a.map(e.bind(a,b)).filter(function(a){return!!a});return c}function d(a,b,c){c!==!1&&(c=!0);var e=Object.keys(b)[0],g={or:"group",and:"group",range:"number"},h=g[e]||"item",i=f(h);switch(e){case"or":case"and":i.rules=b[e].map(d.bind(b,a)),i.subType=e;break;case"missing":case"exists":i.field=b[e].field,i.subType={exists:"exists",missing:"notExists"}[e],delete i.value;break;case"term":case"terms":i.field=Object.keys(b[e])[0];var j=a[Object.keys(b[e])[0]];if("multi"===j.type){var k=b[e][i.field];"string"==typeof k&&(k=[k]),i.value=b[e][i.field]}else i.subType=c?"equals":"notEquals",i.value=b[e][i.field],"number"==typeof i.value&&(i.subType="boolean");break;case"range":i.field=Object.keys(b[e])[0],i.subType=Object.keys(b[e][i.field])[0],i.value=b[e][i.field][i.subType];break;case"not":i=d(a,b[e].filter,!1);break;default:i.field=Object.keys(b[e])[0]}return i}function e(a,b){var c={};if("group"===b.type)return c[b.subType]=b.rules.map(e.bind(b,a)).filter(function(a){return!!a}),c;var d=b.field,f=a[d];if(d){switch(f.type){case"term":case"multiterm":if("boolean"===f.subType&&(b.subType="boolean"),!b.subType)return;switch(b.subType){case"equals":case"boolean":if(void 0===b.value)return;c.term={},c.term[d]=b.value;break;case"notEquals":if(void 0===b.value)return;c.not={filter:{term:{}}},c.not.filter.term[d]=b.value;break;case"exists":c.exists={field:d};break;case"notExists":c.missing={field:d};break;default:throw new Error("unexpected subtype "+b.subType)}break;case"number":c.range={},c.range[d]={},c.range[d][b.subType]=b.value;break;case"date":if("exists"===b.subType)c.exists={field:d};else{if("notExists"!==b.subType)throw new Error("unexpected subtype");c.missing={field:d}}break;case"multi":c.terms={},c.terms[d]=b.value;break;default:throw new Error("unexpected type")}return c}}function f(b){var c={group:{type:"group",subType:"",rules:[]},item:{field:"",subType:"",value:""},number:{field:"",subType:"",value:null}};return a.copy(c[b])}a.module("angular-elastic-builder").factory("elasticQueryService",[function(){return{toFilters:b,toQuery:c}}])}(window.angular),function(a){a.module("angular-elastic-builder").run(["$templateCache",function(a){a.put("angular-elastic-builder/BuilderDirective.html",'\n\n\n
\n \n
\n \n \n \n \n \n'),a.put("angular-elastic-builder/ChooserDirective.html",'\n\n\n
\n
\n
\n
\n'),a.put("angular-elastic-builder/GroupDirective.html",'\n\n\n\n
\n
\n
\n \n
{{ \'APPLICATION_IF\' | translate }}\n \n {{group.subType == \'and\' ? \'MESSAGE_CODITIONS_MET_ALL\' : \'MESSAGE_CODITIONS_MET_ANY\' | translate}}\n
\n
\n
\n \n
\n\n\n'),a.put("angular-elastic-builder/RuleDirective.html",'\n\n \n {{elasticFields[rule.field].action.label | translate}}\n \n \n\n \n\n \n\n \n \n \n\n\n'),a.put("angular-elastic-builder/types/Boolean.html",'\n Equals\n\n \n \n \n\n'),a.put("angular-elastic-builder/types/Date.html",'\n \n\n\n'),a.put("angular-elastic-builder/types/Multi.html",'\n\n\n {{guide.action.midterm | translate}}\n \n \n \n\n \n\n'),a.put("angular-elastic-builder/types/Multiterm.html",'\n \n \n\n'),a.put("angular-elastic-builder/types/Number.html",'\n \n\n \n \n\n \n\n\n'),a.put("angular-elastic-builder/types/Term.html",'\n \n \n\n \n \n\n\n\n \n \n\n')}])}(window.angular);var Metronic=function(){var a,b=!1,c=!1,d=!1,e=!1,f=[],g="assets/",h="img/",i="plugins/",j="css/",k={blue:"#89C4F4",red:"#F3565D",green:"#1bbc9b",purple:"#9b59b6",grey:"#95a5a6",yellow:"#F8CB00"},l=function(){"rtl"===$("body").css("direction")&&(b=!0),c=!!navigator.userAgent.match(/MSIE 8.0/),d=!!navigator.userAgent.match(/MSIE 9.0/),e=!!navigator.userAgent.match(/MSIE 10.0/),e&&$("html").addClass("ie10"),(e||d||c)&&$("html").addClass("ie")},m=function(){for(var a=0;a .portlet-title > .tools > a.remove",function(a){a.preventDefault();var b=$(this).closest(".portlet");$("body").hasClass("page-portlet-fullscreen")&&$("body").removeClass("page-portlet-fullscreen"),b.find(".portlet-title .fullscreen").tooltip("destroy"),b.find(".portlet-title > .tools > .reload").tooltip("destroy"),b.find(".portlet-title > .tools > .remove").tooltip("destroy"),b.find(".portlet-title > .tools > .config").tooltip("destroy"),b.find(".portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip("destroy"),b.remove()}),$("body").on("click",".portlet > .portlet-title .fullscreen",function(a){a.preventDefault();var b=$(this).closest(".portlet");if(b.hasClass("portlet-fullscreen"))$(this).removeClass("on"),b.removeClass("portlet-fullscreen"),$("body").removeClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height","auto");else{var c=Metronic.getViewPort().height-b.children(".portlet-title").outerHeight()-parseInt(b.children(".portlet-body").css("padding-top"))-parseInt(b.children(".portlet-body").css("padding-bottom"));$(this).addClass("on"),b.addClass("portlet-fullscreen"),$("body").addClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height",c)}}),$("body").on("click",".portlet > .portlet-title > .tools > a.reload",function(a){a.preventDefault();var b=$(this).closest(".portlet").children(".portlet-body"),c=$(this).attr("data-url"),d=$(this).attr("data-error-display");c?(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),$.ajax({type:"GET",cache:!1,url:c,dataType:"html",success:function(a){Metronic.unblockUI(b),b.html(a)},error:function(a,c,e){Metronic.unblockUI(b);var f="Error on reloading the content. Please check your connection and try again.";"toastr"==d&&toastr?toastr.error(f):"notific8"==d&&$.notific8?($.notific8("zindex",11500),$.notific8(f,{theme:"ruby",life:3e3})):alert(f)}})):(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),window.setTimeout(function(){Metronic.unblockUI(b)},1e3))}),$('.portlet .portlet-title a.reload[data-load="true"]').click(),$("body").on("click",".portlet > .portlet-title > .tools > .collapse, .portlet .portlet-title > .tools > .expand",function(a){a.preventDefault()})},p=function(){if($().uniform){var a=$("input[type=checkbox]:not(.toggle, .make-switch, .icheck), input[type=radio]:not(.toggle, .star, .make-switch, .icheck)");a.size()>0&&a.each(function(){0===$(this).parents(".checker").size()&&$(this).show()})}},q=function(){$().iCheck&&$(".icheck").each(function(){var a=$(this).attr("data-checkbox")?$(this).attr("data-checkbox"):"icheckbox_minimal-grey",b=$(this).attr("data-radio")?$(this).attr("data-radio"):"iradio_minimal-grey";a.indexOf("_line")>-1||b.indexOf("_line")>-1?$(this).iCheck({checkboxClass:a,radioClass:b,insert:'
'+$(this).attr("data-label")}):$(this).iCheck({checkboxClass:a,radioClass:b})})},r=function(){$().bootstrapSwitch&&$(".make-switch").bootstrapSwitch()},s=function(){$().confirmation&&$("[data-toggle=confirmation]").confirmation({container:"body",btnOkClass:"btn-xs btn-success",btnCancelClass:"btn-xs btn-danger"})},t=function(){$("body").on("shown.bs.collapse",".accordion.scrollable",function(a){Metronic.scrollTo($(a.target))})},u=function(){if(location.hash){var a=location.hash.substr(1);$('a[href="#'+a+'"]').parents(".tab-pane:hidden").each(function(){var a=$(this).attr("id");$('a[href="#'+a+'"]').click()}),$('a[href="#'+a+'"]').click()}},v=function(){$("body").on("hide.bs.modal",function(){$(".modal:visible").size()>1&&$("html").hasClass("modal-open")===!1?$("html").addClass("modal-open"):$(".modal:visible").size()<=1&&$("html").removeClass("modal-open")}),$("body").on("show.bs.modal",".modal",function(){$(this).hasClass("modal-scroll")&&$("body").addClass("modal-open-noscroll")}),$("body").on("hide.bs.modal",".modal",function(){$("body").removeClass("modal-open-noscroll")}),$("body").on("hidden.bs.modal",".modal:not(.modal-cached)",function(){$(this).removeData("bs.modal")})},w=function(){$(".tooltips").tooltip(),$(".portlet > .portlet-title .fullscreen").tooltip({container:"body",title:"Fullscreen"}),$(".portlet > .portlet-title > .tools > .reload").tooltip({container:"body",title:"Reload"}),$(".portlet > .portlet-title > .tools > .remove").tooltip({container:"body",title:"Remove"}),$(".portlet > .portlet-title > .tools > .config").tooltip({container:"body",title:"Settings"}),$(".portlet > .portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip({container:"body",title:"Collapse/Expand"})},x=function(){$("body").on("click",".dropdown-menu.hold-on-click",function(a){a.stopPropagation()})},y=function(){$("body").on("click",'[data-close="alert"]',function(a){$(this).parent(".alert").hide(),$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-close="note"]',function(a){$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-remove="note"]',function(a){$(this).closest(".note").remove(),a.preventDefault()})},z=function(){$('[data-hover="dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")})},A=function(){$(".popovers").popover(),$(document).on("click.bs.popover.data-api",function(b){a&&a.popover("hide")})},B=function(){Metronic.initSlimScroll(".scroller")},C=function(){jQuery.fancybox&&$(".fancybox-button").size()>0&&$(".fancybox-button").fancybox({groupAttr:"data-rel",prevEffect:"none",nextEffect:"none",closeBtn:!0,helpers:{title:{type:"inside"}}})},D=function(){(c||d)&&$("input[placeholder]:not(.placeholder-no-fix), textarea[placeholder]:not(.placeholder-no-fix)").each(function(){var a=$(this);""===a.val()&&""!==a.attr("placeholder")&&a.addClass("placeholder").val(a.attr("placeholder")),a.focus(function(){a.val()==a.attr("placeholder")&&a.val("")}),a.blur(function(){(""===a.val()||a.val()==a.attr("placeholder"))&&a.val(a.attr("placeholder"))})})},E=function(){$().select2&&$(".select2me").select2({placeholder:"Select"})};return{init:function(){l(),n(),p(),q(),r(),B(),C(),E(),o(),y(),x(),u(),w(),A(),t(),v(),s(),D()},initAjax:function(){p(),q(),r(),z(),B(),E(),C(),x(),w(),A(),t(),s()},initComponents:function(){this.initAjax()},setLastPopedPopover:function(b){a=b},addResizeHandler:function(a){f.push(a)},runResizeHandlers:function(){m()},scrollTo:function(a,b){var c=a&&a.size()>0?a.offset().top:0;a&&($("body").hasClass("page-header-fixed")&&(c-=$(".page-header").height()),c+=b?b:-1*a.height()),$("html,body").animate({scrollTop:c},"slow")},initSlimScroll:function(a){$(a).each(function(){if(!$(this).attr("data-initialized")){var a;a=$(this).attr("data-height")?$(this).attr("data-height"):$(this).css("height"),$(this).slimScroll({allowPageScroll:!0,size:"7px",color:$(this).attr("data-handle-color")?$(this).attr("data-handle-color"):"#bbb",wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",railColor:$(this).attr("data-rail-color")?$(this).attr("data-rail-color"):"#eaeaea",position:b?"left":"right",height:a,alwaysVisible:"1"==$(this).attr("data-always-visible")?!0:!1,railVisible:"1"==$(this).attr("data-rail-visible")?!0:!1,disableFadeOut:!0}),$(this).attr("data-initialized","1")}})},destroySlimScroll:function(a){$(a).each(function(){if("1"===$(this).attr("data-initialized")){$(this).removeAttr("data-initialized"),$(this).removeAttr("style");var a={};$(this).attr("data-handle-color")&&(a["data-handle-color"]=$(this).attr("data-handle-color")),$(this).attr("data-wrapper-class")&&(a["data-wrapper-class"]=$(this).attr("data-wrapper-class")),$(this).attr("data-rail-color")&&(a["data-rail-color"]=$(this).attr("data-rail-color")),$(this).attr("data-always-visible")&&(a["data-always-visible"]=$(this).attr("data-always-visible")),$(this).attr("data-rail-visible")&&(a["data-rail-visible"]=$(this).attr("data-rail-visible")),$(this).slimScroll({wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",destroy:!0});var b=$(this);$.each(a,function(a,c){b.attr(a,c)})}})},scrollTop:function(){Metronic.scrollTo()},blockUI:function(a){a=$.extend(!0,{},a);var b="";if(b=a.animate?'
':a.iconOnly?'
':a.textOnly?'
  '+(a.message?a.message:"LOADING...")+"
":'
  '+(a.message?a.message:"LOADING...")+"
",a.target){var c=$(a.target);c.height()<=$(window).height()&&(a.cenrerY=!0),c.block({message:b,baseZ:a.zIndex?a.zIndex:1e3,centerY:void 0!==a.cenrerY?a.cenrerY:!1,css:{top:"10%",border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})}else $.blockUI({message:b,baseZ:a.zIndex?a.zIndex:1e3,css:{border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})},unblockUI:function(a){a?$(a).unblock({onUnblock:function(){$(a).css("position",""),$(a).css("zoom","")}}):$.unblockUI()},startPageLoading:function(a){a&&a.animate?($(".page-spinner-bar").remove(),$("body").append('
')):($(".page-loading").remove(),$("body").append('
  '+(a&&a.message?a.message:"Loading...")+"
"))},stopPageLoading:function(){$(".page-loading, .page-spinner-bar").remove()},alert:function(a){a=$.extend(!0,{container:"",place:"append",type:"success",message:"",close:!0,reset:!0,focus:!0,closeInSeconds:0,icon:""},a);var b=Metronic.getUniqueID("Metronic_alert"),c='
'+(a.close?'':"")+(""!==a.icon?' ':"")+a.message+"
";return a.reset&&$(".Metronic-alerts").remove(),a.container?"append"==a.place?$(a.container).append(c):$(a.container).prepend(c):$("body").hasClass("page-container-bg-solid")?$(".page-title").after(c):$(".page-bar").size()>0?$(".page-bar").after(c):$(".page-breadcrumb").after(c),a.focus&&Metronic.scrollTo($("#"+b)),a.closeInSeconds>0&&setTimeout(function(){$("#"+b).remove()},1e3*a.closeInSeconds),b},initUniform:function(a){a?$(a).each(function(){0===$(this).parents(".checker").size()&&($(this).show(),$(this).uniform())}):p()},updateUniform:function(a){$.uniform.update(a)},initFancybox:function(){C()},getActualVal:function(a){return a=$(a),a.val()===a.attr("placeholder")?"":a.val()},getURLParameter:function(a){var b,c,d=window.location.search.substring(1),e=d.split("&");for(b=0;b a").each(function(){var a=$(this).attr("href").toLowerCase();return a.length>1&&d.substr(1,a.length-1)==a.substr(1)?void(b=$(this)):void 0}),b&&0!=b.size()&&"javascript:;"!==b.attr("href").toLowerCase()&&"#"!==b.attr("href").toLowerCase()){parseInt(e.data("slide-speed")),e.data("keep-expanded");e.find("li.active").removeClass("active"),e.find("li > a > .selected").remove(),e.hasClass("page-sidebar-menu-hover-submenu")===!1?e.find("li.open").each(function(){0===$(this).children(".sub-menu").size()&&($(this).removeClass("open"),$(this).find("> a > .arrow.open").removeClass("open"))}):e.find("li.open").removeClass("open"),b.parents("li").each(function(){$(this).addClass("active"),$(this).find("> a > span.arrow").addClass("open"),1===$(this).parent("ul.page-sidebar-menu").size()&&$(this).find("> a").append(''),1===$(this).children("ul.sub-menu").size()&&$(this).addClass("open")}),"click"===a&&Metronic.getViewPort().width a",function(a){var b=$(this).next().hasClass("sub-menu");if(!(Metronic.getViewPort().width>=c&&1===$(this).parents(".page-sidebar-menu-hover-submenu").size())){if(b===!1)return void(Metronic.getViewPort().width a.ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=jQuery(".page-sidebar ul"),e=($(".page-content"),$(".page-content .page-content-body"));d.children("li.active").removeClass("active"),d.children("arrow.open").removeClass("open"),$(this).parents("li").each(function(){$(this).addClass("active"),$(this).children("a > span.arrow").addClass("open")}),$(this).parents("li").addClass("active"),Metronic.getViewPort().width li.open > a").click(),Metronic.stopPageLoading(),e.html(a),Layout.fixContentHeight(),Metronic.initAjax()},error:function(a,b,c){Metronic.stopPageLoading(),e.html("

Could not load the requested content.

")}})}),jQuery(".page-content").on("click",".ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=($(".page-content"),$(".page-content .page-content-body"));Metronic.startPageLoading(),Metronic.getViewPort().widthCould not load the requested content."),Metronic.stopPageLoading()}})}),i(),$(".page-sidebar").on("click",".sidebar-search .remove",function(a){a.preventDefault(),$(".sidebar-search").removeClass("open")}),$(".page-sidebar .sidebar-search").on("keypress","input.form-control",function(a){return 13==a.which?($(".sidebar-search").submit(),!1):void 0}),$(".sidebar-search .submit").on("click",function(a){a.preventDefault(),$("body").hasClass("page-sidebar-closed")&&$(".sidebar-search").hasClass("open")===!1?(1===$(".page-sidebar-fixed").size()&&$(".page-sidebar .sidebar-toggler").click(),$(".sidebar-search").addClass("open")):$(".sidebar-search").submit()}),0!==$(".sidebar-search").size()&&($(".sidebar-search .input-group").on("click",function(a){a.stopPropagation()}),$("body").on("click",function(){$(".sidebar-search").hasClass("open")&&$(".sidebar-search").removeClass("open")}))},g=function(){var a=Metronic.getViewPort().height-$(".page-header").outerHeight();return $("body").hasClass("page-footer-fixed")&&(a-=$(".page-footer").outerHeight()),a},h=function(){var a=$(".page-sidebar-menu");return Metronic.destroySlimScroll(a),0===$(".page-sidebar-fixed").size()?void d():void(Metronic.getViewPort().width>=c&&(a.attr("data-height",g()),Metronic.initSlimScroll(a),d()))},i=function(){var a=$("body");a.hasClass("page-sidebar-fixed")&&$(".page-sidebar").on("mouseenter",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").removeClass("page-sidebar-menu-closed")}).on("mouseleave",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").addClass("page-sidebar-menu-closed")})},j=function(){var a=$("body");$.cookie&&"1"===$.cookie("sidebar_closed")&&Metronic.getViewPort().width>=c?($("body").addClass("page-sidebar-closed"),$(".page-sidebar-menu").addClass("page-sidebar-menu-closed")):$.cookie&&$.cookie("sidebar_closed","0"),$("body").on("click",".sidebar-toggler",function(b){var c=$(".page-sidebar"),d=$(".page-sidebar-menu");$(".sidebar-search",c).removeClass("open"),a.hasClass("page-sidebar-closed")?(a.removeClass("page-sidebar-closed"),d.removeClass("page-sidebar-menu-closed"),$.cookie&&$.cookie("sidebar_closed","0")):(a.addClass("page-sidebar-closed"),d.addClass("page-sidebar-menu-closed"),a.hasClass("page-sidebar-fixed")&&d.trigger("mouseleave"),$.cookie&&$.cookie("sidebar_closed","1")),$(window).trigger("resize")})},k=function(){$(".page-header").on("click",'.hor-menu a[data-toggle="tab"]',function(a){a.preventDefault();var b=$(".hor-menu .nav"),c=b.find("li.current");$("li.active",c).removeClass("active"),$(".selected",c).remove();var d=$(this).parents("li").last();d.addClass("current"),d.find("a:first").append('')}),$(".page-header").on("click",".search-form",function(a){$(this).addClass("open"),$(this).find(".form-control").focus(),$(".page-header .search-form .form-control").on("blur",function(a){$(this).closest(".search-form").removeClass("open"),$(this).unbind("blur")})}),$(".page-header").on("keypress",".hor-menu .search-form .form-control",function(a){return 13==a.which?($(this).closest(".search-form").submit(),!1):void 0}),$(".page-header").on("mousedown",".search-form.open .submit",function(a){a.preventDefault(),a.stopPropagation(),$(this).closest(".search-form").submit()}),$('[data-hover="megamenu-dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")}),$(document).on("click",".mega-menu-dropdown .dropdown-menu",function(a){a.stopPropagation()})},l=function(){$("body").on("shown.bs.tab",'a[data-toggle="tab"]',function(){d()})},m=function(){var a=300,b=500;navigator.userAgent.match(/iPhone|iPad|iPod/i)?$(window).bind("touchend touchcancel touchleave",function(c){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}):$(window).scroll(function(){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}),$(".scroll-to-top").click(function(a){return a.preventDefault(),$("html, body").animate({scrollTop:0},b),!1})},n=function(){var a,b=$(".full-height-content");if(a=Metronic.getViewPort().height-$(".page-header").outerHeight(!0)-$(".page-footer").outerHeight(!0)-$(".page-title").outerHeight(!0)-$(".page-bar").outerHeight(!0),b.hasClass("portlet")){var d=b.find(".portlet-body");if(Metronic.getViewPort().width\n
\n
\n \n\n \n
\n
\n
\n \n {{ \'APPLICATION_AGENTS\' | translate }} \n
\n \n
\n
\n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n {{$select.selected.name}}\n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
{{ \'APPLICATION_FULLNAME\' | translate }}{{ \'APPLICATION_USERNAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
{{agent.fullname}}{{agent.name}}{{agent.email}}\n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
\n No agents available\n
\n \n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n
\n \n
\n
\n \n
\n
\n\n'),a.put("app/agent/view/view.account.html",'
\n
\n
\n
\n
\n \n {{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}\n
\n \n
\n\n
\n
\n \n
\n
\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n {{ \'APPLICATION_SELECT_IMAGE\' | translate }} \n
\n
\n \n \n
\n

\n
{{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} jpg, png, jpeg.\n

\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n \n {{ item.file.name }}\n \n \n {{ item.file.size/1024/1024|number:2 }} MB\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n \n
\n
\n \n
\n
\n
\n
\n
\n'),a.put("app/agent/view/view.html",'\n
\n
\n \n\n \n
\n \n
\n \n
\n \n
\n \n\n \n
\n
\n {{agent.fullname}}\n
\n
\n {{agent.role}}\n
\n
\n \n\n \n \n \n
\n \n
\n \n\n \n
\n
\n \n
\n
\n\n'),a.put("app/agent/wizard/wizard.html",'
\n \n \n \n\n \n
\n
\n
\n \n {{ \'APPLICATION_AGENT\' | translate }} WIZARD \n
\n
\n
\n \n \n
\n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_EMAIL\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
\n \n\n \n
\n \n
\n \n \n \n \n
\n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n \n
\n \n\n \n
\n
\n\n \n
\n\n \n \n \n\n \n
\n \n \n {{$item}}\n \n {{transport}}\n \n \n \n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n \n
\n \n\n \n \n \n\n \n \n\n \n\n \n \n \n\n \n
\n \n \n {{$item}}\n \n {{allow}}\n \n \n \n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n \n
\n \n\n \n \n
\n
\n\n \n

{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

\n \n
\n
\n
\n
\n \n
\n'), +d.$broadcast("$spinnerStop")});var h=a.defer();return h.promise}}}]),angular.module("xCallyShuttleApp").controller("MarketCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.market",{url:"/market",templateUrl:"app/market/market.html",controller:"MarketCtrl"})}]),angular.module("xCallyShuttleApp").controller("MotionbarCtrl",["$scope","$stateParams","$cookieStore","settings","Auth",function(a,b,c,d,e){e.loginWithToken(b.token,b.userId,b.name),a.getCurrentUser=e.getCurrentUser,d.layout.pageQuickSidebarOpened=!0}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("motionbar",{url:"/motionbar",template:"
","abstract":!0}).state("motionbar.chat",{url:"/chat?token&userId&name",templateUrl:"app/motionbar/motionbar.chat.html",controller:"MotionbarCtrl"})}]),angular.module("xCallyShuttleApp").controller("SoundListCtrl",["$scope","$http","socket","Modal","$q","FileUploader","$translate","xAlert","$cookieStore","$sce",function(a,b,c,d,e,f,g,h,i,j){a.isCollapsed=!0,a.audioSources={},a["delete"]=d.confirm["delete"](function(a){b["delete"]("/api/uploads/"+a).success(function(a){}).error(function(a){console.log(a)})}),a.getAudioSrc=function(a){return"/api/uploads/"+a},a.updateAudio=function(a,c){var d=e.defer();return b.put("/api/uploads/"+a,c).success(function(a){d.resolve()}).error(function(a){console.log(a.message),d.reject(a.message)}),d.promise},a.$on("$destroy",function(){c.unsyncUpdates("upload")}),a.initList=function(){b.get("/api/uploads").success(function(b){a.sounds=b,a.sounds.forEach(function(a){k(a)}),c.syncUpdates("upload",a.sounds)}).error(function(a){})};var k=function(c){b.get("/api/uploads/stream/"+c.id).success(function(b){a.audioSources[c.id]=b}).error(function(a){console.error(a)})};a.getSecureSrc=function(a){return j.trustAsResourceUrl("data:audio/ogg;base64,"+a)},a.getSecureDownloadSrc=function(a){return j.trustAsResourceUrl("data:application/octet-stream;charset=utf-16le;base64,"+a)};var l=a.uploader=new f({url:"/api/uploads",withCredentials:!0,headers:{Authorization:"Bearer "+i.get("token")}});l.filters.push({name:"customFilter",fn:function(a,b){return this.queue.length<10}}),l.onWhenAddingFileFailed=function(a,b,c){console.info("onWhenAddingFileFailed",a,b,c)},l.onAfterAddingFile=function(a){console.info("onAfterAddingFile",a)},l.onAfterAddingAll=function(a){console.info("onAfterAddingAll",a)},l.onBeforeUploadItem=function(a){console.info("onBeforeUploadItem",a)},l.onProgressItem=function(a,b){console.info("onProgressItem",a,b),a.isUploading=!0},l.onProgressAll=function(a){console.info("onProgressAll",a)},l.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),a.isUploading=!1},l.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),a.responseMessage=b,a.isUploading=!1},l.onCancelItem=function(a,b,c,d){console.info("onCancelItem",a,b,c,d),a.isUploading=!1},l.onCompleteItem=function(a,b,c,d){console.info("onCompleteItem",a,b,c,d),a.isUploading=!1},l.onCompleteAll=function(){console.info("onCompleteAll")},console.info("uploader",l)}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sounds.list",{url:"/list",templateUrl:"app/sound/list/list.html",controller:"SoundListCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sounds",{url:"/sounds",templateUrl:"app/sound/sound.html","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={odbcsByPage:{name:"10",value:10}},a.odbcsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.Odbcs={checked:[]},a.check=function(b,c){c?a.Odbcs.checked=angular.copy(_.pluck(a.displayedOdbcs,"id")):a.Odbcs.checked=[]},a.getOdbcs=function(b){return _.map(a.displayedOdbcs,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("square_odbc"),b.url="/api/square/odbc",h.getPage(b).then(function(c){a.displayedOdbcs=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.odbcsByPage,a.displayedOdbcs.length),d.updateTableConfig(a.conf.odbcsByPage,a.displayedOdbcs.length)}),c.socket.on("square_odbc:save",function(){a.initList(b)}),c.socket.on("square_odbc:remove",function(c){a.Odbcs.checked=_.without(a.Odbcs.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/square/odbc/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/square/odbc",{params:{id:a.Odbcs.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs.list",{url:"/list",templateUrl:"app/square/odbc/list/list.html",controller:"SquareOdbcListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs",{url:"/odbcs",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getOdbc=function(){b.get("/api/square/odbc/"+e.id).success(function(b){delete b.pwd,a.odbc=b}).error(function(a){console.error(a),f.path("/square/odbcs/list")})},a.updateOdbc=function(){var f=angular.copy(a.odbc);b.put("/api/square/odbc/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.odbc=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs.view",{url:"/view/:id",templateUrl:"app/square/odbc/view/view.html",controller:"SquareOdbcViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.square.odbcs.view.settings",{url:"/settings",templateUrl:"app/square/odbc/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={odbc:void 0},a.item={},a.next=function(){b.post("/api/square/odbc/validate/",a.item).success(function(a){a.length?e.show(f.instant("MESSAGE_EXIST_ODBC"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/square/odbc/",a.item).success(function(){d.path("/square/odbcs/list")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbcs.wizard",{url:"/wizard",templateUrl:"app/square/odbc/wizard/wizard.html",controller:"SquareOdbcWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("SquareProjectListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={projectsByPage:{name:"10",value:10}},a.projectsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.Projects={checked:[]},a.check=function(b,c){c?a.Projects.checked=angular.copy(_.pluck(a.displayedProjects,"id")):a.Projects.checked=[]},a.getProjects=function(b){return _.map(a.displayedProjects,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("square_project"),b.url="/api/square/projects",h.getPage(b).then(function(c){a.displayedProjects=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.projectsByPage,a.displayedProjects.length),d.updateTableConfig(a.conf.projectsByPage,a.displayedProjects.length)}),c.socket.on("square_project:save",function(){a.initList(b)}),c.socket.on("square_project:remove",function(c){a.Projects.checked=_.without(a.Projects.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/square/projects/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/square/projects",{params:{id:a.Projects.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.list",{url:"/list",templateUrl:"app/square/project/list/list.html",controller:"SquareProjectListCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects",{url:"/projects",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SquareProjectViewCtrl",["$scope","$http","$stateParams","socket","Auth","Modal","xAlert","$translate","$rootScope",function(a,b,c,d,e,f,g,h,i){a.squareProject={},a.getProject=function(){b.get("/api/square/projects/"+c.id).success(function(b){a.squareProject=b,angular.element(document).ready(function(){window.onerror=function(a,b,c){try{if(null!=a&&-1!=a.indexOf("Script error."));else{var d=new Image;d.src="assets/plugins/mxgraph/images/1x1.png?msg="+encodeURIComponent(a)+"&url="+encodeURIComponent(b)+"&lnum="+encodeURIComponent(c)}}catch(e){}},b.token=e.getToken();var a=new EditorUi(new Editor);a.openString(b.preproduction,b.name,b),a.editor.graphChangeListener=function(a,b){var c=b.properties.rtChange||!1;c||(this.modified=!0)}}),d.syncUpdates("square_project",[b],function(a,c,d){c.id===b.id})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.view",{url:"/view/:id",templateUrl:"app/square/project/view/view.html",controller:"SquareProjectViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",serie:!0,cache:!1,files:["assets/plugins/mxgraph/css/common.css","assets/plugins/mxgraph/css/explorer.css","assets/plugins/mxgraph/styles/grapheditor.css","assets/plugins/mxgraph/styles/custom.css","assets/plugins/mxgraph/js/custom.js","assets/plugins/mxgraph/js/mxClient.js","assets/plugins/mxgraph/js/Editor.js","assets/plugins/mxgraph/js/Graph.js","assets/plugins/mxgraph/js/EditorUi.js","assets/plugins/mxgraph/js/Actions.js","assets/plugins/mxgraph/js/Menus.js","assets/plugins/mxgraph/js/Sidebar.js","assets/plugins/mxgraph/js/Toolbar.js","assets/plugins/mxgraph/js/Dialogs.js"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("SquareProjectWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={project:void 0},a.item={},a.next=function(){b.post("/api/square/projects/validate/",a.item).success(function(a){a.length?e.show(f.instant("MESSAGE_EXIST_PROJECT"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/square/projects/",a.item).success(function(){d.path("/square/projects/list")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.wizard",{url:"/wizard",templateUrl:"app/square/project/wizard/wizard.html",controller:"SquareProjectWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square",{url:"/square",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TeamListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={teamsByPage:{name:"10",value:10}},a.teamsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.teams={checked:[]},a.check=function(b,c){c?a.teams.checked=angular.copy(_.pluck(a.displayedTeams,"id")):a.teams.checked=[]},a.getTeams=function(b){return _.map(a.displayedTeams,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("team"),b.url="/api/teams/",h.getPage(b).then(function(c){a.displayedTeams=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.teamsByPage,a.displayedTeams.length),d.updateTableConfig(a.conf.teamsByPage,a.displayedTeams.length)}),f.socket.on("team:save",function(){a.initList(b)}),f.socket.on("team:remove",function(c){a.teams.checked=_.without(a.teams.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("api/teams/"+a).success(function(){e.show(c.instant("MESSAGE_TEAM_DELETE_SUCCESS"),"success")}).error(function(){e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/teams",{params:{id:a.teams.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams.list",{url:"/list",templateUrl:"app/team/list/list.html",controller:"TeamListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams",{url:"/teams",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TeamViewCtrl",["$scope","$http","$stateParams","$translate","xAlert",function(a,b,c,d,e){a.message="Hello";var f=function(){return{select:function(c){b.post("/api/teams/"+a.team.id+"/agents",{agents:c}).error(function(a){console.error(a)})},deselect:function(c){b.put("/api/teams/"+a.team.id+"/agents",{agents:c}).error(function(a){console.error(a)})}}};a.initView=function(){b.get("/api/teams/"+c.id).success(function(b){a.team=b}).error(function(a){e.show(a.message,"danger")})},a.initAgents=function(){b.get("/api/agents").success(function(d){a.agents=d.rows,b.get("/api/user_has_teams",{params:{TeamId:c.id}}).success(function(b){ComponentsDropdowns.bindTeam(_.pluck(b,"UserId"),_.map(a.agents,function(a){return{id:a.id,name:a.name}}),f)}).error(function(a){console.error(a)})})},a.updateItem=function(){var f=angular.copy(a.team),g=angular.copy(a.team);b.put("/api/teams/"+c.id,f).success(function(){e.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(b){a.team=g,b.errors.forEach(function(a){e.show(a.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams.view",{url:"/view/:id",templateUrl:"app/team/view/view.html",controller:"TeamViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.teams.view.agents",{url:"/agents",templateUrl:"app/team/view/view.agents.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]}])}]}}).state("main.teams.view.settings",{url:"/settings",templateUrl:"app/team/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TeamWizardCtrl",["$scope","$http","$translate","$location","WizardHandler","xAlert",function(a,b,c,d,e,f){a.forms={info:void 0},a.item={},a.createItem=function(){b.post("api/teams",a.item).success(function(){f.show(c.instant("MESSAGE_TEAM_CREATE_SUCCESS"),"success"),d.path("/teams/list")}).error(function(a){a.errors.forEach(function(a){f.show(a.message,"danger")})})},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.teams.wizard",{url:"/wizard",templateUrl:"app/team/wizard/wizard.html",controller:"TeamWizardCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({name:"ui.select",insertBefore:"#ng_load_plugins_before",files:["assets/plugins/ui-select/select.min.css","assets/plugins/ui-select/select.min.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("TriggerListCtrl",["$scope","$http","$translate","$rootScope","stResource","Modal","socket","xAlert",function(a,b,c,d,e,f,g,h){a.conf={TriggersByPage:{name:"10",value:10}},a.TriggersByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.Triggers={checked:[]},a.check=function(b,c){c?a.Triggers.checked=angular.copy(_.pluck(a.displayedTriggers,"id")):a.Triggers.checked=[]},a.getTriggers=function(b){return _.map(a.displayedTriggers,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){g.unsyncUpdates("trigger"),b.url="/api/triggers",e.getPage(b).then(function(c){a.displayedTriggers=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.TriggersByPage,a.displayedTriggers.length),d.updateTableConfig(a.conf.TriggersByPage,a.displayedTriggers.length)}),g.socket.on("trigger:save",function(){a.initList(b)}),g.socket.on("trigger:remove",function(c){a.Triggers.checked=_.without(a.Triggers.checked,c.id),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/triggers/"+a).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/triggers",{params:{id:a.Triggers.checked}}).success(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(c.instant(a.message),"danger")})}),a.updateItem=function(a,d){b.put("api/triggers/"+a,{status:d}).success(function(a){h.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers.list",{url:"/list",templateUrl:"app/trigger/list/list.html",controller:"TriggerListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers",{url:"/triggers",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TriggerViewCtrl",["$scope","$stateParams","$http","$translate","xAlert","triggers",function(a,b,c,d,e,f){a.$triggers=f,a.forms={info:{}},a.fields={},a.properties=f.properties,a.initView=function(){c.get("/api/triggers/"+b.id).success(function(b){a.trigger=b,a.conditionsFilter=JSON.parse(b.conditions),a.actionsFilter=JSON.parse(b.actions),a.fields.conditions=a.$triggers.triggers[b.channel].conditions,a.fields.actions=a.$triggers.triggers[b.channel].actions}).error(function(a){e.show(a.message,"danger")})},a.getProperties=function(){g()};var g=function(){c.get("/api/mail/templates/").success(function(b){a.mailTemplates=b.rows;var c=[];b.rows.forEach(function(a){c.push({name:a.name,value:a.id})}),a.properties.mail.template=c}).error(function(a){e.show(a.message,"danger")})};a.updateTrigger=function(){c.put("/api/triggers/"+a.trigger.id,{name:a.trigger.name,description:a.trigger.description,conditions:angular.toJson(a.conditionsFilter),actions:angular.toJson(a.actionsFilter)}).success(function(){e.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers.view",{url:"/view/:id",templateUrl:"app/trigger/view/view.html",controller:"TriggerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.triggers.view.settings",{url:"/settings",templateUrl:"app/trigger/view/view.settings.html"}).state("main.triggers.view.routes",{url:"/routes",templateUrl:"app/trigger/view/view.routes.html"}).state("main.triggers.view.application",{url:"/application",templateUrl:"app/trigger/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("TriggerWizardCtrl",["$scope","$http","$location","xAlert","triggers","WizardHandler",function(a,b,c,d,e,f){a.$triggers=e,a.tempData={voice:{},mail:{},chat:{},fax:{}},a.item={},a.fields={},a.properties=e.properties,a.forms={general:{}};var g={group:{"boolean":"AND",rules:[],type:"CONDITION",main:!0}},h={group:{rules:[],type:"ACTION"}};a.conditionsFilter=_.clone(g,!0),a.actionsFilter=_.clone(h,!0),a.$watch("item.channel",function(b,c){c&&(a.tempData[c].conditionsFilter=_.clone(a.conditionsFilter,!0),a.tempData[c].actionsFilter=_.clone(a.actionsFilter,!0)),a.conditionsFilter=a.tempData[b].conditionsFilter?a.tempData[b].conditionsFilter:_.clone(g,!0),a.actionsFilter=a.tempData[b].actionsFilter?a.tempData[b].actionsFilter:_.clone(h,!0),a.fields.conditions=a.$triggers.triggers[b].conditions,a.fields.actions=a.$triggers.triggers[b].actions},!0),a.item.channel="voice",a.getProperties=function(){i()};var i=function(){b.get("/api/mail/templates/").success(function(b){a.mailTemplates=b.rows;var c=[];b.rows.forEach(function(a){c.push({name:a.name,value:a.id})}),a.properties.mail.template=c}).error(function(a){d.show(a.message,"danger")})};a.createItem=function(){a.item.conditions=angular.toJson(a.conditionsFilter),a.item.actions=angular.toJson(a.actionsFilter),b.post("/api/triggers",a.item).success(function(){c.path("/triggers/list")}).error(function(a){d.show(a.message,"danger")})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.triggers.wizard",{url:"/wizard",templateUrl:"app/trigger/wizard/wizard.html",controller:"TriggerWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("TrunkListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={trunksByPage:{name:"10",value:10},labels:["name","host","context","description"]},a.trunksByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.trunks={checked:[]},a.check=function(b,c){c?a.trunks.checked=angular.copy(_.pluck(a.displayedTrunks,"id")):a.trunks.checked=[]},a.getTrunks=function(b){return _.map(a.displayedTrunks,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("trunk"),b.url="/api/trunks",console.log(b),h.getPage(b).then(function(c){a.displayedTrunks=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.trunksByPage,a.displayedTrunks.length),d.updateTableConfig(a.conf.trunksByPage,a.displayedTrunks.length)}),f.socket.on("trunk:save",function(){a.initList(b)}),f.socket.on("trunk:remove",function(c){a.trunks.checked=_.without(a.trunks.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/trunks/"+a).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/trunks",{params:{id:a.trunks.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})}),a.$on("$destroy",function(){console.log("trunks destroy")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks.list",{url:"/list",templateUrl:"app/trunk/list/list.html",controller:"TrunkListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks",{url:"/trunks",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TrunkViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location",function(a,b,c,d,e,f,g){a.getTrunk=function(){b.get("/api/trunks/"+e.id).success(function(b){b.nat=""===b.nat?[]:b.nat.split(","),b.allow=""===b.allow?[]:b.allow.split(";"),b.insecure=""===b.insecure?[]:b.insecure.split(","),b.transport=""===b.transport?[]:b.transport.split(","),delete b.secret,a.trunk=b}).error(function(a){console.error(a),g.path("/trunks/list")})},a.updateTrunk=function(){""===a.trunk.password&&delete a.trunk.password;var f=angular.copy(a.trunk);f.nat=f.nat.join(","),f.allow=f.allow.join(";"),f.insecure=f.insecure.join(","),f.transport=f.transport.join(","),b.put("/api/trunks/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),f.nat=f.nat.split(","),f.naallowt=f.allow.split(";"),f.insecure=f.insecure.split(","),f.transport=f.transport.split(","),a.trunk=f})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(d.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks.view",{url:"/view/:id",templateUrl:"app/trunk/view/view.html",controller:"TrunkViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.trunks.view.settings",{url:"/settings",templateUrl:"app/trunk/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TrunkWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.initWizard=function(){a.forms={},a.item={context:"from-voip-provider"}},a.next=function(d){d?b.post("/api/trunks/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_TRUNK"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")}):c.wizard().next()},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/trunks/",a.item).success(function(){d.path("/trunks/list")}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.trunks.wizard",{url:"/wizard",templateUrl:"app/trunk/wizard/wizard.html",controller:"TrunkWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("UpdateListCtrl",["$scope","Update",function(a,b){a.conf={updatesByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.updatesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.initList=function(){b.get(function(b){a.updates=b.all})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.updates.list",{url:"/list",templateUrl:"app/update/list/list.html",controller:"UpdateListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Update",["$resource",function(a){return a("/api/updates/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.updates",{url:"/updates",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("UpdateViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$cookieStore","socket","FileUploader","Auth",function(a,b,c,d,e,f,g,h,i){a.Auth=i,a.updatePassword=function(){var f,g;i.isAdmin()?(f="/api/updates/password/"+e.id+"/reset",g={newPassword:a.update.newPwd}):(f="/api/updates/password/",g={oldPassword:a.update.currentPwd,newPassword:a.update.newPwd}),b.put(f,g).success(function(a){c.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){c.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})};var j=a.uploader=new h({url:"api/users/"+e.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+f.get("token")}});j.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),j.onSuccessItem=function(b,e,f,g){a.update.userpic=e.userpic,a.update.id===i.getCurrentUser().id&&(i.getCurrentUser().userpic=e.userpic),c.show(d.instant("MESSAGE_WELL_DONE"),"success")},j.onErrorItem=function(a,b,e,f){c.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},j.onCompleteAll=function(){j.clearQueue()},a.initView=function(){b.get("/api/updates/"+e.id).success(function(b){a.update=b,a.update.transport=a.update.transport?a.update.transport.split(","):[],a.update.allow=a.update.allow?a.update.allow.split(";"):[]}).error(function(a){c.show(a.message,"danger")})},a.updateItem=function(){var f=angular.copy(a.update),g=angular.copy(a.update);delete f.password,delete f.md5secret,f.transport=f.transport.join(","),f.allow=f.allow.join(";"),b.put("/api/updates/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(b){a.update=g,b.errors.forEach(function(a){c.show(a.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.updates.view",{url:"/view/:id",templateUrl:"app/update/view/view.html",controller:"UpdateViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.updates.view.account",{url:"/account",templateUrl:"app/update/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("UpdateWizardCtrl",["$scope","$http","xAlert","$location","WizardHandler","$translate",function(a,b,c,d,e,f){a.forms={info:void 0,voice:void 0},a.item={role:"update",allow:["alaw","ulaw","gsm"],transport:["udp"],context:"from-sip"},a.next=function(){b.post("/api/updates/validate/",a.item).success(function(a){console.log(a),a.length?c.show(f.instant("MESSAGE_EXIST_INTERNAL"),"danger"):e.wizard().next(); +}).error(function(a){c.show(f.instant(a.message),"danger")})},a.getFirstFreeInternal=function(){b.get("/api/settings/internal").success(function(b){a.item.internal=b.value}).error(function(a){c.show(f.instant(a.message),"danger")})},a.exitValidation=function(a){return a},a.createItem=function(){a.item.transport&&(a.item.transport=a.item.transport.join(",")),a.item.allow&&(a.item.allow=a.item.allow.join(";")),b.post("/api/updates/",a.item).success(function(){d.path("/updates/list")}).error(function(a){a.errors.forEach(function(a){c.show(a.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.updates.wizard",{url:"/wizard",templateUrl:"app/update/wizard/wizard.html",controller:"UpdateWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("UserListCtrl",["$scope","$http","xAlert","$rootScope","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={usersByPage:{name:"10",value:10}},a.usersByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.users={checked:[]},a.check=function(b,c){c?a.users.checked=angular.copy(_.pluck(a.displayedUsers,"id")):a.users.checked=[]},a.getUsers=function(b){return _.map(a.displayedUsers,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/users/"+a).success(function(){c.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){a.errors.forEach(function(b){c.show(a.message+": "+b.message,"danger")})})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/users",{params:{id:a.users.checked}}).success(function(){c.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){a.errors.forEach(function(b){c.show(a.message+": "+b.message,"danger")})})}),a.initList=function(b){f.unsyncUpdates("user"),b.url="/api/users/",h.getPage(b).then(function(c){a.displayedUsers=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.usersByPage,a.displayedUsers.length),d.updateTableConfig(a.conf.usersByPage,a.displayedUsers.length)}),f.socket.on("user:save",function(){a.initList(b)}),f.socket.on("user:remove",function(c){a.users.checked=_.without(a.users.checked,c.id),a.initList(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users.list",{url:"/list",templateUrl:"app/user/list/list.html",controller:"UserListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users",{url:"/users",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("UserViewCtrl",["$scope","$http","$stateParams","$translate","FileUploader","$cookieStore","Auth","xAlert",function(a,b,c,d,e,f,g,h){a.Auth=g,a.updatePassword=function(){var e,f;g.isAdmin()?(e="/api/users/password/"+c.id+"/reset",f={newPassword:a.user.newPwd}):(e="/api/users/password/",f={oldPassword:a.user.currentPwd,newPassword:a.user.newPwd}),b.put(e,f).success(function(a){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})};var i=a.uploader=new e({url:"api/users/"+c.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+f.get("token")}});i.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),i.onSuccessItem=function(b,c,e,f){a.user.userpic=c.userpic,a.user.id===g.getCurrentUser().id&&(g.getCurrentUser().userpic=c.userpic),h.show(d.instant("MESSAGE_WELL_DONE"),"success")},i.onErrorItem=function(a,b,c,e){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},i.onCompleteAll=function(){i.clearQueue()},a.initView=function(){b.get("/api/users/"+c.id).success(function(b){a.user=b,a.user.transport=a.user.transport?a.user.transport.split(","):[],a.user.allow=a.user.allow?a.user.allow.split(";"):[]}).error(function(a){a.errors.forEach(function(b){h.show(a.message+": "+b.message,"danger")})})},a.updateItem=function(){var e=angular.copy(a.user),f=angular.copy(a.user);delete e.password,delete e.md5secret,e.transport=e.transport.join(","),e.allow=e.allow.join(";"),b.put("/api/users/"+c.id,e).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(b){a.user=f,b.errors.forEach(function(a){h.show(b.message+": "+a.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users.view",{url:"/view/:id",templateUrl:"app/user/view/view.html",controller:"UserViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.users.view.account",{url:"/account",templateUrl:"app/user/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css","assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("UserWizardCtrl",["$scope","$http","$location","WizardHandler","xAlert","$translate",function(a,b,c,d,e,f){a.forms={info:void 0,voice:void 0},a.item={role:"user",host:"dynamic",context:"from-sip"},a.next=function(){d.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/users/",a.item).success(function(){e.show(f.instant("MESSAGE_WELL_DONE"),"success"),c.path("/users/list")}).error(function(a){a.errors.forEach(function(b){e.show(a.message+": "+b.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.users.wizard",{url:"/wizard",templateUrl:"app/user/wizard/wizard.html",controller:"UserWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VariableListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VariableListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource","$uibModal","$log",function(a,b,c,d,e,f,g,h,i,j){a.conf={variablesByPage:{name:"10",value:10}},a.variablesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.Variables={checked:[]},a.check=function(b,c){c?a.Variables.checked=angular.copy(_.pluck(a.displayedVariables,"id")):a.Variables.checked=[]},a.getVariables=function(b){return _.map(a.displayedVariables,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("variable"),b.url="/api/variables",h.getPage(b).then(function(c){a.displayedVariables=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.variablesByPage,a.displayedVariables.length),d.updateTableConfig(a.conf.variablesByPage,a.displayedVariables.length)}),c.socket.on("variable:save",function(){a.initList(b)}),c.socket.on("variable:remove",function(c){a.Variables.checked=_.without(a.Variables.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/variables/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/variables",{params:{id:a.Variables.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.create=function(){var a=i.open({animation:!0,templateUrl:"app/variable/list/create.modal.html",controller:"VariableListCreateModalCtrl"});a.result.then(function(a){b.post("/api/variables",a).then(function(a){f.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.data.message,"danger")})},function(){j.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.variables.list",{url:"/list",templateUrl:"app/variable/list/list.html",controller:"VariableListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.variables",{url:"/variables",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VariableViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getVariable=function(){b.get("/api/variables/"+e.id).success(function(b){a.variable=b}).error(function(a){console.error(a),f.path("/variables/list")})},a.updateVariable=function(){var f=angular.copy(a.variable);b.put("/api/variables/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.variable=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.variables.view",{url:"/view/:id",templateUrl:"app/variable/view/view.html",controller:"VariableViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.variables.view.settings",{url:"/settings",templateUrl:"app/variable/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts",{url:"/contexts",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceContextListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={contextsByPage:{name:"10",value:10}},a.contextsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.voiceContexts={checked:[]},a.check=function(b,c){c?a.voiceContexts.checked=angular.copy(_.pluck(a.displayedVoiceContexts,"id")):a.voiceContexts.checked=[]},a.getVoiceContexts=function(b){return _.map(a.displayedVoiceContexts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_context"),b.url="/api/voice/contexts",h.getPage(b).then(function(c){a.displayedVoiceContexts=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.contextsByPage,a.displayedVoiceContexts.length),d.updateTableConfig(a.conf.contextsByPage,a.displayedVoiceContexts.length)}),c.socket.on("voice_context:save",function(){a.initList(b)}),c.socket.on("voice_context:remove",function(c){a.voiceContexts.checked=_.without(a.voiceContexts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/contexts/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/contexts",{params:{id:a.voiceContexts.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts.list",{url:"/list",templateUrl:"app/voice/context/list/list.html",controller:"VoiceContextListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceContextViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getContext=function(){b.get("/api/voice/contexts/"+e.id).success(function(b){a.context=b}).error(function(a){console.error(a),f.path("/voice/contexts/list")})},a.updateVoiceContext=function(){var f=angular.copy(a.context);b.put("/api/voice/contexts/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.context=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts.view",{url:"/view/:id",templateUrl:"app/voice/context/view/view.html",controller:"VoiceContextViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.contexts.view.settings",{url:"/settings",templateUrl:"app/voice/context/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("VoiceContextWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","$translate",function(a,b,c,d,e,f){a.forms={context:void 0},a.item={},a.next=function(){b.post("/api/voice/contexts/validate/",a.item).success(function(a){console.log(a),a.length?e.show(f.instant("MESSAGE_EXIST_CONTEXT"),"danger"):c.wizard().next()}).error(function(a){e.show(f.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/contexts/",a.item).success(function(){d.path("/voice/contexts/list")}).error(function(a){e.show(f.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.contexts.wizard",{url:"/wizard",templateUrl:"app/voice/context/wizard/wizard.html",controller:"VoiceContextWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceMohListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={mohsByPage:{name:"10",value:10},labels:["name","directory","sort","description"]},a.mohsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.mohs={checked:[]},a.check=function(b,c){c?a.mohs.checked=angular.copy(_.pluck(a.displayedMohs,"id")):a.mohs.checked=[]},a.getMohs=function(b){return _.map(a.displayedMohs,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("voice_musiconhold"),b.url="/api/voice/musiconholds",h.getPage(b).then(function(c){a.displayedMohs=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.mohsByPage,a.displayedMohs.length),d.updateTableConfig(a.conf.mohsByPage,a.displayedMohs.length)}),f.socket.on("voice_musiconhold:save",function(){a.initList(b)}),f.socket.on("voice_musiconhold:remove",function(c){a.mohs.checked=_.without(a.mohs.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/musiconholds/"+a).success(function(){e.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){e.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/musiconholds",{params:{id:a.mohs.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs.list",{url:"/list",templateUrl:"app/voice/moh/list/list.html",controller:"VoiceMohListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs",{url:"/mohs",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceMohViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","Modal","$sce","$location",function(a,b,c,d,e,f,g,h,i){a.$translate=d,a.audioSources={},a.sortOptions=[{value:"random",name:"APPLICATION_RANDOM"},{value:"alpha",name:"APPLICATION_ALPHABETICAL"}],a.getMoh=function(){b.get("/api/voice/musiconholds/"+e.id).success(function(b){delete b.stamp,a.moh=b}).error(function(a){console.error(a),i.path("/voice/mohs/list")})},a.updateVoiceMoh=function(){console.log("update");var f=angular.copy(a.moh);b.put("/api/voice/musiconholds/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.voiceMoh=f})},a.addMohs=function(){b.post("/api/voice/musiconholds/"+e.id+"/files",a.item).success(function(){i.path("voice/mohs/view/"+e.id+"/audios")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getAudioFiles=function(){b.get("/api/voice/musiconholds/"+e.id+"/files").success(function(b){a.audioFiles=b.files,a.mohPath=b.path,a.audioFiles.forEach(function(a){j(a)})}).error(function(a){console.error(a)})},a.getSecureSrc=function(a){return h.trustAsResourceUrl(a)};var j=function(c){b.get("/api/voice/musiconholds/stream",{params:{path:encodeURI(a.mohPath+"/"+c)}}).success(function(b){a.audioSources[c]="data:audio/ogg;base64,"+b}).error(function(a){console.error(a)})};a.getSounds=function(){a.item={sounds:[]},b.get("/api/uploads").success(function(b){a.soundList=b}).error(function(a){console.error(a)})},a.deleteItem=g.confirm["delete"](function(f){b["delete"]("/api/voice/musiconholds/"+e.id+"/files",{params:{filename:f}}).success(function(){_.remove(a.audioFiles,function(a){return a===f}),c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){c.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs.view",{url:"/view/:id",templateUrl:"app/voice/moh/view/view.html",controller:"VoiceMohViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.mohs.view.settings",{url:"/settings",templateUrl:"app/voice/moh/view/view.settings.html"}).state("main.voice.mohs.view.audios",{url:"/audios",templateUrl:"app/voice/moh/view/view.audios.html",cache:!1}).state("main.voice.mohs.view.add",{url:"/add",templateUrl:"app/voice/moh/view/view.addFiles.html",cache:!1})}]),angular.module("xCallyShuttleApp").controller("VoiceMohWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.$translate=g,a.initWizard=function(){a.forms={},a.item={sort:"alpha"}},a.next=function(){b.post("/api/voice/musiconholds/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_MOH"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/musiconholds/",a.item).success(function(a){d.path("/voice/mohs/view/"+a.id+"/audios")}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.mohs.wizard",{url:"/wizard",templateUrl:"app/voice/moh/wizard/wizard.html",controller:"VoiceMohWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueListCtrl",["$scope","$http","socket","$translate","$rootScope","Modal","xAlert","stResource",function(a,b,c,d,e,f,g,h){a.conf={voiceQueuesByPage:{name:"10",value:10},labels:["name","description","strategy","context"]},a.voiceQueuesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.queues={checked:[]},a.check=function(b,c){c?a.queues.checked=angular.copy(_.pluck(a.displayedQueues,"name")):a.queues.checked=[]},a.getQueues=function(b){return _.map(a.displayedQueues,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_queue"),b.url="/api/voice/queues",h.getPage(b).then(function(c){a.displayedQueues=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.voiceQueuesByPage,a.displayedQueues.length),e.updateTableConfig(a.conf.voiceQueuesByPage,a.displayedQueues.length)}),c.socket.on("voice_queue:save",function(){a.initList(b)}),c.socket.on("voice_queue:remove",function(c){console.log("remove"),a.queues.checked=_.without(a.queues.checked,c.name),a.initList(b)})},a.deleteItem=f.confirm["delete"](function(a){b["delete"]("/api/voice/queues/"+a).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(a.message,"danger")})}),a.deleteItems=f.confirm["delete"](function(){b["delete"]("/api/voice/queues",{params:{name:a.queues.checked}}).success(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){g.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues.list",{url:"/list",templateUrl:"app/voice/queue/list/list.html",controller:"VoiceQueueListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues",{url:"/queues",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location",function(a,b,c,d,e,f,g){a.binaryChoices=[{name:"Yes",value:1},{name:"No",value:0}],a.monitorFormats=[{name:"wav",value:"wav"},{name:"gsm",value:"gsm"},{name:"Inactive",value:""}],a.queueAnnounces=[{display_name:"Default",value:null},{display_name:"Disabled",value:""}];var h=function(){return{select:function(c){b.post("/api/voice/queues/"+a.queue.name+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})},deselect:function(c){b.put("/api/voice/queues/"+a.queue.name+"/agents",{agents:c}).success(function(){a.getTeams()}).error(function(a){console.error(a)})}}};a.getQueue=function(){b.get("/api/voice/queues/"+e.id).success(function(b){b.joinempty=""===b.joinempty?[]:b.joinempty.split(","),b.leavewhenempty=""===b.leavewhenempty?[]:b.leavewhenempty.split(","),b.periodic_announce=""===b.periodic_announce?[]:b.periodic_announce.split(","),a.queue=b}).error(function(a){g.path("/voice/queues/list")})},a.updateVoiceQueue=function(){var f=angular.copy(a.queue);f.joinempty=f.joinempty.join(","),f.leavewhenempty=f.leavewhenempty.join(","),f.periodic_announce=f.periodic_announce.join(","),f.context||(f.context=null),b.put("/api/voice/queues/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),f.joinempty=f.joinempty.split(","),f.leavewhenempty=f.leavewhenempty.split(","),f.periodic_announce=f.periodic_announce.split(","),a.queue=f})},a.getTeams=function(){b.get("/api/teams").success(function(c){a.teams=c.rows,b({url:"/api/voice/user_has_queues",method:"GET",params:{queue:a.queue.name}}).success(function(b){ComponentsDropdowns.bindQueue(a.teams,_.pluck(b,"UserId"),h)})}).error(function(a){console.error(a)})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getMohs=function(){b.get("/api/voice/musiconholds").success(function(b){a.voiceMohs=b.rows,f.syncUpdates("voice_musiconhold",a.voiceMohs)}).error(function(a){c.show(a.message,"danger")})},a.getSounds=function(){b.get("/api/uploads").success(function(b){a.queueAnnounces=a.queueAnnounces.concat(b),a.periodicAnnounces=angular.copy(b),b.unshift({display_name:"None",converted_path:null,value:""}),a.sounds=b,f.syncUpdates("upload",a.sounds)}).error(function(a){console.error(a)})},a.returnAnnouncePath=function(a){return console.log("func"),a.converted_path?a.converted_path+"/"+a.save_name:null===a.value?null:a.value}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues.view",{url:"/view/:id",templateUrl:"app/voice/queue/view/view.html",controller:"VoiceQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.queues.view.settings",{url:"/settings",templateUrl:"app/voice/queue/view/view.settings.html"}).state("main.voice.queues.view.agents",{url:"/agents",templateUrl:"app/voice/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={queue:void 0},a.item={},a.next=function(){b.post("/api/voice/queues/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_QUEUE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/queues/",a.item).success(function(){d.path("/voice/queues/list")}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.queues.wizard",{url:"/wizard",templateUrl:"app/voice/queue/wizard/wizard.html",controller:"VoiceQueueWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.realtime",{url:"/realtime",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentCtrl",["$scope","$http","$log","$uibModal","$translate","socket","xAlert",function(a,b,c,d,e,f,g){a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.$on("$destroy",function(){f.unsyncUpdates("user_has_voice_queue")}),a.groups=[],a.pauses=["pausa1","pausa2","pausa3"],a.pause=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/agent/pause.modal.html",controller:"VoiceRealtimeViewAgentPauseModalCtrl",resolve:{items:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){b.post("/api/ami",a).then(function(a){console.log(a),g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.log(a),g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.add=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/agent/queue.modal.add.html",controller:"VoiceRealtimeViewAgentQueueModalCtrl",resolve:{pauses:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){console.log(a),b.post("/api/voice/user_has_queues",a).then(function(){a.login?b.post("/api/ami",a).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.remove=function(a,f){var h=d.open({animation:!0,size:a,templateUrl:"app/voice/realtime/view/agent/queue.modal.remove.html",controller:"VoiceRealtimeViewAgentQueueModalCtrl",resolve:{pauses:function(){return null},data:function(){return f}}});h.result.then(function(a){_.isArray(a)?a.forEach(function(a){b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})}):b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.initAgents=function(){b.get("/api/voice/user_has_queues").success(function(b){a.agents=b,a.groups=_.map(_.groupBy(a.agents,"membername"),function(a,b){return{membername:b,queues:a}}),f.socket.on("user_has_voice_queue:save",function(b){var c=_.find(a.groups,{membername:b.membername}),d=a.groups.indexOf(c);if(c){var e=_.find(c.queues,{queue:b.queue});e?_.merge(e,b):a.groups[d].queues.push(b)}else{var f={membername:b.membername,queues:[b]};a.groups.unshift(f)}}),f.socket.on("user_has_voice_queue:remove",function(b){var c=_.find(a.groups,{membername:b.membername});_.remove(c.queues,{queue:b.queue}),c.queues.length||_.remove(a.groups,{membername:b.membername})}),f.socket.on("report_agent:save",function(b){var c=_.find(a.groups,{membername:b.membername}),d=a.groups.indexOf(c);if(c){var e=_.find(c.queues,{queue:b.queue});e?_.merge(e,b):a.groups[d].queues.push(b)}else{var f={membername:b.membername,queues:[b]};a.groups.unshift(f)}})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentPauseModalCtrl",["$scope","$uibModalInstance","items","data",function(a,b,c,d){a.items=c,a.data=d,a.selected={item:a.items[0],queue:_.isArray(d)?a.data[0].queue:a.data.queue,membername:_.isArray(d)?a.data[0].membername:a.data.membername,"interface":_.isArray(d)?a.data[0]["interface"]:a.data["interface"]},a.ok=function(c){var e={action:"QueuePause","interface":a.selected["interface"],paused:c,reason:a.selected.item};_.isArray(d)||(e.queue=a.selected.queue),b.close(e)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","pauses","data",function(a,b,c,d,e){a.initAdd=function(){a.data=e,a.pauses=d,a.selected={membername:a.data[0].membername,"interface":a.data[0]["interface"],penalty:0,paused:!1,reason:a.pauses[0],UserId:a.data[0].UserId},c.get("/api/voice/queues",{params:{page:0,per_page:100}}).success(function(b){a.queues=_.reject(b.rows,function(b){return _.find(a.data,{queue:b.name})?!0:!1}),a.selected.queue=a.queues[0]?a.queues[0].name:null,console.log(a.queues)}).error(function(a){console.error(a)})},a.initRemove=function(){a.data=e,_.isArray(e)?a.selected={membername:a.data[0].membername,"interface":a.data[0]["interface"],logout:!1,UserId:a.data[0].UserId}:a.selected={membername:a.data.membername,"interface":a.data["interface"],queue:a.data.queue,logout:!1,UserId:a.data.UserId}},a.okAdd=function(){console.log(a.selected);var c={action:"QueueAdd",logged:a.data[0].logged,loggedAt:a.data[0].loggedAt,queue:a.selected.queue,membername:a.selected.membername,"interface":a.selected["interface"],penalty:a.selected.penalty,paused:a.selected.paused,UserId:a.selected.UserId};c.paused&&(c.reason=a.selected.reason), +b.close(c)},a.okRemove=function(){var c;_.isArray(a.data)?(c=[],a.data.forEach(function(b){c.push({action:"QueueRemove",queue:b.queue,"interface":b["interface"],logout:a.selected.logout,UserId:b.UserId})})):c={action:"QueueRemove",queue:a.selected.queue,logout:a.selected.logout,"interface":a.selected["interface"],UserId:a.selected.UserId},b.close(c)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentReportCtrl",["$scope","$http","socket",function(a,b,c){a.$on("$destroy",function(){c.unsyncUpdates("report_agent")}),a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.initReport=function(){a.agents=[],b.get("/api/report/agents").success(function(b){a.agents=b,c.syncUpdates("report_agent",a.agents)}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").filter("VoiceRealtimeViewAgentReportFilter",function(){return function(a){return new Date(1970,0,1).setSeconds(a)}}),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueReportCtrl",["$scope","$http","socket",function(a,b,c){a.$on("$destroy",function(){c.unsyncUpdates("report_queue")}),a.conf={queuesByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.queuesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.initReport=function(){a.queues=[],b.get("/api/report/queues").success(function(b){console.log(b),a.queues=b,c.syncUpdates("report_queue",a.queues)}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").filter("VoiceRealtimeViewQueueReportFilter",function(){return function(a){return new Date(1970,0,1).setSeconds(a)}}),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueuePauseModalCtrl",["$scope","$uibModalInstance","items","data",function(a,b,c,d){a.items=c,a.data=d,console.log(d),a.selected={item:a.items[0],queue:_.isArray(d)?a.data[0].queue:a.data.queue,membername:_.isArray(d)?a.data[0].membername:a.data.membername,"interface":_.isArray(d)?a.data[0]["interface"]:a.data["interface"]},a.ok=function(c,e){var f;_.isArray(d)?(f=[],d.forEach(function(b){f.push({action:"QueuePause",queue:b.queue,membername:b.membername,"interface":b["interface"],paused:c,reason:a.selected.item})})):f={action:"QueuePause",queue:a.selected.queue,membername:a.selected.membername,"interface":a.selected["interface"],paused:c,reason:a.selected.item},b.close(f)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueCtrl",["$scope","$http","$log","$uibModal","$translate","socket","xAlert",function(a,b,c,d,e,f,g){a.conf={agentsByPage:{name:"10",value:10},labels:["fullname","name","email"]},a.agentsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.$on("$destroy",function(){f.unsyncUpdates("user_has_voice_queue")}),a.groups=[],a.pauses=["pausa1","pausa2","pausa3"],a.pause=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/queue/pause.modal.html",controller:"VoiceRealtimeViewQueuePauseModalCtrl",resolve:{items:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){_.isArray(a)?a.forEach(function(a){b.post("/api/ami",a).then(function(a){console.log(a),g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.log(a),g.show(a.data.message,"danger")})}):b.post("/api/ami",a).then(function(a){console.log(a),g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.log(a),g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.add=function(f,h){var i=d.open({animation:!0,size:f,templateUrl:"app/voice/realtime/view/queue/queue.modal.add.html",controller:"VoiceRealtimeViewQueueQueueModalCtrl",resolve:{pauses:function(){return a.pauses},data:function(){return h}}});i.result.then(function(a){console.log("action",a),b.post("/api/voice/user_has_queues",a).then(function(){a.login?b.post("/api/ami",a).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")}),console.log(a)},function(){c.info("Modal dismissed at: "+new Date)})},a.remove=function(a,f){var h=d.open({animation:!0,size:a,templateUrl:"app/voice/realtime/view/queue/queue.modal.remove.html",controller:"VoiceRealtimeViewQueueQueueModalCtrl",resolve:{pauses:function(){return null},data:function(){return f}}});h.result.then(function(a){_.isArray(a)?a.forEach(function(a){b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})}):b.post("/api/ami",a).then(function(){a.logout?b.put("/api/voice/queues/"+a.queue+"/agents",{agents:[a.UserId]}).then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")}):g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.data.message,"danger")})},function(){c.info("Modal dismissed at: "+new Date)})},a.initQueues=function(){b.get("/api/voice/user_has_queues").success(function(b){a.queues=b,a.groups=_.map(_.groupBy(a.queues,"queue"),function(a,b){return{queue:b,agents:a}}),console.log("ok"),f.socket.on("user_has_voice_queue:save",function(b){console.log("item",b);var c=_.find(a.groups,{queue:b.queue}),d=a.groups.indexOf(c);if(c){var e=_.find(c.agents,{membername:b.membername});e?_.merge(e,b):a.groups[d].agents.push(b)}else{var f={queue:b.queue,agents:[b]};a.groups.unshift(f)}}),f.socket.on("user_has_voice_queue:remove",function(b){var c=_.find(a.groups,{queue:b.queue});_.remove(c.agents,{membername:b.membername}),c.agents.length||_.remove(a.groups,{queue:b.queue})}),f.socket.on("report_agent:save",function(b){var c=_.find(a.groups,{queue:b.queue}),d=a.groups.indexOf(c);if(c){var e=_.find(c.agents,{membername:b.membername});e?_.merge(e,b):a.groups[d].agents.push(b)}else{var f={queue:b.queue,agents:[b]};a.groups.unshift(f)}})}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueQueueModalCtrl",["$scope","$uibModalInstance","$http","pauses","data",function(a,b,c,d,e){a.initAdd=function(){a.data=e,a.pauses=d,a.selected={penalty:0,paused:!1,reason:a.pauses[0]},a.$watch("selected.agent",function(b){b&&(a.selected.membername=b.name,a.selected["interface"]="SIP/"+b.name,a.selected.UserId=b.id)}),c.get("/api/agents",{params:{page:0,per_page:500}}).success(function(b){a.agents=_.reject(b.rows,function(b){return _.find(a.data,{membername:b.name})?!0:!1}),a.selected.queue=a.data[0]?a.data[0].queue:null}).error(function(a){console.error(a)})},a.initRemove=function(){a.data=e,console.log(e),_.isArray(e)?a.selected={queue:a.data[0].queue,logout:!1}:a.selected={membername:a.data.membername,"interface":a.data["interface"],queue:a.data.queue,logout:!1,UserId:a.data.UserId}},a.okAdd=function(){var c={action:"QueueAdd",queue:a.selected.queue,membername:a.selected.membername,"interface":a.selected["interface"],penalty:a.selected.penalty,paused:a.selected.paused,UserId:a.selected.UserId};c.paused&&(c.reason=a.selected.reason),b.close(c)},a.okRemove=function(){var c;_.isArray(a.data)?(c=[],a.data.forEach(function(b){c.push({action:"QueueRemove",queue:b.queue,"interface":b["interface"],logout:a.selected.logout,UserId:b.UserId})})):c={action:"QueueRemove",queue:a.selected.queue,logout:a.selected.logout,"interface":a.selected["interface"],UserId:a.selected.UserId},b.close(c)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewCtrl",["$scope",function(a){a.agents=[{name:"View1",link:"main.voice.realtime.view.agents"},{name:"View2",link:"main.voice.realtime.view.areports"}],a.queues=[{name:"View1",link:"main.voice.realtime.view.queues"},{name:"View2",link:"main.voice.realtime.view.qreports"}]}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.realtime.view",{url:"/view",templateUrl:"app/voice/realtime/view/view.html",controller:"VoiceRealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.realtime.view.queues",{url:"/queues",controller:"VoiceRealtimeViewQueueCtrl",templateUrl:"app/voice/realtime/view/queue/queue.html"}).state("main.voice.realtime.view.qreports",{url:"/qreport/:search",controller:"VoiceRealtimeViewQueueReportCtrl",templateUrl:"app/voice/realtime/view/qreport/report.html"}).state("main.voice.realtime.view.agents",{url:"/agents",controller:"VoiceRealtimeViewAgentCtrl",templateUrl:"app/voice/realtime/view/agent/agent.html"}).state("main.voice.realtime.view.areports",{url:"/areport",controller:"VoiceRealtimeViewAgentReportCtrl",templateUrl:"app/voice/realtime/view/areport/report.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound",{url:"/inbound",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={routesByPage:{name:"10",value:10}},a.routesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.routes={checked:[]},a.check=function(b){b?a.routes.checked=angular.copy(_.pluck(a.displayedRoutes,"id")):a.routes.checked=[]},a.getRoutes=function(b){return _.map(a.displayedRoutes,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_extension"),b.url="/api/voice/extensions/route/inbound",h.getPage(b).then(function(c){a.displayedRoutes=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.routesByPage,a.displayedRoutes.length),e.updateTableConfig(a.conf.routesByPage,a.displayedRoutes.length)}),c.socket.on("voice_extension:save",function(c){"inbound"===c.type&&a.initList(b)}),c.socket.on("voice_extension:remove",function(c){"inbound"===c.type&&(a.routes.checked=_.without(a.routes.checked,c.id),a.initList(b))})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/extensions/"+a).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/extensions/",{params:{id:a.routes.checked}}).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound.list",{url:"/list",templateUrl:"app/voice/route/inbound/list/list.html",controller:"VoiceRouteInboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundViewCtrl",["$scope","$http","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=c,a.$application=j.application,a.$interval=k.interval,a.initApplication=function(){a.forms={settings:void 0,interval:void 0},a.application={VoiceExtensionId:d.id,type:"inbound"},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toLowerCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toLowerCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from.toLowerCase(),a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to.toLowerCase())):e="*",b+","+c+","+d+","+e},a.$watch("main.app",function(c){if(c){var e,f;switch(d.appId||(a.application={VoiceExtensionId:d.id,type:"inbound",interval:a.application.interval}),c){case"Queue":e="api/voice/queues",f="/api/uploads";break;case"Playback":e="/api/uploads";break;case"AGI":e="/api/square/projects";break;case"Goto":e="/api/voice/contexts";break;default:e=null,f=null}e&&b.get(e).success(function(b){a.items="Playback"!==c?b.rows:b}),f&&b.get(f).success(function(b){a.items2=b})}},!0),a.getIntervals=function(){b.get("/api/intervals").success(function(b){a.Intervals=b.rows,e.syncUpdates("interval",a.Intervals)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.getRouteApplications=function(){b.get("/api/voice/extensions/"+d.id+"/applications").success(function(b){a.routeApplications=b,e.unsyncUpdates("voice_extension"),e.socket.on("voice_extension:remove",function(b){b.where.appGroup&&_.remove(a.routeApplications,function(a){return b.where.appGroup==a.appGroup})}),e.socket.on("voice_extension:save",function(b){if(b.VoiceExtensionId===d.id&&b.isApp){var c=_.find(a.routeApplications,{id:b.id});c||a.routeApplications.push(b)}})})},a.sortableOptions={stop:function(){b.post("api/voice/extensions/"+d.id+"/applications",{applications:_.pluck(a.routeApplications,"appGroup")}).success(function(b){a.getRouteApplications()}).error(function(a){console.error(a)})},"ui-floating":!0},a.getRoute=function(){b.get("/api/voice/extensions/"+d.id).success(function(b){a.route=b,e.socket.on("voice_extension:update",function(b){b.id==d.id&&(a.route=b)})}).error(function(a){f.path("/voice/routes/inbound/list")})},a.getApplication=function(){b.get("/api/voice/extensions/applications/"+d.appId).success(function(b){var c=_.filter(a.$application.applications,function(a){return a.value===b.app});if(c.length>0&&!b.customApp?a.main.app=b.app:a.main.app="custom",a.application=b,a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),"Queue"===b.app&&(a.application.app_options=b.app_options?b.app_options.split(","):[]),a.interval.intType=b.IntervalId?"list":"*,*,*,*"===b.interval?"always":"custom",a.interval.IntervalId=b.IntervalId,!b.IntervalId){var d,e=b.interval?b.interval.split(","):["*","*","*","*"];e.forEach(function(b,c){switch(c){case 0:"*"!==b?(d=b.split("-"),a.interval.t_from=moment(d[0],"HH:mm"),a.interval.t_to=moment(d[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==b?(d=b.split("-"),a.interval.wd_from=_.capitalize(d[0]),a.interval.wd_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==b?(d=b.split("-"),a.interval.md_from=d[0],a.interval.md_to=d[1]?d[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==b?(d=b.split("-"),a.interval.m_from=_.capitalize(d[0]),a.interval.m_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}).error(function(a){f.path("/voice/routes/inbound/view/"+d.id+"/applications")})},a.updateRoute=function(){var e=angular.copy(a.route);b.put("/api/voice/extensions/"+d.id,e).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){i.show(c.instant(b.message),"danger"),a.route=e})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,e.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.createItem=function(){switch(a.application.app=a.main.app,a.application.exten=a.route.exten,a.application.context=a.route.context,a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.post("/api/voice/extensions/",a.application).success(function(){f.path("/voice/routes/inbound/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.updateItem=function(){switch(a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.put("/api/voice/extensions/applications/"+d.appId,a.application).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),f.path("/voice/routes/inbound/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.deleteItem=h.confirm["delete"](function(d){b["delete"]("/api/voice/extensions/"+d).success(function(){a.getRouteApplications(),i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){i.show(c.instant(a.message),"danger")})}),a.goNext=function(){g.wizard().next()},a.previous=function(){g.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){e.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound.view",{url:"/view/:id",templateUrl:"app/voice/route/inbound/view/view.html",controller:"VoiceRouteInboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.routes.inbound.view.settings",{url:"/settings",templateUrl:"app/voice/route/inbound/view/view.settings.html"}).state("main.voice.routes.inbound.view.applications",{url:"/applications",templateUrl:"app/voice/route/inbound/view/view.applications.html",cache:!1}).state("main.voice.routes.inbound.view.application",{url:"/application",templateUrl:"app/voice/route/inbound/view/view.application.html",authenticate:!0}).state("main.voice.routes.inbound.view.applications.settings",{url:"/settings/:appId",templateUrl:"app/voice/route/inbound/view/view.applicationSettings.html",authenticate:!0,controller:"VoiceRouteInboundViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={route:void 0},a.item={type:"inbound",appdata:"Inbound Call",context:"from-voip-provider"},a.next=function(){b.post("/api/voice/extensions/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_ROUTE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/extensions/",a.item).success(function(a){d.path("/voice/routes/inbound/view/"+a.id+"/applications")}).error(function(a){e.show(g.instant(a.message),"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.inbound.wizard",{url:"/wizard",templateUrl:"app/voice/route/inbound/wizard/wizard.html",controller:"VoiceRouteInboundWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal",{url:"/internal",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={routesByPage:{name:"10",value:10}},a.routesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.routes={checked:[]},a.check=function(b){b?a.routes.checked=angular.copy(_.pluck(a.displayedRoutes,"id")):a.routes.checked=[]},a.getRoutes=function(b){return _.map(a.displayedRoutes,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_extension"),b.url="/api/voice/extensions/route/internal",h.getPage(b).then(function(c){a.displayedRoutes=c.rows,b.pagination.numberOfPages=c.total_pages,e.updateTableConfig(a.routesByPage,a.displayedRoutes.length),e.updateTableConfig(a.conf.routesByPage,a.displayedRoutes.length)}),c.socket.on("voice_extension:save",function(c){"internal"===c.type&&a.initList(b)}),c.socket.on("voice_extension:remove",function(c){"internal"===c.type&&(a.routes.checked=_.without(a.routes.checked,c.id),a.initList(b))})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/extensions/"+a).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/extensions/",{params:{id:a.routes.checked}}).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(d.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal.list",{url:"/list",templateUrl:"app/voice/route/internal/list/list.html",controller:"VoiceRouteInternalListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalViewCtrl",["$scope","$http","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=c,a.$application=j.application,a.$interval=k.interval,a.initApplication=function(){a.forms={settings:void 0,interval:void 0},a.application={VoiceExtensionId:d.id,type:"internal"},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toLowerCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toLowerCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from.toLowerCase(),a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to.toLowerCase())):e="*",b+","+c+","+d+","+e},a.$watch("main.app",function(c){if(c){var e,f;switch(d.appId||(a.application={VoiceExtensionId:d.id,type:"internal",interval:a.application.interval}),c){case"Queue":e="api/voice/queues",f="/api/uploads";break;case"Playback":e="/api/uploads";break;case"AGI":e="/api/square/projects";break;case"Goto":e="/api/voice/contexts";break;default:e=null,f=null}e&&b.get(e).success(function(b){a.items="Playback"!==c?b.rows:b}),f&&b.get(f).success(function(b){a.items2=b})}},!0),a.getIntervals=function(){b.get("/api/intervals").success(function(b){a.Intervals=b.rows,e.syncUpdates("interval",a.Intervals)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.getRouteApplications=function(){b.get("/api/voice/extensions/"+d.id+"/applications").success(function(b){a.routeApplications=b,e.unsyncUpdates("voice_extension"),e.socket.on("voice_extension:remove",function(b){b.where.appGroup&&_.remove(a.routeApplications,function(a){return b.where.appGroup==a.appGroup})}),e.socket.on("voice_extension:save",function(b){if(b.VoiceExtensionId===d.id&&b.isApp){var c=_.find(a.routeApplications,{id:b.id});c||a.routeApplications.push(b)}})})},a.sortableOptions={stop:function(){b.post("api/voice/extensions/"+d.id+"/applications",{applications:_.pluck(a.routeApplications,"appGroup")}).success(function(b){a.getRouteApplications()}).error(function(a){console.error(a)})},"ui-floating":!0},a.getRoute=function(){b.get("/api/voice/extensions/"+d.id).success(function(b){a.route=b,e.socket.on("voice_extension:update",function(b){b.id==d.id&&(a.route=b)})}).error(function(a){console.error(a),f.path("/voice/routes/internal/list")})},a.getApplication=function(){b.get("/api/voice/extensions/applications/"+d.appId).success(function(b){var c=_.filter(a.applications,function(a){return a.value===b.app});if(c.length>0&&!b.customApp?a.main.app=b.app:a.main.app="custom",a.application=b,a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),"Queue"===b.app&&(a.application.app_options=b.app_options?b.app_options.split(","):[]),a.interval.intType=b.IntervalId?"list":"custom",a.interval.IntervalId=b.IntervalId,!b.IntervalId){var d,e=b.interval?b.interval.split(","):["*","*","*","*"];e.forEach(function(b,c){switch(c){case 0:"*"!==b?(d=b.split("-"),a.interval.t_from=moment(d[0],"HH:mm"),a.interval.t_to=moment(d[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==b?(d=b.split("-"),a.interval.wd_from=_.capitalize(d[0]),a.interval.wd_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==b?(d=b.split("-"),a.interval.md_from=d[0],a.interval.md_to=d[1]?d[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==b?(d=b.split("-"),a.interval.m_from=_.capitalize(d[0]),a.interval.m_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}).error(function(a){f.path("/voice/routes/internal/view/"+d.id+"/applications")})},a.updateRoute=function(){var e=angular.copy(a.route);b.put("/api/voice/extensions/"+d.id,e).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){i.show(c.instant(b.message),"danger"),a.route=e})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,e.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){i.show(c.instant(a.message),"danger")})},a.createItem=function(){switch(a.application.app=a.main.app,a.application.exten=a.route.exten,a.application.context=a.route.context,a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.post("/api/voice/extensions/",a.application).success(function(){f.path("/voice/routes/internal/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.updateItem=function(){switch(a.application.app_options&&"Queue"===a.application.app&&(a.application.app_options=a.application.app_options.join(",")),a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.put("/api/voice/extensions/applications/"+d.appId,a.application).success(function(){i.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),f.path("/voice/routes/internal/view/"+d.id+"/applications")}).error(function(a){i.show(c.instant(a.message),"danger")})},a.deleteItem=h.confirm["delete"](function(d){b["delete"]("/api/voice/extensions/"+d).success(function(b){a.getRouteApplications(),i.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){i.show(c.instant(a.message),"danger")})}),a.goNext=function(){g.wizard().next()},a.previous=function(){g.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){e.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal.view",{url:"/view/:id",templateUrl:"app/voice/route/internal/view/view.html",controller:"VoiceRouteInternalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.routes.internal.view.settings",{url:"/settings",templateUrl:"app/voice/route/internal/view/view.settings.html"}).state("main.voice.routes.internal.view.applications",{url:"/applications",templateUrl:"app/voice/route/internal/view/view.applications.html",cache:!1}).state("main.voice.routes.internal.view.application",{url:"/application",templateUrl:"app/voice/route/internal/view/view.application.html",authenticate:!0}).state("main.voice.routes.internal.view.applications.settings",{url:"/settings/:appId",templateUrl:"app/voice/route/internal/view/view.applicationSettings.html",authenticate:!0,controller:"VoiceRouteInternalViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={route:void 0},a.item={type:"internal",appdata:"Iternal Call",context:"from-sip"},a.next=function(){b.post("/api/voice/extensions/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_ROUTE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/extensions/",a.item).success(function(a){d.path("/voice/routes/internal/view/"+a.id+"/applications")}).error(function(a){e.show(g.instant(a.message),"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.internal.wizard",{url:"/wizard",templateUrl:"app/voice/route/internal/wizard/wizard.html",controller:"VoiceRouteInternalWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={routesByPage:{name:"10",value:10}},a.routesByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.routes={checked:[]},a.check=function(b){b?a.routes.checked=angular.copy(_.pluck(a.displayedRoutes,"id")):a.routes.checked=[]},a.getRoutes=function(b){ +return _.map(a.displayedRoutes,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){c.unsyncUpdates("voice_extension"),b.url="/api/voice/extensions/route/outbound",h.getPage(b).then(function(c){a.displayedRoutes=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.routesByPage,a.displayedRoutes.length),d.updateTableConfig(a.conf.routesByPage,a.displayedRoutes.length)}),c.socket.on("voice_extension:save",function(c){"outbound"===c.type&&a.initList(b)}),c.socket.on("voice_extension:remove",function(c){"outbound"===c.type&&(a.routes.checked=_.without(a.routes.checked,c.id),a.initList(b))})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/extensions/"+a).success(function(){f(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/extensions/",{params:{id:a.routes.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(e.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound.list",{url:"/list",templateUrl:"app/voice/route/outbound/list/list.html",controller:"VoiceRouteOutboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound",{url:"/outbound",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","application","interval",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=d,a.$application=j.application,a.$interval=k.interval,a.initApplication=function(){a.forms={info:void 0,interval:void 0},a.application={VoiceExtensionId:e.id,type:"outbound"},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""},a.applications=[{name:"Dial",value:"Dial"},{name:"Custom",value:"custom"}]},a.joinInterval=function(a){console.log(a);var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toLowerCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toLowerCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from.toLowerCase(),a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to.toLowerCase())):e="*",b+","+c+","+d+","+e},a.$watch("main.app",function(c){if(c){var d,f;switch(e.appId||(a.application={VoiceExtensionId:e.id,type:"outbound",interval:a.application.interval}),c){case"Dial":d="api/trunks",f="/api/voice/contexts";break;default:d=null,f=null}d&&b.get(d).success(function(b){a.items="Dial"===c?b.rows:b}),f&&b.get(f).success(function(b){a.items2="Dial"===c?b.rows:b})}},!0),a.$watch("application.TrunkId",function(b){b&&(a.application.trunk=_.result(_.find(a.items,{id:b}),"name"))},!0),a.getIntervals=function(){b.get("/api/intervals").success(function(b){a.Intervals=b.rows,f.syncUpdates("interval",a.Intervals)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getRouteApplications=function(){b.get("/api/voice/extensions/"+e.id+"/applications").success(function(b){a.routeApplications=b,f.unsyncUpdates("voice_extension"),f.socket.on("voice_extension:remove",function(b){b.where.appGroup&&_.remove(a.routeApplications,function(a){return b.where.appGroup==a.appGroup})}),f.socket.on("voice_extension:save",function(b){if(b.VoiceExtensionId===e.id&&b.isApp){var c=_.find(a.routeApplications,{id:b.id});c||a.routeApplications.push(b)}})})},a.sortableOptions={stop:function(){b.post("api/voice/extensions/"+e.id+"/applications",{applications:_.pluck(a.routeApplications,"appGroup")}).success(function(){a.getRouteApplications()}).error(function(a){console.error(a)})},"ui-floating":!0},a.getRoute=function(){b.get("/api/voice/extensions/"+e.id).success(function(b){a.route=b,f.socket.on("voice_extension:update",function(b){b.id==e.id&&(a.route=b)})}).error(function(a){g.path("/voice/routes/outbound/list")})},a.getApplication=function(){b.get("/api/voice/extensions/applications/"+e.appId).success(function(b){var c=_.filter(a.applications,function(a){return a.value===b.app});if(c.length>0&&!b.customApp?a.main.app=b.app:a.main.app="custom",a.application=b,a.interval.intType=b.IntervalId?"list":"custom",a.interval.IntervalId=b.IntervalId,!b.IntervalId){var d,e=b.interval?b.interval.split(","):["*","*","*","*"];e.forEach(function(b,c){switch(c){case 0:"*"!==b?(d=b.split("-"),a.interval.t_from=moment(d[0],"HH:mm"),a.interval.t_to=moment(d[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==b?(d=b.split("-"),a.interval.wd_from=_.capitalize(d[0]),a.interval.wd_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==b?(d=b.split("-"),a.interval.md_from=d[0],a.interval.md_to=d[1]?d[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==b?(d=b.split("-"),a.interval.m_from=_.capitalize(d[0]),a.interval.m_to=d[1]?_.capitalize(d[1]):"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}).error(function(a){console.error(a),g.path("/voice/routes/outbound/view/"+e.id+"/routes")})},a.updateRoute=function(){var f=angular.copy(a.route);b.put("/api/voice/extensions/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.route=f})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.createItem=function(){switch(a.application.app=a.main.app,a.application.exten=a.route.exten,a.application.context=a.route.context,a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.post("/api/voice/extensions/",a.application).success(function(){g.path("/voice/routes/outbound/view/"+e.id+"/routes")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.updateItem=function(){switch(a.interval.intType){case"list":a.application.IntervalId=a.interval.IntervalId,a.application.interval=_.result(_.find(a.Intervals,{id:a.interval.IntervalId}),"name");break;case"custom":a.application.IntervalId=null,a.application.interval=a.joinInterval(a.interval);break;case"always":a.application.IntervalId=null,a.application.interval="*,*,*,*"}b.put("/api/voice/extensions/applications/"+e.appId,a.application).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),g.path("/voice/routes/outbound/view/"+e.id+"/routes")}).error(function(a){c.show(d.instant(a.message),"danger")})},a.deleteItem=i.confirm["delete"](function(e){b["delete"]("/api/voice/extensions/"+e).success(function(b){a.getRouteApplications(),c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){c.show(d.instant(a.message),"danger")})}),a.goNext=function(){h.wizard().next()},a.previous=function(){h.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){f.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound.view",{url:"/view/:id",templateUrl:"app/voice/route/outbound/view/view.html",controller:"VoiceRouteOutboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.routes.outbound.view.settings",{url:"/settings",templateUrl:"app/voice/route/outbound/view/view.settings.html"}).state("main.voice.routes.outbound.view.routes",{url:"/routes",templateUrl:"app/voice/route/outbound/view/view.routes.html",cache:!1}).state("main.voice.routes.outbound.view.route",{url:"/route",templateUrl:"app/voice/route/outbound/view/view.route.html",authenticate:!0}).state("main.voice.routes.outbound.view.routes.settings",{url:"/settings/:appId",templateUrl:"app/voice/route/outbound/view/view.routeSettings.html",authenticate:!0,controller:"VoiceRouteOutboundViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.forms={route:void 0},a.item={type:"outbound",appdata:"Outbound Call",context:"from-sip"},a.next=function(){b.post("/api/voice/extensions/validate/",a.item).success(function(a){console.log(a),a.length?e.show(g.instant("MESSAGE_EXIST_ROUTE"),"danger"):c.wizard().next()}).error(function(a){e.show(g.instant(a.message),"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("/api/voice/extensions/",a.item).success(function(a){d.path("/voice/routes/outbound/view/"+a.id+"/routes")}).error(function(a){e.show(g.instant(a.message),"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(g.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes.outbound.wizard",{url:"/wizard",templateUrl:"app/voice/route/outbound/wizard/wizard.html",controller:"VoiceRouteOutboundWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.routes",{url:"/routes",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice",{url:"/voice",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailListCtrl",["$scope","$http","$translate","$rootScope","xAlert","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={voicemailsByPage:{name:"10",value:10},labels:["mailbox","fullname","email"]},a.voicemailsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.voicemails={checked:[]},a.check=function(b,c){c?a.voicemails.checked=angular.copy(_.pluck(a.displayedVoicemails,"uniqueid")):a.voicemails.checked=[]},a.getVoicemails=function(b){return _.map(a.displayedVoicemails,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("voice_voicemail"),b.url="/api/voice/voicemails",h.getPage(b).then(function(c){a.displayedVoicemails=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.voicemailsByPage,a.displayedVoicemails.length),d.updateTableConfig(a.conf.voicemailsByPage,a.displayedVoicemails.length)}),f.socket.on("voice_voicemail:save",function(){a.initList(b)}),f.socket.on("voice_voicemail:remove",function(c){a.voicemails.checked=_.without(a.voicemails.checked,c.uniqueid),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/voice/voicemails/"+a).success(function(){e.show(c.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){e.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/voice/voicemails",{params:{uniqueid:a.voicemails.checked}}).success(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){e.show(c.instant(a.message),"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails.list",{url:"/list",templateUrl:"app/voice/voicemail/list/list.html",controller:"VoiceVoicemailListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$sce","Modal","$location",function(a,b,c,d,e,f,g,h,i){a.getVoicemail=function(){b.get("/api/voice/voicemails/"+e.uniqueid).success(function(b){delete b.password,delete b.stamp,a.voicemail=b}).error(function(a){console.error(a),i.path("/voice/voicemails/list")})},a.updateVoiceVoicemail=function(){var f=angular.copy(a.voicemail);b.put("/api/voice/voicemails/"+e.uniqueid,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.voicemail=f})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){c.show(a.message,"danger")})},a.getMessages=function(){b.get("/api/voice/voicemails/"+e.uniqueid+"/messages/").success(function(b){a.voicemailMessages=b,f.syncUpdates("voice_voicemail_messages",a.voicemailMessages)}).error(function(a){c.show(a.message,"danger")})},a.encodeRecording=function(a){return g.trustAsResourceUrl("data:audio/ogg;base64,"+j(a.data))},a.returnMessageDate=function(a){return a.split("T")[0]},a.returnDuration=function(a){return 1e3*a},a.deleteItem=h.confirm["delete"](function(a){b["delete"]("/api/voice/voicemails/messages/"+a+"/delete").success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){console.log(a),c.show(a.message,"danger")})});var j=function(a){for(var b=new Uint8Array(a),c=b.byteLength,d="",e=0;c>e;e++)d+=String.fromCharCode(b[e]);return window.btoa(d)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails.view",{url:"/view/:uniqueid",templateUrl:"app/voice/voicemail/view/view.html",controller:"VoiceVoicemailViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.voice.voicemails.view.settings",{url:"/settings",templateUrl:"app/voice/voicemail/view/view.settings.html"}).state("main.voice.voicemails.view.messages",{url:"/messages",templateUrl:"app/voice/voicemail/view/view.messages.html"})}]),angular.module("xCallyShuttleApp").controller("VoicemailCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails",{url:"/voicemails",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailWizardCtrl",["$scope","$http","WizardHandler","$location","xAlert","socket","$translate",function(a,b,c,d,e,f,g){a.initWizard=function(){a.forms={},a.item={}},a.next=function(){b.post("/api/voice/voicemails/validate/",a.item).success(function(a){a.length?e.show(g.instant("MESSAGE_EXIST_MAILBOX"),"danger"):c.wizard().next()}).error(function(a){e.show(a.message,"danger")})},a.previous=function(){c.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){a.item.customer_id=a.item.mailbox,b.post("/api/voice/voicemails/",a.item).success(function(){d.path("/voice/voicemails/list")}).error(function(a){e.show(a.message,"danger")})},a.getContexts=function(){b.get("/api/voice/contexts").success(function(b){a.voiceContexts=b.rows,f.syncUpdates("voice_context",a.voiceContexts)}).error(function(a){e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.voice.voicemails.wizard",{url:"/wizard",templateUrl:"app/voice/voicemail/wizard/wizard.html",controller:"VoiceVoicemailWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCtrl",["$scope","$http","socket","$rootScope","$translate","xAlert","Modal","stResource","$uibModal","$log",function(a,b,c,d,e,f,g,h,i,j){a.conf={dashboardsByPage:{name:"10",value:10}},a.dashboardsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.dashboards={checked:[]},a.check=function(b,c){c?a.dashboards.checked=angular.copy(_.pluck(a.displayedDashboards,"id")):a.dashboards.checked=[]},a.getDashboards=function(b){return _.map(a.displayedDashboards,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){b.url="/api/dashboards",h.getPage(b).then(function(c){a.displayedDashboards=c.rows,b.pagination.numberOfPages=c.total_pages,d.updateTableConfig(a.dashboardsByPage,a.displayedDashboards.length),d.updateTableConfig(a.conf.dashboardsByPage,a.displayedDashboards.length)}),c.socket.on("dashboard:save",function(){a.initList(b)}),c.socket.on("dashboard:remove",function(c){a.dashboards.checked=_.without(a.dashboards.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/dashboards/"+a).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/dashboards",{params:{id:a.dashboards.checked}}).success(function(){f.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}),a.create=function(){var a=i.open({animation:!0,templateUrl:"app/yourdashboard/list/create.modal.html",controller:"YourdashboardListCreateModalCtrl"});a.result.then(function(a){b.post("/api/dashboards",a).then(function(a){f.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.data.message,"danger")})},function(){j.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards.list",{url:"/list",templateUrl:"app/yourdashboard/list/list.html",controller:"YourdashboardListCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardShowCtrl",["$scope","localStorageService","$http","xAlert","$translate","Auth","$stateParams","$location",function(a,b,c,d,e,f,g,h){a.Auth=f,a.dashboard={name:"dashboard",structure:"4-8",enableconfirmdelete:!0,editable:f.isAdmin()?!0:!1,maximizable:!0,collapsible:!0},a.getDashboard=function(){c.get("/api/dashboards/"+g.id).success(function(b){b.model=JSON.parse(b.model),a.dashboard=_.merge(a.dashboard,b)}).error(function(a){h.path("/yourdashboards/list")})};var i=function(b,f,h){var i=angular.copy(a.dashboard);i.name=a.dashboard.model.title,i.model=JSON.stringify(i.model),c.put("/api/dashboards/"+g.id,i).success(function(){d.show(e.instant("MESSAGE_DASHBOARD_SAVED")+"!","success")}).error(function(b){d.show(b.message,"danger"),i.model=JSON.parse(i.model),i.name="dashboard",a.dashboard=i})};a.$on("adfDashboardChanged",i),a.$on("destroy",function(){console.log("main dashboard")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards.show",{url:"/show/:id",templateUrl:"app/yourdashboard/show/show.html",controller:"YourdashboardShowCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.radioSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.getDashboard=function(){b.get("/api/dashboards/"+e.id).success(function(b){delete b.model,a.dashboard=b}).error(function(a){f.path("/yourdashboards/list")})},a.updateDashboard=function(){var f=angular.copy(a.dashboard);b.put("/api/dashboards/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.dashboard=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards.view",{url:"/view/:id",templateUrl:"app/yourdashboard/view/view.html",controller:"YourdashboardViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.yourdashboards.view.settings",{url:"/settings",templateUrl:"app/yourdashboard/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.yourdashboards",{url:"/yourdashboards",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ZendeskListCtrl",["$scope","$http","$rootScope","xAlert","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={accountsByPage:{name:"10",value:10}},a.accountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.accounts={checked:[]},a.check=function(b,c){c?a.accounts.checked=angular.copy(_.pluck(a.displayedZdAccounts,"id")):a.accounts.checked=[]},a.getAccounts=function(b){return _.map(a.displayedZdAccounts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("zendesk_account"),b.url="/api/zendesk/accounts",h.getPage(b).then(function(d){a.displayedZdAccounts=d.rows,b.pagination.numberOfPages=d.total_pages,c.updateTableConfig(a.accountsByPage,a.displayedZdAccounts.length),c.updateTableConfig(a.conf.accountsByPage,a.displayedZdAccounts.length)}),f.socket.on("zendesk_account:save",function(){a.initList(b)}),f.socket.on("zendesk_account:remove",function(c){a.accounts.checked=_.without(a.accounts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/zendesk/accounts/"+a).success(function(){d.show(e.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/zendesk/accounts",{params:{id:a.accounts.checked}}).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.checkAccount=function(a){b.get("/api/zendesk/accounts/"+a+"/check").then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.list",{url:"/list",templateUrl:"app/zendesk/list/list.html",controller:"ZendeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i){a.$stateParams=c,a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){f.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){g.unsyncUpdates("zendesk_configuration"),g.unsyncUpdates("zendesk_field")}),a.initView=function(){b.get("/api/zendesk/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){h.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/zendesk/accounts/"+c.id,a.account).success(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/zendesk/configurations",{params:{ZendeskAccountId:c.id}}).success(function(b){a.configurations=b,g.socket.on("zendesk_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.deleteConfiguration=i.confirm["delete"](function(a){b["delete"]("api/zendesk/configurations/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.createConfiguration=function(){a.configuration.ZendeskAccountId=c.id,b.post("api/zendesk/configurations",a.configuration).success(function(a){e.path("zendesk/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){h.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/zendesk/accounts/"+c.id+"/fields").success(function(b){a.accountFields=b}).error(function(a){h.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/zendesk/configurations/"+c.configurationId).success(function(b){console.log(b),a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,g.socket.on("zendesk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){h.show(a.message,"danger")})},a.removeItemFromSubject=function(a){b["delete"]("api/zendesk/fields/"+a.id).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.removeItemFromDescription=function(a){b["delete"]("api/zendesk/fields/"+a.id).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/zendesk/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/zendesk/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.updateSubjectText=function(a){b.put("/api/zendesk/fields/"+a.id,a).success(function(){}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.updateDescriptionText=function(a){b.put("/api/zendesk/fields/"+a.id,a).success(function(){}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateSubjectText(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateDescriptionText(b)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view",{url:"/view/:id",templateUrl:"app/zendesk/view/view.html",controller:"ZendeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.zendesk.view.account",{url:"/account",templateUrl:"app/zendesk/view/view.account.html"}).state("main.zendesk.view.configurations",{url:"/configurations",templateUrl:"app/zendesk/view/view.configurations.html"}).state("main.zendesk.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/zendesk/view/view.configurationSettings.html",controller:"ZendeskViewCtrl"}).state("main.zendesk.view.configuration",{url:"/configuration",templateUrl:"app/zendesk/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("ZendeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={},a.item.authType="password"},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("api/zendesk/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/zendesk/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.wizard",{url:"/wizard",templateUrl:"app/zendesk/wizard/wizard.html",controller:"ZendeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk",{url:"/zendesk",template:"
","abstract":!0})}]),angular.module("xCallyShuttleApp").service("application",function(){var a={applications:[{name:"Queue",value:"Queue"},{name:"Playback",value:"Playback"},{name:"Dial",value:"Dial"},{name:"Cally-Square IVR",value:"AGI"},{name:"GoTo",value:"Goto"},{name:"Hangup",value:"Hangup"},{name:"Set",value:"Set"},{name:"Custom",value:"custom"},{name:"VoiceMail",value:"Voicemail"}],queueOptions:[{value:"C",name:"APPLICATION_QUEUE_OPTION_C"},{value:"c",name:"APPLICATION_QUEUE_OPTION_c"},{value:"d",name:"APPLICATION_QUEUE_OPTION_d"},{value:"F",name:"APPLICATION_QUEUE_OPTION_F"},{value:"h",name:"APPLICATION_QUEUE_OPTION_h"},{value:"H",name:"APPLICATION_QUEUE_OPTION_H"},{value:"n",name:"APPLICATION_QUEUE_OPTION_n"},{value:"i",name:"APPLICATION_QUEUE_OPTION_i"},{value:"I",name:"APPLICATION_QUEUE_OPTION_I"},{value:"r",name:"APPLICATION_QUEUE_OPTION_r"},{value:"R",name:"APPLICATION_QUEUE_OPTION_R"},{value:"t",name:"APPLICATION_QUEUE_OPTION_t"},{value:"T",name:"APPLICATION_QUEUE_OPTION_T"},{value:"w",name:"APPLICATION_QUEUE_OPTION_w"},{value:"W",name:"APPLICATION_QUEUE_OPTION_W"},{value:"k",name:"APPLICATION_QUEUE_OPTION_k"},{value:"K",name:"APPLICATION_QUEUE_OPTION_K"},{value:"x",name:"APPLICATION_QUEUE_OPTION_x"},{value:"X",name:"APPLICATION_QUEUE_OPTION_X"}],audioOptions:[{value:"skip",name:"APPLICATION_PLAYBACK_OPTION_SKIP"},{value:"noanswer",name:"APPLICATION_PLAYBACK_OPTION_NOANSWER"},{value:"j",name:"APPLICATION_PLAYBACK_OPTION_J"},{value:"say",name:"APPLICATION_PLAYBACK_OPTION_SAY"}],hangupCauses:[{value:"",name:"--"},{value:"1",name:"APPLICATION_HANGUP_CAUSE_1"},{value:"16",name:"APPLICATION_HANGUP_CAUSE_16"},{value:"17",name:"APPLICATION_HANGUP_CAUSE_17"},{value:"18",name:"APPLICATION_HANGUP_CAUSE_18"},{value:"21",name:"APPLICATION_HANGUP_CAUSE_21"},{value:"22",name:"APPLICATION_HANGUP_CAUSE_22"},{value:"27",name:"APPLICATION_HANGUP_CAUSE_27"},{value:"38",name:"APPLICATION_HANGUP_CAUSE_38"},{value:"41",name:"APPLICATION_HANGUP_CAUSE_41"}],intTypes:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"custom",name:"APPLICATION_CUSTOM"},{value:"list",name:"APPLICATION_FROM_LIST"}]};return{application:a}}),angular.module("xCallyShuttleApp").factory("Auth",["$location","$rootScope","$http","User","$cookieStore","$q",function(a,b,c,d,e,f){var g={};return e.get("token")&&(g=d.me()),{login:function(a,h){var i=h||angular.noop,j=f.defer();return c.post("/auth/local",{name:a.name,password:a.password,remember:a.remember}).success(function(a){return e.put("token",a.token),e.put("userId",a.userId),g=d.me({},function(){b.$broadcast("login")}),j.resolve(a),i()}).error(function(a){return this.logout(),j.reject(a),i(a)}.bind(this)),j.promise},loginWithToken:function(a,b,c){e.put("token",a),e.put("userId",b), +e.put("name",c),g=d.me()},logout:function(){c.put("/api/users/"+g.id,{online:!1}).success(function(){e.remove("token"),e.remove("userId"),g={},b.$broadcast("logout")}).error(function(a){return a})},createUser:function(a,b){var c=b||angular.noop;return d.save(a,function(b){return e.put("token",b.token),g=d.me(),c(a)},function(a){return this.logout(),c(a)}.bind(this)).$promise},changePassword:function(a,b,c){var e=c||angular.noop;return d.changePassword({id:g.id},{oldPassword:a,newPassword:b},function(a){return e(null,a)},function(a){return e(a)}).$promise},getCurrentUser:function(){return g},isLoggedIn:function(){return g.hasOwnProperty("role")},isLoggedInAsync:function(a){g.hasOwnProperty("$promise")?g.$promise.then(function(){a(!0)})["catch"](function(){a(!1)}):a(g.hasOwnProperty("role")?!0:!1)},isAdmin:function(){return"admin"===g.role},getRole:function(){return g.role},getToken:function(){return e.get("token")},getUserId:function(){return console.log(e.get("userId")),e.get("userId")},getName:function(){return e.get("name")}}}]),angular.module("xCallyShuttleApp").factory("User",["$resource",function(a){return a("/api/users/:id/:controller",{id:"@id"},{changePassword:{method:"PUT",params:{controller:"password"}},me:{method:"GET",params:{id:"me"}}})}]),angular.module("xCallyShuttleApp").service("automations",function(){var a={voice:{conditions:[],actions:[]},mail:{conditions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select",operators:"equals"},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",propertyField:"number",operators:"noequals"}],actions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select"}]},chat:{conditions:[],actions:[]},fax:{conditions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select",operators:"equals"},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",propertyField:"number",operators:"noequals"}],actions:[{name:"APPLICATION_STATUS",value:"status",propertyField:"select"}]}},b=["voice","mail","chat","fax"],c={equals:[{value:"=",name:"APPLICATION_EQUALS_TO"},{value:"<>",name:"APPLICATION_NOT_EQUALS_TO"}],all:[{value:"=",name:"APPLICATION_EQUALS_TO"},{value:"<>",name:"APPLICATION_NOT_EQUALS_TO"},{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}],noequals:[{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}]},d={voice:{},mail:{status:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_PENDING",value:"PENDING"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"},{name:"APPLICATION_STATUS_SOLVED",value:"SOLVED"}]},chat:{},fax:{status:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_PENDING",value:"PENDING"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"},{name:"APPLICATION_STATUS_SOLVED",value:"SOLVED"}]}};return{automations:a,properties:d,channels:b,operators:c}}),angular.module("xCallyShuttleApp").controller("FooterController",["$scope",function(a){a.$on("$includeContentLoaded",function(){Layout.initFooter()})}]),angular.module("xCallyShuttleApp").controller("HeaderController",["$scope","$rootScope","$location","$state","$http","$notification","Auth","xAlert","socket","ngAudio","settings","toastr","localStorageService",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.toggleQuickSidebar=function(){k.layout.pageQuickSidebarOpened=!k.layout.pageQuickSidebarOpened,k.layout.pageQuickSidebarOpened||m.remove("chatRoomId")},a.initHeader=function(){var c=j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3");"agent"===g.getCurrentUser().role&&(i.socket.on("report_mail:save",function(a){c.play();var b=f("MAIL CHANNEL",{icon:"assets/images/media/channels/mail64.png",body:"NEW Incoming Mail Message!",delay:1e3*a.timeslot});b.$on("click",function(){e.put("/api/report/mails/"+a.id,{connect:!0}).success(function(){b.close(),h.show("Mail properly assigned","success")}).error(function(a){h.show(a.message,"danger")})})}),i.socket.on("report_chat:save",function(a){c.play();var d=f("CHAT CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Incoming Chat Visitor!",delay:1e3*a.timeslot});d.$on("click",function(){e.put("/api/report/chats/"+a.id,{connect:!0}).success(function(){d.close(),h.show("Chat properly assigned","success"),b.$broadcast("chatMessageEvent",{type:"external",chatRoomId:a.chatroomid})}).error(function(a){h.show(a.message,"danger")})})}),i.socket.on("chat_message:save",function(a){var d=m.get("chatRoomId");if(!d||d!==a.ChatRoomId){c.play();var e=f(a.User.fullname,{icon:"assets/images/media/channels/chat64.png",body:a.body.length>35?a.body.substring(0,35)+"...":a.body,delay:1e4});e.$on("click",function(){b.$broadcast("chatMessageEvent",{type:"internal",chatRoomId:a.ChatRoomId})})}})),e({url:"/api/fax/user_has_queues",method:"GET",params:{UserId:g.getCurrentUser().id}}).success(function(b){a.faxQueues=_.pluck(b,"FaxQueueId"),a.faxQueues.forEach(function(a){i.socket.on("FAX:QUEUE:"+a,function(a,b){var c=f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*a.timeout});c.$on("click",function(){e.put("/api/fax/rooms/"+a.roomId,{UserId:g.getCurrentUser().id}).success(function(){c.close(),b(g.getCurrentUser().id),l.success("Fax properly assigned","Success",{closeButton:!0,timeOut:5e3})}).error(function(){l.warning("Fax already assigned","Warning",{closeButton:!0,timeOut:5e3})})})})}),i.socket.on("FAX:AGENT:"+g.getCurrentUser().id,function(a,b){var c=f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*a.timeout});c.$on("click",function(){e.put("/api/fax/rooms/"+a.roomId,{UserId:g.getCurrentUser().id}).success(function(){c.close(),b(g.getCurrentUser().id),l.success("Fax properly assigned","Success",{closeButton:!0,timeOut:5e3})}).error(function(){b(g.getCurrentUser().id),l.warning("Fax already assigned","Warning",{closeButton:!0,timeOut:5e3})})})})}).error(function(a){console.error(a)}),i.socket.on("user_has_fax_queue:save",function(b){b=_.map(b,function(a){return a.UserId=parseInt(a.UserId,10),a}),b=_.find(b,{UserId:g.getCurrentUser().id}),b&&-1===_.indexOf(a.faxQueues,b.FaxQueueId)&&(a.faxQueues.push(b.FaxQueueId),i.socket.on("FAX:QUEUE:"+b.FaxQueueId,function(a,b){var c=f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*a.timeout});c.$on("click",function(){e.put("/api/fax/rooms/"+a.roomId,{UserId:g.getCurrentUser().id}).success(function(){c.close(),b(g.getCurrentUser().id),l.success("Fax properly assigned","Success",{closeButton:!0,timeOut:5e3})}).error(function(){b(g.getCurrentUser().id),l.warning("Fax already assigned","Warning",{closeButton:!0,timeOut:5e3})})})}))}),i.socket.on("user_has_fax_queue:remove",function(b){_.indexOf(b.where.UserId,g.getCurrentUser().id.toString())>=0&&_.indexOf(a.faxQueues,b.where.FaxQueueId)>=0&&(a.faxQueues=_.remove(a.faxQueues,b.where.FaxQueueId),i.socket.removeAllListeners("FAX:QUEUE:"+b.where.FaxQueueId))})},a.logout=function(){e.get("/auth/local/logout").success(function(){g.logout(),c.path("/login")}).error(function(a){console.error(a)})},a.isActive=function(a){return a===c.path()}}]),angular.module("xCallyShuttleApp").service("interval",function(){var a={months:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"jan",name:"APPLICATION_JANUARY"},{value:"feb",name:"APPLICATION_FEBRUARY"},{value:"mar",name:"APPLICATION_MARCH"},{value:"apr",name:"APPLICATION_APRIL"},{value:"may",name:"APPLICATION_MAY"},{value:"jun",name:"APPLICATION_JUNE"},{value:"jul",name:"APPLICATION_JULY"},{value:"aug",name:"APPLICATION_AUGUST"},{value:"sep",name:"APPLICATION_SEPTEMBER"},{value:"oct",name:"APPLICATION_OCTOBER"},{value:"nov",name:"APPLICATION_NOVEMBER"},{value:"dec",name:"APPLICATION_DECEMBER"}],daysOfWeek:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"mon",name:"APPLICATION_MONDAY"},{value:"tue",name:"APPLICATION_TUESDAY"},{value:"wed",name:"APPLICATION_WEDNESDAY"},{value:"thu",name:"APPLICATION_THURSDAY"},{value:"fri",name:"APPLICATION_FRIDAY"},{value:"sat",name:"APPLICATION_SATURDAY"},{value:"sun",name:"APPLICATION_SUNDAY"}],daysOfMonth:["always",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{interval:a}}),angular.module("xCallyShuttleApp").factory("Modal",["$rootScope","$uibModal",function(a,b){function c(c,d){console.log("openModal",d);var e=a.$new();return c=c||{},d=d||"modal-default",angular.extend(e,c),b.open({templateUrl:"components/modal/delete.html",windowClass:d,scope:e})}return{confirm:{"delete":function(a){return a=a||angular.noop,function(){var b,d=Array.prototype.slice.call(arguments),e=d.shift();b=c({modal:{dismissable:!0,title:"Confirm Delete",html:"

Are you sure you want to delete"+(e?" "+e+"":" selected items")+"?

",buttons:[{classes:"btn red",text:"Delete",click:function(a){b.close(a)}},{classes:"btn default",text:"Cancel",click:function(a){b.dismiss(a)}}]}},"over-topbar center"),b.result.then(function(b){a.apply(b,d)})}}}}}]),angular.module("xCallyShuttleApp").controller("QuickSidebarControllerAddModal",["$scope","$uibModalInstance","Agent","items",function(a,b,c,d){a.items=d,a.agents=c.get(function(b){a.agents=b,a.items.forEach(function(b){_.remove(a.agents.rows,{id:b.id})})}),a.selected={items:[]},a.modal={title:"APPLICATION_AGENTS_SELECTION"},a.ok=function(){b.close(_.union(_.pluck(a.selected.items,"id"),_.pluck(a.items,"id")))},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("QuickSidebarControllerCloseModal",["$scope","$uibModalInstance",function(a,b){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_CHAT"},a.ok=function(){b.close()},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("QuickSidebarController",["$scope","$rootScope","$window","$http","$uibModal","$log","$timeout","Auth","Agent","User","ChatRoom","ChatMessage","socket","settings","localStorageService","xAlert","$translate",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a.emojiMessage={},a.options={link:!0,linkTarget:"_blank",pdf:{embed:!1},image:{embed:!0},audio:{embed:!0},code:{highlight:!0,lineNumbers:!1},basicVideo:!1,video:{embed:!1,width:null,height:null,ytTheme:"dark",details:!1,ytAuthKey:"_nkO9h1A7HlVyiUICO17oA"}};var r=a.currentUser=h.getCurrentUser();a.message={body:"",user:""},a.$on("$includeContentLoaded",function(){o.get("chatRoomId")&&k.get({id:o.get("chatRoomId")},t,u),o.get("currentTab")&&(a.currentTab=o.get("currentTab"))});var s=angular.element(c);a.getWindowDimensions=function(){return{h:s.height(),w:s.width()}},a.$watch(a.getWindowDimensions,function(b){a.style={height:b.h-46-46-46+"px"},a.style2={height:b.h-46-46-46-180+"px"}},!0),s.bind("resize",function(){a.$apply()}),a.agents=i.get({page:0,per_page:1e3},function(){m.syncUpdates("agent",a.agents.rows)}),a.users=j.get({page:0,per_page:1e3},function(){m.syncUpdates("user",a.users.rows)}),a.chatRooms=k.me(function(b){a.chatRooms=b,m.syncUpdates("chat_room",a.chatRooms)},function(a){console.error(a)}),a.currentTab=0,a.messagesTab=!1,b.$on("chatMessageEvent",function(b,c){switch(c.type){case"internal":a.currentTab=0;break;case"external":a.currentTab=2}k.get({id:c.chatRoomId},t,u)}),a.goToTab=function(b){a.currentTab=b,a.messagesTab=!1,a.chatRoom=null,o.set("currentTab",a.currentTab),o.set("messagesTab",a.messagesTab),o.remove("chatRoomId"),m.unsyncUpdates("chat_message"),m.unsyncUpdates("chat_room")},a.goToMessage=function(a,b){a?k.users({users:[r.id,a]},t,u):k.get({id:b},t,u)},a.sendMessage=function(){a.message.body.trim().length&&l.save({ChatRoomId:a.chatRoom.id,body:a.message.body},function(){a.message.body=""},function(a){console.error(a)})},a.goBack=function(){a.messagesTab=!1,a.chatRoom=null,o.set("messagesTab",a.messagesTab),o.remove("chatRoomId"),m.unsyncUpdates("chat_message"),m.unsyncUpdates("user_has_chat_room")},a.chatRoomsGroupsGreaterThan=function(a){return function(b){return b.Users?"external"!==b.type&&b.Users.length>a:!1}},a.closeChatRoom=function(a,b){var c=e.open({animation:!0,size:b,templateUrl:"components/quickSidebar/modal/close.html",controller:"QuickSidebarControllerCloseModal"});c.result.then(function(){d.put("/api/chat/rooms/"+a,{status:"close"}).then(function(){p.show(q.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){p.show(a.data.message,"danger")})},function(){f.info("Modal dismissed at: "+new Date)})},a.addAgent=function(b,c){var g=e.open({animation:!0,size:c,templateUrl:"components/quickSidebar/modal/add.html",controller:"QuickSidebarControllerAddModal",resolve:{items:function(){return _.map(a.chatRoom.Users?a.chatRoom.Users:[],function(a){return{id:a.id,fullname:a.fullname}})}}});g.result.then(function(c){d.put("/api/chat/rooms/"+b+"/users",{users:c}).then(function(b){m.unsyncUpdates("chat_message"),a.chatRoom=b.data,a.currentTab=3,a.messagesTab=!0;var c=_.find(a.chatRooms,{id:b.id}),d=a.chatRooms.indexOf(c);c?_.merge(a.chatRooms[d],b.data):a.chatRooms.push(b.data),m.socket.on("chat_message:save",function(c){c.ChatRoomId===b.data.id&&(a.chatRoom.ChatMessages.push(c),angular.element("page-quick-sidebar-chat-user-messages").mCustomScrollbar("scrollTo","last"))}),p.show(q.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){p.show(a.data.message,"danger")})},function(){f.info("Modal dismissed at: "+new Date)})};var t=function(b){a.messagesTab=!0,n.layout.pageQuickSidebarOpened=!0,o.set("chatRoomId",b.id),o.set("messagesTab",a.messagesTab),a.chatRoom=b;var c=_.find(a.chatRooms,{id:b.id}),d=a.chatRooms.indexOf(c);c?_.merge(a.chatRooms[d],b):a.chatRooms.push(b),g(function(){angular.element("page-quick-sidebar-chat-user-messages").mCustomScrollbar("scrollTo","last")},1e3),m.socket.on("chat_message:save",function(c){c.ChatRoomId===b.id&&(a.chatRoom.ChatMessages.push(c),angular.element("page-quick-sidebar-chat-user-messages").mCustomScrollbar("scrollTo","last"))}),m.socket.on("chat_room:save",function(b){b.id===a.chatRoom.id&&(a.chatRoom.status=b.status)})},u=function(a){console.error(a)};a.$on("$destroy",function(){m.unsyncUpdates("agent"),m.unsyncUpdates("user")})}]),angular.module("xCallyShuttleApp").directive("resizeQuickSidebar",["$window",function(a){return function(b){var c=angular.element(a);b.getWindowDimensions=function(){return{h:c.height(),w:c.width()}},b.$watch(b.getWindowDimensions,function(a){b.style={height:a.h-46-46-46+"px"}},!0),c.bind("resize",function(){b.$apply()})}}]),angular.module("xCallyShuttleApp").controller("SidebarController",["$scope","$rootScope","$resource","$location","Auth","$http","xAlert","$stateParams","socket",function(a,b,c,d,e,f,g,h,i){a.Auth=e,a.$stateParams=h,a.$on("$includeContentLoaded",function(){Metronic.init(),Layout.initSidebar()}),a.isAssociated=function(a){if(e.isAdmin())return!0;if(e.getCurrentUser().Modules)for(var b=0;b",name:"APPLICATION_NOT_EQUALS_TO"}],all:[{value:"=",name:"APPLICATION_EQUALS_TO"},{value:"<>",name:"APPLICATION_NOT_EQUALS_TO"},{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}],noequals:[{value:">=",name:"APPLICATION_GTE_TO"},{value:"<=",name:"APPLICATION_LTE_TO"},{value:">",name:"APPLICATION_GREATER_THAN"},{value:"<",name:"APPLICATION_LESS_THAN"}]},c={voice:{},mail:{},chat:{},fax:{}},d=["voice","mail","chat","fax"];return{triggers:a,properties:c,operators:b,channels:d}}),function(a,b){angular.module("adf.widget.counter",["adf.provider"]).value("apiServiceUrlCounter","/api/widgets/counter").config(["dashboardProvider",function(a){a.widget("counter",{title:"Counter",description:"Counter for db results",templateUrl:"{widgetsPath}/counter/src/view.html",controller:"apiwidgetCounterViewCtrl",edit:{templateUrl:"{widgetsPath}/counter/src/edit.html",controller:"apiwidgetCounterEditCtrl"}})}]).service("apiServiceCounter",["$q","$http","apiServiceUrlCounter",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiwidgetCounterEditCtrl",["$scope",function(a){a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.colors=[{name:"Blue",value:"blue-madison"},{name:"Red",value:"red-intense"},{name:"Green",value:"green-haze"},{name:"Purple",value:"purple-plum"},{name:"Orange",value:"yellow-casablanca"},{name:"Yellow",value:"yellow-crusta"}],a.config.icons=[{name:"Talk bubbles",value:"fa-comments"},{name:"Bar Chart",value:"fa-bar-chart"},{name:"Shopping Cart",value:"fa-shopping-cart"},{name:"Globe",value:"fa-globe"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE"}]).controller("apiwidgetCounterViewCtrl",["$scope","$interval","apiServiceCounter",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE",a.counterApiCall=function(){a.config.condition&&a.config.report&&c.get(a.config).then(function(b){a.count=parseInt(b[0].count)})},a.counterApiCall();var d=b(function(){a.counterApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.counter").run(["$templateCache",function(a){a.put("{widgetsPath}/counter/src/edit.html","
{{$select.selected.name}}
{{$select.selected.name}}
{{$select.selected.name}}
"),a.put("{widgetsPath}/counter/src/view.html",'
{{count}}
{{config.details}}
{{config.linkText}}
')}])}(window),function(a,b){angular.module("adf.widget.pie-chart",["adf.provider"]).value("apiServiceUrlPieChart","/api/widgets/piechart").config(["dashboardProvider",function(a){a.widget("pie-chart",{title:"Pie-Chart",description:"Display a pie-chart starting from DB values",templateUrl:"{widgetsPath}/pie-chart/src/view.html",controller:"apiWidgetPieChartViewCtrl",edit:{templateUrl:"{widgetsPath}/pie-chart/src/edit.html",controller:"apiWidgetPieChartEditCtrl"}})}]).service("apiServicePieChart",["$q","$http","apiServiceUrlPieChart",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report,fields:d.fields}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiWidgetPieChartEditCtrl",["$scope",function(a){function b(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){b().push({})},a.removeField=function(a){b().splice(a,1)}}]).controller("apiWidgetPieChartViewCtrl",["$scope","$interval","apiServicePieChart",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.pieChartApiCall=function(){a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){if(b&&1===b.length){a.labels=[],a.data=[];for(var c in b[0])a.labels.push(c),a.data.push(b[0][c])}else a.labels=[],a.data=[]})},a.pieChartApiCall();var d=b(function(){a.pieChartApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.pie-chart").run(["$templateCache",function(a){a.put("{widgetsPath}/pie-chart/src/edit.html",'
{{$select.selected.name}}
as
'),a.put("{widgetsPath}/pie-chart/src/view.html",'
')}])}(window),function(a,b){angular.module("adf.widget.table",["adf.provider"]).value("apiServiceUrlTable","/api/widgets/table").config(["dashboardProvider",function(a){a.widget("table",{title:"Table",description:"Show tabbed results from db",templateUrl:"{widgetsPath}/table/src/view.html",controller:"apiWidgetTableViewCtrl",edit:{templateUrl:"{widgetsPath}/table/src/edit.html",controller:"apiWidgetTableEditCtrl"}})}]).service("apiServiceTable",["$q","$http","apiServiceUrlTable",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report,fields:d.fields}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiWidgetTableEditCtrl",["$scope",function(a){function b(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){b().push({})},a.removeField=function(a){b().splice(a,1)}}]).controller("apiWidgetTableViewCtrl",["$scope","$interval","apiServiceTable",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.style={"max-height":a.config.height+"px",overflow:"scroll"},a.tableApiCall=function(){a.config.condition&&a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){a.results=b})},a.tableApiCall();var d=b(function(){a.tableApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.table").run(["$templateCache",function(a){a.put("{widgetsPath}/table/src/edit.html",'
{{$select.selected.name}}
as
'), +a.put("{widgetsPath}/table/src/view.html",'
{{field.alias}}
{{result[field.alias]}}
{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}
')}])}(window),function(){angular.module("pdf",[]).directive("ngPdf",["$window",function(a){return{restrict:"E",templateUrl:function(a,b){return b.templateUrl?b.templateUrl:"partials/viewer.html"},link:function(b,c,d){var e=d.pdfUrl,f=null,g=d.page?d.page:1,h=d.scale>0?d.scale:1,i=c.find("canvas"),j=i[0],k=j.getContext("2d"),l=angular.element(a);l.on("scroll",function(){b.$apply(function(){b.scroll=l[0].scrollY})}),PDFJS.disableWorker=!0,b.pageNum=g,b.renderPage=function(a){f.getPage(a).then(function(a){var e,f,g,i={};"page-fit"!==d.scale||h?e=a.getViewport(h):(e=a.getViewport(1),f=c[0].clientWidth/e.width,g=c[0].clientHeight/e.height,h=Math.min(f,g)),j.height=e.height,j.width=e.width,i={canvasContext:k,viewport:e},a.render(i).promise.then(function(){"function"==typeof b.onPageRender&&b.onPageRender()})})},b.goPrevious=function(){b.pageToDisplay<=1||(b.pageNum=parseInt(b.pageNum)-1)},b.goNext=function(){b.pageToDisplay>=f.numPages||(b.pageNum=parseInt(b.pageNum)+1)},b.zoomIn=function(){return h=parseFloat(h)+.2,b.renderPage(b.pageToDisplay),h},b.zoomOut=function(){return h=parseFloat(h)-.2,b.renderPage(b.pageToDisplay),h},b.changePage=function(){b.renderPage(b.pageToDisplay)},b.rotate=function(){"rotate0"===j.getAttribute("class")?j.setAttribute("class","rotate90"):"rotate90"===j.getAttribute("class")?j.setAttribute("class","rotate180"):"rotate180"===j.getAttribute("class")?j.setAttribute("class","rotate270"):j.setAttribute("class","rotate0")},PDFJS.getDocument(e,null,null,b.onProgress).then(function(a){"function"==typeof b.onLoad&&b.onLoad(),f=a,b.renderPage(b.pageToDisplay),b.$apply(function(){b.pageCount=a.numPages})},function(a){a&&"function"==typeof b.onError&&b.onError(a)}),b.$watch("pageNum",function(a){b.pageToDisplay=parseInt(a),null!==f&&b.renderPage(b.pageToDisplay)})}}}])}(),function(a){a.module("angular-elastic-builder",["RecursionHelper"])}(window.angular),function(a){a.module("angular-elastic-builder").directive("elasticBuilder",["elasticQueryService",function(a){return{scope:{data:"=elasticBuilder"},templateUrl:"angular-elastic-builder/BuilderDirective.html",link:function(b){var c=b.data;b.filters=[],b.removeChild=function(a){b.filters.splice(a,1)},b.addRule=function(){b.filters.push({})},b.addGroup=function(){b.filters.push({type:"group",subType:"and",rules:[]})},b.$watch("data.needsUpdate",function(d){d&&(b.filters=a.toFilters(c.query,b.data.fields),b.data.needsUpdate=!1)}),b.$watch("filters",function(d){d&&(c.query=a.toQuery(b.filters,b.data.fields))},!0)}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticBuilderChooser",["RecursionHelper","groupClassHelper",function(a,b){return{scope:{elasticFields:"=",item:"=elasticBuilderChooser",onRemove:"&"},templateUrl:"angular-elastic-builder/ChooserDirective.html",compile:function(c){return a.compile(c,function(a,c,d){var e=a.depth=+d.depth,f=a.item;a.getGroupClassName=function(){var a=e;return"group"===f.type&&a++,b(a)}})}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticBuilderGroup",["RecursionHelper","groupClassHelper",function(a,b){return{scope:{elasticFields:"=",group:"=elasticBuilderGroup",onRemove:"&"},templateUrl:"angular-elastic-builder/GroupDirective.html",compile:function(c){return a.compile(c,function(a,c,d){var e=a.depth=+d.depth,f=a.group;a.addRule=function(){f.rules.push({})},a.addGroup=function(){f.rules.push({type:"group",subType:"and",rules:[]})},a.removeChild=function(a){f.rules.splice(a,1)},a.getGroupClassName=function(){return b(e+1)}})}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticBuilderRule",[function(){return{scope:{elasticFields:"=",rule:"=elasticBuilderRule",onRemove:"&"},templateUrl:"angular-elastic-builder/RuleDirective.html",link:function(a){a.getType=function(){var b=a.elasticFields,c=a.rule.field;return b&&c?"boolean"===b[c].subType?"boolean":b[c].type:void 0}}}}])}(window.angular),function(a){var b=a.module("angular-elastic-builder");b.directive("elasticType",[function(){return{scope:{type:"=elasticType",rule:"=",guide:"="},template:'',link:function(a){a.getTemplateUrl=function(){var b=a.type;if(b)return b=b.charAt(0).toUpperCase()+b.slice(1),"angular-elastic-builder/types/"+b+".html"},a.booleans=["False","True"],a.booleansOrder=["True","False"],a.inputNeeded=function(){var b=["equals","notEquals","gt","gte","lt","lte"];return~b.indexOf(a.rule.subType)}}}}])}(window.angular),function(a){a.module("angular-elastic-builder").factory("groupClassHelper",function(){return function(a){var b=[""];return b[a%b.length]}})}(window.angular),function(a){function b(a,b){var c=a.map(d.bind(a,b));return c}function c(a,b){var c=a.map(e.bind(a,b)).filter(function(a){return!!a});return c}function d(a,b,c){c!==!1&&(c=!0);var e=Object.keys(b)[0],g={or:"group",and:"group",range:"number"},h=g[e]||"item",i=f(h);switch(e){case"or":case"and":i.rules=b[e].map(d.bind(b,a)),i.subType=e;break;case"missing":case"exists":i.field=b[e].field,i.subType={exists:"exists",missing:"notExists"}[e],delete i.value;break;case"term":case"terms":i.field=Object.keys(b[e])[0];var j=a[Object.keys(b[e])[0]];if("multi"===j.type){var k=b[e][i.field];"string"==typeof k&&(k=[k]),i.value=b[e][i.field]}else i.subType=c?"equals":"notEquals",i.value=b[e][i.field],"number"==typeof i.value&&(i.subType="boolean");break;case"range":i.field=Object.keys(b[e])[0],i.subType=Object.keys(b[e][i.field])[0],i.value=b[e][i.field][i.subType];break;case"not":i=d(a,b[e].filter,!1);break;default:i.field=Object.keys(b[e])[0]}return i}function e(a,b){var c={};if("group"===b.type)return c[b.subType]=b.rules.map(e.bind(b,a)).filter(function(a){return!!a}),c;var d=b.field,f=a[d];if(d){switch(f.type){case"term":case"multiterm":if("boolean"===f.subType&&(b.subType="boolean"),!b.subType)return;switch(b.subType){case"equals":case"boolean":if(void 0===b.value)return;c.term={},c.term[d]=b.value;break;case"notEquals":if(void 0===b.value)return;c.not={filter:{term:{}}},c.not.filter.term[d]=b.value;break;case"exists":c.exists={field:d};break;case"notExists":c.missing={field:d};break;default:throw new Error("unexpected subtype "+b.subType)}break;case"number":c.range={},c.range[d]={},c.range[d][b.subType]=b.value;break;case"date":if("exists"===b.subType)c.exists={field:d};else{if("notExists"!==b.subType)throw new Error("unexpected subtype");c.missing={field:d}}break;case"multi":c.terms={},c.terms[d]=b.value;break;default:throw new Error("unexpected type")}return c}}function f(b){var c={group:{type:"group",subType:"",rules:[]},item:{field:"",subType:"",value:""},number:{field:"",subType:"",value:null}};return a.copy(c[b])}a.module("angular-elastic-builder").factory("elasticQueryService",[function(){return{toFilters:b,toQuery:c}}])}(window.angular),function(a){a.module("angular-elastic-builder").run(["$templateCache",function(a){a.put("angular-elastic-builder/BuilderDirective.html",'\n\n\n
\n \n
\n \n \n \n \n \n'),a.put("angular-elastic-builder/ChooserDirective.html",'\n\n\n
\n
\n
\n
\n'),a.put("angular-elastic-builder/GroupDirective.html",'\n\n\n\n
\n
\n
\n \n
{{ \'APPLICATION_IF\' | translate }}\n \n {{group.subType == \'and\' ? \'MESSAGE_CODITIONS_MET_ALL\' : \'MESSAGE_CODITIONS_MET_ANY\' | translate}}\n
\n
\n
\n \n
\n\n\n'),a.put("angular-elastic-builder/RuleDirective.html",'\n\n \n {{elasticFields[rule.field].action.label | translate}}\n \n \n\n \n\n \n\n \n \n \n\n\n'),a.put("angular-elastic-builder/types/Boolean.html",'\n Equals\n\n \n \n \n\n'),a.put("angular-elastic-builder/types/Date.html",'\n \n\n\n'),a.put("angular-elastic-builder/types/Multi.html",'\n\n\n {{guide.action.midterm | translate}}\n \n \n \n\n \n\n'),a.put("angular-elastic-builder/types/Multiterm.html",'\n \n \n\n'),a.put("angular-elastic-builder/types/Number.html",'\n \n\n \n \n\n \n\n\n'),a.put("angular-elastic-builder/types/Term.html",'\n \n \n\n \n \n\n\n\n \n \n\n')}])}(window.angular);var Metronic=function(){var a,b=!1,c=!1,d=!1,e=!1,f=[],g="assets/",h="img/",i="plugins/",j="css/",k={blue:"#89C4F4",red:"#F3565D",green:"#1bbc9b",purple:"#9b59b6",grey:"#95a5a6",yellow:"#F8CB00"},l=function(){"rtl"===$("body").css("direction")&&(b=!0),c=!!navigator.userAgent.match(/MSIE 8.0/),d=!!navigator.userAgent.match(/MSIE 9.0/),e=!!navigator.userAgent.match(/MSIE 10.0/),e&&$("html").addClass("ie10"),(e||d||c)&&$("html").addClass("ie")},m=function(){for(var a=0;a .portlet-title > .tools > a.remove",function(a){a.preventDefault();var b=$(this).closest(".portlet");$("body").hasClass("page-portlet-fullscreen")&&$("body").removeClass("page-portlet-fullscreen"),b.find(".portlet-title .fullscreen").tooltip("destroy"),b.find(".portlet-title > .tools > .reload").tooltip("destroy"),b.find(".portlet-title > .tools > .remove").tooltip("destroy"),b.find(".portlet-title > .tools > .config").tooltip("destroy"),b.find(".portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip("destroy"),b.remove()}),$("body").on("click",".portlet > .portlet-title .fullscreen",function(a){a.preventDefault();var b=$(this).closest(".portlet");if(b.hasClass("portlet-fullscreen"))$(this).removeClass("on"),b.removeClass("portlet-fullscreen"),$("body").removeClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height","auto");else{var c=Metronic.getViewPort().height-b.children(".portlet-title").outerHeight()-parseInt(b.children(".portlet-body").css("padding-top"))-parseInt(b.children(".portlet-body").css("padding-bottom"));$(this).addClass("on"),b.addClass("portlet-fullscreen"),$("body").addClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height",c)}}),$("body").on("click",".portlet > .portlet-title > .tools > a.reload",function(a){a.preventDefault();var b=$(this).closest(".portlet").children(".portlet-body"),c=$(this).attr("data-url"),d=$(this).attr("data-error-display");c?(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),$.ajax({type:"GET",cache:!1,url:c,dataType:"html",success:function(a){Metronic.unblockUI(b),b.html(a)},error:function(a,c,e){Metronic.unblockUI(b);var f="Error on reloading the content. Please check your connection and try again.";"toastr"==d&&toastr?toastr.error(f):"notific8"==d&&$.notific8?($.notific8("zindex",11500),$.notific8(f,{theme:"ruby",life:3e3})):alert(f)}})):(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),window.setTimeout(function(){Metronic.unblockUI(b)},1e3))}),$('.portlet .portlet-title a.reload[data-load="true"]').click(),$("body").on("click",".portlet > .portlet-title > .tools > .collapse, .portlet .portlet-title > .tools > .expand",function(a){a.preventDefault()})},p=function(){if($().uniform){var a=$("input[type=checkbox]:not(.toggle, .make-switch, .icheck), input[type=radio]:not(.toggle, .star, .make-switch, .icheck)");a.size()>0&&a.each(function(){0===$(this).parents(".checker").size()&&$(this).show()})}},q=function(){$().iCheck&&$(".icheck").each(function(){var a=$(this).attr("data-checkbox")?$(this).attr("data-checkbox"):"icheckbox_minimal-grey",b=$(this).attr("data-radio")?$(this).attr("data-radio"):"iradio_minimal-grey";a.indexOf("_line")>-1||b.indexOf("_line")>-1?$(this).iCheck({checkboxClass:a,radioClass:b,insert:'
'+$(this).attr("data-label")}):$(this).iCheck({checkboxClass:a,radioClass:b})})},r=function(){$().bootstrapSwitch&&$(".make-switch").bootstrapSwitch()},s=function(){$().confirmation&&$("[data-toggle=confirmation]").confirmation({container:"body",btnOkClass:"btn-xs btn-success",btnCancelClass:"btn-xs btn-danger"})},t=function(){$("body").on("shown.bs.collapse",".accordion.scrollable",function(a){Metronic.scrollTo($(a.target))})},u=function(){if(location.hash){var a=location.hash.substr(1);$('a[href="#'+a+'"]').parents(".tab-pane:hidden").each(function(){var a=$(this).attr("id");$('a[href="#'+a+'"]').click()}),$('a[href="#'+a+'"]').click()}},v=function(){$("body").on("hide.bs.modal",function(){$(".modal:visible").size()>1&&$("html").hasClass("modal-open")===!1?$("html").addClass("modal-open"):$(".modal:visible").size()<=1&&$("html").removeClass("modal-open")}),$("body").on("show.bs.modal",".modal",function(){$(this).hasClass("modal-scroll")&&$("body").addClass("modal-open-noscroll")}),$("body").on("hide.bs.modal",".modal",function(){$("body").removeClass("modal-open-noscroll")}),$("body").on("hidden.bs.modal",".modal:not(.modal-cached)",function(){$(this).removeData("bs.modal")})},w=function(){$(".tooltips").tooltip(),$(".portlet > .portlet-title .fullscreen").tooltip({container:"body",title:"Fullscreen"}),$(".portlet > .portlet-title > .tools > .reload").tooltip({container:"body",title:"Reload"}),$(".portlet > .portlet-title > .tools > .remove").tooltip({container:"body",title:"Remove"}),$(".portlet > .portlet-title > .tools > .config").tooltip({container:"body",title:"Settings"}),$(".portlet > .portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip({container:"body",title:"Collapse/Expand"})},x=function(){$("body").on("click",".dropdown-menu.hold-on-click",function(a){a.stopPropagation()})},y=function(){$("body").on("click",'[data-close="alert"]',function(a){$(this).parent(".alert").hide(),$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-close="note"]',function(a){$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-remove="note"]',function(a){$(this).closest(".note").remove(),a.preventDefault()})},z=function(){$('[data-hover="dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")})},A=function(){$(".popovers").popover(),$(document).on("click.bs.popover.data-api",function(b){a&&a.popover("hide")})},B=function(){Metronic.initSlimScroll(".scroller")},C=function(){jQuery.fancybox&&$(".fancybox-button").size()>0&&$(".fancybox-button").fancybox({groupAttr:"data-rel",prevEffect:"none",nextEffect:"none",closeBtn:!0,helpers:{title:{type:"inside"}}})},D=function(){(c||d)&&$("input[placeholder]:not(.placeholder-no-fix), textarea[placeholder]:not(.placeholder-no-fix)").each(function(){var a=$(this);""===a.val()&&""!==a.attr("placeholder")&&a.addClass("placeholder").val(a.attr("placeholder")),a.focus(function(){a.val()==a.attr("placeholder")&&a.val("")}),a.blur(function(){(""===a.val()||a.val()==a.attr("placeholder"))&&a.val(a.attr("placeholder"))})})},E=function(){$().select2&&$(".select2me").select2({placeholder:"Select"})};return{init:function(){l(),n(),p(),q(),r(),B(),C(),E(),o(),y(),x(),u(),w(),A(),t(),v(),s(),D()},initAjax:function(){p(),q(),r(),z(),B(),E(),C(),x(),w(),A(),t(),s()},initComponents:function(){this.initAjax()},setLastPopedPopover:function(b){a=b},addResizeHandler:function(a){f.push(a)},runResizeHandlers:function(){m()},scrollTo:function(a,b){var c=a&&a.size()>0?a.offset().top:0;a&&($("body").hasClass("page-header-fixed")&&(c-=$(".page-header").height()),c+=b?b:-1*a.height()),$("html,body").animate({scrollTop:c},"slow")},initSlimScroll:function(a){$(a).each(function(){if(!$(this).attr("data-initialized")){var a;a=$(this).attr("data-height")?$(this).attr("data-height"):$(this).css("height"),$(this).slimScroll({allowPageScroll:!0,size:"7px",color:$(this).attr("data-handle-color")?$(this).attr("data-handle-color"):"#bbb",wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",railColor:$(this).attr("data-rail-color")?$(this).attr("data-rail-color"):"#eaeaea",position:b?"left":"right",height:a,alwaysVisible:"1"==$(this).attr("data-always-visible")?!0:!1,railVisible:"1"==$(this).attr("data-rail-visible")?!0:!1,disableFadeOut:!0}),$(this).attr("data-initialized","1")}})},destroySlimScroll:function(a){$(a).each(function(){if("1"===$(this).attr("data-initialized")){$(this).removeAttr("data-initialized"),$(this).removeAttr("style");var a={};$(this).attr("data-handle-color")&&(a["data-handle-color"]=$(this).attr("data-handle-color")),$(this).attr("data-wrapper-class")&&(a["data-wrapper-class"]=$(this).attr("data-wrapper-class")),$(this).attr("data-rail-color")&&(a["data-rail-color"]=$(this).attr("data-rail-color")),$(this).attr("data-always-visible")&&(a["data-always-visible"]=$(this).attr("data-always-visible")),$(this).attr("data-rail-visible")&&(a["data-rail-visible"]=$(this).attr("data-rail-visible")),$(this).slimScroll({wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",destroy:!0});var b=$(this);$.each(a,function(a,c){b.attr(a,c)})}})},scrollTop:function(){Metronic.scrollTo()},blockUI:function(a){a=$.extend(!0,{},a);var b="";if(b=a.animate?'
':a.iconOnly?'
':a.textOnly?'
  '+(a.message?a.message:"LOADING...")+"
":'
  '+(a.message?a.message:"LOADING...")+"
",a.target){var c=$(a.target);c.height()<=$(window).height()&&(a.cenrerY=!0),c.block({message:b,baseZ:a.zIndex?a.zIndex:1e3,centerY:void 0!==a.cenrerY?a.cenrerY:!1,css:{top:"10%",border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})}else $.blockUI({message:b,baseZ:a.zIndex?a.zIndex:1e3,css:{border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})},unblockUI:function(a){a?$(a).unblock({onUnblock:function(){$(a).css("position",""),$(a).css("zoom","")}}):$.unblockUI()},startPageLoading:function(a){a&&a.animate?($(".page-spinner-bar").remove(),$("body").append('
')):($(".page-loading").remove(),$("body").append('
  '+(a&&a.message?a.message:"Loading...")+"
"))},stopPageLoading:function(){$(".page-loading, .page-spinner-bar").remove()},alert:function(a){a=$.extend(!0,{container:"",place:"append",type:"success",message:"",close:!0,reset:!0,focus:!0,closeInSeconds:0,icon:""},a);var b=Metronic.getUniqueID("Metronic_alert"),c='
'+(a.close?'':"")+(""!==a.icon?' ':"")+a.message+"
"; +return a.reset&&$(".Metronic-alerts").remove(),a.container?"append"==a.place?$(a.container).append(c):$(a.container).prepend(c):$("body").hasClass("page-container-bg-solid")?$(".page-title").after(c):$(".page-bar").size()>0?$(".page-bar").after(c):$(".page-breadcrumb").after(c),a.focus&&Metronic.scrollTo($("#"+b)),a.closeInSeconds>0&&setTimeout(function(){$("#"+b).remove()},1e3*a.closeInSeconds),b},initUniform:function(a){a?$(a).each(function(){0===$(this).parents(".checker").size()&&($(this).show(),$(this).uniform())}):p()},updateUniform:function(a){$.uniform.update(a)},initFancybox:function(){C()},getActualVal:function(a){return a=$(a),a.val()===a.attr("placeholder")?"":a.val()},getURLParameter:function(a){var b,c,d=window.location.search.substring(1),e=d.split("&");for(b=0;b a").each(function(){var a=$(this).attr("href").toLowerCase();return a.length>1&&d.substr(1,a.length-1)==a.substr(1)?void(b=$(this)):void 0}),b&&0!=b.size()&&"javascript:;"!==b.attr("href").toLowerCase()&&"#"!==b.attr("href").toLowerCase()){parseInt(e.data("slide-speed")),e.data("keep-expanded");e.find("li.active").removeClass("active"),e.find("li > a > .selected").remove(),e.hasClass("page-sidebar-menu-hover-submenu")===!1?e.find("li.open").each(function(){0===$(this).children(".sub-menu").size()&&($(this).removeClass("open"),$(this).find("> a > .arrow.open").removeClass("open"))}):e.find("li.open").removeClass("open"),b.parents("li").each(function(){$(this).addClass("active"),$(this).find("> a > span.arrow").addClass("open"),1===$(this).parent("ul.page-sidebar-menu").size()&&$(this).find("> a").append(''),1===$(this).children("ul.sub-menu").size()&&$(this).addClass("open")}),"click"===a&&Metronic.getViewPort().width a",function(a){var b=$(this).next().hasClass("sub-menu");if(!(Metronic.getViewPort().width>=c&&1===$(this).parents(".page-sidebar-menu-hover-submenu").size())){if(b===!1)return void(Metronic.getViewPort().width a.ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=jQuery(".page-sidebar ul"),e=($(".page-content"),$(".page-content .page-content-body"));d.children("li.active").removeClass("active"),d.children("arrow.open").removeClass("open"),$(this).parents("li").each(function(){$(this).addClass("active"),$(this).children("a > span.arrow").addClass("open")}),$(this).parents("li").addClass("active"),Metronic.getViewPort().width li.open > a").click(),Metronic.stopPageLoading(),e.html(a),Layout.fixContentHeight(),Metronic.initAjax()},error:function(a,b,c){Metronic.stopPageLoading(),e.html("

Could not load the requested content.

")}})}),jQuery(".page-content").on("click",".ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=($(".page-content"),$(".page-content .page-content-body"));Metronic.startPageLoading(),Metronic.getViewPort().widthCould not load the requested content."),Metronic.stopPageLoading()}})}),i(),$(".page-sidebar").on("click",".sidebar-search .remove",function(a){a.preventDefault(),$(".sidebar-search").removeClass("open")}),$(".page-sidebar .sidebar-search").on("keypress","input.form-control",function(a){return 13==a.which?($(".sidebar-search").submit(),!1):void 0}),$(".sidebar-search .submit").on("click",function(a){a.preventDefault(),$("body").hasClass("page-sidebar-closed")&&$(".sidebar-search").hasClass("open")===!1?(1===$(".page-sidebar-fixed").size()&&$(".page-sidebar .sidebar-toggler").click(),$(".sidebar-search").addClass("open")):$(".sidebar-search").submit()}),0!==$(".sidebar-search").size()&&($(".sidebar-search .input-group").on("click",function(a){a.stopPropagation()}),$("body").on("click",function(){$(".sidebar-search").hasClass("open")&&$(".sidebar-search").removeClass("open")}))},g=function(){var a=Metronic.getViewPort().height-$(".page-header").outerHeight();return $("body").hasClass("page-footer-fixed")&&(a-=$(".page-footer").outerHeight()),a},h=function(){var a=$(".page-sidebar-menu");return Metronic.destroySlimScroll(a),0===$(".page-sidebar-fixed").size()?void d():void(Metronic.getViewPort().width>=c&&(a.attr("data-height",g()),Metronic.initSlimScroll(a),d()))},i=function(){var a=$("body");a.hasClass("page-sidebar-fixed")&&$(".page-sidebar").on("mouseenter",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").removeClass("page-sidebar-menu-closed")}).on("mouseleave",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").addClass("page-sidebar-menu-closed")})},j=function(){var a=$("body");$.cookie&&"1"===$.cookie("sidebar_closed")&&Metronic.getViewPort().width>=c?($("body").addClass("page-sidebar-closed"),$(".page-sidebar-menu").addClass("page-sidebar-menu-closed")):$.cookie&&$.cookie("sidebar_closed","0"),$("body").on("click",".sidebar-toggler",function(b){var c=$(".page-sidebar"),d=$(".page-sidebar-menu");$(".sidebar-search",c).removeClass("open"),a.hasClass("page-sidebar-closed")?(a.removeClass("page-sidebar-closed"),d.removeClass("page-sidebar-menu-closed"),$.cookie&&$.cookie("sidebar_closed","0")):(a.addClass("page-sidebar-closed"),d.addClass("page-sidebar-menu-closed"),a.hasClass("page-sidebar-fixed")&&d.trigger("mouseleave"),$.cookie&&$.cookie("sidebar_closed","1")),$(window).trigger("resize")})},k=function(){$(".page-header").on("click",'.hor-menu a[data-toggle="tab"]',function(a){a.preventDefault();var b=$(".hor-menu .nav"),c=b.find("li.current");$("li.active",c).removeClass("active"),$(".selected",c).remove();var d=$(this).parents("li").last();d.addClass("current"),d.find("a:first").append('')}),$(".page-header").on("click",".search-form",function(a){$(this).addClass("open"),$(this).find(".form-control").focus(),$(".page-header .search-form .form-control").on("blur",function(a){$(this).closest(".search-form").removeClass("open"),$(this).unbind("blur")})}),$(".page-header").on("keypress",".hor-menu .search-form .form-control",function(a){return 13==a.which?($(this).closest(".search-form").submit(),!1):void 0}),$(".page-header").on("mousedown",".search-form.open .submit",function(a){a.preventDefault(),a.stopPropagation(),$(this).closest(".search-form").submit()}),$('[data-hover="megamenu-dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")}),$(document).on("click",".mega-menu-dropdown .dropdown-menu",function(a){a.stopPropagation()})},l=function(){$("body").on("shown.bs.tab",'a[data-toggle="tab"]',function(){d()})},m=function(){var a=300,b=500;navigator.userAgent.match(/iPhone|iPad|iPod/i)?$(window).bind("touchend touchcancel touchleave",function(c){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}):$(window).scroll(function(){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}),$(".scroll-to-top").click(function(a){return a.preventDefault(),$("html, body").animate({scrollTop:0},b),!1})},n=function(){var a,b=$(".full-height-content");if(a=Metronic.getViewPort().height-$(".page-header").outerHeight(!0)-$(".page-footer").outerHeight(!0)-$(".page-title").outerHeight(!0)-$(".page-bar").outerHeight(!0),b.hasClass("portlet")){var d=b.find(".portlet-body");if(Metronic.getViewPort().width\n
\n
\n \n\n \n
\n
\n
\n \n {{ \'APPLICATION_AGENTS\' | translate }} \n
\n \n
\n
\n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n {{$select.selected.name}}\n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
{{ \'APPLICATION_FULLNAME\' | translate }}{{ \'APPLICATION_USERNAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
{{agent.fullname}}{{agent.name}}{{agent.email}}\n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
\n No agents available\n
\n \n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n
\n \n
\n
\n \n
\n
\n\n'),a.put("app/agent/view/view.account.html",'
\n
\n
\n
\n
\n \n {{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}\n
\n \n
\n\n
\n
\n \n
\n
\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n {{ \'APPLICATION_SELECT_IMAGE\' | translate }} \n
\n
\n \n \n
\n

\n
{{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} jpg, png, jpeg.\n

\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n \n {{ item.file.name }}\n \n \n {{ item.file.size/1024/1024|number:2 }} MB\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n \n
\n
\n \n
\n
\n
\n
\n
\n'),a.put("app/agent/view/view.html",'\n
\n
\n \n\n \n
\n \n
\n \n
\n \n
\n \n\n \n
\n
\n {{agent.fullname}}\n
\n
\n {{agent.role}}\n
\n
\n \n\n \n \n \n
\n \n
\n \n\n \n
\n
\n \n
\n
\n\n'),a.put("app/agent/wizard/wizard.html",'
\n \n \n \n\n \n
\n
\n
\n \n {{ \'APPLICATION_AGENT\' | translate }} WIZARD \n
\n
\n
\n \n \n
\n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_EMAIL\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
\n \n\n \n
\n \n
\n \n \n \n \n
\n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n \n
\n \n\n \n
\n
\n\n \n
\n\n \n \n \n\n \n
\n \n \n {{$item}}\n \n {{transport}}\n \n \n \n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n \n
\n \n\n \n \n \n\n \n \n\n \n\n \n \n \n\n \n
\n \n \n {{$item}}\n \n {{allow}}\n \n \n \n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n \n
\n \n\n \n \n
\n
\n\n \n

{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

\n \n
\n
\n
\n
\n \n
\n'), a.put("app/automation/list/list.html",'\n\n\n
\n
\n \n
\n
\n
\n \n {{ \'APPLICATION_AUTOMATIONS\' | translate }} \n
\n \n
\n
\n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n {{$select.selected.name}}\n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
{{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_CHANNEL\' | translate }}{{ \'APPLICATION_STATUS\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
{{Automation.name}}{{Automation.description}}{{Automation.channel | capitalize}}\n \n \n \n {{ \'APPLICATION_EDIT\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
\n No available automations\n
\n \n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n \n
\n
\n\n'),a.put("app/automation/view/view.html",'\n
\n
\n \n\n\n\n\n \n
\n \n
\n \n
\n \n
\n \n\n \n
\n
\n {{ automation.name }}\n
\n
\n {{ automation.description }}\n
\n
\n \n\n \n \n \n
\n
\n \n \n
\n
\n \n
\n
\n\n'),a.put("app/automation/view/view.settings.html",'
\n
\n
\n \n
\n \n
\n \n
\n
\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n
\n \n\n \n
\n
\n \n
\n
\n
\n
\n \n {{ \'APPLICATION_CONDITIONS\' | translate }} \n
\n
\n
\n \n
\n
\n
\n
\n
\n \n {{ \'APPLICATION_ACTIONS\' | translate }} \n
\n
\n
\n \n
\n
\n\n \n
\n
\n
\n
\n
\n
\n'),a.put("app/automation/wizard/wizard.html",'
\n
\n \n \n \n\n \n
\n
\n
\n \n {{ \'APPLICATION_AUTOMATIONS\' | translate }} WIZARD \n
\n
\n
\n \n \n \n
\n \n
\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
\n \n\n \n
\n \n \n
\n \n\n \n
\n
\n \n
\n
\n
\n \n {{ \'APPLICATION_CHANNEL\' | translate }} \n
\n
\n
\n
\n \n \n {{$select.selected | capitalize}}\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n {{ \'APPLICATION_CONDITIONS\' | translate }} \n
\n
\n
\n \n
\n
\n
\n
\n
\n \n {{ \'APPLICATION_ACTIONS\' | translate }} \n
\n
\n
\n \n
\n
\n \n \n
\n \n

{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

\n \n \n
\n
\n
\n
\n \n
\n
\n\n'),a.put("app/chat/preview/preview.html",'\n
\n
\n \n \n \n \n \n {{statePreview.state == \'online\' ? chatWebsite.header_online : chatWebsite.header_offline}}\n
\n
\n
\n
\n \n
    \n
    \n
    \n
    \n

    \n \n \n \n {{chatWebsite.enquiry_button}}
    \n
    \n \n \n \n
    \n
    \n'),a.put("app/chat/queue/list/list.html",'\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUE\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_STRATEGY\' | translate }}{{ \'APPLICATION_AGENT_TIMEOUT\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{chatQueue.name}}{{chatQueue.description}}{{chatQueue.strategy | uppercase}}{{chatQueue.timeout}}\n \n {{ \'APPLICATION_EDIT\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No chat queues available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'), a.put("app/chat/queue/view/view.agents.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_AGENTS\' | translate}}\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n'),a.put("app/chat/queue/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{queue.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/chat/queue/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_SETTINGS\' | translate}}\n
    \n
    \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n \n {{$select.selected.toUpperCase()}}\n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/chat/queue/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUES\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.toUpperCase()}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/chat/realtime/view/agent/agent.html",'\n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_UNIQUEID\' | translate }}{{ \'APPLICATION_QUEUE\' | translate }}{{ \'APPLICATION_AGENT\' | translate }}{{ \'APPLICATION_VISITOR\' | translate }}{{ \'APPLICATION_WEB_SITE\' | translate }}{{ \'APPLICATION_CALLED_AT\' | translate }}{{ \'APPLICATION_CONNECTED_AT\' | translate }}{{ \'APPLICATION_UNASWER_AT\' | translate }}{{ \'APPLICATION_REASON\' | translate }}
    \n \n \n \n {{agent.uniqueid}}{{agent.chatqueuename}}{{agent.fullname}}{{agent.visitorname}} {{agent.visitoremail}}{{agent.websitename}}\n \n \n \n \n \n \n {{agent.reason | uppercase}}\n
    \n No agents available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n
    \n\n'),a.put("app/chat/realtime/view/session/session.html",'\n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_UNIQUEID\' | translate }}{{ \'APPLICATION_QUEUE\' | translate }}{{ \'APPLICATION_AGENT\' | translate }}{{ \'APPLICATION_VISITOR\' | translate }}{{ \'APPLICATION_WEB_SITE\' | translate }}{{ \'APPLICATION_JOIN_AT\' | translate }}{{ \'APPLICATION_LEAVE_AT\' | translate }}{{ \'APPLICATION_UNMANAGED_AT\' | translate }}
    \n \n \n \n {{session.uniqueid}}{{session.chatqueuename}}{{session.fullname}}{{session.visitorname + \' [\' + session.visitoremail + \']\'}}{{session.websitename}}\n \n \n \n \n \n
    \n No sessions available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n
    \n\n'),a.put("app/chat/realtime/view/view.html",'\n
    \n
    \n \n\n
    \n \n
    \n
    \n
    \n
    \n\n'),a.put("app/chat/statistic/statistic.conversation.html",'\n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONVERSATIONS\' | translate }} \n
    \n
    \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_TYPE\' | translate }}{{ \'APPLICATION_USERS\' | translate }}{{ \'APPLICATION_VISITOR\' | translate }}{{ \'APPLICATION_STATUS\' | translate }}{{ \'APPLICATION_TIME\' | translate }}
    {{chatRoom.type | uppercase}}{{getUsersFullname(chatRoom.Users)}}{{chatRoom.ChatVisitor.email}}\n \n {{chatRoom.status | capitalize}}\n \n \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n\n'),a.put("app/chat/statistic/statistic.conversation.view.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRANSCRIPT\' | translate }} \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VISITOR\' | translate }}: \n {{chatRoom.ChatVisitor.fullname}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n {{\'APPLICATION_FULLNAME\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.fullname}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_EMAIL\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.email}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REMOTE_ADDRESS\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.remote_address}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REFERER\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.referer}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_BROWSER\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.browser}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ENGINE\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.engine}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_OS\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.os}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_DEVICE\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.device}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_COUNTRY\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.country}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REGION\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.region}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_CITY\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.city}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_LATITUDE\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.latitude}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_LONGITUDE\' | translate}}\n
    \n
    \n {{chatRoom.ChatVisitor.longitude}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ARRIVAL_TIME\' | translate}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_AGENT\' | translate }}: \n {{user.fullname}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n {{\'APPLICATION_FULLNAME\' | translate}}\n
    \n
    \n {{user.fullname}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_USERNAME\' | translate}}\n
    \n
    \n {{user.name}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ROLE\' | translate}}\n
    \n
    \n {{user.role | uppercase}}\n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'), a.put("app/chat/statistic/statistic.enquiry.html",'\n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ENQUIRIES\' | translate }} \n
    \n
    \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_USERNAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_TIME\' | translate }}
    {{chatEnquiry.username}}{{chatEnquiry.email}}\n \n
    \n \n
    \n \n
    \n
    \n \n
    \n\n'),a.put("app/chat/statistic/statistic.enquiry.view.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TEXT\' | translate }} \n
    \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n

    {{chatEnquiry.ChatVisitor.fullname}} -\n \n

    \n

    \n {{chatEnquiry.text}}\n

    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VISITOR\' | translate }}: \n {{chatEnquiry.ChatVisitor.fullname}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n {{\'APPLICATION_FULLNAME\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.fullname}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_EMAIL\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.email}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REMOTE_ADDRESS\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.remote_address}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REFERER\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.referer}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_BROWSER\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.browser}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ENGINE\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.engine}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_OS\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.os}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_DEVICE\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.device}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_COUNTRY\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.country}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REGION\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.region}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_CITY\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.city}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_LATITUDE\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.latitude}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_LONGITUDE\' | translate}}\n
    \n
    \n {{chatEnquiry.ChatVisitor.longitude}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ARRIVAL_TIME\' | translate}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/chat/statistic/statistic.html",'\n\n\n'),a.put("app/chat/statistic/statistic.summary.html",'
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_LOCATIONS\' | translate }} \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n\n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONVERSATIONS\' | translate }} \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
      \n
    • \n \n {{ \'APPLICATION_OPENED\' | translate }} \n \n \n {{ (chatRooms | filter:{ status:\'open\' }).length }} \n
    • \n
    • \n \n {{ \'APPLICATION_CLOSED\' | translate }} \n \n \n {{ (chatRooms | filter:{ status:\'close\' }).length }} \n
    • \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VISITORS\' | translate }} \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
      \n
    • \n \n {{ \'APPLICATION_PENDING\' | translate }} \n \n \n {{ (chatVisitors | filter:{ status:\'pending\' }).length }} \n
    • \n
    • \n \n {{ \'APPLICATION_SERVED\' | translate }} \n \n \n {{ (chatVisitors | filter:{ status:\'served\' }:true).length }} \n
    • \n
    • \n \n {{ \'APPLICATION_UNSERVED\' | translate }} \n \n {{ (chatVisitors | filter:{ status:\'unserved\' }).length }} \n
    • \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ENQUIRIES\' | translate }} \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
      \n
    • \n \n {{ \'APPLICATION_READ\' | translate }}\n \n \n {{(chatEnquiries | filter:{ read:true }).length}} \n
    • \n
    • \n \n {{ \'APPLICATION_UNREAD\' | translate }}\n \n \n {{(chatEnquiries | filter:{ read:false }).length}} \n
    • \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/chat/statistic/statistic.visitor.html",'\n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VISITORS\' | translate }} \n
    \n
    \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_REMOTE_ADDRESS\' | translate }}{{ \'APPLICATION_ORIGIN\' | translate }}{{ \'APPLICATION_DEVICE\' | translate }}{{ \'APPLICATION_BROWSER\' | translate }}{{ \'APPLICATION_LANGUAGES\' | translate }}{{ \'APPLICATION_STATUS\' | translate }}{{ \'APPLICATION_TIME\' | translate }}
    {{chatVisitor.fullname}}{{chatVisitor.email}}{{chatVisitor.remote_address}}{{chatVisitor.referer}}{{chatVisitor.device ? chatVisitor.device : \'--\'}}\n \n \n \n \n \n \n \n \n \n \n {{ $translate.instant(\'APPLICATION_\' + $filter(\'uppercase\')(chatVisitor.status)) }}\n \n \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n\n'),a.put("app/chat/statistic/statistic.visitor.view.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_LOCATION\' | translate }} \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VISITOR\' | translate }}: \n {{chatVisitor.fullname}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {{\'APPLICATION_FULLNAME\' | translate}}\n
    \n
    \n {{chatVisitor.fullname}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_EMAIL\' | translate}}\n
    \n
    \n {{chatVisitor.email}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REMOTE_ADDRESS\' | translate}}\n
    \n
    \n {{chatVisitor.remote_address}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REFERER\' | translate}}\n
    \n
    \n {{chatVisitor.referer}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_BROWSER\' | translate}}\n
    \n
    \n {{chatVisitor.browser}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ENGINE\' | translate}}\n
    \n
    \n {{chatVisitor.engine}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_OS\' | translate}}\n
    \n
    \n {{chatVisitor.os}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_DEVICE\' | translate}}\n
    \n
    \n {{chatVisitor.device}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_COUNTRY\' | translate}}\n
    \n
    \n {{chatVisitor.country}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_REGION\' | translate}}\n
    \n
    \n {{chatVisitor.region}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_CITY\' | translate}}\n
    \n
    \n {{chatVisitor.city}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_LATITUDE\' | translate}}\n
    \n
    \n {{chatVisitor.latitude}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_LONGITUDE\' | translate}}\n
    \n
    \n {{chatVisitor.longitude}}\n
    \n
    \n
    \n
    \n {{\'APPLICATION_ARRIVAL_TIME\' | translate}}\n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/chat/timeline/list/list.html",'
    \n \n
    \n\n\n
    \n
    \n

    \n Timeline\n

    \n \n \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n {{event.name | uppercase}}\n at {{event.createdAt | date:\'yyyy-MM-dd HH:mm:ss\'}}\n
    \n
    \n \n
    \n
    \n
    \n \n {{event.MailRoom.subject ? event.MailRoom.subject + \' - \' : \'\'}}{{event.User.fullname}}\n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n\n'),a.put("app/chat/website/list/list.html",'\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_WEB_SITES\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_WEB_ADDRESS\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{chatWebsite.name}}{{chatWebsite.description}}{{chatWebsite.address}}\n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{\'MESSAGE_NO_AVAILABLE_WEBSITES\' | translate}}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'), @@ -26,9 +26,10 @@ a.put("app/mail/statistics/statistics.html",'\n
    \n \n
    \n\n\n
    \n
    \n

    \n Timeline\n

    \n \n \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n {{event.name | uppercase}}\n at {{event.createdAt | date:\'yyyy-MM-dd HH:mm:ss\'}}\n
    \n
    \n \n
    \n
    \n
    \n \n {{event.MailRoom.subject ? event.MailRoom.subject + \' - \' : \'\'}}{{event.User.fullname}}\n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n\n'),a.put("app/main/main.html",'\n\n\n\n
    \n
    \n\n
    \n\n \n
    \n
    \n \n\n \n
    \n
    \n\n \n \n
    \n \n\n
    \n
    \n \n\n \n \n
    \n
    \n \n\n
    \n\n\n\n\n\n\n\n\n\n\n\n'),a.put("app/main/template.queryBuilderView.html",'\n
    \n
    \n \n {{$select.selected.name | translate}}\n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n {{$select.selected.name | translate}}\n \n
    \n
    \n
    \n \n {{$select.selected.name | translate}}\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \n {{$select.selected.name | translate}}\n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/market/market.html",'
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n

    Our Integrations

    \n
    \n
    \n
    \n
    \n

    Zendesk Xenialab s.r.l

    \n Zendesk\n
    \n

    \n Allows your customer care to manage professional Asterisk call center solutions...\n

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

    SalesForce Xenialab s.r.l

    \n Salesforce\n
    \n

    \n xCALLY provides a new seamless CTI integration with Salesforce, CRM leader solution....\n

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

    Desk.com Xenialab s.r.l

    \n desk.com\n
    \n

    \n The new xCALLY – Desk Integration ensures a proper Case will be displayed on the....\n

    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n'),a.put("app/motionbar/motionbar.chat.html",'
    \n'),a.put("app/sound/list/list.html",'\n\n\n\n
    \n

    {{ \'APPLICATION_SOUNDS\' | translate }}

    \n
    \n
    \n
    \n
    \n \n \n {{\'APPLICATION_FILE_UPLOAD\' | translate}} \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_SELECT_FILES\' | translate}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Base drop zone\n
    \n
    \n \n \n {{\'APPLICATION_FILE_UPLOAD\' | translate}}\n \n \n \n \n {{\'APPLICATION_MULTI_FILE_UPLOAD\' | translate}}\n
    \n
    \n

    \n
    \n {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} wav, mp3, gsm, ogg.\n

    \n

    \n {{ \'MESSAGE_MAXIMUM_SOUND_UPLOAD_SIZE\' | translate }} 15 Mb.\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_UPLOAD_QUEUE\' | translate}}\n {{\'APPLICATION_QUEUE_LENGTH\' | translate}}: {{ uploader.queue.length }}\n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{\'APPLICATION_NAME\' | translate}}{{\'APPLICATION_SIZE\' | translate}}{{\'APPLICATION_PROGRESS\' | translate}}{{\'APPLICATION_STATUS\' | translate}}{{\'APPLICATION_MESSAGE\' | translate}}{{\'APPLICATION_ACTIONS\' | translate}}
    {{ item.file.name }}{{ item.file.size/1024/1024|number:2 }} MB\n
    \n
    \n
    \n
    \n \n \n \n \n \n {{item.responseMessage}}\n \n \n \n \n
    \n
    \n
    \n

    {{\'APPLICATION_UPLOAD_QUEUE_PROGRESS\' | translate}}:

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

    {{ \'MESSAGE_NO_SOUNDS\' | translate }}

    \n

    \n \n {{ \'MESSAGE_RETURN_HOME\' | translate }} \n {{ \'MESSAGE_OR_UPLOAD_SOUND_FILE\' | translate }}\n

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

    \n {{ sound.description || "Empty" }}\n

    \n

    \n \n \n \n

    \n
    \n
    \n
    \n
    \n\n'),a.put("app/sound/sound.html","\n
    \n\n"),a.put("app/square/odbc/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ODBCS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{odbc.name}}{{odbc.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_ODBCS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/square/odbc/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{odbc.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/square/odbc/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_ODBC\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/square/odbc/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ODBC\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'), a.put("app/square/project/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_PROJECTS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{project.name}}{{project.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_PROJECTS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/square/project/view/view.html",'\n\n
    \n
    \n
    \n
    \n
    \n\n\n'),a.put("app/square/project/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_PROJECT\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/team/list/list.html",'\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TEAMS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{team.name}}{{team.description}}\n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No teams available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/team/view/view.agents.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_AGENTS\' | translate}}\n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n'),a.put("app/team/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{team.name}}\n
    \n\n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/team/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}\n
    \n
    \n\n
    \n \n
    \n\n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n'),a.put("app/team/wizard/wizard.html",'\n\n\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TEAM\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/trigger/list/list.html",'\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRIGGERS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_CHANNEL\' | translate }}{{ \'APPLICATION_STATUS\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{Trigger.name}}{{Trigger.description}}{{Trigger.channel | capitalize}}\n \n \n \n {{ \'APPLICATION_EDIT\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No available triggers\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/trigger/view/view.html",'\n
    \n
    \n \n\n\n\n\n \n
    \n \n
    \n \n
    \n \n
    \n \n\n \n
    \n
    \n {{ trigger.name }}\n
    \n
    \n {{ trigger.description }}\n
    \n
    \n \n\n \n \n \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'), a.put("app/trigger/view/view.settings.html",'
    \n
    \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n \n\n
    \n
    \n
    \n \n {{ \'APPLICATION_CONDITIONS\' | translate }} \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_ACTIONS\' | translate }} \n
    \n
    \n
    \n \n
    \n
    \n\n \n
    \n
    \n
    \n
    \n
    \n\n'),a.put("app/trigger/wizard/wizard.html",'\n
    \n
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRIGGERS\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CHANNEL\' | translate }} \n
    \n
    \n
    \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONDITIONS\' | translate }} \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_ACTIONS\' | translate }} \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/trunk/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRUNKS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_HOST\' | translate }}{{ \'APPLICATION_CONTEXT\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{trunk.name}}{{trunk.host}}{{trunk.context}}{{trunk.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/trunk/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{trunk.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/trunk/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRUNK\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_TYPE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_DTMFMODE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_NAT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_QUALIFY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_ALLOW_CODEC\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_INSECURE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_CALLLIMIT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_LIMITONPEERS\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_DIRECTMEDIA\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_CALLCOUNTER\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_FROMDOMAIN\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_FROMUSER\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_OUTBOUNDPROXY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_USEREQPHONE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_TRUSTRPID\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_SENDRPID\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_ENCRYPTION\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_PORT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_TRUNK_TRANSPORT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_OTHER_FIELDS\' | translate }}\n \n
    \n \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'), -a.put("app/trunk/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRUNK\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n
    \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n \n
    \n \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/user/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_USERS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_FULLNAME\' | translate }}{{ \'APPLICATION_USERNAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_ROLE\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{user.fullname}}{{user.name}}{{user.email}}{{user.role}}\n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No users available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/user/view/view.account.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}\n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_SELECT_IMAGE\' | translate }} \n
    \n
    \n \n \n
    \n

    \n
    {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} jpg, png, jpeg.\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n {{ item.file.name }}\n \n \n {{ item.file.size/1024/1024|number:2 }} MB\n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/user/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{user.fullname}}\n
    \n
    \n {{user.role}}\n
    \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/user/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_USER\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_EMAIL\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n'), -a.put("app/variable/list/create.modal.html",'\n\n\n'),a.put("app/variable/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VARIABLES\' | translate }} \n
    \n
    \n \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{variable.name}}{{variable.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_VARIABLES_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/variable/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{variable.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/variable/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_VARIABLE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/context/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONTEXTS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{context.name}}{{context.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_CONTEXTS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/context/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{context.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/context/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONTEXT\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/context/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONTEXT\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/moh/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOHS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_PATH\' | translate }}{{ \'APPLICATION_SORT\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{moh.name}}{{moh.directory}}{{moh.sort | capitalize}}{{moh.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_MOHS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/moh/view/view.addFiles.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOH\' | translate }} {{ \'APPLICATION_ADD_FILES\' | translate }} \n
    \n
    \n
    \n
    \n

    Warning!

    \n

    \n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n

    \n
    \n
    \n\n \n
    \n \n \n {{$item.display_name}}\n \n {{sound.display_name}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n
    \n \n
    \n
    \n\n'), -a.put("app/voice/moh/view/view.audios.html",'
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_AUDIOS\' | translate}}\n
    \n \n
    \n
    \n
    \n

    Warning!

    \n

    \n {{ \'MESSAGE_FOLDER_DOES_NOT_EXIST\' | translate }}\n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_PREVIEW\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{audiofile}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_AUDIOFILES_AVAILABLE\' | translate }}\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/moh/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{moh.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/moh/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOH_CLASS\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(sort.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/moh/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOH_CLASS\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/queue/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUES\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_STRATEGY\' | translate }}{{ \'APPLICATION_CONTEXT\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{queue.name}}{{queue.description}}{{queue.strategy}}{{queue.context}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/queue/view/view.agents.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_AGENTS\' | translate}}\n
    \n
    \n
    \n

    Warning!

    \n

    \n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n

    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n'),a.put("app/voice/queue/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{queue.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/queue/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUE_SETTINGS\' | translate}}\n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n \n {{$select.selected.toUpperCase()}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_VOICE_MOH\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_TIMEOUT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_MAXLEN\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_RETRY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_WRAPUPTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_WEIGHT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_JOINEMPTY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_LEAVEWHENEMPTY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n
    \n
    \n
    \n
    \n \n
    \n \n \n {{$item.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n
    \n
    \n

    {{\'APPLICATION_SETTINGS\' | translate}}

    \n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_FREQUENCY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_MIN_ANNOUNCE_FREQUENCY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE_FREQUENCY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_RANDOM_PERIODIC_ANNOUNCE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_HOLDTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION_LIMIT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_REPORTHOLDTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n

    {{\'APPLICATION_SOUNDS\' | translate}}

    \n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_REPORTHOLD\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_YOUARENEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_THEREARE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_CALLSWAITING\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_HOLDTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_MINUTES\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_MINUTE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_SECONDS\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_THANKYOU\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_AUTOPAUSE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_RINGINUSE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_MEMBER_DELAY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_TIMEOUTRESTART\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_MONITOR_FORMAT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'), +a.put("app/trunk/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_TRUNK\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n
    \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n \n
    \n \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/update/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_UPDATES\' | translate }} \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{ \'APPLICATION_MESSAGE\' | translate }}{{ \'APPLICATION_DATE\' | translate }}
    \n {{update.message | truncate: 30 : \'...\': true}}\n \n \n \n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n
    \n No agents available\n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/update/view/view.account.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}\n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_SELECT_IMAGE\' | translate }} \n
    \n
    \n \n \n
    \n

    \n
    {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} jpg, png, jpeg.\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n {{ item.file.name }}\n \n \n {{ item.file.size/1024/1024|number:2 }} MB\n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/update/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n\n \n
    \n
    \n {{update.fullname}}\n
    \n
    \n {{update.role}}\n
    \n
    \n \n\n \n \n \n
    \n \n
    \n \n\n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/update/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_UPDATE\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_EMAIL\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n
    \n \n \n \n \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n\n \n
    \n\n \n \n \n\n \n
    \n \n \n {{$item}}\n \n {{transport}}\n \n \n \n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n \n
    \n \n\n \n \n \n\n \n \n\n \n\n \n \n \n\n \n
    \n \n \n {{$item}}\n \n {{allow}}\n \n \n \n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n \n
    \n \n\n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n'), +a.put("app/user/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_USERS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_FULLNAME\' | translate }}{{ \'APPLICATION_USERNAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_ROLE\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{user.fullname}}{{user.name}}{{user.email}}{{user.role}}\n \n {{ \'APPLICATION_PROFILE\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No users available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/user/view/view.account.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}\n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_SELECT_IMAGE\' | translate }} \n
    \n
    \n \n \n
    \n

    \n
    {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} jpg, png, jpeg.\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n {{ item.file.name }}\n \n \n {{ item.file.size/1024/1024|number:2 }} MB\n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/user/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{user.fullname}}\n
    \n
    \n {{user.role}}\n
    \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/user/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_USER\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_EMAIL\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/variable/list/create.modal.html",'\n\n\n'),a.put("app/variable/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VARIABLES\' | translate }} \n
    \n
    \n \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{variable.name}}{{variable.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_VARIABLES_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'), +a.put("app/variable/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{variable.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/variable/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_VARIABLE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/context/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONTEXTS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{context.name}}{{context.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_CONTEXTS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/context/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{context.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/context/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONTEXT\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/context/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONTEXT\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/moh/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOHS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_PATH\' | translate }}{{ \'APPLICATION_SORT\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{moh.name}}{{moh.directory}}{{moh.sort | capitalize}}{{moh.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_MOHS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/moh/view/view.addFiles.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOH\' | translate }} {{ \'APPLICATION_ADD_FILES\' | translate }} \n
    \n
    \n
    \n
    \n

    Warning!

    \n

    \n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n

    \n
    \n
    \n\n \n
    \n \n \n {{$item.display_name}}\n \n {{sound.display_name}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/moh/view/view.audios.html",'
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_AUDIOS\' | translate}}\n
    \n \n
    \n
    \n
    \n

    Warning!

    \n

    \n {{ \'MESSAGE_FOLDER_DOES_NOT_EXIST\' | translate }}\n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_PREVIEW\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{audiofile}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_AUDIOFILES_AVAILABLE\' | translate }}\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/moh/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{moh.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/moh/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOH_CLASS\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(sort.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n'), +a.put("app/voice/moh/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_MOH_CLASS\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/queue/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUES\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_STRATEGY\' | translate }}{{ \'APPLICATION_CONTEXT\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{queue.name}}{{queue.description}}{{queue.strategy}}{{queue.context}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/queue/view/view.agents.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_AGENTS\' | translate}}\n
    \n
    \n
    \n

    Warning!

    \n

    \n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n

    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n'),a.put("app/voice/queue/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{queue.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/queue/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUE_SETTINGS\' | translate}}\n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n \n {{$select.selected.toUpperCase()}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_VOICE_MOH\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_TIMEOUT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_MAXLEN\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_RETRY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_WRAPUPTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_WEIGHT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_JOINEMPTY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$item}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_LEAVEWHENEMPTY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n
    \n
    \n
    \n
    \n \n
    \n \n \n {{$item.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n
    \n
    \n

    {{\'APPLICATION_SETTINGS\' | translate}}

    \n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_FREQUENCY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_MIN_ANNOUNCE_FREQUENCY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE_FREQUENCY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_RANDOM_PERIODIC_ANNOUNCE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_HOLDTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION_LIMIT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_REPORTHOLDTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n

    {{\'APPLICATION_SOUNDS\' | translate}}

    \n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_REPORTHOLD\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_YOUARENEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_THEREARE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_CALLSWAITING\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_HOLDTIME\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_MINUTES\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_MINUTE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_SECONDS\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_THANKYOU\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_AUTOPAUSE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_RINGINUSE\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_QUEUE_MEMBER_DELAY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_TIMEOUTRESTART\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_MONITOR_FORMAT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'), a.put("app/voice/queue/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_QUEUE\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.toUpperCase()}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/realtime/view/agent/agent.html",'\n
    \n
    \n
    Selection from a modal: {{ selected }}
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    {{ \'APPLICATION_AGENT\' | translate }}{{ \'APPLICATION_QUEUE\' | translate }}{{ \'APPLICATION_LAST_LOGIN\' | translate }}{{ \'APPLICATION_LAST_PAUSE\' | translate }}{{ \'APPLICATION_LAST_INCOMING_CALL\' | translate }}{{ \'APPLICATION_SERVED\' | translate }}
    {{group.membername}}\n \n \n \n \n {{queue.queue}}\n \n \n \n \n \n {{queue.paused ? \'(\' + queue.reason + \')\' : \'\'}}\n \n \n \n {{queue.callstaken}}\n \n \n \n \n \n \n \n
    \n \n \n \n \n {{queue.queue}}\n \n \n \n \n \n {{queue.paused ? \'(\' + queue.reason + \')\' : \'\'}}\n \n \n \n {{queue.callstaken}}\n \n \n \n
    \n \n \n \n \n {{queue.queue}}\n \n \n \n \n \n {{queue.paused ? \'(\' + queue.reason + \')\' : \'\'}}\n \n \n \n {{queue.callstaken}}\n \n \n \n
    \n No agents available\n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n\n
    \n\n'),a.put("app/voice/realtime/view/agent/pause.modal.html",'\n\n\n'),a.put("app/voice/realtime/view/agent/queue.modal.add.html",'\n\n\n'),a.put("app/voice/realtime/view/agent/queue.modal.remove.html",'\n\n\n'),a.put("app/voice/realtime/view/areport/report.html",'\n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_UNIQUEID\' | translate }}{{ \'APPLICATION_QUEUE\' | translate }}{{ \'APPLICATION_AGENT\' | translate }}{{ \'APPLICATION_CALLER\' | translate }}{{ \'APPLICATION_CALLED_AT\' | translate }}{{ \'APPLICATION_CONNECTED_AT\' | translate }}{{ \'APPLICATION_COMPLETED_AT\' | translate }}{{ \'APPLICATION_REASON\' | translate }}{{ \'APPLICATION_HOLDTIME\' | translate }}{{ \'APPLICATION_TALKTIME\' | translate }}
    \n {{agent.uniqueid}}{{agent.queue}}{{agent.destcalleridname ? agent.destcalleridname + \' [\' + agent.membername + \']\' : agent.membername }}{{agent.calleridname ? agent.calleridname + \' [\' + agent.calleridnum + \']\' : agent.calleridnum }}\n \n \n \n \n \n \n {{agent.reason | uppercase}}\n {{agent.holdtime || 0 | VoiceRealtimeViewAgentReportFilter | date:\'HH:mm:ss\'}}{{agent.talktime || 0 | VoiceRealtimeViewAgentReportFilter | date:\'HH:mm:ss\'}}
    \n No agents available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n
    \n\n'),a.put("app/voice/realtime/view/qreport/report.html",'\n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_UNIQUEID\' | translate }}{{ \'APPLICATION_QUEUE\' | translate }}{{ \'APPLICATION_AGENT\' | translate }}{{ \'APPLICATION_CALLER\' | translate }}{{ \'APPLICATION_CALLED_AT\' | translate }}{{ \'APPLICATION_CONNECTED_AT\' | translate }}{{ \'APPLICATION_ABANDONED_AT\' | translate }}
    \n {{queue.uniqueid}}{{queue.queue}}{{queue.connectedlinename ? queue.connectedlinename + \' [\' + queue.connectedlinenum + \']\' : queue.connectedlinenum }}{{queue.calleridname ? queue.calleridname + \' [\' + queue.calleridnum + \']\' : queue.calleridnum }}\n \n \n \n \n \n
    \n No queues available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n
    \n\n'), a.put("app/voice/realtime/view/queue/pause.modal.html",'\n\n\n'),a.put("app/voice/realtime/view/queue/queue.add.modal.html",'\n\n\n'),a.put("app/voice/realtime/view/queue/queue.html",'\n
    \n
    \n
    Selection from a modal: {{ selected }}
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    {{ \'APPLICATION_QUEUE\' | translate }}{{ \'APPLICATION_AGENT\' | translate }}{{ \'APPLICATION_LAST_LOGIN\' | translate }}{{ \'APPLICATION_LAST_PAUSE\' | translate }}{{ \'APPLICATION_LAST_INCOMING_CALL\' | translate }}{{ \'APPLICATION_SERVED\' | translate }}
    {{group.queue}}\n \n \n \n \n {{agent.membername}}\n \n \n \n \n \n {{agent.paused ? \'(\' + agent.reason + \')\' : \'\'}}\n \n \n \n {{agent.callstaken}}\n \n \n \n \n \n \n \n
    \n \n \n \n \n {{agent.membername}}\n \n \n \n \n \n {{agent.paused ? \'(\' + agent.reason + \')\' : \'\'}}\n \n \n \n {{agent.callstaken}}\n \n \n \n
    \n \n \n \n \n {{agent.membername}}\n \n \n \n \n \n {{agent.paused ? \'(\' + agent.reason + \')\' : \'\'}}\n \n \n \n {{agent.callstaken}}\n \n \n \n
    \n No agents available\n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n\n
    \n\n'),a.put("app/voice/realtime/view/queue/queue.modal.add.html",'\n\n\n'),a.put("app/voice/realtime/view/queue/queue.modal.remove.html",'\n\n\n'),a.put("app/voice/realtime/view/queue/queue.remove.modal.html",'\n\n\n'),a.put("app/voice/realtime/view/view.html",'\n
    \n
    \n \n\n
    \n \n
    \n
    \n
    \n
    \n\n'),a.put("app/voice/route/inbound/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_DID\' | translate }}{{ \'APPLICATION_CONTEXT\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{route.exten}}{{route.context}}{{route.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_ROUTES_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'), a.put("app/voice/route/inbound/view/view.application.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_NEW_APPLICATION\' | translate }} WIZARD \n
    \n
    \n
    \n \n
    \n {{(main.app | capitalize) || \'Application\'}}\n
    \n \n
    \n \n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$translate.instant($item.name)}}\n \n {{$translate.instant(queueOpt.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n
    \n \n
    \n \n \n {{$select.selected.display_name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(audioOpt.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n \n \n\n
    \n
    \n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(hangupCause.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n \n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(intType.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n \n
    \n
    \n
    to
    \n
    \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(weekDay.name)}}\n \n \n to\n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(weekDay.name)}}\n \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$select.selected}}\n \n {{monthDay}}\n \n \n to\n \n {{$select.selected}}\n \n {{monthDay}}\n \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(month.name)}}\n \n \n to\n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(month.name)}}\n \n \n
    \n
    \n \n
    \n\n
    \n\n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(interval.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'), @@ -38,6 +39,6 @@ a.put("app/voice/route/internal/view/view.applicationSettings.html",'\n
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_ACTIONS\' | translate}}\n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{ \'APPLICATION_APPLICATION\' | translate }}{{ \'APPLICATION_ARGUMENTS\' | translate }}{{ \'APPLICATION_TIME\' | translate }}
    {{application.app}}{{application.appdata}}{{application.interval}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate }}\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/route/internal/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{route.exten}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/route/internal/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_INTERNAL\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/route/internal/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTE\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/route/outbound/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_PATTERN\' | translate }}{{ \'APPLICATION_CONTEXT\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{route.exten}}{{route.context}}{{route.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_ROUTES_AVAILABLE\' | translate }}\n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/route/outbound/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{route.exten}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/route/outbound/view/view.route.html",'
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_NEW_ROUTE\' | translate }} WIZARD \n
    \n
    \n
    \n
    \n {{(main.app | capitalize) || \'Application\'}}\n
    \n \n \n
    \n \n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n \n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(intType.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n \n
    \n
    \n
    to
    \n
    \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(weekDay.name)}}\n \n \n to\n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(weekDay.name)}}\n \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$select.selected}}\n \n {{monthDay}}\n \n \n to\n \n {{$select.selected}}\n \n {{monthDay}}\n \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(month.name)}}\n \n \n to\n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(month.name)}}\n \n \n
    \n
    \n \n
    \n\n
    \n\n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(interval.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n\n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'), a.put("app/voice/route/outbound/view/view.routeSettings.html",'\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_APPLICATION_SETTINGS\' | translate }} WIZARD \n
    \n
    \n
    \n \n
    \n {{(main.app | capitalize) || \'Application\'}}\n
    \n \n
    \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n \n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(intType.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n
    \n \n
    \n \n
    \n
    \n
    to
    \n
    \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(weekDay.name)}}\n \n \n to\n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(weekDay.name)}}\n \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$select.selected}}\n \n {{monthDay}}\n \n \n to\n \n {{$select.selected}}\n \n {{monthDay}}\n \n \n
    \n
    \n \n\n \n
    \n \n
    \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(month.name)}}\n \n \n to\n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(month.name)}}\n \n \n
    \n
    \n \n
    \n\n
    \n\n \n
    \n \n \n {{$translate.instant($select.selected.name)}}\n \n {{$translate.instant(interval.name)}}\n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n
    \n \n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/route/outbound/view/view.routes.html",'
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_ACTIONS\' | translate}}\n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{ \'APPLICATION_APPLICATION\' | translate }}{{ \'APPLICATION_CONTEXT\' | translate }}{{ \'APPLICATION_ARGUMENTS\' | translate }}{{ \'APPLICATION_TIME\' | translate }}
    {{application.app}}{{application.context}}{{application.appdata}}{{application.interval}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_ROUTES_AVAILABLE\' | translate }}\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/route/outbound/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_OUTBOUND\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/route/outbound/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTE\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/voice/voicemail/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VOICEMAILS\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_MAILBOX\' | translate }}{{ \'APPLICATION_FULLNAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{voicemail.mailbox}}{{voicemail.fullname}}{{voicemail.email}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_VOICEMAILS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/voice/voicemail/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{voicemail.mailbox}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'), a.put("app/voice/voicemail/view/view.messages.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_MESSAGES\' | translate}}\n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{ \'APPLICATION_CALLERID\' | translate }}{{ \'APPLICATION_DATE\' | translate }}{{ \'APPLICATION_DURATION\' | translate }}{{ \'APPLICATION_RECORDING\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{message.callerid}}{{returnMessageDate(message.stamp)}}{{returnDuration(message.duration) | date: \'mm:ss\'}}\n \n \n \n {{ \'APPLICATION_DOWNLOAD\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No messages available\n
    \n \n
    \n
    \n
    \n
    \n'),a.put("app/voice/voicemail/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_VOICEMAIL\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n \n \n \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/voice/voicemail/wizard/wizard.html",'
    \n \n \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_VOICEMAIL\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n \n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n'),a.put("app/yourdashboard/list/create.modal.html",'\n\n\n'),a.put("app/yourdashboard/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }} \n
    \n
    \n \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{dashboard.name}}{{dashboard.description}}\n \n {{ \'APPLICATION_VIEW\' | translate}}\n \n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n {{ \'MESSAGE_NO_DASHBOARDS_AVAILABLE\' | translate }}\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/yourdashboard/show/show.html",'
    \n \n
    \n'),a.put("app/yourdashboard/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{dashboard.name}}\n
    \n \n
    \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/yourdashboard/view/view.settings.html",'
    \n
    \n
    \n
    \n
    \n \n {{ \'APPLICATION_DASHBOARD\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n\n \n
    \n
    \n \n
    \n \n\n \n
    \n
    \n \n
    \n \n\n \n
    \n
    \n \n
    \n \n\n \n
    \n \n \n
    \n \n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/list/list.html",'\n
    \n
    \n \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ZENDESK\' | translate }} \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    {{ \'APPLICATION_NAME\' | translate }}{{ \'APPLICATION_EMAIL\' | translate }}{{ \'APPLICATION_REMOTE_ADDRESS\' | translate }}{{ \'APPLICATION_DESCRIPTION\' | translate }}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{account.name}}{{account.username}}{{account.remoteUri}}{{account.description}}\n \n {{ \'APPLICATION_EDIT\' | translate }}\n \n \n {{ \'APPLICATION_CHECK_CONNECTION\' | translate }}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No account available\n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n\n'), -a.put("app/zendesk/view/view.account.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_ACCOUNT\' | translate}}\n
    \n \n
    \n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.configuration.html",'
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/zendesk/view/view.configurationSettings.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_CONFIGURATION\' | translate}}\n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n All following fields will be join by blank space:\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n\n
    \n \n \n
    \n\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.configurations.html",'
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_CONFIGURATIONS\' | translate}}\n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{\'APPLICATION_NAME\' | translate}}{{\'APPLICATION_DESCRIPTION\' | translate}}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{configuration.name}}{{configuration.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No configuration available\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.field.html",'
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CUSTOM_FIELD\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_CUSTOM_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/zendesk/view/view.fieldSettings.html",'
    \n
    \n\n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CUSTOM_FIELD\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/zendesk/view/view.fields.html",'
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_CUSTOM_FIELDS\' | translate}}\n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{\'APPLICATION_NAME\' | translate}}{{\'APPLICATION_CUSTOM_FIELD_ID\' | translate}}{{\'APPLICATION_DESCRIPTION\' | translate}}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{field.name}}{{field.custom_field_id}}{{field.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No custom fields available\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{account.name}}\n
    \n
    \n {{account.remoteUri}}\n
    \n
    \n \n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/zendesk/wizard/wizard.html",'\n\n\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n\n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n\n
    \n\n
    \n
    \n \n
    \n
    \n\n'), -a.put("components/footer/footer.html",'\n\n\n'),a.put("components/header/header.html",'\n
    \n \n \n \n \n \n
    \n
    \n \n \n \n \n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n \n
    \n\n'),a.put("components/modal/delete.html",'\n\n\n'),a.put("components/quickSidebar/modal/add.html",'\n\n\n\n\n'),a.put("components/quickSidebar/modal/close.html",'\n\n\n'),a.put("components/quickSidebar/quickSidebar.html",'
    \n \n
    \n'),a.put("components/sidebar/sidebar.html",'\n'); +a.put("app/zendesk/view/view.account.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_ACCOUNT\' | translate}}\n
    \n \n
    \n
    \n
    \n \n
    \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n
    \n \n\n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.configuration.html",'
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/zendesk/view/view.configurationSettings.html",'
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_CONFIGURATION\' | translate}}\n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n All following fields will be join by blank space:\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n All following fields will be join by new line:\n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n {{$select.selected | ucfirst}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n {{$select.selected.name}}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.configurations.html",'
    \n
    \n
    \n
    \n
    \n
    \n \n {{\'APPLICATION_CONFIGURATIONS\' | translate}}\n
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{\'APPLICATION_NAME\' | translate}}{{\'APPLICATION_DESCRIPTION\' | translate}}{{ \'APPLICATION_ACTIONS\' | translate }}
    {{configuration.name}}{{configuration.description}}\n \n {{ \'APPLICATION_SETTINGS\' | translate}}\n \n \n {{ \'APPLICATION_DELETE\' | translate }}\n \n
    \n No configuration available\n
    \n \n
    \n
    \n
    \n
    \n
    \n'),a.put("app/zendesk/view/view.html",'\n
    \n
    \n \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n \n
    \n
    \n {{account.name}}\n
    \n
    \n {{account.remoteUri}}\n
    \n
    \n \n \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n\n'),a.put("app/zendesk/wizard/wizard.html",'\n\n\n\n\n
    \n
    \n \n
    \n
    \n
    \n \n {{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n {{$select.selected | capitalize}}\n \n
    \n
    \n
    \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n
    \n \n \n \n {{\'APPLICATION_WARNING\' | translate}}! {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n \n
    \n \n\n \n\n
    \n
    \n\n \n

    {{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}

    \n \n
    \n\n
    \n\n
    \n
    \n \n
    \n
    \n\n'),a.put("components/footer/footer.html",'\n\n\n'),a.put("components/header/header.html",'\n
    \n \n \n \n \n \n
    \n
    \n \n \n \n \n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n \n
    \n\n'), +a.put("components/modal/delete.html",'\n\n\n'),a.put("components/quickSidebar/modal/add.html",'\n\n\n\n\n'),a.put("components/quickSidebar/modal/close.html",'\n\n\n'),a.put("components/quickSidebar/quickSidebar.html",'
    \n \n
    \n'),a.put("components/sidebar/sidebar.html",'\n'); }]); \ No newline at end of file diff --git a/public/assets/languages/locale-en_EN.json b/public/assets/languages/locale-en_EN.json index cebfebb..2a8ee1c 100644 --- a/public/assets/languages/locale-en_EN.json +++ b/public/assets/languages/locale-en_EN.json @@ -10,6 +10,7 @@ "APPLICATION_VIEW_MORE": "VIEW MORE", "APPLICATION_DASHBOARD_ABANDONED": "Abandoned", "APPLICATION_DASHBOARD_COMPLETED": "Completed", + "APPLICATION_UPDATES": "Updates", "APPLICATION_DASHBOARD_WAIT": "Wait", "MESSAGE_NO_CHATS_FOUND": "No Chats Found", "APPLICATION_DASHBOARD_ACTIVE": "Active", diff --git a/public/assets/languages/locale-it.json b/public/assets/languages/locale-it.json index b720c8f..dec1242 100644 --- a/public/assets/languages/locale-it.json +++ b/public/assets/languages/locale-it.json @@ -10,6 +10,7 @@ "APPLICATION_CONFIRM_CLOSE": "Conferm Chiusura", "APPLICATION_DASHBOARD_ABANDONED": "Abbandonate", "APPLICATION_DASHBOARD_COMPLETED": "Completate", + "APPLICATION_UPDATES": "Aggiornamenti", "APPLICATION_DASHBOARD_WAIT": "In attesa", "MESSAGE_NO_CHATS_FOUND": "Nessuna Chats Trovata", "MESSAGE_NO_MESSAGES_FOUND": "Nessun messaggio trovato", diff --git a/public/index.html b/public/index.html index 4ca10eb..35c4c7f 100644 --- a/public/index.html +++ b/public/index.html @@ -61,7 +61,7 @@ - + diff --git a/release-notes/changelog_0.0.1.txt b/release-notes/changelog_0.0.2.txt similarity index 76% rename from release-notes/changelog_0.0.1.txt rename to release-notes/changelog_0.0.2.txt index 65dbf6e..ffcf49d 100644 --- a/release-notes/changelog_0.0.1.txt +++ b/release-notes/changelog_0.0.2.txt @@ -1,5 +1,24 @@ # xCALLY MOTION Changelog +- * bc0f91f - 2015-12-04: Configuration Database +- * 3c1b3ca - 2015-12-04: test commit 4 +- * 8f3a0c2 - 2015-12-04: test commit 2 +- * 0da8462 - 2015-12-04: test commit +- * 45682db - 2015-12-04: test commit - 4 +- * ae7dcac - 2015-12-04: test commit - 3 +- * 1c33ab8 - 2015-12-04: new version +- * 6a8c8f6 - 2015-12-04: Change remote git +- * 300f7f0 - 2015-12-04: test commit with tag - 2 +- * 430fe66 - 2015-12-04: test commit with tag +- * ff9311f - 2015-12-04: server sie routres.js +- * 80061e5 - 2015-12-04: package.son +- * 05951bf - 2015-12-04: server side models update +- * d38ad70 - 2015-12-04: server config socket.io +- * aaa0955 - 2015-12-04: server side API update +- * 367be9b - 2015-12-04: client side component sidebar +- * 7995de6 - 2015-12-04: client side languages +- * 1605e5a - 2015-12-04: server side app update +- * 69767ee - 2015-12-03: Zendesk: add body configuration, remove custom fields section - * 06df96e - 2015-12-03: init version package.son - * de9faa6 - 2015-12-03: Completed base structure for mail and fax automations; Added bulk destroy for triggers and automations list. - * 16b99bf - 2015-12-03: server side app.js diff --git a/server/api/dashboard/dashboard.controller.js b/server/api/dashboard/dashboard.controller.js index fd7df07..986e3f4 100644 --- a/server/api/dashboard/dashboard.controller.js +++ b/server/api/dashboard/dashboard.controller.js @@ -53,7 +53,7 @@ exports.index = function(req, res) { var next_page = total_pages > (query.offset + 1) ? util.format('%s://%s%s?page=%d', req.protocol, req.headers.host, req.baseUrl, page + 1) : null; var previous_page = page > 0 ? util.format('%s://%s%s?page=%d', req.protocol, req.headers.host, req.baseUrl, page - 1) : null; - res.status(200).send({ + return res.status(200).send({ count: result.count, rows: result.rows, next_page: next_page, @@ -63,7 +63,7 @@ exports.index = function(req, res) { }) .catch(function(err) { - res.status(500).send({ + return res.status(500).send({ error: 'Something blew up!' }); }); diff --git a/server/api/zendesk_text/index.js b/server/api/update/index.js similarity index 79% rename from server/api/zendesk_text/index.js rename to server/api/update/index.js index ebf7f93..4c87e43 100644 --- a/server/api/zendesk_text/index.js +++ b/server/api/update/index.js @@ -1,7 +1,7 @@ 'use strict'; var express = require('express'); -var controller = require('./zendesk_text.controller'); +var controller = require('./update.controller'); var router = express.Router(); diff --git a/server/api/update/update.controller.js b/server/api/update/update.controller.js new file mode 100644 index 0000000..03837b5 --- /dev/null +++ b/server/api/update/update.controller.js @@ -0,0 +1,135 @@ +'use strict'; + +var _ = require('lodash'); +var path = require("path"); +var config = require('../../config/environment'); + +var git = require('simple-git')(path.join(config.root, '.git')); + +var Update = require('../../models').Update; + +// Get list of updates +exports.index = function(req, res) { + + git + .log(function(err, log) { + if (err) { + return handleError(res, err); + } + + log.all = _.take(log.all, 10); + + return res.status(200).send(log); + }); + + // git + // .fetch(function(err, fetch) { + // if (err) { + // return handleError(res, err); + // } + // console.log('fetch', fetch); + // return res.status(200).send(fetch); + // }) + + // git + // .tags(function(err, tags) { + // if (err) { + // return handleError(res, err); + // } + // + // return res.status(200).send(tags); + // }); + // Update + // .findAll() + // .then(function(updates) { + // return res.status(200).send(updates); + // }) + // .catch(function(err) { + // return handleError(res, err); + // }); +}; + +// Get a single update +exports.show = function(req, res) { + Update + .findById(req.params.id) + .then(function(update) { + if (!update) { + return res.sendStatus(404); + } + return res.send(update); + }) + .catch(function(err) { + return handleError(res, err); + }); +}; + +// Creates a new update in the DB. +exports.create = function(req, res) { + Update + .create(req.body) + .then(function(update) { + return res.status(201).send(update); + }) + .catch(function(err) { + return handleError(res, err); + }); +}; + +// Updates an existing update in the DB. +exports.update = function(req, res) { + if (req.body.id) { + delete req.body.id; + } + Update + .find({ + where: { + id: req.params.id + } + }) + .then(function(update) { + if (!update) { + return res.sendStatus(404); + } + var updated = _.merge(update, req.body); + updated.save() + .then(function() { + return res.status(200).send(update); + }) + .catch(function(err) { + return handleError(res, err); + }); + }) + .catch(function(err) { + return handleError(res, err); + }); +}; + +// Deletes a update from the DB. +exports.destroy = function(req, res) { + Update + .find({ + where: { + id: req.params.id + } + }) + .then(function(update) { + if (!update) { + return res.sendStatus(404); + } + update.destroy() + .then(function() { + return res.sendStatus(204); + }) + .catch(function(err) { + return handleError(res, err); + }); + }) + .catch(function(err) { + return handleError(res, err); + }); +}; + +function handleError(res, err) { + return res.status(500).send(err); +} diff --git a/server/api/update/update.js b/server/api/update/update.js new file mode 100644 index 0000000..6333030 --- /dev/null +++ b/server/api/update/update.js @@ -0,0 +1,11 @@ +'use strict'; + +module.exports = function(sequelize, DataTypes) { + + var Update = sequelize.define('Update', { + name: DataTypes.STRING, + description: DataTypes.STRING + }); + + return Update; +}; diff --git a/server/api/zendesk_text/zendesk_text.socket.js b/server/api/update/update.socket.js similarity index 53% rename from server/api/zendesk_text/zendesk_text.socket.js rename to server/api/update/update.socket.js index 8573679..149d026 100644 --- a/server/api/zendesk_text/zendesk_text.socket.js +++ b/server/api/update/update.socket.js @@ -4,21 +4,21 @@ 'use strict'; -var ZendeskText = require('../../models').ZendeskText; +var Update = require('../../models').Update; exports.register = function(socket) { - ZendeskText.afterCreate(function (doc) { + Update.afterCreate(function (doc) { onSave(socket, doc); }); - ZendeskText.afterDestroy(function (doc) { + Update.afterDestroy(function (doc) { onRemove(socket, doc); }); } function onSave(socket, doc, cb) { - socket.emit('zendesk_text:save', doc); + socket.emit('update:save', doc); } function onRemove(socket, doc, cb) { - socket.emit('zendesk_text:remove', doc); + socket.emit('update:remove', doc); } diff --git a/server/api/zendesk_text/zendesk_text.spec.js b/server/api/update/update.spec.js similarity index 82% rename from server/api/zendesk_text/zendesk_text.spec.js rename to server/api/update/update.spec.js index 5c0d88e..21276e3 100644 --- a/server/api/zendesk_text/zendesk_text.spec.js +++ b/server/api/update/update.spec.js @@ -4,11 +4,11 @@ var should = require('should'); var app = require('../../app'); var request = require('supertest'); -describe('GET /api/zendesk/texts', function() { +describe('GET /api/updates', function() { it('should respond with JSON array', function(done) { request(app) - .get('/api/zendesk/texts') + .get('/api/updates') .expect(200) .expect('Content-Type', /json/) .end(function(err, res) { diff --git a/server/api/zendesk_account/index.js b/server/api/zendesk_account/index.js index 1f98bbc..d64cd4a 100644 --- a/server/api/zendesk_account/index.js +++ b/server/api/zendesk_account/index.js @@ -9,6 +9,7 @@ var router = express.Router(); router.get('/', auth.isAuthenticated(), controller.index); router.get('/:id', auth.isAuthenticated(), controller.show); router.get('/:id/check', auth.isAuthenticated(), controller.checkAccount); +router.get('/:id/fields', auth.isAuthenticated(), controller.getFields); router.post('/validate/:field', auth.isAuthenticated(), controller.zendeskValidation); router.post('/', auth.isAuthenticated(), controller.create); router.put('/:id', auth.isAuthenticated(), controller.update); diff --git a/server/api/zendesk_account/zendesk_account.controller.js b/server/api/zendesk_account/zendesk_account.controller.js index 2c7ba7a..2cac790 100644 --- a/server/api/zendesk_account/zendesk_account.controller.js +++ b/server/api/zendesk_account/zendesk_account.controller.js @@ -220,6 +220,34 @@ exports.checkAccount = function(req, res) { }); }; +exports.getFields = function(req, res) { + ZendeskAccount + .findById(req.params.id) + .then(function(account) { + var accountZendesk = { + username: account.username, + remoteUri: account.remoteUri, + // debug: true + }; + if (account.authType === 'password') { + accountZendesk.password = account.password; + } else if (account.authType === 'token') { + accountZendesk.token = account.token; + } + var client = zendesk.createClient(accountZendesk); + client.ticketfields.list(function(err, res2, result) { + if (err) { + console.error(err); + return handleError(res, err); + } + return res.status(200).send(result); + }); + }) + .catch(function(err) { + return handleError(res, err); + }); +} + function handleError(res, err) { return res.status(500).send(err); } diff --git a/server/api/zendesk_configuration/index.js b/server/api/zendesk_configuration/index.js index 95fb00a..487c2d0 100644 --- a/server/api/zendesk_configuration/index.js +++ b/server/api/zendesk_configuration/index.js @@ -10,6 +10,7 @@ router.get('/:id', controller.show); router.post('/', controller.create); router.put('/:id', controller.update); router.post('/:id/subject', controller.addSubject); +router.post('/:id/description', controller.addDescription); router.patch('/:id', controller.update); router.delete('/:id', controller.destroy); diff --git a/server/api/zendesk_configuration/zendesk_configuration.controller.js b/server/api/zendesk_configuration/zendesk_configuration.controller.js index 04c2a16..331497a 100644 --- a/server/api/zendesk_configuration/zendesk_configuration.controller.js +++ b/server/api/zendesk_configuration/zendesk_configuration.controller.js @@ -2,7 +2,7 @@ var _ = require('lodash'); var ZendeskConfiguration = require('../../models').ZendeskConfiguration; -var ZendeskText = require('../../models').ZendeskText; +var ZendeskField = require('../../models').ZendeskField; // Get list of zendesk_configurations exports.index = function(req, res) { @@ -26,8 +26,11 @@ exports.show = function(req, res) { id: req.params.id }, include: [{ - model: ZendeskText, + model: ZendeskField, as: 'Subject' + }, { + model: ZendeskField, + as: 'Description' }] }) .then(function(zendesk_configuration) { @@ -107,11 +110,36 @@ exports.addSubject = function(req, res, next) { if (!configuration) { return res.sendStatus(500); } - ZendeskText + ZendeskField .create(req.body) - .then(function(text) { - configuration.addSubject(text); - return res.status(200).send(text); + .then(function(field) { + configuration.addSubject(field); + return res.status(200).send(field); + }) + .catch(function(err) { + return handleError(res, err); + // return next(err); + }); + }) + .catch(function(err) { + // return next(err); + return handleError(res, err); + }); +}; + +exports.addDescription = function(req, res, next) { + // console.log(req.params); + ZendeskConfiguration + .findById(req.params.id) + .then(function(configuration) { + if (!configuration) { + return res.sendStatus(500); + } + ZendeskField + .create(req.body) + .then(function(field) { + configuration.addDescription(field); + return res.status(200).send(field); }) .catch(function(err) { return handleError(res, err); diff --git a/server/api/zendesk_field/index.js b/server/api/zendesk_field/index.js index eb2c89e..76f5c48 100644 --- a/server/api/zendesk_field/index.js +++ b/server/api/zendesk_field/index.js @@ -1,15 +1,12 @@ 'use strict'; var express = require('express'); -var auth = require('../../auth/auth.service'); - var controller = require('./zendesk_field.controller'); var router = express.Router(); router.get('/', controller.index); router.get('/:id', controller.show); -router.post('/validate/:field/:accountId', auth.isAuthenticated(), controller.zendeskValidation); router.post('/', controller.create); router.put('/:id', controller.update); router.patch('/:id', controller.update); diff --git a/server/api/zendesk_field/zendesk_field.controller.js b/server/api/zendesk_field/zendesk_field.controller.js index accd9c4..48d0c38 100644 --- a/server/api/zendesk_field/zendesk_field.controller.js +++ b/server/api/zendesk_field/zendesk_field.controller.js @@ -6,9 +6,7 @@ var ZendeskField = require('../../models').ZendeskField; // Get list of zendesk_fields exports.index = function(req, res) { ZendeskField - .findAll({ - where: req.query - }) + .findAll() .then(function(zendesk_fields) { return res.status(200).send(zendesk_fields); }) @@ -90,32 +88,6 @@ exports.destroy = function(req, res) { }); }; -exports.zendeskValidation = function(req, res) { - var where = {}; - where[req.params.field] = req.body.value; - where.ZendeskAccountId = req.params.accountId; - ZendeskField - .findAndCountAll({ - where: where - }) - .then(function(result) { - if (result.count) { - return res.status(200).send({ - isValid: false, - value: req.body.value - }); - } - return res.status(200).send({ - isValid: true, - value: req.body.value - }); - }) - .catch(function(err) { - return handleError(res, err); - }); - -}; - function handleError(res, err) { return res.status(500).send(err); } diff --git a/server/api/zendesk_field/zendesk_field.socket.js b/server/api/zendesk_field/zendesk_field.socket.js index ff73887..8a5419b 100644 --- a/server/api/zendesk_field/zendesk_field.socket.js +++ b/server/api/zendesk_field/zendesk_field.socket.js @@ -7,10 +7,10 @@ var ZendeskField = require('../../models').ZendeskField; exports.register = function(socket) { - ZendeskField.afterCreate(function (doc) { + ZendeskField.afterCreate(function(doc) { onSave(socket, doc); }); - ZendeskField.afterDestroy(function (doc) { + ZendeskField.afterDestroy(function(doc) { onRemove(socket, doc); }); } diff --git a/server/api/zendesk_field/zendesk_field.spec.js b/server/api/zendesk_field/zendesk_field.spec.js index 119df3a..1527fe8 100644 --- a/server/api/zendesk_field/zendesk_field.spec.js +++ b/server/api/zendesk_field/zendesk_field.spec.js @@ -17,4 +17,4 @@ describe('GET /api/zendesk/fields', function() { done(); }); }); -}); \ No newline at end of file +}); diff --git a/server/api/zendesk_text/zendesk_text.controller.js b/server/api/zendesk_text/zendesk_text.controller.js deleted file mode 100644 index 13d1e0e..0000000 --- a/server/api/zendesk_text/zendesk_text.controller.js +++ /dev/null @@ -1,93 +0,0 @@ -'use strict'; - -var _ = require('lodash'); -var ZendeskText = require('../../models').ZendeskText; - -// Get list of zendesk_texts -exports.index = function(req, res) { - ZendeskText - .findAll() - .then(function(zendesk_texts) { - return res.status(200).send(zendesk_texts); - }) - .catch(function(err) { - return handleError(res, err); - }); -}; - -// Get a single zendesk_text -exports.show = function(req, res) { - ZendeskText - .findById(req.params.id) - .then(function(zendesk_text) { - if (!zendesk_text) { - return res.sendStatus(404); - } - return res.send(zendesk_text); - }) - .catch(function(err) { - return handleError(res, err); - }); -}; - -// Creates a new zendesk_text in the DB. -exports.create = function(req, res) { - ZendeskText - .create(req.body) - .then(function(zendesk_text) { - return res.status(201).send(zendesk_text); - }) - .catch(function(err) { - return handleError(res, err); - }); -}; - -// Updates an existing zendesk_text in the DB. -exports.update = function(req, res) { - if (req.body.id) { - delete req.body.id; - } - ZendeskText - .findById(req.params.id) - .then(function(zendesk_text) { - if (!zendesk_text) { - return res.sendStatus(404); - } - var updated = _.merge(zendesk_text, req.body); - updated.save() - .then(function() { - return res.status(200).send(zendesk_text); - }) - .catch(function(err) { - return handleError(res, err); - }); - }) - .catch(function(err) { - return handleError(res, err); - }); -}; - -// Deletes a zendesk_text from the DB. -exports.destroy = function(req, res) { - ZendeskText - .findById(req.params.id) - .then(function(zendesk_text) { - if (!zendesk_text) { - return res.sendStatus(404); - } - zendesk_text.destroy() - .then(function() { - return res.sendStatus(204); - }) - .catch(function(err) { - return handleError(res, err); - }); - }) - .catch(function(err) { - return handleError(res, err); - }); -}; - -function handleError(res, err) { - return res.status(500).send(err); -} diff --git a/server/app.js b/server/app.js index 0f53f19..882c5e9 100644 --- a/server/app.js +++ b/server/app.js @@ -161,7 +161,6 @@ models console.error(err); }); - // Connect to database history models .sequelize_history diff --git a/server/auth/auth.service.js b/server/auth/auth.service.js index d2ddafc..277a546 100644 --- a/server/auth/auth.service.js +++ b/server/auth/auth.service.js @@ -33,7 +33,7 @@ function isAuthenticated() { .then(function(user) { if (!user) return res.send(401); req.user = user; - next(); + return next(); }) .catch(function(err) { return next(err); @@ -51,9 +51,9 @@ function hasRole(roleRequired) { .use(isAuthenticated()) .use(function meetsRequirements(req, res, next) { if (config.userRoles.indexOf(req.user.role) >= config.userRoles.indexOf(roleRequired)) { - next(); + return next(); } else { - res.send(403); + return res.send(403); } }); } diff --git a/server/auth/local/index.js b/server/auth/local/index.js index a4b1a6f..2c8c113 100644 --- a/server/auth/local/index.js +++ b/server/auth/local/index.js @@ -31,7 +31,7 @@ router async.eachSeries(voiceQueues, function iterator(voiceQueue, callback) { require('./local.ami').login(user.id, user.name, voiceQueue.name, callback); }, function done() { - res.json({ + return res.json({ token: token, userId: user.id }); diff --git a/server/config/environment/config.json b/server/config/environment/config.json index 165c6cd..2685297 100644 --- a/server/config/environment/config.json +++ b/server/config/environment/config.json @@ -2,25 +2,25 @@ "development": { "host": "localhost", "port": 3306, - "database": "database", - "username": "username", - "password": "password", + "database": "motion", + "username": "xcall", + "password": "xC@LL1234", "dialect": "mysql" }, "test": { "host": "localhost", "port": 3306, - "database": "database", - "username": "username", - "password": "password", + "database": "motion", + "username": "xcall", + "password": "xC@LL1234", "dialect": "mysql" }, "production": { "host": "localhost", "port": 3306, - "database": "database", - "username": "username", - "password": "password", + "database": "motion", + "username": "xcall", + "password": "xC@LL1234", "dialect": "mysql" } } diff --git a/server/config/environment/config_history.json b/server/config/environment/config_history.json new file mode 100644 index 0000000..2685297 --- /dev/null +++ b/server/config/environment/config_history.json @@ -0,0 +1,26 @@ +{ + "development": { + "host": "localhost", + "port": 3306, + "database": "motion", + "username": "xcall", + "password": "xC@LL1234", + "dialect": "mysql" + }, + "test": { + "host": "localhost", + "port": 3306, + "database": "motion", + "username": "xcall", + "password": "xC@LL1234", + "dialect": "mysql" + }, + "production": { + "host": "localhost", + "port": 3306, + "database": "motion", + "username": "xcall", + "password": "xC@LL1234", + "dialect": "mysql" + } +} diff --git a/server/config/environment/development.js b/server/config/environment/development.js index 68b008b..ad87cb7 100644 --- a/server/config/environment/development.js +++ b/server/config/environment/development.js @@ -1,18 +1,13 @@ 'use strict'; var db = require('./config.json').development; +var db_history = require('./config_history.json').development; // Development specific configuration // ================================== module.exports = { // MySQL connection options db: db, - db_history: { - host: "localhost", - port: 3306, - database: "test", - username: "root", - password: "xshuttle" - }, - seedDB: false + db_history: db_history, + seedDB: true }; diff --git a/server/config/environment/index.js b/server/config/environment/index.js index 0185254..e7f0990 100644 --- a/server/config/environment/index.js +++ b/server/config/environment/index.js @@ -26,8 +26,7 @@ var all = { port: process.env.PORT || 9000, // Server ip - ip: process.env.IP || '127.0.0.1', - // ip: process.env.IP || '192.168.2.170', + ip: process.env.IP || 'localhost', // Should we populate the DB with sample data? seedDB: false, diff --git a/server/config/environment/production.js b/server/config/environment/production.js index 06d03a0..8d07d20 100644 --- a/server/config/environment/production.js +++ b/server/config/environment/production.js @@ -1,22 +1,12 @@ 'use strict'; var db = require('./config.json').production; +var db_history = require('./config_history.json').production; // Production specific configuration // ================================= module.exports = { - // Server IP - ip: process.env.OPENSHIFT_NODEJS_IP || process.env.IP || undefined, - - // Server port - port: process.env.OPENSHIFT_NODEJS_PORT || process.env.PORT || 8080, - db: db, - db_history: { - host: "localhost", - port: 3306, - database: "xcally", - username: "xcall", - password: "xcall1234" - } + db_history: db_history, + seedDB: false }; diff --git a/server/config/environment/test.js b/server/config/environment/test.js index b323f8c..baf693e 100644 --- a/server/config/environment/test.js +++ b/server/config/environment/test.js @@ -1,16 +1,11 @@ 'use strict'; var db = require('./config.json').test; +var db_history = require('./config_history.json').test; // Test specific configuration // =========================== module.exports = { db: db, - db_history: { - host: "localhost", - port: 3306, - database: "xcally", - username: "xcall", - password: "xcall1234" - } + db_history: db_history }; diff --git a/server/config/socketio.js b/server/config/socketio.js index 044f43b..e60ab15 100644 --- a/server/config/socketio.js +++ b/server/config/socketio.js @@ -20,16 +20,20 @@ function onDisconnect(socket) { }) .then(function(user) { console.log('socket: user offline', user.name); + return; }) .catch(function(err) { console.log(err); + return; }); } else { console.log('socket: anyone users found'); + return; } }) .catch(function(err) { console.log(err); + return; }); } } @@ -48,16 +52,20 @@ function onConnect(socket) { }) .then(function(user) { console.log('socket: user online', user.name); + return; }) .catch(function(err) { console.log(err); + return; }); } else { console.log('socket: anyone users found'); + return; } }) .catch(function(err) { console.log(err); + return; }); } @@ -66,11 +74,11 @@ function onConnect(socket) { }); // Insert sockets below + require('../api/update/update.socket').register(socket); require('../api/report_chat_session/report_chat_session.socket').register(socket); - require('../api/zendesk_text/zendesk_text.socket').register(socket); + require('../api/zendesk_field/zendesk_field.socket').register(socket); require('../api/report_chat/report_chat.socket').register(socket); require('../api/zendesk_configuration/zendesk_configuration.socket').register(socket); - require('../api/zendesk_field/zendesk_field.socket').register(socket); require('../api/motionbar/motionbar.socket').register(socket); require('../api/report_mail_session/report_mail_session.socket').register(socket); require('../api/report_mail/report_mail.socket').register(socket); diff --git a/server/models/update.js b/server/models/update.js new file mode 100644 index 0000000..ba48b5d --- /dev/null +++ b/server/models/update.js @@ -0,0 +1,13 @@ +'use strict'; + +module.exports = function(sequelize, DataTypes) { + + var Update = sequelize.define('Update', { + name: DataTypes.STRING, + description: DataTypes.STRING + }, { + tableName: 'updates' + }); + + return Update; +}; diff --git a/server/models/variable.js b/server/models/variable.js index f02e545..a5a75dd 100644 --- a/server/models/variable.js +++ b/server/models/variable.js @@ -14,7 +14,7 @@ module.exports = function(sequelize, DataTypes) { }, { tableName: 'variables', associate: function(models) { - Variable.hasMany(models.ZendeskText); + Variable.hasMany(models.ZendeskField); } }); diff --git a/server/models/zendesk_account.js b/server/models/zendesk_account.js index 894b0f7..a0e14fb 100644 --- a/server/models/zendesk_account.js +++ b/server/models/zendesk_account.js @@ -22,7 +22,6 @@ module.exports = function(sequelize, DataTypes) { }, { tableName: 'zendesk_accounts', associate: function(models) { - ZendeskAccount.hasMany(models.ZendeskField); ZendeskAccount.hasMany(models.ZendeskConfiguration); } }); diff --git a/server/models/zendesk_configuration.js b/server/models/zendesk_configuration.js index 6bf7862..d4f65b6 100644 --- a/server/models/zendesk_configuration.js +++ b/server/models/zendesk_configuration.js @@ -9,8 +9,13 @@ module.exports = function(sequelize, DataTypes) { tableName: 'zendesk_configurations', associate: function(models) { ZendeskConfiguration.belongsTo(models.ZendeskAccount); - ZendeskConfiguration.hasMany(models.ZendeskText, { - as: 'Subject' + ZendeskConfiguration.hasMany(models.ZendeskField, { + as: 'Subject', + foreignKey: 'SubjectId' + }); + ZendeskConfiguration.hasMany(models.ZendeskField, { + as: 'Description', + foreignKey: 'DescriptionId' }); } }); diff --git a/server/models/zendesk_field.js b/server/models/zendesk_field.js index c7a5d9c..ea91dd5 100644 --- a/server/models/zendesk_field.js +++ b/server/models/zendesk_field.js @@ -3,13 +3,20 @@ module.exports = function(sequelize, DataTypes) { var ZendeskField = sequelize.define('ZendeskField', { - name: DataTypes.STRING, - custom_field_id: DataTypes.STRING, - description: DataTypes.STRING + type: { + type: DataTypes.ENUM('string', 'variable', 'key_value'), + defaultValue: 'string' + }, + content: DataTypes.STRING, + key: DataTypes.STRING, + keyType: { + type: DataTypes.ENUM('string', 'variable') + }, + keyContent: DataTypes.STRING }, { tableName: 'zendesk_fields', associate: function(models) { - ZendeskField.belongsTo(models.ZendeskAccount); + ZendeskField.belongsTo(models.Variable); } }); diff --git a/server/models/zendesk_text.js b/server/models/zendesk_text.js deleted file mode 100644 index 0c7afdb..0000000 --- a/server/models/zendesk_text.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -module.exports = function(sequelize, DataTypes) { - - var ZendeskText = sequelize.define('ZendeskText', { - content: DataTypes.STRING, - type: { - type: DataTypes.ENUM('string', 'variable'), - defaultValue: 'string' - } - }, { - tableName: 'zendesk_texts', - associate: function(models) { - ZendeskText.belongsTo(models.Variable); - } - }); - - return ZendeskText; - -}; diff --git a/server/routes.js b/server/routes.js index 2870b49..9327975 100644 --- a/server/routes.js +++ b/server/routes.js @@ -10,15 +10,14 @@ var path = require('path'); var moment = require('moment'); module.exports = function(app) { - var env = app.get('env'); // Insert routes below + app.use('/api/updates', require('./api/update')); app.use('/api/report/chat/sessions', require('./api/report_chat_session')); - app.use('/api/zendesk/texts', require('./api/zendesk_text')); + app.use('/api/zendesk/fields', require('./api/zendesk_field')); app.use('/api/report/chats', require('./api/report_chat')); app.use('/api/zendesk/configurations', require('./api/zendesk_configuration')); - app.use('/api/zendesk/fields', require('./api/zendesk_field')); app.use('/api/motionbar', require('./api/motionbar')); app.use('/api/report/mail/sessions', require('./api/report_mail_session')); app.use('/api/report/mails', require('./api/report_mail'));