diff --git a/allianceauth/framework/datatables.py b/allianceauth/framework/datatables.py index 78007946..387f5cfe 100644 --- a/allianceauth/framework/datatables.py +++ b/allianceauth/framework/datatables.py @@ -115,7 +115,7 @@ class DataTablesView(View): _type = str(c["columnControl"]["search"]["type"]) if _type == "text": if _logic == "notEmpty": - except_qs |= Q(**{f'{_c}': ""}) + except_qs |= Q(**{f'{_c}': ""}) elif len(_sv) > 0: if _logic == "notContains": except_qs |= Q(**{f'{_c}__icontains': _sv}) @@ -123,7 +123,7 @@ class DataTablesView(View): except_qs |= Q(**{f'{_c}': _sv}) elif _type == "num": if _logic == "notEmpty": - except_qs |= Q(**{f'{_c}__isnull': False}) + except_qs |= Q(**{f'{_c}__isnull': False}) elif len(_sv) > 0: if _logic == "notEqual": try: diff --git a/allianceauth/framework/static/allianceauth/framework/css/auth-framework.css b/allianceauth/framework/static/allianceauth/framework/css/auth-framework.css index b866d344..cf3bf7f2 100644 --- a/allianceauth/framework/static/allianceauth/framework/css/auth-framework.css +++ b/allianceauth/framework/static/allianceauth/framework/css/auth-framework.css @@ -179,3 +179,34 @@ border-left-color: var(--bs-warning); } } + +/* DataTables 2 +------------------------------------------------------------------------------------- */ +@media all { + /* DataTables Processing Indicator + --------------------------------------------------------------------------------- */ + div.dt-processing { + padding-top: 0.5rem !important; + } + + div.dt-processing > div { + display: none; + } + + svg.aa-datatables-process-indicator { + width: 2rem; + height: 2rem; + } + + /* DataTables Extension: ColumnControl + --------------------------------------------------------------------------------- */ + table.dataTable span.dtcc div.dtcc-search > div select { + background-color: var(--bs-body-bg); + color: var(--bs-body-color); + padding: 0.375rem; + } + + table.dataTable .dt-column-header div.dtcc-search-title { + display: none; + } +} diff --git a/allianceauth/framework/templates/framework/datatables/process-indicator.html b/allianceauth/framework/templates/framework/datatables/process-indicator.html new file mode 100644 index 00000000..f3ded212 --- /dev/null +++ b/allianceauth/framework/templates/framework/datatables/process-indicator.html @@ -0,0 +1,9 @@ +{% load i18n %} + + + +
+ {% translate "Loading …" %} +
diff --git a/allianceauth/static/allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/css/columnControl.bootstrap5.min.css b/allianceauth/static/allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/css/columnControl.bootstrap5.min.css similarity index 100% rename from allianceauth/static/allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/css/columnControl.bootstrap5.min.css rename to allianceauth/static/allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/css/columnControl.bootstrap5.min.css diff --git a/allianceauth/static/allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/js/columnControl.bootstrap5.min.js b/allianceauth/static/allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/js/columnControl.bootstrap5.min.js similarity index 100% rename from allianceauth/static/allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/js/columnControl.bootstrap5.min.js rename to allianceauth/static/allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/js/columnControl.bootstrap5.min.js diff --git a/allianceauth/static/allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/js/dataTables.columnControl.min.js b/allianceauth/static/allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/js/dataTables.columnControl.min.js similarity index 100% rename from allianceauth/static/allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/js/dataTables.columnControl.min.js rename to allianceauth/static/allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/js/dataTables.columnControl.min.js diff --git a/allianceauth/templates/bundles/datatables-2-columncontrol-css-bs5.html b/allianceauth/templates/bundles/datatables-2-columncontrol-css-bs5.html index 6627feee..a12bdcdf 100644 --- a/allianceauth/templates/bundles/datatables-2-columncontrol-css-bs5.html +++ b/allianceauth/templates/bundles/datatables-2-columncontrol-css-bs5.html @@ -1,3 +1,5 @@ {% load sri %} -{% sri_static "allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/css/columnControl.bootstrap5.min.css" %} + +{% sri_static "allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/css/columnControl.bootstrap5.min.css" %} + diff --git a/allianceauth/templates/bundles/datatables-2-columncontrol-js-bs5.html b/allianceauth/templates/bundles/datatables-2-columncontrol-js-bs5.html index 87747d4e..2eefdd59 100644 --- a/allianceauth/templates/bundles/datatables-2-columncontrol-js-bs5.html +++ b/allianceauth/templates/bundles/datatables-2-columncontrol-js-bs5.html @@ -1,4 +1,6 @@ {% load sri %} -{% sri_static "allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/js/dataTables.columnControl.min.js" %} -{% sri_static "allianceauth/libs/DataTables/Plugins/ColumnControl/1.2.0/js/columnControl.bootstrap5.min.js" %} + +{% sri_static "allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/js/dataTables.columnControl.min.js" %} +{% sri_static "allianceauth/libs/DataTables/Extensions/ColumnControl/1.2.0/js/columnControl.bootstrap5.min.js" %} + diff --git a/allianceauth/templates/bundles/datatables-2-css-bs5.html b/allianceauth/templates/bundles/datatables-2-css-bs5.html index 836d9174..f9ede18f 100644 --- a/allianceauth/templates/bundles/datatables-2-css-bs5.html +++ b/allianceauth/templates/bundles/datatables-2-css-bs5.html @@ -1,3 +1,5 @@ {% load sri %} + {% sri_static "allianceauth/libs/DataTables/2.3.6/css/dataTables.bootstrap5.min.css" %} + diff --git a/allianceauth/templates/bundles/datatables-2-js-bs5.html b/allianceauth/templates/bundles/datatables-2-js-bs5.html index dcad06f9..0536e435 100644 --- a/allianceauth/templates/bundles/datatables-2-js-bs5.html +++ b/allianceauth/templates/bundles/datatables-2-js-bs5.html @@ -1,4 +1,6 @@ {% load sri %} + {% sri_static "allianceauth/libs/DataTables/2.3.6/js/dataTables.min.js" %} {% sri_static "allianceauth/libs/DataTables/2.3.6/js/dataTables.bootstrap5.min.js" %} + diff --git a/docs/development/custom/framework/datatables.md b/docs/development/custom/framework/datatables.md index 818f43e5..45a9a989 100644 --- a/docs/development/custom/framework/datatables.md +++ b/docs/development/custom/framework/datatables.md @@ -37,10 +37,14 @@ Given the `EveCharacter` Model as our model of choice we would define our stubs ```django {% extends "allianceauth/base-bs5.html" %} + {% load i18n %} +{% load aa_i18n %} + {% block page_title %} {% translate "App Name" %} {% endblock page_title %} + {% block content %}