From 4627145940cec817f2fecbd1d494b13fbc06ed43 Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Thu, 17 Jun 2021 10:40:52 +0100 Subject: [PATCH 01/36] i18n: Latest translations --- i18n/es-ar.json | 91 +++++++++++++++++++++++++++++++++++++++++++++++ i18n/es-mx.json | 53 +++++++++++++++++++++++---- i18n/hu.json | 31 +++++++++++++++- i18n/kk.json | 14 +++++++- i18n/mr.json | 13 +++++++ i18n/pt_br.json | 3 +- i18n/zh_Hant.json | 83 ++++++++++++++++++++++++++++++++++++++++-- 7 files changed, 276 insertions(+), 12 deletions(-) create mode 100644 i18n/es-ar.json create mode 100644 i18n/mr.json diff --git a/i18n/es-ar.json b/i18n/es-ar.json new file mode 100644 index 0000000..24e3335 --- /dev/null +++ b/i18n/es-ar.json @@ -0,0 +1,91 @@ +{ + "autoFill": { + "cancel": "Cancelar", + "fill": "Llenar las celdas con %d<\/i><\/i>", + "fillHorizontal": "Llenar las celdas horizontalmente", + "fillVertical": "Llenar las celdas verticalmente" + }, + "decimal": ",", + "emptyTable": "No hay datos disponibles en la Tabla", + "info": "Mostrando _START_ a _END_ de _TOTAL_ Entradas", + "infoEmpty": "Mostrando 0 a 0 de 0 Entradas", + "infoFiltered": "Filtrado de _MAX_ entradas totales", + "infoThousands": ".", + "lengthMenu": "Mostrar _MENU_ entradas", + "loadingRecords": "Cargando...", + "paginate": { + "first": "Primera", + "last": "Ultima", + "next": "Siguiente", + "previous": "Anterior" + }, + "processing": "Procesando...", + "search": "Busqueda:", + "searchBuilder": { + "add": "Agregar condición", + "button": { + "0": "Constructor de búsqueda", + "_": "Constructor de búsqueda (%d)" + }, + "clearAll": "Quitar todo", + "condition": "Condición", + "conditions": { + "date": { + "after": "Luego", + "before": "Luego", + "between": "Entre", + "empty": "Vacio", + "equals": "Igual" + } + }, + "data": "Datos", + "deleteTitle": "Borrar regla de filtrado", + "leftTitle": "Criterio de alargado", + "logicAnd": "Y", + "logicOr": "O", + "rightTitle": "Criterio de endentado", + "title": { + "0": "Constructor de búsqueda", + "_": "Constructor de búsqueda (%d)" + }, + "value": "Valor" + }, + "searchPlaceholder": "Ingrese caracteres de busqueda", + "thousands": ".", + "zeroRecords": "No se encontraron registros que coincidan con la búsqueda", + "datetime": { + "previous": "Anterior", + "next": "Siguiente", + "hours": "Hora", + "minutes": "Minuto", + "seconds": "Segundo" + }, + "editor": { + "close": "Cerrar", + "create": { + "button": "Nuevo", + "title": "Crear nueva entrada", + "submit": "Crear" + }, + "edit": { + "button": "Editar", + "title": "Editar entrada", + "submit": "Actualizar" + }, + "remove": { + "button": "Borrar", + "title": "Borrar", + "submit": "Borrar", + "confirm": { + "_": "Está seguro que desea borrar %d filas?", + "1": "Está seguro que desea borrar 1 fila?" + } + }, + "multi": { + "title": "Múltiples valores", + "info": "La selección contiene diferentes valores para esta entrada. Para editarla y establecer todos los items al mismo valor, clickear o tocar aquí, de otra manera conservarán sus valores individuales.", + "restore": "Deshacer cambios", + "noMulti": "Esta entrada se puede editar individualmente, pero no como parte de un grupo." + } + } +} \ No newline at end of file diff --git a/i18n/es-mx.json b/i18n/es-mx.json index 9de2d1c..29af4fb 100644 --- a/i18n/es-mx.json +++ b/i18n/es-mx.json @@ -7,7 +7,7 @@ "cancel": "Cancelar", "fill": "Rellene todas las celdas con %d<\\\/i><\/i>", "fillHorizontal": "Rellenar celdas horizontalmente", - "fillVertical": "Rellenar celdas verticalmentemente" + "fillVertical": "Rellenar celdas verticalmente" }, "buttons": { "collection": "Colección", @@ -64,7 +64,48 @@ "0": "Constructor de búsqueda", "_": "Constructor de búsqueda (%d)" }, - "value": "Valor" + "value": "Valor", + "conditions": { + "date": { + "after": "Después", + "before": "Antes", + "between": "Entre", + "empty": "Vacío", + "equals": "Igual a", + "not": "Diferente de", + "notBetween": "No entre", + "notEmpty": "No vacío" + }, + "number": { + "between": "Entre", + "empty": "Vacío", + "equals": "Igual a", + "gt": "Mayor a", + "gte": "Mayor o igual a", + "lt": "Menor que", + "lte": "Menor o igual a", + "not": "Diferente de", + "notBetween": "No entre", + "notEmpty": "No vacío" + }, + "string": { + "contains": "Contiene", + "empty": "Vacío", + "endsWith": "Termina con", + "equals": "Igual a", + "not": "Diferente de", + "notEmpty": "Nop vacío", + "startsWith": "Inicia con" + }, + "array": { + "equals": "Igual a", + "empty": "Vacío", + "contains": "Contiene", + "not": "Diferente", + "notEmpty": "No vacío", + "without": "Sin" + } + } }, "searchPanes": { "clearMessage": "Borrar todo", @@ -73,10 +114,10 @@ "_": "Paneles de búsqueda (%d)" }, "count": "{total}", - "countFiltered": "{shown} ({total}", "emptyPanes": "Sin paneles de búsqueda", "loadMessage": "Cargando paneles de búsqueda", - "title": "Filtros Activos - %d" + "title": "Filtros Activos - %d", + "countFiltered": "{shown} ({total})" }, "select": { "1": "%d fila seleccionada", @@ -94,7 +135,6 @@ "zeroRecords": "No se encontraron resultados", "datetime": { "previous": "Anterior", - "next": "Proximo", "hours": "Horas", "minutes": "Minutos", "seconds": "Segundos", @@ -102,7 +142,8 @@ "amPm": [ "am", "pm" - ] + ], + "next": "Siguiente" }, "editor": { "close": "Cerrar", diff --git a/i18n/hu.json b/i18n/hu.json index fa242a2..b5871b6 100644 --- a/i18n/hu.json +++ b/i18n/hu.json @@ -125,5 +125,34 @@ "loadMessage": "Szűrőpanelek betöltése", "title": "Aktív szűrőpanelek: %d" }, - "searchPlaceholder": "keresés" + "searchPlaceholder": "keresés", + "datetime": { + "previous": "Előző", + "next": "Következő", + "hours": "Óra", + "minutes": "Perc", + "seconds": "Másodperc", + "amPm": [ + "de.", + "du." + ] + }, + "editor": { + "close": "Bezárás", + "create": { + "button": "Új", + "title": "Új", + "submit": "Létrehozás" + }, + "edit": { + "button": "Módosítás", + "title": "Módosítás", + "submit": "Módosítás" + }, + "remove": { + "button": "Törlés", + "title": "Törlés", + "submit": "Törlés" + } + } } \ No newline at end of file diff --git a/i18n/kk.json b/i18n/kk.json index 549baa3..19dc9da 100644 --- a/i18n/kk.json +++ b/i18n/kk.json @@ -17,5 +17,17 @@ "aria": { "sortAscending": ": өсімі бойынша бағанды сұрыптау үшін активациялау", "sortDescending": ": кемуі бойынша бағанды сұрыптау үшін активациялау" - } + }, + "autoFill": { + "cancel": "Доғару", + "fill": "Толықтыру", + "fillHorizontal": "Көлденең толтыру", + "fillVertical": "Тігінен толтыру" + }, + "buttons": { + "colvis": "Баған көрнісі", + "colvisRestore": "Қалпына келтіру", + "copy": "Нұсқалау" + }, + "searchPlaceholder": "Үлгі" } \ No newline at end of file diff --git a/i18n/mr.json b/i18n/mr.json new file mode 100644 index 0000000..ce8f19b --- /dev/null +++ b/i18n/mr.json @@ -0,0 +1,13 @@ +{ + "decimal": ".", + "emptyTable": "नोंदी मिळाल्या नाहीत ", + "info": "_TOTAL_ पैकी _START_ ते _END_ नोंदी दाखवत आहोत ", + "infoEmpty": "0 पैकी 0 ते 0 नोंदी दाखवत आहोत ", + "infoFiltered": "एकूण _MAX_ नोंदींमधून मधून निवडलेल्या", + "lengthMenu": "_MENU_ नोंदी दाखवा", + "loadingRecords": "लोड होत आहेत ...", + "processing": "प्रगतीपथावर", + "search": "शोधा: ", + "thousands": ",", + "zeroRecords": "जुळणाऱ्या नोंदी मिळाल्या नाहीत" +} \ No newline at end of file diff --git a/i18n/pt_br.json b/i18n/pt_br.json index be0475c..1b1e754 100644 --- a/i18n/pt_br.json +++ b/i18n/pt_br.json @@ -33,7 +33,8 @@ "columns": { "1": "1 coluna selecionada", "_": "%d colunas selecionadas" - } + }, + "0": "Nenhuma linha selecionada" }, "buttons": { "copySuccess": { diff --git a/i18n/zh_Hant.json b/i18n/zh_Hant.json index 4b65c3c..588a021 100644 --- a/i18n/zh_Hant.json +++ b/i18n/zh_Hant.json @@ -37,11 +37,63 @@ }, "searchBuilder": { "add": "新增條件", - "clearAll": "清除", "condition": "條件", "deleteTitle": "刪除過濾條件", - "leftTitle": "升級", - "rightTitle": "降級" + "button": { + "_": "複合查詢 (%d)", + "0": "複合查詢" + }, + "clearAll": "清空", + "conditions": { + "array": { + "contains": "含有", + "empty": "為空", + "equals": "等於", + "not": "不為", + "notEmpty": "不為空" + }, + "date": { + "after": "大於", + "before": "小於", + "between": "在其中", + "empty": "為空", + "equals": "等於", + "not": "不為", + "notBetween": "不在其中", + "notEmpty": "不為空" + }, + "number": { + "between": "在其中", + "empty": "為空", + "equals": "等於", + "gt": "大於", + "gte": "大於等於", + "lt": "小於", + "lte": "小於等於", + "not": "不為", + "notBetween": "不在其中", + "notEmpty": "不為空" + }, + "string": { + "contains": "含有", + "empty": "為空", + "endsWith": "字尾為", + "equals": "等於", + "not": "不為", + "notEmpty": "不為空", + "startsWith": "字首為" + } + }, + "data": "欄位", + "leftTitle": "群組條件", + "logicAnd": "且", + "logicOr": "或", + "rightTitle": "取消群組", + "title": { + "_": "複合查詢 (%d)", + "0": "複合查詢" + }, + "value": "內容" }, "editor": { "close": "關閉", @@ -66,6 +118,31 @@ }, "multi": { "restore": "回復修改" + }, + "error": { + "system": "系統發生錯誤(更多資訊)" } + }, + "autoFill": { + "cancel": "取消" + }, + "buttons": { + "copySuccess": { + "_": "複製了 %d 筆資料", + "1": "複製了 1 筆資料" + }, + "copyTitle": "已經複製到剪貼簿", + "excel": "Excel", + "pdf": "PDF", + "print": "列印" + }, + "searchPanes": { + "collapse": { + "_": "搜尋面版 (%d)", + "0": "搜尋面版" + }, + "emptyPanes": "沒搜尋面版", + "loadMessage": "載入搜尋面版中...", + "clearMessage": "清空" } } \ No newline at end of file From 589a413d70c16a888a4ca6ed7bb46fa301b05e70 Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Mon, 21 Jun 2021 11:51:07 +0100 Subject: [PATCH 02/36] i18n: Latest translations --- i18n/uz_cr.json | 162 ++++++++++++++++++++++++++++++++++++++++++++++ i18n/zh_Hant.json | 9 ++- 2 files changed, 169 insertions(+), 2 deletions(-) create mode 100644 i18n/uz_cr.json diff --git a/i18n/uz_cr.json b/i18n/uz_cr.json new file mode 100644 index 0000000..0005f46 --- /dev/null +++ b/i18n/uz_cr.json @@ -0,0 +1,162 @@ +{ + "aria": { + "sortAscending": ": устунни қийматлар ўсиши бўйича тартиблаш", + "sortDescending": ": устунни қийматлар камайиши бўйича тартиблаш" + }, + "autoFill": { + "cancel": "Бекор қил", + "fill": "Ҳамма катакни %d<\/i> билан тўлдириш", + "fillHorizontal": "Катакларни горизонтал тўлдириш", + "fillVertical": "Катакларни вертикал тўлдириш", + "info": "Автоматик тўлдириш" + }, + "buttons": { + "colvis": "Устунларни кўрсатиш ", + "colvisRestore": "Кўрсатиш қайта тиклаш", + "copy": "Кўчириш" + }, + "datetime": { + "hours": "Соат", + "minutes": "Минут", + "next": "кейинги", + "previous": "аввалги", + "seconds": "секунд", + "unknown": "-" + }, + "decimal": ".", + "editor": { + "close": "Ёпиш", + "create": { + "button": "Янги", + "submit": "Янги элементни сақлаш", + "title": "Янги элемент қўшиш" + }, + "edit": { + "button": "Ўзгартириш", + "submit": "Ўзгаришларни сақлаш", + "title": "Элементни ўзгартириш" + }, + "error": { + "system": "Тизимда ҳатолик юз берди" + }, + "multi": { + "title": "кўп қиймат киритилган" + }, + "remove": { + "button": "Ўчириш", + "confirm": { + "_": "Сиз %d та сатрни ўчиришга розимисиз?", + "1": "Сиз битта сатрни ўчиришга розимисиз?" + }, + "submit": "Ўчириш", + "title": "Элементни ўчириш" + } + }, + "emptyTable": "Жадвал бўш", + "info": "(_START_- _END_) жами: _TOTAL_", + "infoEmpty": "бўш", + "infoFiltered": "_MAX_ та сатрдан фильтрланди", + "infoThousands": "  ", + "lengthMenu": "_MENU_ та сатр кўринсин", + "loadingRecords": "Юкланмоқда...", + "paginate": { + "first": "Дастлабки", + "last": "Оҳирги", + "next": "Кейинги", + "previous": "Аввалги" + }, + "processing": "Бажарилмоқда...", + "search": "Қидириш:", + "searchBuilder": { + "add": "Янги", + "button": { + "_": "Қидириш шартлари(%d та)", + "0": "Қидириш шартлари" + }, + "clearAll": "Тозалаш", + "condition": "Шарт", + "conditions": { + "array": { + "contains": "қатнашган", + "empty": "бўш", + "equals": "тенг", + "not": "тескариси", + "notEmpty": "бўш эмас", + "without": "қатнашмаган" + }, + "date": { + "after": "дан кейин", + "before": "дан олдин", + "between": "оралиғида", + "empty": "киритилмаган", + "equals": "баробар", + "not": "тескариси", + "notBetween": "оралиғида эмас", + "notEmpty": "бўш эмас" + }, + "number": { + "between": "орасида", + "empty": "киритилмаган", + "equals": "баробар", + "gt": "дан катта", + "gte": "дан катта ёки тенг", + "lt": "дан кичик", + "lte": "дан кичик ёки тенг", + "not": "тескариси", + "notBetween": "оралиғида эмас", + "notEmpty": "бўш эмас" + }, + "string": { + "contains": "қатнашган", + "empty": "бўш", + "endsWith": "билан тугаган", + "equals": "тенг", + "not": "тескариси", + "notEmpty": "бўш эмас", + "startsWith": "дан бошланади" + } + }, + "data": "Маълумот", + "deleteTitle": "Фильтр шартларини ўчириш", + "logicAnd": "Ва", + "logicOr": "Ёки", + "title": { + "_": "Қидириш шартлари(%d та)", + "0": "Қидириш шартлари" + }, + "value": "Қиймат" + }, + "searchPanes": { + "clearMessage": "Тозалаш", + "collapse": { + "_": "Қидириш панели (%d)", + "0": "Қидириш панели" + }, + "count": "Миқдор", + "emptyPanes": "Қидириш панели йўқ", + "loadMessage": "Қидириш панели юкланмоқда...", + "title": "Фаол фильтр - %d" + }, + "searchPlaceholder": "Қидириш шарти...", + "select": { + "_": "та танланди", + "0": "1", + "1": "битта танланди", + "2": "иккита танланди", + "cells": { + "_": "%d катак танланди", + "1": "1 катак танланди" + }, + "columns": { + "_": "%d та устун танланди", + "1": "1 та устун танланди" + }, + "rows": { + "_": "%d та сатр танланди", + "0": "%d та сатр танланди", + "1": "1 та сатр танланди" + } + }, + "thousands": " ", + "zeroRecords": "топилмади" +} \ No newline at end of file diff --git a/i18n/zh_Hant.json b/i18n/zh_Hant.json index 588a021..46e91dc 100644 --- a/i18n/zh_Hant.json +++ b/i18n/zh_Hant.json @@ -20,7 +20,11 @@ "select": { "1": "%d 列已選擇", "2": "%d 列已選擇", - "_": "%d 列已選擇" + "_": "%d 列已選擇", + "rows": { + "_": "%d 列已選擇", + "1": "%d 列已選擇" + } }, "emptyTable": "目前沒有資料", "searchPlaceholder": "請輸入關鍵字", @@ -134,7 +138,8 @@ "copyTitle": "已經複製到剪貼簿", "excel": "Excel", "pdf": "PDF", - "print": "列印" + "print": "列印", + "copy": "複製" }, "searchPanes": { "collapse": { From 8cc42550ed7f1a4908fd653e7d088ad084e73a78 Mon Sep 17 00:00:00 2001 From: Colin Marks Date: Wed, 23 Jun 2021 07:07:17 +0000 Subject: [PATCH 03/36] DEV tweaks to the wording --- api/row().show().js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/row().show().js b/api/row().show().js index 1cd93fe..da93c42 100644 --- a/api/row().show().js +++ b/api/row().show().js @@ -1,5 +1,5 @@ /** - * This plugin permits to show the right page of DataTable to show the selected row + * This plugin jumps to the right page of the DataTable to show the required row * * @version 1.0 * @name row().show() From a7b5bd4581f2fb6f191909505ec56e42e2dfc833 Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Mon, 12 Jul 2021 09:26:59 +0100 Subject: [PATCH 04/36] i18n: Latest translations --- i18n/en-gb.json | 23 ++++++ i18n/es-cl.json | 202 ++++++++++++++++++++++++++++++++++++++++++++++++ i18n/gl.json | 24 +++++- i18n/it_it.json | 25 +++++- i18n/sq.json | 49 +++++++++++- i18n/th.json | 76 +++++++++++++++++- 6 files changed, 391 insertions(+), 8 deletions(-) create mode 100644 i18n/es-cl.json diff --git a/i18n/en-gb.json b/i18n/en-gb.json index 444be68..71f3c0d 100644 --- a/i18n/en-gb.json +++ b/i18n/en-gb.json @@ -141,6 +141,29 @@ "amPm": [ "am", "pm" + ], + "weekdays": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "months": [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" ] }, "editor": { diff --git a/i18n/es-cl.json b/i18n/es-cl.json new file mode 100644 index 0000000..5314358 --- /dev/null +++ b/i18n/es-cl.json @@ -0,0 +1,202 @@ +{ + "aria": { + "sortAscending": ": orden ascendente", + "sortDescending": ": orden descendente" + }, + "autoFill": { + "cancel": "Cancelar", + "fill": "Llenar todas las celdas con %d<\\\/i><\/i>", + "fillHorizontal": "Llenar celdas horizontalmente", + "fillVertical": "Llenar celdas verticalmente", + "info": "Ejemplos de autollenado" + }, + "buttons": { + "collection": "Colección <\/span>", + "colvis": "Visibilidad de la columna", + "colvisRestore": "Restaurar visibilidad", + "copy": "Copiar", + "copyKeys": "Presiona ctrl or u2318 + C para copiar los datos de la tabla al portapapeles.

Para cancelar, haz click en este mensaje o presiona esc.", + "copySuccess": { + "_": "Copió %ds registros al portapapeles", + "1": "Copió un registro al portapapeles" + }, + "copyTitle": "Copiado al portapapeles", + "csv": "CSV", + "excel": "Excel", + "pageLength": { + "_": "Mostrar %ds registros", + "-1": "Mostrar todos los registros", + "1": "Mostrar un registro" + }, + "pdf": "PDF", + "print": "Imprimir" + }, + "datetime": { + "amPm": [ + "AM", + "PM" + ], + "hours": "Horas", + "minutes": "Minutos", + "months": { + "0": "Enero", + "1": "Febrero", + "10": "Noviembre", + "11": "Diciembre", + "2": "Marzo", + "3": "Abril", + "4": "Mayo", + "5": "Junio", + "6": "Julio", + "7": "Agosto", + "8": "Septiembre", + "9": "Octubre" + }, + "next": "Siguiente", + "previous": "Anterior", + "seconds": "Segundos", + "weekdays": [ + "Dom", + "Lun", + "Mar", + "Mie", + "Jue", + "Vie", + "Sab" + ] + }, + "decimal": ",", + "editor": { + "close": "Cerrar", + "create": { + "button": "Nuevo", + "submit": "Crear", + "title": "Crear nuevo registro" + }, + "edit": { + "button": "Editar", + "submit": "Actualizar", + "title": "Editar registro" + }, + "error": { + "system": "Ocurrió un error de sistema (<a target=\"\\\" rel=\"nofollow\" href=\"\\\">Más información)." + }, + "multi": { + "info": "Los elementos seleccionados contienen diferentes valores para esta entrada. Para editar y configurar todos los elementos de esta entrada con el mismo valor, haga clic o toque aquí, de lo contrario, conservarán sus valores individuales.", + "noMulti": "Esta entrada se puede editar individualmente, pero no como parte de un grupo.", + "restore": "Deshacer cambios", + "title": "Múltiples valores" + }, + "remove": { + "button": "Eliminar", + "confirm": { + "_": "¿Está seguro de que desea eliminar %d registros?", + "1": "¿Está seguro de que desea eliminar 1 registro?" + }, + "submit": "Eliminar", + "title": "Eliminar registro" + } + }, + "emptyTable": "Sin registros", + "info": "Mostrando _START_ a _END_ de _TOTAL_ registros", + "infoEmpty": "Mostrando 0 a 0 de 0 registros", + "infoFiltered": "(filtrado de _MAX_ registros)", + "infoThousands": ".", + "lengthMenu": "Mostrar _MENU_ registros", + "loadingRecords": "Cargando...", + "paginate": { + "first": "Primero", + "last": "Último", + "next": "Siguiente", + "previous": "Anterior" + }, + "processing": "Procesando...", + "search": "Buscar:", + "searchBuilder": { + "add": "Agregar Condición", + "button": { + "_": "Filtros (%d)", + "0": "Filtrar" + }, + "clearAll": "Limpiar Todo", + "condition": "Condición", + "conditions": { + "array": { + "contains": "Contiene", + "empty": "Vacío", + "equals": "Igual", + "not": "Distinto", + "notEmpty": "No vacío", + "without": "Sin" + }, + "date": { + "after": "Mayor", + "before": "Menor", + "between": "Entre", + "empty": "Vacío", + "equals": "Igual", + "not": "Distinto", + "notBetween": "No entre", + "notEmpty": "No vacío" + }, + "number": { + "between": "Entre", + "empty": "Vacío", + "equals": "Igual", + "gt": "Mayor", + "gte": "Mayor o igual", + "lt": "Menor", + "lte": "Menor o igual", + "not": "Distinto", + "notBetween": "No entre", + "notEmpty": "No vacío" + }, + "string": { + "contains": "Contiene", + "empty": "Vacío", + "endsWith": "Termina con", + "equals": "Igual", + "not": "Distinto", + "notEmpty": "No vacío", + "startsWith": "Comienza con" + } + }, + "data": "Datos", + "deleteTitle": "Eliminar regla de filtrado", + "leftTitle": "Filtros anulados", + "logicAnd": "Y", + "logicOr": "O", + "rightTitle": "Filtro", + "title": { + "_": "Filtros (%d)", + "0": "Filtrar" + }, + "value": "Valor" + }, + "searchPanes": { + "clearMessage": "Limpiar todo", + "collapse": { + "_": "Paneles de búsqueda (%d)", + "0": "Paneles de búsqueda" + }, + "count": "{total}", + "countFiltered": "{shown} ({total})", + "emptyPanes": "Sin paneles de búsqueda", + "loadMessage": "Cargando paneles de búsqueda...", + "title": "Filtros activos - %d" + }, + "select": { + "_": "%d registros seleccionados", + "1": "%d registro seleccionados", + "cells": { + "_": "%d celdas seleccionadas", + "1": "Una celda seleccionada" + }, + "columns": { + "_": "%d columnas seleccionadas", + "1": "Una columna seleccionada" + } + }, + "thousands": ".", + "zeroRecords": "No se encontraron registros" +} \ No newline at end of file diff --git a/i18n/gl.json b/i18n/gl.json index ecb164e..10edc7f 100644 --- a/i18n/gl.json +++ b/i18n/gl.json @@ -7,7 +7,6 @@ "infoEmpty": "Mostrando rexistros do 0 ao 0 dun total de 0 rexistros", "infoFiltered": "(filtrado dun total de _MAX_ rexistros)", "search": "Buscar:", - "infoThousands": ",", "loadingRecords": "Cargando...", "paginate": { "first": "Primeiro", @@ -18,5 +17,26 @@ "aria": { "sortAscending": ": Activar para ordenar a columna de maneira ascendente", "sortDescending": ": Activar para ordenar a columna de maneira descendente" - } + }, + "autoFill": { + "cancel": "Cancelar", + "fill": "Rechea todas as celas con %d<\/i>", + "fillHorizontal": "Rechea celas horizontamente", + "fillVertical": "Rechea celas verticalmente", + "info": "Exemplo de recheado" + }, + "buttons": { + "collection": "Colección", + "colvis": "Visibilidade da columna", + "colvisRestore": "Restaurar visibilidade", + "copy": "Copiar", + "copyKeys": "Preme ctrl o u2318 + C para copiar os datos da táboa ao portapapeis do sistema.

Para cancelar, fai clic nesta mensaxe ou preme escape.", + "copyTitle": "Copiar ao portapapeis", + "csv": "CSV", + "excel": "Excel", + "pdf": "PDF" + }, + "decimal": ",", + "infoThousands": ".", + "thousands": "." } \ No newline at end of file diff --git a/i18n/it_it.json b/i18n/it_it.json index ae9cca8..45f84b8 100644 --- a/i18n/it_it.json +++ b/i18n/it_it.json @@ -151,7 +151,30 @@ "next": "successivo", "previous": "precedente", "seconds": "secondi", - "unknown": "sconosciuto" + "unknown": "sconosciuto", + "weekdays": [ + "Dom", + "Lun", + "Mar", + "Mer", + "Gio", + "Ven", + "Sab" + ], + "months": [ + "Gennaio", + "Febbraio", + "Marzo", + "Aprile", + "Maggio", + "Giugno", + "Luglio", + "Agosto", + "Settembre", + "Ottobre", + "Novembre", + "Dicembre" + ] }, "editor": { "close": "Chiudi", diff --git a/i18n/sq.json b/i18n/sq.json index 823ef2f..1c191ec 100644 --- a/i18n/sq.json +++ b/i18n/sq.json @@ -5,8 +5,6 @@ "infoFiltered": "(të filtruara nga gjithësej _MAX_ reshtave)", "infoThousands": ",", "lengthMenu": "Shiko _MENU_ reshta", - "loadingRecords": "Duke punuar...", - "processing": "Duke procesuar...", "search": "Kërkoni:", "zeroRecords": "Asnjë e dhënë nuk u gjet", "paginate": { @@ -18,5 +16,50 @@ "aria": { "sortAscending": ": aktivizo për të sortuar kolumnin me vlera në ngritje", "sortDescending": ": aktivizo për të sortuar kolumnin me vlera në zbritje" - } + }, + "autoFill": { + "cancel": "Anull", + "fill": "Ploteso", + "fillHorizontal": "Ploteso rrjeshtat", + "fillVertical": "Ploteso kolonat", + "info": "Info" + }, + "buttons": { + "collection": "Te Dhenat", + "colvis": "Shfaq Kolonat", + "colvisRestore": "Rikthe Shfaqje", + "copy": "Kopjo", + "copyKeys": "Shtyp _ctr ose _⌘ + _C per te kopjuar te dhenat ne Clipboard. Per te Anulluar kliko mesazhin ose shtyp buton 'Escape'.", + "copyTitle": "Kopjo ne Clipboard", + "csv": "CSV", + "excel": "EXCEL", + "pdf": "PDF", + "print": "Printo" + }, + "datetime": { + "amPm": [ + "am", + "pm" + ], + "hours": "Ora", + "minutes": "Minuta", + "next": "perpara", + "previous": "prapa", + "seconds": "Sekonda", + "unknown": "unknown", + "weekdays": [ + "Hene", + "Marte ", + "Merkure", + "Enjte", + "Premte", + "Shtune" + ] + }, + "decimal": "dhjeteshifror", + "infoPostFix": "infoPostFix", + "loadingRecords": "Po merren te dhenat...", + "processing": "Po procesohen...", + "searchPlaceholder": "Shkruaj ç'po kerkon", + "thousands": "," } \ No newline at end of file diff --git a/i18n/th.json b/i18n/th.json index 2fc0ff9..2ff6358 100644 --- a/i18n/th.json +++ b/i18n/th.json @@ -29,9 +29,81 @@ "colvis": "การมองเห็นคอลัมน์", "colvisRestore": "เรียกคืนการมองเห็น", "copy": "คัดลอก", - "copyKeys": "กดปุ่ม Ctrl หรือ Command + C เพื่อคัดลอกข้อมูลบนตารางไปยัง Clipboard ที่เครื่องของคุณ" + "copyKeys": "กดปุ่ม Ctrl หรือ Command + C เพื่อคัดลอกข้อมูลบนตารางไปยัง Clipboard ที่เครื่องของคุณ", + "copySuccess": { + "_": "คัดลอกช้อมูลแล้ว จำนวน %ds แถว", + "1": "คัดลอกข้อมูลแล้ว จำนวน 1 แถว" + }, + "copyTitle": "คัดลอกไปยังคลิปบอร์ด", + "csv": "CSV", + "excel": "Excel", + "pageLength": { + "_": "แสดงข้อมูล %d แถว", + "-1": "แสดงข้อมูลทั้งหมด", + "1": "แสดงข้อมูล 1 แถว" + }, + "pdf": "PDF", + "print": "สั่งพิมพ์" }, "infoEmpty": "แสดงทั้งหมด 0 to 0 of 0 รายการ", "search": "ค้นหา :", - "thousands": "," + "thousands": ",", + "datetime": { + "amPm": [ + "เที่ยงวัน", + "เที่ยงคืน" + ], + "hours": "ชั่วโมง", + "minutes": "นาที", + "months": { + "0": "มกราคม", + "1": "กุมภาพันธ์", + "10": "พฤศจิกายน", + "11": "ธันวาคม", + "2": "มีนาคม", + "3": "เมษายน", + "4": "พฤษภาคม", + "5": "มิถุนายน", + "6": "กรกฎาคม", + "7": "สิงหาคม", + "8": "กันยายน", + "9": "ตุลาคม" + }, + "next": "ถัดไป", + "previous": "ก่อนกน้า", + "seconds": "วินาที", + "unknown": "ไม่ทราบ", + "weekdays": [ + "วันอาทิตย์", + "วันจันทร์", + "วันอังคาร", + "วันพุธ", + "วันพฤหัส", + "วันศุกร์", + "วันเสาร์" + ] + }, + "decimal": "จุดทศนิยม", + "editor": { + "close": "ปิด", + "create": { + "button": "สร้าง", + "submit": "สร้างข้อมูล", + "title": "สร้างข้อมูลใหม่" + }, + "edit": { + "button": "แก้ไข", + "submit": "บันทึก", + "title": "แก้ไขข้อมูล" + }, + "error": { + "system": "เกิดข้อผิดพลาดของระบบ (<a target=\"\\\" rel=\"nofollow\" href=\"\\\">ดูข้อมูลเพิ่มเติม)." + }, + "remove": { + "button": "ลบ", + "submit": "ลบข้อมูล", + "title": "ลบข้อมูล" + } + }, + "searchPlaceholder": "กรอกตัวอักษาที่ต้องการค้นหา" } \ No newline at end of file From 8bcfab2bee3d8de50a8388e6dcee677d6ad020e3 Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Wed, 21 Jul 2021 16:56:56 +0100 Subject: [PATCH 05/36] i18n: Latest transations --- i18n/ar.json | 67 +++++++++++++++- i18n/bg.json | 158 ++++++++++++++++++++++++++++++++++++-- i18n/es_es.json | 4 + i18n/nl_nl.json | 23 ++++++ i18n/pt_br.json | 25 +++++- i18n/pt_pt.json | 52 +++++++++++-- i18n/sq.json | 200 +++++++++++++++++++++++++++++++++++++++--------- i18n/tr.json | 25 +++++- 8 files changed, 504 insertions(+), 50 deletions(-) diff --git a/i18n/ar.json b/i18n/ar.json index c577958..6ff9a71 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -123,5 +123,70 @@ "loadMessage": "جارِ التحميل ...", "title": "الفلاتر النشطة" }, - "searchPlaceholder": "ابحث ..." + "searchPlaceholder": "ابحث ...", + "infoThousands": ",", + "datetime": { + "previous": "السابق", + "next": "التالي", + "hours": "الساعة", + "minutes": "الدقيقة", + "seconds": "الثانية", + "unknown": "-", + "amPm": [ + "صباحا", + "مساءا" + ], + "weekdays": [ + "الأحد", + "الإثنين", + "الثلاثاء", + "الأربعاء", + "الخميس", + "الجمعة", + "السبت" + ], + "months": [ + "يناير", + "فبراير", + "مارس", + "أبريل", + "مايو", + "يونيو", + "يوليو", + "أغسطس", + "سبتمبر", + "أكتوبر", + "نوفمبر", + "ديسمبر" + ] + }, + "editor": { + "close": "إغلاق", + "create": { + "button": "إضافة", + "title": "إضافة جديدة", + "submit": "إرسال" + }, + "edit": { + "button": "تعديل", + "title": "تعديل السجل", + "submit": "تحديث" + }, + "remove": { + "button": "حذف", + "title": "حذف", + "submit": "حذف", + "confirm": { + "_": "هل أنت متأكد من رغبتك في حذف السجلات %d المحددة؟", + "1": "هل أنت متأكد من رغبتك في حذف السجل؟" + } + }, + "error": { + "system": "حدث خطأ ما" + }, + "multi": { + "title": "قيم متعدية", + "restore": "تراجع" + } + } } \ No newline at end of file diff --git a/i18n/bg.json b/i18n/bg.json index 9c887b4..7e04273 100644 --- a/i18n/bg.json +++ b/i18n/bg.json @@ -18,16 +18,162 @@ }, "autoFill": { "cancel": "Oткажи", - "fill": "Попълни всички клетки с %d<\/i><\/i>" - }, - "buttons": { - "print": "Изпринти" + "fill": "Попълни всички клетки с %d<\/i><\/i>", + "fillHorizontal": "Попълни хоризонтални клетки", + "fillVertical": "Попълни вертикални клетки" }, "searchBuilder": { "add": "Добави", - "deleteTitle": "Изтрий критериите за търсене" + "deleteTitle": "Изтрий критериите за търсене", + "clearAll": "Изчисти всичко", + "condition": "Правило", + "conditions": { + "array": { + "contains": "Съдържа", + "empty": "Празно", + "equals": "Еднакво с", + "not": "Различно от", + "notEmpty": "Не е празно", + "without": "Без" + }, + "date": { + "after": "След", + "before": "Преди", + "between": "Между", + "empty": "Празно", + "equals": "Равна на", + "not": "Различна от", + "notBetween": "Не е между", + "notEmpty": "Не е празно" + }, + "number": { + "between": "Между", + "empty": "Празно", + "equals": "Равно", + "gt": "Над", + "gte": "Над или равно", + "lt": "Под", + "lte": "Под или равно", + "not": "Различно от", + "notBetween": "Не е между", + "notEmpty": "Не е празно" + }, + "string": { + "contains": "Съдържа", + "empty": "Празно", + "endsWith": "Завършва с", + "equals": "Еднакво с", + "not": "Различно от", + "notEmpty": "Не е празно", + "startsWith": "Започва с" + } + }, + "data": "Поле", + "logicAnd": "И", + "logicOr": "Или", + "value": "Стойност" }, "searchPanes": { - "clearMessage": "Изтрий всички" + "clearMessage": "Изтрий всички", + "emptyPanes": "Няма SearchPanes", + "loadMessage": "Зареждане...", + "title": "Активни филтри - %d" + }, + "buttons": { + "collection": "Колекция", + "colvis": "Показване\/Скриване на колони", + "colvisRestore": "Показване на всички колони", + "copy": "Копиране", + "copyKeys": "Натисни ctrl или u2318 + C за да копираш данните от таблицата.
За да отмените, щракнете върху това съобщение или натиснете escape<\/i>.<\/i>", + "copySuccess": { + "_": "Копирани %ds реда", + "1": "Копиран един ред" + }, + "copyTitle": "Копиране в буфера", + "pageLength": { + "_": "Покажи %d реда", + "-1": "Покажи всички редове", + "1": "Покажи 1 ред" + }, + "print": "Принтиране" + }, + "datetime": { + "hours": "Часове", + "minutes": "Минути", + "months": { + "0": "Януари", + "1": "Февруари", + "10": "Ноември", + "11": "Декември", + "2": "Март", + "3": "Април", + "4": "Май", + "5": "Юни", + "6": "Юли", + "7": "Август", + "8": "Септември", + "9": "Октомври" + }, + "next": "Напред", + "previous": "Назад", + "seconds": "Секунди", + "weekdays": [ + "Нед", + "Пон", + "Вт", + "Ср", + "Четв", + "Пет", + "Съб" + ] + }, + "editor": { + "close": "Затвори", + "create": { + "button": "Нов запис", + "submit": "Създай", + "title": "Създай нов запис" + }, + "edit": { + "button": "Промени", + "submit": "Промени", + "title": "Промени запис" + }, + "error": { + "system": "Грешка в системата!" + }, + "multi": { + "info": "Избраните елементи съдържат различни стойности за това поле. За да редактирате и зададете всички елементи за това поле на една и съща стойност, щракнете или докоснете тук, в противен случай те ще запазят своите индивидуални стойности.", + "noMulti": "Това полеможе да се редактира индивидуално, но не е част от група.", + "restore": "Отмяна на промените", + "title": "Множество стойности" + }, + "remove": { + "button": "Изтрий", + "confirm": { + "_": "Сигурни ли сте, че искате да изтриете %d реда?", + "1": "Сигурни ли сте, че искате да изтриете 1 ред?" + }, + "submit": "Изтрий", + "title": "Изтрий запис" + } + }, + "emptyTable": "Няма налични данни в таблицата", + "loadingRecords": "Зареждане...", + "select": { + "_": "%d избрани реда", + "1": "%d избран ред", + "cells": { + "_": "%d избрани клетки", + "1": "%d избрана клетка" + }, + "columns": { + "_": "%d избрани колони", + "1": "%d избрана колона" + }, + "rows": { + "_": "%d избрани реда", + "1": "%d избран ред" + } } } \ No newline at end of file diff --git a/i18n/es_es.json b/i18n/es_es.json index 0f0009b..53595b1 100644 --- a/i18n/es_es.json +++ b/i18n/es_es.json @@ -129,6 +129,10 @@ "columns": { "1": "1 columna seleccionada", "_": "%d columnas seleccionadas" + }, + "rows": { + "1": "1 fila seleccionada", + "_": "%d filas seleccionadas" } }, "thousands": ".", diff --git a/i18n/nl_nl.json b/i18n/nl_nl.json index aa953aa..e65e420 100644 --- a/i18n/nl_nl.json +++ b/i18n/nl_nl.json @@ -152,6 +152,29 @@ "amPm": [ "vm", "nm" + ], + "weekdays": [ + "Zo", + "Ma", + "Di", + "Wo", + "Do", + "Vr", + "Za" + ], + "months": [ + "Januari", + "Februari", + "Maart", + "April", + "Mei", + "Juni", + "Juli", + "Augustus", + "September", + "Oktober", + "November", + "December" ] }, "editor": { diff --git a/i18n/pt_br.json b/i18n/pt_br.json index 1b1e754..b23af48 100644 --- a/i18n/pt_br.json +++ b/i18n/pt_br.json @@ -147,7 +147,30 @@ "am", "pm" ], - "unknown": "-" + "unknown": "-", + "months": { + "0": "Janeiro", + "1": "Fevereiro", + "10": "Novembro", + "11": "Dezembro", + "2": "Março", + "3": "Abril", + "4": "Maio", + "5": "Junho", + "6": "Julho", + "7": "Agosto", + "8": "Setembro", + "9": "Outubro" + }, + "weekdays": [ + "Domingo", + "Segunda-feira", + "Terça-feira", + "Quarta-feira", + "Quinte-feira", + "Sexta-feira", + "Sábado" + ] }, "editor": { "close": "Fechar", diff --git a/i18n/pt_pt.json b/i18n/pt_pt.json index 50a64fb..ca19b33 100644 --- a/i18n/pt_pt.json +++ b/i18n/pt_pt.json @@ -148,17 +148,57 @@ "remove": { "button": "Remover", "title": "Remover", - "submit": "Remover" - }, - "error": { - "system": "Um erro no sistema ocorreu" + "submit": "Remover", + "confirm": { + "_": "Tem certeza que quer apagar %d entradas?", + "1": "Tem certeza que quer apagar esta entrada?" + } }, "multi": { "title": "Multiplos valores", "info": "Os itens selecionados contêm valores diferentes para esta entrada. Para editar e definir todos os itens para esta entrada com o mesmo valor, clique ou toque aqui, caso contrário, eles manterão seus valores individuais.", - "restore": "Desfazer alterações" + "restore": "Desfazer alterações", + "noMulti": "Este campo não pode ser editado em grupo" + }, + "error": { + "system": "Ocorreu um erro no sistema" } }, "info": "Mostrando os registos _START_ a _END_ num total de _TOTAL_", - "infoEmpty": "Mostrando 0 os registos num total de 0" + "infoEmpty": "Mostrando 0 os registos num total de 0", + "datetime": { + "previous": "anterior", + "next": "próximo", + "hours": "horas", + "minutes": "minutos", + "seconds": "segundos", + "unknown": "desconhecido", + "amPm": [ + "am", + "pm" + ], + "weekdays": [ + "Seg", + "Ter", + "Qua", + "Qui", + "Sex", + "Sáb", + "Dom" + ], + "months": [ + "Janeiro", + "Fevereiro", + "Março", + "Abril", + "Maio", + "Junho", + "Julho", + "Agosto", + "Setembro", + "Outubro", + "Novembro", + "Dezembro" + ] + } } \ No newline at end of file diff --git a/i18n/sq.json b/i18n/sq.json index 1c191ec..3ef1937 100644 --- a/i18n/sq.json +++ b/i18n/sq.json @@ -1,40 +1,39 @@ { - "emptyTable": "Nuk ka asnjë të dhënë në tabele", - "info": "Duke treguar _START_ deri _END_ prej _TOTAL_ reshtave", - "infoEmpty": "Duke treguar 0 deri 0 prej 0 reshtave", - "infoFiltered": "(të filtruara nga gjithësej _MAX_ reshtave)", "infoThousands": ",", - "lengthMenu": "Shiko _MENU_ reshta", "search": "Kërkoni:", - "zeroRecords": "Asnjë e dhënë nuk u gjet", "paginate": { "first": "E para", "last": "E Fundit", "next": "Tjetra", "previous": "E Kaluara" }, - "aria": { - "sortAscending": ": aktivizo për të sortuar kolumnin me vlera në ngritje", - "sortDescending": ": aktivizo për të sortuar kolumnin me vlera në zbritje" - }, "autoFill": { - "cancel": "Anull", - "fill": "Ploteso", - "fillHorizontal": "Ploteso rrjeshtat", - "fillVertical": "Ploteso kolonat", - "info": "Info" + "info": "Info", + "cancel": "Anullo", + "fill": "Plotëso", + "fillHorizontal": "Plotëso rreshtat", + "fillVertical": "Plotëso kolonat" }, "buttons": { - "collection": "Te Dhenat", - "colvis": "Shfaq Kolonat", - "colvisRestore": "Rikthe Shfaqje", "copy": "Kopjo", - "copyKeys": "Shtyp _ctr ose _⌘ + _C per te kopjuar te dhenat ne Clipboard. Per te Anulluar kliko mesazhin ose shtyp buton 'Escape'.", - "copyTitle": "Kopjo ne Clipboard", "csv": "CSV", "excel": "EXCEL", "pdf": "PDF", - "print": "Printo" + "print": "Printo", + "collection": "Të dhënat", + "colvis": "Shfaq kolonat", + "colvisRestore": "Rikthe shfaqjen", + "copyKeys": "Shtyp _ctr ose _⌘ + _C për të kopjuar të dhënat në Clipboard. Për të anulluar, kliko mesazhin ose shtyp butonin 'Escape'.", + "copySuccess": { + "_": "U kopjuan %d rreshta në clipboard", + "1": "U kojua 1 rresht në clipboard" + }, + "copyTitle": "Kopjo në Clipboard", + "pageLength": { + "_": "Shfaq %d rreshta", + "-1": "Shfaq të gjithë rreshtat", + "1": "Shfaq 1 rresht" + } }, "datetime": { "amPm": [ @@ -43,23 +42,154 @@ ], "hours": "Ora", "minutes": "Minuta", - "next": "perpara", - "previous": "prapa", "seconds": "Sekonda", - "unknown": "unknown", + "months": { + "0": "Janar", + "1": "Shkurt", + "10": "Nëntor", + "11": "Dhjetor", + "2": "Mars", + "3": "Prill", + "4": "Maj", + "5": "Qershor", + "6": "Korrik", + "7": "Gusht", + "8": "Shtator", + "9": "Tetor" + }, + "next": "Përpara", + "previous": "Prapa", + "unknown": "-", "weekdays": [ - "Hene", - "Marte ", - "Merkure", - "Enjte", - "Premte", - "Shtune" + "E hëne", + "E martë", + "E mërkurë", + "E enjte", + "E premte", + "E shtunë", + "E diel" ] }, - "decimal": "dhjeteshifror", - "infoPostFix": "infoPostFix", - "loadingRecords": "Po merren te dhenat...", "processing": "Po procesohen...", - "searchPlaceholder": "Shkruaj ç'po kerkon", - "thousands": "," + "thousands": ",", + "aria": { + "sortAscending": ": aktivizo për të renditur kolonën me vlera në ngritje", + "sortDescending": ": aktivizo për të renditur kolonën me vlera në zbritje" + }, + "decimal": ",", + "editor": { + "close": "Mbyll", + "create": { + "button": "Krijo", + "submit": "Krijojeni", + "title": "Krijo rekord të ri" + }, + "edit": { + "button": "Modifiko", + "submit": "Modifikojeni", + "title": "Modifiko një të dhënë ekzistuese" + }, + "error": { + "system": "Ka ndodhur një gabim në sistem. (Më shumë informacion<\\\/a>).<\/a>" + }, + "multi": { + "restore": "Zhbëj ndryshimet", + "title": "Vlera të shumëfishta" + }, + "remove": { + "button": "Fshi", + "confirm": { + "_": "Jeni i sigurë që doni të fshini %d rreshta?", + "1": "Jeni i sigurë që doni të fshini 1 rresht?" + }, + "submit": "Fshijeni", + "title": "Fshi" + } + }, + "emptyTable": "Nuk ka asnjë të dhënë në tabelë", + "info": "Duke treguar _START_ deri _END_ prej _TOTAL_ rreshtave", + "infoEmpty": "Duke treguar 0 deri 0 prej 0 rreshtave", + "infoFiltered": "(të filtruara prej gjithsej _MAX_ reshtave)", + "infoPostFix": " ", + "lengthMenu": "Shfaq _MENU_ rreshta", + "loadingRecords": "Po merren te dhënat...", + "searchBuilder": { + "add": "Shto kusht", + "button": { + "_": "Nderto logjikë kërkimi (%d)", + "0": "Nderto logjikë kërkimi" + }, + "clearAll": "Pastro të gjitha", + "condition": "Kusht", + "conditions": { + "array": { + "contains": "përmban", + "empty": "bosh", + "equals": "i\/e barabartë", + "not": "jo", + "notEmpty": "jo bosh", + "without": "pa" + }, + "date": { + "after": "pas", + "before": "para", + "between": "ndërmjet", + "empty": "bosh", + "equals": "i\/e barabartë", + "not": "jo", + "notBetween": "jo ndërmjet", + "notEmpty": "jo bosh" + }, + "number": { + "between": "ndërmjet", + "empty": "bosh", + "equals": "i\/e barabartë\"", + "gt": "më i\/e madh\/e se", + "gte": "më i\/e madh\/e ose i\/e barabartë me", + "lt": "më i\/e vogël se", + "lte": "më i\/e madh\/e ose i\/e barabartë me", + "not": "jo", + "notBetween": "jo ndërmjet", + "notEmpty": "jo bosh" + }, + "string": { + "contains": "përmban", + "empty": "bosh", + "endsWith": "mbaron me", + "equals": "i\/e barabartë", + "not": "jo", + "notEmpty": "jo bosh", + "startsWith": "fillon me" + } + }, + "data": "Të dhëna", + "deleteTitle": "Fshi rregullin e filtrimit", + "logicAnd": "Edhe", + "logicOr": "Ose", + "title": { + "_": "Logjikë kërkimi (%d)", + "0": "Logjikë kërkimi" + }, + "value": "Vlera" + }, + "searchPanes": { + "clearMessage": "Pastro të gjitha", + "count": "{total}", + "countFiltered": "{shown} ({total})", + "title": "Filtra aktivë - %d" + }, + "searchPlaceholder": "Shkruaj ç'po kërkon", + "select": { + "_": "%d rreshta të zgjedhur", + "1": "1 rresht i zgjedhur", + "cells": { + "_": "%d qeliza të zgjedhura", + "1": "1 qelizë e zgjedhur" + }, + "columns": { + "_": "%d kolona të zgjedhura", + "1": "1 kolonë e zgjedhur" + } + }, + "zeroRecords": "Nuk u gjet asnjë e dhënë" } \ No newline at end of file diff --git a/i18n/tr.json b/i18n/tr.json index 672b0bc..4ba183e 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -152,7 +152,30 @@ "next": "Sonraki", "previous": "Önceki", "seconds": "Saniye", - "unknown": "Bilinmeyen" + "unknown": "Bilinmeyen", + "weekdays": { + "6": "Paz", + "5": "Cmt", + "4": "Cum", + "3": "Per", + "2": "Çar", + "1": "Sal", + "0": "Pzt" + }, + "months": { + "9": "Ekim", + "8": "Eylül", + "7": "Ağustos", + "6": "Temmuz", + "5": "Haziran", + "4": "Mayıs", + "3": "Nisan", + "2": "Mart", + "11": "Aralık", + "10": "Kasım", + "1": "Şubat", + "0": "Ocak" + } }, "decimal": ",", "editor": { From 8c0bc8c5cea027f7592ce3431c94274e4df19b1f Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Fri, 23 Jul 2021 16:44:05 +0100 Subject: [PATCH 06/36] i18n: Remove `0` from select (rows) to match English --- i18n/ar.json | 1 - i18n/ca.json | 1 - i18n/co.json | 1 - i18n/fa.json | 1 - i18n/fi.json | 1 - i18n/fr_fr.json | 1 - i18n/id.json | 23 +++++++++++++++++++++++ i18n/it_it.json | 3 +-- i18n/nl_nl.json | 1 - i18n/pt_br.json | 1 - i18n/ru.json | 1 - i18n/sl.json | 1 - i18n/tg.json | 1 - i18n/tr.json | 3 +-- i18n/uz_cr.json | 1 - 15 files changed, 25 insertions(+), 16 deletions(-) diff --git a/i18n/ar.json b/i18n/ar.json index 6ff9a71..1f9ed8f 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -21,7 +21,6 @@ "select": { "rows": { "_": "%d قيمة محددة", - "0": "", "1": "1 قيمة محددة" }, "1": "%d سطر محدد", diff --git a/i18n/ca.json b/i18n/ca.json index 4f08815..9d5470b 100644 --- a/i18n/ca.json +++ b/i18n/ca.json @@ -43,7 +43,6 @@ "select": { "rows": { "_": "%d files seleccionades", - "0": "Cap fila seleccionada", "1": "1 fila seleccionada" }, "_": "%d files seleccionades", diff --git a/i18n/co.json b/i18n/co.json index 86c0fc9..b413eab 100644 --- a/i18n/co.json +++ b/i18n/co.json @@ -20,7 +20,6 @@ "search": "Circà :", "select": { "rows": { - "0": "Nisuna linea selezziunata", "1": "1 linea selezziunata", "_": "%d linee selezziunate" } diff --git a/i18n/fa.json b/i18n/fa.json index e6d50fe..d6976ed 100644 --- a/i18n/fa.json +++ b/i18n/fa.json @@ -117,7 +117,6 @@ "_": "%d ستون انتخاب شد" }, "rows": { - "0": "%d ردیف انتخاب شد", "1": "1ردیف انتخاب شد", "_": "%d انتخاب شد" } diff --git a/i18n/fi.json b/i18n/fi.json index 8e78f05..fba6a62 100644 --- a/i18n/fi.json +++ b/i18n/fi.json @@ -21,7 +21,6 @@ "select": { "rows": { "_": "Valittuna %d riviä", - "0": "Klikkaa riviä valitaksesi sen", "1": "Valittuna vain yksi rivi" } }, diff --git a/i18n/fr_fr.json b/i18n/fr_fr.json index f64abdd..5738bbe 100644 --- a/i18n/fr_fr.json +++ b/i18n/fr_fr.json @@ -17,7 +17,6 @@ "select": { "rows": { "_": "%d lignes sélectionnées", - "0": "Aucune ligne sélectionnée", "1": "1 ligne sélectionnée" }, "1": "1 ligne selectionnée", diff --git a/i18n/id.json b/i18n/id.json index 8d7f501..b6d9ae3 100644 --- a/i18n/id.json +++ b/i18n/id.json @@ -143,6 +143,29 @@ "amPm": [ "am", "pm" + ], + "weekdays": [ + "Min", + "Sen", + "Sel", + "Rab", + "Kam", + "Jum", + "Sab" + ], + "months": [ + "Januari", + "Februari", + "Maret", + "April", + "Mei", + "Juni", + "Juli", + "Agustus", + "September", + "Oktober", + "November", + "Desember" ] }, "editor": { diff --git a/i18n/it_it.json b/i18n/it_it.json index 45f84b8..8b4e35e 100644 --- a/i18n/it_it.json +++ b/i18n/it_it.json @@ -134,8 +134,7 @@ }, "rows": { "1": "1 riga selezionata", - "_": "%d righe selezionate", - "0": "%d righe selezionate" + "_": "%d righe selezionate" }, "0": "Nessuna riga selezionata", "2": "%d righe selezionate" diff --git a/i18n/nl_nl.json b/i18n/nl_nl.json index e65e420..3a50b1f 100644 --- a/i18n/nl_nl.json +++ b/i18n/nl_nl.json @@ -131,7 +131,6 @@ "_": "%d kolommen geselecteerd" }, "rows": { - "0": "%d rijen geselecteerd", "1": "1 rij geselecteerd", "_": "%d rijen geselecteerd" }, diff --git a/i18n/pt_br.json b/i18n/pt_br.json index b23af48..18fc2f4 100644 --- a/i18n/pt_br.json +++ b/i18n/pt_br.json @@ -21,7 +21,6 @@ "select": { "rows": { "_": "Selecionado %d linhas", - "0": "Nenhuma linha selecionada", "1": "Selecionado 1 linha" }, "1": "%d linha selecionada", diff --git a/i18n/ru.json b/i18n/ru.json index d9ad8ca..118f4c6 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -21,7 +21,6 @@ "select": { "rows": { "_": "Выбрано записей: %d", - "0": "Кликните по записи для выбора", "1": "Выбрана одна запись" }, "1": "%d ряд выбран", diff --git a/i18n/sl.json b/i18n/sl.json index 527dbf0..f30ff54 100644 --- a/i18n/sl.json +++ b/i18n/sl.json @@ -18,7 +18,6 @@ }, "rows": { "1": "1 izbrana vrstica", - "0": "0 izbranih vrstic", "_": "2 izbrane vrstice" }, "1": "%d izbrana vrstica", diff --git a/i18n/tg.json b/i18n/tg.json index 87f4bad..122d3d2 100644 --- a/i18n/tg.json +++ b/i18n/tg.json @@ -21,7 +21,6 @@ "select": { "rows": { "_": "Сабтҳо интихобшуда: %d", - "0": "Барои интихоб сабтро пахш намоед", "1": "Як сабт интихоб шудааст" } } diff --git a/i18n/tr.json b/i18n/tr.json index 4ba183e..4a881ce 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -22,8 +22,7 @@ "select": { "rows": { "_": "%d kayıt seçildi", - "1": "1 kayıt seçildi", - "0": "-" + "1": "1 kayıt seçildi" }, "0": "-", "1": "%d satır seçildi", diff --git a/i18n/uz_cr.json b/i18n/uz_cr.json index 0005f46..d51f5f2 100644 --- a/i18n/uz_cr.json +++ b/i18n/uz_cr.json @@ -153,7 +153,6 @@ }, "rows": { "_": "%d та сатр танланди", - "0": "%d та сатр танланди", "1": "1 та сатр танланди" } }, From ab86a825cbe837c9caea216117cc2c17047d1dab Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Fri, 23 Jul 2021 17:02:32 +0100 Subject: [PATCH 07/36] i18n: Remove translation strings where English is a default empty string, to ensure they match DD-2047 --- i18n/Ganda.json | 6 ------ i18n/af.json | 5 ----- i18n/ar.json | 4 ---- i18n/az_az.json | 3 --- i18n/bg.json | 5 +---- i18n/bs_BA.json | 2 -- i18n/ca.json | 4 +--- i18n/cs.json | 24 ++++++++++-------------- i18n/da.json | 15 ++++----------- i18n/de_de.json | 8 +------- i18n/el.json | 10 ++-------- i18n/en-gb.json | 2 -- i18n/es-ar.json | 1 - i18n/es-cl.json | 8 ++------ i18n/es-mx.json | 3 --- i18n/es_es.json | 3 --- i18n/eu.json | 4 ---- i18n/fa.json | 6 +----- i18n/fr_fr.json | 7 +------ i18n/gl.json | 3 +-- i18n/he.json | 6 +----- i18n/hr.json | 3 --- i18n/hu.json | 4 ---- i18n/id.json | 4 ---- i18n/id_alt.json | 1 - i18n/is.json | 7 ++----- i18n/it_it.json | 12 ++---------- i18n/kk.json | 3 +-- i18n/ko.json | 4 +--- i18n/lt.json | 3 +-- i18n/mk.json | 3 +-- i18n/nl_nl.json | 13 +++---------- i18n/no_nb.json | 9 ++------- i18n/pl.json | 7 +------ i18n/pt_br.json | 7 +------ i18n/pt_pt.json | 6 +----- i18n/ro.json | 1 - i18n/ru.json | 8 ++------ i18n/sk.json | 8 ++------ i18n/sl.json | 10 ++-------- i18n/sq.json | 20 +++++++------------- i18n/sv_se.json | 3 --- i18n/sw.json | 4 +--- i18n/th.json | 9 +++------ i18n/tr.json | 8 -------- i18n/uk.json | 3 --- i18n/ur.json | 3 +-- i18n/uz_cr.json | 8 +------- i18n/vi.json | 7 +------ i18n/zh.json | 9 +-------- i18n/zh_Hant.json | 16 ++++++---------- 51 files changed, 68 insertions(+), 264 deletions(-) diff --git a/i18n/Ganda.json b/i18n/Ganda.json index 8679c1f..2efeceb 100644 --- a/i18n/Ganda.json +++ b/i18n/Ganda.json @@ -8,11 +8,5 @@ "buttons": { "colvis": "endabikaYolunyilili", "copy": "Koppa" - }, - "select": { - "0": "0", - "1": "1", - "2": "2", - "_": "-" } } \ No newline at end of file diff --git a/i18n/af.json b/i18n/af.json index b012ed6..384149f 100644 --- a/i18n/af.json +++ b/i18n/af.json @@ -38,11 +38,6 @@ "condition": "Voorwaardes", "data": "Data" }, - "select": [ - "0", - "1", - "2" - ], "thousands": "duisende", "zeroRecords": "Geen gevind" } \ No newline at end of file diff --git a/i18n/ar.json b/i18n/ar.json index 1f9ed8f..6c1f427 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -23,8 +23,6 @@ "_": "%d قيمة محددة", "1": "1 قيمة محددة" }, - "1": "%d سطر محدد", - "_": "%d أسطر محددة", "cells": { "1": "1 خلية محددة", "_": "%d خلايا محددة" @@ -56,7 +54,6 @@ }, "autoFill": { "cancel": "إلغاء", - "info": "مثال عن الملئ التلقائي", "fill": "املأ جميع الحقول بـ %d<\\\/i><\/i>", "fillHorizontal": "تعبئة الحقول أفقيًا", "fillVertical": "تعبئة الحقول عموديا" @@ -122,7 +119,6 @@ "loadMessage": "جارِ التحميل ...", "title": "الفلاتر النشطة" }, - "searchPlaceholder": "ابحث ...", "infoThousands": ",", "datetime": { "previous": "السابق", diff --git a/i18n/az_az.json b/i18n/az_az.json index 1df27ee..b1ae5b9 100644 --- a/i18n/az_az.json +++ b/i18n/az_az.json @@ -119,10 +119,7 @@ "loadMessage": "Axtarış Bölməsi yüklənir ...", "title": "Aktiv filtrlər - %d" }, - "searchPlaceholder": "Axtarış", "select": { - "1": "%d sətir seçildi", - "_": "%d sətir seçildi", "cells": { "1": "1 hücrə seçildi", "_": "%d hücrə seçildi" diff --git a/i18n/bg.json b/i18n/bg.json index 7e04273..fdffd82 100644 --- a/i18n/bg.json +++ b/i18n/bg.json @@ -92,8 +92,7 @@ "copyTitle": "Копиране в буфера", "pageLength": { "_": "Покажи %d реда", - "-1": "Покажи всички редове", - "1": "Покажи 1 ред" + "-1": "Покажи всички редове" }, "print": "Принтиране" }, @@ -161,8 +160,6 @@ "emptyTable": "Няма налични данни в таблицата", "loadingRecords": "Зареждане...", "select": { - "_": "%d избрани реда", - "1": "%d избран ред", "cells": { "_": "%d избрани клетки", "1": "%d избрана клетка" diff --git a/i18n/bs_BA.json b/i18n/bs_BA.json index e2b1bf4..4206e84 100644 --- a/i18n/bs_BA.json +++ b/i18n/bs_BA.json @@ -24,7 +24,6 @@ "excel": "Excel", "pageLength": { "-1": "Prikaži sve redove", - "1": "Prikaži 1 red", "_": "Prikaži %d redova" }, "pdf": "PDF", @@ -62,7 +61,6 @@ "title": "Aktivni filteri - %d" }, "select": { - "_": "Broj odabranih redova: %d ", "cells": { "1": "Odabran je 1 red", "_": "Broj odabranih redova: %d" diff --git a/i18n/ca.json b/i18n/ca.json index 9d5470b..84c8db5 100644 --- a/i18n/ca.json +++ b/i18n/ca.json @@ -45,7 +45,6 @@ "_": "%d files seleccionades", "1": "1 fila seleccionada" }, - "_": "%d files seleccionades", "cells": { "1": "1 fila seleccionada", "_": "%d files seleccionades" @@ -168,6 +167,5 @@ "emptyPanes": "No panells de cerca", "loadMessage": "Carregant panells de cerca", "title": "Filtes actius - %d" - }, - "searchPlaceholder": "Cerca" + } } \ No newline at end of file diff --git a/i18n/cs.json b/i18n/cs.json index b2e95b2..1cbe289 100644 --- a/i18n/cs.json +++ b/i18n/cs.json @@ -70,19 +70,6 @@ }, "deleteTitle": "Smazat filtrovací pravidlo" }, - "select": { - "1": "Vybrán %d záznam", - "2": "Vybrány %d záznamy", - "_": "Vybráno %d záznamů", - "cells": { - "1": "Vybrán 1 záznam", - "_": "Vybráno %d záznamů" - }, - "columns": { - "1": "Vybrán 1 sloupec", - "_": "Vybráno %d sloupců" - } - }, "autoFill": { "cancel": "Zrušit", "fill": "Vyplň všechny buňky textem %d<\/i><\/i>", @@ -101,7 +88,6 @@ "excel": "Excel", "pageLength": { "-1": "Zobrazit všechny řádky", - "1": "Zobrazit 1 řádek", "_": "Zobrazit %d řádků" }, "pdf": "PDF", @@ -122,6 +108,16 @@ "loadMessage": "Načítám Vyhledávací Panely", "title": "Aktivních filtrů - %d" }, + "select": { + "cells": { + "1": "Vybrán 1 záznam", + "_": "Vybráno %d záznamů" + }, + "columns": { + "1": "Vybrán 1 sloupec", + "_": "Vybráno %d sloupců" + } + }, "aria": { "sortAscending": "Aktivujte pro seřazení vzestupně", "sortDescending": "Aktivujte pro seřazení sestupně" diff --git a/i18n/da.json b/i18n/da.json index 6c75a38..807e93e 100644 --- a/i18n/da.json +++ b/i18n/da.json @@ -19,8 +19,7 @@ "fill": "Fyld alle celler med %d<\/i><\/i>", "fillHorizontal": "Fyld celler horisontalt", "fillVertical": "Fyld celler vertikalt", - "cancel": "Annuller", - "info": "Eksempel" + "cancel": "Annuller" }, "buttons": { "copy": "Kopi", @@ -29,8 +28,7 @@ "excel": "Excel", "pageLength": { "-1": "Vis alle rækker", - "_": "Vis %d rækker", - "1": "Vis 1 række" + "_": "Vis %d rækker" }, "pdf": "PDF", "print": "Udskriv", @@ -46,8 +44,6 @@ "emptyTable": "Ingen data tilgængelige i tabellen", "infoThousands": ".", "select": { - "1": "%d række valgt", - "_": "%d rækker valgt", "cells": { "1": "1 celle valgt", "_": "%d celler valgt" @@ -55,9 +51,7 @@ "columns": { "1": "1 kolonne valgt", "_": "%d kolonner valgt" - }, - "0": "Ingen rækker valgt", - "2": "%d rækker valgt" + } }, "thousands": ".", "decimal": ".", @@ -166,6 +160,5 @@ "logicAnd": "Og", "logicOr": "Eller", "value": "Værdi" - }, - "searchPlaceholder": "Søg" + } } \ No newline at end of file diff --git a/i18n/de_de.json b/i18n/de_de.json index a572647..edadf36 100644 --- a/i18n/de_de.json +++ b/i18n/de_de.json @@ -21,9 +21,6 @@ "_": "%d Zeilen ausgewählt", "1": "1 Zeile ausgewählt" }, - "1": "1 Eintrag ausgewählt", - "2": "2 Einträge ausgewählt", - "_": "%d Einträge ausgewählt", "cells": { "1": "1 Zelle ausgewählt", "_": "%d Zellen ausgewählt" @@ -49,7 +46,6 @@ "excel": "Excel", "pageLength": { "-1": "Alle Zeilen anzeigen", - "1": "Eine Zeile anzeigen", "_": "%d Zeilen anzeigen" }, "pdf": "PDF" @@ -58,8 +54,7 @@ "cancel": "Abbrechen", "fill": "Alle Zellen mit %d füllen<\/i><\/i>", "fillHorizontal": "Alle horizontalen Zellen füllen", - "fillVertical": "Alle vertikalen Zellen füllen", - "info": "Bitte wählen Sie die gewünschte Aktion aus:" + "fillVertical": "Alle vertikalen Zellen füllen" }, "decimal": ",", "search": "Suche:", @@ -136,7 +131,6 @@ "title": "Aktive Filter: %d", "count": "Anzahl" }, - "searchPlaceholder": "Suchbegriff eingeben", "thousands": ".", "zeroRecords": "Keine passenden Einträge gefunden", "lengthMenu": "_MENU_ Zeilen anzeigen", diff --git a/i18n/el.json b/i18n/el.json index 95d9476..d62fc99 100644 --- a/i18n/el.json +++ b/i18n/el.json @@ -9,7 +9,6 @@ "loadingRecords": "Φόρτωση...", "processing": "Επεξεργασία...", "search": "Αναζήτηση:", - "searchPlaceholder": "Αναζήτηση", "thousands": ".", "zeroRecords": "Δεν βρέθηκαν εγγραφές που να ταιριάζουν", "paginate": { @@ -26,8 +25,7 @@ "cancel": "Ακύρωση", "fill": "Γέμισμα όλων των κελιών με %d<\/i><\/i>", "fillHorizontal": "Γέμισμα κελιών οριζόντια", - "fillVertical": "Γέμισμα κελιών κατακόρυφα", - "info": "Επιλογές γεμίσματος" + "fillVertical": "Γέμισμα κελιών κατακόρυφα" }, "buttons": { "collection": "Συλλογή", @@ -44,8 +42,7 @@ "excel": "Excel", "pageLength": { "_": " Εμφάνιση %d γραμμών", - "-1": "Εμφάνιση όλων των γραμμών", - "1": "Εμφάνιση 1 γραμμής" + "-1": "Εμφάνιση όλων των γραμμών" }, "pdf": "PDF", "print": "Εκτύπωση" @@ -165,9 +162,6 @@ "title": "Ενεργά φίλτρα - %d" }, "select": { - "_": "%d γραμμές επιλέχθηκαν", - "1": "%d γραμμή επιλέχθηκε", - "2": "2 γραμμές επιλέχθηκαν", "cells": { "_": "%d κελιά επιλέχθηκαν", "1": "1 κελί επιλέχθηκε" diff --git a/i18n/en-gb.json b/i18n/en-gb.json index 71f3c0d..2cd0479 100644 --- a/i18n/en-gb.json +++ b/i18n/en-gb.json @@ -120,8 +120,6 @@ "title": "Filters Active - %d" }, "select": { - "1": "%d row selected", - "_": "%d rows selected", "cells": { "1": "1 cell selected", "_": "%d cells selected" diff --git a/i18n/es-ar.json b/i18n/es-ar.json index 24e3335..1af851b 100644 --- a/i18n/es-ar.json +++ b/i18n/es-ar.json @@ -50,7 +50,6 @@ }, "value": "Valor" }, - "searchPlaceholder": "Ingrese caracteres de busqueda", "thousands": ".", "zeroRecords": "No se encontraron registros que coincidan con la búsqueda", "datetime": { diff --git a/i18n/es-cl.json b/i18n/es-cl.json index 5314358..22b85f8 100644 --- a/i18n/es-cl.json +++ b/i18n/es-cl.json @@ -7,8 +7,7 @@ "cancel": "Cancelar", "fill": "Llenar todas las celdas con %d<\\\/i><\/i>", "fillHorizontal": "Llenar celdas horizontalmente", - "fillVertical": "Llenar celdas verticalmente", - "info": "Ejemplos de autollenado" + "fillVertical": "Llenar celdas verticalmente" }, "buttons": { "collection": "Colección <\/span>", @@ -25,8 +24,7 @@ "excel": "Excel", "pageLength": { "_": "Mostrar %ds registros", - "-1": "Mostrar todos los registros", - "1": "Mostrar un registro" + "-1": "Mostrar todos los registros" }, "pdf": "PDF", "print": "Imprimir" @@ -186,8 +184,6 @@ "title": "Filtros activos - %d" }, "select": { - "_": "%d registros seleccionados", - "1": "%d registro seleccionados", "cells": { "_": "%d celdas seleccionadas", "1": "Una celda seleccionada" diff --git a/i18n/es-mx.json b/i18n/es-mx.json index 29af4fb..e4317c6 100644 --- a/i18n/es-mx.json +++ b/i18n/es-mx.json @@ -24,7 +24,6 @@ "excel": "Excel", "pageLength": { "-1": "Mostrar todas las filas", - "1": "Mostrar 1 fila", "_": "Mostrar %d filas" }, "pdf": "PDF", @@ -120,8 +119,6 @@ "countFiltered": "{shown} ({total})" }, "select": { - "1": "%d fila seleccionada", - "_": "%d filas seleccionadas", "cells": { "1": "1 celda seleccionada", "_": "$d celdas seleccionadas" diff --git a/i18n/es_es.json b/i18n/es_es.json index 53595b1..649c8aa 100644 --- a/i18n/es_es.json +++ b/i18n/es_es.json @@ -33,7 +33,6 @@ "excel": "Excel", "pageLength": { "-1": "Mostrar todas las filas", - "1": "Mostrar 1 fila", "_": "Mostrar %d filas" }, "pdf": "PDF", @@ -120,8 +119,6 @@ "title": "Filtros Activos - %d" }, "select": { - "1": "%d fila seleccionada", - "_": "%d filas seleccionadas", "cells": { "1": "1 celda seleccionada", "_": "$d celdas seleccionadas" diff --git a/i18n/eu.json b/i18n/eu.json index 4bcb369..e00b4e9 100644 --- a/i18n/eu.json +++ b/i18n/eu.json @@ -34,7 +34,6 @@ "excel": "Excel", "pageLength": { "-1": "Erakutsi lerro guztiak", - "1": "Erakutsi lerro bat", "_": "Erakutsi %d lerro" }, "pdf": "PDF", @@ -112,10 +111,7 @@ "loadMessage": "Bilaketa panelak kargatzen...", "title": "Aktibo dauden filtroak - %d" }, - "searchPlaceholder": "Idatzi hemen bilatu nahi duzun testua", "select": { - "1": "Lerro %d aukeratuta", - "_": "%d lerro aukeratuta", "cells": { "1": "Gelaxka 1 aukeratuta", "_": "%d gelaxka aukeratuta" diff --git a/i18n/fa.json b/i18n/fa.json index d6976ed..e80588d 100644 --- a/i18n/fa.json +++ b/i18n/fa.json @@ -22,8 +22,7 @@ "cancel": "انصراف", "fill": "پر کردن همه سلول ها با ساختار سیستم", "fillHorizontal": "پر کردن سلول های افقی", - "fillVertical": "پرکردن سلول های عمودی", - "info": "نمونه اطلاعات پرکردن خودکار" + "fillVertical": "پرکردن سلول های عمودی" }, "buttons": { "collection": "مجموعه", @@ -38,7 +37,6 @@ "excel": "اکسل", "pageLength": { "-1": "نمایش همه ردیف‌ها", - "1": "نمایش 1 ردیف", "_": "نمایش %d ردیف" }, "print": "چاپ", @@ -106,8 +104,6 @@ "value": "مقدار" }, "select": { - "1": "%d ردیف انتخاب شد", - "_": "%d ردیف انتخاب شد", "cells": { "1": "1 سلول انتخاب شد", "_": "%d سلول انتخاب شد" diff --git a/i18n/fr_fr.json b/i18n/fr_fr.json index 5738bbe..05f0cfd 100644 --- a/i18n/fr_fr.json +++ b/i18n/fr_fr.json @@ -19,8 +19,6 @@ "_": "%d lignes sélectionnées", "1": "1 ligne sélectionnée" }, - "1": "1 ligne selectionnée", - "_": "%d lignes selectionnées", "cells": { "1": "1 cellule sélectionnée", "_": "%d cellules sélectionnées" @@ -34,8 +32,7 @@ "cancel": "Annuler", "fill": "Remplir toutes les cellules avec %d<\/i>", "fillHorizontal": "Remplir les cellules horizontalement", - "fillVertical": "Remplir les cellules verticalement", - "info": "Exemple de remplissage automatique" + "fillVertical": "Remplir les cellules verticalement" }, "searchBuilder": { "conditions": { @@ -123,7 +120,6 @@ "excel": "Excel", "pageLength": { "-1": "Afficher toutes les lignes", - "1": "Afficher 1 ligne", "_": "Afficher %d lignes" }, "pdf": "PDF", @@ -134,7 +130,6 @@ "infoEmpty": "Affichage de 0 à 0 sur 0 éléments", "infoThousands": ".", "search": "Rechercher:", - "searchPlaceholder": "...", "thousands": ".", "infoFiltered": "(filtrés depuis un total de _MAX_ éléments)", "datetime": { diff --git a/i18n/gl.json b/i18n/gl.json index 10edc7f..743ea37 100644 --- a/i18n/gl.json +++ b/i18n/gl.json @@ -22,8 +22,7 @@ "cancel": "Cancelar", "fill": "Rechea todas as celas con %d<\/i>", "fillHorizontal": "Rechea celas horizontamente", - "fillVertical": "Rechea celas verticalmente", - "info": "Exemplo de recheado" + "fillVertical": "Rechea celas verticalmente" }, "buttons": { "collection": "Colección", diff --git a/i18n/he.json b/i18n/he.json index 1edf7cd..bf642c8 100644 --- a/i18n/he.json +++ b/i18n/he.json @@ -24,7 +24,6 @@ "loadMessage": "מסנני חיפוש בטעינה", "title": "מסננים פעילים - %d" }, - "searchPlaceholder": "חיפוש...", "aria": { "sortAscending": "מיון בסדר עולה", "sortDescending": "מיון בסדר יורד" @@ -33,8 +32,7 @@ "cancel": "ביטול", "fill": "מלא את כל התאים עם %d<\/i><\/i>", "fillHorizontal": "מלא תאים מאוזן", - "fillVertical": "מלא תאים מאונך", - "info": "פרטים" + "fillVertical": "מלא תאים מאונך" }, "buttons": { "collection": "קולקציה", @@ -50,7 +48,6 @@ "excel": "Excel", "pageLength": { "-1": "הצג את כל הרשומות", - "1": "הצג רשומה 1", "_": "הצג %d רשומות" }, "pdf": "PDF", @@ -163,7 +160,6 @@ "value": "ערך" }, "select": { - "_": "%d רשומות נבחרו", "cells": { "1": "תא אחד נבחר", "_": "%d תאים נבחרו" diff --git a/i18n/hr.json b/i18n/hr.json index b3442f2..f342c97 100644 --- a/i18n/hr.json +++ b/i18n/hr.json @@ -39,7 +39,6 @@ "print": "Isprintaj", "pageLength": { "-1": "Prikaži sve redove", - "1": "Prikaži 1 red", "_": "Prikaži %d redova" } }, @@ -53,8 +52,6 @@ "title": "Filtera aktivno - %d" }, "select": { - "_": "%d redova odabrano", - "1": "%d red odabran", "cells": { "_": "%d ćelija odabrano", "1": "1 ćelija odabrana" diff --git a/i18n/hu.json b/i18n/hu.json index b5871b6..829aed7 100644 --- a/i18n/hu.json +++ b/i18n/hu.json @@ -24,8 +24,6 @@ "_": "%d sor kiválasztva", "1": "1 sor kiválasztva" }, - "1": "%d sor kiválasztva", - "_": "%d sor kiválasztva", "cells": { "1": "1 cella kiválasztva", "_": "%d cella kiválasztva" @@ -50,7 +48,6 @@ "excel": "Excel", "pageLength": { "-1": "Összes sor megjelenítése", - "1": "1 sor megjelenítése", "_": "%d sor megjelenítése" }, "pdf": "PDF", @@ -125,7 +122,6 @@ "loadMessage": "Szűrőpanelek betöltése", "title": "Aktív szűrőpanelek: %d" }, - "searchPlaceholder": "keresés", "datetime": { "previous": "Előző", "next": "Következő", diff --git a/i18n/id.json b/i18n/id.json index b6d9ae3..bfaef69 100644 --- a/i18n/id.json +++ b/i18n/id.json @@ -39,7 +39,6 @@ "excel": "Excel", "pageLength": { "-1": "Tampilkan semua baris", - "1": "Tampilkan 1 baris", "_": "Tampilkan %d baris" }, "pdf": "PDF", @@ -120,10 +119,7 @@ "loadMessage": "Memuat Panel Pencarian" }, "infoThousands": ",", - "searchPlaceholder": "Masukkan kata kunci yang dicari", "select": { - "1": "%d baris terpilih", - "_": "%d baris terpilih", "cells": { "1": "1 sel terpilih", "_": "%d sel terpilih" diff --git a/i18n/id_alt.json b/i18n/id_alt.json index d316d52..cf8b513 100644 --- a/i18n/id_alt.json +++ b/i18n/id_alt.json @@ -37,7 +37,6 @@ "excel": "Excel", "pageLength": { "-1": "Tampilkan semua row", - "1": "Tampilkan 1 row", "_": "Tampilkan %d row" }, "pdf": "PDF", diff --git a/i18n/is.json b/i18n/is.json index fe954dd..0249b87 100644 --- a/i18n/is.json +++ b/i18n/is.json @@ -23,8 +23,7 @@ "cancel": "Hætta við", "fill": "Setja öll svæði með %d<\/i>", "fillHorizontal": "Setja öll svæði lárétt", - "fillVertical": "Setja öll svæði lóðrétt", - "info": "Nánari upplýsingar" + "fillVertical": "Setja öll svæði lóðrétt" }, "buttons": { "colvis": "Sýnileiki dálka", @@ -40,8 +39,7 @@ "excel": "Escel", "pageLength": { "_": "Sýna %d línur", - "-1": "Sýna allar línur", - "1": "Sýna eina línu" + "-1": "Sýna allar línur" }, "pdf": "PDF", "print": "Prenta" @@ -80,6 +78,5 @@ "title": "Eyða" } }, - "infoPostFix": "Færsla _START_ til _END_ af samtals _TOTAL_ ", "thousands": "." } \ No newline at end of file diff --git a/i18n/it_it.json b/i18n/it_it.json index 8b4e35e..015ce4f 100644 --- a/i18n/it_it.json +++ b/i18n/it_it.json @@ -18,8 +18,7 @@ "cancel": "Annulla", "fill": "Riempi tutte le celle con %d<\/i>", "fillHorizontal": "Riempi celle orizzontalmente", - "fillVertical": "Riempi celle verticalmente", - "info": "Informazioni" + "fillVertical": "Riempi celle verticalmente" }, "buttons": { "collection": "Collezione <\/span>", @@ -36,7 +35,6 @@ "excel": "Excel", "pageLength": { "-1": "Mostra tutte le righe", - "1": "Mostra 1 riga", "_": "Mostra %d righe" }, "pdf": "PDF", @@ -46,7 +44,6 @@ "emptyTable": "Nessun dato disponibile nella tabella", "info": "Risultati da _START_ a _END_ di _TOTAL_ elementi", "infoEmpty": "Risultati da 0 a 0 di 0 elementi", - "infoPostFix": "Risultati da _START_ a _END_ di _TOTAL_ elementi", "lengthMenu": "Mostra _MENU_ elementi", "searchBuilder": { "add": "Aggiungi Condizione", @@ -122,8 +119,6 @@ "title": "Filtri Attivi - %d" }, "select": { - "1": "%d riga selezionata", - "_": "%d righe selezionate", "cells": { "1": "1 cella selezionata", "_": "%d celle selezionate" @@ -135,9 +130,7 @@ "rows": { "1": "1 riga selezionata", "_": "%d righe selezionate" - }, - "0": "Nessuna riga selezionata", - "2": "%d righe selezionate" + } }, "zeroRecords": "Nessun elemento corrispondente trovato", "datetime": { @@ -206,6 +199,5 @@ "title": "Rimuovi" } }, - "searchPlaceholder": "Valore di esempio", "thousands": "." } \ No newline at end of file diff --git a/i18n/kk.json b/i18n/kk.json index 19dc9da..2a91ca2 100644 --- a/i18n/kk.json +++ b/i18n/kk.json @@ -28,6 +28,5 @@ "colvis": "Баған көрнісі", "colvisRestore": "Қалпына келтіру", "copy": "Нұсқалау" - }, - "searchPlaceholder": "Үлгі" + } } \ No newline at end of file diff --git a/i18n/ko.json b/i18n/ko.json index 0c6d4d4..e5f04d1 100644 --- a/i18n/ko.json +++ b/i18n/ko.json @@ -30,7 +30,6 @@ "excel": "엑설", "pageLength": { "-1": "모든 행 보기", - "1": "1행 보기", "_": "%d행 보기" }, "pdf": "PDF", @@ -62,7 +61,6 @@ "cancel": "취소", "fill": "모든 셀에서 %d을(를) 삽입<\/i><\/i>", "fillHorizontal": "수평 셀에서 값을 삽입", - "fillVertical": "수직 설에서 값을 삽입", - "info": "자동삽입 샘플 정보" + "fillVertical": "수직 설에서 값을 삽입" } } \ No newline at end of file diff --git a/i18n/lt.json b/i18n/lt.json index 6a76344..6d43e6b 100644 --- a/i18n/lt.json +++ b/i18n/lt.json @@ -15,6 +15,5 @@ "previous": "Ankstesnis", "next": "Tolimesnis", "last": "Paskutinis" - }, - "searchPlaceholder": "Ieškoti" + } } \ No newline at end of file diff --git a/i18n/mk.json b/i18n/mk.json index da04dd5..d13ac7c 100644 --- a/i18n/mk.json +++ b/i18n/mk.json @@ -31,7 +31,6 @@ "cancel": "Откажи", "fill": "Пополни ги сите келии со $d<\/i>", "fillHorizontal": "Пополни ги хоризонталните ќелии", - "fillVertical": "Пополни ги вертикалните ќелии", - "info": "Пример за AutoFill опции" + "fillVertical": "Пополни ги вертикалните ќелии" } } \ No newline at end of file diff --git a/i18n/nl_nl.json b/i18n/nl_nl.json index 3a50b1f..338af62 100644 --- a/i18n/nl_nl.json +++ b/i18n/nl_nl.json @@ -20,8 +20,7 @@ "fill": "Vul alle cellen met %d<\/i>", "fillHorizontal": "Vul cellen horizontaal", "fillVertical": "Vul cellen verticaal", - "cancel": "Annuleren", - "info": "Informatie" + "cancel": "Annuleren" }, "buttons": { "colvis": "Kolom zichtbaarheid", @@ -36,8 +35,7 @@ "excel": "Excel", "pageLength": { "-1": "Toon alle regels", - "_": "Toon %d regels", - "1": "Toon 1 regel" + "_": "Toon %d regels" }, "pdf": "PDF", "print": "Print", @@ -120,8 +118,6 @@ "title": "%d filters actief" }, "select": { - "1": "%d rij geselecteerd", - "_": "%d rijen geselecteerd", "cells": { "1": "1 cel geselecteerd", "_": "%d cellen geselecteerd" @@ -133,12 +129,9 @@ "rows": { "1": "1 rij geselecteerd", "_": "%d rijen geselecteerd" - }, - "0": " Geen enkele rij geselecteerd.", - "2": "%d rijen geselecteerd" + } }, "thousands": ".", - "searchPlaceholder": "Zoekterm", "info": "_START_ tot _END_ van _TOTAL_ resultaten", "infoFiltered": " (gefilterd uit _MAX_ resultaten)", "datetime": { diff --git a/i18n/no_nb.json b/i18n/no_nb.json index 05bcccf..058f3d2 100644 --- a/i18n/no_nb.json +++ b/i18n/no_nb.json @@ -18,8 +18,7 @@ "cancel": "Avbryt", "fillHorizontal": "Fyll celler horisontalt", "fillVertical": "Fyll celler vertikalt", - "fill": "Fyll alle celler med %d<\/i>", - "info": "Eksempel autofyll info" + "fill": "Fyll alle celler med %d<\/i>" }, "buttons": { "colvisRestore": "Gjennopprett synlighet", @@ -32,7 +31,6 @@ "excel": "Excel", "pageLength": { "-1": "Vis alle rader", - "1": "Vis 1 Rad", "_": "Vis %d rader" }, "pdf": "PDF", @@ -117,7 +115,6 @@ "title": "Aktive filter - %d" }, "select": { - "_": "%d rader er valgt", "cells": { "1": "1 celle er valgt", "_": "%d celler er valgt" @@ -125,9 +122,7 @@ "columns": { "1": "1 kolonne er valgt", "_": "%d kolonner er valgt" - }, - "1": "%d rad er valgt", - "2": "%d rader er valgt" + } }, "thousands": " ", "info": "Viser _START_ til _END_ av _TOTAL_ oppføringer", diff --git a/i18n/pl.json b/i18n/pl.json index bdb688f..721750a 100644 --- a/i18n/pl.json +++ b/i18n/pl.json @@ -21,8 +21,7 @@ "cancel": "Anuluj", "fill": "Wypełnij wszystkie komórki %d<\/i>", "fillHorizontal": "Wypełnij komórki w poziomie", - "fillVertical": "Wypełnij komórki w pionie", - "info": "Informacje" + "fillVertical": "Wypełnij komórki w pionie" }, "buttons": { "collection": "Zbiór <\/span>", @@ -39,7 +38,6 @@ "excel": "Excel", "pageLength": { "-1": "Pokaż wszystkie wiersze", - "1": "Pokaż 1 wiersz", "_": "Pokaż %d wierszy" }, "pdf": "PDF", @@ -162,10 +160,7 @@ "loadMessage": "Ładuję panele wyszukań", "title": "Aktywne filtry" }, - "searchPlaceholder": "podaj wartość", "select": { - "_": "zaznaczono %d wierszy", - "1": "zaznaczono %d wiersz", "cells": { "_": "zaznaczono %d komórek", "1": "zaznaczono %d komórkę" diff --git a/i18n/pt_br.json b/i18n/pt_br.json index 18fc2f4..5619e24 100644 --- a/i18n/pt_br.json +++ b/i18n/pt_br.json @@ -23,8 +23,6 @@ "_": "Selecionado %d linhas", "1": "Selecionado 1 linha" }, - "1": "%d linha selecionada", - "_": "%d linhas selecionadas", "cells": { "1": "1 célula selecionada", "_": "%d células selecionadas" @@ -32,8 +30,7 @@ "columns": { "1": "1 coluna selecionada", "_": "%d colunas selecionadas" - }, - "0": "Nenhuma linha selecionada" + } }, "buttons": { "copySuccess": { @@ -50,7 +47,6 @@ "excel": "Excel", "pageLength": { "-1": "Mostrar todos os registros", - "1": "Mostrar 1 registro", "_": "Mostrar %d registros" }, "pdf": "PDF", @@ -134,7 +130,6 @@ "loadMessage": "Carregando Painéis de Pesquisa...", "title": "Filtros Ativos" }, - "searchPlaceholder": "Digite um termo para pesquisar", "thousands": ".", "datetime": { "previous": "Anterior", diff --git a/i18n/pt_pt.json b/i18n/pt_pt.json index ca19b33..17a865e 100644 --- a/i18n/pt_pt.json +++ b/i18n/pt_pt.json @@ -19,8 +19,7 @@ "cancel": "cancelar", "fill": "preencher", "fillHorizontal": "preencher células na horizontal", - "fillVertical": "preencher células na vertical", - "info": "Exemplo de Auto Preenchimento" + "fillVertical": "preencher células na vertical" }, "buttons": { "collection": "Coleção", @@ -37,7 +36,6 @@ "excel": "Excel", "pageLength": { "-1": "Mostrar todas as linhas", - "1": "Mostrar 1 linha", "_": "Mostrar %d linhas" }, "pdf": "PDF", @@ -118,8 +116,6 @@ "title": "Filtros ativos" }, "select": { - "1": "%d linha seleccionada", - "_": "%d linhas seleccionadas", "cells": { "1": "1 célula seleccionada", "_": "%d células seleccionadas" diff --git a/i18n/ro.json b/i18n/ro.json index 9e53809..5d87711 100644 --- a/i18n/ro.json +++ b/i18n/ro.json @@ -24,7 +24,6 @@ "excel": "Excel", "pageLength": { "-1": "Arată toate rândurile", - "1": "Arată 1 rând", "_": "Arată %d rânduri" }, "pdf": "PDF", diff --git a/i18n/ru.json b/i18n/ru.json index 118f4c6..22eb90c 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -23,8 +23,6 @@ "_": "Выбрано записей: %d", "1": "Выбрана одна запись" }, - "1": "%d ряд выбран", - "_": "%d ряда(-ов) выбрано", "cells": { "1": "1 ячейка выбрана", "_": "Выбрано %d ячеек" @@ -109,8 +107,7 @@ "buttons": { "pageLength": { "_": "Показать 10 строк", - "-1": "Показать все ряды", - "1": "Показать 1 ряд" + "-1": "Показать все ряды" }, "pdf": "PDF", "print": "Печать", @@ -133,8 +130,7 @@ "cancel": "Отменить", "fill": "Заполнить все ячейки %d<\/i><\/i>", "fillHorizontal": "Заполнить ячейки по горизонтали", - "fillVertical": "Заполнить ячейки по вертикали", - "info": "Пример автозаполнения" + "fillVertical": "Заполнить ячейки по вертикали" }, "datetime": { "previous": "Предыдущий", diff --git a/i18n/sk.json b/i18n/sk.json index fc9f9bd..896dc2c 100644 --- a/i18n/sk.json +++ b/i18n/sk.json @@ -38,8 +38,7 @@ "excel": "Excel", "pageLength": { "-1": "Zobraziť všetky riadky", - "_": "Zobraziť %d riadkov", - "1": "Zobraziť 1 riadok" + "_": "Zobraziť %d riadkov" }, "pdf": "PDF", "print": "Tlačiť", @@ -120,7 +119,6 @@ "title": "Aktívnych Filtrov - %" }, "select": { - "_": "%d vybraných riadkov", "cells": { "1": "1 zvolená bunka", "_": "%d vybraných buniek" @@ -128,9 +126,7 @@ "columns": { "1": "1 vybraný stĺpec", "_": "%d vybraných stĺpcov" - }, - "1": "1 vybraný riadok", - "2": "%d vybrané riadky" + } }, "thousands": " ", "datetime": { diff --git a/i18n/sl.json b/i18n/sl.json index f30ff54..8bfbb8c 100644 --- a/i18n/sl.json +++ b/i18n/sl.json @@ -20,12 +20,10 @@ "1": "1 izbrana vrstica", "_": "2 izbrane vrstice" }, - "1": "%d izbrana vrstica", "cells": { "1": "1 izbrano polje", "_": "%d izbrana polja" - }, - "_": "%d izbrane vrstice" + } }, "thousands": ".", "searchBuilder": { @@ -101,7 +99,6 @@ "title": "Aktivni filtri - %d", "countFiltered": "{shown} ({total})" }, - "searchPlaceholder": "Vnesi iskalni pojem", "buttons": { "copySuccess": { "1": "1 vrstica prekopirana na odložišče.", @@ -112,7 +109,6 @@ "excel": "Excel", "pageLength": { "-1": "Prikaži vse vrstice", - "1": "Prikaži 1 vrstico", "_": "Prikaži %ds vrstic" }, "pdf": "PDF", @@ -124,7 +120,6 @@ "collection": "Zbirka" }, "decimal": ",", - "infoPostFix": "Prikazano 1 do 10 od 57 vnosov", "infoThousands": ".", "paginate": { "first": "Prva", @@ -137,8 +132,7 @@ "cancel": "prekliči", "fill": "napolni", "fillHorizontal": "napolni vodoravno", - "fillVertical": "napolni navpično", - "info": "informacije" + "fillVertical": "napolni navpično" }, "datetime": { "previous": "Prejšnji", diff --git a/i18n/sq.json b/i18n/sq.json index 3ef1937..9a19cd1 100644 --- a/i18n/sq.json +++ b/i18n/sq.json @@ -7,13 +7,6 @@ "next": "Tjetra", "previous": "E Kaluara" }, - "autoFill": { - "info": "Info", - "cancel": "Anullo", - "fill": "Plotëso", - "fillHorizontal": "Plotëso rreshtat", - "fillVertical": "Plotëso kolonat" - }, "buttons": { "copy": "Kopjo", "csv": "CSV", @@ -31,8 +24,7 @@ "copyTitle": "Kopjo në Clipboard", "pageLength": { "_": "Shfaq %d rreshta", - "-1": "Shfaq të gjithë rreshtat", - "1": "Shfaq 1 rresht" + "-1": "Shfaq të gjithë rreshtat" } }, "datetime": { @@ -76,6 +68,12 @@ "sortAscending": ": aktivizo për të renditur kolonën me vlera në ngritje", "sortDescending": ": aktivizo për të renditur kolonën me vlera në zbritje" }, + "autoFill": { + "cancel": "Anullo", + "fill": "Plotëso", + "fillHorizontal": "Plotëso rreshtat", + "fillVertical": "Plotëso kolonat" + }, "decimal": ",", "editor": { "close": "Mbyll", @@ -110,7 +108,6 @@ "info": "Duke treguar _START_ deri _END_ prej _TOTAL_ rreshtave", "infoEmpty": "Duke treguar 0 deri 0 prej 0 rreshtave", "infoFiltered": "(të filtruara prej gjithsej _MAX_ reshtave)", - "infoPostFix": " ", "lengthMenu": "Shfaq _MENU_ rreshta", "loadingRecords": "Po merren te dhënat...", "searchBuilder": { @@ -178,10 +175,7 @@ "countFiltered": "{shown} ({total})", "title": "Filtra aktivë - %d" }, - "searchPlaceholder": "Shkruaj ç'po kërkon", "select": { - "_": "%d rreshta të zgjedhur", - "1": "1 rresht i zgjedhur", "cells": { "_": "%d qeliza të zgjedhura", "1": "1 qelizë e zgjedhur" diff --git a/i18n/sv_se.json b/i18n/sv_se.json index 4502230..033dbe9 100644 --- a/i18n/sv_se.json +++ b/i18n/sv_se.json @@ -39,7 +39,6 @@ "excel": "Excel", "pageLength": { "-1": "Visa alla rader", - "1": "Visa 1 Rad", "_": "Visa %d rader" }, "pdf": "PDF", @@ -121,8 +120,6 @@ "title": "Aktiva Filter - %d" }, "select": { - "1": "Rad %d markerad", - "_": "%d rader markerade", "cells": { "1": "1 cell markerad", "_": "%d celler markerade" diff --git a/i18n/sw.json b/i18n/sw.json index 18a8bde..1133ebc 100644 --- a/i18n/sw.json +++ b/i18n/sw.json @@ -23,8 +23,7 @@ "cancel": "Ghairi", "fill": "Jaza", "fillHorizontal": "Jaza kwa usawa", - "fillVertical": "Jaza kwa wima", - "info": "Maelezo" + "fillVertical": "Jaza kwa wima" }, "buttons": { "collection": "Makusanyiko", @@ -40,7 +39,6 @@ "excel": "Excel", "pageLength": { "-1": "Onyesha safu zote", - "1": "Onyesha safu moja", "_": "Onyesha safu %d" }, "pdf": "PDF", diff --git a/i18n/th.json b/i18n/th.json index 2ff6358..9632b89 100644 --- a/i18n/th.json +++ b/i18n/th.json @@ -21,8 +21,7 @@ "cancel": "ยกเลิก", "fill": "กรอกทุกช่องด้วย", "fillHorizontal": "กรอกตามแนวนอน", - "fillVertical": "กรอกตามแนวตั้ง", - "info": "ข้อมูลเพิ่มเติม" + "fillVertical": "กรอกตามแนวตั้ง" }, "buttons": { "collection": "ชุดข้อมูล", @@ -39,8 +38,7 @@ "excel": "Excel", "pageLength": { "_": "แสดงข้อมูล %d แถว", - "-1": "แสดงข้อมูลทั้งหมด", - "1": "แสดงข้อมูล 1 แถว" + "-1": "แสดงข้อมูลทั้งหมด" }, "pdf": "PDF", "print": "สั่งพิมพ์" @@ -104,6 +102,5 @@ "submit": "ลบข้อมูล", "title": "ลบข้อมูล" } - }, - "searchPlaceholder": "กรอกตัวอักษาที่ต้องการค้นหา" + } } \ No newline at end of file diff --git a/i18n/tr.json b/i18n/tr.json index 4a881ce..4876c42 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -24,10 +24,6 @@ "_": "%d kayıt seçildi", "1": "1 kayıt seçildi" }, - "0": "-", - "1": "%d satır seçildi", - "2": "-", - "_": "%d satır seçildi", "cells": { "1": "1 hücre seçildi", "_": "%d hücre seçildi" @@ -41,7 +37,6 @@ "cancel": "İptal", "fillHorizontal": "Hücreleri yatay olarak doldur", "fillVertical": "Hücreleri dikey olarak doldur", - "info": "-", "fill": "Bütün hücreleri %d<\/i> ile doldur" }, "buttons": { @@ -57,7 +52,6 @@ "excel": "Excel", "pageLength": { "-1": "Bütün satırları göster", - "1": "-", "_": "%d satır göster" }, "pdf": "PDF", @@ -65,7 +59,6 @@ "copy": "Kopyala", "copyKeys": "Tablodaki veriyi kopyalamak için CTRL veya u2318 + C tuşlarına basınız. İptal etmek için bu mesaja tıklayın veya escape tuşuna basın." }, - "infoPostFix": "-", "searchBuilder": { "add": "Koşul Ekle", "button": { @@ -139,7 +132,6 @@ "loadMessage": "Arama Bölmeleri yükleniyor ...", "title": "Etkin filtreler - %d" }, - "searchPlaceholder": "Ara", "thousands": ".", "datetime": { "amPm": [ diff --git a/i18n/uk.json b/i18n/uk.json index 0ec0e4e..75fccd2 100644 --- a/i18n/uk.json +++ b/i18n/uk.json @@ -33,7 +33,6 @@ "excel": "Excel", "pageLength": { "-1": "Показати усі рядки", - "1": "Показати 1 рядок", "_": "Показати %d рядки" }, "pdf": "PDF", @@ -111,8 +110,6 @@ "title": "Активній фільтри - %d" }, "select": { - "1": "%d рядок вибрано", - "_": "%d рядків вибрано", "cells": { "1": "1 клітинку вибрано", "_": "%d клітинок вибрано" diff --git a/i18n/ur.json b/i18n/ur.json index 81b9203..3a324e3 100644 --- a/i18n/ur.json +++ b/i18n/ur.json @@ -20,8 +20,7 @@ "cancel": "منسوخ کریں", "fill": "بھرنا", "fillHorizontal": "افقی پر کریں", - "fillVertical": "عمودی کو بھرنے کے", - "info": "معلومات" + "fillVertical": "عمودی کو بھرنے کے" }, "buttons": { "collection": "جمع" diff --git a/i18n/uz_cr.json b/i18n/uz_cr.json index d51f5f2..395baa9 100644 --- a/i18n/uz_cr.json +++ b/i18n/uz_cr.json @@ -7,8 +7,7 @@ "cancel": "Бекор қил", "fill": "Ҳамма катакни %d<\/i> билан тўлдириш", "fillHorizontal": "Катакларни горизонтал тўлдириш", - "fillVertical": "Катакларни вертикал тўлдириш", - "info": "Автоматик тўлдириш" + "fillVertical": "Катакларни вертикал тўлдириш" }, "buttons": { "colvis": "Устунларни кўрсатиш ", @@ -137,12 +136,7 @@ "loadMessage": "Қидириш панели юкланмоқда...", "title": "Фаол фильтр - %d" }, - "searchPlaceholder": "Қидириш шарти...", "select": { - "_": "та танланди", - "0": "1", - "1": "битта танланди", - "2": "иккита танланди", "cells": { "_": "%d катак танланди", "1": "1 катак танланди" diff --git a/i18n/vi.json b/i18n/vi.json index a0d7dad..2ce6b0b 100644 --- a/i18n/vi.json +++ b/i18n/vi.json @@ -9,8 +9,7 @@ "cancel": "Hủy", "fill": "Điền tất cả ô với %d<\/i>", "fillHorizontal": "Điền theo hàng ngang", - "fillVertical": "Điền theo hàng dọc", - "info": "Mẫu thông tin tự động điền" + "fillVertical": "Điền theo hàng dọc" }, "buttons": { "collection": "Chọn lọc <\/span>", @@ -27,17 +26,13 @@ "excel": "File Excel", "pageLength": { "-1": "Xem tất cả các dòng", - "1": "Hiển thị 1 dòng", "_": "Hiển thị %d dòng" }, "pdf": "File PDF", "print": "In ấn" }, - "infoPostFix": "Đang hiển thị dòng _START_ tới dòng _END_ trong tổng số _TOTAL_ mục", "infoThousands": "`", "select": { - "1": "%d dòng đang được chọn", - "_": "%d dòng đang được chọn", "cells": { "1": "1 ô đang được chọn", "_": "%d ô đang được chọn" diff --git a/i18n/zh.json b/i18n/zh.json index 82833e9..38077bb 100644 --- a/i18n/zh.json +++ b/i18n/zh.json @@ -21,8 +21,7 @@ "cancel": "取消", "fill": "用 %d<\/i> 填充所有单元格", "fillHorizontal": "水平填充单元格", - "fillVertical": "垂直填充单元格", - "info": "自动填充示例" + "fillVertical": "垂直填充单元格" }, "buttons": { "collection": "集合 <\/span>", @@ -40,7 +39,6 @@ }, "pageLength": { "-1": "显示所有行", - "1": "显示 1 行", "_": "显示 %d 行" }, "print": "打印" @@ -97,9 +95,7 @@ "emptyPanes": "没有搜索栏", "loadMessage": "正在加载搜索栏" }, - "searchPlaceholder": "请输入查询关键字", "select": { - "_": "选择了%d行", "cells": { "1": "选择了1个单元格", "_": "选择了%d个单元格" @@ -108,15 +104,12 @@ "1": "选择了1列", "_": "选择了%d列" }, - "0": "没有选中数据行的文字说明", - "1": "选中一行的文字说明", "rows": { "1": "被选中一行的说明", "_": "被选中多行的说明" } }, "decimal": "用于标记小数位的字符", - "infoPostFix": "分页数据信息说明", "infoThousands": "千分数分隔符,默认值是英文逗号", "loadingRecords": "数据加载提示信息,例如:数据加载中...", "thousands": "千位分隔符,默认值是英文逗号" diff --git a/i18n/zh_Hant.json b/i18n/zh_Hant.json index 46e91dc..6046107 100644 --- a/i18n/zh_Hant.json +++ b/i18n/zh_Hant.json @@ -17,17 +17,7 @@ "sortAscending": ": 升冪排列", "sortDescending": ": 降冪排列" }, - "select": { - "1": "%d 列已選擇", - "2": "%d 列已選擇", - "_": "%d 列已選擇", - "rows": { - "_": "%d 列已選擇", - "1": "%d 列已選擇" - } - }, "emptyTable": "目前沒有資料", - "searchPlaceholder": "請輸入關鍵字", "datetime": { "previous": "上一頁", "next": "下一頁", @@ -149,5 +139,11 @@ "emptyPanes": "沒搜尋面版", "loadMessage": "載入搜尋面版中...", "clearMessage": "清空" + }, + "select": { + "rows": { + "_": "%d 列已選擇", + "1": "%d 列已選擇" + } } } \ No newline at end of file From 8852f98e168ab293fcc91bba55b25e007f76623a Mon Sep 17 00:00:00 2001 From: Allan Jardine Date: Wed, 4 Aug 2021 10:44:57 +0100 Subject: [PATCH 08/36] i18n: Latest translations from web-site --- i18n/ar.json | 4 ++-- i18n/es-ar.json | 43 ++++++++++++++++++++++++++++++++++---- i18n/es-mx.json | 55 +++++++++++++++++++++++++++++++++++-------------- i18n/es_es.json | 29 +++++++++++++++++++++++--- i18n/ru.json | 33 +++++++++++++++++++++++++++-- i18n/sk.json | 40 ++++++++++++++++++++++++++++------- 6 files changed, 169 insertions(+), 35 deletions(-) diff --git a/i18n/ar.json b/i18n/ar.json index 6c1f427..6306b0e 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -1,7 +1,6 @@ { "emptyTable": "ليست هناك بيانات متاحة في الجدول", "loadingRecords": "جارٍ التحميل...", - "processing": "جارٍ التحميل...", "lengthMenu": "أظهر _MENU_ مدخلات", "zeroRecords": "لم يعثر على أية سجلات", "info": "إظهار _START_ إلى _END_ من أصل _TOTAL_ مدخل", @@ -183,5 +182,6 @@ "title": "قيم متعدية", "restore": "تراجع" } - } + }, + "processing": "جارٍ المعالجة..." } \ No newline at end of file diff --git a/i18n/es-ar.json b/i18n/es-ar.json index 1af851b..25ba85d 100644 --- a/i18n/es-ar.json +++ b/i18n/es-ar.json @@ -7,8 +7,6 @@ }, "decimal": ",", "emptyTable": "No hay datos disponibles en la Tabla", - "info": "Mostrando _START_ a _END_ de _TOTAL_ Entradas", - "infoEmpty": "Mostrando 0 a 0 de 0 Entradas", "infoFiltered": "Filtrado de _MAX_ entradas totales", "infoThousands": ".", "lengthMenu": "Mostrar _MENU_ entradas", @@ -57,7 +55,35 @@ "next": "Siguiente", "hours": "Hora", "minutes": "Minuto", - "seconds": "Segundo" + "seconds": "Segundo", + "amPm": [ + "AM", + "PM" + ], + "months": { + "0": "Enero", + "1": "Febrero", + "10": "Noviembre", + "11": "Diciembre", + "2": "Marzo", + "3": "Abril", + "4": "Mayo", + "5": "Junio", + "6": "Julio", + "7": "Agosto", + "8": "Septiembre", + "9": "Octubre" + }, + "unknown": "-", + "weekdays": [ + "Dom", + "Lun", + "Mar", + "Mie", + "Jue", + "Vie", + "Sab" + ] }, "editor": { "close": "Cerrar", @@ -85,6 +111,15 @@ "info": "La selección contiene diferentes valores para esta entrada. Para editarla y establecer todos los items al mismo valor, clickear o tocar aquí, de otra manera conservarán sus valores individuales.", "restore": "Deshacer cambios", "noMulti": "Esta entrada se puede editar individualmente, pero no como parte de un grupo." + }, + "error": { + "system": "Ocurrió un error de sistema (<a target=\"\\\" rel=\"nofollow\" href=\"\\\">Más información)." } - } + }, + "aria": { + "sortAscending": ": orden ascendente", + "sortDescending": ": orden descendente" + }, + "info": "Mostrando _START_ a _END_ de _TOTAL_ entradas", + "infoEmpty": "Mostrando 0 a 0 de 0 entradas" } \ No newline at end of file diff --git a/i18n/es-mx.json b/i18n/es-mx.json index e4317c6..e92bf67 100644 --- a/i18n/es-mx.json +++ b/i18n/es-mx.json @@ -5,7 +5,7 @@ }, "autoFill": { "cancel": "Cancelar", - "fill": "Rellene todas las celdas con %d<\\\/i><\/i>", + "fill": "Rellene todas las celdas con %d<\/i>", "fillHorizontal": "Rellenar celdas horizontalmente", "fillVertical": "Rellenar celdas verticalmente" }, @@ -29,9 +29,6 @@ "pdf": "PDF", "print": "Imprimir" }, - "decimal": ",", - "emptyTable": "No se encontraron resultados", - "info": "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros", "infoEmpty": "Mostrando registros del 0 al 0 de un total de 0 registros", "infoFiltered": "(filtrado de un total de _MAX_ registros)", "infoThousands": ",", @@ -53,7 +50,6 @@ }, "clearAll": "Borrar todo", "condition": "Condición", - "data": "Data", "deleteTitle": "Eliminar regla de filtrado", "leftTitle": "Criterios anulados", "logicAnd": "Y", @@ -93,8 +89,8 @@ "endsWith": "Termina con", "equals": "Igual a", "not": "Diferente de", - "notEmpty": "Nop vacío", - "startsWith": "Inicia con" + "startsWith": "Inicia con", + "notEmpty": "No vacío" }, "array": { "equals": "Igual a", @@ -104,7 +100,8 @@ "notEmpty": "No vacío", "without": "Sin" } - } + }, + "data": "Datos" }, "searchPanes": { "clearMessage": "Borrar todo", @@ -129,7 +126,6 @@ } }, "thousands": ",", - "zeroRecords": "No se encontraron resultados", "datetime": { "previous": "Anterior", "hours": "Horas", @@ -140,7 +136,30 @@ "am", "pm" ], - "next": "Siguiente" + "next": "Siguiente", + "months": { + "0": "Enero", + "1": "Febrero", + "10": "Noviembre", + "11": "Diciembre", + "2": "Marzo", + "3": "Abril", + "4": "Mayo", + "5": "Junio", + "6": "Julio", + "7": "Agosto", + "8": "Septiembre", + "9": "Octubre" + }, + "weekdays": [ + "Domingo", + "Lunes", + "Martes", + "Miércoles", + "Jueves", + "Viernes", + "Sábado" + ] }, "editor": { "close": "Cerrar", @@ -163,14 +182,18 @@ "1": "¿Está seguro que desea eliminar 1 fila?" } }, - "error": { - "system": "Ha ocurrido un error en el sistema (Más información<\\\\\\\/a>).<\\\/a><\/a>" - }, "multi": { "title": "Múltiples Valores", - "info": "Los elementos seleccionados contienen diferentes valores para este registro. Para editar y establecer todos los elementos de este registro con el mismo valor, hacer click o tap aquí, de lo contrario conservarán sus valores individuales.", "restore": "Deshacer Cambios", - "noMulti": "Este registro puede ser editado individualmente, pero no como parte de un grupo." + "noMulti": "Este registro puede ser editado individualmente, pero no como parte de un grupo.", + "info": "Los elementos seleccionados contienen diferentes valores para este registro. Para editar y establecer todos los elementos de este registro con el mismo valor, haga click o toque aquí, de lo contrario conservarán sus valores individuales." + }, + "error": { + "system": "Ha ocurrido un error en el sistema ( Más información<\/a>)." } - } + }, + "decimal": ".", + "emptyTable": "No hay datos disponibles en la tabla", + "info": "Mostrando de _START_ al _END_ de _TOTAL_ registros", + "zeroRecords": "No se encontraron coincidencias" } \ No newline at end of file diff --git a/i18n/es_es.json b/i18n/es_es.json index 649c8aa..3234789 100644 --- a/i18n/es_es.json +++ b/i18n/es_es.json @@ -141,8 +141,31 @@ "seconds": "Segundos", "unknown": "-", "amPm": [ - "am", - "pm" + "AM", + "PM" + ], + "months": { + "0": "Enero", + "1": "Febrero", + "10": "Noviembre", + "11": "Diciembre", + "2": "Marzo", + "3": "Abril", + "4": "Mayo", + "5": "Junio", + "6": "Julio", + "7": "Agosto", + "8": "Septiembre", + "9": "Octubre" + }, + "weekdays": [ + "Dom", + "Lun", + "Mar", + "Mie", + "Jue", + "Vie", + "Sab" ] }, "editor": { @@ -176,5 +199,5 @@ "noMulti": "Este registro puede ser editado individualmente, pero no como parte de un grupo." } }, - "info": "Mostrando de _START_ a _END_ de _TOTAL_ entradas" + "info": "Mostrando _START_ a _END_ de _TOTAL_ registros" } \ No newline at end of file diff --git a/i18n/ru.json b/i18n/ru.json index 22eb90c..93ab99b 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -89,7 +89,9 @@ "_": "Конструктор поиска (%d)" }, "clearAll": "Очистить всё", - "condition": "Условие" + "condition": "Условие", + "leftTitle": "Превосходные критерии", + "rightTitle": "Критерии отступа" }, "searchPanes": { "clearMessage": "Очистить всё", @@ -142,6 +144,29 @@ "amPm": [ "AM", "PM" + ], + "months": { + "0": "Январь", + "1": "Февраль", + "10": "Ноябрь", + "11": "Декабрь", + "2": "Март", + "3": "Апрель", + "4": "Май", + "5": "Июнь", + "6": "Июль", + "7": "Август", + "8": "Сентябрь", + "9": "Октябрь" + }, + "weekdays": [ + "Вс", + "Пн", + "Вт", + "Ср", + "Чт", + "Пт", + "Сб" ] }, "editor": { @@ -166,7 +191,11 @@ } }, "multi": { - "restore": "Отменить изменения" + "restore": "Отменить изменения", + "title": "Несколько значений" + }, + "error": { + "system": "Возникла системная ошибка (Подробнее<\/a>)" } } } \ No newline at end of file diff --git a/i18n/sk.json b/i18n/sk.json index 896dc2c..3327058 100644 --- a/i18n/sk.json +++ b/i18n/sk.json @@ -1,5 +1,4 @@ { - "emptyTable": "Nie sú k dispozícii žiadne dáta", "info": "Záznamy _START_ až _END_ z celkom _TOTAL_", "infoEmpty": "Záznamy 0 až 0 z celkom 0 ", "infoFiltered": "(vyfiltrované spomedzi _MAX_ záznamov)", @@ -42,8 +41,8 @@ }, "pdf": "PDF", "print": "Tlačiť", - "copyKeys": "Stlačte ctrl alebo u2318 + C pre kopírovanie dát tabuľky do systémovej schránky. Pre zrušenie kliknite na tuto správu alebo stlačte ESC.", - "colvis": "Viditeľnosť stĺpcov" + "colvis": "Viditeľnosť stĺpcov", + "copyKeys": "Stlačte CTRL alebo u2318 + C pre kopírovanie dát tabuľky do systémovej schránky. Pre zrušenie kliknite na túto správu alebo stlačte ESC." }, "searchBuilder": { "add": "Pridať Podmienku", @@ -139,7 +138,30 @@ "am", "pm" ], - "previous": "Predchádzajúci" + "previous": "Predchádzajúci", + "months": { + "0": "Január", + "1": "Feburár", + "10": "November", + "11": "December", + "2": "Marec", + "3": "Apríl", + "4": "Máj", + "5": "Jún", + "6": "Júl", + "7": "August", + "8": "September", + "9": "Október" + }, + "weekdays": [ + "Nedeľa", + "Pondelok", + "Utorok", + "Streda", + "Štvrtok", + "Piatok", + "Sobota" + ] }, "editor": { "close": "Zavrieť", @@ -162,14 +184,16 @@ "1": "Určite chcete vymazať 1 riadok?" } }, - "error": { - "system": "Vyskytla sa systémová chyba" - }, "multi": { "title": "Niekoľko hodnôt", "info": "Zvolený prvok obsahuje rozdielne hodnoty pre tento vstup. Na editovanie a nastavenie všetkých prvkov pre tento vstup na rovnakú hodnotu, kliknite alebo klepnite tu, inak si zachovajú individuálne hodnoty.", "restore": "Vrátiť späť zmeny", "noMulti": "Tento vstup môže byť editovaný samostatne, ale nie ako súčasť skupiny." + }, + "error": { + "system": "Vyskytla sa systémová chyba." } - } + }, + "decimal": ",", + "emptyTable": "Nie sú k dispozícii žiadne dáta." } \ No newline at end of file From ce8868243430a2e51f363808f9feeab88e2c8b35 Mon Sep 17 00:00:00 2001 From: SandyDatatables Date: Fri, 6 Aug 2021 09:26:49 +0000 Subject: [PATCH 09/36] new: New plugin for fuzzy searching Jira Issue DD-2067 --- features/fuzzySearch/fuzzy_search.js | 385 +++++++++++++++ features/fuzzySearch/index.html | 575 ++++++++++++++++++++++ features/fuzzySearch/rankColumn.html | 641 ++++++++++++++++++++++++ features/fuzzySearch/returnSearch.html | 582 ++++++++++++++++++++++ features/fuzzySearch/stateSaving.html | 644 +++++++++++++++++++++++++ features/fuzzySearch/threshold.html | 642 ++++++++++++++++++++++++ features/fuzzySearch/toggleSmart.html | 642 ++++++++++++++++++++++++ 7 files changed, 4111 insertions(+) create mode 100644 features/fuzzySearch/fuzzy_search.js create mode 100644 features/fuzzySearch/index.html create mode 100644 features/fuzzySearch/rankColumn.html create mode 100644 features/fuzzySearch/returnSearch.html create mode 100644 features/fuzzySearch/stateSaving.html create mode 100644 features/fuzzySearch/threshold.html create mode 100644 features/fuzzySearch/toggleSmart.html diff --git a/features/fuzzySearch/fuzzy_search.js b/features/fuzzySearch/fuzzy_search.js new file mode 100644 index 0000000..7109c37 --- /dev/null +++ b/features/fuzzySearch/fuzzy_search.js @@ -0,0 +1,385 @@ +(function() { + /** + * Levenshtein function courtesy of https://github.com/tad-lispy/node-damerau-levenshtein / https://www.npmjs.com/package/damerau-levenshtein + */ + function levenshtein(__this, that, limit) { + + var thisLength = __this.length, + thatLength = that.length, + matrix = []; + + // If the limit is not defined it will be calculate from this and that args. + limit = (limit || ((thatLength > thisLength ? thatLength : thisLength)))+1; + + for (var i = 0; i < limit; i++) { + matrix[i] = [i]; + matrix[i].length = limit; + } + for (i = 0; i < limit; i++) { + matrix[0][i] = i; + } + + if (Math.abs(thisLength - thatLength) > (limit || 100)){ + return prepare (limit || 100); + } + if (thisLength === 0){ + return prepare (thatLength); + } + if (thatLength === 0){ + return prepare (thisLength); + } + + // Calculate matrix. + var j, this_i, that_j, cost, min, t; + for (i = 1; i <= thisLength; ++i) { + this_i = __this[i-1]; + + // Step 4 + for (j = 1; j <= thatLength; ++j) { + // Check the jagged ld total so far + if (i === j && matrix[i][j] > 4) return prepare (thisLength); + + that_j = that[j-1]; + cost = (this_i === that_j) ? 0 : 1; // Step 5 + // Calculate the minimum (much faster than Math.min(...)). + min = matrix[i - 1][j ] + 1; // Deletion. + if ((t = matrix[i ][j - 1] + 1 ) < min) min = t; // Insertion. + if ((t = matrix[i - 1][j - 1] + cost) < min) min = t; // Substitution. + + // Update matrix. + matrix[i][j] = (i > 1 && j > 1 && this_i === that[j-2] && __this[i-2] === that_j && (t = matrix[i-2][j-2]+cost) < min) ? t : min; // Transposition. + } + } + + return prepare (matrix[thisLength][thatLength]); + + /** + * + */ + function prepare(steps) { + var length = Math.max(thisLength, thatLength) + var relative = length === 0 + ? 0 + : (steps / length); + var similarity = 1 - relative + return { + steps: steps, + relative: relative, + similarity: similarity + }; + } + } + + fuzzySearch = function(searchVal, data, initial) { + // If no searchVal has been defined then return all rows. + if(searchVal === undefined || searchVal.length === 0) { + return { + pass: true, + score: '' + } + } + + var threshold = initial.threshold !== undefined ? initial.threshold : 0.5; + + // Split the searchVal into individual words. + var splitSearch = searchVal.split(/[^(a-z|A-Z|0-9)]/g); + + // Array to keep scores in + var highestCollated = []; + + // Remove any empty words or spaces + for(var x = 0; x < splitSearch.length; x++) { + if (splitSearch[x].length === 0 || splitSearch[x] === ' ') { + splitSearch.splice(x, 1); + x--; + } + // Aside - Add to the score collection if not done so yet for this search word + else if (highestCollated.length < splitSearch.length) { + highestCollated.push({pass: false, score: 0}); + } + } + + // Going to check each cell for potential matches + for(var i = 0; i < data.length; i++) { + // Convert all data points to lower case fo insensitive sorting + data[i] = data[i].toLowerCase(); + + // Split the data into individual words + var splitData = data[i].split(/[^(a-z|A-Z|0-9)]/g); + + // Remove any empty words or spaces + for (var y = 0; y < splitData.length; y++){ + if(splitData[y].length === 0 || splitData[y] === ' ') { + splitData.splice(y, 1); + x--; + } + } + + // Check each search term word + for(var x = 0; x < splitSearch.length; x++) { + // Reset highest score + var highest = { + pass: undefined, + score: 0 + }; + + // Against each word in the cell + for (var y = 0; y < splitData.length; y++){ + // If this search Term word is the beginning of the word in the cell we want to pass this word + if(splitData[y].indexOf(splitSearch[x]) === 0){ + highest = { + pass: true, + score: splitSearch[x].length / splitData[y].length + }; + } + + // Get the levenshtein similarity score for the two words + var steps = levenshtein(splitSearch[x], splitData[y]).similarity; + + // If the levenshtein similarity score is better than a previous one for the search word then let's store it + if(steps > highest.score) { + highest.score = steps; + } + } + + // If this cell has a higher scoring word than previously found to the search term in the row, store it + if(highestCollated[x].score < highest.score || highest.pass) { + highestCollated[x] = { + pass: highest.pass || highestCollated.pass ? true : highest.score > threshold, + score: highest.score + }; + } + } + } + + // Check that all of the rows have a score greater than 0.5 + for(var i = 0; i < highestCollated.length; i++) { + if(!highestCollated[i].pass) { + return { + pass: false, + score: Math.round(((highestCollated.reduce((a,b) => a+b.score, 0) / highestCollated.length) * 100)) + "%" + }; + } + } + + // If we get to here, all scores greater than 0.5 so display the row + return { + pass: true, + score: Math.round(((highestCollated.reduce((a,b) => a+b.score, 0) / highestCollated.length) * 100)) + "%" + }; + } + + $.fn.dataTable.ext.search.push( + function( settings, data, dataIndex ) { + var initial = settings.oInit.fuzzySearch; + // If fuzzy searching has not been implemented then pass all rows for this function + if (settings.aoData[dataIndex]._fuzzySearch !== undefined) { + // Read score to set the cell content and sort data + var score = settings.aoData[dataIndex]._fuzzySearch.score; + settings.aoData[dataIndex].anCells[initial.rankColumn].innerHTML = score; + + // Remove '%' from the end of the score so can sort on a number + settings.aoData[dataIndex]._aSortData[initial.rankColumn] = +score.substring(0, score.length - 1); + + // Return the value for the pass as decided by the fuzzySearch function + return settings.aoData[dataIndex]._fuzzySearch.pass; + } + else { + settings.aoData[dataIndex].anCells[initial.rankColumn].innerHTML = ''; + settings.aoData[dataIndex]._aSortData[initial.rankColumn] = ''; + } + return true; + } + ); + + $(document).on('init.dt', function(e, settings) { + let api = new $.fn.dataTable.Api(settings); + var initial = api.init().fuzzySearch; + + // If this is set then fuzzy searching is enabled on the table. + if (initial) { + // Find the input element + let input = $('div.dataTables_filter input', api.table().container()) + + let fontBold = {'font-weight': '600', 'background-color': 'rgba(255,255,255,0.1)'}; + let fontNormal = {'font-weight': '500', 'background-color': 'transparent',}; + let toggleCSS = { + 'border': 'none', + 'background': 'none', + 'font-size': '100%', + 'width': '50%', + 'display': 'inline-block', + 'color': 'white', + 'cursor': 'pointer', + 'padding': '0.5em' + } + + // Only going to set the toggle if it is enabled + let toggle, tooltip, exact, fuzzy, label; + if(initial.toggleSmart) { + toggle =$('') + .insertAfter(input) + .css({ + 'border': 'none', + 'background': 'none', + 'position': 'absolute', + 'right': '0px', + 'top': '4px', + 'cursor': 'pointer', + 'color': '#3b5e99', + 'margin-top': '1px' + }); + exact =$('') + .insertAfter(input) + .css(toggleCSS) + .css(fontBold) + .attr('highlighted', true); + fuzzy =$('') + .insertAfter(input) + .css(toggleCSS); + input.css({ + 'padding-right': '30px' + }); + label = $('
Search Type
').css({'padding-bottom': '0.5em', 'font-size': '0.8em'}) + tooltip = $('
') + .css({ + 'position': 'absolute', + 'right': '0px', + 'top': '2em', + 'background': 'white', + 'border-radius': '4px', + 'text-align': 'center', + 'padding': '0.5em', + 'background-color': '#16232a', + 'box-shadow': '4px 4px 4px rgba(0, 0, 0, 0.5)', + 'color': 'white', + 'transition': 'opacity 0.25s', + 'z-index': '30001' + }) + .width(input.outerWidth() - 3) + .append(label).append(exact).append(fuzzy); + } + + function toggleFuzzy() { + if(toggle.attr('blurred')) { + toggle.css({'filter': 'blur(0px)'}).removeAttr('blurred'); + fuzzy.removeAttr('highlighted').css(fontNormal); + exact.attr('highlighted', true).css(fontBold); + } + else { + toggle.css({'filter': 'blur(1px)'}).attr('blurred', true); + exact.removeAttr('highlighted').css(fontNormal); + fuzzy.attr('highlighted', true).css(fontBold); + } + triggerSearchFunction(); + } + + // Turn off the default datatables searching events + $(settings.nTable).off('search.dt.DT'); + + // The function that we want to run on search + var triggerSearchFunction = function(event){ + // If the search is only to be triggered on return wait for that + if (!initial.returnSearch || event.key === "Enter") { + var searchVal = ''; + // If the toggle is set and isn't checkd then perform a normal search + if(toggle && !toggle.attr('blurred')) { + api.rows().iterator('row', function(settings, rowIdx) { + settings.aoData[rowIdx]._fuzzySearch = undefined; + }) + api.search(input.val()) + api.draw(); + } + // Otherwise perform a fuzzy search + else { + // Get the value from the input element and convert to lower case + searchVal = input.val(); + + if (searchVal !== undefined && searchVal.length === 0) { + searchVal = searchVal.toLowerCase(); + } + + // For each row call the fuzzy search function to get result + api.rows().iterator('row', function(settings, rowIdx) { + settings.aoData[rowIdx]._fuzzySearch = fuzzySearch(searchVal, settings.aoData[rowIdx]._aFilterData, initial) + }); + + // Empty the datatables search and replace it with our own + api.search(""); + input.val(searchVal); + api.draw(); + } + } + } + + input.off(); + // Set listeners to occur on toggle and typing + if(toggle) { + // Highlights one of the buttons in the tooltip and un-highlights the other + function highlightButton(toHighlight, noHighlight) { + if(!toHighlight.attr('highlighted')){ + toHighlight.attr('highlighted', true); + toHighlight.css(fontBold); + noHighlight.css(fontNormal); + noHighlight.removeAttr('highlighted'); + toggleFuzzy() + } + } + + // Removes the tooltip element + function removeToolTip() { + tooltip.remove(); + } + + // Actions for the toggle button + toggle + .on('click', toggleFuzzy) + .on('mouseenter', function() { + tooltip + .insertAfter(toggle) + .on('mouseleave', removeToolTip); + exact.on('click', () => highlightButton(exact, fuzzy)); + fuzzy.on('click', () => highlightButton(fuzzy, exact)); + }) + .on('mouseleave', removeToolTip); + + // Actions for the input element + input + .on('mouseenter', function() { + tooltip + .insertAfter(toggle) + .on('mouseleave', removeToolTip); + exact.on('click', () => highlightButton(exact, fuzzy)) + fuzzy.on('click', () => highlightButton(fuzzy, exact)) + }) + .on('mouseleave', function() { + var inToolTip = false; + tooltip.on('mouseenter', () => inToolTip = true); + toggle.on('mouseenter', () => inToolTip = true); + setTimeout(function(){ + if(!inToolTip) { + removeToolTip(); + } + }, 50) + }); + + var state = api.state.loaded(); + + + if(state !== null && state._fuzzySearch === 'true') { + toggle.click(); + } + + api.on('stateSaveParams', function(e, settings, data) { + data._fuzzySearch = toggle.attr('blurred'); + }) + + api.state.save(); + } + + // Always add this event no matter if toggling is enabled + input.on('input keydown', triggerSearchFunction); + } + }) + }()); + \ No newline at end of file diff --git a/features/fuzzySearch/index.html b/features/fuzzySearch/index.html new file mode 100644 index 0000000..b1a4e4a --- /dev/null +++ b/features/fuzzySearch/index.html @@ -0,0 +1,575 @@ + + + + + + + + DataTables example - Fuzzy Searching + + + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to datatables. It does this through a combination of exact matching and the damerau-levenshtein algorithm. There are four initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user. or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the damerau-levenshtein function to display the row to be + changed.
  • +
  • fuzzySearch.returnSearch allows the option for searching to only occur when the enter key is pressed.
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalary
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: true + }); +} ); +
+ + + \ No newline at end of file diff --git a/features/fuzzySearch/rankColumn.html b/features/fuzzySearch/rankColumn.html new file mode 100644 index 0000000..ebb1f00 --- /dev/null +++ b/features/fuzzySearch/rankColumn.html @@ -0,0 +1,641 @@ + + + + + + + + DataTables example - Fuzzy Searching + + + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to datatables. It does this through a combination of exact matching and the damerau-levenshtein algorithm. There are four initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user. or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the damerau-levenshtein function to display the row to be + changed.
  • +
  • fuzzySearch.returnSearch allows the option for searching to only occur when the enter key is pressed.
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalarySimilarity
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalarySimilarity
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: { + toggleSmart: true, + rankColumn: 6, + threshold: 0.5, + returnSearch: false + } + }); +} ); +
+ + + \ No newline at end of file diff --git a/features/fuzzySearch/returnSearch.html b/features/fuzzySearch/returnSearch.html new file mode 100644 index 0000000..212ed55 --- /dev/null +++ b/features/fuzzySearch/returnSearch.html @@ -0,0 +1,582 @@ + + + + + + + + DataTables example - Fuzzy Searching + + + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to datatables. It does this through a combination of exact matching and the damerau-levenshtein algorithm. There are four initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user. or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the damerau-levenshtein function to display the row to be + changed.
  • +
  • fuzzySearch.returnSearch allows the option for searching to only occur when the enter key is pressed.
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalary
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: { + toggleSmart: true, + rankColumn: 6, + threshold: 0.5, + returnSearch: false + } + }); +} ); +
+ + + \ No newline at end of file diff --git a/features/fuzzySearch/stateSaving.html b/features/fuzzySearch/stateSaving.html new file mode 100644 index 0000000..bd5ab3b --- /dev/null +++ b/features/fuzzySearch/stateSaving.html @@ -0,0 +1,644 @@ + + + + + + + + DataTables example - Fuzzy Searching + + + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to datatables. It does this through a combination of exact matching and the damerau-levenshtein algorithm. There are four initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user. or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the damerau-levenshtein function to display the row to be + changed.
  • +
  • fuzzySearch.returnSearch allows the option for searching to only occur when the enter key is pressed.
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalarySimilarity
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalarySimilarity
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: { + toggleSmart: true, + rankColumn: 6, + threshold: 0.5, + returnSearch: false + } + }); +} ); +
+ + + \ No newline at end of file diff --git a/features/fuzzySearch/threshold.html b/features/fuzzySearch/threshold.html new file mode 100644 index 0000000..aadab8e --- /dev/null +++ b/features/fuzzySearch/threshold.html @@ -0,0 +1,642 @@ + + + + + + + + DataTables example - Fuzzy Searching + + + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to datatables. It does this through a combination of exact matching and the damerau-levenshtein algorithm. There are four initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user. or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the damerau-levenshtein function to display the row to be + changed.
  • +
  • fuzzySearch.returnSearch allows the option for searching to only occur when the enter key is pressed.
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalarySimilarity
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalarySimilarity
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: { + toggleSmart: true, + rankColumn: 6, + threshold: 0.5, + returnSearch: false + } + }); +} ); +
+ + + \ No newline at end of file diff --git a/features/fuzzySearch/toggleSmart.html b/features/fuzzySearch/toggleSmart.html new file mode 100644 index 0000000..fefcbaf --- /dev/null +++ b/features/fuzzySearch/toggleSmart.html @@ -0,0 +1,642 @@ + + + + + + + + DataTables example - Fuzzy Searching + + + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to datatables. It does this through a combination of exact matching and the damerau-levenshtein algorithm. There are four initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user. or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the damerau-levenshtein function to display the row to be + changed.
  • +
  • fuzzySearch.returnSearch allows the option for searching to only occur when the enter key is pressed.
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalarySimilarity
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalarySimilarity
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: { + toggleSmart: true, + rankColumn: 6, + threshold: 0.5, + returnSearch: false + } + }); +} ); +
+ + + \ No newline at end of file From 4fa13619393ac4e3dc15a13d3980479662d9c0b3 Mon Sep 17 00:00:00 2001 From: SandyDatatables Date: Fri, 6 Aug 2021 09:29:55 +0000 Subject: [PATCH 10/36] dev: Rename js for fuzzySearch appropriately --- .../fuzzySearch/{fuzzy_search.js => dataTables.fuzzySearch.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename features/fuzzySearch/{fuzzy_search.js => dataTables.fuzzySearch.js} (100%) diff --git a/features/fuzzySearch/fuzzy_search.js b/features/fuzzySearch/dataTables.fuzzySearch.js similarity index 100% rename from features/fuzzySearch/fuzzy_search.js rename to features/fuzzySearch/dataTables.fuzzySearch.js From 8d52285775e4b38dff1411128094943fb531c883 Mon Sep 17 00:00:00 2001 From: SandyDatatables Date: Fri, 6 Aug 2021 09:31:10 +0000 Subject: [PATCH 11/36] dev: update script tags for renamed fuzzySearch --- features/fuzzySearch/index.html | 2 +- features/fuzzySearch/rankColumn.html | 2 +- features/fuzzySearch/returnSearch.html | 2 +- features/fuzzySearch/stateSaving.html | 2 +- features/fuzzySearch/threshold.html | 2 +- features/fuzzySearch/toggleSmart.html | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/features/fuzzySearch/index.html b/features/fuzzySearch/index.html index b1a4e4a..b2672c8 100644 --- a/features/fuzzySearch/index.html +++ b/features/fuzzySearch/index.html @@ -49,7 +49,7 @@ - + - + - + - + - + - + - + - + - + + + + + + +
+
+

DataTables example Fuzzy Searching

+
+

Fuzzy searching is used in search engines and databases to perform searches that will match results that are not necessarily exactly the same as the search + term. This allows spelling mistakes and typos to be accounted for. It also allows small changes in dialect not to affect search results. A commonly used example is + for surname searching. "Smith" and "Smythe" are pronounced the same way, but using conventional searching typing "Smith" would not return "Smythe".

+

This plug-in adds fuzzy search functionality to DataTables. It does this through a combination of exact matching and the Damerau-Levenshtein algorithm. There are three initialisation options that are associated with this + plugin.

+
    +
  • fuzzySearch.toggleSmart allows the searching to be changed from exact matching to fuzzy searching.
  • +
  • fuzzySearch.rankColumn allows the % match to be set in a column within the datatable. Some examples of use cases could be to display the value + to the user, or to hide the column and order based on it - as a search engine would.
  • +
  • fuzzySearch.threshold allows the value of similarity that is required from the Damerau-Levenshtein function to display the row to be + changed.
  • +
+

This example shows how the API methods can be used to work with fuzzy searching. There are 4 buttons below which implement the following actions

+
    +
  • .search(value)This button takes the value from the input element to the left of the buttons and passes it into the .search() + api method. Doing this should update the value in the tables input element, but not yet update the tables records.
  • +
  • .search("")This button again calls the .search() api method, this time with an empty string to clear that value that it stores. + Doing this should update the value in the tables input element, but not yet update the tables records.
  • +
  • .search.fuzzy(value)This button takes the value from the input element to the left of the buttons and passes it into the .search.fuzzy() + api method. Doing this should update the value in the tables input element, but not yet update the tables records.
  • +
  • .search.fuzzy("")This button again calls the .search.fuzzy() api method, this time with an empty string to clear that value that + it stores. Doing this should update the value in the tables input element, but not yet update the tables records.
  • +
  • .draw()This button calls the .draw() api method. Doing this will update the table to display the values that have been returned + based on the calls to the above api methods. If a value has been set for both exact and fuzzy searching then both must approve a row for it to be displayed. + Clearing one of these values and drawing again will cause the other to be the sole filter that is applied. If the tables UI is used at any point then the + exact search is discarded and fuzzy search takes command
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSydney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSydney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
NamePositionOfficeAgeStart dateSalary
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable({ + fuzzySearch: true + }); +} ); +
+ + + From d8591b48364eacedcb3e20a2a004d1c7996d0e9a Mon Sep 17 00:00:00 2001 From: SandyDatatables Date: Mon, 16 Aug 2021 09:54:17 +0000 Subject: [PATCH 31/36] fix: Add more notes on fuzzy search api example Jira Issue DD-2078 --- features/fuzzySearch/api.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/features/fuzzySearch/api.html b/features/fuzzySearch/api.html index 1ae6fad..a3fca5d 100644 --- a/features/fuzzySearch/api.html +++ b/features/fuzzySearch/api.html @@ -112,11 +112,13 @@ $(document).ready(function() {

This example shows how the API methods can be used to work with fuzzy searching. There are 4 buttons below which implement the following actions

  • .search(value)This button takes the value from the input element to the left of the buttons and passes it into the .search() - api method. Doing this should update the value in the tables input element, but not yet update the tables records.
  • + api method. Doing this should update the value in the tables input element, but not yet update the tables records. If instead an undefined value were to be + passed in this method would act as a getter and retrieve the most recent search value.
  • .search("")This button again calls the .search() api method, this time with an empty string to clear that value that it stores. Doing this should update the value in the tables input element, but not yet update the tables records.
  • .search.fuzzy(value)This button takes the value from the input element to the left of the buttons and passes it into the .search.fuzzy() - api method. Doing this should update the value in the tables input element, but not yet update the tables records.
  • + api method. Doing this should update the value in the tables input element, but not yet update the tables records. If instead an undefined value were to be + passed in this method would act as a getter and retrieve the most recent fuzzy search value.
  • .search.fuzzy("")This button again calls the .search.fuzzy() api method, this time with an empty string to clear that value that it stores. Doing this should update the value in the tables input element, but not yet update the tables records.
  • .draw()This button calls the .draw() api method. Doing this will update the table to display the values that have been returned From 3b8785a9979ca603a923addfe672b8153ab8e1d4 Mon Sep 17 00:00:00 2001 From: SandyDatatables Date: Mon, 16 Aug 2021 10:00:23 +0000 Subject: [PATCH 32/36] fix: Fix issue with toggle button alignment on mobile devices Jira Issue DD-2081 --- features/fuzzySearch/dataTables.fuzzySearch.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/features/fuzzySearch/dataTables.fuzzySearch.js b/features/fuzzySearch/dataTables.fuzzySearch.js index f31f3ee..6f974e6 100644 --- a/features/fuzzySearch/dataTables.fuzzySearch.js +++ b/features/fuzzySearch/dataTables.fuzzySearch.js @@ -239,9 +239,9 @@ .css({ 'border': 'none', 'background': 'none', - 'position': 'absolute', - 'right': '0px', - 'top': '4px', + 'position': 'relative', + 'right': '33px', + 'top': '0px', 'cursor': 'pointer', 'color': '#3b5e99', 'margin-top': '1px' From d8409c7a67654dfab678cc8ce212aea5a273cbbf Mon Sep 17 00:00:00 2001 From: SandyDatatables Date: Tue, 17 Aug 2021 14:24:20 +0000 Subject: [PATCH 33/36] update: Move fuzzy search examples to 1.10.25 Jira Issue DD-2072 --- features/fuzzySearch/api.html | 4 ++-- features/fuzzySearch/dataTables.fuzzySearch.js | 8 +++++++- features/fuzzySearch/index.html | 4 ++-- features/fuzzySearch/rankColumn.html | 4 ++-- features/fuzzySearch/returnSearch.html | 4 ++-- features/fuzzySearch/stateSaving.html | 4 ++-- features/fuzzySearch/threshold.html | 4 ++-- features/fuzzySearch/toggleSmart.html | 4 ++-- 8 files changed, 21 insertions(+), 15 deletions(-) diff --git a/features/fuzzySearch/api.html b/features/fuzzySearch/api.html index a3fca5d..837adb1 100644 --- a/features/fuzzySearch/api.html +++ b/features/fuzzySearch/api.html @@ -6,7 +6,7 @@ DataTables example - Fuzzy Searching - + - + - + - + - + - + - + - +