resolved conflicts

This commit is contained in:
2025-03-31 03:46:05 +03:00
6454 changed files with 1520539 additions and 9 deletions
@@ -0,0 +1,757 @@
@charset "UTF-8";
:root {
--dt-row-selected: 13, 110, 253;
--dt-row-selected-text: 255, 255, 255;
--dt-row-selected-link: 9, 10, 11;
--dt-row-stripe: 0, 0, 0;
--dt-row-hover: 0, 0, 0;
--dt-column-ordering: 0, 0, 0;
--dt-html-background: white;
}
:root.dark {
--dt-html-background: rgb(33, 37, 41);
}
table.dataTable td.dt-control {
text-align: center;
cursor: pointer;
}
table.dataTable 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 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;
}
html.dark table.dataTable td.dt-control:before,
:root[data-bs-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 {
border-top-color: rgba(255, 255, 255, 0.5);
border-left-color: transparent;
}
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 span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before {
position: absolute;
display: block;
bottom: 50%;
content: "▲";
content: "▲"/"";
}
table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
position: absolute;
display: block;
top: 50%;
content: "▼";
content: "▼"/"";
}
table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, table.dataTable thead > tr > th.dt-ordering-asc, table.dataTable thead > tr > th.dt-ordering-desc,
table.dataTable thead > tr > td.dt-orderable-asc,
table.dataTable thead > tr > td.dt-orderable-desc,
table.dataTable thead > tr > td.dt-ordering-asc,
table.dataTable thead > tr > td.dt-ordering-desc {
position: relative;
padding-right: 30px;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order {
position: absolute;
right: 12px;
top: 0;
bottom: 0;
width: 12px;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-desc span.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 span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
opacity: 0.6;
}
table.dataTable thead > tr > th.sorting_desc_disabled span.dt-column-order:after, table.dataTable thead > tr > th.sorting_asc_disabled span.dt-column-order:before,
table.dataTable thead > tr > td.sorting_desc_disabled span.dt-column-order:after,
table.dataTable thead > tr > td.sorting_asc_disabled span.dt-column-order:before {
display: none;
}
table.dataTable thead > tr > th:active,
table.dataTable thead > tr > td:active {
outline: 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-left,
table.dataTable td.dt-left {
text-align: left;
}
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-justify,
table.dataTable td.dt-justify {
text-align: justify;
}
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 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 thead th,
table.dataTable thead td,
table.dataTable tfoot th,
table.dataTable tfoot td {
text-align: left;
}
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 styles
*/
table.dataTable {
width: 100%;
margin: 0 auto;
border-spacing: 0;
/*
* Header and footer styles
*/
/*
* Body 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 > 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(9, 10, 11);
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), 0.023);
}
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), 0.923);
}
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), 0.035);
}
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), 0.019);
}
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), 0.919);
}
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), 0.054);
}
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), 0.047);
}
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), 0.039);
}
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), 0.954);
}
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), 0.947);
}
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), 0.939);
}
table.dataTable.display > tbody > tr.even > .sorting_1, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 {
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), 0.019);
}
table.dataTable.display > tbody > tr.even > .sorting_2, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 {
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.011);
box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.011);
}
table.dataTable.display > tbody > tr.even > .sorting_3, table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 {
box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.003);
box-shadow: inset 0 0 0 9999px rgba(var(--dt-column-ordering), 0.003);
}
table.dataTable.display > tbody > tr.even.selected > .sorting_1, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 {
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), 0.919);
}
table.dataTable.display > tbody > tr.even.selected > .sorting_2, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 {
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.911);
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.911);
}
table.dataTable.display > tbody > tr.even.selected > .sorting_3, table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 {
box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.903);
box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.903);
}
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), 0.082);
}
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), 0.074);
}
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), 0.062);
}
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), 0.982);
}
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), 0.974);
}
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), 0.962);
}
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;
}
/*
* Control feature layout
*/
div.dt-container {
position: relative;
clear: both;
}
div.dt-container div.dt-layout-row {
display: table;
clear: both;
width: 100%;
}
div.dt-container div.dt-layout-row.dt-layout-table {
display: block;
}
div.dt-container div.dt-layout-row.dt-layout-table div.dt-layout-cell {
display: block;
}
div.dt-container div.dt-layout-cell {
display: table-cell;
vertical-align: middle;
padding: 5px 0;
}
div.dt-container div.dt-layout-cell.dt-full {
text-align: center;
}
div.dt-container div.dt-layout-cell.dt-start {
text-align: left;
}
div.dt-container div.dt-layout-cell.dt-end {
text-align: right;
}
div.dt-container div.dt-layout-cell:empty {
display: none;
}
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(230, 230, 230, 0.05)), color-stop(100%, rgba(0, 0, 0, 0.05))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Chrome10+,Safari5.1+ */
background: -moz-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* FF3.6+ */
background: -ms-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* IE10+ */
background: -o-linear-gradient(top, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%); /* Opera 11.10+ */
background: linear-gradient(to bottom, rgba(230, 230, 230, 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%, #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 */
}
div.dt-container .dt-paging .dt-paging-button:active {
outline: none;
background-color: #0c0c0c;
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;
}
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;
}
@media screen and (max-width: 767px) {
div.dt-container div.dt-layout-row {
display: block;
}
div.dt-container div.dt-layout-cell {
display: block;
}
div.dt-container div.dt-layout-cell.dt-full, div.dt-container div.dt-layout-cell.dt-start, div.dt-container div.dt-layout-cell.dt-end {
text-align: center;
}
}
@media screen and (max-width: 640px) {
.dt-container .dt-length,
.dt-container .dt-search {
float: none;
text-align: center;
}
.dt-container .dt-search {
margin-top: 0.5em;
}
}
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: #3a3a3a;
}
/*
* 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;
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,58 @@
/*! DataTables styling wrapper for FixedHeader
* © SpryMedia Ltd - datatables.net/license
*/
(function( factory ){
if ( typeof define === 'function' && define.amd ) {
// AMD
define( ['jquery', 'datatables.net-dt', 'datatables.net-fixedheader'], function ( $ ) {
return factory( $, window, document );
} );
}
else if ( typeof exports === 'object' ) {
// CommonJS
var jq = require('jquery');
var cjsRequires = function (root, $) {
if ( ! $.fn.dataTable ) {
require('datatables.net-dt')(root, $);
}
if ( ! $.fn.dataTable.FixedHeader ) {
require('datatables.net-fixedheader')(root, $);
}
};
if (typeof window === 'undefined') {
module.exports = function (root, $) {
if ( ! root ) {
// CommonJS environments without a window global must pass a
// root. This will give an error otherwise
root = window;
}
if ( ! $ ) {
$ = jq( root );
}
cjsRequires( root, $ );
return factory( $, root, root.document );
};
}
else {
cjsRequires( window, jq );
module.exports = factory( jq, window, window.document );
}
}
else {
// Browser
factory( jQuery, window, document );
}
}(function( $, window, document ) {
'use strict';
var DataTable = $.fn.dataTable;
return DataTable;
}));
@@ -0,0 +1,560 @@
@keyframes dtb-spinner {
100% {
transform: rotate(360deg);
}
}
@-o-keyframes dtb-spinner {
100% {
-o-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-ms-keyframes dtb-spinner {
100% {
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-webkit-keyframes dtb-spinner {
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-moz-keyframes dtb-spinner {
100% {
-moz-transform: rotate(360deg);
transform: rotate(360deg);
}
}
div.dataTables_wrapper {
position: relative;
}
div.dt-buttons {
position: initial;
}
div.dt-buttons .dt-button {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
div.dt-button-info {
position: fixed;
top: 50%;
left: 50%;
width: 400px;
margin-top: -100px;
margin-left: -200px;
background-color: white;
border-radius: 0.75em;
box-shadow: 3px 4px 10px 1px rgba(0, 0, 0, 0.8);
text-align: center;
z-index: 2003;
overflow: hidden;
}
div.dt-button-info h2 {
padding: 2rem 2rem 1rem 2rem;
margin: 0;
font-weight: normal;
}
div.dt-button-info > div {
padding: 1em 2em 2em 2em;
}
div.dtb-popover-close {
position: absolute;
top: 6px;
right: 6px;
width: 22px;
height: 22px;
text-align: center;
border-radius: 3px;
cursor: pointer;
z-index: 2003;
}
button.dtb-hide-drop {
display: none !important;
}
div.dt-button-collection-title {
text-align: center;
padding: 0.3em 0.5em 0.5em;
margin-left: 0.5em;
margin-right: 0.5em;
font-size: 0.9em;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
div.dt-button-collection-title:empty {
display: none;
}
span.dt-button-spacer {
display: inline-block;
margin: 0.5em;
white-space: nowrap;
}
span.dt-button-spacer.bar {
border-left: 1px solid rgba(0, 0, 0, 0.3);
vertical-align: middle;
padding-left: 0.5em;
}
span.dt-button-spacer.bar:empty {
height: 1em;
width: 1px;
padding-left: 0;
}
div.dt-button-collection .dt-button-active {
padding-right: 3em;
}
div.dt-button-collection .dt-button-active:after {
position: absolute;
top: 50%;
margin-top: -10px;
right: 1em;
display: inline-block;
content: "✓";
color: inherit;
}
div.dt-button-collection .dt-button-active.dt-button-split {
padding-right: 0;
}
div.dt-button-collection .dt-button-active.dt-button-split:after {
display: none;
}
div.dt-button-collection .dt-button-active.dt-button-split > *:first-child {
padding-right: 3em;
}
div.dt-button-collection .dt-button-active.dt-button-split > *:first-child:after {
position: absolute;
top: 50%;
margin-top: -10px;
right: 1em;
display: inline-block;
content: "✓";
color: inherit;
}
div.dt-button-collection .dt-button-active-a a {
padding-right: 3em;
}
div.dt-button-collection .dt-button-active-a a:after {
position: absolute;
right: 1em;
display: inline-block;
content: "✓";
color: inherit;
}
div.dt-button-collection span.dt-button-spacer {
width: 100%;
font-size: 0.9em;
text-align: center;
margin: 0.5em 0;
}
div.dt-button-collection span.dt-button-spacer:empty {
height: 0;
width: 100%;
}
div.dt-button-collection span.dt-button-spacer.bar {
border-left: none;
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
padding-left: 0;
}
@media print {
table.dataTable tr > * {
box-shadow: none !important;
}
}
html.dark div.dt-button-info {
background-color: var(--dt-html-background);
border: 1px solid rgba(255, 255, 255, 0.15);
}
div.dt-buttons > .dt-button,
div.dt-buttons > div.dt-button-split .dt-button {
position: relative;
display: inline-block;
box-sizing: border-box;
margin-left: 0.167em;
margin-right: 0.167em;
margin-bottom: 0.333em;
padding: 0.5em 1em;
border: 1px solid rgba(0, 0, 0, 0.3);
border-radius: 2px;
cursor: pointer;
font-size: 0.88em;
line-height: 1.6em;
color: inherit;
white-space: nowrap;
overflow: hidden;
background-color: rgba(0, 0, 0, 0.1); /* Fallback */
background: linear-gradient(to bottom, rgba(230, 230, 230, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr="rgba(230, 230, 230, 0.1)", EndColorStr="rgba(0, 0, 0, 0.1)");
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
text-decoration: none;
outline: none;
text-overflow: ellipsis;
}
div.dt-buttons > .dt-button:first-child,
div.dt-buttons > div.dt-button-split .dt-button:first-child {
margin-left: 0;
}
div.dt-buttons > .dt-button.disabled,
div.dt-buttons > div.dt-button-split .dt-button.disabled {
cursor: default;
opacity: 0.4;
}
div.dt-buttons > .dt-button.dt-button-active:not(.disabled),
div.dt-buttons > div.dt-button-split .dt-button.dt-button-active:not(.disabled) {
background-color: rgba(0, 0, 0, 0.1); /* Fallback */
background: linear-gradient(to bottom, rgba(179, 179, 179, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr="rgba(179, 179, 179, 0.1)", EndColorStr="rgba(0, 0, 0, 0.1)");
box-shadow: inset 1px 1px 3px #999999;
}
div.dt-buttons > .dt-button.dt-button-active:not(.disabled):hover:not(.disabled),
div.dt-buttons > div.dt-button-split .dt-button.dt-button-active:not(.disabled):hover:not(.disabled) {
box-shadow: inset 1px 1px 3px #999999;
background-color: rgba(0, 0, 0, 0.1); /* Fallback */
background: linear-gradient(to bottom, rgba(128, 128, 128, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr="rgba(128, 128, 128, 0.1)", EndColorStr="rgba(0, 0, 0, 0.1)");
}
div.dt-buttons > .dt-button:hover,
div.dt-buttons > div.dt-button-split .dt-button:hover {
text-decoration: none;
}
div.dt-buttons > .dt-button:hover:not(.disabled),
div.dt-buttons > div.dt-button-split .dt-button:hover:not(.disabled) {
border: 1px solid #666;
background-color: rgba(0, 0, 0, 0.1); /* Fallback */
background: linear-gradient(to bottom, rgba(153, 153, 153, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr="rgba(153, 153, 153, 0.1)", EndColorStr="rgba(0, 0, 0, 0.1)");
}
div.dt-buttons > .dt-button:focus:not(.disabled),
div.dt-buttons > div.dt-button-split .dt-button:focus:not(.disabled) {
outline: 2px solid rgb(53, 132, 228);
}
div.dt-buttons > .dt-button embed,
div.dt-buttons > div.dt-button-split .dt-button embed {
outline: none;
}
div.dt-buttons > div.dt-button-split .dt-button:first-child {
border-right: 1px solid rgba(0, 0, 0, 0.15);
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
div.dt-buttons > div.dt-button-split .dt-button:first-child:hover {
border-right: 1px solid #666;
}
div.dt-buttons > div.dt-button-split .dt-button:last-child {
border-left: 1px solid transparent;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
div.dt-buttons > div.dt-button-split .dt-button:last-child:hover {
border-left: 1px solid #666;
}
div.dt-buttons span.dt-button-down-arrow {
position: relative;
top: -2px;
font-size: 10px;
padding-left: 10px;
line-height: 1em;
opacity: 0.6;
}
div.dt-buttons div.dt-button-split {
display: inline-block;
}
div.dt-buttons div.dt-button-split .dt-button:first-child {
margin-right: 0;
}
div.dt-buttons div.dt-button-split .dt-button:last-child {
margin-left: -1px;
padding-left: 0.75em;
padding-right: 0.75em;
z-index: 2;
}
div.dt-buttons div.dt-button-split .dt-button:last-child span {
padding-left: 0;
}
div.dt-button-collection {
position: absolute;
top: 0;
left: 0;
width: 200px;
margin-top: 3px;
margin-bottom: 3px;
padding: 0.75em 0;
border: 1px solid rgba(0, 0, 0, 0.4);
background-color: white;
overflow: hidden;
z-index: 2002;
border-radius: 5px;
box-shadow: 3px 4px 10px 1px rgba(0, 0, 0, 0.3);
box-sizing: border-box;
}
div.dt-button-collection .dt-button {
position: relative;
left: 0;
right: 0;
width: 100%;
display: block;
float: none;
background: none;
margin: 0;
padding: 0.5em 1em;
border: none;
text-align: left;
cursor: pointer;
color: inherit;
}
div.dt-button-collection .dt-button.dt-button-active {
background: none;
box-shadow: none;
}
div.dt-button-collection .dt-button.disabled {
cursor: default;
opacity: 0.4;
}
div.dt-button-collection .dt-button:hover:not(.disabled) {
border: none;
background: rgba(153, 153, 153, 0.1);
box-shadow: none;
}
div.dt-button-collection div.dt-button-split {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: flex-start;
align-content: flex-start;
align-items: stretch;
}
div.dt-button-collection div.dt-button-split button.dt-button {
margin: 0;
display: inline-block;
width: 0;
flex-grow: 1;
flex-shrink: 0;
flex-basis: 50px;
}
div.dt-button-collection div.dt-button-split button.dt-button-split-drop {
min-width: 33px;
flex: 0;
}
div.dt-button-collection.fixed .dt-button {
border-radius: 0.25em;
background: rgba(255, 255, 255, 0.1);
}
div.dt-button-collection.fixed {
position: fixed;
display: block;
top: 50%;
left: 50%;
margin-left: -75px;
border-radius: 5px;
background-color: white;
padding: 0.5em;
}
div.dt-button-collection.fixed.two-column {
margin-left: -200px;
}
div.dt-button-collection.fixed.three-column {
margin-left: -225px;
}
div.dt-button-collection.fixed.four-column {
margin-left: -300px;
}
div.dt-button-collection.fixed.columns {
margin-left: -409px;
}
@media screen and (max-width: 1024px) {
div.dt-button-collection.fixed.columns {
margin-left: -308px;
}
}
@media screen and (max-width: 640px) {
div.dt-button-collection.fixed.columns {
margin-left: -203px;
}
}
@media screen and (max-width: 460px) {
div.dt-button-collection.fixed.columns {
margin-left: -100px;
}
}
div.dt-button-collection.fixed > :last-child {
max-height: 100vh;
overflow: auto;
}
div.dt-button-collection.two-column > :last-child, div.dt-button-collection.three-column > :last-child, div.dt-button-collection.four-column > :last-child {
display: block !important;
-webkit-column-gap: 8px;
-moz-column-gap: 8px;
-ms-column-gap: 8px;
-o-column-gap: 8px;
column-gap: 8px;
}
div.dt-button-collection.two-column > :last-child > *, div.dt-button-collection.three-column > :last-child > *, div.dt-button-collection.four-column > :last-child > * {
-webkit-column-break-inside: avoid;
break-inside: avoid;
}
div.dt-button-collection.two-column {
width: 400px;
}
div.dt-button-collection.two-column > :last-child {
padding-bottom: 1px;
column-count: 2;
}
div.dt-button-collection.three-column {
width: 450px;
}
div.dt-button-collection.three-column > :last-child {
padding-bottom: 1px;
column-count: 3;
}
div.dt-button-collection.four-column {
width: 600px;
}
div.dt-button-collection.four-column > :last-child {
padding-bottom: 1px;
column-count: 4;
}
div.dt-button-collection .dt-button {
border-radius: 0;
}
div.dt-button-collection.columns {
width: auto;
}
div.dt-button-collection.columns > :last-child {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: center;
gap: 6px;
width: 818px;
padding-bottom: 1px;
}
div.dt-button-collection.columns > :last-child .dt-button {
min-width: 200px;
flex: 0 1;
margin: 0;
}
div.dt-button-collection.columns.dtb-b3 > :last-child, div.dt-button-collection.columns.dtb-b2 > :last-child, div.dt-button-collection.columns.dtb-b1 > :last-child {
justify-content: space-between;
}
div.dt-button-collection.columns.dtb-b3 .dt-button {
flex: 1 1 32%;
}
div.dt-button-collection.columns.dtb-b2 .dt-button {
flex: 1 1 48%;
}
div.dt-button-collection.columns.dtb-b1 .dt-button {
flex: 1 1 100%;
}
@media screen and (max-width: 1024px) {
div.dt-button-collection.columns > :last-child {
width: 612px;
}
}
@media screen and (max-width: 640px) {
div.dt-button-collection.columns > :last-child {
width: 406px;
}
div.dt-button-collection.columns.dtb-b3 .dt-button {
flex: 0 1 32%;
}
}
@media screen and (max-width: 460px) {
div.dt-button-collection.columns > :last-child {
width: 200px;
}
}
div.dt-button-background {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.7); /* Fallback */
background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); /* W3C Markup, IE10 Release Preview */
z-index: 2001;
}
.dt-button.processing {
color: rgba(0, 0, 0, 0.2);
}
.dt-button.processing:after {
position: absolute;
top: 50%;
left: 50%;
width: 16px;
height: 16px;
margin: -8px 0 0 -8px;
box-sizing: border-box;
display: block;
content: " ";
border: 2px solid rgb(40, 40, 40);
border-radius: 50%;
border-left-color: transparent;
border-right-color: transparent;
animation: dtb-spinner 1500ms infinite linear;
-o-animation: dtb-spinner 1500ms infinite linear;
-ms-animation: dtb-spinner 1500ms infinite linear;
-webkit-animation: dtb-spinner 1500ms infinite linear;
-moz-animation: dtb-spinner 1500ms infinite linear;
}
@media screen and (max-width: 640px) {
div.dt-buttons {
float: none !important;
text-align: center;
}
}
html.dark div.dt-buttons > .dt-button,
html.dark div.dt-buttons > div.dt-button-split .dt-button {
border: 1px solid rgb(89, 91, 94);
background: rgba(255, 255, 255, 0.15);
}
html.dark div.dt-buttons > .dt-button.dt-button-active:not(.disabled),
html.dark div.dt-buttons > div.dt-button-split .dt-button.dt-button-active:not(.disabled) {
background: rgba(179, 179, 179, 0.15);
box-shadow: inset 1px 1px 2px black;
}
html.dark div.dt-buttons > .dt-button.dt-button-active:not(.disabled):hover:not(.disabled),
html.dark div.dt-buttons > div.dt-button-split .dt-button.dt-button-active:not(.disabled):hover:not(.disabled) {
background: rgba(128, 128, 128, 0.15);
box-shadow: inset 1px 1px 3px black;
}
html.dark div.dt-buttons > .dt-button:hover:not(.disabled),
html.dark div.dt-buttons > div.dt-button-split .dt-button:hover:not(.disabled) {
background: rgba(179, 179, 179, 0.15);
}
html.dark div.dt-buttons > .dt-button:focus:not(.disabled),
html.dark div.dt-buttons > div.dt-button-split .dt-button:focus:not(.disabled) {
outline: 2px solid rgb(110, 168, 254);
}
html.dark div.dt-buttons > div.dt-button-split .dt-button:first-child {
border-right: 1px solid rgba(255, 255, 255, 0.1);
}
html.dark div.dt-buttons > div.dt-button-split .dt-button:first-child:hover {
border-right: 1px solid rgb(89, 91, 94);
}
html.dark div.dt-buttons > div.dt-button-split .dt-button:last-child:hover {
border-left: 1px solid rgb(89, 91, 94);
}
html.dark div.dt-button-collection {
border: 1px solid rgba(255, 255, 255, 0.15);
background-color: rgb(33, 37, 41);
box-shadow: 3px 4px 10px 1px rgba(0, 0, 0, 0.8);
}
@@ -0,0 +1,58 @@
/*! DataTables styling wrapper for Buttons
* © SpryMedia Ltd - datatables.net/license
*/
(function( factory ){
if ( typeof define === 'function' && define.amd ) {
// AMD
define( ['jquery', 'datatables.net-dt', 'datatables.net-buttons'], function ( $ ) {
return factory( $, window, document );
} );
}
else if ( typeof exports === 'object' ) {
// CommonJS
var jq = require('jquery');
var cjsRequires = function (root, $) {
if ( ! $.fn.dataTable ) {
require('datatables.net-dt')(root, $);
}
if ( ! $.fn.dataTable.Buttons ) {
require('datatables.net-buttons')(root, $);
}
};
if (typeof window === 'undefined') {
module.exports = function (root, $) {
if ( ! root ) {
// CommonJS environments without a window global must pass a
// root. This will give an error otherwise
root = window;
}
if ( ! $ ) {
$ = jq( root );
}
cjsRequires( root, $ );
return factory( $, root, root.document );
};
}
else {
cjsRequires( window, jq );
module.exports = factory( jq, window, window.document );
}
}
else {
// Browser
factory( jQuery, window, document );
}
}(function( $, window, document ) {
'use strict';
var DataTable = $.fn.dataTable;
return DataTable;
}));
File diff suppressed because one or more lines are too long
@@ -0,0 +1,5 @@
/*!
* Print button for Buttons and DataTables.
* © SpryMedia Ltd - datatables.net/license
*/
!function(n){var o,r;"function"==typeof define&&define.amd?define(["jquery","datatables.net","datatables.net-buttons"],function(t){return n(t,window,document)}):"object"==typeof exports?(o=require("jquery"),r=function(t,e){e.fn.dataTable||require("datatables.net")(t,e),e.fn.dataTable.Buttons||require("datatables.net-buttons")(t,e)},"undefined"==typeof window?module.exports=function(t,e){return t=t||window,e=e||o(t),r(t,e),n(e,t,t.document)}:(r(window,o),module.exports=n(o,window,window.document))):n(jQuery,window,document)}(function(p,m,t){"use strict";function b(t){return n.href=t,-1===(t=n.host).indexOf("/")&&0!==n.pathname.indexOf("/")&&(t+="/"),n.protocol+"//"+t+n.pathname+n.search}var e=p.fn.dataTable,n=t.createElement("a");return e.ext.buttons.print={className:"buttons-print",text:function(t){return t.i18n("buttons.print","Print")},action:function(t,e,n,o,r){var i=e.buttons.exportData(p.extend({decodeEntities:!1},o.exportOptions)),a=e.buttons.exportInfo(o),u=e.columns(o.exportOptions.columns).nodes().map(function(t){return t.className}).toArray(),s='<table class="'+e.table().node().className+'">';o.header&&(s+="<thead>"+i.headerStructure.map(function(t){return"<tr>"+t.map(function(t){return t?'<th colspan="'+t.colspan+'" rowspan="'+t.rowspan+'">'+t.title+"</th>":""}).join("")+"</tr>"}).join("")+"</thead>"),s+="<tbody>";for(var d=0,c=i.body.length;d<c;d++)s+=function(t,e){for(var n="<tr>",o=0,r=t.length;o<r;o++){var i=null===t[o]||void 0===t[o]?"":t[o];n+="<"+e+" "+(u[o]?'class="'+u[o]+'"':"")+">"+i+"</"+e+">"}return n+"</tr>"}(i.body[d],"td");s+="</tbody>",o.footer&&i.footer&&(s+="<tfoot>"+i.footerStructure.map(function(t){return"<tr>"+t.map(function(t){return t?'<th colspan="'+t.colspan+'" rowspan="'+t.rowspan+'">'+t.title+"</th>":""}).join("")+"</tr>"}).join("")+"</tfoot>"),s+="</table>";var l=m.open("","");if(l){l.document.close();var f="<title>"+a.title+"</title>";p("style, link").each(function(){f+=function(t){t=p(t).clone()[0];return"link"===t.nodeName.toLowerCase()&&(t.href=b(t.href)),t.outerHTML}(this)});try{l.document.head.innerHTML=f}catch(t){p(l.document.head).html(f)}l.document.body.innerHTML="<h1>"+a.title+"</h1><div>"+(a.messageTop||"")+"</div>"+s+"<div>"+(a.messageBottom||"")+"</div>",p(l.document.body).addClass("dt-print-view"),p("img",l.document.body).each(function(t,e){e.setAttribute("src",b(e.getAttribute("src")))}),o.customize&&o.customize(l,o,e);l.setTimeout(function(){o.autoPrint&&(l.print(),l.close())},1e3),r()}else e.buttons.info(e.i18n("buttons.printErrorTitle","Unable to open print view"),e.i18n("buttons.printErrorMsg","Please allow popups in your browser for this site to be able to view the print view."),5e3)},async:100,title:"*",messageTop:"*",messageBottom:"*",exportOptions:{},header:!0,footer:!0,autoPrint:!0,customize:null},e});
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+23
View File
@@ -0,0 +1,23 @@
// add child row
function add_child_div (data) {
var child = data.split ('_');
var child_div = $ ('#child_data_' + child[2]);
var table_id = 'child_details_table_' + child[2];
var pregnancy = 'pregnancy_' + child[2];
var count = document.getElementById (table_id).rows.length;
var row_id = count++;
$ (child_div)
.append (`<tr><td><input class="form-control" id="child_name_${row_id}" name="${pregnancy}_child_name[]" type="text" "placeholder"="Happy Mukisa" /></td>
<td style="min-width: 90px;"><select style="display: inline-block;" class="form-control" name="${pregnancy}_child_gender[]" id="${pregnancy}_child_gender_${row_id}"><option value=" " selected>-- Select --</option><option value="1">Male</option><option value="2">Female</option></select></td>
<td><input type='number' name='${pregnancy}_child_patient_number[]' id='child_patient_number_${row_id}' class='form-control' min='0'></td>
<td><input type='number' name='${pregnancy}_child_birth_weight[]' id='child_birth_weight_${row_id}' class='form-control' min='0' step='0.1'></td>
<td><select style="display: inline-block;" class="form-control" name="${pregnancy}_child_immunisation_status[]" id="${pregnancy}_child_immunisation_status_${row_id}"><option value=" " selected>-- Select --</option><option value="1">Not Started</option><option value="2">Ongoing</option><option value="3">Completed</option></select></td>
<td><textarea class="form-control" name="${pregnancy}_child_health_condition[]" rows="3" "id"="${pregnancy}_child_health_condition_${row_id}"></textarea></td>
<td><button onclick="deleteRow(this)" class="btn btn-sm btn-rounded btn-danger" title="Delete this row" style="color: white;" type="button"><i class="fa fa-trash"></i></button></td>
</tr>`);
}
// delete child row
function deleteRow (ele) {
ele.parentNode.parentNode.remove ();
}
@@ -0,0 +1,145 @@
// add other medical presentations maternity admission
document
.getElementById ('show_other_medical_presentations_input')
.addEventListener ('change', function () {
var textInputContainer = document.getElementById (
'other_medical_presentations_input'
);
if (this.checked) {
textInputContainer.style.display = 'block';
} else {
textInputContainer.style.display = 'none';
}
});
// add other sgbv sexual and gender based violence
document
.getElementById ('show_other_sgbv_risk_input')
.addEventListener ('change', function () {
var textInputContainer = document.getElementById ('other_sgbv_risk_input');
if (this.checked) {
textInputContainer.style.display = 'block';
} else {
textInputContainer.style.display = 'none';
}
});
// add other pregnancy complications text box
document
.getElementById ('show_other_pregnancy_complications_input')
.addEventListener ('change', function () {
var ptextInputContainer = document.getElementById (
'other_pregnancy_complications_input'
);
if (this.checked) {
ptextInputContainer.style.display = 'block';
} else {
ptextInputContainer.style.display = 'none';
}
});
// add heart physical examinatinon input
document
.getElementById ('show_heart_physical_examination_input')
.addEventListener ('change', function () {
var ptextInputContainer = document.getElementById (
'heart_physical_examination_input'
);
if (this.checked) {
ptextInputContainer.style.display = 'block';
} else {
ptextInputContainer.style.display = 'none';
}
});
// add other physical examinatinon input
document
.getElementById ('show_other_physical_examination_input')
.addEventListener ('change', function () {
var ptextInputContainer = document.getElementById (
'other_physical_examination_input'
);
if (this.checked) {
ptextInputContainer.style.display = 'block';
} else {
ptextInputContainer.style.display = 'none';
}
});
// add other obstetric risk factors
document
.getElementById ('show_other_obstetric_risk_factors_input')
.addEventListener ('change', function () {
var ptextInputContainer = document.getElementById (
'other_obstetric_risk_factors_input'
);
if (this.checked) {
ptextInputContainer.style.display = 'block';
} else {
ptextInputContainer.style.display = 'none';
}
});
// add other pelvis fracture input
document
.getElementById ('show_pelvis_fracture_input')
.addEventListener ('change', function () {
var dtextInputContainer = document.getElementById ('pelvis_fracture_input');
if (this.checked) {
dtextInputContainer.style.display = 'block';
} else {
dtextInputContainer.style.display = 'none';
}
});
// add spine fracture input
document
.getElementById ('show_spine_fracture_input')
.addEventListener ('change', function () {
var dtextInputContainer = document.getElementById ('spine_fracture_input');
if (this.checked) {
dtextInputContainer.style.display = 'block';
} else {
dtextInputContainer.style.display = 'none';
}
});
// add femur fracture input
document
.getElementById ('show_femur_fracture_input')
.addEventListener ('change', function () {
var dtextInputContainer = document.getElementById ('femur_fracture_input');
if (this.checked) {
dtextInputContainer.style.display = 'block';
} else {
dtextInputContainer.style.display = 'none';
}
});
// add other fractures input
document
.getElementById ('show_other_fracture_input')
.addEventListener ('change', function () {
var dtextInputContainer = document.getElementById ('other_fracture_input');
if (this.checked) {
dtextInputContainer.style.display = 'block';
} else {
dtextInputContainer.style.display = 'none';
}
});
// blood transfusion input
document
.getElementById ('show_blood_transfusion_input')
.addEventListener ('change', function () {
var dtextInputContainer = document.getElementById (
'blood_transfusion_input'
);
if (this.checked) {
dtextInputContainer.style.display = 'block';
} else {
dtextInputContainer.style.display = 'none';
}
});
@@ -0,0 +1,15 @@
// family planning methods select2
$('#family_planning_methods').select2();
$('#family_planning_methods').click(function(){
if($('#family_planning_methods option:selected').length > 0) {
$('#date_discontinued_div, #why_stop_family_planning_div').show();
$('.date_discontinued, #why_stop_family_planning').addClass('compulsory');
$('.date_discontinued, #why_stop_family_planning').prop('required', true);
}
else {
$('#date_discontinued_div, #why_stop_family_planning_div').hide();
$('.date_discontinued, #why_stop_family_planning').removeClass('compulsory');
$('.date_discontinued, #why_stop_family_planning').prop('required', false);
}
});
@@ -0,0 +1,607 @@
function get_score(id, value) {
let slug = $('#vitals_slug_' + id).val();
let age_group = $('#age_group').val();
if (slug != '') {
if (age_group == 1) {
if (slug === 'temperature') {
if (between(value, 36.7, 37.2)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-size": "bold"
}).text('0');
} else if (between(value, 35.5, 36.6) || between(value, 37.3, 38)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('1');
} else if (between(value, 35.0, 35.4) || between(value, 38, 100)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('2');
} else if (between(value, 0, 35)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('3');
} else {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('Not in range');
}
}
if (slug === 'pulse') {
if (between(value, 110, 160)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "thick"
}).text('0');
} else if (between(value, 100, 109) || between(value, 161, 180)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('1');
} else if (between(value, 70, 99) || between(value, 181, 190)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('2');
} else if (between(value, 1, 70) || between(value, 191, 300)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('3');
} else {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('Not in Range');
}
}
if (slug === 'respirations') {
if (between(value, 30, 60)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "thick"
}).text('0');
} else if (between(value, 25, 29) || between(value, 61, 70)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("1");
} else if (between(value, 20, 24) || between(value, 71, 80)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("2");
} else if (between(value, 0, 19) || between(value, 81, 200)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("3");
} else {
$('#vitals_news_' + id).css({
"color": "red"
}).text("Not in range");
}
}
if (slug === 'sao2') {
if (between(value, 95, 1000)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-color": "green"
}).text('0');
} else if (between(value, 90, 94)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-color": "red"
}).text('1');
} else if (between(value, 0, 89)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-color": "red"
}).text('2');
} else {
$('#vitals_news_' + id).css({
"color": "red",
"font-color": "red"
}).text('Not in range');
}
}
if (slug === 'muac') {
if (between(value, 12.5, 50)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "bolder"
}).text('GREEN');
} else if (between(value, 11.5, 12.4)) {
$('#vitals_news_' + id).css({
"color": "#FFC40C",
"font-weight": "bolder"
}).text('YELLOW');
} else if (between(value, 1, 11.4)) {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "bolder"
}).text('RED');
} else {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "normal"
}).text('Not in range');
}
}
} else if (age_group == 2) {
if (slug === 'temperature') {
if (between(value, 36.5, 37.4)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-size": "bold"
}).text('0');
} else if (between(value, 35, 36.4) || between(value, 37.5, 38.9)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('1');
} else if (between(value, 39, 100)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('2');
} else if (between(value, 0, 35)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('3');
} else {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('Not in range');
}
}
if (slug === 'pulse') {
if (between(value, 121, 160)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "thick"
}).text('0');
} else if (between(value, 101, 120) || between(value, 161, 180)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('1');
} else if (between(value, 81, 100) || between(value, 181, 200)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('2');
} else if (between(value, 0, 80) || between(value, 201, 1000)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('3');
} else {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('Not in Range');
}
}
if (slug === 'respirations') {
if (between(value, 31, 55)) {
$('#vitals_news_' + id).css({
"color": "green"
}).text("0");
} else if (between(value, 26, 30) || between(value, 56, 70)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("1");
} else if (between(value, 20, 25) || between(value, 71, 80)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("2");
} else if (between(value, 0, 19) || between(value, 81, 200)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("3");
} else {
$('#vitals_news_' + id).css({
"color": "red"
}).text("Not in range");
}
}
if (slug === 'muac') {
if (between(value, 12.5, 50)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "bolder"
}).text('GREEN');
} else if (between(value, 11.5, 12.4)) {
$('#vitals_news_' + id).css({
"color": "#FFC40C",
"font-weight": "bolder"
}).text('YELLOW');
} else if (between(value, 1, 11.4)) {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "bolder"
}).text('RED');
} else {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "normal"
}).text('Not in range');
}
}
} else if (age_group == 3) {
if (slug === 'temperature') {
if (between(value, 36.5, 37.4)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-size": "bold"
}).text('0');
} else if (between(value, 35, 36.4) || between(value, 37.5, 38.9)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('1');
} else if (between(value, 39, 100)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('2');
} else if (between(value, 0, 35)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('3');
} else {
$('#vitals_news_' + id).text('Not in range');
}
}
if (slug === 'pulse') {
if (between(value, 76, 130)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "thick"
}).text('0');
} else if (between(value, 66, 75) || between(value, 131, 160)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('1');
} else if (between(value, 56, 65) || between(value, 161, 180)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('2');
} else if (between(value, 0, 55) || between(value, 181, 1000)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('3');
} else {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('Not in Range');
}
}
if (slug === 'respirations') {
if (between(value, 21, 40)) {
$('#vitals_news_' + id).css({
"color": "green"
}).text("0");
} else if (between(value, 16, 20) || between(value, 41, 50)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("1");
} else if (between(value, 11, 15) || between(value, 51, 60)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("2");
} else if (between(value, 0, 10) || between(value, 61, 500)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("3");
} else {
$('#vitals_news_' + id).css({
"color": "red"
}).text("Not in range");
}
}
if (slug === 'muac') {
if (between(value, 12.5, 50)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "bolder"
}).text('GREEN');
} else if (between(value, 11.5, 12.4)) {
$('#vitals_news_' + id).css({
"color": "#FFC40C",
"font-weight": "bolder"
}).text('YELLOW');
} else if (between(value, 1, 11.4)) {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "bolder"
}).text('RED');
} else {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "normal"
}).text('Not in range');
}
}
} else if (age_group == 4) {
if (slug === 'temperature') {
if (between(value, 36.5, 37.4)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-size": "bold"
}).text('0');
} else if (between(value, 35, 36.4) || between(value, 37.5, 38.9)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('1');
} else if (between(value, 39, 100)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('2');
} else if (between(value, 0, 35)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('3');
} else {
$('#vitals_news_' + id).text('Not in range');
}
}
if (slug === 'pulse') {
if (between(value, 76, 100)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "thick"
}).text('0');
} else if (between(value, 66, 75) || between(value, 101, 120)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('1');
} else if (between(value, 56, 65) || between(value, 121, 140)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('2');
} else if (between(value, 0, 55) || between(value, 141, 500)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('3');
} else {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('Not in Range');
}
}
if (slug === 'respirations') {
if (between(value, 18, 30)) {
$('#vitals_news_' + id).css({
"color": "green"
}).text("0");
} else if (between(value, 14, 17) || between(value, 31, 40)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("1");
} else if (between(value, 10, 13) || between(value, 41, 50)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("2");
} else if (between(value, 0, 10) || between(value, 51, 500)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("3");
} else {
$('#vitals_news_' + id).css({
"color": "red"
}).text("Not in range");
}
}
if (slug === 'muac') {
if (between(value, 12.5, 50)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "bolder"
}).text('GREEN');
} else if (between(value, 11.5, 12.4)) {
$('#vitals_news_' + id).css({
"color": "#FFC40C",
"font-weight": "bolder"
}).text('YELLOW');
} else if (between(value, 1, 11.4)) {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "bolder"
}).text('RED');
} else {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "normal"
}).text('Not in range');
}
}
} else if (age_group == 5) {
if (slug === 'temperature') {
if (between(value, 36.0, 37.7)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-size": "bold"
}).text('0');
} else if (between(value, 35, 35.9) || between(value, 37.8, 38.5)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('1');
} else if (between(value, 34, 34.9) || between(value, 38.6, 100)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('2');
} else if (between(value, 0, 33)) {
$('#vitals_news_' + id).css({
'color': 'red'
}).text('3');
} else {
$('#vitals_news_' + id).text('Not in range');
}
}
if (slug === 'pulse') {
if (between(value, 51, 100)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "thick"
}).text('0');
} else if (between(value, 40, 50) || between(value, 101, 110)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('1');
} else if (between(value, 0, 39) || between(value, 111, 129)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('2');
} else if (between(value, 130, 500)) {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('3');
} else {
$('#vitals_news_' + id).css({
"color": "red",
"font-size": "thick"
}).text('Not in Range');
}
}
if (slug === 'respirations') {
if (between(value, 9, 18)) {
$('#vitals_news_' + id).css({
"color": "green"
}).text("0");
} else if (between(value, 19, 25)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("1");
} else if (between(value, 0, 8) || between(value, 26, 30)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("2");
} else if (between(value, 31, 500)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text("3");
} else {
$('#vitals_news_' + id).css({
"color": "red"
}).text("Not in range");
}
}
if (slug === 'systolic_bp') {
if (between(value, 101, 159)) {
$('#vitals_news_' + id).css({
"color": "green"
}).text('0');
} else if (between(value, 81, 100) || between(value, 160, 200)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text('1');
} else if (between(value, 71, 80) || between(value, 201, 1000)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text('2');
} else if (between(value, 0, 70)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text('3');
} else {
$('#systolic_bpValue').css({
"color": "red"
});
$('#vitals_news_' + id).text('Not in range');
}
}
if (slug === 'diastolic_bp') {
if (between(value, 0, 94)) {
$('#vitals_news_' + id).css({
"color": "green"
}).text('0');
} else if (between(value, 95, 104)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text('1');
} else if (between(value, 105, 500)) {
$('#vitals_news_' + id).css({
"color": "red"
}).text('2');
} else {
$('#vitals_news_' + id).css({
"color": "red"
}).text('Not in range');
}
}
if (slug === 'muac') {
if (between(value, 12.5, 50)) {
$('#vitals_news_' + id).css({
"color": "green",
"font-weight": "bolder"
}).text('GREEN');
} else if (between(value, 11.5, 12.4)) {
$('#vitals_news_' + id).css({
"color": "#FFC40C",
"font-weight": "bolder"
}).text('YELLOW');
} else if (between(value, 1, 11.4)) {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "bolder"
}).text('RED');
} else {
$('#vitals_news_' + id).css({
"color": "RED",
"font-weight": "normal"
}).text('Not in range');
}
}
}
}
}
function between(currentValue, low, high) {
if (currentValue < low) {
return false;
} else if (currentValue > high) {
return false;
} else {
return true;
}
}
+53
View File
@@ -0,0 +1,53 @@
$(document).ready(function () {
$("[id^='add_batch_']").on("click", function (e) {
e.preventDefault();
var id = /\d+(?=\D*$)/.exec($(this).attr('id'));
$("#div_to_append_"+id).append(`<div class='row appended_div_row' style='border: 2px solid #cbd1da'>
<div class='col-sm-12' style='padding: 0px;'>
<input type='hidden' name='item_batch_watcher_id[]' value='0'/>
<input type='hidden' name='batch_item_id[]' value='${id}'/>
<input type='hidden' name='batch_drug_id[]' value='0'>
<div class='hidden_input'>
<input type='text' name='batch_number[]' class='form-control col-sm-12 new_batch_number_${id}' placeholder='Batch'></div></div>
<div class='col-sm-12' style='padding: 0px;'>
<div class='hidden_input'>
<input type='number' name='batch_unit_cost[]' class='form-control col-md-12 new_batch_unit_cost new_batch_unit_cost_${id}' placeholder='Unit cost'></div></div>
<div class='col-sm-12' style='padding: 0px;'><div class='hidden_input'><input type='number' name='batch_quantity_balance[]' class='form-control col-md-12 new_batch_qty new_batch_quantity_balance_${id}' placeholder='Quantity'></div></div>
<div class='col-sm-12' style='padding: 0px;'><div class='hidden_input'><div class='input-group'><input type='text' name='expiry_date[]' autocomplete='off' placeholder='Expiry date' class='form-control col-md-12 expiry_date_input'><span class='input-group-addon'><i class='icon-calender'></i></span></div></div></div>
</div>`);
});
$("[id^='div_to_append_']").on("focus", ".expiry_date_input", function (e) {
$(this).datepicker({
autoclose: true,
todayHighlight: true,
format: 'yyyy-mm-dd'
});
});
$("[id^='div_to_append_']").on("change keyup", ".new_batch_qty", function (e) {
var id = /\d+(?=\D*$)/.exec($(this).attr('class'));
var total_quantity = 0;
//for the existing batches
$(".batch_quantity_balance_"+id).each(function () {
var batch_qty = $(this).val();
total_quantity += parseInt(batch_qty);
});
$(".new_batch_quantity_balance_"+id).each(function () {
var batch_qty = $(this).val();
total_quantity += parseInt(batch_qty);
});
$("#shown_input_"+id).text(total_quantity);
$("#physical_stock_"+id).val(total_quantity);
// var drug_cost = $("#cost_price_"+id).val();
// var drug_price = $("#non_insured_price_"+id).val();
// var drug_system_stock = $("#system_stock_"+id).val();
// calculateDifference(id, drug_cost, drug_price, drug_system_stock);
});
});
@@ -0,0 +1,50 @@
import socket
import hl7
import requests
import json
from datetime import datetime
# Create a TCP/IP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# Connect the socket to the port where the server is listening
server_address = ('192.168.192.245', 5100)
sock.connect(server_address)
bytes_to_decode = b''
while True:
data = sock.recv(1024)
if data and data != b'\x02':
bytes_to_decode += data
if data.decode('utf-8')[-2] == '\x1c':
# this is the end of the line hence we can begin decoding
try:
hl7_data = hl7.parse(bytes_to_decode.decode().strip())
results_parameter_list = []
for row in hl7_data[10:56]:
test_code = row[3][0][1][0]
test_result = row[5][0]
if type(row[8][0]) == hl7.containers.Repetition:
test_flag = row[8][0][0]
else:
test_flag = row[8][0]
results_parameter_list.append([test_code, test_result, test_flag])
return_str = "\x0bMSH|^~\\&|||||" + hl7_data[0][7][0] + "||ACK^R01|" + hl7_data[0][10][0]
return_str += "|P|2.3.1||||||UNICODE\rMSA|AA|" + hl7_data[0][10][0] + "|okay|||0|\r\x1c\r"
sock.sendall(bytes(return_str, 'utf-8'))
requests.post('http://192.168.192.105/lab_machines/receive_results_mindray', data={
'test_id': hl7_data[3][3][0],
'parameters': json.dumps(results_parameter_list),
'time': hl7_data[0][7][0]
})
except Exception as e:
pass
bytes_to_decode = b''
@@ -0,0 +1,25 @@
from subprocess import check_output, Popen, PIPE, STDOUT
import os
file_path = "/var/www/streamline/public/uploads/lab_machine_scripts/divine_mercy/main.py"
try:
# get the pid of the last process running with python3
pid_list = check_output(["pidof", "python3"]).split()
# iterate over the list of related pids
for pid in pid_list:
decoded_pid = pid.decode("utf-8")
file_path_from_pid = check_output(["ps", "-o", "cmd", decoded_pid]).split()[2].decode("utf-8")
if file_path_from_pid == file_path:
# kill the process with this path
delete_pid = check_output(["kill", "-9", decoded_pid])
break
# start a new process
os.system("nohup python3 " + file_path + " >/dev/null 2>&1 & ")
print(1)
except Exception as e:
print(e)
@@ -0,0 +1,49 @@
import socket
import hl7
import requests
import json
from datetime import datetime
# get the hostname
host = "10.23.14.97"
port = 5050
server_socket = socket.socket() # get instance
server_socket.bind((host, port)) # bind host address and port together
# configure how many client the server can listen simultaneously
server_socket.listen(2)
conn, address = server_socket.accept() # accept new connection
bytes_to_decode = b''
with conn:
while True:
data = conn.recv(1024)
if data and data != b'\x02':
bytes_to_decode += data
if data.decode('utf-8')[-2] == '\x1c':
# this is the end of the line hence we can begin decoding
try:
results_parameter_list = []
hl7_data = hl7.parse(bytes_to_decode.decode().strip())
sample_id = hl7_data[3][3]
for row in hl7_data[10:38]:
test_code = row[3][0][1][0]
test_result = row[5][0]
test_flag = row[8][0][0]
results_parameter_list.append([test_code, test_result, test_flag])
requests.post('http://127.0.0.1:8000/lab_machines/receive_results_mindray', {
'test_id': hl7_data[1][5][0],
'parameters': json.dumps(results_parameter_list),
'time': hl7_data[0][6][0]
})
except Exception as e:
print(e)
bytes_to_decode = b''
@@ -0,0 +1,25 @@
from subprocess import check_output, Popen, PIPE, STDOUT
import os
file_path = "/var/www/streamline/public/uploads/lab_machine_scripts/kisiizi/dymind/main.py"
try:
# get the pid of the last process running with python3
pid_list = check_output(["pidof", "python3"]).split()
# iterate over the list of related pids
for pid in pid_list:
decoded_pid = pid.decode("utf-8")
file_path_from_pid = check_output(["ps", "-o", "cmd", decoded_pid]).split()[2].decode("utf-8")
if file_path_from_pid == file_path:
# kill the process with this path
delete_pid = check_output(["kill", "-9", decoded_pid])
break
# start a new process
os.system("nohup python3 " + file_path + " >/dev/null 2>&1 & ")
print(1)
except Exception as e:
print(e)
@@ -0,0 +1,52 @@
import socket
import hl7
import requests
import json
from datetime import datetime
# Create a TCP/IP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# Connect the socket to the port where the server is listening
server_address = ('192.168.0.91', 5100)
print('connecting to %s port %s' % server_address)
sock.connect(server_address)
bytes_to_decode = b''
while True:
data = sock.recv(1024)
if data and data != b'\x02':
bytes_to_decode += data
if data.decode('utf-8')[-2] == '\x1c':
# this is the end of the line hence we can begin decoding
try:
hl7_data = hl7.parse(bytes_to_decode.decode("utf-8"))
results_parameter_list = []
for row in hl7_data[9:32]:
test_code = row[3][0][1][0]
test_result = row[5][0]
if type(row[8][0]) == hl7.containers.Repetition:
test_flag = row[8][0][0]
else:
test_flag = row[8][0]
results_parameter_list.append([test_code, test_result, test_flag])
return_str = "\x0bMSH|^~\\&|||||" + hl7_data[0][7][0] + "||ACK^R01|" + hl7_data[0][10][0]
return_str += "|P|2.3.1||||||UNICODE\rMSA|AA|" + hl7_data[0][10][0] + "|okay|||0|\r\x1c\r"
sock.sendall(bytes(return_str, 'utf-8'))
requests.post('http://192.168.0.55/lab_machines/receive_results_mindray', data={
'test_id': hl7_data[3][3][0],
'parameters': json.dumps(results_parameter_list),
'time': hl7_data[0][7][0]
})
except Exception as e:
pass
bytes_to_decode = b''
@@ -0,0 +1,25 @@
from subprocess import check_output, Popen, PIPE, STDOUT
import os
file_path = "/var/www/streamline/public/uploads/lab_machine_scripts/sebbi/bc_5000/main.py"
try:
# get the pid of the last process running with python3
pid_list = check_output(["pidof", "python3"]).split()
# iterate over the list of related pids
for pid in pid_list:
decoded_pid = pid.decode("utf-8")
file_path_from_pid = check_output(["ps", "-o", "cmd", decoded_pid]).split()[2].decode("utf-8")
if file_path_from_pid == file_path:
# kill the process with this path
delete_pid = check_output(["kill", "-9", decoded_pid])
break
# start a new process
os.system("nohup python3 " + file_path + " > terminal_output 2>&1 </dev/null & ")
print(1)
except Exception as e:
print(e)
@@ -0,0 +1,61 @@
import socket
import hl7
import requests
import json
from datetime import datetime
# get the hostname
host = "192.168.0.55"
port = 5342
server_socket = socket.socket() # get instance
server_socket.bind((host, port)) # bind host address and port together
# configure how many client the server can listen simultaneously
server_socket.listen(2)
conn, address = server_socket.accept() # accept new connection
bytes_to_decode = b''
with conn:
while True:
data = conn.recv(1024)
if data and data != b'\x02':
bytes_to_decode += data
if data.decode('utf-8')[-2] == '\x1c':
# this is the end of the line hence we can begin decoding
try:
hl7_data = hl7.parse(bytes_to_decode.decode().strip())
results_parameter_list = []
test_mode = str(hl7_data[6][5])
if test_mode == 'CBC+DIFF':
last_index = 40
elif test_mode == 'CBC+DIFF+CRP':
last_index = 41
else:
bytes_to_decode = b''
continue
for row in hl7_data[9:last_index]:
test_code = row[3][0][1][0]
test_result = row[5][0]
if type(row[8][0]) == hl7.containers.Repetition:
test_flag = row[8][0][0]
else:
test_flag = row[8][0]
results_parameter_list.append([test_code, test_result, test_flag])
requests.post('http://192.168.0.55/lab_machines/receive_results_mindray', {
'test_id': hl7_data[3][3][0],
'parameters': json.dumps(results_parameter_list),
'time': hl7_data[0][7][0]
})
except Exception as e:
pass
bytes_to_decode = b''
@@ -0,0 +1,25 @@
from subprocess import check_output, Popen, PIPE, STDOUT
import os
file_path = "/var/www/streamline/public/uploads/lab_machine_scripts/sebbi/bc_5390/main.py"
try:
# get the pid of the last process running with python3
pid_list = check_output(["pidof", "python3"]).split()
# iterate over the list of related pids
for pid in pid_list:
decoded_pid = pid.decode("utf-8")
file_path_from_pid = check_output(["ps", "-o", "cmd", decoded_pid]).split()[2].decode("utf-8")
if file_path_from_pid == file_path:
# kill the process with this path
delete_pid = check_output(["kill", "-9", decoded_pid])
break
# start a new process
os.system("nohup python3 " + file_path + " > terminal_output 2>&1 </dev/null & ")
print(1)
except Exception as e:
print(e)
@@ -0,0 +1,50 @@
import socket
import hl7
import requests
import json
from datetime import datetime
# Create a TCP/IP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# Connect the socket to the port where the server is listening
server_address = ('192.168.0.78', 5100)
sock.connect(server_address)
bytes_to_decode = b''
while True:
data = sock.recv(1024)
if data and data != b'\x02':
bytes_to_decode += data
if data.decode('utf-8')[-2] == '\x1c':
# this is the end of the line hence we can begin decoding
try:
hl7_data = hl7.parse(bytes_to_decode.decode().strip())
results_parameter_list = []
for row in hl7_data[8:32]:
test_code = row[3][0][1][0]
test_result = row[5][0]
if type(row[8][0]) == hl7.containers.Repetition:
test_flag = row[8][0][0]
else:
test_flag = row[8][0]
results_parameter_list.append([test_code, test_result, test_flag])
return_str = "\x0bMSH|^~\\&|||||" + hl7_data[0][7][0] + "||ACK^R01|" + hl7_data[0][10][0]
return_str += "|P|2.3.1||||||UNICODE\rMSA|AA|" + hl7_data[0][10][0] + "|okay|||0|\r\x1c\r"
sock.sendall(bytes(return_str, 'utf-8'))
requests.post('http://192.168.0.250/lab_machines/receive_results_mindray', data={
'test_id': hl7_data[3][3][0],
'parameters': json.dumps(results_parameter_list),
'time': hl7_data[0][7][0]
})
except Exception as e:
pass
bytes_to_decode = b''
@@ -0,0 +1,25 @@
from subprocess import check_output, Popen, PIPE, STDOUT
import os
file_path = "/var/www/html/streamline/public/uploads/lab_machine_scripts/soft_power/main.py"
try:
# get the pid of the last process running with python3
pid_list = check_output(["pidof", "python3"]).split()
# iterate over the list of related pids
for pid in pid_list:
decoded_pid = pid.decode("utf-8")
file_path_from_pid = check_output(["ps", "-o", "cmd", decoded_pid]).split()[2].decode("utf-8")
if file_path_from_pid == file_path:
# kill the process with this path
delete_pid = check_output(["kill", "-9", decoded_pid])
break
# start a new process
os.system("nohup python3 " + file_path + " >/dev/null 2>&1 & ")
print(1)
except Exception as e:
print(e)
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB