diff --git a/src/api/call-forwarding.js b/src/api/call-forwarding.js
index c1feebbb..9dc960b4 100644
--- a/src/api/call-forwarding.js
+++ b/src/api/call-forwarding.js
@@ -41,14 +41,16 @@ export async function cfGetMostRecentDestinationSetByName (params) {
export async function cfLoadSourceSets (subscriberId) {
return getList({
resource: 'cfsourcesets',
- params: (subscriberId) ? { subscriber_id: subscriberId } : {}
+ params: (subscriberId) ? { subscriber_id: subscriberId } : {},
+ all: true
})
}
export async function cfLoadTimeSets (subscriberId) {
return getList({
resource: 'cftimesets',
- params: (subscriberId) ? { subscriber_id: subscriberId } : {}
+ params: (subscriberId) ? { subscriber_id: subscriberId } : {},
+ all: true
})
}
diff --git a/src/components/call-forwarding/CscCfConditionPopupCustom.vue b/src/components/call-forwarding/CscCfConditionPopupCustom.vue
new file mode 100644
index 00000000..71e4d956
--- /dev/null
+++ b/src/components/call-forwarding/CscCfConditionPopupCustom.vue
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
diff --git a/src/components/call-forwarding/CscCfGroupConditionCustom.vue b/src/components/call-forwarding/CscCfGroupConditionCustom.vue
new file mode 100644
index 00000000..eb24731e
--- /dev/null
+++ b/src/components/call-forwarding/CscCfGroupConditionCustom.vue
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+ {{ $t('Period') }}
+
+
+ {{ date.from }}
+
+
+ {{ date.to }}
+
+
+
+
+
+
+
+
diff --git a/src/components/call-forwarding/CscCfGroupConditionDate.vue b/src/components/call-forwarding/CscCfGroupConditionDate.vue
index 73796168..c31b78be 100644
--- a/src/components/call-forwarding/CscCfGroupConditionDate.vue
+++ b/src/components/call-forwarding/CscCfGroupConditionDate.vue
@@ -23,7 +23,7 @@
flat
color="negative"
icon="delete"
- @click="deleteSourceSetEvent"
+ @click="deleteTimeSetEvent"
/>
{
this.$wait.start(this.waitIdentifier)
if (this.destinationSet.destinations.length > 1) {
- await this.removeDestination(payload)
+ await this.triggerRemoveDestination(payload)
this.setAnnouncement()
} else {
this.$emit('delete-last', payload)
@@ -273,6 +273,13 @@ export default {
this.$wait.end(this.waitIdentifier)
})
},
+ async triggerRemoveDestination (payload) {
+ try {
+ await this.removeDestination(payload)
+ } catch (e) {
+ showGlobalError(e.message)
+ }
+ },
async updateDestinationTimeoutEvent (payload) {
this.$wait.start(this.waitIdentifier)
await this.updateDestinationTimeout(payload)
diff --git a/src/components/call-forwarding/CscCfGroupTitle.vue b/src/components/call-forwarding/CscCfGroupTitle.vue
index 50292d48..a19910d4 100644
--- a/src/components/call-forwarding/CscCfGroupTitle.vue
+++ b/src/components/call-forwarding/CscCfGroupTitle.vue
@@ -144,7 +144,6 @@
>
{{ $t('office hours are') }}
-
- {{ $filters.timeSetTimes(timeSet.times) }}
-
+
+
+ {{ $t('Custom time set') }}
+
+
+
{
+ const timeSetMap = createTimeSetMap(timeSet)
+
+ const from = formatTimeSetValues(timeSetMap, 'from')
+ const to = formatTimeSetValues(timeSetMap, 'to')
+
+ return {
+ from: formatTimeString(from),
+ to: formatTimeString(to)
+ }
+ })
+}
+
+function createTimeSetMap (timeSet) {
+ const timeSetMap = {
+ hour: { from: null, to: null },
+ mday: { from: null, to: null },
+ minute: { from: null, to: null },
+ month: { from: null, to: null },
+ wday: { from: null, to: null },
+ year: { from: null, to: null }
+ }
+
+ Object.keys(timeSet).forEach((key) => {
+ // 1. Case: not set
+ if (timeSet[key] === null) {
+ timeSetMap[key] = { from: null, to: null }
+ // 2. Case: range
+ } else if (timeSet[key].includes('-')) {
+ const [from, to] = timeSet[key].split('-')
+ timeSetMap[key] = { from, to }
+ // 3. Case: single value
+ } else {
+ timeSetMap[key] = { from: timeSet[key], to: null }
+ }
+ })
+
+ return timeSetMap
+}
+
+function formatTimeSetValues (timeSetMap, type) {
+ const defaultTime = '00'
+ const defaultDay = 'DD'
+ const defaultMonth = 'MM'
+ const defaultYear = 'YYYY'
+
+ return {
+ year: timeSetMap.year[type] || defaultYear,
+ month: getMonthNameByNumber(timeSetMap.month[type]) || defaultMonth,
+ wDay: getDayNameByNumber(timeSetMap.wday[type]) ? `${getDayNameByNumber(timeSetMap.wday[type])},` : '',
+ mDay: timeSetMap.mday[type] || defaultDay,
+ hour: formatTime(timeSetMap.hour[type]) || defaultTime,
+ minutes: formatTime(timeSetMap.minute[type]) || defaultTime
+ }
+}
+
+function formatTimeString (timeSetValues) {
+ return `${timeSetValues.mDay} ${timeSetValues.month} ${timeSetValues.year}, ${timeSetValues.wDay} ${timeSetValues.hour}:${timeSetValues.minutes}`
+}
+
+function formatTime (time) {
+ return (time !== null && time < 10) ? `0${time}` : time
}
diff --git a/src/helpers/kamailio-timesets-converter.js b/src/helpers/kamailio-timesets-converter.js
index 75836c54..75e6fea8 100644
--- a/src/helpers/kamailio-timesets-converter.js
+++ b/src/helpers/kamailio-timesets-converter.js
@@ -1,4 +1,5 @@
-
+// ---- 1. Implementation for Times ranges and day of the week ----
+// ------------------------------------------
/*
humanReadableTimeset = [{
weekday: 1..7,
@@ -72,7 +73,7 @@ export function validateHumanTimesets (hTimeset) {
/**
* Function resort timesets by "weekday" and "from" and combines closest timesets or duplicates
- * Important! Before use this function please validate you timeses for correctness.
+ * Important! Before use this function please validate you timesets for correctness.
* @param hTimeset {humanReadableTimeset}
* @returns {humanReadableTimeset}
*/
@@ -289,7 +290,11 @@ export function validateKamailioRange (kamailioRangeStr = '', minValue, maxValue
}
}
}
-
+/**
+ * Validates Kamailio Timesets with day of week to human readable format
+ * @param kTimeset {Array} - Kamailio timeset with day of the week, hour and minute
+ * throws {Error} - if the Kamailio timeset has invalid format
+ */
export function validateKamailioTimesets (kTimeset) {
kTimeset.forEach(timesetItem => {
let { wday, hour, minute } = timesetItem
@@ -318,11 +323,16 @@ export function validateKamailioTimesets (kTimeset) {
})
}
+/**
+* Converts Kamailio timeset with day of week to human readable format
+* @param kTimeset {Array} - Kamailio timeset with day of the week, hour and minute
+* retuns {Array} - human readable timeset with weekday, from and to
+*/
export function kamailioTimesetToHuman (kTimeset = []) {
validateKamailioTimesets(kTimeset)
- // convert Kamailio timeset into Human readable format
- const hTimesetRaw = kTimeset.map(timesetItem => {
+ // convert Kamailio timeset into human readable format
+ const hTimesetRaw = kTimeset.map((timesetItem) => {
let { wday, hour, minute } = timesetItem
hour = getAsTrimmedString(hour)
minute = getAsTrimmedString(minute)
@@ -378,7 +388,7 @@ export function kamailioTimesetToHuman (kTimeset = []) {
return res
}
-// ---- implementation for date ranges ----
+// ---- 2. Implementation for date ranges ----
// ------------------------------------------
/*
@@ -672,7 +682,11 @@ export function humanDatesetToKamailio (hDateset = []) {
return kamailioDateset
}
-
+/**
+ * Validates Kamailio Datesets Ranges (Year, Month, Day)
+ * @param kDateset {Array} - Kamailio Dateset (Year, Month, Day)
+ * throws {Error} - if the Kamailio dateset has invalid format
+ */
export function validateKamailioDatesets (kDateset) {
kDateset.forEach(datesetItem => {
let { year, month, mday } = datesetItem
@@ -700,12 +714,16 @@ export function validateKamailioDatesets (kDateset) {
})
})
}
-
+/**
+* Converts Kamailio Dateset to human readable Date Range format
+* @param kDateset {Date} - Kamaillio Dateset with Year, Month and Day
+* retun {Array} - human readable data range with from and to year, month and day.
+*/
export function kamailioDatesetToHuman (kDateset = []) {
validateKamailioDatesets(kDateset)
- // convert Kamailio dateset into Human readable format
- const hDatesetRaw = kDateset.map(datesetItem => {
+ // convert Kamailio dateset into human readable format
+ const hDatesetRaw = kDateset.map((datesetItem) => {
let { year, month, mday } = datesetItem
year = getAsTrimmedString(year)
month = getAsTrimmedString(month)
diff --git a/src/i18n/de.json b/src/i18n/de.json
index a7c8b63d..7eaa9f4c 100644
--- a/src/i18n/de.json
+++ b/src/i18n/de.json
@@ -47,8 +47,10 @@
"An error occured while trying to unassign the speed dial slot. Please try again": "Kurzwahl-Eintrag konnte nicht geändert werden. Bitte erneut versuchen",
"Application": "Anwendung",
"Apps": "Apps",
+ "April": "April",
"Assigned slot {slot}": "Zugewiesene Kurzwahl {slot}",
"Attach voicemail to email notification": "Voicemail als Anhang in E-Mail-Benachrichtigung",
+ "August": "August",
"Auto Attendant": "Anrufmenü",
"Block Incoming": "Eingehende Anrufe blockieren",
"Block Incoming/Outgoing": "Ein-/Ausgehende Anrufe blockieren",
@@ -127,12 +129,15 @@
"Custom Announcement": "Benutzerdefinierte Ansage",
"Custom Announcements": "Individuelle Ansagen",
"Custom sound": "Benutzerdefinierter Sound",
+ "Custom time set": "Custom time set",
+ "Custom time sets": "Custom time sets",
"Customer Details": "Kunden-Details",
"Customer Phonebook": "Customer Phonebook",
"Daily": "Täglich",
"Dashboard": "Übersicht",
"Data is in the clipboard": "Daten wurden in die Zwischenablage kopiert",
"Data loading error": "Fehler beim Laden von Daten",
+ "December": "Dezember",
"Default": "Standard",
"Default sound": "Standard-Sound",
"Default sound set for all seats and groups": "Standard-Sound-Set für alle Nebenstellen und Gruppen",
@@ -176,6 +181,7 @@
"End time": "Endzeit",
"English": "Deutsch",
"Enter a number to dial": "Geben Sie eine Telefonnummer zum Anwählen an",
+ "Entity belongs to admin": "Diese Einheit gehört dem Admin",
"Expires": "Läuft aus",
"Extension": "Durchwahl",
"Extension Settings": "Erweiterungseinstellungen",
@@ -185,6 +191,7 @@
"Fax to mail and sendfax": "„Fax to Mail“ und „Sendfax“",
"Fax2Mail": "Fax2Mail",
"Faxes": "Faxe",
+ "February": "Februar",
"File": "Datei",
"File Type": "Dateityp",
"Filter": "Filtern",
@@ -251,8 +258,11 @@
"Input a valid phone number": "Geben Sie eine gültige Telefonnummer ein",
"Interval when the secret key is automatically renewed.": "Zeitraum, nach dem der Geheimschlüssel automatisch erneuert wird.",
"Italian": "Italienisch",
+ "January": "Januar",
"Join conference": "Konferenz beitreten",
"Join conference with name": "Konferenz beitreten mit Name",
+ "July": "Juli",
+ "June": "Juni",
"Lamp/Key": "Lampe/Taste",
"Lamps/Keys": "Lampen/Tasten",
"Language": "Sprache",
@@ -272,8 +282,10 @@
"Manager Secretary": "Geschäftsführungssekretariat",
"Manager Secretary feature": "Manager Sekretär Funktion",
"ManagerSecretary": "Geschäftsführungssekretariat",
+ "March": "März",
"Maximum allowed extension is {max}": "Die maximal zulässige Länge der Durchwahl ist {max}",
"Maximum calls in queue": "Maximale Anzahl an Anrufen in der Warteschlange",
+ "May": "Mai",
"Me": "Ich",
"Messages": "Nachrichten",
"Minimum allowed extension is {min}": "Die minimal zulässige Länge der Durchwahlnummer ist {min}",
@@ -327,10 +339,12 @@
"No speed dials found": "Keine Kurzwahl gefunden",
"Normal": "Normal",
"Not modified yet": "Bisher nicht geändert",
+ "November": "November",
"Number": "Nummer",
"Number list": "Nummernliste",
"Number list name": "Name der Nummernliste",
"Numbers": "Nummern",
+ "October": "Oktober",
"Office Hours Announcement": "Bürozeiten Ansage",
"On weekdays": "An Werktagen",
"Only incoming calls from listed numbers are allowed": "Es sind nur eingehende Anrufe von aufgelisteten Nummern erlaubt",
@@ -351,6 +365,7 @@
"Password confirm": "Passwort bestätigen",
"Password is not strong enough": "Passwort ist nicht sicher genug",
"Passwords must be equal": "Passwörter müssen übereinstimmen",
+ "Period": "Period",
"Phone model": "Telefonmodell",
"Phone number": "Rufnummer",
"Pilot": "Hauptteilnehmer",
@@ -448,6 +463,7 @@
"Send": "Senden",
"Send Fax": "Sende Fax",
"Sending fax completed successfully.": "Fax wurde erfolgreich gesendet.",
+ "September": "September",
"Serial Ringing": "Serielles Klingeln",
"Session expired, please login again": "Sitzung abgelaufen, bitte erneut anmelden",
"Set your Extension settings": "Legen Sie Ihre Erweiterungseinstellungen fest",
diff --git a/src/i18n/en.json b/src/i18n/en.json
index 3918a1cd..5a1e4cf8 100644
--- a/src/i18n/en.json
+++ b/src/i18n/en.json
@@ -45,8 +45,10 @@
"An error occured while trying to send the fax. Please try again": "An error occured while trying to send the fax. Please try again",
"An error occured while trying to unassign the speed dial slot. Please try again": "An error occured while trying to unassign the speed dial slot. Please try again",
"Apps": "Apps",
+ "April": "April",
"Assigned slot {slot}": "Assigned slot {slot}",
"Attach voicemail to email notification": "Attach voicemail to email notification",
+ "August": "August",
"Auto Attendant": "Auto Attendant",
"Block Incoming": "Block Incoming",
"Block Incoming/Outgoing": "Block Incoming/Outgoing",
@@ -118,11 +120,14 @@
"Custom Announcement": "Custom Announcement",
"Custom Announcements": "Custom Announcements",
"Custom sound": "Custom sound",
+ "Custom time set": "Custom time set",
+ "Custom time sets": "Custom time sets",
"Customer Details": "Customer Details",
"Daily": "Daily",
"Dashboard": "Dashboard",
"Data is in the clipboard": "Data is in the clipboard",
"Data loading error": "Data loading error",
+ "December": "December",
"Default": "Default",
"Default sound": "Default sound",
"Default sound set for all seats and groups": "Default sound set for all seats and groups",
@@ -162,6 +167,7 @@
"End time": "End time",
"English": "English",
"Enter a number to dial": "Enter a number to dial",
+ "Entity belongs to admin": "Entity belongs to admin",
"Expires": "Expires",
"Extension": "Extension",
"Extension Settings": "Extension Settings",
@@ -170,6 +176,7 @@
"Fax to mail and sendfax": "Fax to Mail and Sendfax",
"Fax2Mail": "Fax2Mail",
"Faxes": "Faxes",
+ "February": "February",
"File": "File",
"File Type": "File Type",
"Filter": "Filter",
@@ -233,6 +240,9 @@
"Input a valid phone number": "Input a valid phone number",
"Interval when the secret key is automatically renewed.": "Interval when the secret key is automatically renewed.",
"Italian": "Italian",
+ "January": "January",
+ "July": "July",
+ "June": "June",
"Lamp/Key": "Lamp/Key",
"Lamps/Keys": "Lamps/Keys",
"Language": "Language",
@@ -249,8 +259,10 @@
"Mail to Fax": "Mail to Fax",
"Manager Secretary": "Manager Secretary",
"Manager Secretary feature": "Manager Secretary feature",
+ "March": "March",
"Maximum allowed extension is {max}": "Maximum allowed extension is {max}",
"Maximum calls in queue": "Maximum calls in queue",
+ "May": "May",
"Me": "Me",
"Messages": "Messages",
"Minimum allowed extension is {min}": "Minimum allowed extension is {min}",
@@ -299,10 +311,12 @@
"No speed dials found": "No speed dials found",
"Normal": "Normal",
"Not modified yet": "Not modified yet",
+ "November": "November",
"Number": "Number",
"Number list": "Number list",
"Number list name": "Number list name",
"Numbers": "Numbers",
+ "October": "October",
"Office Hours Announcement": "Office Hours Announcement",
"On weekdays": "On weekdays",
"Only incoming calls from listed numbers are allowed": "Only incoming calls from listed numbers are allowed",
@@ -321,6 +335,7 @@
"Password confirm": "Password confirm",
"Password is not strong enough": "Password is not strong enough",
"Passwords must be equal": "Passwords must be equal",
+ "Period": "Period",
"Phone model": "Phone model",
"Phone number": "Phone number",
"Pilot": "Pilot",
@@ -412,6 +427,7 @@
"Send": "Send",
"Send Fax": "Send Fax",
"Sending fax completed successfully.": "Sending fax completed successfully.",
+ "September": "September",
"Serial Ringing": "Serial Ringing",
"Session expired, please login again": "Session expired, please login again",
"Set your Extension settings": "Set your Extension settings",
diff --git a/src/i18n/es.json b/src/i18n/es.json
index 658d03d1..5d435f63 100644
--- a/src/i18n/es.json
+++ b/src/i18n/es.json
@@ -47,8 +47,10 @@
"An error occured while trying to unassign the speed dial slot. Please try again": "Se produjo un error al intentar remover la ranura de marcación rápida. Por favor, inténtelo nuevamente.",
"Application": "Aplicación",
"Apps": "Aplicaciones",
+ "April": "Abril",
"Assigned slot {slot}": "Ranura {slot} asignada",
"Attach voicemail to email notification": "Adjuntar correo de voz a notificación de correo electrónico",
+ "August": "Agosto",
"Auto Attendant": "Asistente Automático",
"Block Incoming": "Bloquear Entrantes",
"Block Incoming/Outgoing": "Bloquear Entrantes/Salientes",
@@ -127,12 +129,15 @@
"Custom Announcement": "Anuncio Personalizado",
"Custom Announcements": "Anuncios Personalizados",
"Custom sound": "Sonido personalizado",
+ "Custom time set": "Custom time set",
+ "Custom time sets": "Custom time sets",
"Customer Details": "Detalles de cliente",
"Customer Phonebook": "Customer Phonebook",
"Daily": "Diariamente",
"Dashboard": "Tablero",
"Data is in the clipboard": "Data is in the clipboard",
"Data loading error": "Data loading error",
+ "December": "Diciembre",
"Default": "Predeterminado",
"Default sound": "Sonido predeterminado",
"Default sound set for all seats and groups": "Conjunto de sonido predeterminado para todos los asientos y grupos",
@@ -176,6 +181,7 @@
"End time": "Hora de finalización",
"English": "Español",
"Enter a number to dial": "Introduzca un número para marcar",
+ "Entity belongs to admin": "Esta entidad pertenece a admin",
"Expires": "Expira",
"Extension": "Extensión",
"Extension Settings": "Configuración de la extensión",
@@ -185,6 +191,7 @@
"Fax to mail and sendfax": "Fax a Correo y Envío de Fax",
"Fax2Mail": "Fax2Mail",
"Faxes": "Faxes",
+ "February": "Febrero",
"File": "Archivo",
"File Type": "Tipos de archivo",
"Filter": "Filtrar",
@@ -251,8 +258,11 @@
"Input a valid phone number": "Ingrese un número de teléfono válido",
"Interval when the secret key is automatically renewed.": "Intervalo en el que la clave secreta se renueva automáticamente.",
"Italian": "Italiano",
+ "January": "Enero",
"Join conference": "Unirse a la conferencia",
"Join conference with name": "Unirse a la conferencia con nombre",
+ "July": "Julio",
+ "June": "Junio",
"Lamp/Key": "Indicador/Tecla",
"Lamps/Keys": "Indicadores/Teclas",
"Language": "Idioma",
@@ -273,8 +283,10 @@
"Manager Secretary": "Jefe-Asistente",
"Manager Secretary feature": "Manager Secretary feature",
"ManagerSecretary": "Jefe-Asistente",
+ "March": "Marzo",
"Maximum allowed extension is {max}": "La extensión máxima permitida es {max}",
"Maximum calls in queue": "Máximo de llamadas en cola",
+ "May": "Mayo",
"Me": "Me",
"Messages": "Messages",
"Minimum allowed extension is {min}": "La extensión mínima permitida es {min}",
@@ -326,10 +338,12 @@
"No speed dials found": "No se encontraron marcaciones rápidas",
"Normal": "Normal",
"Not modified yet": "No se ha modificado todavía",
+ "November": "Noviembre",
"Number": "Número",
"Number list": "Lista de números",
"Number list name": "Nombre de la lista de números",
"Numbers": "Números",
+ "October": "Octubre",
"Office Hours Announcement": "Office Hours Announcement",
"On weekdays": "En días de la semana",
"Only incoming calls from listed numbers are allowed": "Permitir solo los números listados",
@@ -350,6 +364,7 @@
"Password confirm": "Password confirm",
"Password is not strong enough": "La contraseña no es lo suficientemente fuerte",
"Passwords must be equal": "Las contraseñas deben ser iguales",
+ "Period": "Period",
"Phone model": "Modelo de teléfono",
"Phone number": "Número de teléfono",
"Pilot": "Piloto",
@@ -448,6 +463,7 @@
"Send": "Enviar",
"Send Fax": "Enviar Fax",
"Sending fax completed successfully.": "Envío de fax completado exitosamente.",
+ "September": "Septiembre",
"Serial Ringing": "Llamada en serie",
"Session expired, please login again": "Session expired, please login again",
"Session language successfully changed": "Idioma de la sesión modificado exitosamente.",
diff --git a/src/i18n/fr.json b/src/i18n/fr.json
index 015d97c5..14ed74ff 100644
--- a/src/i18n/fr.json
+++ b/src/i18n/fr.json
@@ -47,8 +47,10 @@
"An error occured while trying to unassign the speed dial slot. Please try again": "Une erreur est survenue lors de la séassignation de l'emplacement de numérotation abrégée. Veuillez réessayer",
"Application": "Application",
"Apps": "Apps",
+ "April": "Avril",
"Assigned slot {slot}": "Emplacement {slot} attribué",
"Attach voicemail to email notification": "Joindre le message vocal à l'e-mail de notification",
+ "August": "Août",
"Auto Attendant": "Association auto",
"Block Incoming": "Bloquer les appels entrants",
"Block Incoming/Outgoing": "Bloquer les entrants/sortants",
@@ -127,12 +129,15 @@
"Custom Announcement": "Annonce personnalisée",
"Custom Announcements": "Annonces personnalisées",
"Custom sound": "Son personnalisé",
+ "Custom time set": "Custom time set",
+ "Custom time sets": "Custom time sets",
"Customer Details": "Détails du client",
"Customer Phonebook": "Annuaire du client",
"Daily": "Quotidien",
"Dashboard": "Tableau de bord",
"Data is in the clipboard": "Données dans le presse-papiers",
"Data loading error": "Data loading error",
+ "December": "Décembre",
"Default": "Défaut",
"Default sound": "Son par défaut",
"Default sound set for all seats and groups": "Son par défaut défini pour tous les sièges et groupes",
@@ -176,6 +181,7 @@
"End time": "Date de fin",
"English": "Français",
"Enter a number to dial": "Enter a number to dial",
+ "Entity belongs to admin": "Cette entité appartient à l’administrateur",
"Expires": "Expire",
"Extension": "Extension",
"Extension Settings": "Paramètres des extensions",
@@ -185,6 +191,7 @@
"Fax to mail and sendfax": "Fax à E-mail et Sendfax",
"Fax2Mail": "Fax2Mail",
"Faxes": "Télécopies",
+ "February": "Février",
"File": "Fichier",
"File Type": "Type de fichier",
"Filter": "Filtrer",
@@ -251,8 +258,11 @@
"Input a valid phone number": "Saisissez un numéro de téléphone valide",
"Interval when the secret key is automatically renewed.": "Intervalle où la clé secrète est automatiquement renouvelée.",
"Italian": "Italien",
+ "January": "Janvier",
"Join conference": "Rejoindre la conférence",
"Join conference with name": "Rejoindre la conférence avec le nom",
+ "July": "Juillet",
+ "June": "Juin",
"Lamp/Key": "Lampe/clé",
"Lamps/Keys": "Lampes/clés",
"Language": "Langue",
@@ -272,8 +282,10 @@
"Manager Secretary": "Manager Secretary",
"Manager Secretary feature": "Manager Secretary feature",
"ManagerSecretary": "ManagerSecretary",
+ "March": "Mars",
"Maximum allowed extension is {max}": "L'extension maximale autorisée est de {max}",
"Maximum calls in queue": "Nombre maximum d'appels dans la file d'attente",
+ "May": "Mai",
"Me": "Me",
"Messages": "Messages",
"Minimum allowed extension is {min}": "L'extension minimale autorisée est de {min}",
@@ -327,10 +339,12 @@
"No speed dials found": "Aucun numéro abrégé trouvé",
"Normal": "Normal",
"Not modified yet": "Pas encore modifié",
+ "November": "Novembre",
"Number": "Numéro",
"Number list": "Liste de numéros",
"Number list name": "Nom de la liste de numéros",
"Numbers": "Nombres",
+ "October": "Octobre",
"Office Hours Announcement": "Office Hours Announcement",
"On weekdays": "Les jours de semaine",
"Only incoming calls from listed numbers are allowed": "Seuls les appels entrants provenant des numéros listés sont autorisés",
@@ -351,6 +365,7 @@
"Password confirm": "Password confirm",
"Password is not strong enough": "Le mot de passe n'est pas assez fort",
"Passwords must be equal": "Les mots de passe doivent être égaux",
+ "Period": "Period",
"Phone model": "Modèle du poste",
"Phone number": "Numéro de téléphone",
"Pilot": "Pilote",
@@ -448,6 +463,7 @@
"Send": "Envoyer",
"Send Fax": "Envoyer un fax",
"Sending fax completed successfully.": "Le Fax a été envoyé avec succès.",
+ "September": "Septembre",
"Serial Ringing": "Sonnerie en série",
"Session expired, please login again": "Session expired, please login again",
"Set your Extension settings": "Définir les paramètres de votre extensions",
diff --git a/src/i18n/it.json b/src/i18n/it.json
index 8225acc0..177e8cb3 100644
--- a/src/i18n/it.json
+++ b/src/i18n/it.json
@@ -45,8 +45,10 @@
"An error occured while trying to send the fax. Please try again": "Si è verificato un errore durante l'invio del fax. Si prega di riprovare",
"An error occured while trying to unassign the speed dial slot. Please try again": "Si è verificato un errore nella cancellazione della selezione rapida. Si prega di riprovare",
"Apps": "Apps",
+ "April": "Aprile",
"Assigned slot {slot}": "Slot assegnato: {slot}",
"Attach voicemail to email notification": "Allega messaggio vocale all'email di notifica",
+ "August": "Agosto",
"Auto Attendant": "Risponditore Automatico",
"Block Incoming": "Blocca entranti",
"Block Incoming/Outgoing": "Blocca entranti/uscenti",
@@ -125,12 +127,15 @@
"Custom Announcement": "Custom Announcement",
"Custom Announcements": "Custom Announcements",
"Custom sound": "Audio personalizzato",
+ "Custom time set": "Custom time set",
+ "Custom time sets": "Custom time sets",
"Customer Details": "Dettagli cliente",
"Customer Phonebook": "Rubrica cliente",
"Daily": "Giornaliero",
"Dashboard": "Dashboard",
"Data is in the clipboard": "I dati sono negli appunti",
"Data loading error": "Errore nel caricamento dei dati",
+ "December": "Dicembre",
"Default": "Predefinito",
"Default sound": "Audio predefinito",
"Default sound set for all seats and groups": "Set di suoni predefinito per tutte le postazioni e i gruppi",
@@ -173,6 +178,7 @@
"End time": "End time",
"English": "Italiano",
"Enter a number to dial": "Inserisci un numero per chiamare",
+ "Entity belongs to admin": "Questa entità appartiene ad admin",
"Expires": "Scade",
"Extension": "Interno",
"Extension Settings": "Impostazioni dell'Estensione",
@@ -182,6 +188,7 @@
"Fax to mail and sendfax": "Fax to mail and sendfax",
"Fax2Mail": "Fax2Mail",
"Faxes": "Fax",
+ "February": "Febbraio",
"File": "File",
"File Type": "File Type",
"Filter": "Filtra",
@@ -248,7 +255,10 @@
"Input a valid phone number": "Inserire un numero di telefono valido",
"Interval when the secret key is automatically renewed.": "Interval when the secret key is automatically renewed.",
"Italian": "Italian",
+ "January": "Gennaio",
"Join conference with name": "Partecipa alla conferenza con nome",
+ "July": "Luglio",
+ "June": "Giugno",
"Lamp/Key": "Lampada/Tasto",
"Lamps/Keys": "Lampade/Tasti",
"Language": "Lingua",
@@ -267,8 +277,10 @@
"Mail to Fax": "Mail to Fax",
"Manager Secretary": "Segreteria",
"Manager Secretary feature": "Manager Secretary feature",
+ "March": "Marzo",
"Maximum allowed extension is {max}": "Maximum allowed extension is {max}",
"Maximum calls in queue": "Numero massimo di chiamate in coda",
+ "May": "Maggio",
"Me": "Me",
"Messages": "Messages",
"Minimum allowed extension is {min}": "Minimum allowed extension is {min}",
@@ -320,10 +332,12 @@
"No speed dials found": "Nessuna impostazione di chiamata rapida",
"Normal": "Normale",
"Not modified yet": "Not modified yet",
+ "November": "Novembre",
"Number": "Numero",
"Number list": "Number list",
"Number list name": "Number list name",
"Numbers": "Numeri",
+ "October": "Ottobre",
"Office Hours Announcement": "Office Hours Announcement",
"On weekdays": "Nei giorni feriali",
"Only incoming calls from listed numbers are allowed": "Solo ammesse solo chiamate dai numeri in elenco",
@@ -343,7 +357,14 @@
"Password changed successfully": "Password changed successfully",
"Password confirm": "Password confirm",
"Password is not strong enough": "Password is not strong enough",
- "Passwords must be equal": "Passwords must be equal",
+ "Password is not strong enough, add more digits": "Password is not strong enough, add more digits",
+ "Password is not strong enough, add more lowercase letters": "Password is not strong enough, add more lowercase letters",
+ "Password is not strong enough, add more special characters": "Password is not strong enough, add more special characters",
+ "Password is not strong enough, add more uppercase letters": "Password is not strong enough, add more uppercase letters",
+ "Password must be at least {max} characters long": "Password must be at least {max} characters long",
+ "Password must be at least {min} characters long": "Password must be at least {min} characters long",
+ "Passwords must be equal": "Le passwords devono essere identiche",
+ "Period": "Period",
"Phone model": "Modello telefono",
"Phone number": "Numero di telefono",
"Pilot": "Pilota",
@@ -441,6 +462,7 @@
"Send": "Invia",
"Send Fax": "Invia fax",
"Sending fax completed successfully.": "Fax inviato correttamente.",
+ "September": "Settembre",
"Serial Ringing": "Chiamata in sequenza",
"Session expired, please login again": "Session expired, please login again",
"Set your fax settings": "Set your fax settings",
diff --git a/src/pages/CscPageCf.vue b/src/pages/CscPageCf.vue
index daf1dfda..cc466c20 100644
--- a/src/pages/CscPageCf.vue
+++ b/src/pages/CscPageCf.vue
@@ -90,16 +90,12 @@