development

- admin menu alignment
- fix svg display
- fix print buttons
pull/3/head
Dan Gowans 2025-03-21 10:25:48 -04:00
parent 80fa36853d
commit fa3e40253f
14 changed files with 116 additions and 62 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -1,15 +1,10 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="3593mm"
height="3842mm"
viewBox="0 0 3593 3842"
viewBox="0 0 3842 3842"
version="1.1"
id="svg3"
sodipodi:docname="sunrise-cms.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
inkscape:export-filename="sunrise-cms.png"
inkscape:export-xdpi="2.6444559"
inkscape:export-ydpi="2.6444559"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
@ -25,30 +20,26 @@
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.07917912"
inkscape:cx="4868.7078"
inkscape:cy="10880.394"
inkscape:zoom="0.21160854"
inkscape:cx="1798.1316"
inkscape:cy="1925.7257"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg3"
showgrid="false" />
inkscape:current-layer="svg3" />
<path
fill="#16272f"
d="M95 3826c-44-23-66-45-81-81l-14-32v-216l11-39c6-22 22-57 35-78l24-38 41-29 40-30 68-17 67-18 2-520 2-521 12-50c27-122 67-220 131-315l29-45 82-80 82-80 89-47 90-46 90-29 90-28h350l90 28 90 29 74 39c164 88 273 202 360 377l41 81 20 86 20 86v1036l168 6 167 5 43 16 44 16 38 30 39 31 30 61 31 61v237l-15.922 78.571-30.507 50.95L1530 3842H125Z"
d="m 229.73181,3826 c -43.99994,-23 -65.99991,-45 -80.99989,-81 l -13.99998,-32 v -216 l 10.99999,-39 c 5.99999,-22 21.99997,-57 34.99995,-78 l 23.99996,-38 40.99996,-29 40,-30 68,-17 67,-18 2,-520 2,-521 12,-50 c 27,-122 67,-220 131,-315 l 29,-45 82,-80 82,-80 89,-47 90,-46 90,-29 90,-28 h 350 l 90,28 90,29 74,39 c 164,88 273,202 360,377 l 41,81 20,86 20,86 v 1036 l 168,6 167,5 43,16 44,16 38,30 39,31 30,61 31,61 v 237 l -15.922,78.571 -30.507,50.95 -1013.571,0.479 h -1405 z"
id="path1" />
<path
fill="#2e3f4a"
d="M320 3678v-113l20-33 20-33 43-19 42-20h831l22-16 22-15v-56l-18-16-19-17H605l3-517 2-518 11-65 10-65 39-81 39-81 72-77 72-77 62-44c34-25 92-59 128-76l66-31 88-15 88-15 105 5 105 6 60 16 60 17 70 35 70 35 45 36c64 53 125 117 177 190l46 63 31 77 31 77 5 535c3 294 3 543 1 553l-3 17h-295l-16 18-17 19v50l19 17 18 17 376 2 376 2 28 21c15 11 38 36 51 54l22 33v217H320Z"
d="m 264.7318,3600 v -113 l 20,-33 20,-33 43,-19 42,-20 h 831 l 22,-16 22,-15 v -56 l -18,-16 -19,-17 h -678 l 3,-517 2,-518 11,-65 10,-65 39,-81 39,-81 72,-77 72,-77 62,-44 c 34,-25 92,-59 128,-76 l 66,-31 88,-15 88,-15 105,5 105,6 60,16 60,17 70,35 70,35 45,36 c 64,53 125,117 177,190 l 46,63 31,77 31,77 5,535 c 3,294 3,543 1,553 l -3,17 h -295 l -16,18 -17,19 v 50 l 19,17 18,17 376,2 376,2 28,21 c 15,11 38,36 51,54 l 22,33 v 217 h -2330 z"
style="fill:#6f8895;fill-opacity:1"
transform="translate(-190 -78)"
id="path2" />
<path
fill="#e95800"
d="m 2277,2964 -17,-19 v -420 l 18,-16 19,-17 h 19 c 10,0 29,3 42,6 l 23,7 14,28 15,28 v 338 l -11,32 -11,31 -18,10 c -10,6 -32,10 -48,10 h -29 z m 454,-189 -21,-18 -80,-163 -80,-163 v -51 l 29,-29 29,-29 h 68 l 21,15 22,16 81,165 80,166 v 50 l -29,29 -29,29 h -70 z m 526,-398 c -24,-12 -103,-69 -282,-203 l -44,-32 -6,-34 -7,-34 12,-23 c 7,-13 22,-32 34,-41 l 21,-18 h 63 l 63,47 c 190,139 249,185 263,205 l 16,22 v 52 l -16,23 -17,23 -33,14 c -40,17 -33,17 -67,-1 z M 2175,2185 c -3,-21 -12,-73 -20,-115 l -14,-78 -32,-76 -32,-77 -50,-76 -51,-76 -75,-74 -76,-75 -80,-52 -80,-52 -70,-30 c -85,-36 -160,-62 -183,-62 -9,0 -23,-4 -29,-8 l -13,-8 21,-75 20,-74 42,-78 41,-77 64,-70 64,-71 60,-41 c 76,-51 164,-91 249,-112 l 65,-16 h 223 l 64,15 c 36,8 96,27 133,43 l 69,28 61,41 61,41 72,78 72,77 44,91 45,92 21,84 22,84 -6,126 -5,125 -27,78 -27,78 -15,39 -14,17 -30,48 c -17,26 -56,75 -87,107 l -56,59 -73,45 c -40,25 -96,55 -125,66 -52,19 -181,48 -218,48 h -19 z m 1015,-339 c -14,-3 -35,-10 -47,-16 l -22,-11 -11,-33 -11,-32 8,-34 9,-33 34,-17 35,-18 h 293 l 32,6 32,7 19,31 19,31 v 46 l -15,28 c -8,16 -20,31 -28,34 -19,7 -316,17 -347,11 z m -2478,-469 -33,-14 -14,-35 -15,-35 16,-41 16,-40 41,-11 42,-11 155,4 155,4 22,12 23,13 16,30 15,31 -4,13 -5,12 -74,7 c -99,10 -212,34 -266,57 -51,22 -48,22 -90,4 z m 2453,1 -30,-13 -13,-27 c -16,-36 -15,-61 3,-96 l 15,-30 28,-7 27,-8 h 310 l 28,8 28,8 16,33 16,34 -7,36 -7,37 -32,19 -32,20 h -160 l -160,-1 z M 1200,939 C 1170,923 925,748 893,719 l -23,-20 v -78 l 11,-20 11,-21 31,-13 32,-13 31,13 c 17,7 95,59 173,115 l 142,103 16,30 15,30 -11,38 -11,37 -34,16 c -41,19 -44,19 -76,3 z m 1781,0 -25,-12 -19,-33 -20,-33 10,-32 9,-32 129,-98 c 72,-54 149,-110 172,-124 l 43,-25 33,11 33,11 17,29 17,29 v 25 c 0,14 -3,33 -6,42 l -6,16 -77,56 c -42,31 -101,75 -131,98 -71,55 -121,85 -140,85 -8,0 -26,-6 -39,-13 z m -1433,-329 -27,-9 -34,-57 c -19,-31 -62,-107 -95,-168 l -62,-111 v -16 c 0,-9 5,-27 11,-41 l 11,-24 33,-18 32,-17 26,7 26,6 20,21 c 10,11 56,87 100,167 l 82,147 -5,34 -5,33 -17,19 c -9,10 -28,22 -42,27 l -27,9 z m 1007,-32 -24,-24 -7,-26 -6,-26 82,-153 c 45,-83 91,-162 103,-174 l 20,-23 h 78 l 24,24 24,24 7,28 7,27 -10,16 c -6,9 -41,74 -79,145 l -69,129 -26,28 -27,29 h -73 z m -531,-110 -21,-15 -12,-30 -13,-29 4,-172 3,-172 29,-25 30,-25 40,5 40,6 18,23 18,23 v 373 l -18,22 -17,21 -40,5 -40,5 z"
id="path3"
sodipodi:nodetypes="cccccsccccccccsccccccccccccccccccccccccccccccccccccccccccccccccsccccccccccccccccccccccccccccccccccscccsccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccsccccsccccccscccccccccccccccccccccccccccccccccccccccccccccccccccc" />
d="m 2411.7318,2964 -17,-19 v -420 l 18,-16 19,-17 h 19 c 10,0 29,3 42,6 l 23,7 14,28 15,28 v 338 l -11,32 -11,31 -18,10 c -10,6 -32,10 -48,10 h -29 z m 454,-189 -21,-18 -80,-163 -80,-163 v -51 l 29,-29 29,-29 h 68 l 21,15 22,16 81,165 80,166 v 50 l -29,29 -29,29 h -70 z m 526,-398 c -24,-12 -103,-69 -282,-203 l -44,-32 -6,-34 -7,-34 12,-23 c 7,-13 22,-32 34,-41 l 21,-18 h 63 l 63,47 c 190,139 249,185 263,205 l 16,22 v 52 l -16,23 -17,23 -33,14 c -40,17 -33,17 -67,-1 z m -1082,-192 c -3,-21 -12,-73 -20,-115 l -14,-78 -32,-76 -32,-77 -50,-76 -51,-76 -75,-74 -76,-75 -80,-52 -80,-52 -70,-30 c -85,-36 -160,-62 -183,-62 -9,0 -23,-4 -29,-8 l -13,-8 21,-75 20,-74 42,-78 41,-77 64,-70 64,-71 60,-41 c 76,-51 164,-91 249,-112 l 65,-16 h 223 l 64,15 c 36,8 96,27 133,43 l 69,28 61,41 61,41 72,78 72,77 44,91 45,92 21,84 22,84 -6,126 -5,125 -27,78 -27,78 -15,39 -14,17 -30,48 c -17,26 -56,75 -87,107 l -56,59 -73,45 c -40,25 -96,55 -125,66 -52,19 -181,48 -218,48 h -19 z m 1015,-339 c -14,-3 -35,-10 -47,-16 l -22,-11 -11,-33 -11,-32 8,-34 9,-33 34,-17 35,-18 h 293 l 32,6 32,7 19,31 19,31 v 46 l -15,28 c -8,16 -20,31 -28,34 -19,7 -316,17 -347,11 z m -2478,-469 -33,-14 -14,-35 -15,-35 16,-41 16,-40 41,-11 42,-11 155,4 155,4 22,12 23,13 16,30 15,31 -4,13 -5,12 -74,7 c -99,10 -212,34 -266,57 -51,22 -48,22 -90,4 z m 2453,1 -30,-13 -13,-27 c -16,-36 -15,-61 3,-96 l 15,-30 28,-7 27,-8 h 310 l 28,8 28,8 16,33 16,34 -7,36 -7,37 -32,19 -32,20 h -160 l -160,-1 z m -1965,-439 c -30,-16 -275,-191 -307,-220 l -23,-20 v -78 l 11,-20 11,-21 31,-13 32,-13 31,13 c 17,7 95,59 173,115 l 142,103 16,30 15,30 -11,38 -11,37 -34,16 c -41,19 -44,19 -76,3 z m 1781,0 -25,-12 -19,-33 -20,-33 10,-32 9,-32 129,-98 c 72,-54 149,-110 172,-124 l 43,-25 33,11 33,11 17,29 17,29 v 25 c 0,14 -3,33 -6,42 l -6,16 -77,56 c -42,31 -101,75 -131,98 -71,55 -121,85 -140,85 -8,0 -26,-6 -39,-13 z m -1433,-329 -27,-9 -34,-57 c -19,-31 -62,-107 -95,-168 l -62,-111 v -16 c 0,-9 5,-27 11,-41 l 11,-24 33,-18 32,-17 26,7 26,6 20,21 c 10,11 56,87 100,167 l 82,147 -5,34 -5,33 -17,19 c -9,10 -28,22 -42,27 l -27,9 z m 1007,-32 -24,-24 -7,-26 -6,-26 82,-153 c 45,-83 91,-162 103,-174 l 20,-23 h 78 l 24,24 24,24 7,28 7,27 -10,16 c -6,9 -41,74 -79,145 l -69,129 -26,28 -27,29 h -73 z m -531,-110 -21,-15 -12,-30 -13,-29 4,-172 3,-172 29,-25 30,-25 40,5 40,6 18,23 18,23 v 373 l -18,22 -17,21 -40,5 -40,5 z"
id="path3" />
</svg>

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@ -35,7 +35,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
? cityssm.escapeHTML(burialSite.burialSiteStatus ?? '')
: '<span class="has-text-grey">(No Status)</span>'}<br />
${(burialSite.contractCount ?? 0) > 0
? '<span class="is-size-7">Currently Occupied</span>'
? '<span class="is-size-7">Has Current Contracts</span>'
: ''}
</td>
</tr>`);

View File

@ -70,7 +70,7 @@ declare const exports: Record<string, unknown>
}<br />
${
(burialSite.contractCount ?? 0) > 0
? '<span class="is-size-7">Currently Occupied</span>'
? '<span class="is-size-7">Has Current Contracts</span>'
: ''
}
</td>

View File

@ -93,7 +93,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
${contract.printEJS
? `<a class="button is-small" data-tooltip="Print"
href="${sunrise.urlPrefix}/print/${contract.printEJS}/?contractId=${contract.contractId.toString()}" target="_blank">
<i class="fas fa-print" aria-label="Print"></i>
<span class="icon"><i class="fas fa-print" aria-label="Print"></i></span>
</a>`
: ''}</td></tr>`);
}

