git commit all base code
This commit is contained in:
@@ -0,0 +1,137 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Alert</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addAlert</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
<script src="js/ckeditor.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-plus-lg me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}" enctype="multipart/form-data">
|
||||
|
||||
<input type="hidden" name="action" value="Alerts.addAlert"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="alert_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="alert_title" id="alert_title" maxlength="100" autocomplete="off" autofocus="yes"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_starts_date">Start Date</label>
|
||||
|
||||
<div class="input-group input-group-sm starts-date">
|
||||
|
||||
<span class="input-group-text">Date:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_starts_date" id="alert_starts_date" autocomplete="off" maxlength="10"
|
||||
value="{$TODAY_YYYYMMDD}"/>
|
||||
<button class="btn btn-outline-primary btnAlertStartDateCalendar" type="button" data-target="#alert_starts_date" data-bs-toggle="tooltip" data-bs-title="Calendar" tabindex="-1">
|
||||
<i class="bi bi-calendar3"></i>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_starts_time">Start Time <span class="text-small text-muted text-nowrap ml-2">(24-Hour format)</span></label>
|
||||
|
||||
<div class="input-group input-group-sm">
|
||||
|
||||
<span class="input-group-text">Time:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_starts_time" id="alert_starts_time" autocomplete="off" maxlength="10"
|
||||
value="{$TODAY_HHMM}"/>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_expires_date">Expires Date</label>
|
||||
|
||||
<div class="input-group input-group-sm expires-date">
|
||||
|
||||
<span class="input-group-text">Date:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_expires_date" id="alert_expires_date" autocomplete="off" maxlength="10"/>
|
||||
<button class="btn btn-outline-primary btnAlertExpiresDateCalendar" type="button" data-target="#alert_expires_date" data-bs-toggle="tooltip" data-bs-title="Calendar" tabindex="-1">
|
||||
<i class="bi bi-calendar3"></i>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_expires_time">Expires Time <span class="text-small text-muted text-nowrap ml-2">(24-Hour format)</span></label>
|
||||
|
||||
<div class="input-group input-group-sm start_date">
|
||||
|
||||
<span class="input-group-text">Time:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_expires_time" id="alert_expires_time" autocomplete="off" maxlength="10"/>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-12 mb-3">
|
||||
<label class="form-label" for="alert_message">Alert Message</label>
|
||||
<textarea class="form-control form-control-sm" name="alert_message" id="alert_message"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,56 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Dropdown</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addDropdown</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-caret-down-square me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
|
||||
<xsl:value-of select="//dropdowntypes/record/dropdowntype_title"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Dropdowns.addDropdown"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<input type="hidden" name="dropdowntype_serial" id="dropdowntype_serial" value="{//dropdowntypes/record/dropdowntype_serial}"/>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdown_value">Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdown_value" id="dropdown_value" maxlength="100" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-4 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Dropdown Type</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addDropdowntype</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-caret-down-square me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Dropdowns.addDropdowntype"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_name" id="dropdowntype_name" maxlength="100" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_title" id="dropdowntype_title" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_table">Table</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_table" id="dropdowntype_table" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_column">Column</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_column" id="dropdowntype_column" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-4 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Note</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addNote</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-chat-dots me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Notes.addNote"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<input type="hidden" name="note_type" value="{$NOTE_TYPE}"/>
|
||||
<input type="hidden" name="note_reference" value="{$NOTE_REFERENCE}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="note_text">Note</label>
|
||||
<textarea class="form-control form-control-sm" name="note_text" id="note_text" rows="8" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-floppy me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-check-lg me-2"/>Cancel</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,85 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Popover</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addPopover</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
<script src="js/ckeditor.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-chat-square-dots me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}" enctype="multipart/form-data">
|
||||
|
||||
<input type="hidden" name="action" value="Popovers.addPopover"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="popover_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="popover_name" id="popover_name" maxlength="100" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="popover_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="popover_title" id="popover_title" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="popover_placeholder">Placeholder</label>
|
||||
<input type="text" class="form-control form-control-sm" name="popover_placeholder" id="popover_placeholder" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-10 mb-3">
|
||||
<label class="form-label" for="popover_text">Popover Text</label>
|
||||
<textarea class="form-control form-control-sm" name="popover_text" id="popover_text"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,105 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Report</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addReport</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-printer me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Reports.addReport"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="report_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_name" id="report_name" maxlength="100" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="report_class">Class</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_class" id="report_class" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="report_type">Type</label>
|
||||
<select class="form-select form-select-sm" name="report_type" id="report_type" size="1">
|
||||
<xsl:apply-templates select="//Constants/ReportTypes"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="report_description">Description</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_description" id="report_description" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="report_target">Target</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_target" id="report_target" maxlength="50" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Type dropdown -->
|
||||
|
||||
<xsl:template match="Constants/ReportTypes">
|
||||
<xsl:for-each select="ReportType">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}">
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,82 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Status</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addStatus</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-list-task me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Statuses.addStatus"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="status_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="status_name" id="status_name" maxlength="100" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="status_classes">Classes</label>
|
||||
<input type="text" class="form-control form-control-sm" name="status_classes" id="status_classes" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<label class="mb-1">Active Status</label>
|
||||
|
||||
<div class="col-auto mb-3">
|
||||
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="status_active" id="status_active" checked="checked" value="true">
|
||||
</input>
|
||||
<label class="form-check-label" for="status_active">Active</label>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Subscription</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addSubscription</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-list-check me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Subscriptions.addSubscription"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="subscription_title" id="subscription_title" maxlength="100" autocomplete="off" autofocus="yes"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_description">Description</label>
|
||||
<input type="text" class="form-control form-control-sm" name="subscription_description" id="subscription_description" maxlength="128" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_projecttype">Project Type</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="subscription_projecttype" id="subscription_projecttype" size="1">
|
||||
<xsl:apply-templates select="//Constants/ProjectTypes"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_area">Area</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="subscription_area" id="subscription_area" size="1">
|
||||
<xsl:apply-templates select="//Constants/Areas"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-floppy me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-check-lg me-2"/>Cancel</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Project Type dropdown -->
|
||||
|
||||
<xsl:template match="Constants/ProjectTypes">
|
||||
|
||||
<option value="">Choose...</option>
|
||||
|
||||
<xsl:for-each select="ProjectType">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Areas dropdown -->
|
||||
|
||||
<xsl:template match="Constants/Areas">
|
||||
|
||||
<option value="">Choose...</option>
|
||||
|
||||
<xsl:for-each select="Area">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
+105
@@ -0,0 +1,105 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add User</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addUser</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-person-circle me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Users.addUser"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="user_name">User Name</label>
|
||||
<input type="text" class="form-control form-control-sm text-capitalize" name="user_name" id="user_name" maxlength="100" autocomplete="off" autofocus="autofocus" data-bs-toggle="popover" data-bs-content="{//popovers/record[popover_name = 'user_name']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-popover" data-bs-offset="0,10"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="user_client_name">Client Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="user_client_name" id="user_client_name" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="user_email">Email</label>
|
||||
<input type="text" class="form-control form-control-sm" name="user_email" id="user_email" maxlength="128" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 mb-4">
|
||||
|
||||
<label class="form-label" for="user_role">Role</label>
|
||||
|
||||
<select class="form-control form-control-sm search-dropdown" name="user_role" id="user_role" size="1">
|
||||
<xsl:apply-templates select="//Constants/UserRoles"/>
|
||||
</select>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Role dropdown -->
|
||||
|
||||
<xsl:template match="Constants/UserRoles">
|
||||
|
||||
<option value="">Choose...</option>
|
||||
|
||||
<xsl:for-each select="UserRole">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Change Password</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">changePassword</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-lock me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Users.changePassword"/>
|
||||
<input type="hidden" name="step" value="change"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="user_new_password">New Password</label>
|
||||
<input type="password" class="form-control form-control-sm autosave" name="user_new_password" id="user_new_password" maxlength="128" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="user_verify_password">Verify Password</label>
|
||||
<input type="password" class="form-control form-control-sm autosave" name="user_verify_password" id="user_verify_password" maxlength="128" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
+358
@@ -0,0 +1,358 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="APPLICATION_NAME"></xsl:param>
|
||||
<xsl:param name="NAVIGATION_AREA_WIDTH">xxl</xsl:param>
|
||||
<xsl:param name="CONTENT_AREA_WIDTH">xxl</xsl:param>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<xsl:text disable-output-escaping="yes"><!DOCTYPE html></xsl:text>
|
||||
|
||||
<html lang="en" data-bs-theme="{$THEME}">
|
||||
|
||||
<head>
|
||||
|
||||
<meta charset="utf-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
|
||||
<title>
|
||||
<xsl:value-of select="$APPLICATION_NAME"/>
|
||||
</title>
|
||||
|
||||
<link rel="icon" type="image/x-icon" href="images/dec-international-logo.png"/>
|
||||
|
||||
<link href="css/themes/Sandstone/bootstrap.min.css?version={$VERSION}" rel="stylesheet" media="screen"/>
|
||||
<link href="css/bootstrap-icons.min.css?version={$VERSION}" rel="stylesheet" media="screen"/>
|
||||
<link href="css/base.css?version={$VERSION}" rel="stylesheet" media="screen" />
|
||||
<link href="css/bootstrap-datepicker.min.css?version={$VERSION}" rel="stylesheet" media="screen" />
|
||||
<link href="css/bootstrap-select.min.css?version={$VERSION}" rel="stylesheet" media="screen" />
|
||||
|
||||
<script src="js/jquery-3.2.0.min.js?version={$VERSION}"/>
|
||||
<script src="js/bootstrap.bundle.min.js?version={$VERSION}"/>
|
||||
<script src="js/base.js?version={$VERSION}"/>
|
||||
<script src="js/content.js?version={$VERSION}"/>
|
||||
<script src="js/bootstrap-datepicker.min.js?version={$VERSION}"/>
|
||||
<script src="js/jquery.inputmask.min.js?version={$VERSION}"/>
|
||||
<script src="js/bootstrap-select.min.js?version={$VERSION}"/>
|
||||
<script src="js/dinero.min.js?version={$VERSION}"/>
|
||||
<!--<script src="js/autologout.js?version={$VERSION}"/>-->
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<xsl:if test="$THEME = 'Sandstone'">
|
||||
<xsl:attribute name="class">bg-light bg-opacity-50</xsl:attribute>
|
||||
</xsl:if>
|
||||
|
||||
<script type="text/javascript">
|
||||
var msie = /msie\s|trident/i.test(window.navigator.userAgent);
|
||||
if (msie) {
|
||||
window.location.href = "html/unsupported.html";
|
||||
}
|
||||
</script>
|
||||
|
||||
<input type="hidden" id="APPLICATION_MNEMONIC" value="{$APPLICATION_MNEMONIC}"/>
|
||||
|
||||
<nav class="navbar navbar-expand-lg fixed-top bg-primary navbar-dark">
|
||||
|
||||
<div class="container-xxl">
|
||||
|
||||
<a class="navbar-brand ms-1 me-0" href="./" aria-label="Home" data-bs-toggle="tooltip" data-bs-title="Home" data-bs-custom-class="custom-tooltip" data-bs-placement="right" data-bs-offset="0,5">
|
||||
<i class="bi bi-cloud me-2"></i>
|
||||
<xsl:value-of select="$APPLICATION_NAME"/>
|
||||
</a>
|
||||
|
||||
<button type="button" class="navbar-toggler p-0" data-bs-toggle="collapse" data-bs-target="#navbar-main" aria-controls="navbar-main" aria-expanded="false" aria-label="Toggle Navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
|
||||
<div class="navbar-collapse collapse" id="navbar-main">
|
||||
|
||||
<ul class="navbar-nav mx-auto">
|
||||
|
||||
<!-- <li class="nav-item">
|
||||
<a class="nav-link user-subscriptions" href="javascript:void(0);">
|
||||
<i class="bi bi-list-check me-1" aria-hidden="true"/>
|
||||
SUBSCRIPTIONS
|
||||
</a>
|
||||
</li>-->
|
||||
|
||||
<!-- MANAGE/REPORTS/SETUP is only available to Administrators -->
|
||||
|
||||
<xsl:if test="$USER_ROLE = 'Administrator' or $USER_ROLE = 'System Administrator'">
|
||||
|
||||
<!-- <li class="nav-link disabled">
|
||||
<xsl:text> | </xsl:text>
|
||||
</li>-->
|
||||
|
||||
<li class="nav-item dropdown">
|
||||
|
||||
<a href="javascript:void(0);" class="nav-link dropdown-toggle" data-bs-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="bi bi-kanban me-1" aria-hidden="true"/>
|
||||
MANAGE
|
||||
</a>
|
||||
|
||||
<div class="dropdown-menu mt-2 pt-0 pb-0">
|
||||
|
||||
<a class="dropdown-item ps-2 manage-business-facts" href="javascript:void(0);">
|
||||
<i class="bi bi-briefcase me-2"/>Business Facts</a>
|
||||
|
||||
<a class="dropdown-item ps-2 manage-permit-facts" href="javascript:void(0);">
|
||||
<i class="bi bi-hammer me-2"/>Permits Facts</a>
|
||||
|
||||
<a class="dropdown-item ps-2 manage-planningzoning-facts" href="javascript:void(0);">
|
||||
<i class="bi bi-rulers me-2"/>Planning/Zoning Facts</a>
|
||||
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="nav-link disabled">
|
||||
<xsl:text> | </xsl:text>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link select-report" href="javascript:void(0);">
|
||||
<i class="bi bi-printer me-1" aria-hidden="true"/>
|
||||
REPORTS
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- <li class="nav-link disabled">
|
||||
<xsl:text> | </xsl:text>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link run-developer-stub" href="javascript:void(0);">
|
||||
<i class="bi bi-code me-1" aria-hidden="true"/>
|
||||
DEV STUB
|
||||
</a>
|
||||
</li>-->
|
||||
|
||||
</xsl:if>
|
||||
|
||||
<li class="nav-link disabled">
|
||||
<xsl:text> | </xsl:text>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link start-support-ticket" href="javascript:void(0);">
|
||||
<i class="bi bi-question-circle me-1" aria-hidden="true"/>
|
||||
SUPPORT
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<ul class="navbar-nav user-dropdown ms-0">
|
||||
|
||||
<li class="nav-item dropdown">
|
||||
|
||||
<a href="javascript:void(0);" class="nav-link ps-2 dropdown-toggle" data-bs-toggle="dropdown" role="button" aria-expanded="false">
|
||||
<span class="username me-1">
|
||||
<span>
|
||||
<i class="bi bi-person-circle me-2" aria-hidden="true"></i>
|
||||
</span>
|
||||
<xsl:value-of select="$USER_NAME"/>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<div class="dropdown-menu dropdown-menu-right mt-2 pt-0 pb-0">
|
||||
|
||||
<!-- <a class="dropdown-item ps-2 my-account" href="javascript:void(0);">
|
||||
<i class="bi bi-person me-2"/>My Account</a>-->
|
||||
|
||||
<a class="dropdown-item ps-2 toggle-theme" href="javascript:void(0);">
|
||||
<i class="bi bi-moon me-2"/>Toggle Dark/Light</a>
|
||||
|
||||
<xsl:if test="$USER_ROLE = 'Administrator' or $USER_ROLE = 'System Administrator'">
|
||||
|
||||
<div class="dropdown-divider mt-1 mb-1"/>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-alerts" href="javascript:void(0);">
|
||||
<i class="bi bi-info-circle me-2"/>Alerts</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-counties" href="javascript:void(0);">
|
||||
<i class="bi bi-building me-2"/>Counties
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-dropdowntypes" href="javascript:void(0);">
|
||||
<i class="bi bi-caret-down-square me-2"/>Dropdown Types
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-dropdowns" href="javascript:void(0);">
|
||||
<i class="bi bi-caret-down me-2"/>Dropdowns
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-popovers" href="javascript:void(0);">
|
||||
<i class="bi bi-chat-left-dots me-2"/>Popovers
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-reports" href="javascript:void(0);">
|
||||
<i class="bi bi-printer me-2"/>Reports
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-statuses" href="javascript:void(0);">
|
||||
<i class="bi bi-card-checklist me-2"/>Statuses
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-subscriptions" href="javascript:void(0);">
|
||||
<i class="bi bi-list-check me-2"/>Subscriptions
|
||||
</a>
|
||||
|
||||
|
||||
<div class="dropdown-divider mt-1 mb-1"></div>
|
||||
|
||||
<a class="dropdown-item ps-2 setup-users" href="javascript:void(0);">
|
||||
<i class="bi bi-person-circle me-2"/>Users
|
||||
</a>
|
||||
|
||||
<a class="dropdown-item ps-2 view-journal" href="javascript:void(0);">
|
||||
<i class="bi bi-journal me-2"/>Journal
|
||||
</a>
|
||||
|
||||
<!-- <a class="dropdown-item ps-2 view-support-tickets" href="javascript:void(0);">
|
||||
<i class="bi bi-question-circle me-2"/>Support Tickets
|
||||
</a>-->
|
||||
|
||||
<div class="dropdown-divider mt-1 mb-1"/>
|
||||
|
||||
</xsl:if>
|
||||
|
||||
<a class="dropdown-item ps-2 sign-out" href="javascript:void(0);">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Sign Out</a>
|
||||
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</nav>
|
||||
|
||||
<!-- Content Area -->
|
||||
|
||||
<div class="container-xxl content">
|
||||
|
||||
$$$-CONTENT-$$$
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Footer -->
|
||||
|
||||
<footer id="footer">
|
||||
|
||||
<div class="col text-center mt-3 lh-1">
|
||||
<div class="m-0 p-0">
|
||||
<small class="text-muted pb-4">Copyright © <span>
|
||||
<xsl:value-of select="$COPYRIGHT"/>
|
||||
|
|
||||
</span> DEC International, LLC | All Rights Reserved</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
|
||||
<!-- Spinner Modal Dialog -->
|
||||
|
||||
<div class="modal" id="spinner-dialog" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1">
|
||||
<div class="modal-dialog modal-sm modal-dialog-centered">
|
||||
<div class="modal-content bg-transparent border-0">
|
||||
<div class="modal-body text-center">
|
||||
<div class="spinner-border text-white" style="width:5rem;height:5rem;" role="status">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Confirm Modal Dialog -->
|
||||
|
||||
<div class="modal" id="confirm-dialog" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header bg-primary p-1 ps-3">
|
||||
<h6 class="modal-title text-white"/>
|
||||
</div>
|
||||
<div class="modal-body mt-2"/>
|
||||
<div class="buttons m-3 mt-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnConfirmDialogCancel" data-bs-dismiss="modal">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnConfirmDialogConfirm">
|
||||
<i class="bi-check-lg me-2"/>Confirm</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Continue Modal Dialog -->
|
||||
|
||||
<div class="modal" id="continue-dialog" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header bg-primary p-1 ps-3">
|
||||
<h6 class="modal-title text-white"/>
|
||||
</div>
|
||||
<div class="modal-body mt-2"/>
|
||||
<div class="buttons m-3 mt-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-1 btnClose" data-bs-dismiss="modal">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Toast -->
|
||||
|
||||
<div class="toast-container position-fixed bottom-0 start-50 translate-middle-x p-2">
|
||||
<div id="toast-message" class="toast bg-primary text-center" role="alert" aria-live="assertive" aria-atomic="true" data-bs-delay="3000">
|
||||
<div class="toast-body fs-100 text-white"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Print Dialog -->
|
||||
|
||||
<div class="modal fade" id="print-dialog" tabindex="-1" role="dialog" data-bs-backdrop="static" data-bs-keyboard="false">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header bg-primary p-2 pl-2">
|
||||
<h6 class="modal-title text-white">
|
||||
View / Print
|
||||
</h6>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div id="print-report-container"/>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn page-link btn-sm mr-auto" data-dismiss="modal" data-toggle="tooltip" title="Close" data-placement="top">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Common Submit Form -->
|
||||
|
||||
<form action="./" method="post" id="formSubmit"/>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,143 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Alert</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editAlert</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
<script src="js/ckeditor.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
|
||||
<i class="bi bi-chat-square-dots me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}" enctype="multipart/form-data">
|
||||
|
||||
<input type="hidden" name="action" value="Alerts.editAlert"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="alert_serial" id="alert_serial" value="{//alerts/record/alert_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="alert_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="alert_title" id="alert_title" maxlength="100" autocomplete="off" value="{//alerts/record/alert_title}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_starts_date">Start Date</label>
|
||||
|
||||
<div class="input-group input-group-sm starts-date">
|
||||
|
||||
<span class="input-group-text">Date:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_starts_date" id="alert_starts_date" autocomplete="off" maxlength="10"
|
||||
value="{//alerts/record/alert_started_date}"/>
|
||||
<button class="btn btn-outline-primary btnAlertStartDateCalendar" type="button" data-target="#alert_starts_date" data-bs-toggle="tooltip" data-bs-title="Calendar" tabindex="-1">
|
||||
<i class="bi bi-calendar3"></i>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_starts_time">Start Time <span class="text-small text-muted text-nowrap ml-2">(24-Hour format)</span></label>
|
||||
|
||||
<div class="input-group input-group-sm">
|
||||
|
||||
<span class="input-group-text">Time:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_starts_time" id="alert_starts_time" autocomplete="off" maxlength="10"
|
||||
value="{//alerts/record/alert_started_time}"/>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_expires_date">Expires Date</label>
|
||||
|
||||
<div class="input-group input-group-sm expires-date">
|
||||
|
||||
<span class="input-group-text">Date:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_expires_date" id="alert_expires_date" autocomplete="off" maxlength="10"
|
||||
value="{//alerts/record/alert_expired_date}"/>
|
||||
<button class="btn btn-outline-primary btnAlertExpiresDateCalendar" type="button" data-target="#alert_expires_date" data-bs-toggle="tooltip" data-bs-title="Calendar" tabindex="-1">
|
||||
<i class="bi bi-calendar3"></i>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-3 mb-3">
|
||||
|
||||
<label class="form-label" for="alert_expires_time">Expires Time <span class="text-small text-muted text-nowrap ml-2">(24-Hour format)</span></label>
|
||||
|
||||
<div class="input-group input-group-sm start_date">
|
||||
|
||||
<span class="input-group-text">Time:</span>
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="alert_expires_time" id="alert_expires_time" autocomplete="off" maxlength="10" value="{//alerts/record/alert_expired_time}"/>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-12 mb-3">
|
||||
<label class="form-label" for="alert_message">Alert Message</label>
|
||||
<textarea class="form-control form-control-sm" name="alert_message" id="alert_message">
|
||||
<xsl:value-of select="//alerts/record/alert_message"/>
|
||||
</textarea>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-save me-2"/>Save</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Dropdown</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editDropdown</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
|
||||
<i class="bi bi-caret-down-square me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
|
||||
<xsl:value-of select="//dropdowns/record/dropdowntype_title"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Dropdowns.editDropdown"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="dropdowntype_serial" id="dropdowntype_serial" value="{//dropdowns/record/dropdowntype_serial}"/>
|
||||
<input type="hidden" name="dropdown_serial" id="dropdown_serial" value="{//dropdowns/record/dropdown_serial}"/>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdown_value">Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdown_value" id="dropdown_value" maxlength="100" autocomplete="off" autofocus="autofocus" value="{//dropdowns/record/dropdown_value}"/>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-4 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete"><i class="bi bi-trash3 me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,72 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Dropdown Type</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editDropdowntype</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
|
||||
<i class="bi bi-caret-down-square me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Dropdowns.editDropdowntype"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="dropdowntype_serial" id="dropdowntype_serial" value="{//dropdowntypes/record/dropdowntype_serial}"/>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_name" id="dropdowntype_name" maxlength="100" autocomplete="off" autofocus="autofocus" value="{//dropdowntypes/record/dropdowntype_name}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_title" id="dropdowntype_title" maxlength="100" autocomplete="off" value="{//dropdowntypes/record/dropdowntype_title}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_table">Table</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_table" id="dropdowntype_table" maxlength="100" autocomplete="off" value="{//dropdowntypes/record/dropdowntype_table}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-3">
|
||||
<label class="form-label" for="dropdowntype_column">Column</label>
|
||||
<input type="text" class="form-control form-control-sm" name="dropdowntype_column" id="dropdowntype_column" maxlength="100" autocomplete="off" value="{//dropdowntypes/record/dropdowntype_column}"/>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-4 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete"><i class="bi bi-trash3 me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Note</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editNote</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-chat-dots me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Notes.editNote"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="note_serial" value="{//notes/record/note_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="note_text">Note</label>
|
||||
<textarea class="form-control form-control-sm pre-wrap" name="note_text" id="note_text" rows="8" autofocus="autofocus">
|
||||
<xsl:value-of select="//notes/record/note_text"/>
|
||||
</textarea>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-floppy me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-check-lg me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary ms-4 me-2 btnDelete">
|
||||
<i class="bi bi-trash me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,91 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Popover</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editPopover</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
<script src="js/ckeditor.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
|
||||
<i class="bi bi-chat-square-dots me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}" enctype="multipart/form-data">
|
||||
|
||||
<input type="hidden" name="action" value="Popovers.editPopover"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="popover_serial" id="popover_serial" value="{//popovers/record/popover_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="popover_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="popover_name" id="popover_name" maxlength="100" autocomplete="off" autofocus="autofocus" value="{//popovers/record/popover_name}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="popover_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="popover_title" id="popover_title" maxlength="100" autocomplete="off" value="{//popovers/record/popover_title}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="popover_placeholder">Placeholder</label>
|
||||
<input type="text" class="form-control form-control-sm" name="popover_placeholder" id="popover_placeholder" maxlength="100" autocomplete="off" value="{//popovers/record/popover_placeholder}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-10 mb-3">
|
||||
<label class="form-label" for="popover_text">Popover Text</label>
|
||||
<textarea class="form-control form-control-sm" name="popover_text" id="popover_text">
|
||||
<xsl:value-of select="//popovers/record/popover_text"/>
|
||||
</textarea>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete"><i class="bi bi-trash3 me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,113 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Report</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editReport</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-printer me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Reports.editReport"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="report_serial" id="report_serial" value="{//reports/record/report_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="report_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_name" id="report_name" maxlength="100" autocomplete="off" autofocus="autofocus" value="{//reports/record/report_name}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="report_class">Class</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_class" id="report_class" maxlength="100" autocomplete="off" value="{//reports/record/report_class}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="report_type">Type</label>
|
||||
<select class="form-select form-select-sm" name="report_type" id="report_type" size="1">
|
||||
<xsl:apply-templates select="//Constants/ReportTypes"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="report_description">Description</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_description" id="report_description" maxlength="100" autocomplete="off" value="{//reports/record/report_description}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="report_target">Target</label>
|
||||
<input type="text" class="form-control form-control-sm" name="report_target" id="report_target" maxlength="50" autocomplete="off" value="{//reports/record/report_target}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete"><i class="bi bi-trash3 me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Type dropdown -->
|
||||
|
||||
<xsl:template match="Constants/ReportTypes">
|
||||
<xsl:for-each select="ReportType">
|
||||
<xsl:sort select="."/>
|
||||
<xsl:choose>
|
||||
<xsl:when test=". = //reports/record/report_type">
|
||||
<option value="{.}" SELECTED="SELECTED"><xsl:value-of select="." /></option>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<option value="{.}"><xsl:value-of select="." /></option>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,107 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Status</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editStatus</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-list-task me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Statuses.editStatus"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="status_serial" id="status_serial" value="{//statuses/record/status_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="status_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="status_name" id="status_name" maxlength="100" autocomplete="off" autofocus="autofocus" value="{//statuses/record/status_name}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="status_classes">Classes</label>
|
||||
<input type="text" class="form-control form-control-sm" name="status_classes" id="status_classes" maxlength="100" autocomplete="off" value="{//statuses/record/status_classes}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<label class="mb-1">Active Status</label>
|
||||
|
||||
<div class="col-auto mb-3">
|
||||
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="status_active" id="status_active" value="true">
|
||||
<xsl:if test="boolean(number(//statuses/record/status_active)) = true()">
|
||||
<xsl:attribute name="checked"/>
|
||||
</xsl:if>
|
||||
</input>
|
||||
<label class="form-check-label" for="status_active">Active</label>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<label class="mb-1">Default</label>
|
||||
|
||||
<div class="col-auto mb-3">
|
||||
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="status_default" id="status_default" value="true">
|
||||
<xsl:if test="boolean(number(//statuses/record/status_default)) = true()">
|
||||
<xsl:attribute name="checked"/>
|
||||
</xsl:if>
|
||||
</input>
|
||||
<label class="form-check-label" for="status_default">Default</label>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel"><i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave"><i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete"><i class="bi bi-trash me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,130 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Subscription</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editSubscription</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-list-check me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Subscriptions.editSubscription"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="subscription_serial" id="subscription_serial" value="{//subscriptions/record/subscription_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_title">Title</label>
|
||||
<input type="text" class="form-control form-control-sm" name="subscription_title" id="subscription_title" maxlength="100" autocomplete="off" autofocus="yes" value="{//subscriptions/record/subscription_title}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_description">Description</label>
|
||||
<input type="text" class="form-control form-control-sm" name="subscription_description" id="subscription_description" maxlength="128" autocomplete="off" value="{//subscriptions/record/subscription_description}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_projecttype">Project Type</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="subscription_projecttype" id="subscription_projecttype" size="1">
|
||||
<xsl:apply-templates select="//Constants/ProjectTypes"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="subscription_area">Area</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="subscription_area" id="subscription_area" size="1">
|
||||
<xsl:apply-templates select="//Constants/Areas"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete">
|
||||
<i class="bi bi-trash me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Project Type dropdown -->
|
||||
|
||||
<xsl:template match="Constants/ProjectTypes">
|
||||
|
||||
<option value="">Choose...</option>
|
||||
|
||||
<xsl:for-each select="ProjectType">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:if test=". = //subscriptions/record/subscription_projecttype">
|
||||
<xsl:attribute name="selected"/>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Areas dropdown -->
|
||||
|
||||
<xsl:template match="Constants/Areas">
|
||||
|
||||
<option value="">Choose...</option>
|
||||
|
||||
<xsl:for-each select="Area">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:if test=". = //subscriptions/record/subscription_area">
|
||||
<xsl:attribute name="selected"/>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,140 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit User</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editUser</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
|
||||
<i class="bi bi-person-circle me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
|
|
||||
<xsl:value-of select="//users/record/user_name"/>
|
||||
|
|
||||
<xsl:value-of select="//users/record/user_client_name"/>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Users.editUser"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="user_serial" id="user_serial" value="{//users/record/user_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="user_name">Name</label>
|
||||
<input type="text" class="form-control form-control-sm autosave" name="user_name" id="user_name" maxlength="100" autocomplete="off" autofocus="autofocus" value="{//users/record/user_name}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="user_email">Email</label>
|
||||
<input type="text" class="form-control form-control-sm autosave" name="user_email" id="user_email" maxlength="128" autocomplete="off" value="{//users/record/user_email}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="user_client_name">Client Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="user_client_name" id="user_client_name" maxlength="128" autocomplete="off" value="{//users/record/user_client_name}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 mb-4">
|
||||
|
||||
<label class="form-label" for="user_role">Role</label>
|
||||
|
||||
<select class="form-control form-control-sm search-dropdown" name="user_role" id="user_role" size="1">
|
||||
<xsl:apply-templates select="//Constants/UserRoles"/>
|
||||
</select>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<label class="mb-1" for="user_active">Active Status</label>
|
||||
|
||||
<div class="col-auto mb-3">
|
||||
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="user_active" id="user_active" value="true">
|
||||
<xsl:if test="boolean(number(//users/record/user_active)) = true()">
|
||||
<xsl:attribute name="checked"/>
|
||||
</xsl:if>
|
||||
</input>
|
||||
<label class="form-check-label" for="user_active">Active</label>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="buttons mt-1 mb-2">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnCancel">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Cancel</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnSave">
|
||||
<i class="bi bi-save me-2"/>Save</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDelete">
|
||||
<i class="bi bi-trash me-2"/>Delete</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for Role dropdown -->
|
||||
|
||||
<xsl:template match="Constants/UserRoles">
|
||||
|
||||
<option value="">Choose...</option>
|
||||
|
||||
<xsl:for-each select="UserRole">
|
||||
|
||||
<xsl:sort select="."/>
|
||||
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:if test=". = //users/record/user_role">
|
||||
<xsl:attribute name="selected"/>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="." />
|
||||
</option>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<xsl:param name="USER-TEMP-PASSWORD"/>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<style type="text/css">
|
||||
|
||||
.text {
|
||||
font-family: Calibri ,Arial, Helvetica, sans-serif;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<p class="text">
|
||||
Dear <xsl:value-of select="//user/record/user_client_name"/>,
|
||||
</p>
|
||||
|
||||
<p class="text">Thank you for being a customer of DEC International. Below are your account credentials.</p>
|
||||
|
||||
<p class="text">Username: <xsl:value-of select="//user/record/user_name"/></p>
|
||||
<p class="text">Password: <xsl:value-of select="$USER-TEMP-PASSWORD"/></p>
|
||||
|
||||
<p class="text">You login in at the following web address: <a href="https://ahr.realestatedatainc.com" target="_blank">Atlanta Housing Report</a></p>
|
||||
|
||||
<p class="text">Thank you,</p>
|
||||
|
||||
<p class="text">DEC-International Support</p>
|
||||
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
<br/> <!-- Line Breaks before email Disclaimer -->
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,53 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<xsl:param name="USER-TEMP-PASSWORD"/>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<style type="text/css">
|
||||
|
||||
.text {
|
||||
font-family: Calibri ,Arial, Helvetica, sans-serif;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
th {
|
||||
font-weight: bold;
|
||||
text-decoration: underline;
|
||||
text-align: left;
|
||||
padding-right: 10px;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
td {
|
||||
padding-right: 10px;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<p class="text">
|
||||
Dear <xsl:value-of select="//users/record/user_name"/>,
|
||||
</p>
|
||||
|
||||
<p class="text">Your password has been reset. Below are your account credentials.</p>
|
||||
|
||||
<p class="text">Password: <xsl:value-of select="$USER-TEMP-PASSWORD"/></p>
|
||||
|
||||
<p class="text">Click <a href="https://apps.realestatedatainc.com/atlhousingreport/main.php" target="_blank">here</a> to Login.</p>
|
||||
|
||||
<p class="text">Thank you,</p>
|
||||
|
||||
<p class="text">DEC-International Support</p>
|
||||
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
<br/> <!-- Line Breaks before email Disclaimer -->
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="APPLICATION_NAME"></xsl:param>
|
||||
<xsl:param name="FILE_NAME"></xsl:param>
|
||||
<xsl:param name="LINE_NUMBER"></xsl:param>
|
||||
<xsl:param name="ERROR_MESSAGE"></xsl:param>
|
||||
<xsl:param name="ERROR_NUMBER"></xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<div class="error" id="error_page">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-danger text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-exclamation-triangle me-2" aria-hidden="true"/>
|
||||
Issue
|
||||
</div>
|
||||
|
||||
<div class="card-body text-left">
|
||||
|
||||
<p>
|
||||
Oops...
|
||||
</p>
|
||||
|
||||
<p>
|
||||
An unexpected issue has occurred and our
|
||||
<b>Support Team</b> has been automatically notified.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
We are sorry for any inconvenience and appreciate your
|
||||
patience while we correct the problem.
|
||||
</p>
|
||||
|
||||
<xsl:if test="$ENVIRONMENT = 'Development'">
|
||||
|
||||
<div class="alert alert-danger">
|
||||
<b>Application: </b>
|
||||
<xsl:copy-of select="$APPLICATION_NAME"/>
|
||||
<br/>
|
||||
<b>File: </b>
|
||||
<xsl:copy-of select="$FILE_NAME"/>
|
||||
<br/>
|
||||
<b>Line: </b>
|
||||
<xsl:copy-of select="$LINE_NUMBER"/>
|
||||
<br/>
|
||||
<b>Message: </b>
|
||||
<xsl:value-of select="$ERROR_MESSAGE" disable-output-escaping="yes"/>
|
||||
</div>
|
||||
|
||||
</xsl:if>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<a role="button" class="btn btn-sm btn-primary me-2 btnContinue" onclick="window.close();"><i class="bi bi-box-arrow-right me-2"/>Continue</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" indent="yes"/>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<div class="home pt-5">
|
||||
|
||||
<div class="col text-center">
|
||||
<span class="text-primary fw-bold" style="font-size: 2rem;">
|
||||
<i class="bi bi-cloud me-2"></i>
|
||||
DEC Data Manager
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">2.0</xsl:param>
|
||||
<xsl:param name="MESSAGE"></xsl:param>
|
||||
<xsl:param name="PAGE-NAME">notice</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
|
||||
<div class="notice" id="notice_page">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-warning text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-info-circle me-2" aria-hidden="true"/>
|
||||
System Message
|
||||
</div>
|
||||
|
||||
<div class="card-body text-left">
|
||||
|
||||
<div class="alert alert-warning">
|
||||
<b>Message: </b>
|
||||
<xsl:value-of select="$MESSAGE" disable-output-escaping="yes"/>
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<a role="button" class="btn btn-sm btn-primary me-2 btnContinue">
|
||||
<i class="bi bi-box-arrow-right me-2"/>Continue</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">2.0</xsl:param>
|
||||
<xsl:param name="MESSAGE"></xsl:param>
|
||||
<xsl:param name="PAGE-NAME">notice</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<div class="notice" id="notice_page">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-warning text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-info-circle me-2" aria-hidden="true"/>
|
||||
System Message
|
||||
</div>
|
||||
|
||||
<div class="card-body text-left">
|
||||
|
||||
<div class="alert alert-warning">
|
||||
<b>Message: </b>
|
||||
<xsl:value-of select="$MESSAGE" disable-output-escaping="yes"/>
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-2 mb-2">
|
||||
<a role="button" class="btn btn-sm btn-primary me-2 btnContinue">
|
||||
<i class="bi bi-box-arrow-right me-2"/>Continue</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,172 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Reports</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">selectReport</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//reports/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//reports/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//reports/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//reports/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-printer me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="select_report" id="select_report" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'select_report']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'select_report']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip"><i class="bi bi-search"/></button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip"><i class="bi bi-arrow-clockwise"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text"><i class="bi bi-list-ol"/></div>
|
||||
<select class="form-select autosave" name="reports_per_page" id="reports_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-3 mb-2">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//reports/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Reports to select...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="reports-table">
|
||||
|
||||
<thead class="sticky-header" data-theme="{$THEME}">
|
||||
<th>Type</th>
|
||||
<th>Name</th>
|
||||
<th>Description</th>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//reports"/>
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Form to Print a Report -->
|
||||
|
||||
<form style="display:inline;" id="PrintForm" method="post" action="" target="PrintTab">
|
||||
|
||||
<input type="hidden" name="action" value="print"/>
|
||||
<input type="hidden" name="report" value=""/>
|
||||
|
||||
</form>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="reports/record">
|
||||
|
||||
<tr class="text-nowrap hoverable report-row" data-report-serial="{report_serial}" data-report-class="{report_class}" data-report-type="{report_type}" data-report-target="{report_target}">
|
||||
|
||||
<td class="report_type text-center fs-100" style="width: 10%;">
|
||||
<xsl:choose>
|
||||
<xsl:when test="report_type = 'Download'">
|
||||
<i class="bi bi-cloud-download" data-bs-toggle="tooltip" data-bs-title="Download" data-bs-placement="right" data-bs-custom-class="custom-tooltip"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="report_type = 'Email'">
|
||||
<i class="bi bi-send" data-bs-toggle="tooltip" data-bs-title="Email" data-bs-placement="right" data-bs-custom-class="custom-tooltip"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="report_type = 'Graph'">
|
||||
<i class="bi bi-bar-chard" data-bs-toggle="tooltip" data-bs-title="Graph" data-bs-placement="right" data-bs-custom-class="custom-tooltip"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="report_type = 'Report'">
|
||||
<i class="bi bi-printer" data-bs-toggle="tooltip" data-bs-title="Report" data-bs-placement="right" data-bs-custom-class="custom-tooltip"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="report_type = 'Upload'">
|
||||
<i class="bi bi-cloud-upload" data-bs-toggle="tooltip" data-bs-title="Upload" data-bs-placement="right" data-bs-custom-class="custom-tooltip"/>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</td>
|
||||
|
||||
<td class="report_name"><xsl:value-of select="report_name"/></td>
|
||||
<td class="report_description"><xsl:value-of select="report_description"/></td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,160 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Alerts</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupAlerts</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//alerts/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//alerts/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//alerts/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//alerts/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-info-circle me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_alert" id="find_alert" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_alert']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_alert']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-search"/>
|
||||
</button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-arrow-clockwise"/>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text">
|
||||
<i class="bi bi-list-ol"/>
|
||||
</div>
|
||||
<select class="form-select autosave" name="alerts_per_page" id="alerts_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Action Buttons -->
|
||||
|
||||
<div class="buttons mt-3 mb-2">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd">
|
||||
<i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//alerts/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Alerts to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="alerts-table">
|
||||
<thead>
|
||||
<th>Title</th>
|
||||
<th>Starts</th>
|
||||
<th>Expires</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//alerts"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="alerts/record">
|
||||
|
||||
<tr class="hoverable alert-row" data-alert-serial="{alert_serial}" data-alert-name="{alert_title}">
|
||||
|
||||
<td class="alert_title">
|
||||
<xsl:value-of select="alert_title"/>
|
||||
</td>
|
||||
<td class="alert_start">
|
||||
<xsl:value-of select="alert_started_verbose"/>
|
||||
</td>
|
||||
<td class="alert_end">
|
||||
<xsl:value-of select="alert_expires_verbose"/>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,152 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Dropdowns</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupDropdowns</xsl:param>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-caret-down-square me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
</div>
|
||||
|
||||
<div class="card-body ps-1 pe-1">
|
||||
|
||||
<div class="buttons ms-2 mt-1">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-3"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//dropdowntypes/record) = 0">
|
||||
<div class="fs-5 text-danger fw-bold fst-italic m-2">
|
||||
<xsl:text>There are no Dropdowns defined...</xsl:text>
|
||||
</div>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div id="dropdown-accordion">
|
||||
|
||||
<xsl:apply-templates select="//dropdowntypes"/>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Create Dropdown Accordions -->
|
||||
|
||||
<xsl:template match="dropdowntypes/record">
|
||||
|
||||
<xsl:variable name="DROPDOWNTYPE_SERIAL" select="dropdowntype_serial"/>
|
||||
|
||||
<div class="card dropdowntype-card border-0">
|
||||
|
||||
<div class="card-header collapsed dropdowntype-card-header text-truncate border-0 bg-transparent p-0 ps-2" role="button" data-bs-toggle="collapse" data-bs-target="#C-{position()}" aria-expanded="false" aria-controls="C-{position()}">
|
||||
<i class="bi bi-caret-right-fill caret-toggle me-2"/>
|
||||
<xsl:value-of select="dropdowntype_title"/>
|
||||
</div>
|
||||
|
||||
<div id="C-{position()}" class="collapse" data-bs-parent="#dropdown-accordion">
|
||||
|
||||
<div class="card-body border mt-2 mb-2 pt-1 ms-3 me-3">
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//dropdowns/record[dropdown_dropdowntype = $DROPDOWNTYPE_SERIAL]) = 0">
|
||||
<div class="fs-6 text-danger fw-bold fst-italic m-2 ms-0">
|
||||
<xsl:text>There are no Dropdowns defined...</xsl:text>
|
||||
</div>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-responsive table-wrapper scrollable mt-2">
|
||||
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto dropdown-table" id="dropdown-{position()}-table">
|
||||
|
||||
<thead>
|
||||
<th class="text-center pe-3">Default</th>
|
||||
<th class="text-center pe-3">Active</th>
|
||||
<th>Value</th>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<xsl:for-each select="//dropdowns/record[dropdown_dropdowntype = $DROPDOWNTYPE_SERIAL]">
|
||||
|
||||
<tr class="text-nowrap hoverable dropdown-row" data-dropdown-serial="{dropdown_serial}" data-dropdown-value="{dropdown_value}" data-dropdown-dropdowntype="{dropdown_dropdowntype}">
|
||||
|
||||
<td class="checkbox text-center dropdown_default pe-3">
|
||||
<input class="form-check-input fs-6 dropdown_default align-middle mb-1" type="checkbox" name="dropdown_default" value="true">
|
||||
<xsl:if test="boolean(number(dropdown_default)) = true()">
|
||||
<xsl:attribute name="checked"/>
|
||||
</xsl:if>
|
||||
</input>
|
||||
</td>
|
||||
|
||||
<td class="checkbox text-center dropdown_active pe-3">
|
||||
<input class="form-check-input fs-6 dropdown_active align-middle mb-1" type="checkbox" name="dropdown_active" data-dropdown-serial="{dropdown_serial}" value="true">
|
||||
<xsl:if test="boolean(number(dropdown_active)) = true()">
|
||||
<xsl:attribute name="checked"/>
|
||||
</xsl:if>
|
||||
</input>
|
||||
</td>
|
||||
|
||||
<td class="dropdown_value align-middle"><xsl:value-of select="dropdown_value"/></td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
<div class="buttons ms-0 mt-3">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd" data-dropdowntype-serial="{dropdowntype_serial}"><i class="bi bi-plus-lg me-1"/>Add</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Dropdown Types</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupDropdowntypes</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//dropdowntypes/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//dropdowntypes/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//dropdowntypes/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//dropdowntypes/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-caret-down-square me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_dropdowntype" id="find_dropdowntype" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_dropdowntype']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_dropdowntype']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip"><i class="bi bi-search"/></button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip"><i class="bi bi-arrow-clockwise"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text"><i class="bi bi-list-ol"/></div>
|
||||
<select class="form-select autosave" name="dropdowntypes_per_page" id="dropdowntypes_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-1 mb-1">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd"><i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//dropdowntypes/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Dropdown Types to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="dropdowntypes-table">
|
||||
<thead>
|
||||
<th>Name</th>
|
||||
<th>Title</th>
|
||||
<th>Table</th>
|
||||
<th>Column</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//dropdowntypes"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="dropdowntypes/record">
|
||||
|
||||
<tr class="text-nowrap hoverable dropdowntype-row" data-dropdowntype-serial="{dropdowntype_serial}" data-dropdowntype-name="{dropdowntype_name}">
|
||||
|
||||
<td class="dropdowntype_name"><xsl:value-of select="dropdowntype_name"/></td>
|
||||
<td class="dropdowntype_title"><xsl:value-of select="dropdowntype_title"/></td>
|
||||
<td class="dropdowntype_table"><xsl:value-of select="dropdowntype_table"/></td>
|
||||
<td class="dropdowntype_column"><xsl:value-of select="dropdowntype_column"/></td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Popovers</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupPopovers</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//popovers/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//popovers/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//popovers/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//popovers/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-chat-square-dots me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_popover" id="find_popover" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_popover']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_popover']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip"><i class="bi bi-search"/></button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip"><i class="bi bi-arrow-clockwise"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text"><i class="bi bi-list-ol"/></div>
|
||||
<select class="form-select autosave" name="popovers_per_page" id="popovers_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Action Buttons -->
|
||||
|
||||
<div class="buttons mt-3 mb-2">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd"><i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//popovers/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Popovers to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="popovers-table">
|
||||
<thead>
|
||||
<th>Name</th>
|
||||
<th>Title</th>
|
||||
<th>Placeholder</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//popovers"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="popovers/record">
|
||||
|
||||
<tr class="hoverable popover-row" data-popover-serial="{popover_serial}" data-popover-name="{popover_name}">
|
||||
|
||||
<td class="popover_name"><xsl:value-of select="popover_name"/></td>
|
||||
<td class="popover_title"><xsl:value-of select="popover_title"/></td>
|
||||
<td class="popover_placeholder"><xsl:value-of select="popover_placeholder"/></td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,149 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Reports</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupReports</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//reports/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//reports/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//reports/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//reports/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-printer me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_report" id="find_report" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_report']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_report']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip"><i class="bi bi-search"/></button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip"><i class="bi bi-arrow-clockwise"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text"><i class="bi bi-list-ol"/></div>
|
||||
<select class="form-select autosave" name="reports_per_page" id="reports_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-3 mb-2">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd"><i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//reports/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Reports to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="reports-table">
|
||||
|
||||
<thead class="sticky-header" data-theme="{$THEME}">
|
||||
<th>Class</th>
|
||||
<th>Type</th>
|
||||
<th>Name</th>
|
||||
<th>Description</th>
|
||||
<th>Target</th>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//reports"/>
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="reports/record">
|
||||
|
||||
<tr class="text-nowrap hoverable report-row" data-report-serial="{report_serial}">
|
||||
|
||||
<td class="report_class"><xsl:value-of select="report_class"/></td>
|
||||
<td class="report_type"><xsl:value-of select="report_type"/></td>
|
||||
<td class="report_name"><xsl:value-of select="report_name"/></td>
|
||||
<td class="report_description"><xsl:value-of select="report_description"/></td>
|
||||
<td class="report_target"><xsl:value-of select="report_target"/></td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,150 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Statuses</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupStatuses</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//statuses/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//statuses/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//statuses/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//statuses/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3">
|
||||
<i class="bi bi-list-task me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_status" id="find_status" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_status']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_status']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip"><i class="bi bi-search"/></button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip"><i class="bi bi-arrow-clockwise"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text"><i class="bi bi-list-ol"/></div>
|
||||
<select class="form-select autosave" name="statuses_per_page" id="statuses_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-4 mb-2">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd"><i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//statuses/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Statuses to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="statuses-table">
|
||||
<thead class="sticky-header" data-theme="{$THEME}">
|
||||
<th>Name</th>
|
||||
<th>Classes</th>
|
||||
<th class="text-center">Active</th>
|
||||
<th class="text-center">Default</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//statuses"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="statuses/record">
|
||||
|
||||
<tr class="hoverable status-row" data-status-serial="{status_serial}" data-status-name="{status_name}">
|
||||
|
||||
<td class="status_name"><xsl:value-of select="status_name"/></td>
|
||||
<td class="status_classes"><xsl:value-of select="status_classes"/></td>
|
||||
<td class="status_active text-center">
|
||||
<xsl:if test="boolean(number(status_active)) = true()">
|
||||
<i class="bi bi-check-lg text-success"/>
|
||||
</xsl:if>
|
||||
</td>
|
||||
<td class="status_default text-center">
|
||||
<xsl:if test="boolean(number(status_default)) = true()">
|
||||
<i class="bi bi-x-lg text-success"/>
|
||||
</xsl:if>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,162 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Subscriptions</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupSubscriptions</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//subscriptions/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//subscriptions/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//subscriptions/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//subscriptions/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-list me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_subscription" id="find_subscription" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_subscription']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_subscription']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-search"/>
|
||||
</button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-arrow-clockwise"/>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text">
|
||||
<i class="bi bi-list-ol"/>
|
||||
</div>
|
||||
<select class="form-select autosave" name="subscriptions_per_page" id="subscriptions_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-1 mb-1">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd">
|
||||
<i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//subscriptions/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Subscriptions to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="subscriptions-table">
|
||||
<thead>
|
||||
<th>Title</th>
|
||||
<th>Description</th>
|
||||
<th>Project Type</th>
|
||||
<th>Area</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//subscriptions"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="subscriptions/record">
|
||||
|
||||
<tr class="text-nowrap hoverable subscription-row" data-subscription-serial="{subscription_serial}" data-subscription-name="{subscription_name}">
|
||||
|
||||
<td class="subscription_title">
|
||||
<xsl:value-of select="subscription_title"/>
|
||||
</td>
|
||||
<td class="subscription_description">
|
||||
<xsl:value-of select="subscription_description"/>
|
||||
</td>
|
||||
<td class="subscription_projecttype">
|
||||
<xsl:value-of select="subscription_projecttype"/>
|
||||
</td>
|
||||
<td class="subscription_area">
|
||||
<xsl:value-of select="subscription_area"/>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,179 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Users</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">setupUsers</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//users/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//users/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//users/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//users/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-3 border-bottom-0">
|
||||
<i class="bi bi-person-circle me-2"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_user" id="find_user" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_user']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_user']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-search"/>
|
||||
</button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-arrow-clockwise"/>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text">
|
||||
<i class="bi bi-list-ol"/>
|
||||
</div>
|
||||
<select class="form-select autosave" name="users_per_page" id="users_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Action Buttons -->
|
||||
|
||||
<div class="buttons mt-1 mb-1">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone">
|
||||
<i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnAdd">
|
||||
<i class="bi bi-plus-lg me-2"/>Add</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip">
|
||||
<i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//users/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Users to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-wrapper table-responsive">
|
||||
<table class="table table-sm table-striped table-hover base-table table-auto" id="users-table">
|
||||
<thead class="sticky-header" data-theme="{$THEME}">
|
||||
<th>Username</th>
|
||||
<th>Client Name</th>
|
||||
<th>Email</th>
|
||||
<th>Role</th>
|
||||
<th class="text-center">Active</th>
|
||||
<th class="text-center">Last Login</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//users"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for table rows -->
|
||||
|
||||
<xsl:template match="users/record">
|
||||
|
||||
<tr class="text-nowrap hoverable user-row" data-user-serial="{user_serial}" data-user-name="{user_name}">
|
||||
|
||||
<td class="user_name">
|
||||
<xsl:value-of select="user_name"/>
|
||||
</td>
|
||||
<td class="user_client_name">
|
||||
<xsl:value-of select="user_client_name"/>
|
||||
</td>
|
||||
<td class="user_email">
|
||||
<xsl:value-of select="user_email"/>
|
||||
</td>
|
||||
<td class="user_role">
|
||||
<xsl:value-of select="user_role"/>
|
||||
</td>
|
||||
<td class="user_active text-center">
|
||||
<xsl:choose>
|
||||
<xsl:when test="boolean(number(user_active)) = true()">
|
||||
<i class="bi bi-check-lg text-success"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<i class="bi bi-x-lg text-danger"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</td>
|
||||
<td class="user_login text-center">
|
||||
<xsl:value-of select="user_login_verbose"/>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
+151
@@ -0,0 +1,151 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
<xsl:param name="APPLICATION_NAME">DEC Data Manager</xsl:param>
|
||||
<xsl:param name="PAGE_TITLE">DEC Data Manager Sign In</xsl:param>
|
||||
<xsl:param name="FORM_NAME">signIn</xsl:param>
|
||||
<xsl:param name="BTN_SUBMIT"/>
|
||||
<xsl:param name="BTN_RESET_PASSWORD">?Xaction=resetpassword</xsl:param>
|
||||
<xsl:param name="INVALID_SIGNIN"/>
|
||||
<xsl:param name="RESET_PASSWORD_SUCCESSFUL"/>
|
||||
<xsl:param name="VERSION"/>
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:text disable-output-escaping="yes"><!DOCTYPE html></xsl:text>
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
|
||||
<title>
|
||||
<xsl:value-of select="$APPLICATION_NAME"/>
|
||||
</title>
|
||||
|
||||
<link rel="icon" type="image/x-icon" href="images/dec-international-logo.png"/>
|
||||
|
||||
<link href="css/themes/Sandstone/bootstrap.min.css?version={$VERSION}" rel="stylesheet"/>
|
||||
<link href="css/bootstrap-icons.min.css?version={$VERSION}" rel="stylesheet"/>
|
||||
<link href="css/signIn.css?version={$VERSION}" rel="stylesheet"/>
|
||||
|
||||
<script src="js/jquery-3.2.0.min.js?version={$VERSION}"></script>
|
||||
<script src="js/bootstrap.bundle.min.js?version={$VERSION}"></script>
|
||||
<script src="js/signIn.js?version={$VERSION}"></script>
|
||||
</head>
|
||||
|
||||
<body class="bg-light">
|
||||
|
||||
<main class="min-vh-100 d-flex align-items-center justify-content-center px-3">
|
||||
|
||||
<div class="card shadow-sm border-0 login-card">
|
||||
|
||||
<div class="card-body p-4">
|
||||
|
||||
<div class="text-center mb-4">
|
||||
<img src="images/dec-international-logo.png"
|
||||
alt="DEC International"
|
||||
class="mb-3"
|
||||
style="max-width: 90px;"/>
|
||||
|
||||
<h1 class="h5 fw-bold mb-1">
|
||||
<xsl:value-of select="$PAGE_TITLE"/>
|
||||
</h1>
|
||||
|
||||
<div class="text-muted small">
|
||||
Please sign in to continue
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<xsl:if test="$INVALID_SIGNIN = 'TRUE'">
|
||||
<div class="alert alert-danger d-flex align-items-center py-2" role="alert">
|
||||
<i class="bi bi-exclamation-triangle-fill me-2"></i>
|
||||
<div>Invalid username or password.</div>
|
||||
</div>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$RESET_PASSWORD_SUCCESSFUL = 'TRUE'">
|
||||
<div class="alert alert-info d-flex align-items-start py-2" role="alert">
|
||||
<i class="bi bi-info-circle-fill me-2 mt-1"></i>
|
||||
<div>
|
||||
If an account exists for the email address provided, you will receive an email containing a temporary password and a link to reset your password.
|
||||
</div>
|
||||
</div>
|
||||
</xsl:if>
|
||||
|
||||
<form action="{$BTN_SUBMIT}" name="{$FORM_NAME}" method="post" id="{$FORM_NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="Users.login"/>
|
||||
<input type="hidden" name="step" value="authenticate"/>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="user_name" class="form-label small fw-semibold">Username</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi bi-person-fill" aria-hidden="true"></i>
|
||||
</span>
|
||||
<input type="text"
|
||||
id="user_name"
|
||||
name="user_name"
|
||||
class="form-control"
|
||||
placeholder="Enter username"
|
||||
maxlength="128"
|
||||
autofocus="autofocus"
|
||||
autocomplete="username"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="user_password" class="form-label small fw-semibold">Password</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi bi-lock-fill" aria-hidden="true"></i>
|
||||
</span>
|
||||
<input id="user_password"
|
||||
name="user_password"
|
||||
type="password"
|
||||
class="form-control"
|
||||
placeholder="Enter password"
|
||||
maxlength="128"
|
||||
autocomplete="current-password"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="d-grid gap-2 mt-4">
|
||||
<button type="submit" class="btn btn-primary btnSignIn">
|
||||
<i class="bi bi-box-arrow-in-right me-1"></i>
|
||||
Sign In
|
||||
</button>
|
||||
|
||||
<button type="button" class="btn btn-outline-secondary btnForgot">
|
||||
Forgot/Reset Password
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<form action="{$BTN_RESET_PASSWORD}" name="reset-password" method="post" id="reset-password">
|
||||
<input type="hidden" id="reset_user_name" name="user_name"/>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card-footer text-center bg-white border-0 pb-4">
|
||||
<small class="text-muted">
|
||||
<i class="bi bi-shield-lock me-1"></i>
|
||||
Unauthorized Access is Prohibited
|
||||
</small>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,143 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="html" encoding="utf-8" indent="yes"/>
|
||||
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Journal</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">viewJournal</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//journal/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//journal/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//journal/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//journal/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
<script src="js/{$PAGE-NAME}.js?version={$VERSION}"/>
|
||||
|
||||
<div class="{$PAGE-NAME}">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-header bg-primary text-white p-1 ps-2 border-bottom-0">
|
||||
<i class="bi bi-book me-2" aria-hidden="true"/>
|
||||
<xsl:value-of select="$PAGE-TITLE"/>
|
||||
<xsl:if test="$PAGINATION_COUNT > 0">
|
||||
<xsl:text> | Showing </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_START, '###,##0')"/>
|
||||
<xsl:text> to </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_END, '###,##0')"/>
|
||||
<xsl:text> of </xsl:text>
|
||||
<xsl:value-of select="format-number($PAGINATION_COUNT, '###,##0')"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row align-items-center mt-2 mb-3">
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_journal" id="find_journal" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_journal']/popover_placeholder}" autofocus="autofocus"/>
|
||||
<button type="button" class="btn btn-primary fw-bold btnFind" data-bs-toggle="tooltip" data-bs-title="{//popovers/record[popover_name = 'find_journal']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip"><i class="bi bi-search"/></button>
|
||||
<button type="button" class="btn btn-primary fw-bold btnClearFind" data-bs-toggle="tooltip" data-bs-title="Clear Find" data-bs-custom-class="custom-tooltip"><i class="bi bi-arrow-clockwise"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-auto">
|
||||
<div class="input-group input-group-sm" data-bs-toggle="tooltip" data-bs-title="Show Per Page" data-bs-custom-class="custom-tooltip">
|
||||
<div class="input-group-text"><i class="bi bi-list-ol"/></div>
|
||||
<select class="form-select autosave" name="journals_per_page" id="journals_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
<option value="80">80</option>
|
||||
<option value="100">100</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="buttons mt-1 mb-1">
|
||||
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnDone"><i class="bi bi-box-arrow-left me-2"/>Done</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnRefresh"><i class="bi bi-arrow-clockwise me-2"/>Refresh</button>
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 btnClear"><i class="bi bi-trash3 me-2"/>Clear</button>
|
||||
|
||||
<div class="btn-group ms-2" role="group">
|
||||
<xsl:if test="$PAGINATION_PAGE > 1">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="first" data-bs-toggle="tooltip" data-bs-title="First Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-left me-1"/>First</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="previous" data-bs-toggle="tooltip" data-bs-title="Previous Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-left me-1"/>Previous</button>
|
||||
</xsl:if>
|
||||
<xsl:if test="$PAGINATION_COUNT > $PAGINATION_END">
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="next" data-bs-toggle="tooltip" data-bs-title="Next Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-right me-1"/>Next</button>
|
||||
<button type="button" class="btn btn-sm btn-primary btnPagination" data-pagination="last" data-bs-toggle="tooltip" data-bs-title="Last Page" data-bs-custom-class="custom-tooltip"><i class="bi bi-chevron-bar-right me-1"/>Last</button>
|
||||
</xsl:if>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr class="mt-3 mb-2"/>
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//journal/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Journal Entries to View...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-responsive table-wrapper">
|
||||
<table class="table table-sm table-striped base-table table-auto" id="journal-table">
|
||||
<thead>
|
||||
<th>Timestamp</th>
|
||||
<th>Message</th>
|
||||
<th>Origin</th>
|
||||
<th>IP</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:apply-templates select="//journal/record"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template to build table rows -->
|
||||
|
||||
<xsl:template match="journal/record">
|
||||
|
||||
<tr class="journal-row text-nowrap">
|
||||
|
||||
<td class="journal_timestamp"><xsl:value-of select="journal_timestamp_verbose"/></td>
|
||||
<td class="journal_entry" ><xsl:value-of select="journal_entry"/></td>
|
||||
<td class="journal_origin" ><xsl:value-of select="journal_origin" /></td>
|
||||
<td class="journal_ip" ><xsl:value-of select="journal_ip" /></td>
|
||||
|
||||
</tr>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
Reference in New Issue
Block a user