From: Andrea Bianco Date: Wed, 27 Jan 2021 13:53:38 +0000 (+0100) Subject: Built motion from commit (unavailable).|2.5.14 X-Git-Tag: 2.5.14~1 X-Git-Url: http://repos.xcallymotion.com/base/%22https:/wiki.xcallymotion.com/display/XMV//%22?a=commitdiff_plain;h=9c8616cfa647d703a1bff4c288be65133e777d2a;p=motion2.git Built motion from commit (unavailable).|2.5.14 --- diff --git a/apidoc/api_data.js b/apidoc/api_data.js index 8bdb4c3..5a348de 100644 --- a/apidoc/api_data.js +++ b/apidoc/api_data.js @@ -6081,6 +6081,24 @@ define({ "api": [ }, { "type": "get", + "url": "/api/cm/contacts/{id}/journey", + "title": "Gets customer journey", + "examples": [ + { + "title": "Example usage:", + "content": "curl https://{domain}/api/cm/contacts/{id}/journey -v -u {name}:{password} -X GET", + "type": "json" + } + ], + "name": "getJourney", + "group": "Cm_Contacts", + "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", + "version": "0.0.0", + "filename": "server/api/cmContact/index.js", + "groupTitle": "Cm_Contacts" + }, + { + "type": "get", "url": "/api/cm/contacts/{id}/jscripty_sessions", "title": "Gets contact hopper blacks", "examples": [ diff --git a/apidoc/api_data.json b/apidoc/api_data.json index 62c22f5..481a987 100644 --- a/apidoc/api_data.json +++ b/apidoc/api_data.json @@ -6081,6 +6081,24 @@ }, { "type": "get", + "url": "/api/cm/contacts/{id}/journey", + "title": "Gets customer journey", + "examples": [ + { + "title": "Example usage:", + "content": "curl https://{domain}/api/cm/contacts/{id}/journey -v -u {name}:{password} -X GET", + "type": "json" + } + ], + "name": "getJourney", + "group": "Cm_Contacts", + "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", + "version": "0.0.0", + "filename": "server/api/cmContact/index.js", + "groupTitle": "Cm_Contacts" + }, + { + "type": "get", "url": "/api/cm/contacts/{id}/jscripty_sessions", "title": "Gets contact hopper blacks", "examples": [ diff --git a/apidoc/api_project.js b/apidoc/api_project.js index 3d08e14..f767791 100644 --- a/apidoc/api_project.js +++ b/apidoc/api_project.js @@ -1,6 +1,6 @@ define({ "name": "xCALLY Motion API", - "version": "2.5.13", + "version": "2.5.14", "description": "Thank you for choosing xCALLY MOTION, one of the first Omni Channel solution integrated with AsteriskTM and the most innovative real time solutions available on the market.", "title": "xCALLY MOTION API", "header": { @@ -17,7 +17,7 @@ define({ "apidoc": "0.3.0", "generator": { "name": "apidoc", - "time": "2021-01-23T13:29:16.405Z", + "time": "2021-01-27T13:46:39.502Z", "url": "http://apidocjs.com", "version": "0.24.0" } diff --git a/apidoc/api_project.json b/apidoc/api_project.json index e31f4b8..1a7567b 100644 --- a/apidoc/api_project.json +++ b/apidoc/api_project.json @@ -1,6 +1,6 @@ { "name": "xCALLY Motion API", - "version": "2.5.13", + "version": "2.5.14", "description": "Thank you for choosing xCALLY MOTION, one of the first Omni Channel solution integrated with AsteriskTM and the most innovative real time solutions available on the market.", "title": "xCALLY MOTION API", "header": { @@ -17,7 +17,7 @@ "apidoc": "0.3.0", "generator": { "name": "apidoc", - "time": "2021-01-23T13:29:16.405Z", + "time": "2021-01-27T13:46:39.502Z", "url": "http://apidocjs.com", "version": "0.24.0" } diff --git a/package.json b/package.json index 08493d0..cbc62c4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "motion", - "version": "2.5.13", + "version": "2.5.14", "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.", "main": "server/app.js", "engines": { diff --git a/public/app/main/apps/analytics/i18n/es.json b/public/app/main/apps/analytics/i18n/es.json index 385eb68..1c3eb2b 100644 --- a/public/app/main/apps/analytics/i18n/es.json +++ b/public/app/main/apps/analytics/i18n/es.json @@ -67,7 +67,7 @@ "QUERY_ERROR": "Error de consulta", "REMOVE": "Eliminar carpeta", "RENAME": "Renombrar carpeta", - "REPORTNAME": "Reportar nombre", + "REPORTNAME": "Nombre informe", "REPORTS": "Informes", "ROWSPERPAGE": "Filas por página", "RUN_REPORT": "Ejecutar un Reporte", diff --git a/public/app/main/apps/callysquare/i18n/es.json b/public/app/main/apps/callysquare/i18n/es.json index da3368b..0b8a5b9 100644 --- a/public/app/main/apps/callysquare/i18n/es.json +++ b/public/app/main/apps/callysquare/i18n/es.json @@ -71,11 +71,11 @@ "EDIT_XML": "Editar XML", "END": "Fin", "ERRORS": { - "DSN_REQUIRED": "Campo obligatorio", + "DSN_REQUIRED": "Campo DSN obligatorio", "FIELD_REQUIRED": "Campo obligatorio", - "NAME_REQUIRED": "Campo obligatorio", - "PROJECT_REQUIRED": "Campo obligatorio", - "URL_REQUIRED": "Campo obligatorio" + "NAME_REQUIRED": "Campo Nombre obligatorio", + "PROJECT_REQUIRED": "Campo Proyecto obligatorio", + "URL_REQUIRED": "Campo URL obligatorio" }, "ESCAPE_DIGITS": "Dígitos de escape", "EXTEN": "Exten", diff --git a/public/app/main/apps/chat/i18n/de.json b/public/app/main/apps/chat/i18n/de.json index 1300ec3..a505404 100644 --- a/public/app/main/apps/chat/i18n/de.json +++ b/public/app/main/apps/chat/i18n/de.json @@ -2,12 +2,12 @@ "CHAT": { "AMAZONLEX": "Amazon Lex", "TEXT": "Text", - "TIMES": "Anzahl der Male pro Interaktion", + "TIMES": "Anzahl von Malen pro Interaktion", "EDIT_AUTOREPLY": "Automatische Antwort bearbeiten", "AUTOREPLY": "Automatische Antwort", "NEW_CHATDISPOSITION": "Neue Chat-Disposition", "ENABLECUSTOMERATTACHMENT": "Kundenanhänge aktivieren", - "OFFLINE_CHAT_BUTTON": "'Offline Chat'-Taste", + "OFFLINE_CHAT_BUTTON": "Offline-Chat-Taste", "OFFLINESTATUS": "Offline Status", "NAME": "Name", "CHATQUEUES": "Chat-Warteschlangen", @@ -19,13 +19,13 @@ "ALIAS": "Alias-Name", "VARIABLE": "Variable", "INTERVAL": "Intervall", - "EDIT_CLOSE": "Bearbeiten Beenden", + "EDIT_CLOSE": "Bearbeiten Schließen", "TIMEZONE": "Zeitzone", "MESSAGE": "Nachricht", "ADVANCED": "Erweitert", "FORWARDTRANSCRIPT": "Transkript weiterleiten", "FORWARDTRANSCRIPTMESSAGE": "Transkript-Nachricht weiterleiten", - "SKIPMESSAGEBUTTON": "Taste \"Nachricht\" überspringen", + "SKIPMESSAGEBUTTON": "Nachrichtentaste überspringen", "EDIT_MESSAGE": "Nachricht bearbeiten", "CONDITION_AGREEMENT": "Bedingungsvereinbarung", "NONE": "Keine", @@ -41,17 +41,17 @@ "DELETE_OFFLINEMESSAGE": "Löschen", "OFFLINEMESSAGES": "Offline Nachrichten", "FORWARD_OFFLINE": "Offline weiterleiten", - "SHOW_OFFLINEMESSAGE": "Zeigen", + "SHOW_OFFLINEMESSAGE": "Anzeigen", "FORWARD_OFFLINE_ADDRESS": "Offline-Adresse weiterleiten", "CLOSINGFORM": "Formular schließen", "ENABLERATING": "Bewertung aktivieren", "ENABLECUSTOMERWRITING": "Dem Kunden \"schreiben\" erlauben, bevor der Agent akzeptiert", "ENABLEFEEDBACK": "Feedback aktivieren", - "RATINGTYPE": "Rating-Typ", + "RATINGTYPE": "Bewertungstyp", "CLOSINGMESSAGE": "Nachricht schließen", "CLOSINGMESSAGEBUTTON": "Nachrichtentaste schließen", "RATINGSTARSNUMBER": "Anzahl der Bewertungssterne", - "EDIT_GOTOIF": "Bearbeiten GotoIf", + "EDIT_GOTOIF": "GotoIf bearbeiten", "CONDITION": "Bedingung", "TRUEPRIORITY": "Echte Priorität", "FALSEPRIORITY": "Falsche Priorität", @@ -151,11 +151,11 @@ "DELETE_CHATPROACTIVEACTION": "Proaktive Aktion löschen", "ADD_CHATPROACTIVEACTION": "Proaktive Aktion hinzufügen", "NO_CHATPROACTIVEACTION_AVAILABLE": "Keine proaktiven Aktionen verfügbar", - "NO_OFFLINEMESSAGE_AVAILABLE": "Keine Offline Nachrichten verfügbar", + "NO_OFFLINEMESSAGE_AVAILABLE": "Keine Offline-Nachrichten verfügbar", "MOUSEOVER": "Maus über", "TIMEOUT": "Timeout", "TYPE": "Typ", - "SELECTOR": "Wähler", + "SELECTOR": "Wählschalter", "AGENT": "Agent", "GOTO": "Goto", "GOTOIF": "GotoIf", @@ -165,16 +165,16 @@ "PREVIEW": "Vorschau", "EDIT_AGENT": "Agent bearbeiten", "EDIT_QUEUE": "Warteschlange bearbeiten", - "EDIT_GOTO": "Bearbeiten Goto", - "EDIT_GOTOIf": "Bearbeiten GotoIf", - "EDIT_NOOP": "Bearbeiten Noop", + "EDIT_GOTO": "Goto bearbeiten", + "EDIT_GOTOIf": "GotoIf bearbeiten", + "EDIT_NOOP": "Noop bearbeiten", "ADD_CHATQUEUE": "Chat-Warteschlange hinzufügen", "EDIT_CHATQUEUE": "Chat-Warteschlange bearbeiten", "DELETE_CHATQUEUE": "Chat-Warteschlange löschen", "SETTINGS": "Einstellungen", "SAVE": "Speichern", "SCRIPT": "Skript", - "TOKEN": "Tooken", + "TOKEN": "Token", "CREATED_AT": "Erstellt am", "CHATWEBSITES": "Chat-Webseiten", "MOTIONADDRESS": "Website Domain", @@ -183,58 +183,58 @@ "EDIT_CHATWEBSITE": "Chat-Webseite bearbeiten", "DELETE_CHATWEBSITE": "Chat-Webseite löschen", "LIST": "Liste", - "SNIPPET": "Schnipsel", - "FORMS": "Formen", + "SNIPPET": "Snippet", + "FORMS": "Formulare", "UP": "Bis", - "DOWN": "Nach unten", - "COLLAPSE": "Zusammenbruch", + "DOWN": "Unten", + "COLLAPSE": "Zusammenklappen", "PROACTIVEACTIONS": "Proaktive Aktionen", - "DISPOSITIONS": "Bestimmungen", + "DISPOSITIONS": "Dispositionen", "WEBHOOKS": "WebHooks", "ACTIONS": "Aktionen", "FIDELITY": "Treue", "APPEARANCE": "Aussehen", "MAINCOLOR": "Hauptfarbe", - "FOCUSCOLOR": "Schwerpunkt Farbe", - "BUTTONCOLOR": "Schaltfläche Farbe", - "HEADERSHAPE": "Form des Erntevorsatzes", + "FOCUSCOLOR": "Fokusfarbe", + "BUTTONCOLOR": "Tastenfarbe", + "HEADERSHAPE": "Kopfzeilenform", "ANIMATION": "Animation", "DEFAULT": "Standard", "WHITELABEL": "White Label", "LOGO": "Logo", - "DOWNLOADTRANSCRIPT": "Transkript herunterladen.", + "DOWNLOADTRANSCRIPT": "Transkript herunterladen", "ENQUIRY_ENABLE": "Anfrage aktivieren", - "ENQUIRY_FORWARDING": "Anfrage weiterleiten", - "ENQUIRY_FORWARDING_ADDRESS": "Anfrage Adresse weiterleiten", + "ENQUIRY_FORWARDING": "Weiterleitung von Anfragen", + "ENQUIRY_FORWARDING_ADDRESS": "Anfrage-Weiterleitungsadresse", "LABELS": "Labels", - "HEADER_ONLINE": "Online Header", - "ONLINE_MESSAGE": "Online Message", - "NAME_TITLE": "Name Input Label", - "USERNAME_PLACEHOLDER": "Benutzername Eingang Platzhalter", - "EMAIL_TITLE": "E-Mail Eingang Label", - "EMAIL_PLACEHOLDER": "E-Mail Eingang Platzhalter", - "START_CHAT_BUTTON": "'Start' Button Chat", - "AGENTS_BUSY": "Nachricht Agenten besetzt", - "HEADER_OFFLINE": "Offline Header", + "HEADER_ONLINE": "Online-Kopfzeile", + "ONLINE_MESSAGE": "Online Nachricht", + "NAME_TITLE": "Name Eingabebezeichnung", + "USERNAME_PLACEHOLDER": "Benutzername Eingabe Platzhalter", + "EMAIL_TITLE": "E-Mail-Eingabe Label", + "EMAIL_PLACEHOLDER": "Platzhalter für E-Mail-Eingabe", + "START_CHAT_BUTTON": "'Chat starten' Taste", + "AGENTS_BUSY": "Meldung für besetzte Agenten", + "HEADER_OFFLINE": "Offline-Kopfzeile", "OFFLINE_MESSAGE": "Offline Nachricht", - "MESSAGE_TITLE": "Nachricht Label", - "ENQUIRY_MESSAGE_PLACEHOLDER": "Anfrage Nachricht ein Platzhalter", - "ENQUIRY_BUTTON": "Anfrage Text auf der Schaltfläche", - "RATING_MESSAGE": "Bewertung Nachricht", - "RATING_SEND": "Bewertung Senden Text", - "RATING_SKIP": "Bewertung Skip Taste Text", + "MESSAGE_TITLE": "Nachrichtenbezeichnung", + "ENQUIRY_MESSAGE_PLACEHOLDER": "Platzhalter für die Eingabe von Anfragenachrichten", + "ENQUIRY_BUTTON": "Anfrage-Taste Text", + "RATING_MESSAGE": "Bewertungsnachricht", + "RATING_SEND": "Bewertung Senden Tasten-Text", + "RATING_SKIP": "Bewertung Überspringen Tasten-Text", "ONLINE": "Online", "OFFLINE": "Offline", "PROACTIVE": "Proaktive", "ACCEPT": "Akzeptieren", - "ACCEPTMETHOD": "Die Methode", + "ACCEPTMETHOD": "Methode", "ACCEPTURL": "URL akzeptieren", "REJECT": "Ablehnen", "REJECTMETHOD": "Methode ablehnen", "REJECTURL": "URL ablehnen", - "CLOSE": "In der Nähe", - "CLOSEMETHOD": "In der Nähe Methode", - "CLOSEURL": "Der URL", + "CLOSE": "Schliessen", + "CLOSEMETHOD": "Methode schließen", + "CLOSEURL": "URL schließen", "EMBEDDING": "Einbettung", "GENERAL": "Allgemein", "SELECTED": "Ausgewählte", @@ -242,53 +242,53 @@ "SELECT_NONE": "Wählen Sie \"Keine\"", "BACK": "Zurück", "HELP": { - "MAPKEY": "Folgende Motion Contact Manager Feld:", - "FROMKEY": "Wird in Ihrer Motion Chat Snippet wie abgebildet werden:", - "TOKEN": "Website Motion Token", - "COPYSCRIPTTOCLIPBOARD": "Kopieren Sie das Script in Ihre Webseite", - "FORWARD_OFFLINE": "Sie können mehrere Adressen mit Kommata (z. b. John.doe@xcally.com, jane.miller@xcally.com)", - "MOTIONADDRESS": "Bitte geben Sie im folgenden Format ein: ≪protocol>://[:]. Beispiel: https://X.Y.Z.W", - "MOTIONPROXY": "Bitte geben Sie im folgenden Format ein: ≪Protocol>:// ≪IP-Adresse>: ≪port>]. Beispiel: https://X.Y.Z.W", + "MAPKEY": "Das folgende Motion Contact Manager-Feld:", + "FROMKEY": "Wird in Ihrem Motion Chat-Snippet wie folgt zugeordnet:", + "TOKEN": "Automatisch generiertes Token, das im Skript verwendet wird", + "COPYSCRIPTTOCLIPBOARD": "Kopieren Sie den Skripttext und fügen Sie ihn in Ihre Website ein", + "FORWARD_OFFLINE": "Sie können mehrere durch Kommas getrennte Adressen hinzufügen (z. B. john.doe@xcally.com, jane.miller@xcally.com)", + "MOTIONADDRESS": "Das Feld muss das folgende Format haben: ≪protocol>://[:]. Beispiel: https://X.Y.Z.W", + "MOTIONPROXY": "Das Feld muss das folgende Format haben: ≪Protocol>:// ≪IP-Adresse>: ≪port>]. Beispiel: https://X.Y.Z.W", "NAME": "Nur Zahlen, Buchstaben und Sonderzeichen (._) werden unterstützt.", - "LIST": "Contact Manager Liste zu verknüpfen von Kontakten", - "KEY": "Website kurze Name (5 Zeichen) auf der Registerkarte Agentenstatus dargestellt", - "INTEVAL": "Aus der Liste der verfügbaren Intervalle ausgewählt werden", + "LIST": "Contact Manager-Liste, die zum Zuordnen von Kontakten verwendet wird", + "KEY": "Website-Kurzname (5 Zeichen), der auf der Registerkarte \"Agent\" angezeigt wird", + "INTEVAL": "Wird aus der Liste der verfügbaren Intervalle ausgewählt", "TIMEZONE": "Wählen Sie eine aus der Liste aus (Standard = lokale Zeitzone)", - "ENABLERATING": "Es aktivieren, wenn Sie die web Besucher kann die Interaktion am Ende bewerten möchten.", - "ENABLEFEEDBACK": "Aktivieren, wenn Sie möchten, dass die Besucher können ein Feedback (bis zu 150 Zeichen senden) am Ende", - "FORWARDTRANSCRIPT": "Aktivieren, wenn Sie möchten, dass die Besucher aufgefordert, ein Chatprotokoll per e-mail", - "AUTOCLOSE": "Es aktivieren, wenn Sie Chat-sitzungen als Unmanaged geschlossen werden soll, wenn kein Agent verfügbar ist. Erfahren Sie mehr unter: https://wiki.xcallymotion.com/display/XMV/Chat Websites # Chat Websites-Snippet", - "ENABLEUNMANAGEDNOTE": "Aktivieren, wenn Sie möchten, dass die Besucher eine Nachricht wird angezeigt, wenn alle Agenten besetzt sind und der Chat wird nicht verwalteten", - "ENABLECUSTOMERWRITING": "Aktivieren Sie es wenn Sie wollen, dass der Chat startet ohne Warten auf einen verfügbaren Agenten (Achtung: Wenn sie es ermöglichen, ihre Chats nie unmanaged erhalten). Erfahren Sie mehr unter: https://wiki.xcallymotion.com/display/XMV/Chat Websites # Chat Websites-Snippet", - "INTERVAL": "Wählen Sie eine aus der Liste aus", - "HIDEWHENOFFLINE": "Versteckt das Snippet, wenn es offline ist", - "AGENTIDENTIFIER": "Stellt die Agenten-ID in der Chat-Sitzung im Snippet dar", - "WEBSITEALIAS": "Ein Präfix verwendet, um den Namen des Agenten (Präfix Agenten-ID) an die Besucher während der Chat-sitzung angezeigt zu verfassen", - "VERTICALPOSITION": "Stellt die Entfernung in Prozent von oben dar", + "ENABLERATING": "Aktivieren Sie es, wenn Sie möchten, dass der Webbesucher die Interaktion am Ende bewerten kann", + "ENABLEFEEDBACK": "Aktivieren Sie es, wenn Sie möchten, dass der Webbesucher am Ende ein Feedback (bis zu 150 Zeichen) senden kann", + "FORWARDTRANSCRIPT": "Aktivieren Sie diese Option, wenn der Webbesucher aufgefordert wird, ein Chat-Protokoll per E-Mail zu erhalten", + "AUTOCLOSE": "Aktivieren Sie diese Option, wenn Chat-Sitzungen als nicht verwaltet geschlossen werden sollen, wenn kein Agent verfügbar ist. Weitere Informationen finden Sie unter: https://wiki.xcallymotion.com/display/XMV/Chat+Websites#ChatWebsites-Snippet", + "ENABLEUNMANAGEDNOTE": "Aktivieren Sie diese Option, wenn dem Besucher eine Nachricht angezeigt werden soll, wenn alle Agenten besetzt sind und der Chat nicht mehr verwaltet wird", + "ENABLECUSTOMERWRITING": "Aktivieren Sie es, wenn der Chat gestartet werden soll, ohne auf einen verfügbaren Agenten zu warten (Achtung: Wenn Sie ihn aktivieren, werden Ihre Chats niemals nicht verwaltet). Weitere Informationen finden Sie unter: https://wiki.xcallymotion.com/display/XMV/ Chat + Websites # ChatWebsites-Snippet ", + "INTERVAL": "Wählen Sie eins aus der Liste aus", + "HIDEWHENOFFLINE": "Snippet ausblenden, wenn offline", + "AGENTIDENTIFIER": "Repräsentiert die Agentenkennung innerhalb der Chat-Sitzung im Snippet", + "WEBSITEALIAS": "Ein Präfix, mit dem der Agentenname (Präfix + Agenten-ID) erstellt wird, der dem Webbesucher während der Chat-Sitzung angezeigt wird", + "VERTICALPOSITION": "Stellt den Abstand in Prozent von oben dar", "WELCOMEMESSAGE": "Lassen Sie das Feld leer, wenn Sie keine Willkommensnachricht senden möchten", - "MANDATORYDISPOSITION": "Zwingende Disposition", - "MANDATORYDISPOSITIONPAUSEID": "Pause zur Verwendung, wenn die obligatorische Disposition aktiviert ist" + "MANDATORYDISPOSITION": "Obligatorische Disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pausieren Sie die Verwendung, wenn die obligatorische Disposition aktiviert ist" }, "ADDRESS": "Adresse", "ONLINESTATE": "Online Status", "OFFLINESTATE": "Offline Status", - "RATINGSTATE": "Bewertung Zustand", + "RATINGSTATE": "Bewertungsstatus", "ENQUIRY": "Anfrage", "OFFLINETEMPLATE": "Offline Vorlage", - "CHATDISPOSITIONS": "Chat Verfügungen", - "NO_CHATDISPOSITION_AVAILABLE": "Kein Chat Dispositionen verfügbar", - "ADD_CHATDISPOSITION": "Chat hinzufügen Disposition", + "CHATDISPOSITIONS": "Chat-Dispositionen", + "NO_CHATDISPOSITION_AVAILABLE": "Keine Chat-Dispositionen verfügbar", + "ADD_CHATDISPOSITION": "Chat Disposition hinzufügen", "DELETE": "Löschen", - "EDIT_CHATDISPOSITION": "Bearbeiten von Chat Disposition", - "DELETE_CHATDISPOSITION": "Chat löschen Disposition", + "EDIT_CHATDISPOSITION": "Chat-Disposition bearbeiten", + "DELETE_CHATDISPOSITION": "Chat-Disposition löschen", "CHAT": "Chat", - "ID": "Id", - "NEW_CHATQUEUE": "Neuer Chat Queue", - "NEW_CHATWEBSITE": "Neuer Chat Website", - "ROUNDED": "Gerundet", - "SQUARED": "Quadrat", + "ID": "ID", + "NEW_CHATQUEUE": "Neue Chat-Warteschlange", + "NEW_CHATWEBSITE": "Neue Chat-Website", + "ROUNDED": "Abgerundet", + "SQUARED": "Quadratisch", "NO_AVAILABLE_INFO": "Keine verfügbaren Info", - "ALL_TEAMS": "Alle Mannschaften", + "ALL_TEAMS": "Alle Teams", "SELECTED_TEAMS": "Ausgewählte Teams", "PAGE": "Seite", "ROWSPERPAGE": "Zeilen pro Seite", @@ -301,35 +301,35 @@ "OPEN": "Öffnen", "ACCOUNT": "Konto", "INTERACTION": "Interaktion", - "INTERACTIONS": "Wechselwirkungen", + "INTERACTIONS": "Interaktionen", "WEBSITE": "Website", "ALL": "Alle", "SELECT_STATUS": "Wählen Sie einen Status", "FILTER": "Filter", "FILTERS": "Filter", - "TEAMADD_CHATQUEUE": "Team Chat Warteschlange hinzufügen", - "AGENTADD_CHATQUEUE": "Agent zu Chatten Warteschlange hinzufügen", + "TEAMADD_CHATQUEUE": "Team zur Chat-Warteschlange hinzufügen", + "AGENTADD_CHATQUEUE": "Agent zur Chat-Warteschlange hinzufügen", "ALL_AGENTS": "Alle Agenten", "SELECTED_AGENTS": "Ausgewählte Agenten", - "CLOSEDAT": "Geschlossen", + "CLOSEDAT": "Geschlossen am", "DISPOSITION": "Disposition", "CREATEDAT": "Erstellt am", - "NOTES": "Hinweise", - "NO_INTERACTION_AVAILABLE": "Es sind keine Wechselwirkungen zur Verfügung", + "NOTES": "Notizen", + "NO_INTERACTION_AVAILABLE": "Keine Interaktionen verfügbar", "SELECTED_WEBSITE": "Wählen Sie eine Website", "GOTOP": "Gotop", "EDIT_GOTOP": "Gotop bearbeiten", "SELECT_WEBSITE": "Wählen Sie eine Website", "INFO": "Info", - "OFFLINEMESSAGES_CHATWEBSITE": "Offline Nachrichten gehen", - "WAITINGTITLE": "Warten Titel", + "OFFLINEMESSAGES_CHATWEBSITE": "Zu Offline-Nachrichten gehen", + "WAITINGTITLE": "Wartetitel", "WAITINGMESSAGE": "Wartende Nachricht", "RATING": "Bewertung", "NO_RATINGVALUE": "Keine Bewertung", - "AGENTSADD_QUEUE": "Agent zu Chatten Warteschlange hinzufügen", + "AGENTSADD_QUEUE": "Agent zur Chat-Warteschlange hinzufügen", "QUEUES": "Warteschlangen", "LOGGED_IN": "Angemeldet", - "PAUSED": "Angehalten", + "PAUSED": "Pausiert", "READY": "Bereit", "WAITING": "Warten", "WRITING": "Schreiben", @@ -340,47 +340,47 @@ "PAUSE": "Pause", "REALTIME": "Echtzeit", "AGENTS": "Agenten", - "FULLNAME": "Voller Name", + "FULLNAME": "Vollständiger Name", "INTERNAL": "Interne", "PHONE_STATE": "Telefonstatus", "PHONE_STATUS": "Telefonstatus", - "LOGOUT": "An-/Abmelden", + "LOGOUT": "Abmelden", "UNPAUSE": "Pause beenden", - "AGENTADD_QUEUE": "Agent zu Chatten Warteschlange hinzufügen", + "AGENTADD_QUEUE": "Agent zur Chat-Warteschlange hinzufügen", "DEFAULT_PAUSE": "Standard Pause", "UNKNOWN": "Unbekannt", "UNREGISTERED": "Unregistrierte", "UNAVAILABLE": "Nicht verfügbar", - "NOT_INUSE": "Nicht in Gebrauch", + "NOT_INUSE": "Nicht in Verwendung", "REACHABLE": "Erreichbar", "IN_USE": "Im Einsatz", - "VOICE": "Voice", + "VOICE": "Sprache", "NO_AGENT_ONLINE": "Kein Agent Online", - "GOTOREALTIME_CHATQUEUE": "In Echtzeit Chat Warteschlange", - "PARTIALPAUSE": "Teilweise Pause", + "GOTOREALTIME_CHATQUEUE": "Go to Echtzeit-Chat-Warteschlange", + "PARTIALPAUSE": "Teilpause", "BUSY": "Besetzt", "TIMER": "Timer", - "IDLE": "Leerlauf", + "IDLE": "Inaktiv", "CAPACITY": "Kapazität", "TAGS": "Tags", - "SHOWAGENTAVATAR": "Anzeigen persönlicher Agent avatar", + "SHOWAGENTAVATAR": "Persönlichen Agenten-Avatar anzeigen", "AGENTAVATAR": "Agent Avatar", - "SPYINTERACTION": "Spy", - "INTERACTIONS_CHATWEBSITE": "Zu Wechselwirkungen gehen", - "REFRESH_INTERACTIONS": "Aktualisieren Interaktionen", - "CLOSINGQUESTION": "Schließen Frage", + "SPYINTERACTION": "Spion", + "INTERACTIONS_CHATWEBSITE": "Zu den Interaktionen gehen", + "REFRESH_INTERACTIONS": "Interaktionen aktualisieren", + "CLOSINGQUESTION": "Frage schließen", "WEBSCRIPT": "Webskript", "NO_CHATCANNEDANSWER_AVAILABLE": "Keine vordefinierten Antworten verfügbar", - "NEW_CHATCANNEDANSWER": "Neue Antwort in Dosen", - "ADD_CHATCANNEDANSWER": "Addierte Antwort hinzufügen", + "NEW_CHATCANNEDANSWER": "Neue vordefinierte Antwort", + "ADD_CHATCANNEDANSWER": "Vordefinierte Antwort hinzufügen", "EDIT_CHATCANNEDANSWER": "Bearbeiten", "DELETE_CHATCANNEDANSWER": "Löschen", "OFFLINEMESSAGESUBJECT": "Betreff der Nachricht", "OFFLINEMESSAGEBODY": "Nachrichtentext", - "FORMSUBMITSUCCESSMESSAGE": "Formular senden Erfolgsmeldung", - "FORMSUBMITFAILUREMESSAGE": "Fehler beim Senden des Formulars", - "PLACEHOLDERMESSAGE": "Nachrichtenplatzhalter", - "NOTETITLE": "Hinweis Titel", + "FORMSUBMITSUCCESSMESSAGE": "Erfolgsmeldung beim Absenden des Formulars", + "FORMSUBMITFAILUREMESSAGE": "Fehlermeldung beim Absenden des Formulars", + "PLACEHOLDERMESSAGE": "Platzhalter für Nachrichten", + "NOTETITLE": "Titel der Notiz", "DELETE_INTERACTION": "Interaktion löschen", "FONTSIZE": "Schriftgröße", "TEXTCOLOR": "Textfarbe", @@ -388,65 +388,65 @@ "EDIT_SYSTEM": "System bearbeiten", "SYSTEM": "System", "NOTIFICATION": "Benachrichtigung", - "NOTIFICATIONSHAKE": "Shake", - "NOTIFICATIONSOUND": "Klingen", + "NOTIFICATIONSHAKE": "Schütteln", + "NOTIFICATIONSOUND": "Ton", "NOTIFICATIONTEMPLATE": "Vorlage", - "HIDEWHENOFFLINE": "verbergen", + "HIDEWHENOFFLINE": "Ausblenden", "INSERT_MESSAGE_HERE": "Fügen Sie hier Ihre Textnachricht ein", "AGENTALIAS": "Agent Alias", - "AGENTFULLNAME": "Voller Name des Agenten", + "AGENTFULLNAME": "Vollständiger Name des Agenten", "AGENTIDENTIFIER": "Identifikator", - "WAITFORTHEASSIGNEDAGENT": "Warte auf den zugewiesenen Agenten", + "WAITFORTHEASSIGNEDAGENT": "Warten auf den zugewiesenen Agenten", "ALIGNMENT": "Ausrichtung", "BOTTOM_RIGHT": "Unten rechts", "LEFT": "Links", - "RIGHT": "Recht", + "RIGHT": "Richtig", "VERTICALALIGNMENT": "Vertikale Ausrichtung", "POSITION": "Position", "VERTICALPOSITION": "Vertikale Position", - "SNIPPETSWIPEOUT": "Snippet wischen", + "SNIPPETSWIPEOUT": "Snippet ausschieben", "ALTERNATE": "Wechseln", "CENTERED": "Zentriert", - "CUSTOMERAVATAR": "Kundenavatar", + "CUSTOMERAVATAR": "Kunden-Avatar", "DEFAULTTITLE": "Standardtitel", "MESSAGESALIGNMENT": "Nachrichtenausrichtung", - "SHOWCUSTOMERAVATAR": "Kundenavatar zeigen", + "SHOWCUSTOMERAVATAR": "Kunden-Avatar anzeigen", "CUSTOMERALIAS": "Kunden-Alias", "EDIT_TAG": "Tag bearbeiten", - "TAG": "Etikett", - "AGENTADD_CHATWEBSITE": "Fügen Sie Agent zur Chat-Website hinzu", + "TAG": "Tag", + "AGENTADD_CHATWEBSITE": "Agent zur Chat-Website hinzufügen", "BACKGROUNDCOLOR": "Hintergrundfarbe", - "MESSAGEFONTSIZE": "Größe der Nachricht", - "AGENTTRANSFER": "Agent Transfer", - "AGENTTRANSFERTIMEOUT": "Zeitüberschreitung für Agententransfer", + "MESSAGEFONTSIZE": "Schriftgröße der Nachricht", + "AGENTTRANSFER": "Agententransfer", + "AGENTTRANSFERTIMEOUT": "Agententransfer-Timeout", "DIALOGFLOW": "Dialogflow", - "EDIT_DIALOGFLOW": "Dialogfluss bearbeiten", + "EDIT_DIALOGFLOW": "Dialogflow bearbeiten", "LANGUAGE": "Sprache", "QUEUETRANSFER": "Warteschlangenübertragung", - "QUEUETRANSFERTIMEOUT": "Warteschlangenübertragungs-Timeout", + "QUEUETRANSFERTIMEOUT": "Timeout bei der Warteschlangenübertragung", "SYSTEMALIAS": "Systemalias", "SYSTEMAVATAR": "System-Avatar", "TRANSFER": "Transfer", "WELCOMEMESSAGE": "Willkommensnachricht", - "ENABLECUSTOMERCHECKMARKS": "Aktivieren Sie die vom Kunden gelieferten / gelesenen Benachrichtigungen", - "CANNEDANSWERS": "Antworten in Dosen", - "CHATCANNEDANSWERS": "Antworten in Dosen", + "ENABLECUSTOMERCHECKMARKS": "Aktivieren vom Kunden gelieferten / gelesenen Benachrichtigungen", + "CANNEDANSWERS": "Vordefinierte Antworten", + "CHATCANNEDANSWERS": "Vordefinierte Antworten", "DOWNLOAD_INTERACTION": "Herunterladen", "LOGIN_TIME": "Login-Zeit", "PAUSE_TIME": "Pausenzeit", "ACCESSKEYID": "Zugangsschlüssel-ID", "BOTNAME": "Bot-Name", - "EDIT_AMAZONLEX": "Bearbeiten Sie Amazon Lex", + "EDIT_AMAZONLEX": "Amazon Lex bearbeiten", "LEXREGION": "Region", "SECRETACCESSKEY": "Geheimer Zugangsschlüssel", - "TEAMS_ASSOCIATION": "Vereinigung der Mannschaften", - "MANDATORYDISPOSITION": "Zwingende Disposition", - "MANDATORYDISPOSITIONPAUSEID": "Pause zur Verwendung, wenn die obligatorische Disposition aktiviert ist", - "ENABLESENDBUTTON": "Schaltfläche \"Senden\" aktivieren", + "TEAMS_ASSOCIATION": "Teams Verband", + "MANDATORYDISPOSITION": "Obligatorische Disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pausieren Sie die Verwendung, wenn die obligatorische Disposition aktiviert ist", + "ENABLESENDBUTTON": "Sendetaste aktivieren", "FEEDBACKTITLE": "Feedback-Titel", "TOOLTIP_SCREENRECORDING_OFF": "Bildschirmaufnahme verfügbar", "TOOLTIP_SCREENRECORDING_ON": "Bildschirmaufnahme läuft", - "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download ohne Anhänge", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Herunterladen ohne Anhänge", "DOWNLOAD_WITH_ATTACHMENTS": "Mit Anhängen herunterladen", "LASTMESSAGE": "Letzte Nachricht", "VIDAOO": "Vidaoo", @@ -457,7 +457,7 @@ "CLIENTEMAIL": "Kunden-E-Mail", "DIALOGFLOWV2": "Dialogflow V2", "EDIT_DIALOGFLOWV2": "Dialogflow V2 bearbeiten", - "PRIVATEKEY": "Privat Schlüssel", + "PRIVATEKEY": "Privat Key", "PROJECTID": "Projekt-ID" } } \ No newline at end of file diff --git a/public/app/main/apps/chat/i18n/es.json b/public/app/main/apps/chat/i18n/es.json index 532fa55..470fa88 100644 --- a/public/app/main/apps/chat/i18n/es.json +++ b/public/app/main/apps/chat/i18n/es.json @@ -12,7 +12,7 @@ "CLOSINGQUESTION_MAX_LENGTH": "El valor debe tener una longitud máxima igual a {{max}}", "COMMAND_REQUIRED": "Campo obligatorio", "CONDITION_REQUIRED": "Campo obligatorio", - "DISPOSITION_REQUIRED": "Campo obligatorio", + "DISPOSITION_REQUIRED": "Campo tipificación obligatorio", "EMAIL_MUST_BE_VALID": "Formato erróneo", "ENQUIRY_FORWARDING_ADDRESS_REQUIRED": "Campo obligatorio", "FALSEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "El valor debe ser mayor o igual que", @@ -113,7 +113,7 @@ "WEBSITEALIAS": "Un prefijo utilizado para componer el nombre del agente (prefijo ID del agente) que se muestra al visitante web durante la sesión de chat", "VERTICALPOSITION": "Representa la distancia en porcentaje desde arriba", "WELCOMEMESSAGE": "Deje en blanco si no desea enviar ningún mensaje de bienvenida.", - "MANDATORYDISPOSITION": "Cierre obligatorio", + "MANDATORYDISPOSITION": "Tipificación obligatorio", "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si el cierre obligatorio está habilitado" }, "ACCEPT": "Aceptar", @@ -123,7 +123,7 @@ "ACTIONS": "Acciones", "ADDRESS": "Dirección", "ADD_CHATCANNEDANSWER": "Agregar respuesta enlatada", - "ADD_CHATDISPOSITION": "Agregar cierre de chat", + "ADD_CHATDISPOSITION": "Agregar tipificación de chat", "ADD_CHATPROACTIVEACTION": "Agregar acción proactiva", "ADD_CHATQUEUE": "Agregar cola de chat", "ADD_CHATWEBSITE": "Añadir sitio web de chat", @@ -150,7 +150,7 @@ "BUTTONCOLOR": "Color del Botón", "CAPACITY": "Capacidad", "CHAT": "Chat", - "CHATDISPOSITIONS": "Cierres de chat", + "CHATDISPOSITIONS": "tipificación de chat", "CHATPROACTIVEACTIONS": "Acciones proactivas", "CHATQUEUES": "Colas de chat", "CHATWEBSITES": "Sitios web de chat", @@ -175,21 +175,21 @@ "DEFAULT_PAUSE": "Pausa por defecto", "DELETE": "Borrar", "DELETE_CHATCANNEDANSWER": "Borrar", - "DELETE_CHATDISPOSITION": "Eliminar Cierre de Chat", + "DELETE_CHATDISPOSITION": "Eliminar tipificación de Chat", "DELETE_CHATPROACTIVEACTION": "Eliminar acción proactiva", "DELETE_CHATQUEUE": "Eliminar cola de chat", "DELETE_CHATWEBSITE": "Eliminar el sitio web de chat", "DELETE_INTERACTION": "Eliminar interacción", "DELETE_OFFLINEMESSAGE": "Borrar", "DESCRIPTION": "Descripción", - "DISPOSITION": "Cierre", - "DISPOSITIONS": "Cierres", + "DISPOSITION": "Tipificación", + "DISPOSITIONS": "Tipificaciones", "DOWN": "Abajo", "DOWNLOADTRANSCRIPT": "Descargar la transcripción", "EDIT_AGENT": "Editar agente", "EDIT_AUTOREPLY": "Editar respuesta automática", "EDIT_CHATCANNEDANSWER": "Editar", - "EDIT_CHATDISPOSITION": "Editar Cierre de Chat", + "EDIT_CHATDISPOSITION": "Editar Tipificación de Chat", "EDIT_CHATPROACTIVEACTION": "Editar acción proactiva", "EDIT_CHATQUEUE": "Editar cola de chat", "EDIT_CHATWEBSITE": "Editar sitio web de chat", @@ -266,7 +266,7 @@ "NAME": "Nombre", "NAME_TITLE": "Etiqueta de entrada de nombre", "NEW_CHATCANNEDANSWER": "Nueva respuesta enlatada", - "NEW_CHATDISPOSITION": "Nuevo cierre de chat", + "NEW_CHATDISPOSITION": "Nueva tipificación de chat", "NEW_CHATPROACTIVEACTION": "Nueva acción proactiva", "NEW_CHATQUEUE": "Nueva cola de chat", "NEW_CHATWEBSITE": "Nuevo sitio web de chat", @@ -282,7 +282,7 @@ "NO_AGENT_ONLINE": "Sin agente en línea", "NO_AVAILABLE_INFO": "No hay información disponible", "NO_CHATCANNEDANSWER_AVAILABLE": "No hay respuestas enlatadas disponibles", - "NO_CHATDISPOSITION_AVAILABLE": "No hay Cierres de Chat disponibles", + "NO_CHATDISPOSITION_AVAILABLE": "No hay tipificaciones de Chat disponibles", "NO_CHATPROACTIVEACTION_AVAILABLE": "No hay acciones proactivas disponibles", "NO_INTERACTION_AVAILABLE": "No hay interacciones disponibles", "NO_OFFLINEMESSAGE_AVAILABLE": "No hay mensajes sin conexión disponibles", @@ -440,8 +440,8 @@ "LEXREGION": "Región", "SECRETACCESSKEY": "Clave de acceso secreto", "TEAMS_ASSOCIATION": "Asociación de equipos", - "MANDATORYDISPOSITION": "Cierre obligatorio", - "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si el cierre obligatorio está habilitado", + "MANDATORYDISPOSITION": "Tipificación obligatoria", + "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si la Tipificación obligatoria está habilitada", "ENABLESENDBUTTON": "Habilitar botón Enviar", "FEEDBACKTITLE": "Título de comentarios", "TOOLTIP_SCREENRECORDING_OFF": "Grabación de pantalla disponible", diff --git a/public/app/main/apps/contactmanager/i18n/en.json b/public/app/main/apps/contactmanager/i18n/en.json index 53b6c05..3cfbcad 100644 --- a/public/app/main/apps/contactmanager/i18n/en.json +++ b/public/app/main/apps/contactmanager/i18n/en.json @@ -183,6 +183,9 @@ "RELATIONSHIP": "Relationship ...", "RELATIONSHIPCOMPANY": " ... with", "CREATE": "Create", - "RECALLME": "Recall Me" + "RECALLME": "Recall Me", + "NOTIFICATIONS": { + "NO_DATA_ERROR": "Unable to retrieve any data" + } } } \ No newline at end of file diff --git a/public/app/main/apps/contactmanager/i18n/es.json b/public/app/main/apps/contactmanager/i18n/es.json index c664a85..d3ef502 100644 --- a/public/app/main/apps/contactmanager/i18n/es.json +++ b/public/app/main/apps/contactmanager/i18n/es.json @@ -24,7 +24,7 @@ "ADD_GLOBALCUSTOMFIELD": "Agregar campo personalizado", "ADD_LIST": "Añadir lista", "ADD_TAG": "Añadir etiqueta", - "ADD_VOICEDISPOSITION": "Agregar Cierre de voz", + "ADD_VOICEDISPOSITION": "Agregar Tipificación de voz", "AGENT": "Agente", "AGENTADD_LIST": "Agregar agentes a la lista", "ALIAS": "Alias", @@ -54,11 +54,11 @@ "DELETE_GLOBALCUSTOMFIELD": "Eliminar campo personalizado", "DELETE_HOPPER": "Eliminar Contenedor", "DELETE_LIST": "Eliminar lista", - "DELETE_VOICEDISPOSITION": "Eliminar cierre de voz", + "DELETE_VOICEDISPOSITION": "Eliminar tipificación de voz", "DESCRIPTION": "Descripción", "DETAIL": "Detalle", - "DISPOSITION": "Cierre", - "DISPOSITIONS": "Plan", + "DISPOSITION": "Tipificación", + "DISPOSITIONS": "Tipificaciones", "DUPLICATES": "Duplicados", "DUPLICATE_CONTACT": "Contacto duplicado", "EDIT_COMPANY": "Editar empresa", @@ -67,7 +67,7 @@ "EDIT_GLOBALCUSTOMFIELD": "Editar campo personalizado", "EDIT_HOPPER": "Editar Contenador", "EDIT_LIST": "Lista de edición", - "EDIT_VOICEDISPOSITION": "Editar Cierre de Voz", + "EDIT_VOICEDISPOSITION": "Editar Tipificación de Voz", "EMAIL": "Email", "EMAIL_DOMAIN": "Dominio de correo electrónico", "ENDTIME": "Hora de finalización", @@ -105,7 +105,7 @@ "NEW_GLOBALCUSTOMFIELD": "Nuevos campos personalizados", "NEW_LIST": "Lista nueva", "NEW_TAG": "Nueva etiqueta", - "NEW_VOICEDISPOSITION": "Nuevo cierre de voz", + "NEW_VOICEDISPOSITION": "Nueva tipificación de voz", "NONE": "Ninguna", "NOTES": "Notas", "NO_AVAILABLE_INFO": "No hay información disponible", @@ -113,7 +113,7 @@ "NO_COMPANIES": "Sin empresas", "NO_CUSTOMFIELD_AVAILABLE": "No hay campos personalizados disponibles", "NO_TAG": "Sin etiquetas", - "NO_VOICEDISPOSITION_AVAILABLE": "No hay Cierres de voz disponibles", + "NO_VOICEDISPOSITION_AVAILABLE": "No hay tipificaciones de voz disponibles", "OF": "de", "PAGE": "Página", "PERSONAL_INFO": "Información personal", @@ -160,7 +160,7 @@ "USERID": "Llamar a la identificación del agente", "VALUE": "Valor", "VAT": "IVA", - "VOICEDISPOSITIONS": "Cierres de voz", + "VOICEDISPOSITIONS": "Tipificaciones de voz", "VOICEQUEUEID": "ID de Cola de Voz", "WEBSITE": "Sitio web", "CUSTOMER_JOURNEY": "Seguimiento Cliente", diff --git a/public/app/main/apps/contactmanager/i18n/it.json b/public/app/main/apps/contactmanager/i18n/it.json index d4e9954..1f30bad 100644 --- a/public/app/main/apps/contactmanager/i18n/it.json +++ b/public/app/main/apps/contactmanager/i18n/it.json @@ -183,6 +183,9 @@ "RELATIONSHIP": "Tipo relazione ...", "RELATIONSHIPCOMPANY": " ... con", "CREATE": "Crea", - "RECALLME": "Recall Me" + "RECALLME": "Recall Me", + "NOTIFICATIONS": { + "NO_DATA_ERROR": "Impossibile recuperare le informazioni" + } } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/ar.json b/public/app/main/apps/dashboards/i18n/ar.json index 2cbe2d0..84a9253 100644 --- a/public/app/main/apps/dashboards/i18n/ar.json +++ b/public/app/main/apps/dashboards/i18n/ar.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "الوقت المنقضي منذ بدء المكالمة", "ELAPSED_DISPOSED": "الوقت المنقضي منذ انتهاء المكالمة", "LOST_CONNECTION": "مواجهة مشكلات اتصال الشبكة. الرجاء التحقق من اتصال الانترنت الخاص بك.", - "NO_RESULTS_AVAILABLE": "لا توجد نتائج متاحة" + "NO_RESULTS_AVAILABLE": "لا توجد نتائج متاحة", + "AUTOCLOSE": "إغلاق علامة تبويب الاتصال تلقائيًا بعد التخلص منها" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/cs.json b/public/app/main/apps/dashboards/i18n/cs.json index fa8384c..8779c51 100644 --- a/public/app/main/apps/dashboards/i18n/cs.json +++ b/public/app/main/apps/dashboards/i18n/cs.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Uplynulý čas od zahájení hovoru", "ELAPSED_DISPOSED": "Uplynulý čas od ukončení hovoru", "LOST_CONNECTION": "Problémy s připojením k síti. Zkontrolujte prosím své připojení k internetu.", - "NO_RESULTS_AVAILABLE": "Žádné výsledky nejsou k dispozici" + "NO_RESULTS_AVAILABLE": "Žádné výsledky nejsou k dispozici", + "AUTOCLOSE": "Po likvidaci automaticky zavřete kartu kontaktů" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/da.json b/public/app/main/apps/dashboards/i18n/da.json index 163b278..28282d5 100644 --- a/public/app/main/apps/dashboards/i18n/da.json +++ b/public/app/main/apps/dashboards/i18n/da.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Forløbet tid siden opkaldet startede", "ELAPSED_DISPOSED": "Forløbet tid siden opkaldet sluttede", "LOST_CONNECTION": "Oplever problemer med netværksforbindelsen. Kontroller din internetforbindelse.", - "NO_RESULTS_AVAILABLE": "Ingen resultater tilgængelige" + "NO_RESULTS_AVAILABLE": "Ingen resultater tilgængelige", + "AUTOCLOSE": "Luk kontaktfanen automatisk efter bortskaffelse" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/de.json b/public/app/main/apps/dashboards/i18n/de.json index afd7c65..2185889 100644 --- a/public/app/main/apps/dashboards/i18n/de.json +++ b/public/app/main/apps/dashboards/i18n/de.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Verstrichene Zeit seit dem Start des Anrufs", "ELAPSED_DISPOSED": "Verstrichene Zeit seit Beendigung des Anrufs", "LOST_CONNECTION": "Probleme mit der Netzwerkkonnektivität. Bitte überprüfe deine Internetverbindung.", - "NO_RESULTS_AVAILABLE": "Keine Ergebnisse verfügbar" + "NO_RESULTS_AVAILABLE": "Keine Ergebnisse verfügbar", + "AUTOCLOSE": "Schließen Sie die Kontaktlasche nach der Entsorgung automatisch" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/en.json b/public/app/main/apps/dashboards/i18n/en.json index 4b44a45..208fa01 100644 --- a/public/app/main/apps/dashboards/i18n/en.json +++ b/public/app/main/apps/dashboards/i18n/en.json @@ -174,6 +174,7 @@ "MERGE": "Merge", "DUPLICATE": "Duplicate", "UNIQUEID": "Uniqueid", + "AUTOCLOSE": "Automatically close contact tab after disposal", "CAMPAIGN": "Campaign", "NONE": "None", "NAME": "Name", diff --git a/public/app/main/apps/dashboards/i18n/es.json b/public/app/main/apps/dashboards/i18n/es.json index 0e902b3..786fc9e 100644 --- a/public/app/main/apps/dashboards/i18n/es.json +++ b/public/app/main/apps/dashboards/i18n/es.json @@ -15,7 +15,7 @@ "AGENT": "Agente", "CREATED_AT": "Creado en", "CLOSED_AT": "Cerrado a", - "DISPOSITION": "Cierre", + "DISPOSITION": "Tipificación", "CONTACT": "Contacto", "INTERACTION": "Interacción", "BROWSER_NAME": "Nombre del Navegador", @@ -25,7 +25,7 @@ "DEVICE_MODEL": "Modelo de dispositivo", "DEVICE_VENDOR": "Proveedor del dispositivo", "DEVICE_TYPE": "Tipo de dispositivo", - "RECALLME": "Recordar", + "RECALLME": "Reagendar individual", "DROP_RATE": "Tasa de Llamadas Asignadas a Colas", "DROPPED": "Asignado", "DROPPED_TEXT": "Llamadas Asignadas a Colas", @@ -41,7 +41,7 @@ "UPDATE": "Actualizar", "MORE": "Más", "MOTIONDIALER": "Motion Bull", - "DISPOSE": "Disponer", + "DISPOSE": "Tipificar", "QUEUES": "Colas", "DIALER_CALL": "Numero Marcado", "ELAPSED_TIME": "Tiempo transcurrido", @@ -59,7 +59,7 @@ "SOLD": "Vendido", "SPECIAL": "Especial", "BLACKLIST": "Lista negra", - "RESCHEDULE": "Reprogramar", + "RESCHEDULE": "Reagendar Cola", "FIRSTNAME": "Primer Nombre", "LASTNAME": "Apellido", "MOBILE": "Celular", @@ -121,17 +121,17 @@ "VOICE_TOTAL_OFFERED": "El número total de llamadas de cola (completado + abandonado). Tenga en cuenta que las llamadas que entran en un IVR y no en una cola, no serán consideradas", "VOICE_UNMANAGED": "El número total de llamadas de cola no administradas, para todas las colas existentes. Incluye las llamadas que se abandonan por tiempo de espera, joinempty, leavewhenempty y exitwithkey (cfr. Asterisk doc para más información)", "VOICE_WAITING": "El número total de llamadas de cola de espera, para todas las colas existentes", - "MANDATORY_DISPOSITION_ENABLED": "Cierre obligatorio habilitado para esta cuenta", + "MANDATORY_DISPOSITION_ENABLED": "Tipificación obligatoria habilitada para esta cuenta", "EXACT_MATCH_FILTER": "Busca una coincidencia exacta", "LIKE_FILTER": "Busca el patrón especificado" }, "ERRORS": { "FIRSTNAME_REQUIRED": "El Nombre es obligatorio", "PHONE_REQUIRED": "El teléfono es necesario", - "DISPOSITION_REQUIRED": "Campo obligatorio", - "AGENT_REQUIRED": "Campo obligatorio", - "QUEUE_REQUIRED": "Campo obligatorio", - "CAMPAIGN_REQUIRED": "Campo obligatorio" + "DISPOSITION_REQUIRED": "Campo Tipificación obligatorio", + "AGENT_REQUIRED": "Campo Agente obligatorio", + "QUEUE_REQUIRED": "Campo de Cola obligatorio", + "CAMPAIGN_REQUIRED": "Campo Campaña obligatorio" }, "NO_AVAILABLE_INFO": "No hay información disponible", "WELCOME_TO_MOTION": "Bienvenido a Motion", @@ -171,9 +171,9 @@ "OF": "De", "REPLY_PLACEHOLDER": "Escriba y pulse entre para enviar un mensaje", "CONTACT_INFO": "Información de contacto", - "CLOSE_AND_DISPOSE": "Cerrar y Disponer", - "DISPOSITIONS": "Cierres", - "CLOSE_WITHOUT_DISPOSE": "Cerrar sin Disponer", + "CLOSE_AND_DISPOSE": "Cerrar y Tipificar", + "DISPOSITIONS": "Tipificaciones", + "CLOSE_WITHOUT_DISPOSE": "Cerrar sin Tipificar", "ACCEPT": "Aceptar", "REJECT": "Rechazar", "CLOSED": "Cerrado", @@ -255,7 +255,7 @@ "CALL_NUMBER": "Llamada", "TRANSFER_NUMBER": "Transferir", "CALL_SAVED": "Llamada guardada correctamente", - "CALL_DISPOSED": "Llamada correctamente dispuesta", + "CALL_DISPOSED": "Llamada correctamente tipificada", "CHANNEL_WAITING_TEXT": "Esperando interacciones en cola", "CHANNEL_QUEUE": "Cola", "CHANNEL_FROM": "De", @@ -282,7 +282,7 @@ "NO_DATA_AVAILABLE": "Datos no disponibles", "AGENTS": "Agentes", "TRANSFER": "Transferir", - "NO_DISPOSITION_SET": "No hay cierre establecido", + "NO_DISPOSITION_SET": "No hay tipificación establecida", "ABANDONED_RATE": "Tasa de Abandono", "ABANDONED_RATE_TEXT": "Interacciones Tasa de Abandono", "AVG_MANAGED_TIME": "Tiempo de gestión de AVG", @@ -295,11 +295,11 @@ "TODAY_INTERACTIONS_STATS": "Estadísticas Diarias Interacciones", "UNMANAGED_RATE": "Tasa No Administrada", "UNMANAGED_RATE_TEXT": "Tasa Interacciones No Gestionadas", - "VOICE_ABANDONED": "ABANDONADO", + "VOICE_ABANDONED": "ABANDONADA", "VOICE_ABANDONED_TEXT": "LLAMADAS DE COLA ABANDONADAS", "VOICE_ABANDON_RATE": "TASA DE ABANDONO", "VOICE_ABANDON_RATE_TEXT": "TASA DE LLAMADA ABANDONADAS", - "VOICE_ANSWERED": "CONTESTADO", + "VOICE_ANSWERED": "CONTESTADA", "VOICE_ANSWERED_TEXT": "LLAMADAS CONTESTADAS COLA", "VOICE_ANSWER_RATE": "TASA DE LLAMADAS RESPONDIDAS", "VOICE_ANSWER_RATE_TEXT": "COLA TASA DE LLAMADAS RESPONDIDAS", @@ -322,8 +322,8 @@ "PUBLIC_INTERACTION": "La interacción es pública.", "VISIBILITY": "Visibilidad", "INTERACTION_CLOSED": "Interacción correctamente cerrada", - "INTERACTION_CLOSED_DISPOSED": "Interacción debidamente cerrada y disponibles", - "INTERACTION_DISPOSED": "Interacción adecuadamente eliminada", + "INTERACTION_CLOSED_DISPOSED": "Interacción debidamente cerrada y tipificada", + "INTERACTION_DISPOSED": "Interacción adecuadamente tipificada", "ASSIGNED_TO_OTHERS": "Asignado a otros", "SELECT_ALL": "Seleccionar todo", "CHAT_INTERACTIONS": "Interacciones de chat", @@ -392,7 +392,7 @@ "INVOICEDETAILS": "DETALLES DE FACTURA", "INVOICEDISCOUNT": "Descuento", "INVOICEEMITED": "Emitido", - "INVOICEID": "Factura", + "INVOICEID": "IDFactura", "INVOICENAME": "Nombre de factura", "INVOICENOPRODUCTAMOUNT": "Cantidad", "INVOICENOPRODUCTDESCRIPTION": "Descripción en la factura", @@ -555,13 +555,14 @@ "SELECT_CONTACT": "Seleccione un contacto", "WHICH_ONE_TO_USE": "Cual quieres usar?", "NO_WHATSAPP_ACCOUNTS_AVAILABLE": "No hay cuenta de Whatsapp disponible", - "SECOND_LEVEL_DISPOSITION": "Disposición de segundo nivel", - "THIRD_LEVEL_DISPOSITION": "Disposición de tercer nivel", + "SECOND_LEVEL_DISPOSITION": "Tipificación de segundo nivel", + "THIRD_LEVEL_DISPOSITION": "Tipificación de tercer nivel", "LICENSE_EXPIRE_REMAINING_DAYS": "¡Su licencia está a punto de caducar! Comuníquese con su administrador", "CREATEDAT": "Creado en", "ELAPSED_ANSWERED": "Tiempo transcurrido desde que comenzó la llamada", "ELAPSED_DISPOSED": "Tiempo transcurrido desde que finalizó la llamada", "LOST_CONNECTION": "Experimentar problemas de conectividad de red. Por favor revise su conexion a internet.", - "NO_RESULTS_AVAILABLE": "No hay resultados disponibles" + "NO_RESULTS_AVAILABLE": "No hay resultados disponibles", + "AUTOCLOSE": "Cerrar automáticamente la pestaña de contacto después de su eliminación" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/et.json b/public/app/main/apps/dashboards/i18n/et.json index 069ed7d..f5ecee3 100644 --- a/public/app/main/apps/dashboards/i18n/et.json +++ b/public/app/main/apps/dashboards/i18n/et.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Kulunud aeg kõne alustamisest", "ELAPSED_DISPOSED": "Kulunud aeg kõne lõppemisest", "LOST_CONNECTION": "Võrguühendusprobleemide kogemine. Palun kontrollige oma Interneti-ühendust.", - "NO_RESULTS_AVAILABLE": "Tulemusi pole saadaval" + "NO_RESULTS_AVAILABLE": "Tulemusi pole saadaval", + "AUTOCLOSE": "Pärast utiliseerimist sulgege kontaktikaart automaatselt" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/fa.json b/public/app/main/apps/dashboards/i18n/fa.json index f4aa3ff..e0f647b 100644 --- a/public/app/main/apps/dashboards/i18n/fa.json +++ b/public/app/main/apps/dashboards/i18n/fa.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "زمان سپری شده از زمان شروع تماس", "ELAPSED_DISPOSED": "زمان سپری شده از زمان پایان تماس", "LOST_CONNECTION": "مشکلات اتصال به شبکه را تجربه می کنید. لطفاً اتصال اینترنت خود را بررسی کنید.", - "NO_RESULTS_AVAILABLE": "هیچ نتیجه ای در دسترس نیست" + "NO_RESULTS_AVAILABLE": "هیچ نتیجه ای در دسترس نیست", + "AUTOCLOSE": "پس از دفع ، به طور خودکار برگه تماس را ببندید" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/fi.json b/public/app/main/apps/dashboards/i18n/fi.json index c487500..8011f45 100644 --- a/public/app/main/apps/dashboards/i18n/fi.json +++ b/public/app/main/apps/dashboards/i18n/fi.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Kulunut aika puhelun aloittamisesta", "ELAPSED_DISPOSED": "Kulunut aika puhelun lopettamisesta", "LOST_CONNECTION": "Verkkoyhteysongelmia. Tarkista internetyhteytesi.", - "NO_RESULTS_AVAILABLE": "Ei tuloksia" + "NO_RESULTS_AVAILABLE": "Ei tuloksia", + "AUTOCLOSE": "Sulje kosketusvälilehti automaattisesti hävittämisen jälkeen" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/fr.json b/public/app/main/apps/dashboards/i18n/fr.json index 521c4db..66b62f1 100644 --- a/public/app/main/apps/dashboards/i18n/fr.json +++ b/public/app/main/apps/dashboards/i18n/fr.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Temps écoulé depuis le début de l'appel", "ELAPSED_DISPOSED": "Temps écoulé depuis la fin de l'appel", "LOST_CONNECTION": "Vous rencontrez des problèmes de connectivité réseau. S'il vous plait, vérifiez votre connexion internet.", - "NO_RESULTS_AVAILABLE": "Aucun résultat disponible" + "NO_RESULTS_AVAILABLE": "Aucun résultat disponible", + "AUTOCLOSE": "Fermer automatiquement l'onglet de contact après l'élimination" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/he.json b/public/app/main/apps/dashboards/i18n/he.json index b183ffa..1160f20 100644 --- a/public/app/main/apps/dashboards/i18n/he.json +++ b/public/app/main/apps/dashboards/i18n/he.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "הזמן שחלף מאז תחילת השיחה", "ELAPSED_DISPOSED": "הזמן שחלף מאז סיום השיחה", "LOST_CONNECTION": "חווה בעיות קישוריות רשת. אנא בדוק את חיבור האינטרנט שלך.", - "NO_RESULTS_AVAILABLE": "אין תוצאות זמינות" + "NO_RESULTS_AVAILABLE": "אין תוצאות זמינות", + "AUTOCLOSE": "סגור אוטומטית את לשונית אנשי הקשר לאחר סילוק" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/hi.json b/public/app/main/apps/dashboards/i18n/hi.json index 4097949..6555f04 100644 --- a/public/app/main/apps/dashboards/i18n/hi.json +++ b/public/app/main/apps/dashboards/i18n/hi.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "कॉल शुरू होने के बाद का समय समाप्त हो गया", "ELAPSED_DISPOSED": "कॉल समाप्त होने के बाद का समय समाप्त हो गया", "LOST_CONNECTION": "नेटवर्क कनेक्टिविटी मुद्दों का अनुभव। कृपया अपने इंटरनेट कनेक्शन की जाँच करें।", - "NO_RESULTS_AVAILABLE": "कोई परिणाम उपलब्ध नहीं है" + "NO_RESULTS_AVAILABLE": "कोई परिणाम उपलब्ध नहीं है", + "AUTOCLOSE": "निपटान के बाद संपर्क टैब को स्वचालित रूप से बंद करें" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/id.json b/public/app/main/apps/dashboards/i18n/id.json index 658517a..3aedd9a 100644 --- a/public/app/main/apps/dashboards/i18n/id.json +++ b/public/app/main/apps/dashboards/i18n/id.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Waktu yang berlalu sejak panggilan dimulai", "ELAPSED_DISPOSED": "Waktu yang berlalu sejak panggilan berakhir", "LOST_CONNECTION": "Mengalami masalah konektivitas jaringan. Silakan periksa koneksi internet Anda.", - "NO_RESULTS_AVAILABLE": "Tidak ada hasil yang tersedia" + "NO_RESULTS_AVAILABLE": "Tidak ada hasil yang tersedia", + "AUTOCLOSE": "Tutup tab kontak secara otomatis setelah dibuang" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/it.json b/public/app/main/apps/dashboards/i18n/it.json index 72aba4b..9a3e376 100644 --- a/public/app/main/apps/dashboards/i18n/it.json +++ b/public/app/main/apps/dashboards/i18n/it.json @@ -116,6 +116,7 @@ "CHAT": "Chat", "MAIL": "Email", "SMS": "Sms", + "AUTOCLOSE": "Chiudi automaticamente la scheda contatto dopo la disposition", "OPENCHANNEL": "Open Channel", "FAX": "Fax", "NOT_ASSIGNED": "Non assegnata", diff --git a/public/app/main/apps/dashboards/i18n/ja.json b/public/app/main/apps/dashboards/i18n/ja.json index a3794e4..83dcec0 100644 --- a/public/app/main/apps/dashboards/i18n/ja.json +++ b/public/app/main/apps/dashboards/i18n/ja.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "通話開始からの経過時間", "ELAPSED_DISPOSED": "通話終了からの経過時間", "LOST_CONNECTION": "ネットワーク接続の問題が発生しています。インターネット接続を確認してください。", - "NO_RESULTS_AVAILABLE": "利用可能な結果はありません" + "NO_RESULTS_AVAILABLE": "利用可能な結果はありません", + "AUTOCLOSE": "廃棄後、コンタクトタブを自動的に閉じる" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/ko.json b/public/app/main/apps/dashboards/i18n/ko.json index 3da979d..d55356e 100644 --- a/public/app/main/apps/dashboards/i18n/ko.json +++ b/public/app/main/apps/dashboards/i18n/ko.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "통화가 시작된 이후 경과 된 시간", "ELAPSED_DISPOSED": "통화가 종료 된 이후 경과 된 시간", "LOST_CONNECTION": "네트워크 연결 문제가 있습니다. 인터넷 연결을 확인하십시오.", - "NO_RESULTS_AVAILABLE": "사용 가능한 ê²°ê³¼ 없음" + "NO_RESULTS_AVAILABLE": "사용 가능한 ê²°ê³¼ 없음", + "AUTOCLOSE": "폐기 후 자동으로 접촉 탭 닫기" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/lt.json b/public/app/main/apps/dashboards/i18n/lt.json index 88ef008..fe18996 100644 --- a/public/app/main/apps/dashboards/i18n/lt.json +++ b/public/app/main/apps/dashboards/i18n/lt.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Praėjo laikas nuo skambučio pradžios", "ELAPSED_DISPOSED": "Praėjo laikas nuo skambučio pabaigos", "LOST_CONNECTION": "IÅ¡kyla tinklo ryÅ¡io problemų. Patikrinkite interneto ryšį.", - "NO_RESULTS_AVAILABLE": "Rezultatų nėra" + "NO_RESULTS_AVAILABLE": "Rezultatų nėra", + "AUTOCLOSE": "Po Å¡alinimo automatiÅ¡kai uždarykite kontaktų skirtuką" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/lv.json b/public/app/main/apps/dashboards/i18n/lv.json index 21e3c28..ca79c5b 100644 --- a/public/app/main/apps/dashboards/i18n/lv.json +++ b/public/app/main/apps/dashboards/i18n/lv.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Pagājis laiks kopÅ¡ zvana sākuma", "ELAPSED_DISPOSED": "Pagājis laiks kopÅ¡ zvana beigām", "LOST_CONNECTION": "TÄ«kla savienojamÄ«bas problēmas. LÅ«dzu, pārbaudiet interneta savienojumu.", - "NO_RESULTS_AVAILABLE": "Rezultāti nav pieejami" + "NO_RESULTS_AVAILABLE": "Rezultāti nav pieejami", + "AUTOCLOSE": "Pēc iznÄ«cināšanas automātiski aizveriet kontaktu cilni" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/nl.json b/public/app/main/apps/dashboards/i18n/nl.json index e10811e..18fd28c 100644 --- a/public/app/main/apps/dashboards/i18n/nl.json +++ b/public/app/main/apps/dashboards/i18n/nl.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Verstreken tijd sinds het gesprek is gestart", "ELAPSED_DISPOSED": "Verstreken tijd sinds het gesprek is beëindigd", "LOST_CONNECTION": "Problemen met netwerkconnectiviteit ervaren. Controleer uw internetverbinding.", - "NO_RESULTS_AVAILABLE": "Geen resultaten beschikbaar" + "NO_RESULTS_AVAILABLE": "Geen resultaten beschikbaar", + "AUTOCLOSE": "Sluit het contacttabblad automatisch na verwijdering" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/no.json b/public/app/main/apps/dashboards/i18n/no.json index d1448ba..1b886a6 100644 --- a/public/app/main/apps/dashboards/i18n/no.json +++ b/public/app/main/apps/dashboards/i18n/no.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Forløpt tid siden samtalen startet", "ELAPSED_DISPOSED": "Forløpt tid siden samtalen ble avsluttet", "LOST_CONNECTION": "Opplever problemer med nettverkstilkobling. Kontroller internettforbindelsen din.", - "NO_RESULTS_AVAILABLE": "Ingen resultater tilgjengelig" + "NO_RESULTS_AVAILABLE": "Ingen resultater tilgjengelig", + "AUTOCLOSE": "Lukk kontaktfanen automatisk etter avhending" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/pl.json b/public/app/main/apps/dashboards/i18n/pl.json index fe5e108..212d605 100644 --- a/public/app/main/apps/dashboards/i18n/pl.json +++ b/public/app/main/apps/dashboards/i18n/pl.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Czas, który upłynął od rozpoczęcia rozmowy", "ELAPSED_DISPOSED": "Czas, który upłynął od zakończenia połączenia", "LOST_CONNECTION": "Występują problemy z łącznością sieciową. Proszę sprawdzić swoje połączenie z internetem.", - "NO_RESULTS_AVAILABLE": "Brak dostępnych wyników" + "NO_RESULTS_AVAILABLE": "Brak dostępnych wyników", + "AUTOCLOSE": "Automatycznie zamykaj zakładkę kontaktową po utylizacji" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/pt-BR.json b/public/app/main/apps/dashboards/i18n/pt-BR.json index 8604dec..c499e15 100644 --- a/public/app/main/apps/dashboards/i18n/pt-BR.json +++ b/public/app/main/apps/dashboards/i18n/pt-BR.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Tempo decorrido desde o início da chamada", "ELAPSED_DISPOSED": "Tempo decorrido desde o final da chamada", "LOST_CONNECTION": "Enfrentando problemas de conectividade de rede. Por favor, verifique sua conexão à internet.", - "NO_RESULTS_AVAILABLE": "Nenhum resultado disponível" + "NO_RESULTS_AVAILABLE": "Nenhum resultado disponível", + "AUTOCLOSE": "Fechar automaticamente a guia de contato após o descarte" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/pt-PT.json b/public/app/main/apps/dashboards/i18n/pt-PT.json index 0b6640c..73e3d51 100644 --- a/public/app/main/apps/dashboards/i18n/pt-PT.json +++ b/public/app/main/apps/dashboards/i18n/pt-PT.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Tempo decorrido desde o início da chamada", "ELAPSED_DISPOSED": "Tempo decorrido desde o final da chamada", "LOST_CONNECTION": "Enfrentando problemas de conectividade de rede. Por favor, verifique sua conexão à internet.", - "NO_RESULTS_AVAILABLE": "Nenhum resultado disponível" + "NO_RESULTS_AVAILABLE": "Nenhum resultado disponível", + "AUTOCLOSE": "Fechar automaticamente a guia de contato após o descarte" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/ru.json b/public/app/main/apps/dashboards/i18n/ru.json index f76bf12..bb889b4 100644 --- a/public/app/main/apps/dashboards/i18n/ru.json +++ b/public/app/main/apps/dashboards/i18n/ru.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Время, прошедшее с начала звонка", "ELAPSED_DISPOSED": "Время, прошедшее с момента завершения вызова", "LOST_CONNECTION": "Возникли проблемы с подключением к сети. Пожалуйста, проверьте ваше интернет-соединение.", - "NO_RESULTS_AVAILABLE": "Нет результатов" + "NO_RESULTS_AVAILABLE": "Нет результатов", + "AUTOCLOSE": "Автоматически закрывать вкладку контактов после удаления" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/sv.json b/public/app/main/apps/dashboards/i18n/sv.json index eac9be3..dda3460 100644 --- a/public/app/main/apps/dashboards/i18n/sv.json +++ b/public/app/main/apps/dashboards/i18n/sv.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Förfluten tid sedan samtalet startade", "ELAPSED_DISPOSED": "Förfluten tid sedan samtalet avslutades", "LOST_CONNECTION": "Upplever problem med nätverksanslutning. Kontrollera din internetanslutning.", - "NO_RESULTS_AVAILABLE": "Inga resultat tillgängliga" + "NO_RESULTS_AVAILABLE": "Inga resultat tillgängliga", + "AUTOCLOSE": "Stäng kontaktfliken automatiskt efter bortskaffande" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/tr.json b/public/app/main/apps/dashboards/i18n/tr.json index a39e7a3..9dea83a 100644 --- a/public/app/main/apps/dashboards/i18n/tr.json +++ b/public/app/main/apps/dashboards/i18n/tr.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "Aramanın başlamasından bu yana geçen süre", "ELAPSED_DISPOSED": "Aramanın sona ermesinden bu yana geçen süre", "LOST_CONNECTION": "Ağ bağlantısı sorunları yaşanıyor. Lütfen internet bağlantınızı kontrol edin.", - "NO_RESULTS_AVAILABLE": "Kullanılabilir sonuç yok" + "NO_RESULTS_AVAILABLE": "Kullanılabilir sonuç yok", + "AUTOCLOSE": "Atıldıktan sonra temas sekmesini otomatik olarak kapatın" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/zh-CN.json b/public/app/main/apps/dashboards/i18n/zh-CN.json index fbda2e5..221eb76 100644 --- a/public/app/main/apps/dashboards/i18n/zh-CN.json +++ b/public/app/main/apps/dashboards/i18n/zh-CN.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "自通话开始以来经过的时间", "ELAPSED_DISPOSED": "通话结束后经过的时间", "LOST_CONNECTION": "遇到网络连接问题。请检查您的互联网连接。", - "NO_RESULTS_AVAILABLE": "无可用结果" + "NO_RESULTS_AVAILABLE": "无可用结果", + "AUTOCLOSE": "处置后自动关闭接触片" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/zh-TW.json b/public/app/main/apps/dashboards/i18n/zh-TW.json index 7740326..cdbd018 100644 --- a/public/app/main/apps/dashboards/i18n/zh-TW.json +++ b/public/app/main/apps/dashboards/i18n/zh-TW.json @@ -562,6 +562,7 @@ "ELAPSED_ANSWERED": "自通話開始以來經過的時間", "ELAPSED_DISPOSED": "通話結束後經過的時間", "LOST_CONNECTION": "遇到網絡連接問題。請檢查您的互聯網連接。", - "NO_RESULTS_AVAILABLE": "無可用結果" + "NO_RESULTS_AVAILABLE": "無可用結果", + "AUTOCLOSE": "處置後自動關閉接觸片" } } \ No newline at end of file diff --git a/public/app/main/apps/integrations/i18n/ar.json b/public/app/main/apps/integrations/i18n/ar.json index 7336398..c3a871c 100644 --- a/public/app/main/apps/integrations/i18n/ar.json +++ b/public/app/main/apps/integrations/i18n/ar.json @@ -28,7 +28,8 @@ "VTIGER_USER_NAME_REQUIRED": "حقل الزامي", "TENANTID_REQUIRED": "حقل الزامي", "EMAIL_REQUIRED": "حقل الزامي", - "CODE_REQUIRED": "حقل الزامي" + "CODE_REQUIRED": "حقل الزامي", + "MOTIONPROXYADDRESS_REQUIRED": "حقل الزامي" }, "HELP": { "MOTIONPROXYADDRESS": "ادخل رابط العنوان اذا كنت ترغب في تعبئة التذكرة", diff --git a/public/app/main/apps/integrations/i18n/cs.json b/public/app/main/apps/integrations/i18n/cs.json index 1e40704..a8752bd 100644 --- a/public/app/main/apps/integrations/i18n/cs.json +++ b/public/app/main/apps/integrations/i18n/cs.json @@ -51,7 +51,8 @@ "ACCESS_KEY_REQUIRED": "Mandatory field", "CODE_REQUIRED": "Povinné pole", "EMAIL_REQUIRED": "Povinné pole", - "TENANTID_REQUIRED": "Povinné pole" + "TENANTID_REQUIRED": "Povinné pole", + "MOTIONPROXYADDRESS_REQUIRED": "Povinné pole" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Address: it is reqired if you want to fill the ticket body with Recording URL. Enter the address in the following format: : //[:]. Example: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/da.json b/public/app/main/apps/integrations/i18n/da.json index 35176e5..34dbd18 100644 --- a/public/app/main/apps/integrations/i18n/da.json +++ b/public/app/main/apps/integrations/i18n/da.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Obligatorisk felt", "TENANTID_REQUIRED": "Obligatorisk felt", "EMAIL_REQUIRED": "Obligatorisk felt", - "CODE_REQUIRED": "Obligatorisk felt" + "CODE_REQUIRED": "Obligatorisk felt", + "MOTIONPROXYADDRESS_REQUIRED": "Obligatorisk felt" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Adresse: det er obligatorisk, hvis du vil udfylde sedlen med optagelsen URL. Indtast i følgende format: : //[:]. Eksempel: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/de.json b/public/app/main/apps/integrations/i18n/de.json index 1386368..3d7a2c5 100644 --- a/public/app/main/apps/integrations/i18n/de.json +++ b/public/app/main/apps/integrations/i18n/de.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Pflichtfeld", "TENANTID_REQUIRED": "Pflichtfeld", "EMAIL_REQUIRED": "Pflichtfeld", - "CODE_REQUIRED": "Pflichtfeld" + "CODE_REQUIRED": "Pflichtfeld", + "MOTIONPROXYADDRESS_REQUIRED": "Pflichtfeld" }, "HELP": { "MOTIONPROXYADDRESS": "Bewegung (Proxy) Adresse: Es ist obligatorisch, wenn Sie wollen, füllen Sie das Ticket mit Neucodierungen URL. Bitte geben Sie im folgenden Format ein: ≪protocol> : //[:]. Beispiel: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/es.json b/public/app/main/apps/integrations/i18n/es.json index 956710e..231f1a9 100644 --- a/public/app/main/apps/integrations/i18n/es.json +++ b/public/app/main/apps/integrations/i18n/es.json @@ -37,7 +37,8 @@ "VTIGER_USER_NAME_REQUIRED": "Campo obligatorio", "TENANTID_REQUIRED": "Campo obligatorio", "EMAIL_REQUIRED": "Campo obligatorio", - "CODE_REQUIRED": "Campo obligatorio" + "CODE_REQUIRED": "Campo obligatorio", + "MOTIONPROXYADDRESS_REQUIRED": "Campo obligatorio" }, "ACCOUNT": "Cuenta", "ADD": "Añadir", diff --git a/public/app/main/apps/integrations/i18n/et.json b/public/app/main/apps/integrations/i18n/et.json index 5f9b90b..64e1961 100644 --- a/public/app/main/apps/integrations/i18n/et.json +++ b/public/app/main/apps/integrations/i18n/et.json @@ -51,7 +51,8 @@ "ACCESS_KEY_REQUIRED": "Mandatory field", "CODE_REQUIRED": "Kohustuslik väli", "EMAIL_REQUIRED": "Kohustuslik väli", - "TENANTID_REQUIRED": "Kohustuslik väli" + "TENANTID_REQUIRED": "Kohustuslik väli", + "MOTIONPROXYADDRESS_REQUIRED": "Kohustuslik väli" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Address: it is reqired if you want to fill the ticket body with Recording URL. Enter the address in the following format: : //[:]. Example: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/fa.json b/public/app/main/apps/integrations/i18n/fa.json index 82163d6..c054d38 100644 --- a/public/app/main/apps/integrations/i18n/fa.json +++ b/public/app/main/apps/integrations/i18n/fa.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "زمینه اجباری", "TENANTID_REQUIRED": "زمینه اجباری", "EMAIL_REQUIRED": "زمینه اجباری", - "CODE_REQUIRED": "زمینه اجباری" + "CODE_REQUIRED": "زمینه اجباری", + "MOTIONPROXYADDRESS_REQUIRED": "زمینه اجباری" }, "HELP": { "MOTIONPROXYADDRESS": "حركت (ظاهرا) آدرس: الزامی است اگر شما می خواهید یک کارت پر از بدن به خاطر ثبت زندگی روزمره مردم اسکاتلند دارای URL. لطفاً موارد زیر را در آن وارد کنید: &القا فرمت پروتكل&31 دسامبر 2012 جی تی; : //&القا ipaddress&31 دسامبر 2012 جی تی;[:&القا درگاه&31 دسامبر 2012 جی تی;] است. مثال: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/fi.json b/public/app/main/apps/integrations/i18n/fi.json index 8b8da71..13ee2c2 100644 --- a/public/app/main/apps/integrations/i18n/fi.json +++ b/public/app/main/apps/integrations/i18n/fi.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Pakollinen kenttä", "TENANTID_REQUIRED": "Pakollinen kenttä", "EMAIL_REQUIRED": "Pakollinen kenttä", - "CODE_REQUIRED": "Pakollinen kenttä" + "CODE_REQUIRED": "Pakollinen kenttä", + "MOTIONPROXYADDRESS_REQUIRED": "Pakollinen kenttä" }, "HELP": { "MOTIONPROXYADDRESS": "Liikkeen (proxy) Osoite: se on pakollinen, jos haluat täyttää tulostuspyynnön elimelle -tallennusta URL. Anna seuraavassa muodossa: [:]. Esimerkki: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/fr.json b/public/app/main/apps/integrations/i18n/fr.json index 20119b4..33a223f 100644 --- a/public/app/main/apps/integrations/i18n/fr.json +++ b/public/app/main/apps/integrations/i18n/fr.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Champ obligatoire", "TENANTID_REQUIRED": "Champ obligatoire", "EMAIL_REQUIRED": "Champ obligatoire", - "CODE_REQUIRED": "Champ obligatoire" + "CODE_REQUIRED": "Champ obligatoire", + "MOTIONPROXYADDRESS_REQUIRED": "Champ obligatoire" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Adresse : il est obligatoire si vous souhaitez le corps avec de la réécriture URL. S'il vous plaît, entrez dans le format suivant : : //[:]. דוגמה: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/hi.json b/public/app/main/apps/integrations/i18n/hi.json index c0cfde2..03a4e3a 100644 --- a/public/app/main/apps/integrations/i18n/hi.json +++ b/public/app/main/apps/integrations/i18n/hi.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "आवश्यक स्थान", "TENANTID_REQUIRED": "आवश्यक स्थान", "EMAIL_REQUIRED": "आवश्यक स्थान", - "CODE_REQUIRED": "आवश्यक स्थान" + "CODE_REQUIRED": "आवश्यक स्थान", + "MOTIONPROXYADDRESS_REQUIRED": "आवश्यक स्थान" }, "HELP": { "MOTIONPROXYADDRESS": "प्रस्ताव (प्राक्सी) पते: यह अनिवार्य है कि अगर आप को भरने के लिए टिकट Recording URL के साथ शरीर कृपया, निम्नलिखित आरूप में दर्ज करें: < वंशवृक्ष प्रोटोकॉल एंड अधम; : // एंड lt सिखाता है; अधम एवं ipaddress[: एंड lt वंशवृक्ष पत्तन एवं अधम;]। उदाहरण के लिए: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/id.json b/public/app/main/apps/integrations/i18n/id.json index dc86e1c..dde3ec7 100644 --- a/public/app/main/apps/integrations/i18n/id.json +++ b/public/app/main/apps/integrations/i18n/id.json @@ -28,7 +28,8 @@ "VTIGER_USER_NAME_REQUIRED": "Bidang wajib", "TENANTID_REQUIRED": "Bidang wajib", "EMAIL_REQUIRED": "Bidang wajib", - "CODE_REQUIRED": "Bidang wajib" + "CODE_REQUIRED": "Bidang wajib", + "MOTIONPROXYADDRESS_REQUIRED": "Bidang wajib" }, "HELP": { "MOTIONPROXYADDRESS": "Alamat Motion (Proxy): diperlukan jika Anda ingin mengisi badan tiket dengan Recording URL. Masukkan alamat dalam format berikut: : // [: ]. Contoh: https: //X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/ja.json b/public/app/main/apps/integrations/i18n/ja.json index f4d442f..7796e87 100644 --- a/public/app/main/apps/integrations/i18n/ja.json +++ b/public/app/main/apps/integrations/i18n/ja.json @@ -28,7 +28,8 @@ "VTIGER_USER_NAME_REQUIRED": "必須フィールド", "TENANTID_REQUIRED": "必須フィールド", "EMAIL_REQUIRED": "必須フィールド", - "CODE_REQUIRED": "必須フィールド" + "CODE_REQUIRED": "必須フィールド", + "MOTIONPROXYADDRESS_REQUIRED": "必須フィールド" }, "HELP": { "MOTIONPROXYADDRESS": "チケットの本文でレコーディングURLを記入する場合は、Motion(プロキシ)アドレスが必要です。次の形式でアドレスを入力します、:// [:]。例:https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/ko.json b/public/app/main/apps/integrations/i18n/ko.json index 2de5d58..a3bd700 100644 --- a/public/app/main/apps/integrations/i18n/ko.json +++ b/public/app/main/apps/integrations/i18n/ko.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "필수 필드", "TENANTID_REQUIRED": "필수 필드", "EMAIL_REQUIRED": "필수 필드", - "CODE_REQUIRED": "필수 필드" + "CODE_REQUIRED": "필수 필드", + "MOTIONPROXYADDRESS_REQUIRED": "필수 필드" }, "HELP": { "MOTIONPROXYADDRESS": "모션 프록시 주소", diff --git a/public/app/main/apps/integrations/i18n/lt.json b/public/app/main/apps/integrations/i18n/lt.json index 966c8a2..56d0fd0 100644 --- a/public/app/main/apps/integrations/i18n/lt.json +++ b/public/app/main/apps/integrations/i18n/lt.json @@ -55,7 +55,8 @@ "ACCESS_KEY_REQUIRED": "Privalomas laukas", "EMAIL_REQUIRED": "Privalomas laukas", "TENANTID_REQUIRED": "Privalomas laukas", - "CODE_REQUIRED": "Privalomas laukas" + "CODE_REQUIRED": "Privalomas laukas", + "MOTIONPROXYADDRESS_REQUIRED": "Privalomas laukas" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) adresas: jis reikalingas, jei norite užpildyti bilieto dalį įraÅ¡omuoju URL. Ä®veskite adresą tokiu formatu: : //[:]. Pavyzdys: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/lv.json b/public/app/main/apps/integrations/i18n/lv.json index 34aacd0..e786125 100644 --- a/public/app/main/apps/integrations/i18n/lv.json +++ b/public/app/main/apps/integrations/i18n/lv.json @@ -28,7 +28,8 @@ "VTIGER_USER_NAME_REQUIRED": "Obligāts lauks", "TENANTID_REQUIRED": "Obligāts lauks", "EMAIL_REQUIRED": "Obligāts lauks", - "CODE_REQUIRED": "Obligāts lauks" + "CODE_REQUIRED": "Obligāts lauks", + "MOTIONPROXYADDRESS_REQUIRED": "Obligāts lauks" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (starpnieka) adrese: tā ir nepiecieÅ¡ama, ja vēlaties aizpildÄ«t ticket saturu ar ieraksta tÄ«mekļa adresi. Ievadiet adresi šādā formātā: : //[:]. Piemērs: https://XYZW", diff --git a/public/app/main/apps/integrations/i18n/nl.json b/public/app/main/apps/integrations/i18n/nl.json index 0aa56a9..46b0f9a 100644 --- a/public/app/main/apps/integrations/i18n/nl.json +++ b/public/app/main/apps/integrations/i18n/nl.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Verplicht veld", "TENANTID_REQUIRED": "Verplicht veld", "EMAIL_REQUIRED": "Verplicht veld", - "CODE_REQUIRED": "Verplicht veld" + "CODE_REQUIRED": "Verplicht veld", + "MOTIONPROXYADDRESS_REQUIRED": "Verplicht veld" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Adres: het is verplicht als je wilt vul het ticket body met gereist en URL. Voer in de volgende notatie: : //[:]. Voorbeeld: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/no.json b/public/app/main/apps/integrations/i18n/no.json index dfd7ec3..7810f54 100644 --- a/public/app/main/apps/integrations/i18n/no.json +++ b/public/app/main/apps/integrations/i18n/no.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Obligatoriske felt", "TENANTID_REQUIRED": "Obligatoriske felt", "EMAIL_REQUIRED": "Obligatoriske felt", - "CODE_REQUIRED": "Obligatoriske felt" + "CODE_REQUIRED": "Obligatoriske felt", + "MOTIONPROXYADDRESS_REQUIRED": "Obligatoriske felt" }, "HELP": { "MOTIONPROXYADDRESS": "Bevegelse (Proxy) Adresse: Det er obligatorisk hvis du ønsker Ã¥ fylle/kropp med opptaket URL. Skriv inn i følgende format: : //[:]. Eksempel: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/pl.json b/public/app/main/apps/integrations/i18n/pl.json index 93ef840..880ab23 100644 --- a/public/app/main/apps/integrations/i18n/pl.json +++ b/public/app/main/apps/integrations/i18n/pl.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Pole obowiązkowe", "TENANTID_REQUIRED": "Pole obowiązkowe", "EMAIL_REQUIRED": "Pole obowiązkowe", - "CODE_REQUIRED": "Pole obowiązkowe" + "CODE_REQUIRED": "Pole obowiązkowe", + "MOTIONPROXYADDRESS_REQUIRED": "Pole obowiązkowe" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Adres: jest wymagane jeśli chcesz wypełnić bilet korpus z zapisu adresu URL. Wprowadź adres w następującym formacie: : //[:]. Przykład: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/pt-BR.json b/public/app/main/apps/integrations/i18n/pt-BR.json index 1d96e8c..5c0aa7d 100644 --- a/public/app/main/apps/integrations/i18n/pt-BR.json +++ b/public/app/main/apps/integrations/i18n/pt-BR.json @@ -51,7 +51,8 @@ "ACCESS_KEY_REQUIRED": "Campo obrigatório", "TENANTID_REQUIRED": "Campo obrigatório", "EMAIL_REQUIRED": "Campo obrigatório", - "CODE_REQUIRED": "Campo obrigatório" + "CODE_REQUIRED": "Campo obrigatório", + "MOTIONPROXYADDRESS_REQUIRED": "Campo obrigatório" }, "HELP": { "MOTIONPROXYADDRESS": "Endereço de movimento (proxy): é necessário se você quiser preencher o corpo do ticket com o URL de gravação. Digite o endereço no seguinte formato: : // [: ]. Exemplo: https: //X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/pt-PT.json b/public/app/main/apps/integrations/i18n/pt-PT.json index 6738ed4..a4bb842 100644 --- a/public/app/main/apps/integrations/i18n/pt-PT.json +++ b/public/app/main/apps/integrations/i18n/pt-PT.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Campo obrigatório", "TENANTID_REQUIRED": "Campo obrigatório", "EMAIL_REQUIRED": "Campo obrigatório", - "CODE_REQUIRED": "Campo obrigatório" + "CODE_REQUIRED": "Campo obrigatório", + "MOTIONPROXYADDRESS_REQUIRED": "Campo obrigatório" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (Proxy) Endereço: é obrigatório se você deseja preencher a folha de corpo com recodificação URL. Por favor, digite no seguinte formato: : //[:]. Exemplo: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/ru.json b/public/app/main/apps/integrations/i18n/ru.json index 9000552..85ead2d 100644 --- a/public/app/main/apps/integrations/i18n/ru.json +++ b/public/app/main/apps/integrations/i18n/ru.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Обязательное поле", "TENANTID_REQUIRED": "Обязательное поле", "EMAIL_REQUIRED": "Обязательное поле", - "CODE_REQUIRED": "Обязательное поле" + "CODE_REQUIRED": "Обязательное поле", + "MOTIONPROXYADDRESS_REQUIRED": "Обязательное поле" }, "HELP": { "MOTIONPROXYADDRESS": "Motion (прокси) Адрес: она является обязательным, если вы хотите заполнить билет тела с модификации URL. Пожалуйста, введите в следующем формате: <протокола> : // : //[:]. Exempel: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/tr.json b/public/app/main/apps/integrations/i18n/tr.json index 7f0e48c..f5a2a49 100644 --- a/public/app/main/apps/integrations/i18n/tr.json +++ b/public/app/main/apps/integrations/i18n/tr.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "Zorunlu alan", "TENANTID_REQUIRED": "Zorunlu alan", "EMAIL_REQUIRED": "Zorunlu alan", - "CODE_REQUIRED": "Zorunlu alan" + "CODE_REQUIRED": "Zorunlu alan", + "MOTIONPROXYADDRESS_REQUIRED": "Zorunlu alan" }, "HELP": { "MOTIONPROXYADDRESS": "Hareket (Proxy) Adres: zorunludur. eğer isterseniz, bilet, Diğerine URL. Lütfen aşağıdaki biçimi: : //[:]. Örneğin: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/zh-CN.json b/public/app/main/apps/integrations/i18n/zh-CN.json index defae8f..85cf741 100644 --- a/public/app/main/apps/integrations/i18n/zh-CN.json +++ b/public/app/main/apps/integrations/i18n/zh-CN.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "必填项", "TENANTID_REQUIRED": "必填项", "EMAIL_REQUIRED": "必填项", - "CODE_REQUIRED": "必填项" + "CODE_REQUIRED": "必填项", + "MOTIONPROXYADDRESS_REQUIRED": "必填项" }, "HELP": { "MOTIONPROXYADDRESS": "议案(代理)地址: 它是强制的如果您想要填充的票务机构的重新编码的 URL。 请以下列格式输入: & lt; 协议发 gt;: // 发 lt; ipaddress 发 gt; [: & lt; 端口& gt; ]。 例如: https://X.Y.Z.W", diff --git a/public/app/main/apps/integrations/i18n/zh-TW.json b/public/app/main/apps/integrations/i18n/zh-TW.json index 41eb4b5..d7dfaa5 100644 --- a/public/app/main/apps/integrations/i18n/zh-TW.json +++ b/public/app/main/apps/integrations/i18n/zh-TW.json @@ -48,7 +48,8 @@ "VTIGER_USER_NAME_REQUIRED": "必填項", "TENANTID_REQUIRED": "必填項", "EMAIL_REQUIRED": "必填項", - "CODE_REQUIRED": "必填項" + "CODE_REQUIRED": "必填項", + "MOTIONPROXYADDRESS_REQUIRED": "必填項" }, "HELP": { "MOTIONPROXYADDRESS": "動作 ( 代理伺服器 ) 位址 : 這是強制性如果您想要填寫問題單本文 URL 重新編寫程式碼。 請輸入下列格式 : & lt ; 通訊協定與 gt ; : / / 史坦普 lt ; IP 位址坦 gt ; [ : 坦 lt ; 連接埠坦 gt ; ] 。 例如 : https://X.Y.Z.W", diff --git a/public/app/main/apps/mail/i18n/es.json b/public/app/main/apps/mail/i18n/es.json index 85d667a..644a615 100644 --- a/public/app/main/apps/mail/i18n/es.json +++ b/public/app/main/apps/mail/i18n/es.json @@ -8,8 +8,8 @@ "PASSWORD": "Contraseña utilizada para autenticación", "SECURE": "Si es verdadero, la conexión usará TLS cuando se conecte al servidor", "USERNAME": "Nombre de usuario utilizado para autenticación", - "MANDATORYDISPOSITION": "Cierre obligatorio", - "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si el cierre obligatorio está habilitado" + "MANDATORYDISPOSITION": "Tipificación obligatoria", + "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si la tipificación obligatoria está habilitada" }, "ERRORS": { "ACCEPTURL_MUST_VALID_URL": "Formato erróneo", @@ -79,7 +79,7 @@ "ACTIVE": "Activo", "ADD_MAILACCOUNT": "Agregar cuenta de correo electrónico", "ADD_MAILCANNEDANSWER": "Agregar respuesta enlatada", - "ADD_MAILDISPOSITION": "Agregar cierre de correo electrónico", + "ADD_MAILDISPOSITION": "Agregar tipificación de correo electrónico", "ADD_MAILQUEUE": "Agregar cola de correo electrónico", "ADD_MAILSUBSTATUS": "Agregar sub estado", "ADD_NOTE": "Añadir Nota", @@ -123,13 +123,13 @@ "DELETE_INTERACTION": "Eliminar interacción", "DELETE_MAILACCOUNT": "Eliminar cuentas de correo electrónico", "DELETE_MAILCANNEDANSWER": "Eliminar la respuesta almacenada", - "DELETE_MAILDISPOSITION": "Eliminar el cierre del correo electrónico", + "DELETE_MAILDISPOSITION": "Eliminar la tipificación del correo electrónico", "DELETE_MAILQUEUE": "Eliminar cola de correo electrónico", "DELETE_MAILSUBSTATUS": "Borrar", "DESCRIPTION": "Descripción", "DISABLED": "Deshabilitado", - "DISPOSITION": "Cierre", - "DISPOSITIONS": "Cierres", + "DISPOSITION": "Tipificación ", + "DISPOSITIONS": "Tipificaciones ", "EDIT_ACCOUNT": "Editar cuenta", "EDIT_AGENT": "Editar agente", "EDIT_AUTOREPLY": "Editar respuesta automática", @@ -138,7 +138,7 @@ "EDIT_GOTOP": "Edit GotoP", "EDIT_MAILACCOUNT": "Editar cuenta de correo electrónico", "EDIT_MAILCANNEDANSWER": "Editar respuesta enlatada", - "EDIT_MAILDISPOSITION": "Editar el cierre del correo electrónico", + "EDIT_MAILDISPOSITION": "Editar el tipificación del correo electrónico", "EDIT_MAILQUEUE": "Editar cola de correo electrónico", "EDIT_MAILSUBSTATUS": "Editar", "EDIT_NOOP": "Editar Noop", @@ -183,7 +183,7 @@ "MAIL": "Email", "MAILACCOUNTS": "Cuentas de correo electrónico", "MAILBOX": "Buzón", - "MAILDISPOSITIONS": "Cierres de correo electrónico", + "MAILDISPOSITIONS": "Tipificaciones de correo electrónico", "MAILQUEUES": "Colas de correo electrónico", "MAILSUBSTATUSES": "Subestaciones de correo electrónico", "MARK_AS_UNREAD": "marcar como no leído", @@ -191,7 +191,7 @@ "NEVER_VERIFIED": "Nunca Verificar", "NEW_MAILACCOUNT": "Nueva cuenta de correo electrónico", "NEW_MAILCANNEDANSWER": "Nueva respuesta enlatada", - "NEW_MAILDISPOSITION": "Nuevo cierre de correo electrónico", + "NEW_MAILDISPOSITION": "Nueva tipificación de correo electrónico", "NEW_MAILQUEUE": "Nueva cola de correo electrónico", "NEW_MAILSUBSTATUS": "Nuevo Sub Estado", "NOOP": "Noop", @@ -206,7 +206,7 @@ "NO_AVAILABLE_INFO": "No hay información disponible", "NO_INTERACTION_AVAILABLE": "No hay interacciones disponibles", "NO_MAILCANNEDANSWER_AVAILABLE": "No hay respuestas enlatadas disponibles", - "NO_MAILDISPOSITION_AVAILABLE": "No hay cierres de correo electrónico disponibles", + "NO_MAILDISPOSITION_AVAILABLE": "No hay tipificaciones de correo electrónico disponibles", "OF": "de", "OPEN": "Abierto", "OPENCHANNEL": "Canal abierto", @@ -312,8 +312,8 @@ "DOWNLOAD_WITHOUT_ATTACHMENTS": "Descargar sin archivos adjuntos", "DOWNLOAD_WITH_ATTACHMENTS": "Descargar con archivos adjuntos", "TEAMS_ASSOCIATION": "Asociación de equipos", - "MANDATORYDISPOSITION": "Cierre obligatorio", - "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si el cierre obligatorio está habilitado", + "MANDATORYDISPOSITION": "Tipificación obligatorio", + "MANDATORYDISPOSITIONPAUSEID": "Pausa a usar si la tipificación obligatoria está habilitada", "ADVANCED": "Avanzado", "TOOLTIP_SCREENRECORDING_OFF": "Grabación de pantalla disponible", "TOOLTIP_SCREENRECORDING_ON": "Grabación de pantalla en progreso", diff --git a/public/app/main/apps/motiondialer/i18n/es.json b/public/app/main/apps/motiondialer/i18n/es.json index 64ab305..43b3a12 100644 --- a/public/app/main/apps/motiondialer/i18n/es.json +++ b/public/app/main/apps/motiondialer/i18n/es.json @@ -87,7 +87,7 @@ "RANDOMLASTDIGITCALLERIDNUMBER": "Si es mayor que 0, genera los últimos números al azar del número de identificación del llamante saliente.", "BUSYMAXRETRY": "Número máximo de veces que se llama a un contacto antes de considerarlo cerrado, cuando la llamada falló por estar ocupado", "BUSYRETRYTIME": "Tiempo en minutos antes de intentar volver a llamar a un contacto fallido debido a ocupado", - "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa para establecer durante el cierre obligatorio", + "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa para establecer durante la tipifiación obligatoria", "PREDICTIVEMAXTHRESHOLD": "Si el porcentaje de agentes disponibles en la ventana de tiempo, en comparación con los agentes disponibles en el momento de la predicción, excede el límite máximo configurado, el predictivo vuelve a calcular la predicción.", "PREDICTIVEMINTHRESHOLD": "Si el porcentaje de agentes disponibles en la ventana de tiempo, en comparación con los agentes disponibles en el momento de la predicción, excede el límite mínimo configurado, el predictivo vuelve a calcular la predicción.", "ABANDONEDMAXRETRY": "Número máximo de veces que se llama a un contacto antes de considerarlo cerrado, cuando la llamada no se pudo abandonar", @@ -326,7 +326,7 @@ "DELETE_MUSICONHOLD": "Eliminar Música de Espera", "DELETE_OUTBOUNDROUTE": "Eliminar ruta de salida", "DELETE_QUEUECAMPAIGN": "Eliminar Campaña", - "DELETE_VOICEDISPOSITION": "Eliminar cierre de voz", + "DELETE_VOICEDISPOSITION": "Eliminar tpificación de voz", "DELETE_VOICEMAIL": "Eliminar correo de voz", "DELETE_VOICEQUEUE": "Eliminar cola de voz", "DELETE_VOICERECORDING": "Eliminar grabación de voz", @@ -340,7 +340,7 @@ "DIALRECALLMETIMEOUT": "Recordar Timeout [min]", "DID": "HECHO", "DIRECTORY": "Directorio", - "DISPOSITION": "Cierre", + "DISPOSITION": "Tipificación", "DOWNLOAD_MOHSOUND": "Descargar Sonido Música en Espera", "DOWNLOAD_VOICERECORDING": "Descargar grabación de voz", "DROPPED": "Asignado", @@ -369,7 +369,7 @@ "EDIT_QUEUECAMPAIGN": "Editar Campaña", "EDIT_RINGGROUP": "Editar grupo de timbre", "EDIT_SET": "Editar conjunto", - "EDIT_VOICEDISPOSITION": "Editar Cierre de Voz", + "EDIT_VOICEDISPOSITION": "Editar Tipificación de Voz", "EDIT_VOICEMAIL": "Editar correo de voz", "EDIT_VOICEQUEUE": "Editar cola de voz", "EDIT_VOICERECORDING": "Editar grabación de voz", @@ -655,8 +655,8 @@ "SELECT_TYPE": "Seleccione tipo", "TEAMS_ASSOCIATION": "Asociación de equipos", "ANSWERING_MACHINE": "Contestador automático", - "MANDATORYDISPOSITION": "Cierre obligatorio", - "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa de cierre obligatorio", + "MANDATORYDISPOSITION": "Tipificación obligatoria", + "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa de tipificación obligatoria", "ANSWERED_CALLS": "Llamadas contestadas", "AVG_TALK_TIME": "Tiempo promedio de conversación", "CURRENT_INTERVAL": "Intervalo actual", @@ -686,7 +686,7 @@ "NOSUCHNUMBERRETRYTIME": "Tiempo de reintento [min]", "TOOLTIP_SCREENRECORDING_OFF": "Grabación de pantalla disponible", "TOOLTIP_SCREENRECORDING_ON": "Grabación de pantalla en progreso", - "SECOND_LEVEL_DISPOSITION": "Disposición de segundo nivel", - "THIRD_LEVEL_DISPOSITION": "Disposición de tercer nivel" + "SECOND_LEVEL_DISPOSITION": "Tipficación de segundo nivel", + "THIRD_LEVEL_DISPOSITION": "Tipificación de tercer nivel" } } \ No newline at end of file diff --git a/public/app/main/apps/tools/i18n/es.json b/public/app/main/apps/tools/i18n/es.json index c20a3cb..6af9e33 100644 --- a/public/app/main/apps/tools/i18n/es.json +++ b/public/app/main/apps/tools/i18n/es.json @@ -435,11 +435,11 @@ "EMAILBCCADDRESS": "Bcc", "EMAILCCADDRESS": "CC", "RUN_SCHEDULE": "Ejecutar horario", - "ADD_DISPOSITION": "Agregar cierre", - "DELETE_DISPOSITION": "Eliminar cierre", - "DISPOSITIONS": "Cierre", - "EDIT_DISPOSITION": "Editar cierre", - "NEW_DISPOSITION": "Nuevo cierre", + "ADD_DISPOSITION": "Agregar Tipificación", + "DELETE_DISPOSITION": "Eliminar tipificaciòn", + "DISPOSITIONS": "Tipificaciones", + "EDIT_DISPOSITION": "Editar Tipificación", + "NEW_DISPOSITION": "Nueva tipificación", "CLONE_TRUNK": "Clonar Troncal", "BODY": "Cuerpo", "CANNEDANSWERS": "Respuestas enlatadas", @@ -460,10 +460,10 @@ "STANDARD": "Estándar", "MOTION_BAR": "Motion Bar", "ALL": "Todos", - "ALL_DISPOSITIONS": "Todas las disposiciones", - "FIRST_LEVEL_DISPOSITION": "Disposición de primer nivel", + "ALL_DISPOSITIONS": "Todas las tipificaciones", + "FIRST_LEVEL_DISPOSITION": "Tipificación de primer nivel", "LEVEL": "Nivel", - "SECOND_LEVEL_DISPOSITION": "Disposición de segundo nivel", + "SECOND_LEVEL_DISPOSITION": "Tipificación de segundo nivel", "SELECT_LEVEL": "Seleccionar un nivel" } } \ No newline at end of file diff --git a/public/app/main/apps/voice/i18n/es.json b/public/app/main/apps/voice/i18n/es.json index 87d4878..3123035 100644 --- a/public/app/main/apps/voice/i18n/es.json +++ b/public/app/main/apps/voice/i18n/es.json @@ -47,7 +47,7 @@ "YOUARENEXTANNOUNCE": "Elija un sonido definido en Herramientas. Predeterminado = \"Ahora eres el primero en la fila\". Indefinido = sin anuncio", "CALLERIDALL": "Formato admitido: \"CallerId\" & lt; número & gt;", "CALLER_ID": "Formato admitido: \"CallerId\" & lt; número & gt;", - "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa para establecer durante el cierre obligatorio", + "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa para establecer durante el cierre obligatoriola tipificación obligatoria", "SERVICELEVEL": "Segundos ajustes para el nivel de servicio (predeterminado = 0, sin SL). Se utiliza para estadísticas de nivel de servicio (llamadas respondidas dentro del marco de tiempo del nivel de servicio)" }, "ERRORS": { @@ -185,7 +185,7 @@ "DELETE_MOHSOUND": "Eliminar Sonido de Música en Espera", "DELETE_MUSICONHOLD": "Eliminar música en espera", "DELETE_OUTBOUNDROUTE": "Eliminar ruta de salida", - "DELETE_VOICEDISPOSITION": "Eliminar Cierre de Voz", + "DELETE_VOICEDISPOSITION": "Eliminar Tipificación de Voz", "DELETE_VOICEMAIL": "Eliminar correo de voz", "DELETE_VOICEQUEUE": "Eliminar cola de voz", "DELETE_VOICERECORDING": "Eliminar grabación de voz", @@ -196,7 +196,7 @@ "DIAL": "Marcar", "DID": "DID", "DIRECTORY": "Directorio", - "DISPOSITION": "Cierre", + "DISPOSITION": "Tipifiicación", "DOWNLOAD_MESSAGE": "Descargar", "DOWNLOAD_MOHSOUND": "Descargar Sonido de Música en Espera", "DOWNLOAD_VOICERECORDING": "Descargar grabación de voz", @@ -222,7 +222,7 @@ "EDIT_RINGGROUP": "Editar grupo de timbre", "EDIT_SET": "Editar conjunto", "EDIT_TRUNK": "Editar troncal", - "EDIT_VOICEDISPOSITION": "Editar Cierre de Voz", + "EDIT_VOICEDISPOSITION": "Editar Tipificación de Voz", "EDIT_VOICEMAIL": "Editar correo de voz", "EDIT_VOICEQUEUE": "Editar cola de voz", "EDIT_VOICERECORDING": "Editar grabación de voz", @@ -441,8 +441,8 @@ "DIALER": "Marcador", "INBOUND": "Entrante", "OUTBOUND": "Saliente", - "MANDATORYDISPOSITION": "Cierre obligatorio", - "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa de cierre obligatorio", + "MANDATORYDISPOSITION": "Tipificación opbligatoria", + "MANDATORYDISPOSITIONPAUSEID": "Estado de pausa de cierre tipificación obligatoria", "TEAMS_ASSOCIATION": "Asociación de equipos", "CANT_DOWNLOAD_THIS_FILE": "No puedo descargar este archivo", "FILE_NOT_FOUND": "Archivo no encontrado", @@ -472,7 +472,7 @@ "TRANSCRIPT": "Transcripción", "TRANSCRIPTANALYSIS": "Transcripción y análisis", "SERVICELEVEL": "Nivel de servicio", - "SECOND_LEVEL_DISPOSITION": "Disposición de segundo nivel", - "THIRD_LEVEL_DISPOSITION": "Disposición de tercer nivel" + "SECOND_LEVEL_DISPOSITION": "Tipificación de segundo nivel", + "THIRD_LEVEL_DISPOSITION": "Tipificación de tercer nivel" } } \ No newline at end of file diff --git a/public/app/main/apps/whatsapp/i18n/es.json b/public/app/main/apps/whatsapp/i18n/es.json index 0bdc98d..5b4a276 100644 --- a/public/app/main/apps/whatsapp/i18n/es.json +++ b/public/app/main/apps/whatsapp/i18n/es.json @@ -54,8 +54,8 @@ }, "HELP": { "LIST": "Lista de administrador de contactos utilizada para asociar contactos", - "MANDATORYDISPOSITION": "Disposición obligatoria", - "MANDATORYDISPOSITIONPAUSEID": "Pausar para usar cuando la disposición obligatoria está habilitada", + "MANDATORYDISPOSITION": "Tipificación obligatoria", + "MANDATORYDISPOSITIONPAUSEID": "Pausar para usar cuando la tipificación obligatoria está habilitada", "MOTIONPROXY": "El campo debe tener el siguiente formato: : // [: ]. Ejemplo: https: //X.Y.Z.W", "NAME": "Solo se admiten números, letras y caracteres específicos (._)", "RECEIVEURL": "Esta es la cadena de API generada automáticamente que debe usar para recibir los mensajes dentro de su cuenta de su proveedor de conector de WhatsApp (se debe usar el método POST): haga clic en el botón del portapapeles para copiarlo", @@ -67,7 +67,7 @@ "ADD_NOTE": "Añadir la nota", "ADD_WHATSAPPACCOUNT": "Añadir", "ADD_WHATSAPPCANNEDANSWER": "Agregar respuesta predefinida", - "ADD_WHATSAPPDISPOSITION": "Agregar disposición de WhatsApp", + "ADD_WHATSAPPDISPOSITION": "Agregar Tipificación de WhatsApp", "ADD_WHATSAPPQUEUE": "Agregar cola de WhatsApp", "ADVANCED": "Avanzado", "AGENT": "Agente", @@ -106,12 +106,12 @@ "DELETE_SELECTED": "Eliminar seleccionado", "DELETE_WHATSAPPACCOUNT": "Eliminar cuenta de WhatsApp", "DELETE_WHATSAPPCANNEDANSWER": "Eliminado", - "DELETE_WHATSAPPDISPOSITION": "Eliminar la disposición de WhatsApp", + "DELETE_WHATSAPPDISPOSITION": "Eliminar la tipificación de WhatsApp", "DELETE_WHATSAPPQUEUE": "Eliminar la cola de WhatsApp", "DESCRIPTION": "Descripción", "DIALOGFLOW": "DialogFlow", - "DISPOSITION": "Disposición", - "DISPOSITIONS": "Plan", + "DISPOSITION": "Tipificación", + "DISPOSITIONS": "Tipificaciones", "DOWNLOAD_INTERACTION": "Descargar", "DOWNLOAD_WITHOUT_ATTACHMENTS": "Descargar sin archivos adjuntos", "DOWNLOAD_WITH_ATTACHMENTS": "Descargar con archivos adjuntos", @@ -128,7 +128,7 @@ "EDIT_TAG": "Editar etiqueta", "EDIT_WHATSAPPACCOUNT": "Editar cuenta de WhatsApp", "EDIT_WHATSAPPCANNEDANSWER": "Editar", - "EDIT_WHATSAPPDISPOSITION": "Editar la disposición de WhatsApp", + "EDIT_WHATSAPPDISPOSITION": "Editar la tipificación de WhatsApp", "EDIT_WHATSAPPQUEUE": "Editar la cola de WhatsApp", "FALSEPRIORITY": "Prioridad falsa", "GENERAL": "General", @@ -149,15 +149,15 @@ "LOGGED_IN": "Conectado (SIP conectado)", "LOGIN_TIME": "Hora de inicio de sesión", "LOGOUT": "Cerrar sesión", - "MANDATORYDISPOSITION": "Disposición obligatoria", - "MANDATORYDISPOSITIONPAUSEID": "Pausar para usar cuando la disposición obligatoria está habilitada", + "MANDATORYDISPOSITION": "Tipificación obligatoria", + "MANDATORYDISPOSITIONPAUSEID": "Pausar para usar cuando la tipificación obligatoria está habilitada", "MORE": "Más", "MOTIONPROXY": "Proxy o dominio de movimiento", "MULTI_SELECT_TOGGLE": "Alternar selección múltiple", "NAME": "Nombre", "NEW_WHATSAPPACCOUNT": "Nueva cuenta de WhatsApp", "NEW_WHATSAPPCANNEDANSWER": "Nueva respuesta enlatada de WhatsApp", - "NEW_WHATSAPPDISPOSITION": "Nueva disposición de WhatsApp", + "NEW_WHATSAPPDISPOSITION": "Nueva tipificación de WhatsApp", "NEW_WHATSAPPQUEUE": "Nueva cola de WhatsApp", "NOOP": "Noop", "NOTE": "Nota", @@ -169,7 +169,7 @@ "NO_AVAILABLE_INFO": "No hay información disponible", "NO_INTERACTION_AVAILABLE": "No hay interacciones disponibles", "NO_WHATSAPPCANNEDANSWER_AVAILABLE": "No hay respuestas enlatadas de WhatsApp disponibles", - "NO_WHATSAPPDISPOSITION_AVAILABLE": "No hay disposiciones de WhatsApp disponibles", + "NO_WHATSAPPDISPOSITION_AVAILABLE": "No hay tipificaciones de WhatsApp disponibles", "NO_WHATSAPP_ACCOUNTS_AVAILABLE": "No hay cuentas de WhatsApp disponibles", "OF": "de", "OPENED": "Abrió", @@ -233,7 +233,7 @@ "WHATSAPP": "Conector de WhatsApp", "WHATSAPPACCOUNTS": "Cuentas de WhatsApp", "WHATSAPPCANNEDANSWERS": "Respuestas enlatadas de WhatsApp", - "WHATSAPPDISPOSITIONS": "Disposiciones de WhatsApp", + "WHATSAPPDISPOSITIONS": "Tipificaciones de WhatsApp", "WHATSAPPQUEUES": "Colas de WhatsApp", "CLIENTEMAIL": "Correo electrónico del cliente", "DIALOGFLOWV2": "Dialogflow V2", diff --git a/public/index.html b/public/index.html index 19a533b..d8faab1 100644 --- a/public/index.html +++ b/public/index.html @@ -14,7 +14,7 @@ - + @@ -60,7 +60,7 @@ - + diff --git a/public/scripts/app.43342288.js b/public/scripts/app.72dabd4d.js similarity index 57% rename from public/scripts/app.43342288.js rename to public/scripts/app.72dabd4d.js index 3735c3b..c1f55cc 100644 --- a/public/scripts/app.43342288.js +++ b/public/scripts/app.72dabd4d.js @@ -1 +1 @@ -!function(){"use strict";angular.module("app.auth",[])}(),function(){"use strict";angular.module("app.core",["ngAnimate","ngAria","ngCookies","ngMessages","ngResource","ngSanitize","ngMaterial","pascalprecht.translate","ui.router","ui.router.state.events","gridster","ds.clock","angucomplete-alt"])}(),function(){"use strict";function e(e,n){e.state("app.errors_error-404",{url:"/errors/error-404",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.errors_error-404":{templateUrl:"app/errors/404/error-404.html",controller:"Error404Controller as vm"}},params:{status:404,statusText:"",data:{},config:{}},bodyClass:"error-404"}),n.addPart("app/errors/404")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.errors.error-404",[]).config(e)}(),function(){"use strict";function e(e,n){e.state("app.errors_error-500",{url:"/errors/error-500",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.errors_error-500":{templateUrl:"app/errors/500/error-500.html",controller:"Error500Controller as vm"}},params:{status:500,statusText:"",data:{},config:{}},bodyClass:"error-500"}),n.addPart("app/errors/500")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.errors.error-500",[]).config(e)}(),function(){"use strict";angular.module("app.errors",["app.errors.error-404","app.errors.error-500"])}(),function(){"use strict";function e(e){e.addPart("app/footer")}e.$inject=["$translatePartialLoaderProvider"],angular.module("app.footer",[]).config(e)}(),function(){"use strict";function e(e,n){e.state("app.forgot",{url:"/forgot",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.forgot":{templateUrl:"app/forgot/forgot.html",controller:"ForgotPasswordController as vm"}},bodyClass:"forgot"}),n.addPart("app/forgot")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.forgot",[]).config(e)}(),function(){"use strict";function e(e){e.addPart("app/header")}e.$inject=["$translatePartialLoaderProvider"],angular.module("app.header",[]).config(e)}(),function(){"use strict";angular.module("motion",["angular-toasty","app.core","app.auth","app.navigation","app.toolbar","app.quick-panel","app.header","app.footer","app.dashboards","app.staff","app.contactmanager","app.voice","app.chat","app.mail","app.sms","app.openchannel","app.fax","app.tools","app.callysquare","app.analytics","app.integrations","app.settings","app.motiondialer","app.help","app.jscripty","app.marketplace","app.plugins","app.video","app.whatsapp","app.login","app.forgot","app.reset","app.errors"])}(),function(){"use strict";function e(e,n){e.state("app.login",{url:"/login?token&userId",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.login":{templateUrl:"app/login/login.html",controller:"LoginController as vm"}},bodyClass:"login"}),n.addPart("app/login")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.login",[]).config(e)}(),function(){"use strict";function e(e,n,t,a){e.state("app.analytics",{abstract:!0,url:"/analytics"}).state("app.analytics.metrics",{url:"/metrics",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/metrics/metrics.html",controller:"MetricsController as vm"}},resolve:{metrics:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?e.resolve("analyticMetric@get",{fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,offset:0}):e.resolve("userProfile@getResources",{id:n.getCurrentUser().userProfileId,section:"Metrics",fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,offset:0})}],userProfile:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfile@get",{fields:"id,name,crudPermissions",id:n.getCurrentUser().userProfileId})}],userProfileSection:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfileSection@get",{fields:"id,name,enabled,includeAll,autoAssociation,crudPermissions",userProfileId:n.getCurrentUser().userProfileId,sectionId:1201})}]},authenticate:!0,permissionId:1201,bodyClass:"analytics"}).state("app.analytics.extractedReports",{url:"/extractedReports",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/extractedReports/extractedReports.html",controller:"ExtractedReportsController as vm"}},resolve:{extractedReports:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?e.resolve("analyticExtractedReport@get",{fields:"createdAt,updatedAt,id,name,basename,savename,type,startDate,endDate,status,output,reportId,reportType",sort:"-updatedAt",limit:10,offset:0}):e.resolve("userProfile@getResources",{id:n.getCurrentUser().userProfileId,section:"ExtractedReports",fields:"createdAt,updatedAt,id,name,basename,savename,type,startDate,endDate,status,output,reportId,reportType",sort:"-updatedAt",limit:10,offset:0})}],userProfile:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfile@get",{fields:"id,name,crudPermissions",id:n.getCurrentUser().userProfileId})}],userProfileSection:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfileSection@get",{fields:"id,name,enabled,includeAll,autoAssociation,crudPermissions",userProfileId:n.getCurrentUser().userProfileId,sectionId:1202})}]},authenticate:!0,permissionId:1202,bodyClass:"analytics"}),n.addPart("app/main/apps/analytics")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.analytics",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","ckeditor","ng-sortable","ngAria","ngAnimate","mdPickers","mwFormBuilder","mwFormViewer","mwFormUtils","ngclipboard","angular-cron-jobs","ngEmbed","angularMaterialFormBuilder","material.components.expansionPanels","chart.js","angular.filter","app.analytics.reports"]).config(e)}(),function(){"use strict";function e(e){e.state("app.analytics.reports",{url:"/reports",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/reports/reports.html",controller:"ReportsController as vm"}},resolve:{treeReports:["apiResolver",function(e){return e.resolve("analyticTreeReport@get",{fields:"id,tree",limit:10,offset:0})}],userProfile:["apiResolver","Auth",function(e,n){return e.resolve("userProfile@get",{fields:"id,name,crudPermissions",id:n.getCurrentUser().userProfileId})}],userProfileSection:["apiResolver","Auth",function(e,n){return e.resolve("userProfileSection@get",{fields:"id,name,enabled,includeAll,autoAssociation,crudPermissions",userProfileId:n.getCurrentUser().userProfileId,sectionId:1203})}]},authenticate:!0,permissionId:1203,bodyClass:"analytics"}).state("app.analytics.reports.edit",{url:"/:id?tab",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/reports/edit/view.html",controller:"ReportController as vm"}},resolve:{report:["apiResolver","$stateParams","$q","describeTable",function(e,n,a,i){var s;return e.resolve("analyticCustomReport@get",{fields:"createdAt,updatedAt,id,name,description,table,conditions,joins",id:n.id}).then(function(e){var n=[];if((s=e).joins)try{s.joins=JSON.parse(s.joins);for(var t=0;t');a.append(n),o(function(){!function(e,n){var t=n.find("code"),a=e.split("\n"),i=(a=a.filter(function(e){return e.trim().length}))[0].match(/^\s*/)[0],s=new RegExp("^"+i);a=a.map(function(e){return e.replace(s,"").replace(/\s+$/,"")});var o=hljs.highlight(r.language||r.lang,a.join("\n"),!0);o.value=o.value.replace(/=""<\/span>/gi,"").replace("","").replace("",""),t.append(o.value).addClass("highlight")}(e,n)},34,!1)}})}}}}e.$inject=["$timeout","$q","$interpolate"],angular.module("app.core").directive("hljs",e)}(),function(){"use strict";function e(a,i,s,o){var r=this;function n(){var a=r.selectedField.options&&!_.isEmpty(r.selectedField.options.extraOperators),i=r.selectedField.options&&!_.isEmpty(r.selectedField.options.excludedOperators);r.availableOperators=_.filter(r.operators,function(n){var e=!n.applyTo||_.includes(n.applyTo,r.selectedField.type);n.isExtra=a&&_.some(r.selectedField.options.extraOperators,function(e){return e===n.type});var t=_.includes(n.excludeFrom,r.selectedField.type)||i&&_.includes(r.selectedField.options.excludedOperators,n.type);if((e||n.isExtra)&&!t)return n})}function t(){!r.value||_.isArray(r.value)&&_.isEmpty(r.value)?r.isValidCondition=!1:r.selectedOperator&&"$between"===r.selectedOperator.type?r.isValidCondition=!(!r.endRangeValue||!r.isValidRange):r.isValidCondition=!0}function e(){"number"===r.selectedField.type?_.isNumber(r.endRangeValue)?r.isValidRange=Number(r.endRangeValue)>Number(r.value):r.isValidRange=!0:"date"===r.selectedField.type&&(r.maxDateRange=moment(r.endRangeValue).subtract(1,"day"),r.isValidRange=!0),t()}function l(){var e=c();r.options.conditions.push(e),u()}function d(){var e=c(),n=_.findIndex(r.options.conditions,"style");r.options.conditions.splice(n,1,e),u(),r.pendingCondition.style=null,r.pendingCondition=void 0}function c(){return{name:r.selectedField.name,operator:a.instant("DASHBOARDS."+r.selectedOperator.translate),value:r.value,endValue:r.endRangeValue,displayValue:m(r.value),displayEndValue:m(r.endRangeValue),query:{column:r.selectedField.column,operator:r.selectedOperator.type,value:function(){var e,n=r.value,t=r.endRangeValue;switch(r.selectedField.type){case"date":var a=moment(n).utcOffset(0,!0).format("YYYY-MM-DD");if("$between"===r.selectedOperator.type){var i=moment(t).utcOffset(0,!0).format("YYYY-MM-DD");e=[a,i]}else e=a;break;case"number":e="$between"===r.selectedOperator.type?[n,t]:n;break;case"multiselect":var s=r.selectedField.options.field||"id";e=_.map(n,s);break;case"select":e=n.id;break;case"autocomplete":e=r.selectedOperator.isExtra?n:n.id;break;default:e=n}return e}()},disabled:!1}}function m(e){var n;if(e){switch(r.selectedField.type){case"date":n=moment(e).format("YYYY-MM-DD");break;case"multiselect":var t=_.map(e,function(e){return e.name});n="$eq"===r.selectedOperator.type?t.join(" or "):t.join(" and ");break;case"select":n=e.name;break;case"autocomplete":n=r.selectedOperator.isExtra?e:e.displayValue;break;default:n=e}return n}}function u(){r.value=null,r.endRangeValue=null,r.minDateRange=null,r.maxDateRange=null,r.isValidCondition=!1}r.operators=r.availableOperators=[{type:"$eq",symbol:"=",translate:"EQUALS",excludeFrom:["multiselect"]},{type:"$ne",symbol:"≠",translate:"IS_NOT_EQUAL",excludeFrom:["multiselect"]},{type:"$in",symbol:"∈",translate:"IS_AMONG",applyTo:["multiselect"]},{type:"$notIn",symbol:"∉",translate:"IS_NOT_AMONG",applyTo:["multiselect"]},{type:"$substring",symbol:"⊃",translate:"CONTAINS",applyTo:["text"]},{type:"$startsWith",symbol:"a..",translate:"STARTS_WITH",applyTo:["text"]},{type:"$endsWith",symbol:"..a",translate:"ENDS_WITH",applyTo:["text"]},{type:"$lt",symbol:"<",translate:"IS_LESS_THAN",applyTo:["date","number"]},{type:"$gt",symbol:">",translate:"IS_GREATER_THAN",applyTo:["date","number"]},{type:"$lte",symbol:"≤",translate:"IS_LESS_THAN_OR_EQUAL_TO",applyTo:["date","number"]},{type:"$gte",symbol:"≥",translate:"IS_GREATER_THAN_OR_EQUAL_TO",applyTo:["date","number"]},{type:"$between",symbol:"≬",translate:"IS_BETWEEN",applyTo:["date","number"]}],r.addCondition=l,r.editCondition=function(e){r.pendingCondition=e,r.pendingCondition.style="md-amber-200-bg",r.selectedField=_.find(r.options.fields,["name",r.pendingCondition.name]),n(),r.selectedOperator=_.find(r.availableOperators,["type",r.pendingCondition.query.operator]),"date"===r.selectedField.type&&"string"==typeof r.pendingCondition.value?(r.value=new Date(r.pendingCondition.value),r.minDateRange=moment(r.value).add(1,"day"),r.endRangeValue=r.pendingCondition.endValue?new Date(r.pendingCondition.endValue):void 0):(r.value=r.pendingCondition.value,r.endRangeValue=r.pendingCondition.endValue);r.isValidRange=!0,r.isValidCondition=!0},r.updateCondition=d,r.cancelUpdateCondition=function(){r.pendingCondition.style=null,r.pendingCondition=void 0},r.setConditionStatus=function(e){e.style=e.disabled?void 0:"chip-disabled",e.disabled=!e.disabled},r.removeCondition=function(){_.isEmpty(r.options.conditions)&&r.clearFilter()},r.getValues=function(){var n=angular.copy(r.selectedField.options.route);if("autocomplete"===r.selectedField.type)for(var e=0;e',compile:function(e){return e.addClass("ms-card"),function(e,n){e.cardTemplateLoaded=function(){e.$emit("msCard::cardTemplateLoaded",n)}}}}})}(),function(){"use strict";angular.module("app.core").directive("msChipColor",function(){return{restrict:"A",link:function(e,i,n){n.$observe("msChipColor",function(e){var n=i.parent().parent();if(n.hasClass("md-background-bg md-hue-3")||n.addClass("md-background-bg md-hue-3"),_.isEmpty(e)){var t=n[0].className.split(" "),a=t.indexOf("md-hue-3");t.length=a+1,n[0].className=t.join(" ")}else n.addClass(e)})}}})}(),function(){"use strict";angular.module("app.core").directive("msClickToCall",function(){return{restrict:"E",scope:{type:"=",disabled:"=",target:"=",prefix:"=",license:"="},controller:["$scope","$rootScope","$http","$translate","$document","$mdDialog","Auth","toasty","api",function(t,n,a,i,s,o,e,r,l){function d(e){switch(t.currentUser.showWebBar){case 0:return m("http://127.0.0.1:"+(t.currentUser.phoneBarRemoteControlPort||"9888")+"/api/originate/"+c(e));case 2:return n.$broadcast("webrtc::call",{target:c(e)})}}function c(e){return _.isNil(e)?"":e.replace(/[^\w.+#*\-]+/g,"")}function m(e){return a.get(e).success(function(){r.success({title:"Successful call",msg:"Call properly handled!"})}).error(function(e){r.error({title:"PhoneBar API Error",msg:i.instant("CONTACTMANAGER.ERRORS.PHONEBAR_API")})})}t.currentUser=e.getCurrentUser(),t.showMenu=function(){return t.target&&t.target.indexOf("@")<0&&t.target!=t.currentUser.internal&&t.target!=t.currentUser.name&&(0==t.currentUser.showWebBar&&t.currentUser.phoneBarRemoteControl||2==t.currentUser.showWebBar&&t.license.webrtc)&&!t.disabled},t.call=function(e){return 2!==t.currentUser.showWebBar?(n=e,l.user.getVoicePrefixes({id:t.currentUser.id}).$promise.then(function(e){if(e.count)return o.show({controller:"PrefixDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/prefix/dialog.html",parent:angular.element(s.body),clickOutsideToClose:!0,locals:{prefixes:e,required:t.currentUser.phoneBarPrefixRequired}})}).then(function(e){t.currentUser.phoneBarPrefixRequired?e&&-1!==e&&d(e+n):e&&-1!==e?d(e+n):e||d(n)})):d(e);var n},t.transfer=function(e){switch(t.currentUser.showWebBar){case 0:return m("http://127.0.0.1:"+(t.currentUser.phoneBarRemoteControlPort||"9888")+"/api/transfer?number="+c(e));case 2:n.$broadcast("webrtc::transfer",{target:c(e)})}}}],templateUrl:"app/core/directives/ms-click-to-call/ms-click-to-call.html"}})}(),function(){"use strict";function e(i){return{require:"ngModel",priority:1,link:function(e,n,t,a){a.$formatters.push(i.formatter),a.$parsers.push(i.parser)}}}e.$inject=["msDatepickerFixConfig"],angular.module("app.core").provider("msDatepickerFixConfig",function(){var n={formatter:function(e){return e?""===e?e:new Date(e):""},parser:function(e){return e?moment(e).add(moment(e).utcOffset(),"m").toDate():""}};this.config=function(e){n=angular.extend({},n,e)},this.$get=function(){return n}}).directive("msDatepickerFix",e)}(),function(){"use strict";function e(s){return{restrict:"E",scope:{id:"=",model:"=",element:"=",title:"=",path:"="},replace:!0,link:function(n,e){var t=!1,a={};a.id=n.id,_.isNil(n.path)||(a.path=n.path);var i=document.createElement(n.element);i.setAttribute("preload","none"),i.setAttribute("controls","true"),"audio"===n.element&&i.setAttribute("style","width: 265px;"),"video"===n.element&&i.setAttribute("style","max-width: 500px;"),i.setAttribute("title",n.title),i.setAttribute("src"," "),i.onplay=function(e){t||(t=!0,e.preventDefault(),s[n.model].download(a).$promise.then(function(e){var n=[e.buffer],t=new Blob(n,{type:e.type});i.setAttribute("type",e.type),i.setAttribute("src",URL.createObjectURL(t)),i.play()}).catch(function(e){console.error(e)}))},e.append(i)}}}e.$inject=["api"],angular.module("app.core").directive("msDialogRecording",e)}(),function(){"use strict";function e(i){return{restrict:"A",link:function(t,a){a.bind("click",function(e){var n=i('
')(t);a.closest("md-dialog").prepend(n)})}}}e.$inject=["$compile"],angular.module("app.core").directive("msDialogSpinner",e)}(),function(){"use strict";angular.module("app.core").directive("msDualMultiselect",function(){return{restrict:"E",scope:{options:"="},controller:["$scope",function(o){o.canTransfer=function(e,n,t){if(!n.readOnly)return void 0!==e.isValid&&e.isValid?t?o.transfer(n.selectedItems,n.items,n.selectedItems.indexOf(e),t):o.transfer(n.items,n.selectedItems,n.items.indexOf(e),t):void 0},o.transfer=function(e,n,t,a){var i=[];if(0<=t)i.push(e[t]),n.push(e[t]),e.splice(t,1);else{for(var s=0;s',link:function(t,e){var n=e.emojioneArea({pickerPosition:t.pickerPosition,search:t.search,recentEmojis:t.recentEmojis,placeholder:a.instant(t.placeholder||"Type a message"),attributes:{spellcheck:!0},events:{keypress:function(e,n){t.ngModel=this.getText(),t.onReply({event:n,body:this.getText()})},emojibtn_click:function(){t.ngModel=this.getText()}}});t.ngModel&&n[0].emojioneArea.setText(t.ngModel),t.internalControl=t.ctrlMethods||{},t.internalControl.setText=function(e){n[0].emojioneArea.setText(e)},t.internalControl.getText=function(){return n[0].emojioneArea.getText()},t.$watch("ngModel",function(e){e||n[0].emojioneArea.setText("")})}}}e.$inject=["$translate"],angular.module("app.core").directive("msEmojiArea",e)}(),function(){"use strict";angular.module("app.core").directive("msFontFamily",function(){return{restrict:"E",scope:{ngModel:"="},controller:["$scope",function(e){e.fonts=[{option:"Arial",value:"Arial,Helvetica,sans-serif"},{option:"Century Gothic",value:"Century Gothic,Futura,Didact Gothic,san-serif"},{option:"Calibri",value:"Calibri, Verdana, Geneva, sans-serif"},{option:"Comic Sans MS",value:"Comic Sans MS,cursive"},{option:"Courier New",value:"Courier New,Courier,monospace"},{option:"Georgia",value:"Georgia,serif"},{option:"Lucida Sans Unicode",value:"Lucida Sans Unicode,Lucida Grande,sans-serif"},{option:"Tahoma",value:"Tahoma,Geneva,sans-serif"},{option:"Times New Roman",value:"Times New Roman,Times,serif"},{option:"Trebuchet MS",value:"Trebuchet MS,Helvetica,sans-serif"},{option:"Verdana",value:"Verdana,Geneva,sans-serif"}]}],templateUrl:"app/core/directives/ms-font-family/ms-font-family.html"}})}(),function(){"use strict";angular.module("app.core").controller("MsFormWizardController",function(){var n=this;function e(){return n.forms.length}function t(){return 0===n.selectedIndex}function a(){return n.selectedIndex===e()-1}n.forms=[],n.selectedIndex=0,n.registerForm=function(e){n.forms.push(e)},n.previousStep=function(){if(t())return;n.selectedIndex--},n.nextStep=function(){if(a())return;n.selectedIndex++},n.firstStep=function(){n.selectedIndex=0},n.lastStep=function(){n.selectedIndex=e()-1},n.totalSteps=e,n.isFirstStep=t,n.isLastStep=a,n.currentStepInvalid=function(){return angular.isDefined(n.forms[n.selectedIndex])&&n.forms[n.selectedIndex].$invalid},n.previousStepInvalid=function(){return 0d.options.responsive.md?d.options.responsive.md:d.columnCount:l("sm")?d.columnCount=d.columnCount>d.options.responsive.sm?d.options.responsive.sm:d.columnCount:d.columnCount=d.options.responsive.xs;d.columnWidth=d.containerPos.width/d.columnCount}(),r.$broadcast("msMasonry:relayoutStarted"),d.items=d.container.find("ms-masonry-item");for(var e=Array.apply(null,new Array(d.columnCount)).map(function(){return 0}),n=0;n'),r=angular.element('
'),l=n.parent();function d(){s.addClass("ms-nav-folded"),g.$broadcast("msNav::forceCollapse"),n.scrollTop(0),l.append(o),o.on("mouseenter touchstart",function(e){c(e),i=!0})}function c(e){angular.isDefined(e)&&e.preventDefault(),s.addClass("ms-nav-folded-open"),g.$broadcast("msNav::expandMatchingToggles"),l.find(o).remove(),l.parent().append(r),r.on("mouseenter touchstart",function(e){m(e),i=!1})}function m(e){angular.isDefined(e)&&e.preventDefault(),g.$broadcast("msNav::forceCollapse"),n.scrollTop(0),s.removeClass("ms-nav-folded-open"),l.parent().find(r).remove(),l.append(o),o.on("mouseenter touchstart",function(e){c(e),i=!0})}function u(){s.removeClass("ms-nav-folded ms-nav-folded-open"),g.$broadcast("msNav::expandMatchingToggles"),n.off("mouseenter mouseleave")}v.setFoldable(e,n,a),a?d():u(),e.toggleFold=function(){(a=!a)?d():u()},e.openFolded=c,e.closeFolded=m,e.isNavFoldedOpen=function(){return i},e.$on("$destroy",function(){o.off("mouseenter touchstart"),r.off("mouseenter touchstart"),n.off("mouseenter mouseleave")})}}}function n(t,a,i){return{restrict:"E",scope:{},controller:"MsNavController",compile:function(e){return e.addClass("ms-nav"),function(e){t.$broadcast("msNav::expandMatchingToggles");var n=t.$on("$stateChangeSuccess",function(){t.$broadcast("msNav::expandMatchingToggles"),a.when("navigation").then(function(e){e.close(),i.isNavFoldedOpen()&&i.closeFolded()})});e.$on("$destroy",function(){n()})}}}}function t(m,u,p,g){return{restrict:"A",require:"^msNav",scope:!0,compile:function(e,n){return e.addClass("ms-nav-toggle"),angular.isUndefined(n.collapsed)&&(n.collapsed=!0),e.attr("collapsed",n.collapsed),function(a,i,e,t){var s={expanded:"expanded",expandAnimation:"expand-animation",collapseAnimation:"collapse-animation"},n=i.find("a"),o=[],r=/\(.*\)/g;function l(){return"true"===i.attr("collapsed")}function d(){var e=u.defer();if(!l())return e.reject({error:!0}),e.promise;i.attr("collapsed",!1);var n=angular.element(i.find("ms-nav-toggle-items")[0]);n.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var t=n[0].offsetHeight;return n.css({position:"",visibility:"",display:"",height:""}),a.$evalAsync(function(){p.animate(n,{display:"block",height:"0px"},{height:t+"px"},s.expandAnimation).then(function(){n.addClass(s.expanded),n.css({height:""}),e.resolve({success:!0})})}),e.promise}function c(){var e=u.defer();if(l())return e.reject({error:!0}),e.promise;i.attr("collapsed",!0);var n=angular.element(i.find("ms-nav-toggle-items")[0]),t=n[0].offsetHeight;return a.$evalAsync(function(){p.animate(n,{height:t+"px"},{height:"0px"},s.collapseAnimation).then(function(){n.removeClass(s.expanded),n.css({display:"",height:""}),e.resolve({success:!0})})}),e.promise}angular.forEach(n,function(e){var n=angular.element(e).attr("ui-sref");angular.isUndefined(n)||(n=n.replace(r,""),o.push(n))}),t.setToggleItem(i,a),i.children(".ms-nav-button").on("click",function(){if(t.isDisabled())return;t.disable(),l()?(t.clearLockedItems(),a.$emit("msNav::pushToLockedList"),m.$broadcast("msNav::collapse"),d().then(function(){t.enable()})):a.$broadcast("msNav::forceCollapse")}),a.$on("$destroy",function(){i.children(".ms-nav-button").off("click")}),a.$on("msNav::collapse",function(){var e=t.getLockedItems(),n=!1;angular.forEach(e,function(e){angular.equals(e.scope,a)&&(n=!0)}),n||c().then(function(){t.enable()})}),a.$on("msNav::forceCollapse",function(){c().then(function(){t.enable()})}),a.$on("msNav::expandMatchingToggles",function(){var n=g.current.name,t=!1;angular.forEach(o,function(e){n===e&&(t=!0)}),t?d():c()}),a.$on("msNav::pushToLockedList",function(){t.setLockedItem(i,a)})}}}}e.$inject=["$document","$rootScope","msNavFoldService"],n.$inject=["$rootScope","$mdComponentRegistry","msNavFoldService"],t.$inject=["$rootScope","$q","$animate","$state"],angular.module("app.core").factory("msNavFoldService",function(){var t={};return{setFoldable:function(e,n){t={scope:e,element:n}},isNavFoldedOpen:function(){return t.scope.isNavFoldedOpen()},toggleFold:function(){t.scope.toggleFold()},openFolded:function(){t.scope.openFolded()},closeFolded:function(){t.scope.closeFolded()}}}).directive("msNavIsFolded",e).controller("MsNavController",function(){var e=this,n=!1,t=[],a=[];e.isDisabled=function(){return n},e.enable=function(){n=!1},e.disable=function(){n=!0},e.setToggleItem=function(e,n){t.push({element:e,scope:n})},e.getLockedItems=function(){return a},e.setLockedItem=function(e,n){a.push({element:e,scope:n})},e.clearLockedItems=function(){a=[]}}).directive("msNav",n).directive("msNavTitle",function(){return{restrict:"A",compile:function(e){return e.addClass("ms-nav-title"),function(){}}}}).directive("msNavButton",function(){return{restrict:"AE",compile:function(e){return e.addClass("ms-nav-button"),function(){}}}}).directive("msNavToggle",t)}(),function(){"use strict";function e(e,n){e.root?this.navigation=n.getNavigation(e.root):this.navigation=n.getNavigation(),this.toggleHorizontalMobileMenu=function(){angular.element("body").toggleClass("ms-navigation-horizontal-mobile-menu-active")},n.sort()}function n(c,m,u,p){return{restrict:"E",scope:{folded:"=",root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/vertical.html",transclude:!0,compile:function(e){return e.addClass("ms-navigation"),function(e,n){var t=angular.element("body"),a=angular.element('
'),i=angular.element('
'),s=u("navigation");function o(e){if(p.setFolded(e),e)c.$broadcast("msNavigation::collapse"),t.addClass("ms-navigation-folded"),r();else{var n=p.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),t.removeClass("ms-navigation-folded ms-navigation-folded-open"),i.remove()}}function r(){n.parent().append(a),m(function(){a.on("mouseenter touchstart",l)})}function l(e){e&&e.preventDefault(),p.setFoldedOpen(!0);var n=p.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),t.addClass("ms-navigation-folded-open"),a.remove(),t.find("#main").append(i),i.on("mouseenter touchstart",d)}function d(e){e&&e.preventDefault(),p.setFoldedOpen(!1),c.$broadcast("msNavigation::collapse"),t.removeClass("ms-navigation-folded-open"),i.remove(),r()}p.setNavigationScope(e),function(){null===p.getFolded()&&p.setFolded(e.folded);p.getFolded()&&(m(function(){c.$broadcast("msNavigation::collapse")}),t.addClass("ms-navigation-folded"),r())}(),e.$watch(function(){return s.isLockedOpen()},function(e,n){if(!angular.isUndefined(e)&&!angular.equals(e,n)&&p.getFolded())if(e)c.$broadcast("msNavigation::collapse");else{var t=p.getActiveItem();t&&t.scope.$emit("msNavigation::stateMatched")}}),e.$watch("folded",function(e,n){angular.isUndefined(e)||angular.equals(e,n)||o(e)}),e.toggleFolded=function(){o(!p.getFolded())},e.$on("$stateChangeStart",function(){s.close()}),e.$on("$destroy",function(){i.off("mouseenter touchstart"),a.off("mouseenter touchstart")})}}}}function t(t,e,a,i,n,s){var o=this;o.element=e,o.node=t.node,o.hasChildren=void 0,o.collapsed=void 0,o.collapsable=void 0,o.group=void 0,o.animateHeightClass="animate-height",o.toggleCollapsed=function(){o.collapsed?o.expand():o.collapse()},o.collapse=function(){var e=o.element.children("ul"),n=e[0].offsetHeight;t.$evalAsync(function(){o.collapsed=!0,o.element.addClass("collapsing"),i.animate(e,{display:"block",height:n+"px"},{height:"0px"},o.animateHeightClass).then(function(){e.css({display:"",height:""}),o.element.removeClass("collapsing")}),t.$broadcast("msNavigation::collapse")})},o.expand=function(){var e=o.element.children("ul");e.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var n=e[0].offsetHeight;e.css({position:"",visibility:"",display:"",height:""}),t.$evalAsync(function(){o.collapsed=!1,o.element.addClass("expanding"),i.animate(e,{display:"block",height:"0px"},{height:n+"px"},o.animateHeightClass).then(function(){e.css({height:""}),o.element.removeClass("expanding")}),a.$broadcast("msNavigation::collapse",o.node._path)})},o.getClass=function(){return o.node.class},o.isHidden=function(){if(angular.isDefined(o.node.hidden)&&angular.isFunction(o.node.hidden))return o.node.hidden();return!1},function(){o.hasChildren=0 target, inbound, fullname",e,n,t),b.calls.unshift({target:e,fullname:t||e,inbound:n,time:moment().format("HH:mm")}),50 session",e),b.conf.microphoneId?b.sessionConf.mediaConstraints.audio={deviceId:b.conf.microphoneId}:b.sessionConf.mediaConstraints.audio=!0,e.answer(b.sessionConf),b.isJabraEnabled&&(jabra.offHook(),b.jabraSession=e)}function S(e,n){console.debug("terminate -> session",e);var t={};if(n?t.status_code=n:e.isEstablished()||(t.status_code=603),e.terminate(t),b.isJabraEnabled)if(0===b.sessions.length)e.localHold&&jabra.resume(),jabra.onHook(),b.jabraSession=null;else{var a=_.last(b.sessions);a.localHold?(jabra.onHook(),jabra.hold(),b.jabraSession=a):jabra.offHook()}}function T(t){return console.debug("getVoiceChannels -> session",t),o.rpc.getVoiceChannels().$promise.then(function(e){var n=_.find(e.rows,function(e){return e.sipcalllinkedid===t.call_id?e:e.sipcalluniqueid===t.call_id?e:null});n&&(t.monitor=n.monitor,t.uniqueid=n.uniqueid,t.monitors=n.monitors)})}function I(e){console.debug("onAddstream -> data",e),this.remotePlayer.srcObject=e.stream,this.remotePlayer.play()}function w(){b.canGoInConference=!1,b.isInConference=!1,b.currentconferenceSessions=[]}function C(e,n){switch(e){case"ringing":b.soundPlayer.muted=b.conf.ringingMute,b.conf.ringingId&&b.soundPlayer.setSinkId(b.conf.ringingId).then(function(){b.soundPlayer.volume=b.conf.ringingVolume}).then(function(){n&&A()}).catch(function(e){console.info(e.message,b.conf.ringingId)});break;case"speaker":b.remotePlayer.muted=b.conf.speakerMute,b.conf.speakerId&&b.remotePlayer.setSinkId(b.conf.speakerId).then(function(){b.remotePlayer.volume=b.conf.speakerVolume}).then(function(){n&&A()}).catch(function(e){console.info(e.message,b.conf.speakerId)});break;case"microphone":for(var t=0;t session, textContent, position, delay",e,n,t,a),function(){i.show(i.simple().textContent(n).position(t).hideDelay(a)),S(e)}}function N(n){return console.debug("findSessionBySessionId -> sessionId, vm_pb.sessions",n,b.sessions),_.find(b.sessions,function(e){return e.call_id==n})}function D(e,n){return console.debug("callCallback -> url, params",e,n),s({url:e,method:"GET",params:n})}e(function(){},999),b.direction="right",b.selectedMode="md-scale",b.target="",b.showDialpad=!1,b.soundPlayer=document.createElement("audio"),b.remotePlayer=document.getElementById(b.conf.remotePlayerId),b.soundPlayer.volume=1,b.sessionConf={mediaConstraints:{audio:!0,video:!1},pcConfig:{iceServers:[]}},b.sessions=[],b.calls=[],b.callbackQueue=[],b.canGoInConference=!1,b.isInConference=!1,b.currentConferenceSessions=[],b.ua=new JsSIP.UA({sockets:[new JsSIP.WebSocketInterface("wss://"+b.conf.host+":8089/ws")],uri:new JsSIP.URI("sip",b.conf.name,b.conf.host,5060,null,null).toString(),authorization_user:b.conf.name,ha1:b.conf.ha1,realm:b.conf.realm,user_agent:b.conf.ua,session_timers_refresh_method:"invite",register_expires:b.conf.phoneBarExpires||60,register:!0}),b.conf=_.merge(d.webrtc,b.conf),b.initDeviceInProgress=!1,b.isJabraEnabled=!1,b.isJabraInitialized=!1,b.jabraSession=null,b.jabraClicked=!1,b.buttonClicked=!1,b.originateInProgress=!1,t.bind("keyup",function(e){switch(e.keyCode){case 27:p(function(){b.showDialpad=!1})}}),b.$onInit=function(){c(!1),navigator.mediaDevices.ondevicechange=function(e){b.initDeviceInProgress||(b.initDeviceInProgress=!0,jabra&&b.isJabraInitialized?jabra.shutdown().then(function(){b.isJabraInitialized=!1,c(!(b.isJabraEnabled=!1))}).catch(function(e){console.error("Unable to shutdown Jabra library",e)}):c(!0))};var e=[o.network.get({type:"turn",nolimit:!0}).$promise,o.network.get({type:"stun",nolimit:!0}).$promise];Promise.all(e).then(function(e){var n=e[0].rows,t=e[1].rows,a=[],i=[];t.forEach(function(e){i.push("stun:"+e.value)}),a.push({urls:i}),n.forEach(function(e){var n={urls:"turn:"+e.value};e.username&&(n.username=e.username),e.password&&(n.credential=e.password),a.push(n)}),b.sessionConf.pcConfig={iceServers:a}}),this.ua.on("registered",function(){this.registered=!0}.bind(this)),this.ua.on("unregistered",function(){this.registered=!1}.bind(this)),this.ua.on("newRTCSession",function(e){console.debug("onNewRTCSession -> data",e);var n,t,a,i,s,o=e.session,r=!0,l="",d=0;switch(e.originator){case"local":o.outgoing=!0,o.name=e.request.ruri.user,o.user=e.request.ruri.user,E(o.user,!1),t=e.request.extraHeaders,a="X-callback-url",s=_.find(t,function(e){return _.startsWith(e,a)}),n=!!s&&_.trim(s.replace(a,"").replace(i||":","")),b.isJabraEnabled&&(b.jabraSession&&jabra.resume(),b.jabraSession=o,jabra.offHook());break;case"remote":var c=f.getCurrentUser();if(c.voicePause&&c.phoneBarDnd||b.originateInProgress)r=!1;else if(o.incoming=!0,o.name=e.request.from.display_name,o.user=e.request.from.uri.user,l=e.request.getHeader("X-Answer-Mode")||"",d=e.request.getHeader("X-Answer-After")||0,function(n){console.debug("getNotification -> session",n);var e=n.name?n.name+" <"+n.user+">":n.user;h.create("Incoming call from: ",e,null,function(){y(n)},function(){S(n)}).then(function(e){n.notification=e}).catch(function(e){console.error("Error creating notification for incoming call",e)})}(e.session),E(e.session.user,!0),b.isJabraEnabled&&jabra.ring(),b.conf.autoAnswer&&p(function(){o.isInProgress()&&(o.autoAnswer=!0,y(o))},b.conf.autoAnswerDelay?1e3*b.conf.autoAnswerDelay:0),console.debug("xAnswerMode",l),console.debug("xAnswerAfterSec",d),"auto"==l.toLowerCase()){var m=0==d?500:1e3*d;console.debug("auto answer enabled after:"+m+" ms"),p(function(){o.isInProgress()&&(o.autoAnswer=!0,y(o))},m)}}r?(o.call_id=e.request.call_id,n&&D(b.callbackQueue[o.call_id]=n,{call_id:o.call_id}).then(function(){console.log('callbackurl:"'+n+'" called successfully')}).catch(function(e){console.log('fail callbackurl:"'+n+'" err:',e)}),o.connection&&(o.connection.onaddstream=I.bind(this)),o.iceCandidateTimeout=null,o.on("progress",function(e,n){console.debug("onProgress -> session, data",e,n);var t=!1;switch(n.originator){case"local":this.conf.ringingMute||(this.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/incoming-call.ogg"),t=!0);break;case"remote":this.putOtherCallsOnHold(e),this.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/outgoing-call.ogg"),t=!0}b.originateInProgress&&(b.originateInProgress=!1),t&&(this.soundPlayer.loop="loop",this.soundPlayer.play().catch(function(e){console.log(e.message)})),T(e).then(function(){var n=b.callbackQueue[e.call_id];n&&D(n,{uniqueid:e.uniqueid,call_id:e.call_id,number_called:e.user}).then(function(){console.log('callbackurl:"'+n+'" called successfully')}).catch(function(e){console.log('fail callbackurl:"'+n+'" err:',e)}).finally(function(){delete b.callbackQueue[e.call_id]})}).catch(function(e){console.error("Unable to retrieve voice channels",e)})}.bind(this,o)),o.on("confirmed",function(e,n){console.debug("onConfirmed -> session, data",e,n);var t=document.getElementById("div_session_"+e.id.substr(0,32));t&&$(t).scope().$broadcast("timer-start"),e.confirmed=!0,"remote"===n.originator&&e.connection&&(e.connection.onaddstream=I.bind(this),_.head(e.connection.getRemoteStreams())&&(this.remotePlayer.srcObject=_.head(e.connection.getRemoteStreams()),this.remotePlayer.play())),this.soundPlayer.pause(),this.soundPlayer.loop=null,this.putOtherCallsOnHold(e),e.autoAnswer&&(this.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/beep.ogg"),this.soundPlayer.play().catch(function(e){console.log("Unable to play autoAnswer notification",e)})),b.canGoInConference=2==b.sessions.length,T(e).catch(function(e){console.error("Unable to retrieve voice channels",e)})}.bind(this,o)),o.on("hold",function(e,n){console.debug("onHold -> session, data",e,n),"local"===n.originator&&(e.localHold=!0)}.bind(this,o)),o.on("unhold",function(e,n){console.debug("onUnhold -> session, data",e,n),"local"===n.originator&&(e.localHold=!1)}.bind(this,o)),o.on("ended",function(e,n){if(console.debug("onEnded -> session, data",e,n),b.isInConference&&_.includes(b.currentConferenceSessions,e.id)&&(w(),b.buttonClicked=!0),_.remove(this.sessions,{id:e.id}),2!==b.sessions.length&&(b.canGoInConference=!1),b.isJabraEnabled)if(0===b.sessions.length)e.localHold&&jabra.resume(),jabra.onHook(),b.jabraSession=null;else{var t=_.last(b.sessions);t.localHold?(jabra.onHook(),jabra.hold(),b.jabraSession=t):jabra.offHook()}}.bind(this,o)),o.on("failed",function(e,n){if(console.debug("onFailed -> session, data",e,n),this.soundPlayer.pause(),this.soundPlayer.loop=null,e.notification&&e.notification.close(),b.isInConference&&_.includes(b.currentConferenceSessions,e.id)&&w(),b.originateInProgress&&(b.originateInProgress=!1),_.remove(this.sessions,{id:e.id}),2!==b.sessions.length&&(b.canGoInConference=!1),b.isJabraEnabled)if(0===b.sessions.length)e.localHold&&jabra.resume(),jabra.onHook(),b.jabraSession=null;else{var t=_.last(b.sessions);t.localHold?(jabra.onHook(),jabra.hold(),b.jabraSession=t):jabra.offHook()}}.bind(this,o)),o.on("icecandidate",function(e,n){console.debug("onIcecandidate -> session, data",e,n),null!==e.iceCandidateTimeout&&clearTimeout(e.iceCandidateTimeout),e.iceCandidateTimeout=setTimeout(n.ready,1e3)}.bind(this,o)),b.sessions.push(o),p(function(){u.$apply(),console.debug("onNewRTCSession -> vm_pb.sessions",b.sessions)})):S(o,486)}.bind(this)),r.on("webbar:originate",function(e){console.debug("originateHook -> payload",e);var n=e.callNumber,t=e.callerId,a=e.callbackUrl;b.conf.microphoneId?b.sessionConf.mediaConstraints.audio={deviceId:b.conf.microphoneId}:b.sessionConf.mediaConstraints.audio=!0;var i=n.replace(/ /g,"");if(i=(i=i.replace(/\(/g,"")).replace(/\)/g,"")){var s=angular.copy(b.sessionConf);s.extraHeaders=[],t&&s.extraHeaders.push("X-CID: "+t),a&&s.extraHeaders.push("X-callback-url: "+a),b.originateInProgress=!0,b.ua.call(i,s)}}.bind(this)),r.on("webbar:hangup",function(e){console.debug("hangupHook -> payload",e);var n=b.sessions;if(e.sessionId&&((n=[]).push(N(e.sessionId)),0==n.length))console.warn("call with session Id "+sessionId+" not found");else for(var t=0;t sessionToHangup",a),b.terminate(a)}}.bind(this)),r.on("webbar:answer",function(e){var n;console.debug("answerHook -> payload",e),n=e.sessionId?N(e.sessionId):_.find(b.sessions,function(e){return e.incoming&&!e.confirmed}),e.sessionId&&!n&&console.warn("call with session Id "+e.sessionId+" not found"),n&&b.answer(n)}.bind(this)),r.on("webbar:hold",function(e){console.debug("holdHook -> payload",e);var n=b.sessions;if(e.sessionId&&((n=[]).push(N(e.sessionId)),0==n.length))console.warn("call with session Id "+sessionId+" not found");else for(var t=0;t payload",e),e.sessionId){var n=N(e.sessionId);n?b.unhold(n):console.warn("call with session Id "+sessionId+" not found")}else console.error("sessionId required")}.bind(this)),r.on("webbar:transfer",function(e){if(console.debug("transferHook -> payload",e),e.sessionId)if(e.transferNumber){var n=N(e.sessionId);n?n.refer(e.transferNumber,{eventHandlers:{requestSucceeded:x(n,"requestSucceeded","top right",3e3),requestFailed:x(n,"requestFailed","top right",3e3)}}):console.warn("call with session Id "+sessionId+" not found")}else console.error("transferNumber required");else console.error("sessionId required")}.bind(this))}.bind(this),b.type=function(e,n){var t=e;switch(b.target||(b.target=""),n&&(b.target+=e,u.$broadcast("angucomplete-alt:changeInput","ms-target-wrap",b.target)),e){case"*":t="asterisk";break;case"#":t="pound"}b.conf.enableDtmfTone&&(b.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/dialpad/"+t+".ogg"),b.soundPlayer.play().catch(function(e){console.log(e.message)}));for(var a=0;a session",e),e.hold({useUpdate:!1}),b.isJabraEnabled&&(jabra.hold(),jabra.onHook())},b.refer=function(n){console.debug("refer -> session",n);var e=a.prompt().title("Transfer").textContent("Type the target").placeholder("Target").ariaLabel("Target").ok("Transfer").cancel("Cancel");a.show(e).then(function(e){return O(e)}).then(function(e){n.refer(e,{eventHandlers:{requestSucceeded:x(n,"requestSucceeded","top right",3e3),requestFailed:x(n,"requestFailed","top right",3e3)}})})},b.record=function(e){console.debug("record -> session",e),a.show({controller:"RecordDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/record/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{session:e,sessions:b.sessions}})},b.unhold=function(e){console.debug("unhold -> session",e),e.unhold({useUpdate:!1}),b.putOtherCallsOnHold(e),b.isJabraEnabled&&(jabra.offHook(),jabra.resume())},b.answer=y,b.terminate=S,b.selectSession=function(e){console.debug("selectSession -> session",e),b.unhold(e)},b.typeWrapper=function(e){switch(e.key.toLowerCase()){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"*":case"#":b.type(e.key);break;case"enter":b.call()}},b.toggleDialpad=function(){b.showDialpad=!b.showDialpad},b.referAttended=function(e){console.debug("referAttended -> session",e),a.show({controller:"ReferAttendedDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/referAttended/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{session:e,sessions:_.reject(b.sessions,{id:e.id}),isJabraEnabled:b.isJabraEnabled}})},b.closeDialpad=function(){b.showDialpad=!1},b.initDevice=C,b.putOtherCallsOnHold=function(e){if(console.debug("putOtherCallsOnHold -> session",e),1 evt, data",e,n),n.target&&(b.target=n.target,b.call())}),u.$on("webrtc::transfer",function(e,n){if(console.debug("onRemoteTransfer -> evt, data",e,n),n.target)for(var t=0;t session, textContent, position, delay",e,n,t,a),function(){s.show(s.simple().textContent(n).position(t).hideDelay(a)),e.terminate(),jabra&&i&&jabra.onHook(),l()}}function l(e){n.hide(e)}o.title="Refer Attended",o.sessions=a,o.session=i,o.isJabraEnabled=e,o.sessionTarget=null,a.length&&(o.target=a[0].user),o.closeDialog=l,o.transfer=function(){var e,n,t=_.find(a,function(e){if(e.user===o.target)return e});n=t.outgoing?(e=t,o.session):(e=o.session,t);n.refer(e.user,{replaces:e,eventHandlers:{requestSucceeded:r(i,"requestSucceeded","top right",3e3,o.isJabraEnabled),requestFailed:r(i,"requestFailed","top right",3e3,o.isJabraEnabled)}})}}e.$inject=["$mdDialog","$mdToast","sessions","session","isJabraEnabled"],angular.module("app.core").controller("ReferAttendedDialogController",e)}(),function(){"use strict";function e(e,s,n){var t=this;function a(e,n,t){var a;if(s[t]){if(a=_.find(e,function(e){return e.deviceId===s[t]}))return a.deviceId;var i=_.findIndex(e,function(e){return e.kind===n});if(0<=i)return e[i].deviceId}else(a=_.find(e,function(e){return e.kind===n}))&&(s[t]=a.deviceId);return s[t]||null}_.remove(n,function(e){return"audioinput"===e.kind&&("default"===e.deviceId||"communications"===e.deviceId)||"audiooutput"===e.kind&&("default"===e.deviceId||"communications"===e.deviceId)}),s.ringingId=a(n,"audiooutput","ringingId"),s.speakerId=a(n,"audiooutput","speakerId"),s.microphoneId=a(n,"audioinput","microphoneId"),s.ringingVolume=s.ringingVolume||.5,s.speakerVolume=s.speakerVolume||.5,s.microphoneVolume=s.microphoneVolume||1,s.ringingMute=s.ringingMute||!1,s.speakerMute=s.speakerMute||!1,s.microphoneMute=s.microphoneMute||!1,t.conf=angular.copy(s),t.devices=n,t.saveSettings=function(){e.hide(t.conf)},t.closeDialog=function(){e.hide()},t.isCompatibleBrowser=function(){return"chrome"===t.conf.browserName.toLowerCase()||"opera"===t.conf.browserName.toLowerCase()||"safari"===t.conf.browserName.toLowerCase()}}e.$inject=["$mdDialog","conf","devices"],angular.module("app.toolbar").controller("SettingsController",e)}(),function(){"use strict";function e(t,a){var i=this;function s(e){var n=e.key,t={param:i.query[n],resources:e.options,placeholder:e.placeholder,ngValue:e.ngValue};a.setPlaceholder(t).then(function(e){i.placeholders[n]=e})}i.pickerModels={},i.placeholders={},i.localizationMap=t.localizationMap,i.onMultiselectInit=function(e){s(e)},i.onDateRangeInit=function(e){var n=e.key;i.query[n]?i.pickerModels[n]=t.setSelectedDate(i.query[n]):i.pickerModels[n]={dateStart:null}},i.onMultiselectSelection=function(e,n){n&&(s(e),i.search())},i.onDateRangeSelection=function(e){var n=e.key;i.pickerModels[n].dateStart?i.query[n]={$gte:moment(i.pickerModels[n].dateStart).utcOffset(0,!0).format(),$lte:moment(i.pickerModels[n].dateEnd).utcOffset(0,!0).add(23,"hours").add(59,"minutes").add(59,"seconds").format()}:i.query[n]=void 0;i.search()},i.clearDate=function(e){var n=e.key;i.pickerModels[n]={dateStart:null},delete i.query[n],i.search()},i.clearSelection=function(e){var n=e.key,t=e.ngValue||"id";i.query[n]=!1===e.clearAll?[_.head(e.options)[t]]:[],s(e),i.search()},i.selectAll=function(e){var n=e.key,t=e.ngValue||"id";i.query[n]=_.map(e.options,t),s(e),i.search()}}function n(p,e){var g={localizationMap:e,setSelectedDate:function(e){var n=new Date(moment.utc(e.$gte).format("YYYY-MM-DD")),t=new Date(moment.utc(e.$lte).format("YYYY-MM-DD")),a={dateStart:new Date(n.getFullYear(),n.getMonth(),n.getDate()),dateEnd:new Date(t.getFullYear(),t.getMonth(),t.getDate())};return a.selectedTemplateName=(i=a,moment(i.dateStart).isSame(i.dateEnd)?(u=i,moment().startOf("day").isSame(u.dateStart)?g.localizationMap.Today:(m=i,moment().subtract(1,"days").startOf("day").isSame(m.dateStart)?g.localizationMap.Yesterday:p("date")(i.dateStart,"dd MMM yyyy"))):(c=i,moment().startOf("isoWeek").isSame(c.dateStart,"day")&&moment().endOf("isoWeek").isSame(c.dateEnd,"day")?g.localizationMap["This Week"]:(d=i,moment().subtract(1,"weeks").startOf("isoWeek").isSame(d.dateStart,"day")&&moment().subtract(1,"weeks").endOf("isoWeek").isSame(d.dateEnd,"day")?g.localizationMap["Last Week"]:(l=i,moment().startOf("month").isSame(l.dateStart,"day")&&moment().endOf("month").isSame(l.dateEnd,"day")?g.localizationMap["This Month"]:(r=i,moment().subtract(1,"months").startOf("month").isSame(r.dateStart,"day")&&moment().subtract(1,"months").endOf("month").isSame(r.dateEnd,"day")?g.localizationMap["Last Month"]:(o=i,moment().startOf("year").isSame(o.dateStart,"day")&&moment().endOf("year").isSame(o.dateEnd,"day")?g.localizationMap["This Year"]:(s=i,moment().subtract(1,"years").startOf("year").isSame(s.dateStart,"day")&&moment().subtract(1,"years").endOf("year").isSame(s.dateEnd,"day")?g.localizationMap["Last Year"]:p("date")(i.dateStart,"dd"+(i.dateStart.getMonth()!==i.dateEnd.getMonth()||i.dateStart.getFullYear()!==i.dateEnd.getFullYear()?" MMM":"")+(i.dateStart.getFullYear()!==i.dateEnd.getFullYear()?" yyyy":""))+" - "+p("date")(i.dateEnd,"dd MMM yyyy")))))))),a;var i,s,o,r,l,d,c,m,u}};return g}n.$inject=["$filter","dateFilterLocalizationFactory"],e.$inject=["dateRangeManager","quickFilterManager"],angular.module("app.core").directive("msQuickFilter",function(){return{restrict:"E",scope:{query:"=",filters:"=",search:"&"},controller:e,controllerAs:"vm",bindToController:!0,templateUrl:"app/core/directives/ms-quick-filter/ms-quick-filter.html"}}).factory("dateRangeManager",n)}(),function(){"use strict";angular.module("app.core").directive("msRandomClass",function(){return{restrict:"A",scope:{msRandomClass:"="},link:function(e,n){var t=e.msRandomClass[Math.floor(Math.random()*e.msRandomClass.length)];n.addClass(t)}}})}(),function(){"use strict";function e(i){return{restrict:"E",scope:{id:"=",model:"=",download:"="},replace:!0,link:function(n,e){var t=!1,a=document.createElement("audio");n.download||a.setAttribute("controlsList","nodownload"),a.setAttribute("preload","none"),a.setAttribute("controls",""),a.setAttribute("style","width: 265px;"),a.setAttribute("src"," "),a.onplay=function(e){t||(t=!0,e.preventDefault(),i[n.model||"voiceRecording"].download({id:n.id}).$promise.then(function(e){var n=[e.buffer],t=new Blob(n,{type:e.type});a.setAttribute("type",e.type),a.setAttribute("src",URL.createObjectURL(t)),a.play()}).catch(function(e){console.error(e)}))},e.append(a)}}}e.$inject=["api"],angular.module("app.core").directive("msRecording",e)}(),function(){"use strict";angular.module("app.core").directive("msResponsiveTable",function(){return{restrict:"A",link:function(e,n){var t=angular.element('
');n.after(t),t.append(n)}}})}(),function(){"use strict";function e(s,o,n,t){return{restrict:"AE",compile:function(e){if(!(t.getConfig("disableCustomScrollbars")||t.getConfig("disableCustomScrollbarsOnMobile")&&n.isMobile()))return e.addClass("ms-scroll"),function(e,n,t){var a={};function i(){PerfectScrollbar.update(n[0])}t.msScroll&&(a=e.$eval(t.msScroll)),a=angular.extend({},o.getConfig(),a),s(function(){PerfectScrollbar.initialize(n[0],a)},0),n.on("mouseenter",i),e.$watch(function(){return n.prop("scrollHeight")},function(e,n){angular.isUndefined(e)||angular.equals(e,n)||i()}),e.$watch(function(){return n.prop("scrollWidth")},function(e,n){angular.isUndefined(e)||angular.equals(e,n)||i()}),e.$on("$destroy",function(){n.off("mouseenter"),PerfectScrollbar.destroy(n[0])})}}}}e.$inject=["$timeout","msScrollConfig","msUtils","motionConfig"],angular.module("app.core").provider("msScrollConfig",function(){var n={wheelSpeed:1,wheelPropagation:!1,swipePropagation:!0,minScrollbarLength:null,maxScrollbarLength:null,useBothWheelAxes:!1,useKeyboard:!0,suppressScrollX:!1,suppressScrollY:!1,scrollXMarginOffset:0,scrollYMarginOffset:0,stopPropagationOnClick:!0};this.config=function(e){n=angular.extend({},n,e)},this.$get=function(){var e={getConfig:function(){return n}};return e}}).directive("msScroll",e)}(),function(){"use strict";function e(n,i,s,e){var o=this;function t(){angular.isArray(o.onSearch)?a(o.onSearch):o.onResultClick?(o.resultsLoading=!0,n.$parent.$eval("vm.search(query)",{query:o.query.filter}).then(function(e){a(e)}).catch(function(){a([])}).finally(function(){o.resultsLoading=!1})):o.onSearch()}function a(e){o.expanded&&angular.isArray(e)&&null===e&&(o.selectedResultIndex=0,o.results=e)}function r(){o.expanded=!0,o.displayOn=!0,n.expand()}function l(e){!1!==e&&(o.query.filter=void 0,o.onResultClick?a(null):t()),o.expanded=!1,n.collapse()}function d(e){o.onResultClick&&o.onResultClick({item:e}),l()}function c(){var e=i.find(".ms-search-bar-results"),n=angular.element(e.find(".result")[o.selectedResultIndex]);if(e&&n){var t=n.position().top-8,a=n.position().top+n.outerHeight()+8;o.ignoreMouseEvents=!0,s.cancel(o.mouseEventIgnoreTimeout),o.mouseEventIgnoreTimeout=s(function(){o.ignoreMouseEvents=!1},250),e.scrollTop()>t&&e.scrollTop(t),a>e.height()+e.scrollTop()&&e.scrollTop(a-e.height())}}o.queryOptions={debounce:o.debounce||0},o.searchOnEnterKey=e.get().searchOnEnterKey||!1,o.resultsLoading=!1,o.results=null,o.selectedResultIndex=0,o.ignoreMouseEvents=!1,o.expandBar=r,o.collapseBar=l,o.blurCollapse=function(){if(!o.collapseOnBlur)return;l()},o.onKeyDown=function(e){var n=e.keyCode;-1<[27,38,40].indexOf(n)&&e.preventDefault();switch(n){case 13:if(!o.onResultClick)return t();if(!o.results)return;d(o.results[o.selectedResultIndex]);break;case 27:l();break;case 38:0<=o.selectedResultIndex-1&&(o.selectedResultIndex--,c());break;case 40:if(!o.results)return;o.selectedResultIndex+1e.length)return}else r();t()}})}function n(a){return{restrict:"E",scope:{query:"=?",debounce:"=?",direction:"@",iconColor:"@",onSearch:"&",onResultClick:"&?",onExpand:"&?",onCollapse:"&?",collapseOnBlur:"=d.shortcuts.length&&(d.selectedResultIndex=d.shortcuts.length-1)));d.saveShortcuts()},d.handleResultClick=function(e){e.hasShortcut?d.removeShortcut(e):d.addShortcut(e)},d.absorbEvent=function(e){e.preventDefault()},d.handleKeydown=function(e){var n=e.keyCode;-1<[38,40].indexOf(n)&&e.preventDefault();switch(n){case 13:d.handleResultClick(d.results[d.selectedResultIndex]);break;case 38:0<=d.selectedResultIndex-1&&(d.selectedResultIndex--,d.ensureSelectedResultIsVisible());break;case 40:d.selectedResultIndex+1t&&e.scrollTop(t),a>e.height()+e.scrollTop()&&e.scrollTop(a-e.height())}},d.toggleMobileBar=function(){d.mobileBarActive=!d.mobileBarActive},d.loadShortcuts().then(function(e){d.shortcuts=e,0i.steps.length)}i.mainForm=void 0,i.orientation="horizontal",i.steps=[],i.currentStep=void 0,i.currentStepNumber=1,i.setOrientation=function(e){i.orientation=e||"horizontal"},i.registerMainForm=function(e){i.mainForm=e},i.registerStep=function(e,n,t){var a={element:e,scope:n,form:t,stepNumber:n.step||i.steps.length+1,stepTitle:n.stepTitle,stepTitleTranslate:n.stepTitleTranslate};return i.steps.push(a),i.steps.sort(function(e,n){return e.stepNumber-n.stepNumber}),a},i.setupSteps=function(){i.setCurrentStep(i.currentStepNumber)},i.resetForm=function(){e(function(){for(var e=0;ee.scrollWidth&&0==e.scrollLeft&&0==n.scrollLeft?"right":n.scrollWidth>e.scrollWidth&&n.scrollLeft>e.scrollLeft&&e.scrollWidth+n.scrollLeft>=n.scrollWidth?"left":n.scrollWidth>e.scrollWidth&&n.scrollLeft>e.scrollLeft&&e.scrollWidth+n.scrollLeftt.position().top+i&&(m(function(){o=!0}),r.off("scroll",c))}}}}}e.$inject=["$timeout","$q"],angular.module("app.core").controller("MsTimelineController",function(){var n=this;n.scrollEl=void 0,n.setScrollEl=function(e){n.scrollEl=e},n.getScrollEl=function(){return n.scrollEl}}).directive("msTimeline",function(){return{scope:{msTimeline:"=?",loadMore:"&?msTimelineLoadMore"},controller:"MsTimelineController",compile:function(e){return e.addClass("ms-timeline"),function(e,n,t,a){var i=angular.element('
');n.append(i);var s={scrollEl:"#content"};s=angular.extend(s,e.msTimeline,{});var o=angular.element(s.scrollEl);a.setScrollEl(o);var r=144;function l(){o.scrollTop()+o.height()+r>i.position().top&&(i.addClass("show"),c(),e.loadMore&&e.loadMore().then(function(){i.removeClass("show"),d()},function(){i.remove()}))}function d(){o.on("scroll",l)}function c(){o.off("scroll",l)}d(),e.$on("$destroy",function(){c()})}}}}).directive("msTimelineItem",e)}(),function(){"use strict";function e(a,e,n,i,t){var r=this;function s(){!function(){r.millis=l().diff(moment(r.startingTime));var e=moment.duration(r.millis),n=e.seconds(),t=e.minutes(),a=e.hours(),i=e.days(),s=e.months(),o=e.years();r.seconds=n<10?"0"+n:n,r.minutes=t<10?"0"+t:t,r.hours=a<10?"0"+a:a,r.days=i<10?"0"+i:i,r.months=s<10?"0"+s:s,r.years=o<10?"0"+o:o,r.timer=0{{ vm.timer }}
",compile:function(){return{pre:function(e,n,t){e.interval=t.interval||1e3}}},controller:e,controllerAs:"vm",bindToController:!0}})}(),function(){"use strict";angular.module("app.core").directive("msTimezone",function(){return{restrict:"E",scope:{ngModel:"="},controller:["$scope",function(e){e.timezone=[{name:"Europe/Andorra",utcOffset:60,offsetStr:"+01:00",countries:["AD"]},{name:"Asia/Dubai",utcOffset:240,offsetStr:"+04:00",countries:["AE","OM"]},{name:"Asia/Kabul",utcOffset:270,offsetStr:"+04:30",countries:["AF"]},{name:"Europe/Tirane",utcOffset:60,offsetStr:"+01:00",countries:["AL"]},{name:"Asia/Yerevan",utcOffset:240,offsetStr:"+04:00",countries:["AM"]},{name:"Antarctica/Rothera",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},{name:"Antarctica/Palmer",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},{name:"Antarctica/Mawson",utcOffset:300,offsetStr:"+05:00",countries:["AQ"]},{name:"Antarctica/Davis",utcOffset:420,offsetStr:"+07:00",countries:["AQ"]},{name:"Antarctica/Casey",utcOffset:480,offsetStr:"+08:00",countries:["AQ"]},{name:"Antarctica/Vostok",utcOffset:360,offsetStr:"+06:00",countries:["AQ"]},{name:"Antarctica/DumontDUrville",utcOffset:600,offsetStr:"+10:00",countries:["AQ"]},{name:"Antarctica/Syowa",utcOffset:180,offsetStr:"+03:00",countries:["AQ"]},{name:"Antarctica/Troll",utcOffset:0,offsetStr:"+00:00",countries:["AQ"]},{name:"America/Argentina/Buenos_Aires",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Cordoba",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Salta",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Jujuy",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Tucuman",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Catamarca",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/La_Rioja",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/San_Juan",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Mendoza",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/San_Luis",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Rio_Gallegos",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Ushuaia",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"Pacific/Pago_Pago",utcOffset:-660,offsetStr:"-11:00",countries:["AS","UM"]},{name:"Europe/Vienna",utcOffset:60,offsetStr:"+01:00",countries:["AT"]},{name:"Australia/Lord_Howe",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Antarctica/Macquarie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Hobart",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Currie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Melbourne",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Sydney",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Broken_Hill",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},{name:"Australia/Brisbane",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},{name:"Australia/Lindeman",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},{name:"Australia/Adelaide",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},{name:"Australia/Darwin",utcOffset:570,offsetStr:"+09:30",countries:["AU"]},{name:"Australia/Perth",utcOffset:480,offsetStr:"+08:00",countries:["AU"]},{name:"Australia/Eucla",utcOffset:525,offsetStr:"+08:45",countries:["AU"]},{name:"Asia/Baku",utcOffset:240,offsetStr:"+04:00",countries:["AZ"]},{name:"America/Barbados",utcOffset:-240,offsetStr:"-04:00",countries:["BB"]},{name:"Asia/Dhaka",utcOffset:360,offsetStr:"+06:00",countries:["BD"]},{name:"Europe/Brussels",utcOffset:60,offsetStr:"+01:00",countries:["BE"]},{name:"Europe/Sofia",utcOffset:120,offsetStr:"+02:00",countries:["BG"]},{name:"Atlantic/Bermuda",utcOffset:-240,offsetStr:"-04:00",countries:["BM"]},{name:"Asia/Brunei",utcOffset:480,offsetStr:"+08:00",countries:["BN"]},{name:"America/La_Paz",utcOffset:-240,offsetStr:"-04:00",countries:["BO"]},{name:"America/Noronha",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},{name:"America/Belem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Fortaleza",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Recife",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Araguaina",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Maceio",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Bahia",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Sao_Paulo",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},{name:"America/Campo_Grande",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Cuiaba",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Santarem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Porto_Velho",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Boa_Vista",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Manaus",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Eirunepe",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},{name:"America/Rio_Branco",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},{name:"America/Nassau",utcOffset:-300,offsetStr:"-05:00",countries:["BS"]},{name:"Asia/Thimphu",utcOffset:360,offsetStr:"+06:00",countries:["BT"]},{name:"Europe/Minsk",utcOffset:180,offsetStr:"+03:00",countries:["BY"]},{name:"America/Belize",utcOffset:-360,offsetStr:"-06:00",countries:["BZ"]},{name:"America/St_Johns",utcOffset:-210,offsetStr:"-03:30",countries:["CA"]},{name:"America/Halifax",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Glace_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Moncton",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Goose_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Blanc-Sablon",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Toronto",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Nipigon",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Thunder_Bay",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Iqaluit",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Pangnirtung",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Resolute",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Atikokan",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Rankin_Inlet",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Winnipeg",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Rainy_River",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Regina",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Swift_Current",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Edmonton",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Cambridge_Bay",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Yellowknife",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Inuvik",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Creston",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Dawson_Creek",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Fort_Nelson",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Vancouver",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"America/Whitehorse",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"America/Dawson",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"Indian/Cocos",utcOffset:390,offsetStr:"+06:30",countries:["CC"]},{name:"Europe/Zurich",utcOffset:60,offsetStr:"+01:00",countries:["CH","DE","LI"]},{name:"Africa/Abidjan",utcOffset:0,offsetStr:"+00:00",countries:["CI","BF","GM","GN","ML","MR","SH","SL","SN","ST","TG"]},{name:"Pacific/Rarotonga",utcOffset:-600,offsetStr:"-10:00",countries:["CK"]},{name:"America/Santiago",utcOffset:-180,offsetStr:"-03:00",countries:["CL"]},{name:"Pacific/Easter",utcOffset:-300,offsetStr:"-05:00",countries:["CL"]},{name:"Asia/Shanghai",utcOffset:480,offsetStr:"+08:00",countries:["CN"]},{name:"Asia/Urumqi",utcOffset:360,offsetStr:"+06:00",countries:["CN"]},{name:"America/Bogota",utcOffset:-300,offsetStr:"-05:00",countries:["CO"]},{name:"America/Costa_Rica",utcOffset:-360,offsetStr:"-06:00",countries:["CR"]},{name:"America/Havana",utcOffset:-300,offsetStr:"-05:00",countries:["CU"]},{name:"Atlantic/Cape_Verde",utcOffset:-60,offsetStr:"-01:00",countries:["CV"]},{name:"America/Curacao",utcOffset:-240,offsetStr:"-04:00",countries:["CW","AW","BQ","SX"]},{name:"Indian/Christmas",utcOffset:420,offsetStr:"+07:00",countries:["CX"]},{name:"Asia/Nicosia",utcOffset:120,offsetStr:"+02:00",countries:["CY"]},{name:"Europe/Prague",utcOffset:60,offsetStr:"+01:00",countries:["CZ","SK"]},{name:"Europe/Berlin",utcOffset:60,offsetStr:"+01:00",countries:["DE"]},{name:"Europe/Copenhagen",utcOffset:60,offsetStr:"+01:00",countries:["DK"]},{name:"America/Santo_Domingo",utcOffset:-240,offsetStr:"-04:00",countries:["DO"]},{name:"Africa/Algiers",utcOffset:60,offsetStr:"+01:00",countries:["DZ"]},{name:"America/Guayaquil",utcOffset:-300,offsetStr:"-05:00",countries:["EC"]},{name:"Pacific/Galapagos",utcOffset:-360,offsetStr:"-06:00",countries:["EC"]},{name:"Europe/Tallinn",utcOffset:120,offsetStr:"+02:00",countries:["EE"]},{name:"Africa/Cairo",utcOffset:120,offsetStr:"+02:00",countries:["EG"]},{name:"Africa/El_Aaiun",utcOffset:0,offsetStr:"+00:00",countries:["EH"]},{name:"Europe/Madrid",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},{name:"Africa/Ceuta",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},{name:"Atlantic/Canary",utcOffset:0,offsetStr:"+00:00",countries:["ES"]},{name:"Europe/Helsinki",utcOffset:120,offsetStr:"+02:00",countries:["FI","AX"]},{name:"Pacific/Fiji",utcOffset:720,offsetStr:"+12:00",countries:["FJ"]},{name:"Atlantic/Stanley",utcOffset:-180,offsetStr:"-03:00",countries:["FK"]},{name:"Pacific/Chuuk",utcOffset:600,offsetStr:"+10:00",countries:["FM"]},{name:"Pacific/Pohnpei",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},{name:"Pacific/Kosrae",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},{name:"Atlantic/Faroe",utcOffset:0,offsetStr:"+00:00",countries:["FO"]},{name:"Europe/Paris",utcOffset:60,offsetStr:"+01:00",countries:["FR"]},{name:"Europe/London",utcOffset:0,offsetStr:"+00:00",countries:["GB","GG","IM","JE"]},{name:"Asia/Tbilisi",utcOffset:240,offsetStr:"+04:00",countries:["GE"]},{name:"America/Cayenne",utcOffset:-180,offsetStr:"-03:00",countries:["GF"]},{name:"Africa/Accra",utcOffset:0,offsetStr:"+00:00",countries:["GH"]},{name:"Europe/Gibraltar",utcOffset:60,offsetStr:"+01:00",countries:["GI"]},{name:"America/Godthab",utcOffset:-180,offsetStr:"-03:00",countries:["GL"]},{name:"America/Danmarkshavn",utcOffset:0,offsetStr:"+00:00",countries:["GL"]},{name:"America/Scoresbysund",utcOffset:-60,offsetStr:"-01:00",countries:["GL"]},{name:"America/Thule",utcOffset:-240,offsetStr:"-04:00",countries:["GL"]},{name:"Europe/Athens",utcOffset:120,offsetStr:"+02:00",countries:["GR"]},{name:"Atlantic/South_Georgia",utcOffset:-120,offsetStr:"-02:00",countries:["GS"]},{name:"America/Guatemala",utcOffset:-360,offsetStr:"-06:00",countries:["GT"]},{name:"Pacific/Guam",utcOffset:600,offsetStr:"+10:00",countries:["GU","MP"]},{name:"Africa/Bissau",utcOffset:0,offsetStr:"+00:00",countries:["GW"]},{name:"America/Guyana",utcOffset:-240,offsetStr:"-04:00",countries:["GY"]},{name:"Asia/Hong_Kong",utcOffset:480,offsetStr:"+08:00",countries:["HK"]},{name:"America/Tegucigalpa",utcOffset:-360,offsetStr:"-06:00",countries:["HN"]},{name:"America/Port-au-Prince",utcOffset:-300,offsetStr:"-05:00",countries:["HT"]},{name:"Europe/Budapest",utcOffset:60,offsetStr:"+01:00",countries:["HU"]},{name:"Asia/Jakarta",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},{name:"Asia/Pontianak",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},{name:"Asia/Makassar",utcOffset:480,offsetStr:"+08:00",countries:["ID"]},{name:"Asia/Jayapura",utcOffset:540,offsetStr:"+09:00",countries:["ID"]},{name:"Europe/Dublin",utcOffset:0,offsetStr:"+00:00",countries:["IE"]},{name:"Asia/Jerusalem",utcOffset:120,offsetStr:"+02:00",countries:["IL"]},{name:"Asia/Kolkata",utcOffset:330,offsetStr:"+05:30",countries:["IN"]},{name:"Indian/Chagos",utcOffset:360,offsetStr:"+06:00",countries:["IO"]},{name:"Asia/Baghdad",utcOffset:180,offsetStr:"+03:00",countries:["IQ"]},{name:"Asia/Tehran",utcOffset:210,offsetStr:"+03:30",countries:["IR"]},{name:"Atlantic/Reykjavik",utcOffset:0,offsetStr:"+00:00",countries:["IS"]},{name:"Europe/Rome",utcOffset:60,offsetStr:"+01:00",countries:["IT","SM","VA"]},{name:"America/Jamaica",utcOffset:-300,offsetStr:"-05:00",countries:["JM"]},{name:"Asia/Amman",utcOffset:120,offsetStr:"+02:00",countries:["JO"]},{name:"Asia/Tokyo",utcOffset:540,offsetStr:"+09:00",countries:["JP"]},{name:"Africa/Nairobi",utcOffset:180,offsetStr:"+03:00",countries:["KE","DJ","ER","ET","KM","MG","SO","TZ","UG","YT"]},{name:"Asia/Bishkek",utcOffset:360,offsetStr:"+06:00",countries:["KG"]},{name:"Pacific/Tarawa",utcOffset:720,offsetStr:"+12:00",countries:["KI"]},{name:"Pacific/Enderbury",utcOffset:780,offsetStr:"+13:00",countries:["KI"]},{name:"Pacific/Kiritimati",utcOffset:840,offsetStr:"+14:00",countries:["KI"]},{name:"Asia/Pyongyang",utcOffset:510,offsetStr:"+08:30",countries:["KP"]},{name:"Asia/Seoul",utcOffset:540,offsetStr:"+09:00",countries:["KR"]},{name:"America/Cayman",utcOffset:-300,offsetStr:"-05:00",countries:["KY"]},{name:"Asia/Almaty",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},{name:"Asia/Qyzylorda",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},{name:"Asia/Aqtobe",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Aqtau",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Oral",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Beirut",utcOffset:120,offsetStr:"+02:00",countries:["LB"]},{name:"Asia/Colombo",utcOffset:330,offsetStr:"+05:30",countries:["LK"]},{name:"Africa/Monrovia",utcOffset:0,offsetStr:"+00:00",countries:["LR"]},{name:"Europe/Vilnius",utcOffset:120,offsetStr:"+02:00",countries:["LT"]},{name:"Europe/Luxembourg",utcOffset:60,offsetStr:"+01:00",countries:["LU"]},{name:"Europe/Riga",utcOffset:120,offsetStr:"+02:00",countries:["LV"]},{name:"Africa/Tripoli",utcOffset:120,offsetStr:"+02:00",countries:["LY"]},{name:"Africa/Casablanca",utcOffset:0,offsetStr:"+00:00",countries:["MA"]},{name:"Europe/Monaco",utcOffset:60,offsetStr:"+01:00",countries:["MC"]},{name:"Europe/Chisinau",utcOffset:120,offsetStr:"+02:00",countries:["MD"]},{name:"Pacific/Majuro",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},{name:"Pacific/Kwajalein",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},{name:"Asia/Rangoon",utcOffset:390,offsetStr:"+06:30",countries:["MM"]},{name:"Asia/Ulaanbaatar",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},{name:"Asia/Hovd",utcOffset:420,offsetStr:"+07:00",countries:["MN"]},{name:"Asia/Choibalsan",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},{name:"Asia/Macau",utcOffset:480,offsetStr:"+08:00",countries:["MO"]},{name:"America/Martinique",utcOffset:-240,offsetStr:"-04:00",countries:["MQ"]},{name:"Europe/Malta",utcOffset:60,offsetStr:"+01:00",countries:["MT"]},{name:"Indian/Mauritius",utcOffset:240,offsetStr:"+04:00",countries:["MU"]},{name:"Indian/Maldives",utcOffset:300,offsetStr:"+05:00",countries:["MV"]},{name:"America/Mexico_City",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Cancun",utcOffset:-300,offsetStr:"-05:00",countries:["MX"]},{name:"America/Merida",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Monterrey",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Matamoros",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Mazatlan",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Chihuahua",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Ojinaga",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Hermosillo",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Tijuana",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},{name:"America/Santa_Isabel",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},{name:"America/Bahia_Banderas",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"Asia/Kuala_Lumpur",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},{name:"Asia/Kuching",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},{name:"Africa/Maputo",utcOffset:120,offsetStr:"+02:00",countries:["MZ","BI","BW","CD","MW","RW","ZM","ZW"]},{name:"Africa/Windhoek",utcOffset:120,offsetStr:"+02:00",countries:["NA"]},{name:"Pacific/Noumea",utcOffset:660,offsetStr:"+11:00",countries:["NC"]},{name:"Pacific/Norfolk",utcOffset:660,offsetStr:"+11:00",countries:["NF"]},{name:"Africa/Lagos",utcOffset:60,offsetStr:"+01:00",countries:["NG","AO","BJ","CD","CF","CG","CM","GA","GQ","NE"]},{name:"America/Managua",utcOffset:-360,offsetStr:"-06:00",countries:["NI"]},{name:"Europe/Amsterdam",utcOffset:60,offsetStr:"+01:00",countries:["NL"]},{name:"Europe/Oslo",utcOffset:60,offsetStr:"+01:00",countries:["NO","SJ"]},{name:"Asia/Kathmandu",utcOffset:345,offsetStr:"+05:45",countries:["NP"]},{name:"Pacific/Nauru",utcOffset:720,offsetStr:"+12:00",countries:["NR"]},{name:"Pacific/Niue",utcOffset:-660,offsetStr:"-11:00",countries:["NU"]},{name:"Pacific/Auckland",utcOffset:780,offsetStr:"+13:00",countries:["NZ","AQ"]},{name:"Pacific/Chatham",utcOffset:825,offsetStr:"+13:45",countries:["NZ"]},{name:"America/Panama",utcOffset:-300,offsetStr:"-05:00",countries:["PA"]},{name:"America/Lima",utcOffset:-300,offsetStr:"-05:00",countries:["PE"]},{name:"Pacific/Tahiti",utcOffset:-600,offsetStr:"-10:00",countries:["PF"]},{name:"Pacific/Marquesas",utcOffset:-570,offsetStr:"-09:30",countries:["PF"]},{name:"Pacific/Gambier",utcOffset:-540,offsetStr:"-09:00",countries:["PF"]},{name:"Pacific/Port_Moresby",utcOffset:600,offsetStr:"+10:00",countries:["PG"]},{name:"Pacific/Bougainville",utcOffset:660,offsetStr:"+11:00",countries:["PG"]},{name:"Asia/Manila",utcOffset:480,offsetStr:"+08:00",countries:["PH"]},{name:"Asia/Karachi",utcOffset:300,offsetStr:"+05:00",countries:["PK"]},{name:"Europe/Warsaw",utcOffset:60,offsetStr:"+01:00",countries:["PL"]},{name:"America/Miquelon",utcOffset:-180,offsetStr:"-03:00",countries:["PM"]},{name:"Pacific/Pitcairn",utcOffset:-480,offsetStr:"-08:00",countries:["PN"]},{name:"America/Puerto_Rico",utcOffset:-240,offsetStr:"-04:00",countries:["PR"]},{name:"Asia/Gaza",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},{name:"Asia/Hebron",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},{name:"Europe/Lisbon",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},{name:"Atlantic/Madeira",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},{name:"Atlantic/Azores",utcOffset:-60,offsetStr:"-01:00",countries:["PT"]},{name:"Pacific/Palau",utcOffset:540,offsetStr:"+09:00",countries:["PW"]},{name:"America/Asuncion",utcOffset:-180,offsetStr:"-03:00",countries:["PY"]},{name:"Asia/Qatar",utcOffset:180,offsetStr:"+03:00",countries:["QA","BH"]},{name:"Indian/Reunion",utcOffset:240,offsetStr:"+04:00",countries:["RE","TF"]},{name:"Europe/Bucharest",utcOffset:120,offsetStr:"+02:00",countries:["RO"]},{name:"Europe/Belgrade",utcOffset:60,offsetStr:"+01:00",countries:["RS","BA","HR","ME","MK","SI"]},{name:"Europe/Kaliningrad",utcOffset:120,offsetStr:"+02:00",countries:["RU"]},{name:"Europe/Moscow",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Simferopol",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Volgograd",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Samara",utcOffset:240,offsetStr:"+04:00",countries:["RU"]},{name:"Asia/Yekaterinburg",utcOffset:300,offsetStr:"+05:00",countries:["RU"]},{name:"Asia/Omsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},{name:"Asia/Novosibirsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},{name:"Asia/Novokuznetsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},{name:"Asia/Krasnoyarsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},{name:"Asia/Irkutsk",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},{name:"Asia/Chita",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},{name:"Asia/Yakutsk",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},{name:"Asia/Khandyga",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},{name:"Asia/Vladivostok",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Sakhalin",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Ust-Nera",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Magadan",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Srednekolymsk",utcOffset:660,offsetStr:"+11:00",countries:["RU"]},{name:"Asia/Kamchatka",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},{name:"Asia/Anadyr",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},{name:"Asia/Riyadh",utcOffset:180,offsetStr:"+03:00",countries:["SA","KW","YE"]},{name:"Pacific/Guadalcanal",utcOffset:660,offsetStr:"+11:00",countries:["SB"]},{name:"Indian/Mahe",utcOffset:240,offsetStr:"+04:00",countries:["SC"]},{name:"Africa/Khartoum",utcOffset:180,offsetStr:"+03:00",countries:["SD","SS"]},{name:"Europe/Stockholm",utcOffset:60,offsetStr:"+01:00",countries:["SE"]},{name:"Asia/Singapore",utcOffset:480,offsetStr:"+08:00",countries:["SG"]},{name:"America/Paramaribo",utcOffset:-180,offsetStr:"-03:00",countries:["SR"]},{name:"America/El_Salvador",utcOffset:-360,offsetStr:"-06:00",countries:["SV"]},{name:"Asia/Damascus",utcOffset:120,offsetStr:"+02:00",countries:["SY"]},{name:"America/Grand_Turk",utcOffset:-240,offsetStr:"-04:00",countries:["TC"]},{name:"Africa/Ndjamena",utcOffset:60,offsetStr:"+01:00",countries:["TD"]},{name:"Indian/Kerguelen",utcOffset:300,offsetStr:"+05:00",countries:["TF"]},{name:"Asia/Bangkok",utcOffset:420,offsetStr:"+07:00",countries:["TH","KH","LA","VN"]},{name:"Asia/Dushanbe",utcOffset:300,offsetStr:"+05:00",countries:["TJ"]},{name:"Pacific/Fakaofo",utcOffset:780,offsetStr:"+13:00",countries:["TK"]},{name:"Asia/Dili",utcOffset:540,offsetStr:"+09:00",countries:["TL"]},{name:"Asia/Ashgabat",utcOffset:300,offsetStr:"+05:00",countries:["TM"]},{name:"Africa/Tunis",utcOffset:60,offsetStr:"+01:00",countries:["TN"]},{name:"Pacific/Tongatapu",utcOffset:780,offsetStr:"+13:00",countries:["TO"]},{name:"Europe/Istanbul",utcOffset:120,offsetStr:"+02:00",countries:["TR"]},{name:"America/Port_of_Spain",utcOffset:-240,offsetStr:"-04:00",countries:["TT","AG","AI","BL","DM","GD","GP","KN","LC","MF","MS","VC","VG","VI"]},{name:"Pacific/Funafuti",utcOffset:720,offsetStr:"+12:00",countries:["TV"]},{name:"Asia/Taipei",utcOffset:480,offsetStr:"+08:00",countries:["TW"]},{name:"Europe/Kiev",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Europe/Uzhgorod",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Europe/Zaporozhye",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Pacific/Wake",utcOffset:720,offsetStr:"+12:00",countries:["UM"]},{name:"America/New_York",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Detroit",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Kentucky/Louisville",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Kentucky/Monticello",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Indianapolis",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Vincennes",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Winamac",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Marengo",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Petersburg",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Vevay",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Chicago",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Indiana/Tell_City",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Indiana/Knox",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Menominee",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/Center",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/New_Salem",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/Beulah",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Denver",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Boise",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Phoenix",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Los_Angeles",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},{name:"America/Metlakatla",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},{name:"America/Anchorage",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Juneau",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Sitka",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Yakutat",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Nome",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Adak",utcOffset:-600,offsetStr:"-10:00",countries:["US"]},{name:"Pacific/Honolulu",utcOffset:-600,offsetStr:"-10:00",countries:["US","UM"]},{name:"America/Montevideo",utcOffset:-180,offsetStr:"-03:00",countries:["UY"]},{name:"Asia/Samarkand",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},{name:"Asia/Tashkent",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},{name:"America/Caracas",utcOffset:-270,offsetStr:"-04:30",countries:["VE"]},{name:"Asia/Ho_Chi_Minh",utcOffset:420,offsetStr:"+07:00",countries:["VN"]},{name:"Pacific/Efate",utcOffset:660,offsetStr:"+11:00",countries:["VU"]},{name:"Pacific/Wallis",utcOffset:720,offsetStr:"+12:00",countries:["WF"]},{name:"Pacific/Apia",utcOffset:840,offsetStr:"+14:00",countries:["WS"]},{name:"Africa/Johannesburg",utcOffset:120,offsetStr:"+02:00",countries:["ZA","LS","SZ"]}]}],templateUrl:"app/core/directives/ms-timezone/ms-timezone.html"}})}(),function(){"use strict";angular.module("app.core").controller("MsWidgetEngineCounterController",function(){var a=this;a.filter=[],a.filtered=!1,a.fontSize=20,a.getCount=function(e){var n=0;if(e){a.fontSize=e.attrs[2]&&e.attrs[2].value?parseInt(e.attrs[2].value)-parseInt(e.attrs[2].value)%2:20,e.attrs[1].value&&e.attrs[1].value.length?(a.filtered=!0,a.filter=_.intersection(e.voiceQueuesSelected,e.attrs[1].value)):(a.filtered=!1,a.filter=e.voiceQueuesSelected);for(var t=0;tr.properties.length){var n=r.multiBarChart.series.length-r.properties.length;r.multiBarChart.series.splice(0,n),r.multiBarChart.data.splice(0,n)}for(var t=0;tr.filter.length){var a=r.multiBarChart.labels.length-r.filter.length;r.multiBarChart.labels.splice(0,a),r.multiBarChart.data[t].splice(0,a)}for(var i=0,s=0;io.properties.length){var n=o.pieChart.labels.length-o.properties.length;o.pieChart.labels.splice(0,n),o.pieChart.data.splice(0,n)}for(var t=0,a=0;t]+>/gm,"")}}).filter("nospace",function(){return function(e){return e?e.replace(/ /g,""):""}}).filter("humanizeDoc",function(){return function(e){if(e)return"directive"===e.type?e.name.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()}):e.label||e.name}})}(),function(){"use strict";angular.module("app.core").filter("capitalize",function(){return function(e){return e?_.capitalize(e):""}})}(),function(){"use strict";angular.module("app.core").filter("filterByIds",function(){return function(e,n){if(0===e.length||!n)return e;if(0===n.length)return[];for(var t=[],a=0;an.openedAt?1:-1:1}),n}})}(),function(){"use strict";angular.module("app.core").filter("snakecase",function(){return function(e){return e?_.snakeCase(e):""}})}(),function(){"use strict";angular.module("app.core").filter("startcase",function(){return function(e){return e?_.startCase(e):""}})}(),function(){"use strict";angular.module("app.core").filter("filterByTags",function(){return function(e,t){if(0===e.length||0===t.length)return e;var a=[];return e.forEach(function(e){var n=t.every(function(n){var t=!1;return e.tags.forEach(function(e){e.name!==n.name||(t=!0)}),t});n&&a.push(e)}),a}}).filter("filterSingleByTags",function(){return function(e,n){if(0!==e.length&&0!==n.length){if(e.length')).html(i),s.append(o)})},rgba:l};function l(e,n){var t=n||!1;return 4===e.length&&255===e[0]&&255===e[1]&&255===e[2]&&e.splice(3,4),t&&(e=function(e,n){var t={white:{1:"1",2:"0.7",3:"0.3",4:"0.12"},black:{1:"0.87",2:"0.54",3:"0.26",4:"0.12"}};255===e[0]&&255===e[1]&&255===e[2]?e[3]=t.white[n]:0===e[0]&&0===e[1]&&0===e[2]&&(e[3]=t.black[n]);return e}(e,t)),3===e.length?"rgb("+e.join(",")+")":4===e.length?"rgba("+e.join(",")+")":void a.error("Invalid number of arguments supplied in the color array: "+e.length+"\nThe array must have 3 or 4 colors.")}function d(e){return e.charAt(0).toUpperCase()+e.slice(1)}}e.$inject=["$cookies","$log","motionTheming"],angular.module("app.core").factory("motionGenerator",e)}(),function(){"use strict";angular.module("app.core").constant("motionPalettes",[{name:"motion-blue",options:{50:"#ebf1fa",100:"#c2d4ef",200:"#9ab8e5",300:"#78a0dc",400:"#5688d3",500:"#3470ca",600:"#2e62b1",700:"#275498",800:"#21467e",900:"#1a3865",A100:"#c2d4ef",A200:"#9ab8e5",A400:"#5688d3",A700:"#275498",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400"}},{name:"motion-paleblue",options:{50:"#ececee",100:"#c5c6cb",200:"#9ea1a9",300:"#7d818c",400:"#5c616f",500:"#3c4252",600:"#353a48",700:"#2d323e",800:"#262933",900:"#1e2129",A100:"#c5c6cb",A200:"#9ea1a9",A400:"#5c616f",A700:"#2d323e",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400"}}])}(),function(){"use strict";angular.module("app.core").constant("motionThemes",{default:{primary:{name:"motion-paleblue",hues:{default:"700","hue-1":"500","hue-2":"600","hue-3":"400"}},accent:{name:"light-blue",hues:{default:"600","hue-1":"400","hue-2":"700","hue-3":"A100"}},warn:{name:"red"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}},pinkTheme:{primary:{name:"blue-grey",hues:{default:"800","hue-1":"600","hue-2":"400","hue-3":"A100"}},accent:{name:"pink",hues:{default:"400","hue-1":"300","hue-2":"600","hue-3":"A100"}},warn:{name:"blue"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}},tealTheme:{primary:{name:"motion-blue",hues:{default:"900","hue-1":"600","hue-2":"500","hue-3":"A100"}},accent:{name:"teal",hues:{default:"500","hue-1":"400","hue-2":"600","hue-3":"A100"}},warn:{name:"deep-orange"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}}})}(),function(){"use strict";function e(t,e,n){var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var i=a.getObject("motion.customTheme");i&&(n.custom=i),t.alwaysWatchTheme(!0),angular.forEach(e,function(e){t.definePalette(e.name,e.options)}),angular.forEach(n,function(e,n){t.theme(n).primaryPalette(e.primary.name,e.primary.hues).accentPalette(e.accent.name,e.accent.hues).warnPalette(e.warn.name,e.warn.hues).backgroundPalette(e.background.name,e.background.hues)})}e.$inject=["$mdThemingProvider","motionPalettes","motionThemes"],angular.module("app.core").config(e)}(),function(){"use strict";function e(n,t,e){var a={getRegisteredPalettes:function(){return e.PALETTES},getRegisteredThemes:function(){return e.THEMES},setActiveTheme:function(e){if(angular.isUndefined(a.themes.list[e]))return angular.isUndefined(a.themes.list.default)?void t.error('You must have at least one theme named "default"'):(t.warn('The theme "'+e+'" does not exist! Falling back to the "default" theme.'),a.themes.active.name="default",a.themes.active.theme=a.themes.list.default,void n.put("motion.selectedTheme",a.themes.active.name));a.themes.active.name=e,a.themes.active.theme=a.themes.list[e],n.put("motion.selectedTheme",e)},setThemesList:function(e){a.themes.list=e},themes:{list:{},active:{name:"",theme:{}}}};return a}e.$inject=["$cookies","$log","$mdTheming"],angular.module("app.core").service("motionTheming",e)}(),function(){"use strict";function e(n,s,o,r){this.search=function(n){for(var e=[],t=r.getFlatNavigation(),a=o.defer(),i=0;i"+(e.name||"extractedReport")+" will be deleted.").ariaLabel("delete extractedReport").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getExtractedReports=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.analyticExtractedReport.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ExtractedReports",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditExtractedReport=function(e,n){i.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{extractedReport:n,extractedReports:f.extractedReports.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteExtractedReport=y,f.exportSelectedExtractedReports=function(){var e=angular.copy(f.selectedExtractedReports);return f.selectedExtractedReports=[],e},f.deleteSelectedExtractedReports=function(e){var n=i.confirm().title("Are you sure want to delete the selected extractedReports?").htmlContent(""+f.selectedExtractedReports.length+" selected will be deleted.").ariaLabel("delete ExtractedReports").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedExtractedReports.forEach(function(e){y(e)}),f.selectedExtractedReports=[]})},f.deselectExtractedReports=function(){f.selectedExtractedReports=[]},f.selectAllExtractedReports=function(){f.selectedExtractedReports=f.extractedReports.rows};var b=!0,A=1;function E(e){f.extractedReports=e||{count:0,rows:[]}}function y(e){m.analyticExtractedReport.delete({id:e.id}).$promise.then(function(){_.remove(f.extractedReports.rows,{id:e.id}),f.extractedReports.count-=1,f.extractedReports.rows.length||f.getExtractedReports(),p.success({title:_.startCase("ExtractedReport")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEanalyticExtractedReport"}];for(var n=0;n"+(e.name||"metric")+" will be deleted.").ariaLabel("delete metric").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getMetrics=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.analyticMetric.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="Metrics",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditMetric=function(e,n){i.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{metric:n,metrics:f.metrics.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteMetric=y,f.exportSelectedMetrics=function(){var e=angular.copy(f.selectedMetrics);return f.selectedMetrics=[],e},f.deleteSelectedMetrics=function(e){var n=i.confirm().title("Are you sure want to delete the selected metrics?").htmlContent(""+f.selectedMetrics.length+" selected will be deleted.").ariaLabel("delete Metrics").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedMetrics.forEach(function(e){y(e)}),f.selectedMetrics=[]})},f.deselectMetrics=function(){f.selectedMetrics=[]},f.selectAllMetrics=function(){f.selectedMetrics=f.metrics.rows};var b=!0,A=1;function E(e){f.metrics=e||{count:0,rows:[]}}function y(e){m.analyticMetric.delete({id:e.id}).$promise.then(function(){_.remove(f.metrics.rows,{id:e.id}),f.metrics.count-=1,f.metrics.rows.length||f.getMetrics(),p.success({title:_.startCase("Metric")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEanalyticMetric"}];for(var n=0;n"+e.field+" will be deleted.").ariaLabel("delete field").targetEvent(n).ok("OK").cancel("CANCEL");a.show(t).then(function(){p(e)},function(){console.log("CANCEL")})},c.success=u,c.getReportFields=function(){c.promise=o.analyticFieldReport.get(c.query,u).$promise},c.createOrEditReportField=function(e,n){a.show({controller:"CreateOrEditReportFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/edit/field/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:c.report,reportField:n,reportFields:c.reportFields.rows,metrics:c.metrics,columns:c.columns,setting:null,crudPermissions:c.crudPermissions}})},c.deleteReportField=p,c.deleteSelectedReportFields=function(e){var n=a.confirm().title("Are you sure want to delete the selected fields?").htmlContent(""+c.selectedReportFields.length+" selected will be deleted.").ariaLabel("delete fields").targetEvent(e).ok("OK").cancel("CANCEL");a.show(n).then(function(){c.selectedReportFields.forEach(function(e){p(e)}),c.selectedReportFields=[]})},c.getMetricName=function(e){var n=_.find(c.metrics,{id:e});return n?n.name:d.instant("ANALYTICS.NO_METRIC_FOUND")},c.getMetricValue=function(e){var n=_.find(c.metrics,{id:e});return n?n.metric:d.instant("ANALYTICS.NO_METRIC_FOUND")};var m=!0;function u(e){c.reportFields=e||{count:0,rows:[]}}function p(e){o.analyticFieldReport.delete({id:e.id}).$promise.then(function(){c.selectedReportFields=[],_.remove(c.reportFields.rows,{id:e.id}),c.reportFields.count-=1,c.reportFields.rows.length||c.getReportFields(),s.success({title:"Field deleted!",msg:e.field?e.field+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}n.$watch("vm_rf.query.filter",function(e,n){m?t(function(){m=!1}):c.getReportFields()})}e.$inject=["$cookies","$scope","$timeout","$mdDialog","$document","toasty","api","describeTable","sqlUtil","$translate"],angular.module("app.analytics").controller("ReportFieldsController",e)}(),function(){"use strict";angular.module("app.analytics").factory("sqlUtil",function(){return{getFunctions:[{value:"SUM",option:function(e){return"SUM ("+e+")"}},{value:"COUNT",option:function(e){return"COUNT ("+e+")"}},{value:"COUNT DISTINCT",option:function(e){return"COUNT (DISTINCT "+e+")"}},{value:"MAX",option:function(e){return"MAX ("+e+")"}},{value:"MIN",option:function(e){return"MIN ("+e+")"}},{value:"AVG",option:function(e){return"AVG ("+e+")"}},{value:"GROUP_CONCAT",option:function(e){return"GROUP_CONCAT ("+e+")"}},{value:"GROUP_CONCAT ASC",option:function(e){return"GROUP_CONCAT ("+e+" ORDER BY "+e+" ASC)"}},{value:"GROUP_CONCAT DESC",option:function(e){return"GROUP_CONCAT ("+e+" ORDER BY "+e+" DESC)"}}],getFormats:[{value:"SEC_TO_TIME",option:function(e){return"SEC_TO_TIME ("+e+")"}},{value:"DATE",option:function(e){return"DATE ("+e+")"}},{value:"HOUR",option:function(e){return"HOUR ("+e+")"}},{value:"ROUND",option:function(e){return"ROUND ("+e+")"}},{value:"UNIX_TIMESTAMP",option:function(e){return"UNIX_TIMESTAMP ("+e+")"}}],getGroupBy:[{value:!1,option:function(){return"No"}},{value:!0,option:function(e){return"GROUP BY "+e}}],getOrderBy:[{value:"ASC",option:function(e){return"ORDER BY "+e+" ASC"}},{value:"DESC",option:function(e){return"ORDER BY "+e+" DESC"}}],getConditions:["=","!=","<","<=",">",">=","LIKE","NOT LIKE","IS NULL","IS NOT NULL","IS EMPTY","IS NOT EMPTY"]}})}(),function(){"use strict";function e(e,n,t,a,i,s){var o=this;function r(e){return _.isArray(e)}o.report=a||{},o.userProfileSection=s&&1==s.count?s.rows[0]:null,o.crudPermissions=i.parseCrudPermissions(o.userProfileSection?o.userProfileSection.crudPermissions:null),o.selectedTab=e.params.tab||0,o.gotoReports=function(){e.go("app.analytics.reports",{},{reload:"app.analytics.reports"})},o.saveReport=function(){o.report.conditions=angular.toJson(o.report.condition),t.analyticCustomReport.update({id:o.report.id},_.omit(o.report,"joins")).$promise.then(function(){n.success({title:"Report updated!",msg:o.report.name?o.report.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETreport",msg:e.data?JSON.stringify(e.data):e.toString()})})},o.previewReport=function(){o.columns=[],o.rows=[],o.error=!1,t.analyticFieldReport.get({fields:"field,alias",nolimit:!0,CustomReportId:o.report.id}).$promise.then(function(e){return o.columns=e?e.rows:[],t.analyticCustomReport.preview({id:o.report.id}).$promise}).then(function(e){o.rows=e}).catch(function(e){console.log(e),o.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},n.error(o.error)})},o.queryReport=function(){return o.queryResult="Loading...",t.analyticCustomReport.query({id:o.report.id}).$promise.then(function(e){o.queryResult=e.sql}).catch(function(e){o.queryResult="",console.log(e),o.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},n.error(o.error)})},o.mapArray=function(e,n){if(r(e))return _.map(e,n).join(",");return""},o.isArray=r,o.valueReplacer=function(e,n){moment(n,"YYYY-MM-DDTHH:mm:ssZ",!0).isValid()&&(n=moment(n,"").format("YYYY-MM-DD HH:mm:ss"));return n}}e.$inject=["$state","toasty","api","report","Auth","userProfileSection"],angular.module("app.analytics").controller("ReportController",e)}(),function(){"use strict";function e(e,n,t,a,i,s){var o=this;o.errors=[],o.report=angular.copy(a),o.valueReplacer=function(e,n){moment(n,"YYYY-MM-DDTHH:mm:ssZ",!0).isValid()&&(n=moment(n,"").format("YYYY-MM-DD HH:mm:ss"));return n},o.closeDialog=function(){n.hide()},function(){o.columns=[],o.rows=[],o.error=!1;var e={fields:"field,alias",nolimit:!0};e["analyticCustomReport"===s?"CustomReportId":"DefaultReportId"]=o.report.id,o.promise=i.analyticFieldReport.get(e).$promise.then(function(e){return o.columns=e?e.rows:[],i[s].preview({id:o.report.id}).$promise}).then(function(e){o.rows=e}).catch(function(e){console.log(e),o.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},t.error(o.error)})}()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("PreviewReportDialogController",e)}(),function(){"use strict";function e(e,t,a,i,s,o,n,r,l,d,c,m,u){var p=this;p.currentUser=u.getCurrentUser(),p.reports={count:0,rows:[]},p.userProfile=r,p.userProfileSection=l&&1==l.count?l.rows[0]:null,p.crudPermissions=u.parseCrudPermissions(p.userProfileSection?p.userProfileSection.crudPermissions:null),p.selectedReports=[],p.query={fields:"createdAt,updatedAt,id,name,description,table,parent,conditions,joins",limit:10,page:1,sort:"-updatedAt"},p.apiName=null,p.currentPath="",p.customTree=!0,p.editstate=function(e,n){s.go("app.analytics.reports.edit",{id:e.id,crudPermissions:p.crudPermissions})},p.copydialog=function(e,n){i.show({controller:"CopyReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/copy/dialog.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{report:e,apiName:p.apiName,treeCustomData:p.treeCustomInstance.jstree(!0).get_json("#")}}).finally(function(){})},p.previewdialog=function(e,n){i.show({controller:"PreviewReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/preview/dialog.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{report:e,apiName:p.apiName}})},p.rundialog=function(e,n){i.show({controller:"RunReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/dialog.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{report:e,apiName:p.apiName,currentPath:p.currentPath}})},p.downloadfile=function(a,e){var i;d.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise.then(function(e){i=_.keyBy(e.rows,"id");var n={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return n["analyticCustomReport"===p.apiName?"CustomReportId":"DefaultReportId"]=a.id,d.analyticFieldReport.get(n).$promise}).then(function(e){for(var n=0;n"+e.name+" will be deleted.").ariaLabel("delete report").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){b(e)},function(){console.log("CANCEL")})},p.success=h,p.getReports=f,p.createOrEditReport=function(e,n){i.show({controller:"CreateOrEditReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/create/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:n,reports:p.reports.rows,apiName:p.apiName,currentNode:p.currentNode,setting:null,crudPermissions:p.crudPermissions}})},p.importReport=function(e,n,t){if("application/json"===e.file.type){var a=new FileReader;a.onload=function(e){console.log(e.target.result);try{var t=atob(e.target.result.split(",")[1]);t=angular.fromJson(t),d.analyticCustomReport.save({name:t.name,description:t.description,table:t.table,conditions:t.conditions,joins:t.joins,parent:p.currentNode.id}).$promise.then(function(n){p.reports.rows.unshift(n),m.success({title:"Report saved!",msg:n.name?n.name+" has been saved!":""});var e=_.map(t.fields,function(e){return _.extend({},e,{CustomReportId:n.id})});return d.analyticFieldReport.bulkCreate(e).$promise}).then(function(e){m.success({title:"Fields saved!",msg:"Fields has been saved!"})}).catch(function(e){m.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}catch(e){console.error(e),m.error({title:"Decode File Error",msg:e.toString()})}},a.readAsDataURL(e.file)}else m.error({title:"Format Error",msg:"Please use only json files"})},p.deleteReport=b,p.exportSelectedReports=function(){var e=angular.copy(p.selectedReports);return p.selectedReports=[],e},p.deleteSelectedReports=function(e){var n=i.confirm().title("Are you sure want to delete the selected reports?").htmlContent(""+p.selectedReports.length+" selected will be deleted.").ariaLabel("delete Reports").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){p.selectedReports.forEach(function(e){b(e)}),p.selectedReports=[]})},p.deselectReports=function(){p.selectedReports=[]},p.selectAllReports=function(){p.selectedReports=p.reports.rows},p.treeDefaultData=c.rows[0]?angular.fromJson(c.rows[0].tree):[],p.treeCustomData=c.rows[1]?angular.fromJson(c.rows[1].tree):[],p.treeDefaultConfig=S(!1),p.treeCustomConfig=S(!0),p.treeDefaultEvents=T(!1),p.treeCustomEvents=T(!0);var g=!0,v=1;function h(e){p.reports=e||{count:0,rows:[]}}function f(){if(p.query.offset=(p.query.page-1)*p.query.limit,p.apiName)if("admin"===p.currentUser.role||p.userProfileSection.autoAssociation)p.promise=d[p.apiName].get(p.query,h).$promise;else{var a=[];p.promise=d[p.apiName].get(p.query).$promise.then(function(e){return 0<(a=e&&e.rows?e.rows:[]).length?d.userProfileResource.get({sectionId:p.userProfileSection.id,type:"analyticDefaultReport"===p.apiName?"DefaultReports":"CustomReports"}).$promise.then(function(e){var n=e&&e.rows?e.rows:[];if(0"+(t.text?t.text:"Node")+" and its subnode will be deleted.").ariaLabel("delete node").ok("OK").cancel("CANCEL");i.show(e).then(function(){var e,n=p.treeCustomInstance.jstree(!0).get_parent(t);n=p.treeCustomInstance.jstree(!0).get_node(n),p.treeCustomInstance.jstree(!0).delete_node(t),e=[t.id].concat(t.children_d||[]),d.analyticCustomReport.get({parent:e.join(","),fields:"id,name"}).$promise.then(function(e){e&&e.rows&&e.rows.forEach(function(e){b(e)})}).catch(function(e){m.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEreportsByParents",msg:e.data?JSON.stringify(e.data):e.toString()})}),p.treeCustomInstance.jstree(!0).select_node(n)})}}}),e}}}}function T(e){return e?{create_node:y,rename_node:y,move_node:y,delete_node:y,select_node:A}:{select_node:E}}e.$watch("vm.query.filter",function(e,n){g?t(function(){g=!1}):(n||(v=p.query.page),e!==n&&(p.query.page=1),e||(p.query.page=v),p.getReports())}),e.$watch("vm.search",function(e,n){p.treeDefaultInstance&&p.treeDefaultInstance.jstree(!0).search(e),p.treeCustomInstance&&p.treeCustomInstance.jstree(!0).search(e)})}e.$inject=["$scope","$timeout","$document","$mdDialog","$state","$window","$translate","userProfile","userProfileSection","api","treeReports","toasty","Auth"],angular.module("app.analytics").controller("ReportsController",e)}(),function(){"use strict";function e(e,t,a,n,i,s,o,r){var l=this;function d(){l.export={id:l.report.id,name:l.report.name,startDate:new Date(moment().startOf("day")),endDate:new Date(moment().endOf("day")),output:"xlsx",fullPath:r?r+"/"+l.report.name:l.report.name}}function c(){t.hide()}l.errors=[],l.report=angular.copy(n),l.export={},l.runReport=function(n){l.errors=[],l.exportDate=_.assign({},l.export,{startDate:moment(l.export.startDate).format("YYYY-MM-DD HH:mm:ss"),endDate:moment(l.export.endDate).format("YYYY-MM-DD HH:mm:ss")}),i[s].run(l.exportDate).$promise.then(function(e){"web"===l.export.output?t.show({controller:"WebReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/web/dialog.html",parent:angular.element(o.body),targetEvent:n,skipHide:!0,locals:{apiName:s,exportDate:l.exportDate,results:e},resolve:{columns:["apiResolver",function(e){var n={fields:"field,alias",nolimit:!0};return n["analyticCustomReport"===s?"CustomReportId":"DefaultReportId"]=l.report.id,e.resolve("analyticFieldReport@get",n)}]}}):(a.success({title:"Report properly run!",msg:l.report.name?l.report.name+" has been run!":""}),c())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data.message):e.toString()})})},l.closeDialog=c,(l.refreshDate=d)()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName","$document","currentPath"],angular.module("app.analytics").controller("RunReportDialogController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o){var r=this;function l(e){r.results=e||{count:0,rows:[]}}r.errors=[],r.columns=a?a.rows:[],r.results=i||{rows:[],count:0},r.query={limit:10,page:1},r.closeDialog=function(){e.hide()},r.getResults=function(){o.offset=(r.query.page-1)*r.query.limit,o.limit=r.query.limit,r.promise=t[s].run(o,l).$promise},r.valueReplacer=function(e,n){moment(n,"YYYY-MM-DDTHH:mm:ssZ",!0).isValid()&&(n=moment(n,"").format("YYYY-MM-DD HH:mm:ss"));return n}}e.$inject=["$mdDialog","toasty","api","columns","results","apiName","exportDate"],angular.module("app.analytics").controller("WebReportDialogController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p){var g=this;function v(e){a.hide(e)}g.currentUser=c.getCurrentUser(),g.errors=[],g.setting=u,g.license=m,g.crudPermissions=p,g.hasModulePermissions={},g.passwordPattern=g.setting&&g.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",g.title="CALLYSQUARE.EDIT_ODBC",g.odbc=angular.copy(l),g.odbcs=r,g.newOdbc=!1,g.odbc||(g.odbc={},g.title="CALLYSQUARE.NEW_ODBC",g.newOdbc=!0),g.addNewOdbc=function(){g.errors=[],d.squareOdbc.save(g.odbc).$promise.then(function(e){g.odbcs.unshift(e.toJSON()),o.success({title:"Odbc properly created",msg:g.odbc.name?g.odbc.name+" has been created!":""}),v(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){g.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.save"}];for(var n=0;n"+(e.name||"odbc")+" will be deleted.").ariaLabel("delete odbc").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getODBC=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.squareOdbc.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ODBC",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditOdbc=function(e,n){i.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{odbc:n,odbcs:f.odbcs.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteOdbc=y,f.exportSelectedODBC=function(){var e=angular.copy(f.selectedODBC);return f.selectedODBC=[],e},f.deleteSelectedODBC=function(e){var n=i.confirm().title("Are you sure want to delete the selected odbcs?").htmlContent(""+f.selectedODBC.length+" selected will be deleted.").ariaLabel("delete Odbcs").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedODBC.forEach(function(e){y(e)}),f.selectedODBC=[]})},f.deselectODBC=function(){f.selectedODBC=[]},f.selectAllODBC=function(){f.selectedODBC=f.odbcs.rows};var b=!0,A=1;function E(e){f.odbcs=e||{count:0,rows:[]}}function y(e){m.squareOdbc.delete({id:e.id}).$promise.then(function(){_.remove(f.odbcs.rows,{id:e.id}),f.odbcs.count-=1,f.odbcs.rows.length||f.getODBC(),p.success({title:_.startCase("Odbc")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEsquareOdbc"}];for(var n=0;n"+e.name+" will be deleted.").ariaLabel("delete project").targetEvent(n).ok("OK").cancel("CANCEL");l.show(t).then(function(){f(e)},function(){console.log("CANCEL")})},p.success=h,p.getProjects=function(){p.query.offset=(p.query.page-1)*p.query.limit,u.hasRole("admin")?p.promise=o.squareProject.get(p.query,h).$promise:(p.query.id=p.userProfile.id,p.query.section="SquareProjects",p.promise=o.userProfile.getResources(p.query,h).$promise)},p.createOrEditProject=function(e,n){l.show({controller:"CreateOrEditSquareProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(d.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:n,projects:p.projects.rows,openFromEditor:null,setting:null,crudPermissions:p.crudPermissions}})},p.deleteProject=f,p.exportSelectedProjects=function(){var e=angular.copy(p.selectedProjects);return p.selectedProjects=[],e},p.deleteSelectedProjects=function(e){var n=l.confirm().title("Are you sure want to delete the selected projects?").htmlContent(""+p.selectedProjects.length+" selected will be deleted.").ariaLabel("delete Projects").targetEvent(e).ok("OK").cancel("CANCEL");l.show(n).then(function(){p.selectedProjects.forEach(function(e){f(e)}),p.selectedProjects=[]})},p.deselectProjects=function(){p.selectedProjects=[]},p.selectAllProjects=function(){p.selectedProjects=p.projects.rows};var g=!0,v=1;function h(e){p.projects=e||{count:0,rows:[]}}function f(e){o.squareProject.delete({id:e.id}).$promise.then(function(){_.remove(p.projects.rows,{id:e.id}),p.projects.count-=1,p.projects.rows.length||p.getProjects(),m.success({title:"Project deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.project.delete"}];for(var n=0;n"+(e.name||"squareRecording")+" will be deleted.").ariaLabel("delete squareRecording").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getSquareRecordings=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.squareRecording.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="SquareRecordings",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditSquareRecording=function(e,n){i.show({controller:"CreateOrEditSquareRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/squareRecordings/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{squareRecording:n,squareRecordings:f.squareRecordings.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteSquareRecording=y,f.exportSelectedSquareRecordings=function(){var e=angular.copy(f.selectedSquareRecordings);return f.selectedSquareRecordings=[],e},f.deleteSelectedSquareRecordings=function(e){var n=i.confirm().title("Are you sure want to delete the selected squareRecordings?").htmlContent(""+f.selectedSquareRecordings.length+" selected will be deleted.").ariaLabel("delete SquareRecordings").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedSquareRecordings.forEach(function(e){y(e)}),f.selectedSquareRecordings=[]})},f.deselectSquareRecordings=function(){f.selectedSquareRecordings=[]},f.selectAllSquareRecordings=function(){f.selectedSquareRecordings=f.squareRecordings.rows};var b=!0,A=1;function E(e){f.squareRecordings=e||{count:0,rows:[]}}function y(e){m.squareRecording.delete({id:e.id}).$promise.then(function(){_.remove(f.squareRecordings.rows,{id:e.id}),f.squareRecordings.count-=1,f.squareRecordings.rows.length||f.getSquareRecordings(),p.success({title:_.startCase("SquareRecording")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEsquareRecording"}];for(var n=0;n"+(e.name||"chatQueue")+" will be deleted.").ariaLabel("delete chatQueue").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.gotorealtimegoto=function(e,n){{if(!g.hasRole("admin"))return m.userProfileSection.get({userProfileId:g.getCurrentUser().userProfileId,sectionId:510}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;n&&n.enabled?t.go("app.chat.realtime.queues",{}):p.info({title:r.instant("STAFF.PERMISSIONS_UNAUTHORIZED_REDIRECT_TITLE"),msg:r.instant("STAFF.PERMISSIONS_UNAUTHORIZED_REDIRECT_MESSAGE")})}).catch(function(e){p.error({title:e.status?"API:"+e.status+" - "+e.statusText:"USERPROFILE:GET_SECTION",msg:e.status?JSON.stringify(e.data):e.toString()})});t.go("app.chat.realtime.queues",{})}},f.success=E,f.getChatQueues=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.chatQueue.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ChatQueues",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditChatQueue=function(e,n){i.show({controller:"CreateOrEditChatQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatQueue:n,chatQueues:f.chatQueues.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteChatQueue=y,f.exportSelectedChatQueues=function(){var e=angular.copy(f.selectedChatQueues);return f.selectedChatQueues=[],e},f.deleteSelectedChatQueues=function(e){var n=i.confirm().title("Are you sure want to delete the selected chatQueues?").htmlContent(""+f.selectedChatQueues.length+" selected will be deleted.").ariaLabel("delete ChatQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedChatQueues.forEach(function(e){y(e)}),f.selectedChatQueues=[]})},f.deselectChatQueues=function(){f.selectedChatQueues=[]},f.selectAllChatQueues=function(){f.selectedChatQueues=f.chatQueues.rows};var b=!0,A=1;function E(e){f.chatQueues=e||{count:0,rows:[]}}function y(e){m.chatQueue.delete({id:e.id}).$promise.then(function(){_.remove(f.chatQueues.rows,{id:e.id}),f.chatQueues.count-=1,f.chatQueues.rows.length||f.getChatQueues(),p.success({title:_.startCase("ChatQueue")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEchatQueue"}];for(var n=0;n":"",n}),c.startingSelectedItems=angular.copy(c.selectedItems),c.dualMultiselectOptions.selectedItems=c.selectedItems,c.dualMultiselectOptions.items=_.differenceBy(c.allowedItems,c.dualMultiselectOptions.selectedItems,"id"),t()}).catch(function(e){n(e)})})}c.currentUser=l.getCurrentUser(),c.chatQueue=n,c.crudPermissions=d,c.realtime=o,c.items=[],c.allowedItems=[],c.selectedItems=[],c.startingAllowedItems=[],c.startingSelectedItems=[],c.pendingChanges=!1,c.onInit=function(){return l.hasRole("admin")?m().catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})}):a(function(t,n){s.userProfileSection.get({userProfileId:c.currentUser.userProfileId,name:"Agents"}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;t(n)}).catch(function(e){n(e)})}).then(function(e){return c.section=e,m()}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})},c.saveAgents=function(){var e=_.differenceBy(c.startingSelectedItems,c.selectedItems,"id"),n=_.differenceBy(c.selectedItems,c.startingSelectedItems,"id");return(t=e,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.removeAgents({id:c.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})})).then(function(){return t=n,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.addAgents({id:c.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})});var t}).then(function(){c.pendingChanges=!1,c.startingAllowedItems=angular.copy(c.allowedItems),c.startingSelectedItems=angular.copy(c.selectedItems),i.success({title:"SUCCESS",msg:"Agents association has been updated!"})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:LISTS_ASSOCIATION",msg:e.status?JSON.stringify(e.data):e.toString()})});var t},c.closeDialog=function(){e.hide()},c.dualMultiselectOptions={readOnly:!c.crudPermissions.canEdit,items:[],selectedItems:[],showSelectAndDeselectAll:!0,orderBy:"name",line1:"fullname",line2:["name","internal"],line3:"",labelAll:r.instant("CHAT.ALL_AGENTS"),labelSelected:r.instant("CHAT.SELECTED_AGENTS"),transferCallback:function(e,n){var t=_.xorBy(c.startingSelectedItems,c.selectedItems,"id");c.pendingChanges=!_.isEmpty(t)}}}e.$inject=["$mdDialog","$q","toasty","api","chatQueue","chatQueues","realtime","$translate","Auth","crudPermissions"],angular.module("app.chat").controller("ChatQueueagentaddController",e)}(),function(){"use strict";function e(e,a,i,s,n,t,o,r){var l=this;function d(){return a(function(t,n){return a(function(n,t){return s.team.get({fields:"id,name",nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}).then(function(e){return l.items=e.rows?e.rows:[],o.hasRole("admin")?e:l.section?l.section.autoAssociation?e:a(function(n,t){return s.userProfileResource.get({sectionId:l.section.id,nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}):null}).then(function(e){var n=e&&e.rows?e.rows:[];return l.allowedItems=_.map(n,function(e){return _.find(l.items,{id:o.hasRole("admin")||l.section.autoAssociation?e.id:e.resourceId})}),l.items.forEach(function(e){var n=_.find(l.allowedItems,{id:e.id});o.hasRole("admin")?e.isValid=!0:e.isValid=void 0!==n}),a(function(n,t){return s.chatQueue.getTeams({id:l.chatQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})})}).then(function(e){var n=e&&e.rows?e.rows:[];l.selectedItems=_.map(n,function(e){return _.find(l.items,{id:e.id})}),l.startingSelectedItems=angular.copy(l.selectedItems),l.dualMultiselectOptions.selectedItems=l.selectedItems,l.dualMultiselectOptions.items=_.differenceBy(l.allowedItems,l.dualMultiselectOptions.selectedItems,"id"),t()}).catch(function(e){n(e)})})}l.currentUser=o.getCurrentUser(),l.chatQueue=n,l.crudPermissions=r,l.items=[],l.allowedItems=[],l.selectedItems=[],l.startingAllowedItems=[],l.startingSelectedItems=[],l.pendingChanges=!1,l.dualMultiselectOptions={readOnly:!l.crudPermissions.canEdit,allowedItems:[],selectedItems:[],showSelectAndDeselectAll:!0,orderBy:"name",line1:"name",line2:"",line3:"",labelAll:t.instant("CHAT.ALL_TEAMS"),labelSelected:t.instant("CHAT.SELECTED_TEAMS"),transferCallback:function(e,n){var t=_.xorBy(l.startingSelectedItems,l.selectedItems,"id");l.pendingChanges=!_.isEmpty(t)}},l.onInit=function(){return o.hasRole("admin")?d().catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_TEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})}):a(function(t,n){s.userProfileSection.get({userProfileId:l.currentUser.userProfileId,name:"Teams"}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;t(n)}).catch(function(e){n(e)})}).then(function(e){return l.section=e,d()}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_TEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})},l.saveTeams=function(){var e=_.differenceBy(l.startingSelectedItems,l.selectedItems,"id"),n=_.differenceBy(l.selectedItems,l.startingSelectedItems,"id");return(t=e,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.removeTeams({id:l.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})})).then(function(){return t=n,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.addTeams({id:l.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})});var t}).then(function(){l.pendingChanges=!1,l.startingAllowedItems=angular.copy(l.allowedItems),l.startingSelectedItems=angular.copy(l.selectedItems),i.success({title:"SUCCESS",msg:"Teams association has been updated!"})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:LISTS_ASSOCIATION",msg:e.status?JSON.stringify(e.data):e.toString()})});var t},l.closeDialog=function(){e.hide()}}e.$inject=["$mdDialog","$q","toasty","api","chatQueue","$translate","Auth","crudPermissions"],angular.module("app.chat").controller("ChatQueueteamaddController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m){var u=this;u.currentUser=d.getCurrentUser(),u.license=s,u.setting=o,u.passwordPattern=u.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",u.location=n.protocol()+"://"+n.host(),u.chatQueue=c||e.params.chatQueue||{},u.userProfileSection=m&&1==m.count?m.rows[0]:null,u.crudPermissions=d.parseCrudPermissions(u.userProfileSection?u.userProfileSection.crudPermissions:null),u.hasModulePermissions={},u.selectedTab=e.params.tab||0,u.teamadddialog=function(e,n){t.show({controller:"ChatQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:u.chatQueues?u.chatQueues.rows:[],crudPermissions:u.crudPermissions}})},u.agentadddialog=function(e,n){t.show({controller:"ChatQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/agentadd/agentadd.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:u.chatQueues?u.chatQueues.rows:[],crudPermissions:u.crudPermissions,realtime:!1}})},u.alert=l.info,u.gotoChatQueues=function(){e.go("app.chat.chatQueues",{},{reload:"app.chat.chatQueues"})},u.saveChatQueue=function(){r.chatQueue.update({id:u.chatQueue.id},u.chatQueue).$promise.then(function(){l.success({title:"ChatQueue updated!",msg:u.chatQueue.name?u.chatQueue.name+" has been updated!":""})}).catch(function(e){l.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}}e.$inject=["$state","$location","$mdDialog","$document","$translate","license","setting","api","toasty","Auth","chatQueue","userProfileSection"],angular.module("app.chat").controller("ChatQueueController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p,g,v,h){var f=this;f.license=v,f.setting=h,f.currentUser=g.getCurrentUser(),f.chatWebsites=l||{count:0,rows:[]},f.userProfile=d,f.userProfileSection=c&&1==c.count?c.rows[0]:null,f.crudPermissions=g.parseCrudPermissions(f.userProfileSection?f.userProfileSection.crudPermissions:null),f.table="chatWebsites",f.listOrder="",f.listOrderAsc=null,f.selectedChatWebsites=[],f.query={fields:"createdAt,updatedAt,id,token,agentIdentifier,customerAlias,messageFontSize,name,key,address,remote,ListId,fidelity,timeout,agentAlias,closingQuestion,formSubmitSuccessMessage,formSubmitFailureMessage,color,color_focus,color_button,textColor,backgroundColor,fontSize,header_shape,showAgentAvatar,showCustomerAvatar,alignment,verticalAlignment,messagesAlignment,defaultTitle,animation,defaultWhiteLabel,whiteLabel,defaultLogo,conditionAgreement,autoclose,enableUnmanagedNote,unmanagedMessage,skipUnmanaged,sendUnmanaged,enableCustomerWriting,waitingTitle,waitingMessage,closingMessage,noteTitle,placeholderMessage,skipMessageButton,enableRating,ratingType,ratingStarsNumber,enableFeedback,feedbackTitle,forwardTranscript,forwardTranscriptMessage,closingMessageButton,download_transcript,enableCustomerAttachment,enableSendButton,enableCustomerCheckmarks,systemAlias,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,name_title,username_placeholder,email_title,email_placeholder,header_online,hideWhenOffline,header_offline,start_chat_button,offline_chat_button,offlineMessageSubject,offlineMessageBody,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,onlineForm,offlineForm,mapKey,mapKeyOffline,forwardOffline,forwardOfflineAddress,IntervalId,timezone,waitForTheAssignedAgent,mandatoryDisposition,mandatoryDispositionPauseId,description,notificationSound,notificationShake,notificationTemplate,queueTransfer,queueTransferTimeout,agentTransfer,agentTransferTimeout,vidaooEscalation,vidaooApiKey",sort:"-updatedAt",limit:10,page:1},f.arrayagentIdentifier=_.keyBy([{option:"WebsiteAlias",value:"'website_alias'"},{option:"AgentAlias",value:"'agent_alias'"},{option:"AgentFullname",value:"'agent_fullname'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arrayheader_shape=_.keyBy([{option:"Rounded",value:"'rounded'"},{option:"Squared",value:"'squared'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arrayalignment=_.keyBy([{option:"bottom_right",value:"'bottom_right'"},{option:"right",value:"'right'"},{option:"left",value:"'left'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arraymessagesAlignment=_.keyBy([{option:"alternate",value:"'alternate'"},{option:"centered",value:"'centered'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arrayratingType=_.keyBy([{option:"Star",value:"'star'"},{option:"Thumb",value:"'thumb'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.editstate=function(e,n){t.go("app.chat.chatWebsites.edit",{id:e.id,chatWebsite:e,crudPermissions:f.crudPermissions})},f.interactionsgoto=function(e,n){t.go("app.chat.chatWebsites.edit",{id:e.id,tab:10})},f.offlinemessagesgoto=function(e,n){t.go("app.chat.chatWebsites.edit",{id:e.id,tab:11})},f.agentadddialog=function(e,n){i.show({controller:"ChatWebsiteagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/agentadd/agentadd.html",parent:angular.element(s.body),targetEvent:n,clickOutsideToClose:!0,locals:{chatWebsite:e,chatWebsites:f.chatWebsites?f.chatWebsites.rows:[],crudPermissions:f.crudPermissions,realtime:!1}})},f.deleteconfirm=function(e,n){var t=i.confirm().title("Are you sure want to delete the "+_.startCase("chatWebsite")+"?").htmlContent(""+(e.name||"chatWebsite")+" will be deleted.").ariaLabel("delete chatWebsite").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getChatWebsites=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.chatWebsite.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ChatWebsites",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditChatWebsite=function(e,n){i.show({controller:"CreateOrEditChatWebsiteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:n,chatWebsites:f.chatWebsites.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteChatWebsite=y,f.exportSelectedChatWebsites=function(){var e=angular.copy(f.selectedChatWebsites);return f.selectedChatWebsites=[],e},f.deleteSelectedChatWebsites=function(e){var n=i.confirm().title("Are you sure want to delete the selected chatWebsites?").htmlContent(""+f.selectedChatWebsites.length+" selected will be deleted.").ariaLabel("delete ChatWebsites").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedChatWebsites.forEach(function(e){y(e)}),f.selectedChatWebsites=[]})},f.deselectChatWebsites=function(){f.selectedChatWebsites=[]},f.selectAllChatWebsites=function(){f.selectedChatWebsites=f.chatWebsites.rows},g.hasRole("admin")?m.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){f.lists=e.rows||[]}).catch(function(e){p.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_LISTS",msg:e.data?JSON.stringify(e.data):e.toString()})}):m.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){f.lists=e.rows||[]}).then(function(){return m.userProfileSection.get({userProfileId:f.currentUser.userProfileId,sectionId:301}).$promise}).then(function(e){var n=e&&e.rows?e.rows[0]:null;if(n){if(!n.autoAssociation)return m.userProfileResource.get({sectionId:n.id}).$promise.then(function(e){var n=_.map(e.rows,function(e){return _.find(f.lists,{id:e.resourceId})}),t=null;if(f.chatWebsite&&(t=_.find(f.lists,{id:Number(f.chatWebsite.ListId)})),t&&!_.some(n,["id",t.id])){var a=_.find(f.lists,{id:t.id});a.canSelect=!1,n.push(a)}f.lists=n})}else{var t=[],a=null;f.chatWebsite&&(a=_.find(f.lists,{id:Number(f.chatWebsite.ListId)}));for(var i=0;i"+e.app+" will be deleted.").ariaLabel("delete application").targetEvent(t).ok("OK").cancel("CANCEL");i.show(a).then(function(){r.chatWebsiteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})},r.getChatWebsiteApps=function(){r.promise=o.chatWebsite.getApplications(r.query,t).$promise},r.editChatWebsiteApp=n,r.editInterval=function(e,n){if(r.chatWebsiteApps.rows.length){var t=r.chatWebsiteApps.rows[n]?r.chatWebsiteApps.rows[n]:r.chatWebsiteApps.rows[0];i.show({controller:"EditChatWebsiteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/apps/interval/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:t.interval,IntervalId:t.IntervalId,application:!0},intervals:[],crudPermissions:r.crudPermissions}}).then(function(e){e&&(t.interval=e.interval||"*,*,*,*",t.IntervalId=e.IntervalId||null,l())})}},r.deleteChatWebsiteApp=function(e){_.remove(r.chatWebsiteApps.rows,{id:e.id}),l(),s.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})},r.deleteSelectedChatWebsiteApps=function(e){var n=i.confirm().title("Are you sure want to delete the selected applications?").htmlContent(""+r.selectedChatWebsiteApps.length+" selected will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){r.selectedChatWebsiteApps.forEach(function(e){_.remove(r.chatWebsiteApps.rows,{id:e.id})}),r.selectedChatWebsiteApps=[],l()})},r.rewriteRouting=l,r.getIntervals=function(){return o.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){r.intervals=e}).catch(function(e){console.error(e)})}}e.$inject=["api","$mdDialog","$document","toasty","Auth"],angular.module("app.chat").controller("ChatWebsiteActionsController",e)}(),function(){"use strict";function e(e,a,i,s,n,t,o,r,l,d){var c=this;function m(){return a(function(t,n){return a(function(n,t){return s.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}).then(function(e){return c.items=e.rows?e.rows:[],l.hasRole("admin")?e:c.section?c.section.autoAssociation?e:a(function(n,t){return s.userProfileResource.get({sectionId:c.section.id,nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}):null}).then(function(e){var n=e&&e.rows?e.rows:[];return c.allowedItems=_.map(n,function(e){return _.find(c.items,{id:l.hasRole("admin")||c.section.autoAssociation?e.id:e.resourceId})}),c.startingAllowedItems=angular.copy(c.allowedItems),c.items.forEach(function(e){var n=_.find(c.allowedItems,{id:e.id});l.hasRole("admin")?e.isValid=!0:e.isValid=void 0!==n}),a(function(n,t){return s.chatWebsite.getAgents({id:c.chatWebsite.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})})}).then(function(e){var n=e&&e.rows?e.rows:[];c.selectedItems=_.map(n,function(e){var n=_.find(c.items,{id:e.id});return n.penalty=e.UserChatWebsite?"penalty "+e.UserChatWebsite.penalty:"",n.internal=e.hasOwnProperty("internal")?"<"+e.internal+">":"",n}),c.startingSelectedItems=angular.copy(c.selectedItems),c.dualMultiselectOptions.selectedItems=c.selectedItems,c.dualMultiselectOptions.items=_.differenceBy(c.allowedItems,c.dualMultiselectOptions.selectedItems,"id"),t()}).catch(function(e){n(e)})})}c.currentUser=l.getCurrentUser(),c.chatWebsite=n,c.crudPermissions=d,c.realtime=o,c.items=[],c.allowedItems=[],c.selectedItems=[],c.startingAllowedItems=[],c.startingSelectedItems=[],c.pendingChanges=!1,c.onInit=function(){return l.hasRole("admin")?m().catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})}):a(function(t,n){s.userProfileSection.get({userProfileId:c.currentUser.userProfileId,name:"Agents"}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;t(n)}).catch(function(e){n(e)})}).then(function(e){return c.section=e,m()}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})},c.saveAgents=function(){var e=_.differenceBy(c.startingSelectedItems,c.selectedItems,"id"),n=_.differenceBy(c.selectedItems,c.startingSelectedItems,"id");return(t=e,a(function(e,n){_.isEmpty(t)?e():s.chatWebsite.removeAgents({id:c.chatWebsite.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})})).then(function(){return t=n,a(function(e,n){_.isEmpty(t)?e():s.chatWebsite.addAgents({id:c.chatWebsite.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})});var t}).then(function(){c.pendingChanges=!1,c.startingAllowedItems=angular.copy(c.allowedItems),c.startingSelectedItems=angular.copy(c.selectedItems),i.success({title:"SUCCESS",msg:"Agents association has been updated!"})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:LISTS_ASSOCIATION",msg:e.status?JSON.stringify(e.data):e.toString()})});var t},c.closeDialog=function(){e.hide()},c.dualMultiselectOptions={readOnly:!c.crudPermissions.canEdit,items:[],selectedItems:[],showSelectAndDeselectAll:!0,orderBy:"name",line1:"fullname",line2:["name","internal"],line3:"",labelAll:r.instant("CHAT.ALL_AGENTS"),labelSelected:r.instant("CHAT.SELECTED_AGENTS"),transferCallback:function(e,n){var t=_.xorBy(c.startingSelectedItems,c.selectedItems,"id");c.pendingChanges=!_.isEmpty(t)}}}e.$inject=["$mdDialog","$q","toasty","api","chatWebsite","chatWebsites","realtime","$translate","Auth","crudPermissions"],angular.module("app.chat").controller("ChatWebsiteagentaddController",e)}(),function(){"use strict";function e(e,a){var i=this;i.chatWebsite={},i.crudPermissions,i.ngFlowOptions={singleFile:!0,maxChunkRetries:1,chunkSize:8388608,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},i.ngFlow={flow:{}},i.dropping=!1,i.fileAdded=function(e){var n=["png","jpg"];if(!_.includes(n,e.getExtension()))return a.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported extension: "+n.join()}),!1;if(8388608"+(e.name||e.id&&_.upperFirst("chatCannedAnswer #")+e.id||"chatCannedAnswer")+" will be deleted.").ariaLabel("delete chatCannedAnswer").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.success=u,m.getChatWebsiteChatCannedAnswers=p,m.createOrEditChatWebsiteChatCannedAnswer=function(e,n){o.show({controller:"CreateOrEditChatCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/chatCannedAnswers/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:m.chatWebsite,chatCannedAnswer:n,chatCannedAnswers:m.chatWebsiteChatCannedAnswers.rows,license:null,setting:null,crudPermissions:m.crudPermissions}})},m.exportSelectedChatWebsiteChatCannedAnswers=function(){var e=angular.copy(m.selectedChatWebsiteChatCannedAnswers);return m.selectedChatWebsiteChatCannedAnswers=[],e},m.deleteChatWebsiteChatCannedAnswer=g,m.deleteSelectedChatWebsiteChatCannedAnswers=function(e){var n=o.confirm().title("Are you sure want to delete the selected chatCannedAnswers?").htmlContent(""+m.selectedChatWebsiteChatCannedAnswers.length+" selected will be deleted.").ariaLabel("delete chatCannedAnswers").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteChatCannedAnswers.forEach(function(e){g(e)}),m.selectedChatWebsiteChatCannedAnswers=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteChatCannedAnswersController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p){var g=this;function v(e){a.hide(e)}g.currentUser=c.getCurrentUser(),g.errors=[],g.setting=u,g.license=m,g.crudPermissions=p,g.hasModulePermissions={},g.passwordPattern=g.setting&&g.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",g.title="CHAT.EDIT_CHATCANNEDANSWER",g.chatCannedAnswer=angular.copy(l),g.chatCannedAnswers=r,g.newChatCannedAnswer=!1,g.chatCannedAnswer||(g.chatCannedAnswer={},g.title="CHAT.NEW_CHATCANNEDANSWER",g.newChatCannedAnswer=!0),n.params.id&&(g.chatCannedAnswer.ChatWebsiteId=n.params.id),g.addNewChatCannedAnswer=function(){g.errors=[],d.cannedAnswer.save(g.chatCannedAnswer).$promise.then(function(e){g.chatCannedAnswers.unshift(e.toJSON()),o.success({title:"ChatCannedAnswer properly created",msg:g.chatCannedAnswer.name?g.chatCannedAnswer.name+" has been created!":""}),v(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){g.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.save"}];for(var n=0;n":i.instant("DASHBOARDS.NOT_ASSIGNED")}m.currentUser=c.getCurrentUser(),m.chatWebsite={},m.chatWebsiteInteractions={count:0,rows:[]},m.selectedChatWebsiteInteractions=[],m.crudPermissions,m.query={read:"null",closed:"null",sort:"-createdAt",includeAll:"true",limit:10,page:1},m.init=function(e,n){m.chatWebsite=e,m.crudPermissions=void 0!==n?n:{readOnly:!0,canEdit:!1,canDelete:!1},m.query.ChatWebsiteId=m.chatWebsite.id,m.advancedSearch={fields:[{name:"Id",column:"id",type:"number"},{name:"Contact",column:"Contact",type:"autocomplete",options:{searchFields:["firstName","lastName","email"],route:{model:"cmContact",action:"get",params:{fields:"id,firstName,lastName,email",Contact:"@autocomplete",nolimit:!0}},extraOperators:["$substring"],excludedOperators:["$ne"]}},{name:"Body",column:"body",type:"text",options:{excludedOperators:["$eq","$ne"]}},{name:"Status",column:"closed",type:"select",values:[{id:0,translate:"DASHBOARDS.OPENED"},{id:1,translate:"DASHBOARDS.CLOSED"}],options:{excludedOperators:["$ne"]}},{name:"Customer Ip",column:"customerIp",type:"text",options:{excludedOperators:["$eq","$ne","$startsWith","$endsWith"]}},{name:"Agent",column:"User",type:"autocomplete",options:{table:"i",route:{model:"user",action:"get",params:{role:"agent",fields:"id,name,fullname",nolimit:!0}},searchFields:["fullname","name"],extraOperators:["$substring"],excludedOperators:["$ne"]}},{name:"Tags",column:"Tag",type:"multiselect",options:{route:{model:"tag",action:"get",params:{nolimit:!0}},excludedOperators:["$notIn"]}},{name:"Start Date",column:"createdAt",type:"date",options:{excludedOperators:["$ne"]}},{name:"Read",column:"unreadMessages",type:"select",values:[{id:1,translate:"DASHBOARDS.READ"},{id:0,translate:"DASHBOARDS.UNREAD"}],options:{excludedOperators:["$ne"]}}]},d.tag.get().$promise.then(function(e){m.tags=e||{count:0,rows:[]}}).then(function(){m.quickFilters=[{name:"Start Date",key:"createdAt",type:"date",label:"DASHBOARDS.SELECT_DATE"},{name:"Messages",key:"read",type:"select",label:"DASHBOARDS.SELECT_READ_UNREAD",customOptions:[{value:0,translate:"DASHBOARDS.UNREAD"},{value:1,translate:"DASHBOARDS.READ"},{value:null,translate:"DASHBOARDS.ALL"}]},{name:"Status",key:"closed",type:"select",label:"DASHBOARDS.SELECT_STATUS",customOptions:[{value:0,translate:"DASHBOARDS.OPENED"},{value:1,translate:"DASHBOARDS.CLOSED"},{value:null,translate:"DASHBOARDS.ALL"}]},{name:"Agent",key:"UserId",type:"select",label:"DASHBOARDS.SELECT_AGENT",customOptions:[{value:"null",translate:"DASHBOARDS.NOT_ASSIGNED"},{value:void 0,translate:"DASHBOARDS.ALL"}]},{name:"Tag",key:"tag",type:"multiselect",label:"DASHBOARDS.SELECT_TAG",options:m.tags.rows,placeholder:"DASHBOARDS.TAGS"}]})},m.deleteConfirm=function(e,n){var t=o.confirm().title("Are you sure want to delete the interaction?").htmlContent(""+(e.name||e.id&&_.upperFirst("interaction #")+e.id||"interaction")+" will be deleted.").ariaLabel("delete interaction").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.chatInteractionDownload=function(s,e,n){return d.chatInteraction.download({id:s.id,exists:!0,attachments:n}).$promise.then(function(e){var n=[e.buffer],t="interaction"+s.id,a=new Blob(n,{type:e.type});t="chat-interaction"+s.id+".zip";var i=window.document.createElement("a");i.setAttribute("href",URL.createObjectURL(a)),i.setAttribute("download",t),document.body.appendChild(i),i.click()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length)for(var n=0;n"+m.selectedChatWebsiteInteractions.length+" selected will be deleted.").ariaLabel("delete interactions").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteInteractions.forEach(function(e){g(e)}),m.selectedChatWebsiteInteractions=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteInteractionsController",e)}(),function(){"use strict";function e(e,a){var i=this;i.chatWebsite={},i.crudPermissions,i.ngFlowOptions={singleFile:!0,maxChunkRetries:1,chunkSize:8388608,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},i.ngFlow={flow:{}},i.dropping=!1,i.fileAdded=function(e){var n=["png","jpg"];if(!_.includes(n,e.getExtension()))return a.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported extension: "+n.join()}),!1;if(8388608"+(e.name||e.id&&_.upperFirst("offlineMessage #")+e.id||"offlineMessage")+" will be deleted.").ariaLabel("delete offlineMessage").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.success=u,m.getChatWebsiteOfflineMessages=p,m.createOrEditChatWebsiteOfflineMessage=function(e,n){o.show({controller:"CreateOrEditOfflineMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/offlineMessages/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:m.chatWebsite,offlineMessage:n,offlineMessages:m.chatWebsiteOfflineMessages.rows,license:null,setting:null,crudPermissions:m.crudPermissions}})},m.showOfflineMessageChatWebsiteOfflineMessage=function(e,t){o.show({controller:"ShowOfflineMessageOfflineMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/offlineMessages/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,resolve:{message:["apiResolver","$stateParams",function(e,n){return e.resolve("chatOfflineMessage@get",{fields:"id,body",id:t.id})}]}})},m.exportSelectedChatWebsiteOfflineMessages=function(){var e=angular.copy(m.selectedChatWebsiteOfflineMessages);return m.selectedChatWebsiteOfflineMessages=[],e},m.deleteChatWebsiteOfflineMessage=g,m.deleteSelectedChatWebsiteOfflineMessages=function(e){var n=o.confirm().title("Are you sure want to delete the selected offlineMessages?").htmlContent(""+m.selectedChatWebsiteOfflineMessages.length+" selected will be deleted.").ariaLabel("delete offlineMessages").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteOfflineMessages.forEach(function(e){g(e)}),m.selectedChatWebsiteOfflineMessages=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteOfflineMessagesController",e)}(),function(){"use strict";function e(n,e){this.title="CHAT.OFFLINE_MESSAGE",this.message=e,this.closeDialog=function(e){n.hide(e)}}e.$inject=["$mdDialog","message"],angular.module("app.chat").controller("ShowOfflineMessageOfflineMessageDialogController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c){var m=this;function u(e){m.chatWebsiteProactiveActions=e||{count:0,rows:[]}}function p(){m.query.offset=(m.query.page-1)*m.query.limit,m.promise=d.chatWebsite.getProactiveActions(m.query,u).$promise}function g(e){d.chatProactiveAction.delete({id:e.id}).$promise.then(function(){_.remove(m.chatWebsiteProactiveActions.rows,{id:e.id}),m.chatWebsiteProactiveActions.count-=1,m.chatWebsiteProactiveActions.rows.length||p(),l.success({title:"ChatProactiveAction deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){m.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var n=0;n"+(e.name||e.id&&_.upperFirst("chatProactiveAction #")+e.id||"chatProactiveAction")+" will be deleted.").ariaLabel("delete chatProactiveAction").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.success=u,m.getChatWebsiteProactiveActions=p,m.createOrEditChatWebsiteChatProactiveAction=function(e,n){o.show({controller:"CreateOrEditChatProactiveActionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/proactive/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:m.chatWebsite,chatProactiveAction:n,proactive:m.chatWebsiteProactiveActions.rows,license:null,setting:null,crudPermissions:m.crudPermissions}})},m.exportSelectedChatWebsiteProactiveActions=function(){var e=angular.copy(m.selectedChatWebsiteProactiveActions);return m.selectedChatWebsiteProactiveActions=[],e},m.deleteChatWebsiteChatProactiveAction=g,m.deleteSelectedChatWebsiteProactiveActions=function(e){var n=o.confirm().title("Are you sure want to delete the selected proactive?").htmlContent(""+m.selectedChatWebsiteProactiveActions.length+" selected will be deleted.").ariaLabel("delete proactive").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteProactiveActions.forEach(function(e){g(e)}),m.selectedChatWebsiteProactiveActions=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteProactiveActionsController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p){var g=this;function v(e){a.hide(e)}g.currentUser=c.getCurrentUser(),g.errors=[],g.setting=u,g.license=m,g.crudPermissions=p,g.hasModulePermissions={},g.passwordPattern=g.setting&&g.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",g.title="CHAT.EDIT_CHATPROACTIVEACTION",g.chatProactiveAction=angular.copy(l),g.proactive=r,g.newChatProactiveAction=!1,g.chatProactiveAction||(g.chatProactiveAction={type:"mouseOver"},g.title="CHAT.NEW_CHATPROACTIVEACTION",g.newChatProactiveAction=!0),n.params.id&&(g.chatProactiveAction.ChatWebsiteId=n.params.id),g.addNewChatProactiveAction=function(){g.errors=[],d.chatProactiveAction.save(g.chatProactiveAction).$promise.then(function(e){g.proactive.unshift(e.toJSON()),o.success({title:"ChatProactiveAction properly created",msg:g.chatProactiveAction.name?g.chatProactiveAction.name+" has been created!":""}),v(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){g.errors=e.data.errors||[{message:e.toString(),type:"api.chatProactiveAction.save"}];for(var n=0;n<\/script>',n.end="\n\x3c!-- START Motion Chat Script --\x3e"},n.info={},e.$watch("vm_ac.chatWebsite.remote",function(e){n.script='\n