View File

@ -53,14 +53,14 @@ declare const exports: Record<string, unknown>
let contractTimeHTML = ''
if (
contract.contractStartDateString! <= nowDateString &&
contract.contractStartDateString <= nowDateString &&
(contract.contractEndDateString === '' ||
contract.contractEndDateString! >= nowDateString)
) {
contractTimeHTML = `<span class="has-tooltip-right" data-tooltip="Current Contract">
<i class="fas fa-play" aria-label="Current Contract"></i>
</span>`
} else if (contract.contractStartDateString! > nowDateString) {
} else if (contract.contractStartDateString > nowDateString) {
contractTimeHTML = `<span class="has-tooltip-right" data-tooltip="Future Contract">
<i class="fas fa-fast-forward" aria-label="Future Contract"></i>
</span>`
@ -154,7 +154,7 @@ declare const exports: Record<string, unknown>
contract.printEJS
? `<a class="button is-small" data-tooltip="Print"
href="${sunrise.urlPrefix}/print/${contract.printEJS}/?contractId=${contract.contractId.toString()}" target="_blank">
<i class="fas fa-print" aria-label="Print"></i>
<span class="icon"><i class="fas fa-print" aria-label="Print"></i></span>
</a>`
: ''
}</td></tr>`

View File

@ -89,7 +89,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
<a class="button is-small" data-tooltip="Print"
href="${sunrise.urlPrefix}/print/${workOrderPrints[0]}/?workOrderId=${workOrder.workOrderId.toString()}"
target="_blank">
<i class="fas fa-print" aria-label="Print"></i>
<span class="icon"><i class="fas fa-print" aria-label="Print"></i></span>
</a>
</td>`
: ''}</tr>`);

View File

@ -139,7 +139,7 @@ declare const exports: Record<string, unknown>
<a class="button is-small" data-tooltip="Print"
href="${sunrise.urlPrefix}/print/${workOrderPrints[0]}/?workOrderId=${workOrder.workOrderId.toString()}"
target="_blank">
<i class="fas fa-print" aria-label="Print"></i>
<span class="icon"><i class="fas fa-print" aria-label="Print"></i></span>
</a>
</td>`
: ''

