Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3632c834ac | ||
|
|
dbe5b03e9e | ||
|
|
3f85ed6f74 | ||
|
|
abf0b19c0e | ||
|
|
390c27aee3 | ||
|
|
23e0878cd0 | ||
|
|
507fe4412c | ||
|
|
d42ff6fc14 | ||
|
|
d1db4ebbed | ||
|
|
5193324625 | ||
|
|
4bf2d4c049 | ||
|
|
0fd3f36078 | ||
|
|
36b4e606be | ||
|
|
3841f4e246 | ||
|
|
e84c5d66da | ||
|
|
6143b0d88f | ||
|
|
9416612aa7 | ||
|
|
b1eb6ffee0 | ||
|
|
f829dc4e99 | ||
|
|
749399b7f2 | ||
|
|
1f07f2d6e9 | ||
|
|
48d6b496d5 | ||
|
|
8032a92653 | ||
|
|
8c888b2960 | ||
|
|
005ba75593 | ||
|
|
607c694f8e | ||
|
|
a9143409e6 | ||
|
|
f1a8c171bb | ||
|
|
97dd64349c | ||
|
|
4855b9d6ab | ||
|
|
208bdd29d7 | ||
|
|
a8bed3a8c9 | ||
|
|
7883bcfccd | ||
|
|
8ca972956e | ||
|
|
7e74b70bf2 | ||
|
|
94137303d8 | ||
|
|
b71fd99957 | ||
|
|
dcbf8e755e | ||
|
|
ec18ebded5 | ||
|
|
781d3303fd | ||
|
|
1880961ea7 | ||
|
|
f6da73d22c | ||
|
|
676cc27c2b | ||
|
|
a9bb591b47 | ||
|
|
940591e760 | ||
|
|
333b4dbf89 | ||
|
|
f97d11d7ec | ||
|
|
cd382aa237 | ||
|
|
66392e7f11 | ||
|
|
577fa0e2d7 | ||
|
|
9970ae3372 | ||
|
|
ca8fe2a7ec | ||
|
|
485b30adad | ||
|
|
4880a7f9f2 | ||
|
|
033de51783 |
@@ -0,0 +1 @@
|
||||
languages/*.mo
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"editor.formatOnSave": true
|
||||
}
|
||||
@@ -0,0 +1,854 @@
|
||||
:root {
|
||||
--dt-row-selected: 13, 110, 253;
|
||||
--dt-row-selected-text: 255, 255, 255;
|
||||
--dt-row-selected-link: 228, 228, 228;
|
||||
--dt-row-stripe: 0, 0, 0;
|
||||
--dt-row-hover: 0, 0, 0;
|
||||
--dt-column-ordering: 0, 0, 0;
|
||||
--dt-header-align-items: center;
|
||||
--dt-header-vertical-align: middle;
|
||||
--dt-html-background: white;
|
||||
}
|
||||
:root.dark {
|
||||
--dt-html-background: rgb(33, 37, 41);
|
||||
}
|
||||
|
||||
table.dataTable tbody td.dt-control {
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
}
|
||||
table.dataTable tbody td.dt-control:before {
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
content: "";
|
||||
border-top: 5px solid transparent;
|
||||
border-left: 10px solid rgba(0, 0, 0, 0.5);
|
||||
border-bottom: 5px solid transparent;
|
||||
border-right: 0px solid transparent;
|
||||
}
|
||||
table.dataTable tbody tr.dt-hasChild td.dt-control:before {
|
||||
border-top: 10px solid rgba(0, 0, 0, 0.5);
|
||||
border-left: 5px solid transparent;
|
||||
border-bottom: 0px solid transparent;
|
||||
border-right: 5px solid transparent;
|
||||
}
|
||||
table.dataTable tfoot:empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
html.dark table.dataTable td.dt-control:before,
|
||||
:root[data-bs-theme=dark] table.dataTable td.dt-control:before,
|
||||
:root[data-theme=dark] table.dataTable td.dt-control:before {
|
||||
border-left-color: rgba(255, 255, 255, 0.5);
|
||||
}
|
||||
html.dark table.dataTable tr.dt-hasChild td.dt-control:before,
|
||||
:root[data-bs-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before,
|
||||
:root[data-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before {
|
||||
border-top-color: rgba(255, 255, 255, 0.5);
|
||||
border-left-color: transparent;
|
||||
}
|
||||
|
||||
div.dt-scroll {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
div.dt-scroll-body thead tr,
|
||||
div.dt-scroll-body tfoot tr {
|
||||
height: 0;
|
||||
}
|
||||
div.dt-scroll-body thead tr th, div.dt-scroll-body thead tr td,
|
||||
div.dt-scroll-body tfoot tr th,
|
||||
div.dt-scroll-body tfoot tr td {
|
||||
height: 0 !important;
|
||||
padding-top: 0px !important;
|
||||
padding-bottom: 0px !important;
|
||||
border-top-width: 0px !important;
|
||||
border-bottom-width: 0px !important;
|
||||
}
|
||||
div.dt-scroll-body thead tr th div.dt-scroll-sizing, div.dt-scroll-body thead tr td div.dt-scroll-sizing,
|
||||
div.dt-scroll-body tfoot tr th div.dt-scroll-sizing,
|
||||
div.dt-scroll-body tfoot tr td div.dt-scroll-sizing {
|
||||
height: 0 !important;
|
||||
overflow: hidden !important;
|
||||
}
|
||||
|
||||
table.dataTable thead > tr > th:active,
|
||||
table.dataTable thead > tr > td:active {
|
||||
outline: none;
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-asc .dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-orderable-asc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-ordering-asc .dt-column-order:before {
|
||||
position: absolute;
|
||||
display: block;
|
||||
bottom: 50%;
|
||||
content: "\25B2";
|
||||
content: "\25B2"/"";
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-desc .dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-orderable-desc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-ordering-desc .dt-column-order:after {
|
||||
position: absolute;
|
||||
display: block;
|
||||
top: 50%;
|
||||
content: "\25BC";
|
||||
content: "\25BC"/"";
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-asc .dt-column-order, table.dataTable thead > tr > th.dt-orderable-desc .dt-column-order, table.dataTable thead > tr > th.dt-ordering-asc .dt-column-order, table.dataTable thead > tr > th.dt-ordering-desc .dt-column-order,
|
||||
table.dataTable thead > tr > td.dt-orderable-asc .dt-column-order,
|
||||
table.dataTable thead > tr > td.dt-orderable-desc .dt-column-order,
|
||||
table.dataTable thead > tr > td.dt-ordering-asc .dt-column-order,
|
||||
table.dataTable thead > tr > td.dt-ordering-desc .dt-column-order {
|
||||
position: relative;
|
||||
width: 12px;
|
||||
height: 20px;
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-asc .dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-asc .dt-column-order:after, table.dataTable thead > tr > th.dt-orderable-desc .dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-desc .dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-asc .dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc .dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc .dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-orderable-asc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-orderable-asc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-orderable-desc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-orderable-desc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-ordering-asc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-ordering-asc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-ordering-desc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-ordering-desc .dt-column-order:after {
|
||||
left: 0;
|
||||
opacity: 0.125;
|
||||
line-height: 9px;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc,
|
||||
table.dataTable thead > tr > td.dt-orderable-asc,
|
||||
table.dataTable thead > tr > td.dt-orderable-desc {
|
||||
cursor: pointer;
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-asc:hover, table.dataTable thead > tr > th.dt-orderable-desc:hover,
|
||||
table.dataTable thead > tr > td.dt-orderable-asc:hover,
|
||||
table.dataTable thead > tr > td.dt-orderable-desc:hover {
|
||||
outline: 2px solid rgba(0, 0, 0, 0.05);
|
||||
outline-offset: -2px;
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-ordering-asc .dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.dt-ordering-asc .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-ordering-desc .dt-column-order:after {
|
||||
opacity: 0.6;
|
||||
}
|
||||
table.dataTable thead > tr > th.dt-orderable-none:not(.dt-ordering-asc, .dt-ordering-desc) .dt-column-order:empty, table.dataTable thead > tr > th.sorting_desc_disabled .dt-column-order:after, table.dataTable thead > tr > th.sorting_asc_disabled .dt-column-order:before,
|
||||
table.dataTable thead > tr > td.dt-orderable-none:not(.dt-ordering-asc, .dt-ordering-desc) .dt-column-order:empty,
|
||||
table.dataTable thead > tr > td.sorting_desc_disabled .dt-column-order:after,
|
||||
table.dataTable thead > tr > td.sorting_asc_disabled .dt-column-order:before {
|
||||
display: none;
|
||||
}
|
||||
table.dataTable thead > tr > th:active,
|
||||
table.dataTable thead > tr > td:active {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
table.dataTable thead > tr > th div.dt-column-header,
|
||||
table.dataTable thead > tr > th div.dt-column-footer,
|
||||
table.dataTable thead > tr > td div.dt-column-header,
|
||||
table.dataTable thead > tr > td div.dt-column-footer,
|
||||
table.dataTable tfoot > tr > th div.dt-column-header,
|
||||
table.dataTable tfoot > tr > th div.dt-column-footer,
|
||||
table.dataTable tfoot > tr > td div.dt-column-header,
|
||||
table.dataTable tfoot > tr > td div.dt-column-footer {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: var(--dt-header-align-items);
|
||||
gap: 4px;
|
||||
}
|
||||
table.dataTable thead > tr > th div.dt-column-header .dt-column-title,
|
||||
table.dataTable thead > tr > th div.dt-column-footer .dt-column-title,
|
||||
table.dataTable thead > tr > td div.dt-column-header .dt-column-title,
|
||||
table.dataTable thead > tr > td div.dt-column-footer .dt-column-title,
|
||||
table.dataTable tfoot > tr > th div.dt-column-header .dt-column-title,
|
||||
table.dataTable tfoot > tr > th div.dt-column-footer .dt-column-title,
|
||||
table.dataTable tfoot > tr > td div.dt-column-header .dt-column-title,
|
||||
table.dataTable tfoot > tr > td div.dt-column-footer .dt-column-title {
|
||||
flex-grow: 1;
|
||||
}
|
||||
table.dataTable thead > tr > th div.dt-column-header .dt-column-title:empty,
|
||||
table.dataTable thead > tr > th div.dt-column-footer .dt-column-title:empty,
|
||||
table.dataTable thead > tr > td div.dt-column-header .dt-column-title:empty,
|
||||
table.dataTable thead > tr > td div.dt-column-footer .dt-column-title:empty,
|
||||
table.dataTable tfoot > tr > th div.dt-column-header .dt-column-title:empty,
|
||||
table.dataTable tfoot > tr > th div.dt-column-footer .dt-column-title:empty,
|
||||
table.dataTable tfoot > tr > td div.dt-column-header .dt-column-title:empty,
|
||||
table.dataTable tfoot > tr > td div.dt-column-footer .dt-column-title:empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.dt-scroll-body > table.dataTable > thead > tr > th,
|
||||
div.dt-scroll-body > table.dataTable > thead > tr > td {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
:root.dark table.dataTable thead > tr > th.dt-orderable-asc:hover, :root.dark table.dataTable thead > tr > th.dt-orderable-desc:hover,
|
||||
:root.dark table.dataTable thead > tr > td.dt-orderable-asc:hover,
|
||||
:root.dark table.dataTable thead > tr > td.dt-orderable-desc:hover,
|
||||
:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-asc:hover,
|
||||
:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-desc:hover,
|
||||
:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-asc:hover,
|
||||
:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-desc:hover {
|
||||
outline: 2px solid rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
|
||||
div.dt-processing {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 200px;
|
||||
margin-left: -100px;
|
||||
margin-top: -22px;
|
||||
text-align: center;
|
||||
padding: 2px;
|
||||
z-index: 10;
|
||||
}
|
||||
div.dt-processing > div:last-child {
|
||||
position: relative;
|
||||
width: 80px;
|
||||
height: 15px;
|
||||
margin: 1em auto;
|
||||
}
|
||||
div.dt-processing > div:last-child > div {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 13px;
|
||||
height: 13px;
|
||||
border-radius: 50%;
|
||||
background: rgb(13, 110, 253);
|
||||
background: rgb(var(--dt-row-selected));
|
||||
animation-timing-function: cubic-bezier(0, 1, 1, 0);
|
||||
}
|
||||
div.dt-processing > div:last-child > div:nth-child(1) {
|
||||
left: 8px;
|
||||
animation: datatables-loader-1 0.6s infinite;
|
||||
}
|
||||
div.dt-processing > div:last-child > div:nth-child(2) {
|
||||
left: 8px;
|
||||
animation: datatables-loader-2 0.6s infinite;
|
||||
}
|
||||
div.dt-processing > div:last-child > div:nth-child(3) {
|
||||
left: 32px;
|
||||
animation: datatables-loader-2 0.6s infinite;
|
||||
}
|
||||
div.dt-processing > div:last-child > div:nth-child(4) {
|
||||
left: 56px;
|
||||
animation: datatables-loader-3 0.6s infinite;
|
||||
}
|
||||
|
||||
@keyframes datatables-loader-1 {
|
||||
0% {
|
||||
transform: scale(0);
|
||||
}
|
||||
100% {
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
@keyframes datatables-loader-3 {
|
||||
0% {
|
||||
transform: scale(1);
|
||||
}
|
||||
100% {
|
||||
transform: scale(0);
|
||||
}
|
||||
}
|
||||
@keyframes datatables-loader-2 {
|
||||
0% {
|
||||
transform: translate(0, 0);
|
||||
}
|
||||
100% {
|
||||
transform: translate(24px, 0);
|
||||
}
|
||||
}
|
||||
table.dataTable.nowrap th, table.dataTable.nowrap td {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable th,
|
||||
table.dataTable td {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
table.dataTable th.dt-type-numeric, table.dataTable th.dt-type-date,
|
||||
table.dataTable td.dt-type-numeric,
|
||||
table.dataTable td.dt-type-date {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable th.dt-type-numeric div.dt-column-header,
|
||||
table.dataTable th.dt-type-numeric div.dt-column-footer, table.dataTable th.dt-type-date div.dt-column-header,
|
||||
table.dataTable th.dt-type-date div.dt-column-footer,
|
||||
table.dataTable td.dt-type-numeric div.dt-column-header,
|
||||
table.dataTable td.dt-type-numeric div.dt-column-footer,
|
||||
table.dataTable td.dt-type-date div.dt-column-header,
|
||||
table.dataTable td.dt-type-date div.dt-column-footer {
|
||||
flex-direction: row-reverse;
|
||||
}
|
||||
table.dataTable th.dt-left,
|
||||
table.dataTable td.dt-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable th.dt-left div.dt-column-header,
|
||||
table.dataTable th.dt-left div.dt-column-footer,
|
||||
table.dataTable td.dt-left div.dt-column-header,
|
||||
table.dataTable td.dt-left div.dt-column-footer {
|
||||
flex-direction: row;
|
||||
}
|
||||
table.dataTable th.dt-center,
|
||||
table.dataTable td.dt-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable th.dt-right,
|
||||
table.dataTable td.dt-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable th.dt-right div.dt-column-header,
|
||||
table.dataTable th.dt-right div.dt-column-footer,
|
||||
table.dataTable td.dt-right div.dt-column-header,
|
||||
table.dataTable td.dt-right div.dt-column-footer {
|
||||
flex-direction: row-reverse;
|
||||
}
|
||||
table.dataTable th.dt-justify,
|
||||
table.dataTable td.dt-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable th.dt-justify div.dt-column-header,
|
||||
table.dataTable th.dt-justify div.dt-column-footer,
|
||||
table.dataTable td.dt-justify div.dt-column-header,
|
||||
table.dataTable td.dt-justify div.dt-column-footer {
|
||||
flex-direction: row;
|
||||
}
|
||||
table.dataTable th.dt-nowrap,
|
||||
table.dataTable td.dt-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable th.dt-empty,
|
||||
table.dataTable td.dt-empty {
|
||||
text-align: center;
|
||||
vertical-align: top;
|
||||
}
|
||||
table.dataTable thead th,
|
||||
table.dataTable thead td,
|
||||
table.dataTable tfoot th,
|
||||
table.dataTable tfoot td {
|
||||
text-align: left;
|
||||
vertical-align: var(--dt-header-vertical-align);
|
||||
}
|
||||
table.dataTable thead th.dt-head-left,
|
||||
table.dataTable thead td.dt-head-left,
|
||||
table.dataTable tfoot th.dt-head-left,
|
||||
table.dataTable tfoot td.dt-head-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable thead th.dt-head-left div.dt-column-header,
|
||||
table.dataTable thead th.dt-head-left div.dt-column-footer,
|
||||
table.dataTable thead td.dt-head-left div.dt-column-header,
|
||||
table.dataTable thead td.dt-head-left div.dt-column-footer,
|
||||
table.dataTable tfoot th.dt-head-left div.dt-column-header,
|
||||
table.dataTable tfoot th.dt-head-left div.dt-column-footer,
|
||||
table.dataTable tfoot td.dt-head-left div.dt-column-header,
|
||||
table.dataTable tfoot td.dt-head-left div.dt-column-footer {
|
||||
flex-direction: row;
|
||||
}
|
||||
table.dataTable thead th.dt-head-center,
|
||||
table.dataTable thead td.dt-head-center,
|
||||
table.dataTable tfoot th.dt-head-center,
|
||||
table.dataTable tfoot td.dt-head-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable thead th.dt-head-right,
|
||||
table.dataTable thead td.dt-head-right,
|
||||
table.dataTable tfoot th.dt-head-right,
|
||||
table.dataTable tfoot td.dt-head-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable thead th.dt-head-right div.dt-column-header,
|
||||
table.dataTable thead th.dt-head-right div.dt-column-footer,
|
||||
table.dataTable thead td.dt-head-right div.dt-column-header,
|
||||
table.dataTable thead td.dt-head-right div.dt-column-footer,
|
||||
table.dataTable tfoot th.dt-head-right div.dt-column-header,
|
||||
table.dataTable tfoot th.dt-head-right div.dt-column-footer,
|
||||
table.dataTable tfoot td.dt-head-right div.dt-column-header,
|
||||
table.dataTable tfoot td.dt-head-right div.dt-column-footer {
|
||||
flex-direction: row-reverse;
|
||||
}
|
||||
table.dataTable thead th.dt-head-justify,
|
||||
table.dataTable thead td.dt-head-justify,
|
||||
table.dataTable tfoot th.dt-head-justify,
|
||||
table.dataTable tfoot td.dt-head-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable thead th.dt-head-justify div.dt-column-header,
|
||||
table.dataTable thead th.dt-head-justify div.dt-column-footer,
|
||||
table.dataTable thead td.dt-head-justify div.dt-column-header,
|
||||
table.dataTable thead td.dt-head-justify div.dt-column-footer,
|
||||
table.dataTable tfoot th.dt-head-justify div.dt-column-header,
|
||||
table.dataTable tfoot th.dt-head-justify div.dt-column-footer,
|
||||
table.dataTable tfoot td.dt-head-justify div.dt-column-header,
|
||||
table.dataTable tfoot td.dt-head-justify div.dt-column-footer {
|
||||
flex-direction: row;
|
||||
}
|
||||
table.dataTable thead th.dt-head-nowrap,
|
||||
table.dataTable thead td.dt-head-nowrap,
|
||||
table.dataTable tfoot th.dt-head-nowrap,
|
||||
table.dataTable tfoot td.dt-head-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-left,
|
||||
table.dataTable tbody td.dt-body-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-center,
|
||||
table.dataTable tbody td.dt-body-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-right,
|
||||
table.dataTable tbody td.dt-body-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-justify,
|
||||
table.dataTable tbody td.dt-body-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-nowrap,
|
||||
table.dataTable tbody td.dt-body-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
:root {
|
||||
--dt-row-hover-alpha: 0.035;
|
||||
--dt-row-stripe-alpha: 0.023;
|
||||
--dt-column-ordering-alpha: 0.019;
|
||||
--dt-row-selected-stripe-alpha: 0.923;
|
||||
--dt-row-selected-column-ordering-alpha: 0.919;
|
||||
}
|
||||
|
||||
/*
|
||||
* Table styles
|
||||
*/
|
||||
table.dataTable {
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
border-spacing: 0;
|
||||
/*
|
||||
* Header and footer styles
|
||||
*/
|
||||
}
|
||||
table.dataTable thead th,
|
||||
table.dataTable tfoot th {
|
||||
font-weight: bold;
|
||||
}
|
||||
table.dataTable > thead > tr > th,
|
||||
table.dataTable > thead > tr > td {
|
||||
padding: 10px;
|
||||
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
table.dataTable > thead > tr > th:active,
|
||||
table.dataTable > thead > tr > td:active {
|
||||
outline: none;
|
||||
}
|
||||
table.dataTable > tfoot > tr > th,
|
||||
table.dataTable > tfoot > tr > td {
|
||||
border-top: 1px solid rgba(0, 0, 0, 0.3);
|
||||
padding: 10px 10px 6px 10px;
|
||||
}
|
||||
table.dataTable {
|
||||
/*
|
||||
* Body styles
|
||||
*/
|
||||
}
|
||||
table.dataTable > tbody > tr {
|
||||
background-color: transparent;
|
||||
}
|
||||
table.dataTable > tbody > tr:first-child > * {
|
||||
border-top: none;
|
||||
}
|
||||
table.dataTable > tbody > tr:last-child > * {
|
||||
border-bottom: none;
|
||||
}
|
||||
table.dataTable > tbody > tr.selected > * {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.9);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.9);
|
||||
color: rgb(255, 255, 255);
|
||||
color: rgb(var(--dt-row-selected-text));
|
||||
}
|
||||
table.dataTable > tbody > tr.selected a {
|
||||
color: rgb(228, 228, 228);
|
||||
color: rgb(var(--dt-row-selected-link));
|
||||
}
|
||||
table.dataTable > tbody > tr > th,
|
||||
table.dataTable > tbody > tr > td {
|
||||
padding: 8px 10px;
|
||||
}
|
||||
table.dataTable.row-border > tbody > tr > *, table.dataTable.display > tbody > tr > * {
|
||||
border-top: 1px solid rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
table.dataTable.row-border > tbody > tr:first-child > *, table.dataTable.display > tbody > tr:first-child > * {
|
||||
border-top: none;
|
||||
}
|
||||
table.dataTable.row-border > tbody > tr.selected + tr.selected > td, table.dataTable.display > tbody > tr.selected + tr.selected > td {
|
||||
border-top-color: rgba(13, 110, 253, 0.65);
|
||||
border-top-color: rgba(var(--dt-row-selected), 0.65);
|
||||
}
|
||||
table.dataTable.cell-border > tbody > tr > * {
|
||||
border-top: 1px solid rgba(0, 0, 0, 0.15);
|
||||
border-right: 1px solid rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
table.dataTable.cell-border > tbody > tr > *:first-child {
|
||||
border-left: 1px solid rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
table.dataTable.cell-border > tbody > tr:first-child > * {
|
||||
border-top: 1px solid rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
table.dataTable.stripe > tbody > tr:nth-child(odd) > *, table.dataTable.display > tbody > tr:nth-child(odd) > * {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.023);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-stripe), var(--dt-row-stripe-alpha));
|
||||
}
|
||||
table.dataTable.stripe > tbody > tr:nth-child(odd).selected > *, table.dataTable.display > tbody > tr:nth-child(odd).selected > * {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.923);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), var(--dt-row-selected-stripe-alpha));
|
||||
}
|
||||
table.dataTable.hover > tbody > tr:hover > *, table.dataTable.display > tbody > tr:hover > * {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.035);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), var(--dt-row-hover-alpha));
|
||||
}
|
||||
table.dataTable.hover > tbody > tr.selected:hover > *, table.dataTable.display > tbody > tr.selected:hover > * {
|
||||
box-shadow: inset 0 0 0 9999px #0d6efd !important;
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 1) !important;
|
||||
}
|
||||
table.dataTable.order-column > tbody tr > .sorting_1,
|
||||
table.dataTable.order-column > tbody tr > .sorting_2,
|
||||
table.dataTable.order-column > tbody tr > .sorting_3, table.dataTable.display > tbody tr > .sorting_1,
|
||||
table.dataTable.display > tbody tr > .sorting_2,
|
||||
table.dataTable.display > tbody tr > .sorting_3 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.019);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), var(--dt-column-ordering-alpha));
|
||||
}
|
||||
table.dataTable.order-column > tbody tr.selected > .sorting_1,
|
||||
table.dataTable.order-column > tbody tr.selected > .sorting_2,
|
||||
table.dataTable.order-column > tbody tr.selected > .sorting_3, table.dataTable.display > tbody tr.selected > .sorting_1,
|
||||
table.dataTable.display > tbody tr.selected > .sorting_2,
|
||||
table.dataTable.display > tbody tr.selected > .sorting_3 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.919);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), var(--dt-row-selected-column-ordering-alpha));
|
||||
}
|
||||
table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_1, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_1 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.054);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha)));
|
||||
}
|
||||
table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_2, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_2 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.047);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) - 0.007));
|
||||
}
|
||||
table.dataTable.display > tbody > tr:nth-child(odd) > .sorting_3, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd) > .sorting_3 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.039);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) - 0.015));
|
||||
}
|
||||
table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_1, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_1 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.954);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha)));
|
||||
}
|
||||
table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_2, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_2 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.947);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) - 0.007));
|
||||
}
|
||||
table.dataTable.display > tbody > tr:nth-child(odd).selected > .sorting_3, table.dataTable.order-column.stripe > tbody > tr:nth-child(odd).selected > .sorting_3 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.939);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) - 0.015));
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.082);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha)));
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.074);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - 0.007));
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.062);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), calc(var(--dt-row-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - 0.015));
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.982);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha)));
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.974);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - 0.007));
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
|
||||
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.962);
|
||||
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), calc(var(--dt-row-selected-stripe-alpha) + var(--dt-column-ordering-alpha) + var(--dt-row-hover-alpha) - 0.015));
|
||||
}
|
||||
table.dataTable.compact thead th,
|
||||
table.dataTable.compact thead td,
|
||||
table.dataTable.compact tfoot th,
|
||||
table.dataTable.compact tfoot td,
|
||||
table.dataTable.compact tbody th,
|
||||
table.dataTable.compact tbody td {
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
div.dt-container div.dt-layout-row {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
margin: 0.75em 0;
|
||||
}
|
||||
div.dt-container div.dt-layout-row div.dt-layout-cell {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
div.dt-container div.dt-layout-row div.dt-layout-cell.dt-layout-start {
|
||||
justify-content: flex-start;
|
||||
margin-right: auto;
|
||||
}
|
||||
div.dt-container div.dt-layout-row div.dt-layout-cell.dt-layout-end {
|
||||
justify-content: flex-end;
|
||||
margin-left: auto;
|
||||
}
|
||||
div.dt-container div.dt-layout-row div.dt-layout-cell:empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 767px) {
|
||||
div.dt-container div.dt-layout-row:not(.dt-layout-table) {
|
||||
display: block;
|
||||
}
|
||||
div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell {
|
||||
display: block;
|
||||
text-align: center;
|
||||
}
|
||||
div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell > * {
|
||||
margin: 0.5em 0;
|
||||
}
|
||||
div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell.dt-layout-start {
|
||||
margin-right: 0;
|
||||
}
|
||||
div.dt-container div.dt-layout-row:not(.dt-layout-table) div.dt-layout-cell.dt-layout-end {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
div.dt-container div.dt-layout-start > *:not(:last-child) {
|
||||
margin-right: 1em;
|
||||
}
|
||||
div.dt-container div.dt-layout-end > *:not(:first-child) {
|
||||
margin-left: 1em;
|
||||
}
|
||||
div.dt-container div.dt-layout-full {
|
||||
width: 100%;
|
||||
}
|
||||
div.dt-container div.dt-layout-full > *:only-child {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
div.dt-container div.dt-layout-table > div {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 767px) {
|
||||
div.dt-container div.dt-layout-start > *:not(:last-child) {
|
||||
margin-right: 0;
|
||||
}
|
||||
div.dt-container div.dt-layout-end > *:not(:first-child) {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
/*
|
||||
* Control feature layout
|
||||
*/
|
||||
div.dt-container {
|
||||
position: relative;
|
||||
clear: both;
|
||||
}
|
||||
div.dt-container .dt-search input {
|
||||
border: 1px solid #aaa;
|
||||
border-radius: 3px;
|
||||
padding: 5px;
|
||||
background-color: transparent;
|
||||
color: inherit;
|
||||
margin-left: 3px;
|
||||
}
|
||||
div.dt-container .dt-input {
|
||||
border: 1px solid #aaa;
|
||||
border-radius: 3px;
|
||||
padding: 5px;
|
||||
background-color: transparent;
|
||||
color: inherit;
|
||||
}
|
||||
div.dt-container select.dt-input {
|
||||
padding: 4px;
|
||||
}
|
||||
div.dt-container .dt-paging .dt-paging-button {
|
||||
box-sizing: border-box;
|
||||
display: inline-block;
|
||||
min-width: 1.5em;
|
||||
padding: 0.5em 1em;
|
||||
margin-left: 2px;
|
||||
text-align: center;
|
||||
text-decoration: none !important;
|
||||
cursor: pointer;
|
||||
color: inherit !important;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 2px;
|
||||
background: transparent;
|
||||
}
|
||||
div.dt-container .dt-paging .dt-paging-button.current, div.dt-container .dt-paging .dt-paging-button.current:hover {
|
||||
color: inherit !important;
|
||||
border: 1px solid rgba(0, 0, 0, 0.3);
|
||||
background-color: rgba(0, 0, 0, 0.05);
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(229.5, 229.5, 229.5, 0.05)), color-stop(100%, rgba(0, 0, 0, 0.05))); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, rgba(229.5, 229.5, 229.5, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, rgba(229.5, 229.5, 229.5, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, rgba(229.5, 229.5, 229.5, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* IE10+ */
|
||||
background: -o-linear-gradient(top, rgba(229.5, 229.5, 229.5, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, rgba(229.5, 229.5, 229.5, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* W3C */
|
||||
}
|
||||
div.dt-container .dt-paging .dt-paging-button.disabled, div.dt-container .dt-paging .dt-paging-button.disabled:hover, div.dt-container .dt-paging .dt-paging-button.disabled:active {
|
||||
cursor: default;
|
||||
color: rgba(0, 0, 0, 0.5) !important;
|
||||
border: 1px solid transparent;
|
||||
background: transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
div.dt-container .dt-paging .dt-paging-button:hover {
|
||||
color: white !important;
|
||||
border: 1px solid #111;
|
||||
background-color: #111;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(88.4, 88.4, 88.4)), color-stop(100%, #111)); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, rgb(88.4, 88.4, 88.4) 0%, #111 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, rgb(88.4, 88.4, 88.4) 0%, #111 100%); /* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, rgb(88.4, 88.4, 88.4) 0%, #111 100%); /* IE10+ */
|
||||
background: -o-linear-gradient(top, rgb(88.4, 88.4, 88.4) 0%, #111 100%); /* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, rgb(88.4, 88.4, 88.4) 0%, #111 100%); /* W3C */
|
||||
}
|
||||
div.dt-container .dt-paging .dt-paging-button:active {
|
||||
outline: none;
|
||||
background-color: rgb(11.9, 11.9, 11.9);
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(42.5, 42.5, 42.5)), color-stop(100%, rgb(11.9, 11.9, 11.9))); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, rgb(42.5, 42.5, 42.5) 0%, rgb(11.9, 11.9, 11.9) 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, rgb(42.5, 42.5, 42.5) 0%, rgb(11.9, 11.9, 11.9) 100%); /* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, rgb(42.5, 42.5, 42.5) 0%, rgb(11.9, 11.9, 11.9) 100%); /* IE10+ */
|
||||
background: -o-linear-gradient(top, rgb(42.5, 42.5, 42.5) 0%, rgb(11.9, 11.9, 11.9) 100%); /* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, rgb(42.5, 42.5, 42.5) 0%, rgb(11.9, 11.9, 11.9) 100%); /* W3C */
|
||||
box-shadow: inset 0 0 3px #111;
|
||||
}
|
||||
div.dt-container .dt-paging .ellipsis {
|
||||
padding: 0 1em;
|
||||
}
|
||||
div.dt-container .dt-length,
|
||||
div.dt-container .dt-search,
|
||||
div.dt-container .dt-info,
|
||||
div.dt-container .dt-processing,
|
||||
div.dt-container .dt-paging {
|
||||
color: inherit;
|
||||
}
|
||||
div.dt-container .dataTables_scroll {
|
||||
clear: both;
|
||||
}
|
||||
div.dt-container .dataTables_scroll div.dt-scroll-body {
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > th, div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > td, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > th, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > td {
|
||||
vertical-align: middle;
|
||||
}
|
||||
div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > th > div.dataTables_sizing,
|
||||
div.dt-container .dataTables_scroll div.dt-scroll-body > table > thead > tr > td > div.dataTables_sizing, div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > th > div.dataTables_sizing,
|
||||
div.dt-container .dataTables_scroll div.dt-scroll-body > table > tbody > tr > td > div.dataTables_sizing {
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
div.dt-container.dt-empty-footer tbody > tr:last-child > * {
|
||||
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
div.dt-container.dt-empty-footer .dt-scroll-body {
|
||||
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
div.dt-container.dt-empty-footer .dt-scroll-body tbody > tr:last-child > * {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
html.dark {
|
||||
--dt-row-hover: 255, 255, 255;
|
||||
--dt-row-stripe: 255, 255, 255;
|
||||
--dt-column-ordering: 255, 255, 255;
|
||||
}
|
||||
html.dark table.dataTable > thead > tr > th,
|
||||
html.dark table.dataTable > thead > tr > td {
|
||||
border-bottom: 1px solid rgb(89, 91, 94);
|
||||
}
|
||||
html.dark table.dataTable > thead > tr > th:active,
|
||||
html.dark table.dataTable > thead > tr > td:active {
|
||||
outline: none;
|
||||
}
|
||||
html.dark table.dataTable > tfoot > tr > th,
|
||||
html.dark table.dataTable > tfoot > tr > td {
|
||||
border-top: 1px solid rgb(89, 91, 94);
|
||||
}
|
||||
html.dark table.dataTable.row-border > tbody > tr > *, html.dark table.dataTable.display > tbody > tr > * {
|
||||
border-top: 1px solid rgb(64, 67, 70);
|
||||
}
|
||||
html.dark table.dataTable.row-border > tbody > tr:first-child > *, html.dark table.dataTable.display > tbody > tr:first-child > * {
|
||||
border-top: none;
|
||||
}
|
||||
html.dark table.dataTable.row-border > tbody > tr.selected + tr.selected > td, html.dark table.dataTable.display > tbody > tr.selected + tr.selected > td {
|
||||
border-top-color: rgba(13, 110, 253, 0.65);
|
||||
border-top-color: rgba(var(--dt-row-selected), 0.65);
|
||||
}
|
||||
html.dark table.dataTable.cell-border > tbody > tr > th,
|
||||
html.dark table.dataTable.cell-border > tbody > tr > td {
|
||||
border-top: 1px solid rgb(64, 67, 70);
|
||||
border-right: 1px solid rgb(64, 67, 70);
|
||||
}
|
||||
html.dark table.dataTable.cell-border > tbody > tr > th:first-child,
|
||||
html.dark table.dataTable.cell-border > tbody > tr > td:first-child {
|
||||
border-left: 1px solid rgb(64, 67, 70);
|
||||
}
|
||||
html.dark .dt-container.dt-empty-footer table.dataTable {
|
||||
border-bottom: 1px solid rgb(89, 91, 94);
|
||||
}
|
||||
html.dark .dt-container .dt-search input,
|
||||
html.dark .dt-container .dt-length select {
|
||||
border: 1px solid rgba(255, 255, 255, 0.2);
|
||||
background-color: var(--dt-html-background);
|
||||
}
|
||||
html.dark .dt-container .dt-paging .dt-paging-button.current, html.dark .dt-container .dt-paging .dt-paging-button.current:hover {
|
||||
border: 1px solid rgb(89, 91, 94);
|
||||
background: rgba(255, 255, 255, 0.15);
|
||||
}
|
||||
html.dark .dt-container .dt-paging .dt-paging-button.disabled, html.dark .dt-container .dt-paging .dt-paging-button.disabled:hover, html.dark .dt-container .dt-paging .dt-paging-button.disabled:active {
|
||||
color: #666 !important;
|
||||
}
|
||||
html.dark .dt-container .dt-paging .dt-paging-button:hover {
|
||||
border: 1px solid rgb(53, 53, 53);
|
||||
background: rgb(53, 53, 53);
|
||||
}
|
||||
html.dark .dt-container .dt-paging .dt-paging-button:active {
|
||||
background: rgb(58.1, 58.1, 58.1);
|
||||
}
|
||||
|
||||
/*
|
||||
* Overrides for RTL support
|
||||
*/
|
||||
*[dir=rtl] table.dataTable thead th,
|
||||
*[dir=rtl] table.dataTable thead td,
|
||||
*[dir=rtl] table.dataTable tfoot th,
|
||||
*[dir=rtl] table.dataTable tfoot td {
|
||||
text-align: right;
|
||||
}
|
||||
*[dir=rtl] table.dataTable th.dt-type-numeric, *[dir=rtl] table.dataTable th.dt-type-date,
|
||||
*[dir=rtl] table.dataTable td.dt-type-numeric,
|
||||
*[dir=rtl] table.dataTable td.dt-type-date {
|
||||
text-align: left;
|
||||
}
|
||||
*[dir=rtl] div.dt-container div.dt-layout-cell.dt-start {
|
||||
text-align: right;
|
||||
}
|
||||
*[dir=rtl] div.dt-container div.dt-layout-cell.dt-end {
|
||||
text-align: left;
|
||||
}
|
||||
*[dir=rtl] div.dt-container div.dt-search input {
|
||||
margin: 0 3px 0 0;
|
||||
}
|
||||
@@ -1,453 +0,0 @@
|
||||
/*
|
||||
* Table styles
|
||||
*/
|
||||
table.dataTable {
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
clear: both;
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
/*
|
||||
* Header and footer styles
|
||||
*/
|
||||
/*
|
||||
* Body styles
|
||||
*/
|
||||
}
|
||||
table.dataTable thead th,
|
||||
table.dataTable tfoot th {
|
||||
font-weight: bold;
|
||||
}
|
||||
table.dataTable thead th,
|
||||
table.dataTable thead td {
|
||||
padding: 10px 18px;
|
||||
border-bottom: 1px solid #111;
|
||||
}
|
||||
table.dataTable thead th:active,
|
||||
table.dataTable thead td:active {
|
||||
outline: none;
|
||||
}
|
||||
table.dataTable tfoot th,
|
||||
table.dataTable tfoot td {
|
||||
padding: 10px 18px 6px 18px;
|
||||
border-top: 1px solid #111;
|
||||
}
|
||||
table.dataTable thead .sorting,
|
||||
table.dataTable thead .sorting_asc,
|
||||
table.dataTable thead .sorting_desc {
|
||||
cursor: pointer;
|
||||
*cursor: hand;
|
||||
}
|
||||
table.dataTable thead .sorting,
|
||||
table.dataTable thead .sorting_asc,
|
||||
table.dataTable thead .sorting_desc,
|
||||
table.dataTable thead .sorting_asc_disabled,
|
||||
table.dataTable thead .sorting_desc_disabled {
|
||||
background-repeat: no-repeat;
|
||||
background-position: center right;
|
||||
}
|
||||
table.dataTable thead .sorting {
|
||||
background-image: url("../images/sort_both.png");
|
||||
}
|
||||
table.dataTable thead .sorting_asc {
|
||||
background-image: url("../images/sort_asc.png");
|
||||
}
|
||||
table.dataTable thead .sorting_desc {
|
||||
background-image: url("../images/sort_desc.png");
|
||||
}
|
||||
table.dataTable thead .sorting_asc_disabled {
|
||||
background-image: url("../images/sort_asc_disabled.png");
|
||||
}
|
||||
table.dataTable thead .sorting_desc_disabled {
|
||||
background-image: url("../images/sort_desc_disabled.png");
|
||||
}
|
||||
table.dataTable tbody tr {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
table.dataTable tbody tr.selected {
|
||||
background-color: #B0BED9;
|
||||
}
|
||||
table.dataTable tbody th,
|
||||
table.dataTable tbody td {
|
||||
padding: 8px 10px;
|
||||
}
|
||||
table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
|
||||
border-top: 1px solid #ddd;
|
||||
}
|
||||
table.dataTable.row-border tbody tr:first-child th,
|
||||
table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th,
|
||||
table.dataTable.display tbody tr:first-child td {
|
||||
border-top: none;
|
||||
}
|
||||
table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td {
|
||||
border-top: 1px solid #ddd;
|
||||
border-right: 1px solid #ddd;
|
||||
}
|
||||
table.dataTable.cell-border tbody tr th:first-child,
|
||||
table.dataTable.cell-border tbody tr td:first-child {
|
||||
border-left: 1px solid #ddd;
|
||||
}
|
||||
table.dataTable.cell-border tbody tr:first-child th,
|
||||
table.dataTable.cell-border tbody tr:first-child td {
|
||||
border-top: none;
|
||||
}
|
||||
table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
|
||||
background-color: #f9f9f9;
|
||||
}
|
||||
table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected {
|
||||
background-color: #acbad4;
|
||||
}
|
||||
table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
|
||||
background-color: #f6f6f6;
|
||||
}
|
||||
table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected {
|
||||
background-color: #aab7d1;
|
||||
}
|
||||
table.dataTable.order-column tbody tr > .sorting_1,
|
||||
table.dataTable.order-column tbody tr > .sorting_2,
|
||||
table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1,
|
||||
table.dataTable.display tbody tr > .sorting_2,
|
||||
table.dataTable.display tbody tr > .sorting_3 {
|
||||
background-color: #fafafa;
|
||||
}
|
||||
table.dataTable.order-column tbody tr.selected > .sorting_1,
|
||||
table.dataTable.order-column tbody tr.selected > .sorting_2,
|
||||
table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1,
|
||||
table.dataTable.display tbody tr.selected > .sorting_2,
|
||||
table.dataTable.display tbody tr.selected > .sorting_3 {
|
||||
background-color: #acbad5;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
|
||||
background-color: #f1f1f1;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 {
|
||||
background-color: #f3f3f3;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 {
|
||||
background-color: whitesmoke;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 {
|
||||
background-color: #a6b4cd;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 {
|
||||
background-color: #a8b5cf;
|
||||
}
|
||||
table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 {
|
||||
background-color: #a9b7d1;
|
||||
}
|
||||
table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
|
||||
background-color: #fafafa;
|
||||
}
|
||||
table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 {
|
||||
background-color: #fcfcfc;
|
||||
}
|
||||
table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 {
|
||||
background-color: #fefefe;
|
||||
}
|
||||
table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 {
|
||||
background-color: #acbad5;
|
||||
}
|
||||
table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 {
|
||||
background-color: #aebcd6;
|
||||
}
|
||||
table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 {
|
||||
background-color: #afbdd8;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
|
||||
background-color: #eaeaea;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
|
||||
background-color: #ececec;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
|
||||
background-color: #efefef;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
|
||||
background-color: #a2aec7;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
|
||||
background-color: #a3b0c9;
|
||||
}
|
||||
table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
|
||||
background-color: #a5b2cb;
|
||||
}
|
||||
table.dataTable.no-footer {
|
||||
border-bottom: 1px solid #111;
|
||||
}
|
||||
table.dataTable.nowrap th, table.dataTable.nowrap td {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable.compact thead th,
|
||||
table.dataTable.compact thead td {
|
||||
padding: 4px 17px 4px 4px;
|
||||
}
|
||||
table.dataTable.compact tfoot th,
|
||||
table.dataTable.compact tfoot td {
|
||||
padding: 4px;
|
||||
}
|
||||
table.dataTable.compact tbody th,
|
||||
table.dataTable.compact tbody td {
|
||||
padding: 4px;
|
||||
}
|
||||
table.dataTable th.dt-left,
|
||||
table.dataTable td.dt-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable th.dt-center,
|
||||
table.dataTable td.dt-center,
|
||||
table.dataTable td.dataTables_empty {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable th.dt-right,
|
||||
table.dataTable td.dt-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable th.dt-justify,
|
||||
table.dataTable td.dt-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable th.dt-nowrap,
|
||||
table.dataTable td.dt-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable thead th.dt-head-left,
|
||||
table.dataTable thead td.dt-head-left,
|
||||
table.dataTable tfoot th.dt-head-left,
|
||||
table.dataTable tfoot td.dt-head-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable thead th.dt-head-center,
|
||||
table.dataTable thead td.dt-head-center,
|
||||
table.dataTable tfoot th.dt-head-center,
|
||||
table.dataTable tfoot td.dt-head-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable thead th.dt-head-right,
|
||||
table.dataTable thead td.dt-head-right,
|
||||
table.dataTable tfoot th.dt-head-right,
|
||||
table.dataTable tfoot td.dt-head-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable thead th.dt-head-justify,
|
||||
table.dataTable thead td.dt-head-justify,
|
||||
table.dataTable tfoot th.dt-head-justify,
|
||||
table.dataTable tfoot td.dt-head-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable thead th.dt-head-nowrap,
|
||||
table.dataTable thead td.dt-head-nowrap,
|
||||
table.dataTable tfoot th.dt-head-nowrap,
|
||||
table.dataTable tfoot td.dt-head-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-left,
|
||||
table.dataTable tbody td.dt-body-left {
|
||||
text-align: left;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-center,
|
||||
table.dataTable tbody td.dt-body-center {
|
||||
text-align: center;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-right,
|
||||
table.dataTable tbody td.dt-body-right {
|
||||
text-align: right;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-justify,
|
||||
table.dataTable tbody td.dt-body-justify {
|
||||
text-align: justify;
|
||||
}
|
||||
table.dataTable tbody th.dt-body-nowrap,
|
||||
table.dataTable tbody td.dt-body-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
table.dataTable,
|
||||
table.dataTable th,
|
||||
table.dataTable td {
|
||||
-webkit-box-sizing: content-box;
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
/*
|
||||
* Control feature layout
|
||||
*/
|
||||
.dataTables_wrapper {
|
||||
position: relative;
|
||||
clear: both;
|
||||
*zoom: 1;
|
||||
zoom: 1;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_length {
|
||||
float: left;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_filter input {
|
||||
margin-left: 0.5em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_info {
|
||||
clear: both;
|
||||
float: left;
|
||||
padding-top: 0.755em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
float: right;
|
||||
text-align: right;
|
||||
padding-top: 0.25em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button {
|
||||
box-sizing: border-box;
|
||||
display: inline-block;
|
||||
min-width: 1.5em;
|
||||
padding: 0.5em 1em;
|
||||
margin-left: 2px;
|
||||
text-align: center;
|
||||
text-decoration: none !important;
|
||||
cursor: pointer;
|
||||
*cursor: hand;
|
||||
color: #333 !important;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 2px;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
|
||||
color: #333 !important;
|
||||
border: 1px solid #979797;
|
||||
background-color: white;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #dcdcdc));
|
||||
/* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* IE10+ */
|
||||
background: -o-linear-gradient(top, white 0%, #dcdcdc 100%);
|
||||
/* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, white 0%, #dcdcdc 100%);
|
||||
/* W3C */
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
|
||||
cursor: default;
|
||||
color: #666 !important;
|
||||
border: 1px solid transparent;
|
||||
background: transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
|
||||
color: white !important;
|
||||
border: 1px solid #111;
|
||||
background-color: #585858;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111));
|
||||
/* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* IE10+ */
|
||||
background: -o-linear-gradient(top, #585858 0%, #111 100%);
|
||||
/* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, #585858 0%, #111 100%);
|
||||
/* W3C */
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button:active {
|
||||
outline: none;
|
||||
background-color: #2b2b2b;
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));
|
||||
/* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* Chrome10+,Safari5.1+ */
|
||||
background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* FF3.6+ */
|
||||
background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* IE10+ */
|
||||
background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* Opera 11.10+ */
|
||||
background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
|
||||
/* W3C */
|
||||
box-shadow: inset 0 0 3px #111;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate .ellipsis {
|
||||
padding: 0 1em;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_processing {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
margin-left: -50%;
|
||||
margin-top: -25px;
|
||||
padding-top: 20px;
|
||||
text-align: center;
|
||||
font-size: 1.2em;
|
||||
background-color: white;
|
||||
background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));
|
||||
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
||||
}
|
||||
.dataTables_wrapper .dataTables_length,
|
||||
.dataTables_wrapper .dataTables_filter,
|
||||
.dataTables_wrapper .dataTables_info,
|
||||
.dataTables_wrapper .dataTables_processing,
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
color: #333;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll {
|
||||
clear: both;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
|
||||
*margin-top: -1px;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td {
|
||||
vertical-align: middle;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th > div.dataTables_sizing,
|
||||
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td > div.dataTables_sizing {
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
.dataTables_wrapper.no-footer .dataTables_scrollBody {
|
||||
border-bottom: 1px solid #111;
|
||||
}
|
||||
.dataTables_wrapper.no-footer div.dataTables_scrollHead table,
|
||||
.dataTables_wrapper.no-footer div.dataTables_scrollBody table {
|
||||
border-bottom: none;
|
||||
}
|
||||
.dataTables_wrapper:after {
|
||||
visibility: hidden;
|
||||
display: block;
|
||||
content: "";
|
||||
clear: both;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 767px) {
|
||||
.dataTables_wrapper .dataTables_info,
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
float: none;
|
||||
text-align: center;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_paginate {
|
||||
margin-top: 0.5em;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 640px) {
|
||||
.dataTables_wrapper .dataTables_length,
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
float: none;
|
||||
text-align: center;
|
||||
}
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
margin-top: 0.5em;
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 894 B |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1,35 @@
|
||||
msgid "WP jQuery DataTable Settings"
|
||||
msgstr "WP jQuery DataTable Instellingen"
|
||||
|
||||
msgid "Show Information"
|
||||
msgstr "Toon Informatie"
|
||||
|
||||
msgid "Pagination Type"
|
||||
msgstr "Pagineringsstijl"
|
||||
|
||||
msgid "Simple"
|
||||
msgstr "Eenvoudig"
|
||||
|
||||
msgid "Simple Numbers"
|
||||
msgstr "Eenvoudige Getallen"
|
||||
|
||||
msgid "Full"
|
||||
msgstr "Volledig"
|
||||
|
||||
msgid "Full Numbers"
|
||||
msgstr "Volledige Getallen"
|
||||
|
||||
msgid "Rows Per Page"
|
||||
msgstr "Rijen Per Pagina"
|
||||
|
||||
msgid "Show Per Page DropDown"
|
||||
msgstr "Dropdown-menu ‘Weergeven per pagina’"
|
||||
|
||||
msgid "Ordering"
|
||||
msgstr "Sortering"
|
||||
|
||||
msgid "Specific Column Order"
|
||||
msgstr "Specifieke Kolomvolgorde"
|
||||
|
||||
msgid "Searching"
|
||||
msgstr "Zoeken"
|
||||
@@ -0,0 +1,313 @@
|
||||
{
|
||||
"aria": {
|
||||
"orderable": "Sorteren inschakelen",
|
||||
"orderableRemove": "Sortering verwijderen",
|
||||
"orderableReverse": "Sortering omkeren",
|
||||
"paginate": {
|
||||
"first": "Eerste",
|
||||
"last": "Laatste",
|
||||
"next": "Volgende",
|
||||
"previous": "Vorige"
|
||||
}
|
||||
},
|
||||
"autoFill": {
|
||||
"cancel": "Annuleren",
|
||||
"fill": "Vul alle cellen met <i>%d<\/i>",
|
||||
"fillHorizontal": "Vul cellen horizontaal",
|
||||
"fillVertical": "Vul cellen verticaal",
|
||||
"info": ""
|
||||
},
|
||||
"buttons": {
|
||||
"collection": "Verzameling",
|
||||
"colvis": "Kolom zichtbaarheid",
|
||||
"colvisRestore": "Herstel zichtbaarheid",
|
||||
"copy": "Kopieer",
|
||||
"copyKeys": "Klik ctrl of u2318 + C om de tabeldata to kopiëren naar je klembord. Om te annuleren klik hier of klik op escape.",
|
||||
"copySuccess": {
|
||||
"_": "%ds regels naar klembord gekopieerd",
|
||||
"1": "1 regel naar klembord gekopieerd"
|
||||
},
|
||||
"copyTitle": "Kopieer naar klembord",
|
||||
"createState": "Maak staat",
|
||||
"csv": "CSV",
|
||||
"excel": "Excel",
|
||||
"pageLength": {
|
||||
"_": "Toon %d regels",
|
||||
"-1": "Toon alle regels",
|
||||
"1": "Toon 1 regel"
|
||||
},
|
||||
"pdf": "PDF",
|
||||
"print": "Print",
|
||||
"removeAllStates": "Verwijder alle",
|
||||
"removeState": "Verwijder",
|
||||
"renameState": "Hernoem",
|
||||
"savedStates": "Opgeslagen",
|
||||
"stateRestore": "Preset %d",
|
||||
"updateState": "Bijwerken"
|
||||
},
|
||||
"columnControl": {
|
||||
"buttons": {
|
||||
"searchClear": "Reset zoekactie"
|
||||
},
|
||||
"colVis": "Kolom zichtbaarheid",
|
||||
"colVisDropdown": "Kolom zichtbaarheid",
|
||||
"dropdown": "Meer...",
|
||||
"list": {
|
||||
"all": "Selecteer alles",
|
||||
"empty": "Leeg",
|
||||
"none": "Deselecteer",
|
||||
"search": "Zoeken..."
|
||||
},
|
||||
"orderAddAsc": "Sortering toevoegen (oplopend)",
|
||||
"orderAddDesc": "Sortering toevoegen (aflopend)",
|
||||
"orderAsc": "Oplopend sorteren",
|
||||
"orderClear": "Reset sortering",
|
||||
"orderDesc": "Aflopend sorteren",
|
||||
"orderRemove": "Verwijder van sortering",
|
||||
"reorder": "Kolommen herschikken",
|
||||
"reorderLeft": "Verplaats kolom links",
|
||||
"reorderRight": "Verplaatst kolom rechts",
|
||||
"search": {
|
||||
"datetime": {
|
||||
"empty": "Leeg",
|
||||
"equal": "Gelijk aan",
|
||||
"greater": "Na",
|
||||
"less": "Vóór",
|
||||
"notEmpty": "Niet leeg",
|
||||
"notEqual": "Niet gelijk aan"
|
||||
},
|
||||
"number": {
|
||||
"empty": "Leeg",
|
||||
"equal": "Gelijk aan",
|
||||
"greater": "Meer dan",
|
||||
"greaterOrEqual": "Meer of gelijk",
|
||||
"less": "Minder dan",
|
||||
"lessOrEqual": "Minder of gelijk",
|
||||
"notEmpty": "Niet leeg",
|
||||
"notEqual": "Niet gelijk aan"
|
||||
},
|
||||
"text": {
|
||||
"contains": "Bevat",
|
||||
"empty": "Leeg",
|
||||
"ends": "Eindigt",
|
||||
"equal": "Gelijk aan",
|
||||
"notContains": "Bevat niet",
|
||||
"notEmpty": "Niet leeg",
|
||||
"notEqual": "Niet gelijk aan",
|
||||
"starts": "Begint"
|
||||
}
|
||||
},
|
||||
"searchClear": "Reset zoekactie",
|
||||
"searchDropdown": "Zoeken"
|
||||
},
|
||||
"datetime": {
|
||||
"amPm": {
|
||||
"0": "vm",
|
||||
"1": "nm"
|
||||
},
|
||||
"hours": "Uur",
|
||||
"minutes": "Minuut",
|
||||
"months": {
|
||||
"0": "Januari",
|
||||
"1": "Februari",
|
||||
"10": "November",
|
||||
"11": "December",
|
||||
"2": "Maart",
|
||||
"3": "April",
|
||||
"4": "Mei",
|
||||
"5": "Juni",
|
||||
"6": "Juli",
|
||||
"7": "Augustus",
|
||||
"8": "September",
|
||||
"9": "Oktober"
|
||||
},
|
||||
"next": "Volgende",
|
||||
"previous": "Vorige",
|
||||
"seconds": "Seconde",
|
||||
"unknown": "Onbekend",
|
||||
"weekdays": {
|
||||
"0": "Zo",
|
||||
"1": "Ma",
|
||||
"2": "Di",
|
||||
"3": "Wo",
|
||||
"4": "Do",
|
||||
"5": "Vr",
|
||||
"6": "Za"
|
||||
}
|
||||
},
|
||||
"decimal": "",
|
||||
"editor": {
|
||||
"close": "Sluiten",
|
||||
"create": {
|
||||
"button": "Nieuw",
|
||||
"submit": "Toevoegen",
|
||||
"title": "Voeg nieuwe gegevens toe"
|
||||
},
|
||||
"edit": {
|
||||
"button": "Wijzigen",
|
||||
"submit": "Wijzigen",
|
||||
"title": "Wijzig gegevens"
|
||||
},
|
||||
"error": {
|
||||
"system": "Er is een fout gebeurd"
|
||||
},
|
||||
"multi": {
|
||||
"info": "De geselecteerde items bevatten verschillende waarden voor deze invoer. Om alle items voor deze invoer op dezelfde waarde te zetten, klik of tik hier, zoniet zullen de individuele waarden behouden blijven.",
|
||||
"noMulti": "Deze invoer kan individueel gewijzigd worden, maar niet als deel van een groep.",
|
||||
"restore": "Wijzigingen ongedaan maken",
|
||||
"title": "Meerdere waarden"
|
||||
},
|
||||
"remove": {
|
||||
"button": "Verwijderen",
|
||||
"confirm": {
|
||||
"_": "Bent u zeker dat u %d rijen wil verwijderen?",
|
||||
"1": "Bent u zeker dat u 1 rij wil verwijderen?"
|
||||
},
|
||||
"submit": "Verwijder",
|
||||
"title": "Verwijder"
|
||||
}
|
||||
},
|
||||
"emptyTable": "Geen resultaten aanwezig in de tabel",
|
||||
"info": "_START_ tot _END_ van _TOTAL_ resultaten",
|
||||
"infoEmpty": "Geen resultaten om weer te geven",
|
||||
"infoFiltered": " (gefilterd uit _MAX_ resultaten)",
|
||||
"infoPostFix": "",
|
||||
"infoThousands": ".",
|
||||
"lengthLabels": {
|
||||
"-1": "Alle"
|
||||
},
|
||||
"lengthMenu": "_MENU_ resultaten weergeven",
|
||||
"loadingRecords": "Een moment geduld aub - bezig met laden...",
|
||||
"orderClear": "Reset sortering",
|
||||
"processing": "Verwerken...",
|
||||
"search": "Zoeken:",
|
||||
"searchBuilder": {
|
||||
"add": "Toevoegen",
|
||||
"button": {
|
||||
"_": "Zoekwizard (%d)",
|
||||
"0": "Zoekwizard"
|
||||
},
|
||||
"clearAll": "Verwijder alles",
|
||||
"condition": "Conditie",
|
||||
"conditions": {
|
||||
"array": {
|
||||
"contains": "Bevat",
|
||||
"empty": "Leeg",
|
||||
"equals": "Gelijk aan",
|
||||
"not": "Niet",
|
||||
"notEmpty": "Niet leeg",
|
||||
"without": "Zonder"
|
||||
},
|
||||
"date": {
|
||||
"after": "Na",
|
||||
"before": "Voor",
|
||||
"between": "Tussen",
|
||||
"empty": "Leeg",
|
||||
"equals": "Gelijk aan",
|
||||
"not": "Niet",
|
||||
"notBetween": "Niet tussen",
|
||||
"notEmpty": "Niet leeg"
|
||||
},
|
||||
"number": {
|
||||
"between": "Tussen",
|
||||
"empty": "Leeg",
|
||||
"equals": "Gelijk aan",
|
||||
"gt": "Groter dan",
|
||||
"gte": "Groter dan of gelijk aan",
|
||||
"lt": "Kleiner dan",
|
||||
"lte": "kleiner dan of gelijk aan",
|
||||
"not": "Niet",
|
||||
"notBetween": "Niet tussen",
|
||||
"notEmpty": "Niet leeg"
|
||||
},
|
||||
"string": {
|
||||
"contains": "Bevat",
|
||||
"empty": "Leeg",
|
||||
"endsWith": "Eindigt met",
|
||||
"equals": "Gelijk aan",
|
||||
"not": "Niet",
|
||||
"notContains": "Zonder",
|
||||
"notEmpty": "Niet leeg",
|
||||
"notEndsWith": "Eindigt niet met",
|
||||
"notStartsWith": "Begint niet met",
|
||||
"startsWith": "Start met"
|
||||
}
|
||||
},
|
||||
"data": "Data",
|
||||
"deleteTitle": "Verwijder",
|
||||
"leftTitle": "Afwijkende criteria",
|
||||
"logicAnd": "En",
|
||||
"logicOr": "Of",
|
||||
"rightTitle": "Criteria inspringen",
|
||||
"search": "Zoeken",
|
||||
"title": {
|
||||
"_": "Zoekwizard (%d) ",
|
||||
"0": "Zoekwizard"
|
||||
},
|
||||
"value": "Waarde"
|
||||
},
|
||||
"searchPanes": {
|
||||
"clearMessage": "Alles leegmaken",
|
||||
"collapse": {
|
||||
"_": "Zoekpanelen (%d)",
|
||||
"0": "Zoekpanelen"
|
||||
},
|
||||
"collapseMessage": "Instorten",
|
||||
"count": "{total}",
|
||||
"countFiltered": "{shown} ({total})",
|
||||
"emptyMessage": "<em>Leeg<\/em>",
|
||||
"emptyPanes": "Geen zoekpanelen",
|
||||
"loadMessage": "Zoekpanelen laden...",
|
||||
"showMessage": "Alles weergeven",
|
||||
"title": "%d filters actief"
|
||||
},
|
||||
"searchPlaceholder": "",
|
||||
"select": {
|
||||
"cells": {
|
||||
"_": "%d cellen geselecteerd",
|
||||
"0": "",
|
||||
"1": "1 cel geselecteerd"
|
||||
},
|
||||
"columns": {
|
||||
"_": "%d kolommen geselecteerd",
|
||||
"0": "",
|
||||
"1": "1 kolom geselecteerd"
|
||||
},
|
||||
"rows": {
|
||||
"_": "%d rijen geselecteerd",
|
||||
"0": "",
|
||||
"1": "1 rij geselecteerd"
|
||||
}
|
||||
},
|
||||
"stateRestore": {
|
||||
"creationModal": {
|
||||
"button": "Aanmaken",
|
||||
"columns": {
|
||||
"search": "Zoeken in kolom",
|
||||
"visible": "Kolom tonen"
|
||||
},
|
||||
"name": "Naam",
|
||||
"order": "Sorteervolgorde",
|
||||
"paging": "Paginering",
|
||||
"scroller": "Meescrollen",
|
||||
"search": "Zoeken",
|
||||
"searchBuilder": "SearchBuilder",
|
||||
"select": "Selecteer",
|
||||
"title": "Nieuwe staat aanmaken",
|
||||
"toggleLabel": "Bevat"
|
||||
},
|
||||
"duplicateError": "Staat bestaat al",
|
||||
"emptyError": "Naam kan niet leeg zijn",
|
||||
"emptyStates": "Geen beschikbare staten",
|
||||
"removeConfirm": "Weet u zeker dat u deze wil verwijderen:",
|
||||
"removeError": "De verwijdering is mislukt",
|
||||
"removeJoiner": "en",
|
||||
"removeSubmit": "Verwijder",
|
||||
"removeTitle": "Verwijder staat",
|
||||
"renameButton": "Hernoem",
|
||||
"renameLabel": "Nieuwe naam voor staat",
|
||||
"renameTitle": "Hernoem staat"
|
||||
},
|
||||
"thousands": ".",
|
||||
"zeroRecords": "Geen resultaten gevonden"
|
||||
}
|
||||
@@ -1,92 +1,132 @@
|
||||
=== WP jQuery DataTable ===
|
||||
Contributors: biztechc
|
||||
Tags: WP jQuery DataTable, jQuery, jQuery DataTable, Table ,DataTable
|
||||
Requires at least: 3.6.1
|
||||
Tested up to: 5.4
|
||||
Stable tag: 2.0.1
|
||||
License: GPLv2 or later
|
||||
|
||||
Features can be settings to meet your exact needs for your table implementations. like Paging,Ordering,search, etc...
|
||||
|
||||
== Description ==
|
||||
|
||||
Plugin's settings will display 'WP jQuery DataTable' tab
|
||||
|
||||
1. WP Jquery Data table plugin can help the WordPress website owner to insert table anywhere for displaying any information in tabular form, which will also have some cool features like option of selecting no. of pages, columns and pagination to be displayed in one page along with the search option to access the relevant data immediately from the long table, saving time and effort.
|
||||
2. This plugin is useful for exact needs for your table implementations.
|
||||
3. Short code is : [wp_jdt id="table id here"]
|
||||
4. You can apply this short code into page/post's editor or also can add into PHP file.
|
||||
Like
|
||||
`<?php echo do_shortcode('[wp_jdt id="table id here"]');?>`
|
||||
|
||||
= Features =
|
||||
1. Show information about the table
|
||||
2. Allow table pagination, number of rows to display on page and pagination button display options.
|
||||
3. Show table entries options
|
||||
4. Allow table column ordering, define which column(s) the order and apply order (asc or desc.
|
||||
5. Allow table searching
|
||||
|
||||
== Installation ==
|
||||
|
||||
1. Copy the entire /wp-jquery-datatable/ directory into your /wp-content/plugins/ directory.
|
||||
2. Activate the plugin.
|
||||
3. New Tab called WP jQuery DataTable will be genereate.
|
||||
4. You can add set setting.
|
||||
5. Use short code at any pages/posts e.g.[wp_jdt id="table id here"]
|
||||
|
||||
= Plugin's settings =
|
||||
|
||||
First of Save Plugin's settings. It will display 'WP jQuery DataTable' tab
|
||||
|
||||
1. WP Jquery Data table plugin can help the WordPress website owner to insert table anywhere for displaying any information in tabular form, which will also have some cool features like option of selecting no. of pages, columns and pagination to be displayed in one page along with the search option to access the relevant data immediately from the long table, saving time and effort.
|
||||
2. This plugin is useful for exact needs for your table implementations.
|
||||
3. Short code is : [wp_jdt id="table id here"]
|
||||
4. You can apply this short code into page/post's editor or also can add into PHP file.
|
||||
Like
|
||||
`<?php echo do_shortcode('[wp_jdt id="table id here"]');?>`
|
||||
|
||||
= Shortcode Parameters =
|
||||
|
||||
1. id: =(Required) Used table id as a parameter of id. Example [wp_jdt id="demo"] and table is `<table id="demo">...</table>`
|
||||
2. info: Show information about the table. It return boolean. By default 'true'. Example [wp_jdt info="false"]
|
||||
3. paging: Allow table pagination. It return boolean. By default 'true'. Example [wp_jdt paging="false"]
|
||||
4. page_length: Allow number of rows to display on page when using pagination. It return number. By default '10'. Example [wp_jdt page_length="5"]
|
||||
5. paging_type: Allow pagination button display options when using pagination. Options: simple, simple_numbers, full and full_numbers. By default 'simple'. Example [paging_type page_length="simple"]
|
||||
6. b_length_change: Show table entries options. It return boolean. By default 'true'. Example [wp_jdt b_length_change="false"]
|
||||
7. ordering: Allow table column ordering. It return boolean. By default 'true'. Example [wp_jdt ordering="false"]
|
||||
8. i. order_row_number: You can define which column(s) the order in table. It return number. By default '0'. Example [wp_jdt order_row_number="3"]
|
||||
ii. order_row_number_sort: You can apply order (asc or desc). By default 'asc'. Example [wp_jdt order_row_number_sort="desc"]
|
||||
8. searching: Allow table searching. It return boolean. By default 'true'. Example [wp_jdt searching="false"]
|
||||
|
||||
== Frequently Asked Questions ==
|
||||
Is this plugin prepared for multisites? Yes.
|
||||
|
||||
== Screenshots ==
|
||||
|
||||
1. screenshot-1.png
|
||||
2. screenshot-2.png
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 1.0.0 =
|
||||
* Stable Version release
|
||||
|
||||
= 1.0.1 =
|
||||
* Solved jquery confliction
|
||||
|
||||
= 1.0.2 =
|
||||
* Update new jquerydatatable js
|
||||
|
||||
= 1.1.0 =
|
||||
* Make plugin language compatible
|
||||
* Bug fixed for paging and ordering
|
||||
|
||||
= 1.1.1 =
|
||||
* Bug fixed for warnings and notices
|
||||
|
||||
= 2.0.0 =
|
||||
* Compatibility with WordPress version 5.3
|
||||
|
||||
= 2.0.1 =
|
||||
* Compatibility with WordPress version 5.4
|
||||
== Upgrade Notice ==
|
||||
=== WP jQuery DataTable ===
|
||||
Contributors: mbanl, biztechc
|
||||
Tags: WP jQuery DataTable, jQuery, jQuery DataTable, Table ,DataTable
|
||||
Requires at least: 3.6.1
|
||||
Tested up to: 7.0.2
|
||||
Stable tag: 4.2.0
|
||||
License: GPLv2 or later
|
||||
|
||||
Features can be set to meet your exact needs for your table implementations. like paging, ordering, searching, etc... Originally developped by biztechc (https://www.appjetty.com/).
|
||||
|
||||
== Description ==
|
||||
|
||||
Plugin's settings will display 'WP jQuery DataTable' tab under 'Settings'.
|
||||
|
||||
1. WP Jquery Data table plugin can help the WordPress website owner to insert table anywhere for displaying any information in tabular form, which will also have some cool features like option of selecting no. of pages, columns and pagination to be displayed in one page along with the search option to access the relevant data immediately from the long table, saving time and effort.
|
||||
2. This plugin is useful for exact needs for your table implementations.
|
||||
3. Short code is : [wp_jdt id="table id here"]
|
||||
4. You can apply this short code into page/post's editor or also can add into PHP file.
|
||||
Like
|
||||
`<?php echo do_shortcode('[wp_jdt id="table id here"]');?>`
|
||||
|
||||
= Features =
|
||||
1. Show information about the table
|
||||
2. Allow table pagination, number of rows to display on page and pagination button display options.
|
||||
3. Show table entries options
|
||||
4. Allow table column ordering, define which column(s) the order and apply order (asc or desc.
|
||||
5. Allow table searching
|
||||
|
||||
== Installation ==
|
||||
|
||||
1. Copy the entire /wp-jquery-datatable/ directory into your /wp-content/plugins/ directory.
|
||||
2. Activate the plugin.
|
||||
3. New Tab called WP jQuery DataTable will be genereate.
|
||||
4. You can add set setting.
|
||||
5. Use short code at any pages/posts e.g.[wp_jdt id="table id here"]
|
||||
|
||||
= Plugin's settings =
|
||||
|
||||
First of Save Plugin's settings. It will display 'WP jQuery DataTable' tab
|
||||
|
||||
1. WP Jquery Data table plugin can help the WordPress website owner to insert table anywhere for displaying any information in tabular form, which will also have some cool features like option of selecting no. of pages, columns and pagination to be displayed in one page along with the search option to access the relevant data immediately from the long table, saving time and effort.
|
||||
2. This plugin is useful for exact needs for your table implementations.
|
||||
3. Short code is : [wp_jdt id="table id here"]
|
||||
4. You can apply this short code into page/post's editor or also can add into PHP file.
|
||||
Like
|
||||
`<?php echo do_shortcode('[wp_jdt id="table id here"]');?>`
|
||||
|
||||
= Shortcode Parameters =
|
||||
|
||||
1. id: =(Required) Used table id as a parameter of id. Example [wp_jdt id="demo"] and table is `<table id="demo">...</table>`
|
||||
2. info: Show information about the table. It return boolean. By default 'true'. Example [wp_jdt info="false"]
|
||||
3. paging: Allow table pagination. It return boolean. By default 'true'. Example [wp_jdt paging="false"]
|
||||
4. page_length: Allow number of rows to display on page when using pagination. It return number. By default '10'. Example [wp_jdt page_length="5"]
|
||||
5. paging_type: Allow pagination button display options when using pagination. Options: simple, simple_numbers, full and full_numbers. By default 'simple'. Example [paging_type page_length="simple"]
|
||||
6. b_length_change: Show table entries options. It return boolean. By default 'true'. Example [wp_jdt b_length_change="false"]
|
||||
7. ordering: Allow table column ordering. It return boolean. By default 'true'. Example [wp_jdt ordering="false"]
|
||||
8. i. order_row_number: You can define which column(s) the order in table. It return number. By default '0'. Example [wp_jdt order_row_number="3"]
|
||||
ii. order_row_number_sort: You can apply order (asc or desc). By default 'asc'. Example [wp_jdt order_row_number_sort="desc"]
|
||||
8. searching: Allow table searching. It return boolean. By default 'true'. Example [wp_jdt searching="false"]
|
||||
|
||||
== Frequently Asked Questions ==
|
||||
Is this plugin prepared for multisites? Yes.
|
||||
|
||||
== Screenshots ==
|
||||
|
||||
1. screenshot-1.png
|
||||
2. screenshot-2.png
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 4.2.0 =
|
||||
* Forked by [Michel Bats](https://batssoft.nl/).
|
||||
* Bumped DataTables to version 2.3.8.
|
||||
* Moved the settings page under the settings menu.
|
||||
* Added support for a languages folder.
|
||||
* Changed some texts to make use of global translations.
|
||||
* Added a domain to most of the texts for translation files.
|
||||
* Added a Dutch translation file.
|
||||
* Added DataTables language support for 'search'.
|
||||
* Added VSCode settings.json for formatOnSave.
|
||||
* Added .gitignore.
|
||||
* Added security measurement to prevent the public to run the php-script directly.
|
||||
* Changed the registering of settings during installation to an array.
|
||||
* Changed the unregistering of settings during uninstallation to an array.
|
||||
* Deleted the setting of unnecessary variables under wp_jdt_activate_plugin() and made all the if statements strict.
|
||||
* Changed the user role for the options page from 'administrator' to 'manage_options'.
|
||||
* Added a check for the options page to only load if the user has sufficient rights.
|
||||
* Changed the radio buttons on the options page to use the WordPress checked() function.
|
||||
* Changed get_option() for the options page to make use a $default_value.
|
||||
* Rewrite of the wp_jdt_shortcode() function to put security measuremnts in place, better fallback and loading the JS script in the footer.
|
||||
* Removed a new line and some commented code no longer used.
|
||||
* Removed some unnecessary <br> tags.
|
||||
* Removed the extra Select option from the page lenght menu.
|
||||
* Added the default page lenghts and the option for All in the page lenght dropdown.
|
||||
* Added the choosen page lenght as an option to the dropdown if it's not one of the default options.
|
||||
* Changed the language for DataTables to make use of the i18n plug-in json file and added the Dutch translation file.
|
||||
|
||||
= 4.1.0 =
|
||||
* Compatibility with WordPress version 6.7.1
|
||||
* Vulnerability Fix
|
||||
|
||||
= 4.0.1 =
|
||||
* Compatibility with WordPress version 6.1.1
|
||||
|
||||
= 4.0.0 =
|
||||
* Compatibility with WordPress version 5.8
|
||||
|
||||
= 3.0.0 =
|
||||
* Compatibility with WordPress version 5.5
|
||||
|
||||
= 2.0.1 =
|
||||
* Compatibility with WordPress version 5.4
|
||||
|
||||
= 2.0.0 =
|
||||
* Compatibility with WordPress version 5.3
|
||||
|
||||
= 1.1.1 =
|
||||
* Bug fixed for warnings and notices
|
||||
|
||||
= 1.1.0 =
|
||||
* Make plugin language compatible
|
||||
* Bug fixed for paging and ordering
|
||||
|
||||
= 1.0.2 =
|
||||
* Update new jquerydatatable js
|
||||
|
||||
= 1.0.1 =
|
||||
* Solved jquery confliction
|
||||
|
||||
= 1.0.0 =
|
||||
* Stable Version release
|
||||
== Upgrade Notice ==
|
||||
|
||||
@@ -1,371 +1,347 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Plugin Name: WP jQuery DataTable
|
||||
* Description: Features can be settings to meet your exact needs for your table implementations. like Paging,Ordering,Searching, etc...
|
||||
* Author: biztechc
|
||||
* Author URI: https://www.appjetty.com/
|
||||
* Version: 2.0.1
|
||||
* Description: Features can be set to meet your exact needs for your table implementations. like paging, ordering, searching, etc... Originally developped by biztechc (https://www.appjetty.com/).
|
||||
* Author: mbanl
|
||||
* Author URI: https://batssoft.nl/
|
||||
* Version: 4.2.0
|
||||
* WordPress Tested up to: 7.0.2
|
||||
*/
|
||||
|
||||
register_activation_hook( __FILE__, 'wp_jdt_activate_plugin' );
|
||||
function wp_jdt_activate_plugin() {
|
||||
if (!defined('ABSPATH')) {
|
||||
die('Invalid request.');
|
||||
}
|
||||
|
||||
register_activation_hook(__FILE__, 'wp_jdt_activate_plugin');
|
||||
function wp_jdt_activate_plugin()
|
||||
{
|
||||
$fields = array(
|
||||
'wp_jdt_info',
|
||||
'wp_jdt_paging',
|
||||
// 'wp_jdt_paging_type',
|
||||
// 'wp_jdt_page_length',
|
||||
'wp_jdt_b_length_change',
|
||||
'wp_jdt_ordering',
|
||||
// 'wp_jdt_order_row',
|
||||
// 'wp_jdt_order_row_sort',
|
||||
'wp_jdt_searching',
|
||||
);
|
||||
|
||||
foreach( $fields as $field ) {
|
||||
$data = get_option( $field );
|
||||
if ( $data == FALSE ) {
|
||||
update_option( $field, 'true' );
|
||||
foreach ($fields as $field) {
|
||||
if (get_option($field) === false) {
|
||||
update_option($field, 'true');
|
||||
}
|
||||
}
|
||||
|
||||
$data = get_option('wp_jdt_paging_type');
|
||||
( $data == FALSE ) ? update_option( 'wp_jdt_paging_type', 'simple' ) : '';
|
||||
|
||||
$data = get_option('wp_jdt_page_length');
|
||||
( $data == FALSE ) ? update_option( 'wp_jdt_page_length', '10' ) : '';
|
||||
|
||||
$data = get_option('wp_jdt_order_row');
|
||||
( $data == FALSE ) ? update_option( 'wp_jdt_order_row', '0' ) : '';
|
||||
|
||||
$data = get_option('wp_jdt_order_row_sort');
|
||||
( $data == FALSE ) ? update_option( 'wp_jdt_order_row_sort', 'desc' ) : '';
|
||||
if (get_option('wp_jdt_paging_type') === false) update_option('wp_jdt_paging_type', 'simple');
|
||||
if (get_option('wp_jdt_page_length') === false) update_option('wp_jdt_page_length', '10');
|
||||
if (get_option('wp_jdt_order_row') === false) update_option('wp_jdt_order_row', '0');
|
||||
if (get_option('wp_jdt_order_row_sort') === false) update_option('wp_jdt_order_row_sort', 'desc');
|
||||
}
|
||||
|
||||
add_action('admin_menu', 'wp_jdt_create_menu');
|
||||
function wp_jdt_create_menu(){
|
||||
function wp_jdt_create_menu()
|
||||
{
|
||||
|
||||
//create admin side menu
|
||||
add_menu_page( __( 'WP jQuery DataTable Settings' ), __( 'WP jQuery DataTable' ), 'administrator', 'wp-jdt', 'wp_jdt_settings_page');
|
||||
add_options_page(__('WP jQuery DataTable Settings', 'wp-jquery-datatable'), __('WP jQuery DataTable', 'wp-jquery-datatable'), 'manage_options', 'wp-jdt', 'wp_jdt_settings_page');
|
||||
|
||||
//call register settings function
|
||||
add_action( 'admin_init', 'wp_jdt_settings' );
|
||||
add_action('admin_init', 'wp_jdt_settings');
|
||||
}
|
||||
|
||||
function wp_jdt_settings(){
|
||||
//register our settings
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_info' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_paging' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_page_length' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_paging_type' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_b_length_change' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_ordering' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_order_row' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_order_row_sort' );
|
||||
register_setting( 'wp-jdt-settings-group', 'wp_jdt_searching' );
|
||||
function wp_jdt_settings()
|
||||
{
|
||||
//register our settings
|
||||
$settings = array(
|
||||
'wp_jdt_info',
|
||||
'wp_jdt_paging',
|
||||
'wp_jdt_page_length',
|
||||
'wp_jdt_paging_type',
|
||||
'wp_jdt_b_length_change',
|
||||
'wp_jdt_ordering',
|
||||
'wp_jdt_order_row',
|
||||
'wp_jdt_order_row_sort',
|
||||
'wp_jdt_searching'
|
||||
);
|
||||
|
||||
foreach ($settings as $setting) {
|
||||
register_setting('wp-jdt-settings-group', $setting);
|
||||
}
|
||||
}
|
||||
|
||||
function wp_jdt_settings_page(){
|
||||
// Admin side page options
|
||||
$wp_jdt_info = get_option('wp_jdt_info');
|
||||
$wp_jdt_paging = get_option('wp_jdt_paging');
|
||||
$wp_jdt_page_length = get_option('wp_jdt_page_length');
|
||||
$wp_jdt_paging_type = get_option('wp_jdt_paging_type');
|
||||
$wp_jdt_b_length_change = get_option('wp_jdt_b_length_change');
|
||||
$wp_jdt_ordering = get_option('wp_jdt_ordering');
|
||||
$wp_jdt_order_row = get_option('wp_jdt_order_row');
|
||||
$wp_jdt_order_row_sort = get_option('wp_jdt_order_row_sort');
|
||||
$wp_jdt_searching = get_option('wp_jdt_searching');
|
||||
?>
|
||||
<div class='wrap'>
|
||||
<h2><?php _e( 'WP jQuery DataTable Settings' ); ?></h2>
|
||||
function wp_jdt_settings_page()
|
||||
{
|
||||
// Admin side page options
|
||||
if (!current_user_can('manage_options')) {
|
||||
return;
|
||||
}
|
||||
|
||||
<form method='post' action='options.php'>
|
||||
<?php settings_fields( 'wp-jdt-settings-group' ); ?>
|
||||
<?php do_settings_sections( 'wp-jdt-settings-group' ); ?>
|
||||
<table class='form-table'>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Show Information' ); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_info != "false") {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" checked="checked" value="true" name="wp_jdt_info"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" value="false" name="wp_jdt_info"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" value="true" name="wp_jdt_info"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" checked="checked" value="false" name="wp_jdt_info"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
$wp_jdt_info = get_option('wp_jdt_info', 'true');
|
||||
$wp_jdt_paging = get_option('wp_jdt_paging', 'true');
|
||||
$wp_jdt_page_length = get_option('wp_jdt_page_length', '10');
|
||||
$wp_jdt_paging_type = get_option('wp_jdt_paging_type', 'simple');
|
||||
$wp_jdt_b_length_change = get_option('wp_jdt_b_length_change', 'true');
|
||||
$wp_jdt_ordering = get_option('wp_jdt_ordering', 'true');
|
||||
$wp_jdt_order_row = get_option('wp_jdt_order_row', '0');
|
||||
$wp_jdt_order_row_sort = get_option('wp_jdt_order_row_sort', 'asc');
|
||||
$wp_jdt_searching = get_option('wp_jdt_searching', 'true');
|
||||
?>
|
||||
<div class='wrap'>
|
||||
<h2><?php _e('WP jQuery DataTable Settings', 'wp-jquery-datatable'); ?></h2>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Pagination' ); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_paging != "false") {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" checked="checked" value="true" name="wp_jdt_paging"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" value="false" name="wp_jdt_paging"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" value="true" name="wp_jdt_paging"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" checked="checked" value="false" name="wp_jdt_paging"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<form method='post' action='options.php'>
|
||||
<?php settings_fields('wp-jdt-settings-group'); ?>
|
||||
<?php do_settings_sections('wp-jdt-settings-group'); ?>
|
||||
<table class='form-table'>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Show Information', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Yes'); ?>"><input type="radio" <?php checked($wp_jdt_info, 'true'); ?> value="true" name="wp_jdt_info"> <span><?php _e('Yes'); ?></span></label><br>
|
||||
<label title="<?php _e('No'); ?>"><input type="radio" <?php checked($wp_jdt_info, 'false'); ?> value="false" name="wp_jdt_info"> <span><?php _e('No'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Pagination Type' ); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_paging_type == "full_numbers"){
|
||||
?>
|
||||
<label title="<?php _e( 'Simple' ); ?>"><input type="radio" value="simple" name="wp_jdt_paging_type"> <span><?php _e( 'Simple' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Simple Numbers' ); ?>"><input type="radio" value="simple_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Simple Numbers' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full' ); ?>"><input type="radio" value="full" name="wp_jdt_paging_type"> <span><?php _e( 'Full' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full Numbers' ); ?>"><input type="radio" checked="checked" value="full_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Full Numbers' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else if($wp_jdt_paging_type == "full") {
|
||||
?>
|
||||
<label title="<?php _e( 'Simple' ); ?>"><input type="radio" value="simple" name="wp_jdt_paging_type"> <span><?php _e( 'Simple' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Simple Numbers' ); ?>"><input type="radio" value="simple_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Simple Numbers' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full' ); ?>"><input type="radio" checked="checked" value="full" name="wp_jdt_paging_type"> <span><?php _e( 'Full' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full Numbers' ); ?>"><input type="radio" value="full_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Full Numbers' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else if($wp_jdt_paging_type == "simple_numbers"){
|
||||
?>
|
||||
<label title="<?php _e( 'Simple' ); ?>"><input type="radio" value="simple" name="wp_jdt_paging_type"> <span><?php _e( 'Simple' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Simple Numbers' ); ?>"><input type="radio" checked="checked" value="simple_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Simple Numbers' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full' ); ?>"><input type="radio" value="full" name="wp_jdt_paging_type"> <span><?php _e( 'Full' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full Numbers' ); ?>"><input type="radio" value="full_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Full Numbers' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Simple' ); ?>"><input type="radio" checked="checked" value="simple" name="wp_jdt_paging_type"> <span><?php _e( 'Simple' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Simple Numbers' ); ?>"><input type="radio" value="simple_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Simple Numbers' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full' ); ?>"><input type="radio" value="full" name="wp_jdt_paging_type"> <span><?php _e( 'Full' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Full Numbers' ); ?>"><input type="radio" value="full_numbers" name="wp_jdt_paging_type"> <span><?php _e( 'Full Numbers' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Pagination'); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Yes'); ?>"><input type="radio" <?php checked($wp_jdt_paging, 'true'); ?> value="true" name="wp_jdt_paging"> <span><?php _e('Yes'); ?></span></label><br>
|
||||
<label title="<?php _e('No'); ?>"><input type="radio" <?php checked($wp_jdt_paging, 'false'); ?> value="false" name="wp_jdt_paging"> <span><?php _e('No'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Pagination Type', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Simple', 'wp-jquery-datatable'); ?>"><input type="radio" <?php checked($wp_jdt_paging_type, 'simple'); ?> value="simple" name="wp_jdt_paging_type"> <span><?php _e('Simple', 'wp-jquery-datatable'); ?></span></label><br>
|
||||
<label title="<?php _e('Simple Numbers', 'wp-jquery-datatable'); ?>"><input type="radio" <?php checked($wp_jdt_paging_type, 'simple_numbers'); ?> value="simple_numbers" name="wp_jdt_paging_type"> <span><?php _e('Simple Numbers', 'wp-jquery-datatable'); ?></span></label><br>
|
||||
<label title="<?php _e('Full', 'wp-jquery-datatable'); ?>"><input type="radio" <?php checked($wp_jdt_paging_type, 'full'); ?> value="full" name="wp_jdt_paging_type"> <span><?php _e('Full', 'wp-jquery-datatable'); ?></span></label><br>
|
||||
<label title="<?php _e('Full Numbers', 'wp-jquery-datatable'); ?>"><input type="radio" <?php checked($wp_jdt_paging_type, 'full_numbers'); ?> value="full_numbers" name="wp_jdt_paging_type"> <span><?php _e('Full Numbers', 'wp-jquery-datatable'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Rows Per Page' ); ?></th>
|
||||
<td>
|
||||
<input type="number" class="small-text" value="<?php if($wp_jdt_page_length != NULL) { echo $wp_jdt_page_length; } else { echo "10"; } ?>" min="1" step="1" name="wp_jdt_page_length">
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Rows Per Page', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<input type="number" class="small-text" value="<?php echo $wp_jdt_page_length; ?>" min="1" step="1" name="wp_jdt_page_length">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Show Per Page DropDown' ); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_b_length_change != "false") {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" checked="checked" value="true" name="wp_jdt_b_length_change"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" value="false" name="wp_jdt_b_length_change"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" value="true" name="wp_jdt_b_length_change"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" checked="checked" value="false" name="wp_jdt_b_length_change"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Show Per Page DropDown', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Yes'); ?>"><input type="radio" <?php checked($wp_jdt_b_length_change, 'true'); ?> value="true" name="wp_jdt_b_length_change"> <span><?php _e('Yes'); ?></span></label><br>
|
||||
<label title="<?php _e('No'); ?>"><input type="radio" <?php checked($wp_jdt_b_length_change, 'false'); ?> value="false" name="wp_jdt_b_length_change"> <span><?php _e('No'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Ordering' ); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_ordering != "false") {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" checked="checked" value="true" name="wp_jdt_ordering"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" value="false" name="wp_jdt_ordering"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" value="true" name="wp_jdt_ordering"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" checked="checked" value="false" name="wp_jdt_ordering"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Ordering', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Yes'); ?>"><input type="radio" <?php checked($wp_jdt_ordering, 'true'); ?> value="true" name="wp_jdt_ordering"> <span><?php _e('Yes'); ?></span></label><br>
|
||||
<label title="<?php _e('No'); ?>"><input type="radio" <?php checked($wp_jdt_ordering, 'false'); ?> value="false" name="wp_jdt_ordering"> <span><?php _e('No'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Specific Column Order' ); ?></th>
|
||||
<td>
|
||||
<input type="number" class="small-text" value="<?php if($wp_jdt_order_row != NULL) { echo $wp_jdt_order_row; }else { echo "0"; }?>" min="0" step="1" name="wp_jdt_order_row"><br>
|
||||
<br>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_order_row_sort != "desc") {
|
||||
?>
|
||||
<label title="<?php _e( 'Ascending Order' ); ?>"><input type="radio" checked="checked" value="asc" name="wp_jdt_order_row_sort"> <span><?php _e( 'Ascending Order' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Descending Order' ); ?>"><input type="radio" value="desc" name="wp_jdt_order_row_sort"> <span><?php _e( 'Descending Order' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Ascending Order' ); ?>"><input type="radio" value="asc" name="wp_jdt_order_row_sort"> <span><?php _e( 'Ascending Order' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'Descending Order' ); ?>"><input type="radio" checked="checked" value="desc" name="wp_jdt_order_row_sort"> <span><?php _e( 'Descending Order' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Specific Column Order', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<input type="number" class="small-text" value="<?php echo $wp_jdt_order_row; ?>" min="0" step="1" name="wp_jdt_order_row"><br>
|
||||
<br>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Ascending'); ?>"><input type="radio" <?php checked($wp_jdt_order_row_sort, 'asc'); ?> value="asc" name="wp_jdt_order_row_sort"> <span><?php _e('Ascending'); ?></span></label><br>
|
||||
<label title="<?php _e('Descending'); ?>"><input type="radio" <?php checked($wp_jdt_order_row_sort, 'desc'); ?> value="desc" name="wp_jdt_order_row_sort"> <span><?php _e('Descending'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e( 'Searching' ); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<?php
|
||||
if($wp_jdt_searching != "false") {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" checked="checked" value="true" name="wp_jdt_searching"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" value="false" name="wp_jdt_searching"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
<label title="<?php _e( 'Yes' ); ?>"><input type="radio" value="true" name="wp_jdt_searching"> <span><?php _e( 'Yes' ); ?></span></label><br>
|
||||
<label title="<?php _e( 'No' ); ?>"><input type="radio" checked="checked" value="false" name="wp_jdt_searching"> <span><?php _e( 'No' ); ?></span></label><br>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<?php submit_button(); ?>
|
||||
</form>
|
||||
</div>
|
||||
<tr valign='top'>
|
||||
<th scope='row'><?php _e('Searching', 'wp-jquery-datatable'); ?></th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<label title="<?php _e('Yes'); ?>"><input type="radio" <?php checked($wp_jdt_searching, 'true'); ?> value="true" name="wp_jdt_searching"> <span><?php _e('Yes'); ?></span></label><br>
|
||||
<label title="<?php _e('No'); ?>"><input type="radio" <?php checked($wp_jdt_searching, 'false'); ?> value="false" name="wp_jdt_searching"> <span><?php _e('No'); ?></span></label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<?php submit_button(); ?>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
add_action('wp_enqueue_scripts','wp_jdt_style_and_script'); // add custom style and script
|
||||
add_action('wp_enqueue_scripts', 'wp_jdt_style_and_script'); // add custom style and script
|
||||
function wp_jdt_style_and_script()
|
||||
{
|
||||
// css
|
||||
wp_register_style( 'jdt-style-data-tables', plugins_url('css/jquery.dataTables.css', __FILE__) );
|
||||
wp_register_style('jdt-style-data-tables', plugins_url('css/dataTables.dataTables.css', __FILE__), array(), '2.3.8');
|
||||
|
||||
// js
|
||||
wp_enqueue_script( 'jdt-js-datatables', plugins_url('js/jquery.dataTables.js', __FILE__), array('jquery') );
|
||||
wp_enqueue_script('jdt-js-datatables', plugins_url('js/dataTables.js', __FILE__), array('jquery'), '2.3.8');
|
||||
}
|
||||
|
||||
add_shortcode( 'wp_jdt', 'wp_jdt_shortcode' ); // add shortcode [wp_jdt id="test" info="true" paging="true" page_length="7" paging_type="full_numbers" b_length_change="true" ordering="true" order_row_number="3" order_row_number_sort="desc" searching="true"]
|
||||
function wp_jdt_shortcode( $atts, $content = "" ) {
|
||||
add_action('plugins_loaded', 'wp_jdt_load_textdomain');
|
||||
function wp_jdt_load_textdomain()
|
||||
{
|
||||
load_plugin_textdomain('wp-jquery-datatable', false, dirname(plugin_basename(__FILE__)) . '/languages');
|
||||
}
|
||||
|
||||
$wp_jdt_info = get_option('wp_jdt_info');
|
||||
$wp_jdt_paging = get_option('wp_jdt_paging');
|
||||
/*if(get_option('wp_jdt_paging')){
|
||||
$wp_jdt_paging = 'true';
|
||||
}else{
|
||||
$wp_jdt_paging = '';
|
||||
}*/
|
||||
$wp_jdt_page_length = get_option('wp_jdt_page_length');
|
||||
$wp_jdt_paging_type = get_option('wp_jdt_paging_type');
|
||||
$wp_jdt_b_length_change = get_option('wp_jdt_b_length_change');
|
||||
$wp_jdt_ordering = get_option('wp_jdt_ordering');
|
||||
$wp_jdt_order_row = get_option('wp_jdt_order_row');
|
||||
$wp_jdt_order_row_sort = get_option('wp_jdt_order_row_sort');
|
||||
$wp_jdt_searching = get_option('wp_jdt_searching');
|
||||
add_shortcode('wp_jdt', 'wp_jdt_shortcode');
|
||||
function wp_jdt_shortcode($atts)
|
||||
{
|
||||
// Get defaults from options for when not set in shortcode
|
||||
$defaults = array(
|
||||
'id' => 'example',
|
||||
'info' => get_option('wp_jdt_info', 'true'),
|
||||
'paging' => get_option('wp_jdt_paging', 'true'),
|
||||
'page_length' => get_option('wp_jdt_page_length', '10'),
|
||||
'paging_type' => get_option('wp_jdt_paging_type', 'simple'),
|
||||
'b_length_change' => get_option('wp_jdt_b_length_change', 'true'),
|
||||
'ordering' => get_option('wp_jdt_ordering', 'true'),
|
||||
'order_row_number' => get_option('wp_jdt_order_row', '0'),
|
||||
'order_row_number_sort' => get_option('wp_jdt_order_row_sort', 'desc'),
|
||||
'searching' => get_option('wp_jdt_searching', 'true'),
|
||||
);
|
||||
|
||||
$atts = shortcode_atts( array(
|
||||
'id' => "example",
|
||||
'info' => "$wp_jdt_info",
|
||||
'paging' => "$wp_jdt_paging",
|
||||
'page_length' => "$wp_jdt_page_length",
|
||||
'paging_type' => "$wp_jdt_paging_type",
|
||||
'b_length_change' => "$wp_jdt_b_length_change",
|
||||
'ordering' => "$wp_jdt_ordering",
|
||||
'order_row_number' => "$wp_jdt_order_row",
|
||||
'order_row_number_sort' => "$wp_jdt_order_row_sort",
|
||||
'searching' => "$wp_jdt_searching",
|
||||
), $atts, 'wp_jdt' );
|
||||
// Combines user attributes with known attributes and fill in defaults when needed
|
||||
$atts = shortcode_atts($defaults, $atts, 'wp_jdt');
|
||||
|
||||
$wp_jdt_script = "";
|
||||
$wp_jdt_script .= "<script type='text/javascript' language='javascript' class='init'> \n";
|
||||
$wp_jdt_script .= "jQuery(document).ready(function() { \n";
|
||||
// Sanitize and fall back to defaults when setting from shortcode is unknown
|
||||
$table_id = preg_replace('/[^a-zA-Z0-9_\-]/', '', $atts['id']);
|
||||
$table_info = ($atts['info'] === 'true') ? 'true' : 'false';
|
||||
$table_paging = ($atts['paging'] === 'true') ? 'true' : 'false';
|
||||
$table_page_length = absint($atts['page_length']);
|
||||
|
||||
$wp_jdt_script .= "jQuery('#$atts[id]').DataTable({ \n";
|
||||
$wp_jdt_script .= "'info': $atts[info], \n";
|
||||
$wp_jdt_script .= "'paging': $atts[paging], \n";
|
||||
if($atts['page_length'] > 0) {
|
||||
$wp_jdt_script .= "'pageLength': $atts[page_length], \n";
|
||||
}
|
||||
else {
|
||||
$wp_jdt_script .= "'pageLength': $wp_jdt_page_length, \n";
|
||||
}
|
||||
$allowed_table_paging_types = array('simple', 'simple_numbers', 'full', 'full_numbers');
|
||||
$table_paging_type = in_array($atts['paging_type'], $allowed_table_paging_types, true) ? $atts['paging_type'] : 'simple';
|
||||
|
||||
$wp_jdt_script .= "'pagingType': '$atts[paging_type]', \n";
|
||||
$wp_jdt_script .= "'bLengthChange': $atts[b_length_change], \n";
|
||||
$wp_jdt_script .= "'ordering': $atts[ordering], \n";
|
||||
if ( $atts['order_row_number'] != '' ) { // if 'Specific Column Order' is not null than add this attribute
|
||||
$table_b_length_change = ($atts['b_length_change'] === 'true') ? 'true' : 'false';
|
||||
$table_ordering = ($atts['ordering'] === 'true') ? 'true' : 'false';
|
||||
$table_order_row_number = absint($atts['order_row_number']);
|
||||
$table_order_sort = (strtolower($atts['order_row_number_sort']) === 'asc') ? 'asc' : 'desc';
|
||||
$table_searching = ($atts['searching'] === 'true') ? 'true' : 'false';
|
||||
|
||||
$atts['order_row_number_sort'] = ( $atts['order_row_number_sort'] != "" ) ? $atts['order_row_number_sort'] : 'desc';
|
||||
$wp_jdt_script .= "'order': [$atts[order_row_number],'$atts[order_row_number_sort]'], \n";
|
||||
}
|
||||
$wp_jdt_script .= "'searching': $atts[searching], \n";
|
||||
$wp_jdt_script .= "} ); \n";
|
||||
$table_length_menu = array(10, 25, 50, 100, -1);
|
||||
if (!in_array($table_page_length, $table_length_menu)) {
|
||||
// Add the missing page length option to the array
|
||||
$table_length_menu[] = (int)$table_page_length;
|
||||
|
||||
$wp_jdt_script .= "jQuery('#$atts[id]_wrapper select').prepend('<option value=$atts[page_length]>" . __( 'Select' ) . "</option>').val('');";
|
||||
// Temporarily remove -1 ("All") if present to preserve its position at the end
|
||||
$has_all = false;
|
||||
if (($key = array_search(-1, $table_length_menu)) !== false) {
|
||||
unset($table_length_menu[$key]);
|
||||
$has_all = true;
|
||||
}
|
||||
|
||||
// if 'Specific Column Order' is not null and ordring is true
|
||||
if ( $atts['order_row_number'] != '' && $atts['ordering'] == 'true' ) {
|
||||
$wp_jdt_script .= "jQuery('#$atts[id]_wrapper select')[0].options[0].selected = true;";
|
||||
}
|
||||
// Sort the remaining numeric options in ascending order
|
||||
sort($table_length_menu);
|
||||
|
||||
$wp_jdt_script .= "} ); \n";
|
||||
$wp_jdt_script .= "</script>";
|
||||
// Append -1 back to the end of the array
|
||||
if ($has_all) {
|
||||
$table_length_menu[] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
// css and js
|
||||
wp_enqueue_style( 'jdt-style-data-tables' );
|
||||
wp_enqueue_script( 'jdt-js-datatables' );
|
||||
wp_enqueue_style('jdt-style-data-tables');
|
||||
wp_enqueue_script('jdt-js-datatables');
|
||||
|
||||
return $wp_jdt_script;
|
||||
// Load JS script via wp_footer anonymous function
|
||||
add_action('wp_footer', function () use (
|
||||
$table_id,
|
||||
$table_info,
|
||||
$table_paging,
|
||||
$table_page_length,
|
||||
$table_length_menu,
|
||||
$table_paging_type,
|
||||
$table_b_length_change,
|
||||
$table_ordering,
|
||||
$table_order_row_number,
|
||||
$table_order_sort,
|
||||
$table_searching
|
||||
) {
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
jQuery(document).ready(function($) {
|
||||
$('#<?php echo esc_js($table_id); ?>').DataTable({
|
||||
'info': <?php echo $table_info; ?>,
|
||||
'paging': <?php echo $table_paging; ?>,
|
||||
'pageLength': <?php echo $table_page_length; ?>,
|
||||
'lengthMenu': <?php echo json_encode($table_length_menu); ?>,
|
||||
'pagingType': '<?php echo esc_js($table_paging_type); ?>',
|
||||
'bLengthChange': <?php echo $table_b_length_change; ?>,
|
||||
'ordering': <?php echo $table_ordering; ?>,
|
||||
'order': [<?php echo $table_order_row_number; ?>, '<?php echo esc_js($table_order_sort); ?>'],
|
||||
'searching': <?php echo $table_searching; ?>,
|
||||
'language': {
|
||||
'url': '<?php echo esc_url(get_jdt_locale_json_file()); ?>',
|
||||
},
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<?php
|
||||
});
|
||||
|
||||
// return empty string
|
||||
return '';
|
||||
}
|
||||
|
||||
register_uninstall_hook( __FILE__, 'wp_jdt_uninstall' ); // uninstall plug-in
|
||||
function wp_jdt_uninstall() {
|
||||
delete_option('wp_jdt_info');
|
||||
delete_option('wp_jdt_paging');
|
||||
delete_option('wp_jdt_page_length');
|
||||
delete_option('wp_jdt_paging_type');
|
||||
delete_option('wp_jdt_b_length_change');
|
||||
delete_option('wp_jdt_ordering');
|
||||
delete_option('wp_jdt_order_row');
|
||||
delete_option('wp_jdt_order_row_sort');
|
||||
delete_option('wp_jdt_searching');
|
||||
register_uninstall_hook(__FILE__, 'wp_jdt_uninstall'); // uninstall plug-in
|
||||
function wp_jdt_uninstall()
|
||||
{
|
||||
$settings = array(
|
||||
'wp_jdt_info',
|
||||
'wp_jdt_paging',
|
||||
'wp_jdt_page_length',
|
||||
'wp_jdt_paging_type',
|
||||
'wp_jdt_b_length_change',
|
||||
'wp_jdt_ordering',
|
||||
'wp_jdt_order_row',
|
||||
'wp_jdt_order_row_sort',
|
||||
'wp_jdt_searching'
|
||||
);
|
||||
|
||||
foreach ($settings as $setting) {
|
||||
delete_option($setting);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the path of the locale JSON file if it exists.
|
||||
*
|
||||
* @return string|null File path if valid, or null if skipped/missing.
|
||||
*/
|
||||
function get_jdt_locale_json_file()
|
||||
{
|
||||
// 1. Get the current locale (e.g., 'nl_NL', 'en_US', 'en_GB')
|
||||
$locale = get_user_locale();
|
||||
|
||||
// 2. Exclude en_US specifically as that's the default dataTables language
|
||||
// (en_GB and other English regional locales remain valid)
|
||||
if ($locale === 'en_US') {
|
||||
return null;
|
||||
}
|
||||
|
||||
// 3. Format the filename ('nl_NL' -> 'nl-NL.json')
|
||||
$formatted_locale = str_replace('_', '-', $locale);
|
||||
$filename = "{$formatted_locale}.json";
|
||||
|
||||
// 4. Set relative path inside your plugin directory
|
||||
$relative_path = "plug-ins/i18n/{$filename}";
|
||||
|
||||
// 5. Verify file existence on disk
|
||||
if (!file_exists(plugin_dir_path(__FILE__) . $relative_path)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// 6. Return either the direct URL or the absolute file path
|
||||
return plugin_dir_url(__FILE__) . $relative_path;
|
||||
}
|
||||
|
||||