View File

@ -160,3 +160,29 @@ span.button.is-static {
.select option:disabled {
display: none;
}
/*
* SVG
*/
.image svg {
display: block;
height: auto;
width: 100%;
}
.image svg .highlight.is-danger,
.image svg .highlight path.is-danger {
stroke: var(--bulma-danger-dark) !important;
fill: rgba(var(--bulma-danger-light), 0.6);
}
.image svg .highlight.is-success,
.image svg .highlight path.is-success {
stroke: var(--bulma-success-dark) !important;
fill: rgba(var(--bulma-success-light), 0.6);
}
.image svg text {
user-select: none;
}

View File

@ -234,19 +234,19 @@ export interface Contract extends Record {
burialSiteName?: string;
cemeteryId?: number;
cemeteryName?: string;
contractStartDate?: number;
contractStartDateString?: string;
contractStartDate: number;
contractStartDateString: string;
contractEndDate?: number;
contractEndDateString?: string;
purchaserName?: string;
purchaserAddress1?: string;
purchaserAddress2?: string;
purchaserCity?: string;
purchaserProvince?: string;
purchaserPostalCode?: string;
purchaserPhoneNumber?: string;
purchaserEmail?: string;
purchaserRelationship?: string;
purchaserName: string;
purchaserAddress1: string;
purchaserAddress2: string;
purchaserCity: string;
purchaserProvince: string;
purchaserPostalCode: string;
purchaserPhoneNumber: string;
purchaserEmail: string;
purchaserRelationship: string;
funeralHomeId?: number;
funeralHomeKey?: string;
funeralHomeName?: string;

View File

@ -303,21 +303,21 @@ export interface Contract extends Record {
cemeteryId?: number
cemeteryName?: string
contractStartDate?: number
contractStartDateString?: string
contractStartDate: number
contractStartDateString: string
contractEndDate?: number
contractEndDateString?: string
purchaserName?: string
purchaserAddress1?: string
purchaserAddress2?: string
purchaserCity?: string
purchaserProvince?: string
purchaserPostalCode?: string
purchaserPhoneNumber?: string
purchaserEmail?: string
purchaserRelationship?: string
purchaserName: string
purchaserAddress1: string
purchaserAddress2: string
purchaserCity: string
purchaserProvince: string
purchaserPostalCode: string
purchaserPhoneNumber: string
purchaserEmail: string
purchaserRelationship: string
funeralHomeId?: number
funeralHomeKey?: string

View File

@ -29,7 +29,8 @@
<img
src="<%= urlPrefix + configFunctions.getConfigProperty("application.logoURL") %>"
alt=""
height="28" />
height="28"
width="28" />
<strong><%= configFunctions.getConfigProperty("application.applicationName") %></strong>
</a>
<a class="navbar-burger burger is-hidden-print" role="button" aria-label="menu" aria-expanded="false">

View File

@ -7,40 +7,70 @@
<a class="<%= (headTitle === "Fee Management" ? "is-active" : "") %>"
href="<%= urlPrefix %>/admin/fees"
aria-label="Fee Management">
<div class="columns is-1 is-mobile">
<div class="column is-narrow">
<span class="icon"><i class="fas fa-fw fa-dollar-sign" aria-hidden="true"></i></span>
<span class="is-hidden-touch">Fee Management</span>
</div>
<div class="column is-hidden-touch">
Fee Management
</div>
</div>
</a>
</li>
<li>
<a class="<%= (headTitle === "Contract Type Management" ? "is-active" : "") %>"
href="<%= urlPrefix %>/admin/contractTypes"
aria-label="Contract Type Management">
<span class="icon"><i class="fas fa-fw fa-user-friends" aria-hidden="true"></i></span>
<span class="is-hidden-touch">Contract Type Management</span>
<div class="columns is-1 is-mobile">
<div class="column is-narrow">
<span class="icon"><i class="fas fa-fw fa-file-signature" aria-hidden="true"></i></span>
</div>
<div class="column is-hidden-touch">
Contract Type Management
</div>
</div>
</a>
</li>
<li>
<a class="<%= (headTitle === "Burial Site Type Management" ? "is-active" : "") %>"
href="<%= urlPrefix %>/admin/burialSiteTypes"
aria-label="Burial Site Type Management">
<div class="columns is-1 is-mobile">
<div class="column is-narrow">
<span class="icon"><i class="fas fa-fw fa-vector-square" aria-hidden="true"></i></span>
<span class="is-hidden-touch">Burial Site Type Management</span>
</div>
<div class="column is-hidden-touch">
Burial Site Type Management
</div>
</div>
</a>
</li>
<li>
<a class="<%= (headTitle === "Config Table Management" ? "is-active" : "") %>"
href="<%= urlPrefix %>/admin/tables"
aria-label="Config Table Management">
<div class="columns is-1 is-mobile">
<div class="column is-narrow">
<span class="icon"><i class="fas fa-fw fa-table" aria-hidden="true"></i></span>
<span class="is-hidden-touch">Config Table Management</span>
</div>
<div class="column is-hidden-touch">
Config Table Management
</div>
</div>
</a>
</li>
<li>
<a class="<%= (headTitle === "Database Maintenance" ? "is-active" : "") %>"\
href="<%= urlPrefix %>/admin/database"
aria-label="Database Maintenance">
<div class="columns is-1 is-mobile">
<div class="column is-narrow">
<span class="icon"><i class="fas fa-fw fa-database" aria-hidden="true"></i></span>
<span class="is-hidden-touch">Database Maintenance</span>
</div>
<div class="column is-hidden-touch">
Database Maintenance
</div>
</div>
</a>
</li>
<% if (configFunctions.getConfigProperty("application.ntfyStartup")) { %>
@ -48,8 +78,14 @@
<a class="<%= (headTitle === "Ntfy Startup Notification" ? "is-active" : "") %>"
href="<%= urlPrefix %>/admin/ntfyStartup"
aria-label="Ntfy Startup Notification">
<div class="columns is-1 is-mobile">
<div class="column is-narrow">
<span class="icon"><i class="far fa-fw fa-comment-alt" aria-hidden="true"></i></span>
<span class="is-hidden-touch">Ntfy Startup Notification</span>
</div>
<div class="column is-hidden-touch">
Ntfy Startup Notification
</div>
</div>
</a>
</li>
<% } %>

View File

@ -349,7 +349,7 @@
Config Table Management
</h2>
<p>
Manage simple configuration tables fees for
Manage simple configuration tables for
work order types
and burial site statuses.
</p>