Created view to calculate statistics for YTD Permits. Also changed the term RDI to Permit for consistency and understanding
This commit is contained in:
@@ -0,0 +1,549 @@
|
||||
<?php
|
||||
|
||||
class Permits extends Base {
|
||||
|
||||
// Variables.
|
||||
|
||||
private $current_user_serial = 0;
|
||||
private $current_user_id = "";
|
||||
private $current_user_name = "";
|
||||
private $current_user_email = "";
|
||||
private $pagination_size = 20;
|
||||
private $pagination_page = 1;
|
||||
|
||||
// =================
|
||||
// Class Constructor
|
||||
// =================
|
||||
|
||||
public function __construct() {
|
||||
|
||||
set_error_handler(array($this, "displayError"));
|
||||
|
||||
date_default_timezone_set(self::TIMEZONE);
|
||||
|
||||
$this->current_user_serial = $_SESSION[self::USER_SERIAL] ?? 0;
|
||||
$this->current_user_id = $_SESSION[self::USER_ID] ?? "";
|
||||
$this->current_user_name = $_SESSION[self::USER_NAME] ?? "";
|
||||
$this->current_user_email = $_SESSION[self::USER_EMAIL] ?? "";
|
||||
|
||||
$this->pagination_page = $_SESSION[self::PAGINATION_PAGE] ?? 1;
|
||||
}
|
||||
|
||||
// ==============
|
||||
// Manage Permits
|
||||
// ==============
|
||||
|
||||
public function managePermits() {
|
||||
|
||||
$permit = $this->getPermitsPage();
|
||||
$popovers = (new Popovers())->getPopovers();
|
||||
|
||||
$XML = $this->mergeXML($permit, "<XML/>");
|
||||
$XML = $this->mergeXML($popovers, $XML);
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("managePermits"));
|
||||
|
||||
$this->displayContent($content);
|
||||
}
|
||||
|
||||
// ==========
|
||||
// Add Permit
|
||||
// ==========
|
||||
|
||||
public function addPermit() {
|
||||
|
||||
$step = filter_input(INPUT_POST, "step") ?: "prompt";
|
||||
|
||||
switch ($step) {
|
||||
|
||||
case "prompt":
|
||||
|
||||
$constants = $this->getConstants();
|
||||
$counties = (new Counties())->getCounties();
|
||||
|
||||
$XML = $this->mergeXML($constants, "<XML/>");
|
||||
$XML = $this->mergeXML($counties, $XML);
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("addPermit"));
|
||||
|
||||
$this->displayContent($content);
|
||||
|
||||
break;
|
||||
|
||||
case "add":
|
||||
|
||||
$permit_permit_facts_id = filter_input(INPUT_POST, "permit_permit_facts_id", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_permit_number = filter_input(INPUT_POST, "permit_permit_number") ?: '';
|
||||
$permit_entry_date = filter_input(INPUT_POST, "permit_entry_date") ?: '';
|
||||
$permit_permit_date = filter_input(INPUT_POST, "permit_permit_date") ?: '';
|
||||
$permit_sub_div_name = filter_input(INPUT_POST, "permit_sub_div_name") ?: '';
|
||||
$permit_project_type = filter_input(INPUT_POST, "permit_project_type") ?: '';
|
||||
$permit_county = filter_input(INPUT_POST, "permit_county") ?: '';
|
||||
$permit_company = filter_input(INPUT_POST, "permit_company") ?: '';
|
||||
$permit_phone = filter_input(INPUT_POST, "permit_phone") ?: '';
|
||||
$permit_project_addr = filter_input(INPUT_POST, "permit_project_addr") ?: '';
|
||||
$permit_city = filter_input(INPUT_POST, "permit_city") ?: '';
|
||||
$permit_state = filter_input(INPUT_POST, "permit_state") ?: '';
|
||||
$permit_zip = filter_input(INPUT_POST, "permit_zip", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_project_city = filter_input(INPUT_POST, "permit_project_city") ?: '';
|
||||
$permit_project_state = filter_input(INPUT_POST, "permit_project_state") ?: '';
|
||||
$permit_value = filter_input(INPUT_POST, "permit_value", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_lot = filter_input(INPUT_POST, "permit_lot", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_dist_ll = filter_input(INPUT_POST, "permit_dist_ll", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_owner_name = filter_input(INPUT_POST, "permit_owner_name") ?: '';
|
||||
$permit_owner_phone = filter_input(INPUT_POST, "permit_owner_phone", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$permit_owner_address = filter_input(INPUT_POST, "permit_owner_address") ?: '';
|
||||
$permit_owner_city = filter_input(INPUT_POST, "permit_owner_city") ?: '';
|
||||
$permit_owner_state = filter_input(INPUT_POST, "permit_owner_state") ?: '';
|
||||
$permit_owner_zip = filter_input(INPUT_POST, "permit_owner_zip", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$permit_size = filter_input(INPUT_POST, "permit_size", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_units = filter_input(INPUT_POST, "permit_units", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_building_type = filter_input(INPUT_POST, "permit_building_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_work_type = filter_input(INPUT_POST, "permit_work_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_ct1 = filter_input(INPUT_POST, "permit_ct1", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_ytd_permits = filter_input(INPUT_POST, "permit_ytd_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_ytd_value = filter_input(INPUT_POST, "permit_ytd_value") ?: 0;
|
||||
$permit_12mth_prev_permits = filter_input(INPUT_POST, "permit_12mth_prev_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$permit_entry_date = date("Y-m-d", strtotime($permit_entry_date));
|
||||
$permit_permit_date = date("Y-m-d", strtotime($permit_permit_date));
|
||||
$permit_value = str_replace(",", "", $permit_value);
|
||||
|
||||
$SQL = "INSERT INTO permits (
|
||||
permit_permit_facts_id,
|
||||
permit_permit_number,
|
||||
permit_entry_date,
|
||||
permit_permit_date,
|
||||
permit_sub_div_name,
|
||||
permit_project_type,
|
||||
permit_county,
|
||||
permit_company,
|
||||
permit_phone,
|
||||
permit_project_addr,
|
||||
permit_city,
|
||||
permit_state,
|
||||
permit_zip,
|
||||
permit_project_city,
|
||||
permit_project_state,
|
||||
permit_value,
|
||||
permit_lot,
|
||||
permit_dist_ll,
|
||||
permit_owner_name,
|
||||
permit_owner_phone,
|
||||
permit_owner_address,
|
||||
permit_owner_city,
|
||||
permit_owner_state,
|
||||
permit_owner_zip,
|
||||
permit_size,
|
||||
permit_units,
|
||||
permit_building_type,
|
||||
permit_work_type,
|
||||
permit_ct1,
|
||||
permit_ytd_permits,
|
||||
permit_ytd_value,
|
||||
permit_12mth_prev_permits
|
||||
) VALUES (
|
||||
:permit_permit_facts_id,
|
||||
:permit_permit_number,
|
||||
:permit_entry_date,
|
||||
:permit_permit_date,
|
||||
:permit_sub_div_name,
|
||||
:permit_project_type,
|
||||
:permit_county,
|
||||
:permit_company,
|
||||
:permit_phone,
|
||||
:permit_project_addr,
|
||||
:permit_city,
|
||||
:permit_state,
|
||||
:permit_zip,
|
||||
:permit_project_city,
|
||||
:permit_project_state,
|
||||
:permit_value,
|
||||
:permit_lot,
|
||||
:permit_dist_ll,
|
||||
:permit_owner_name,
|
||||
:permit_owner_phone,
|
||||
:permit_owner_address,
|
||||
:permit_owner_city,
|
||||
:permit_owner_state,
|
||||
:permit_owner_zip,
|
||||
:permit_size,
|
||||
:permit_units,
|
||||
:permit_building_type,
|
||||
:permit_work_type,
|
||||
:permit_ct1,
|
||||
:permit_ytd_permits,
|
||||
:permit_ytd_value,
|
||||
:permit_12mth_prev_permits
|
||||
)";
|
||||
|
||||
$statement = $this->connect()->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":permit_permit_facts_id", $permit_permit_facts_id);
|
||||
$statement->bindValue(":permit_permit_number", $permit_permit_number);
|
||||
$statement->bindValue(":permit_entry_date", $permit_entry_date);
|
||||
$statement->bindValue(":permit_permit_date", $permit_permit_date);
|
||||
$statement->bindValue(":permit_sub_div_name", $permit_sub_div_name);
|
||||
$statement->bindValue(":permit_project_type", $permit_project_type);
|
||||
$statement->bindValue(":permit_county", $permit_county);
|
||||
$statement->bindValue(":permit_company", $permit_company);
|
||||
$statement->bindValue(":permit_phone", $permit_phone);
|
||||
$statement->bindValue(":permit_project_addr", $permit_project_addr);
|
||||
$statement->bindValue(":permit_city", $permit_city);
|
||||
$statement->bindValue(":permit_state", $permit_state);
|
||||
$statement->bindValue(":permit_zip", $permit_zip);
|
||||
$statement->bindValue(":permit_project_city", $permit_project_city);
|
||||
$statement->bindValue(":permit_project_state", $permit_project_state);
|
||||
$statement->bindValue(":permit_value", $permit_value);
|
||||
$statement->bindValue(":permit_lot", $permit_lot);
|
||||
$statement->bindValue(":permit_dist_ll", $permit_dist_ll);
|
||||
$statement->bindValue(":permit_owner_name", $permit_owner_name);
|
||||
$statement->bindValue(":permit_owner_phone", $permit_owner_phone);
|
||||
$statement->bindValue(":permit_owner_address", $permit_owner_address);
|
||||
$statement->bindValue(":permit_owner_city", $permit_owner_city);
|
||||
$statement->bindValue(":permit_owner_state", $permit_owner_state);
|
||||
$statement->bindValue(":permit_owner_zip", $permit_owner_zip);
|
||||
$statement->bindValue(":permit_size", $permit_size);
|
||||
$statement->bindValue(":permit_units", $permit_units);
|
||||
$statement->bindValue(":permit_building_type", $permit_building_type);
|
||||
$statement->bindValue(":permit_work_type", $permit_work_type);
|
||||
$statement->bindValue(":permit_ct1", $permit_ct1);
|
||||
$statement->bindValue(":permit_ytd_permits", $permit_ytd_permits);
|
||||
$statement->bindValue(":permit_ytd_value", $permit_ytd_value);
|
||||
$statement->bindValue(":permit_12mth_prev_permits", $permit_12mth_prev_permits);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
$this->displayHome();
|
||||
}
|
||||
}
|
||||
|
||||
// ==============
|
||||
// Delete Permits
|
||||
// ==============
|
||||
|
||||
public function deletePermits() {
|
||||
|
||||
$permit_serial = filter_input(INPUT_POST, "permit_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$permit = $this->getPermits($permit_serial);
|
||||
|
||||
if ($permit->count() == 0) {
|
||||
$this->logError("Invalid Permits ({$permit_serial}). " . __METHOD__);
|
||||
}
|
||||
|
||||
$SQL = "delete from permits
|
||||
where permit_serial = {$permit_serial}";
|
||||
|
||||
$this->executeSQL($SQL);
|
||||
}
|
||||
|
||||
// ==============
|
||||
// Edit a Permits
|
||||
// ==============
|
||||
|
||||
public function editPermit() {
|
||||
|
||||
$step = filter_input(INPUT_POST, "step") ?: "prompt";
|
||||
|
||||
switch ($step) {
|
||||
|
||||
case "prompt":
|
||||
|
||||
$permit_serial = filter_input(INPUT_POST, "permit_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$permit = $this->getPermits($permit_serial);
|
||||
|
||||
if ($permit->count() == 0) {
|
||||
$this->logError("Invalid Permits ({$permit_serial}). " . __METHOD__);
|
||||
}
|
||||
|
||||
$constants = $this->getConstants();
|
||||
$counties = (new Counties())->getCounties();
|
||||
|
||||
$XML = $this->mergeXML($permit, "<XML/>");
|
||||
$XML = $this->mergeXML($constants, $XML);
|
||||
$XML = $this->mergeXML($counties, $XML);
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("editPermit"));
|
||||
$this->displayContent($content);
|
||||
|
||||
break;
|
||||
|
||||
case "update":
|
||||
|
||||
$permit_serial = filter_input(INPUT_POST, "permit_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_permit_facts_id = filter_input(INPUT_POST, "permit_permit_facts_id", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_permit_number = filter_input(INPUT_POST, "permit_permit_number") ?: '';
|
||||
$permit_entry_date = filter_input(INPUT_POST, "permit_entry_date") ?: '';
|
||||
$permit_permit_date = filter_input(INPUT_POST, "permit_permit_date") ?: '';
|
||||
$permit_sub_div_name = filter_input(INPUT_POST, "permit_sub_div_name") ?: '';
|
||||
$permit_project_type = filter_input(INPUT_POST, "permit_project_type") ?: '';
|
||||
$permit_county = filter_input(INPUT_POST, "permit_county") ?: '';
|
||||
$permit_company = filter_input(INPUT_POST, "permit_company") ?: '';
|
||||
$permit_phone = filter_input(INPUT_POST, "permit_phone") ?: '';
|
||||
$permit_project_addr = filter_input(INPUT_POST, "permit_project_addr") ?: '';
|
||||
$permit_city = filter_input(INPUT_POST, "permit_city") ?: '';
|
||||
$permit_state = filter_input(INPUT_POST, "permit_state") ?: '';
|
||||
$permit_zip = filter_input(INPUT_POST, "permit_zip", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_project_city = filter_input(INPUT_POST, "permit_project_city") ?: '';
|
||||
$permit_project_state = filter_input(INPUT_POST, "permit_project_state") ?: '';
|
||||
$permit_value = filter_input(INPUT_POST, "permit_value", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_lot = filter_input(INPUT_POST, "permit_lot", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_dist_ll = filter_input(INPUT_POST, "permit_dist_ll", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_owner_name = filter_input(INPUT_POST, "permit_owner_name") ?: '';
|
||||
$permit_owner_phone = filter_input(INPUT_POST, "permit_owner_phone", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$permit_owner_address = filter_input(INPUT_POST, "permit_owner_address") ?: '';
|
||||
$permit_owner_city = filter_input(INPUT_POST, "permit_owner_city") ?: '';
|
||||
$permit_owner_state = filter_input(INPUT_POST, "permit_owner_state") ?: '';
|
||||
$permit_owner_zip = filter_input(INPUT_POST, "permit_owner_zip", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$permit_size = filter_input(INPUT_POST, "permit_size", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_units = filter_input(INPUT_POST, "permit_units", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_building_type = filter_input(INPUT_POST, "permit_building_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_work_type = filter_input(INPUT_POST, "permit_work_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_ct1 = filter_input(INPUT_POST, "permit_ct1", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_ytd_permits = filter_input(INPUT_POST, "permit_ytd_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$permit_ytd_value = filter_input(INPUT_POST, "permit_ytd_value") ?: 0;
|
||||
$permit_12mth_prev_permits = filter_input(INPUT_POST, "permit_12mth_prev_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$permit_entry_date = date("Y-m-d", strtotime($permit_entry_date));
|
||||
$permit_permit_date = date("Y-m-d", strtotime($permit_permit_date));
|
||||
$permit_value = str_replace(",", "", $permit_value);
|
||||
|
||||
// Verify the Permits
|
||||
$permit = $this->getPermits($permit_serial);
|
||||
|
||||
if ($permit->count() == 0) {
|
||||
$this->logError("Invalid Permits ({$permit_serial}). " . __METHOD__);
|
||||
}
|
||||
|
||||
$SQL = "UPDATE permits
|
||||
SET permit_permit_facts_id = :permit_permit_facts_id,
|
||||
permit_permit_number = :permit_permit_number,
|
||||
permit_entry_date = :permit_entry_date,
|
||||
permit_permit_date = :permit_permit_date,
|
||||
permit_sub_div_name = :permit_sub_div_name,
|
||||
permit_project_type = :permit_project_type,
|
||||
permit_county = :permit_county,
|
||||
permit_company = :permit_company,
|
||||
permit_phone = :permit_phone,
|
||||
permit_project_addr = :permit_project_addr,
|
||||
permit_city = :permit_city,
|
||||
permit_state = :permit_state,
|
||||
permit_zip = :permit_zip,
|
||||
permit_project_city = :permit_project_city,
|
||||
permit_project_state = :permit_project_state,
|
||||
permit_value = :permit_value,
|
||||
permit_lot = :permit_lot,
|
||||
permit_dist_ll = :permit_dist_ll,
|
||||
permit_owner_name = :permit_owner_name,
|
||||
permit_owner_phone = :permit_owner_phone,
|
||||
permit_owner_address = :permit_owner_address,
|
||||
permit_owner_city = :permit_owner_city,
|
||||
permit_owner_state = :permit_owner_state,
|
||||
permit_owner_zip = :permit_owner_zip,
|
||||
permit_size = :permit_size,
|
||||
permit_units = :permit_units,
|
||||
permit_building_type = :permit_building_type,
|
||||
permit_work_type = :permit_work_type,
|
||||
permit_ct1 = :permit_ct1,
|
||||
permit_ytd_permits = :permit_ytd_permits,
|
||||
permit_ytd_value = :permit_ytd_value,
|
||||
permit_12mth_prev_permits = :permit_12mth_prev_permits
|
||||
WHERE permit_serial = :permit_serial";
|
||||
|
||||
$statement = $this->connect()->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":permit_serial", $permit_serial);
|
||||
$statement->bindValue(":permit_permit_facts_id", $permit_permit_facts_id);
|
||||
$statement->bindValue(":permit_permit_number", $permit_permit_number);
|
||||
$statement->bindValue(":permit_entry_date", $permit_entry_date);
|
||||
$statement->bindValue(":permit_permit_date", $permit_permit_date);
|
||||
$statement->bindValue(":permit_sub_div_name", $permit_sub_div_name);
|
||||
$statement->bindValue(":permit_project_type", $permit_project_type);
|
||||
$statement->bindValue(":permit_county", $permit_county);
|
||||
$statement->bindValue(":permit_company", $permit_company);
|
||||
$statement->bindValue(":permit_phone", $permit_phone);
|
||||
$statement->bindValue(":permit_project_addr", $permit_project_addr);
|
||||
$statement->bindValue(":permit_city", $permit_city);
|
||||
$statement->bindValue(":permit_state", $permit_state);
|
||||
$statement->bindValue(":permit_zip", $permit_zip);
|
||||
$statement->bindValue(":permit_project_city", $permit_project_city);
|
||||
$statement->bindValue(":permit_project_state", $permit_project_state);
|
||||
$statement->bindValue(":permit_value", $permit_value);
|
||||
$statement->bindValue(":permit_lot", $permit_lot);
|
||||
$statement->bindValue(":permit_dist_ll", $permit_dist_ll);
|
||||
$statement->bindValue(":permit_owner_name", $permit_owner_name);
|
||||
$statement->bindValue(":permit_owner_phone", $permit_owner_phone);
|
||||
$statement->bindValue(":permit_owner_address", $permit_owner_address);
|
||||
$statement->bindValue(":permit_owner_city", $permit_owner_city);
|
||||
$statement->bindValue(":permit_owner_state", $permit_owner_state);
|
||||
$statement->bindValue(":permit_owner_zip", $permit_owner_zip);
|
||||
$statement->bindValue(":permit_size", $permit_size);
|
||||
$statement->bindValue(":permit_units", $permit_units);
|
||||
$statement->bindValue(":permit_building_type", $permit_building_type);
|
||||
$statement->bindValue(":permit_work_type", $permit_work_type);
|
||||
$statement->bindValue(":permit_ct1", $permit_ct1);
|
||||
$statement->bindValue(":permit_ytd_permits", $permit_ytd_permits);
|
||||
$statement->bindValue(":permit_ytd_value", $permit_ytd_value);
|
||||
$statement->bindValue(":permit_12mth_prev_permits", $permit_12mth_prev_permits);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
$this->displayHome();
|
||||
}
|
||||
}
|
||||
|
||||
// ================================
|
||||
// Return an Active Permits Object
|
||||
// ================================
|
||||
|
||||
public function getActivePermits() {
|
||||
|
||||
$SQL = "select view_permits.*
|
||||
from view_permits
|
||||
where permit_status is true";
|
||||
|
||||
return $this->getTable("permits", $SQL);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// Return an Permits Object
|
||||
// ========================
|
||||
|
||||
public function getPermit($permit_serial = 0) {
|
||||
|
||||
$SQL = "select view_permits.*
|
||||
from view_permits
|
||||
where permit_serial = {$permit_serial}";
|
||||
|
||||
return $this->getTable("permits", $SQL);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// Return a Permits Object
|
||||
// ========================
|
||||
|
||||
public function getPermits() {
|
||||
|
||||
$SQL = "select view_permits.*
|
||||
from view_permits";
|
||||
|
||||
return $this->getTable("permits", $SQL);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// Return a Permits Page Object
|
||||
// ========================
|
||||
|
||||
public function getPermitsPage() {
|
||||
|
||||
// Find Criteria
|
||||
|
||||
$find_permit = filter_input(INPUT_POST, "find_permit") ?: "";
|
||||
$find_permit = $this->sanitizeString($find_permit);
|
||||
|
||||
$this->pagination_size = filter_input(INPUT_POST, "permits_per_page", FILTER_SANITIZE_NUMBER_INT) ?: $this->pagination_size;
|
||||
|
||||
$permits_order_by = filter_input(INPUT_POST, "permits_order_by") ?: "";
|
||||
$permits_order_direction = filter_input(INPUT_POST, "permits_order_direction") ?: "";
|
||||
|
||||
if ($permits_order_by === "") {
|
||||
$orderby = "permit_permit_number desc";
|
||||
} else {
|
||||
$orderby = $permits_order_by . " " . $permits_order_direction;
|
||||
}
|
||||
|
||||
// Record Count
|
||||
|
||||
$connection = $this->connect();
|
||||
|
||||
$SQL = "select count(*) as count
|
||||
from view_permits
|
||||
where permit_permit_number regexp :permit_permit_number
|
||||
or permit_entry_date_verbose regexp :permit_entry_date_verbose
|
||||
or permit_permit_date_verbose regexp :permit_permit_date_verbose
|
||||
or permit_sub_div_name regexp :permit_sub_div_name
|
||||
or permit_project_type regexp :permit_project_type";
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":permit_permit_number", $find_permit);
|
||||
$statement->bindValue(":permit_entry_date_verbose", $find_permit);
|
||||
$statement->bindValue(":permit_permit_date_verbose", $find_permit);
|
||||
$statement->bindValue(":permit_sub_div_name", $find_permit);
|
||||
$statement->bindValue(":permit_project_type", $find_permit);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
$recordset = $statement->fetch(PDO::FETCH_ASSOC);
|
||||
|
||||
$count = (count($recordset) > 0) ? (integer) $recordset["count"] : (integer) 0;
|
||||
|
||||
// Pagination
|
||||
|
||||
$pagination = filter_input(INPUT_POST, "pagination") ?: "";
|
||||
|
||||
switch ($pagination) {
|
||||
|
||||
case "first" : $this->pagination_page = 1;
|
||||
break;
|
||||
case "previous" : $this->pagination_page = max(($this->pagination_page - 1), 1);
|
||||
break;
|
||||
case "next" : $this->pagination_page = ($this->pagination_page + 1);
|
||||
break;
|
||||
case "last" : $this->pagination_page = ($count / $this->pagination_size);
|
||||
break;
|
||||
}
|
||||
|
||||
$offset = (($this->pagination_page * $this->pagination_size) - $this->pagination_size);
|
||||
$start = ($offset + 1);
|
||||
$end = min($count, (($start + $this->pagination_size) - 1));
|
||||
|
||||
// Data
|
||||
|
||||
$SQL = "select view_permits.*
|
||||
from view_permits
|
||||
where permit_permit_number regexp :permit_permit_number
|
||||
or permit_entry_date_verbose regexp :permit_entry_date_verbose
|
||||
or permit_permit_date_verbose regexp :permit_permit_date_verbose
|
||||
or permit_sub_div_name regexp :permit_sub_div_name
|
||||
or permit_project_type regexp :permit_project_type
|
||||
order by {$orderby}
|
||||
limit {$this->pagination_size}
|
||||
offset {$offset}";
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":permit_permit_number", $find_permit);
|
||||
$statement->bindValue(":permit_entry_date_verbose", $find_permit);
|
||||
$statement->bindValue(":permit_permit_date_verbose", $find_permit);
|
||||
$statement->bindValue(":permit_sub_div_name", $find_permit);
|
||||
$statement->bindValue(":permit_project_type", $find_permit);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
$permits = $this->getTableXML("permits", $statement);
|
||||
|
||||
// Insert Pagination Attributes
|
||||
|
||||
$permits->addAttribute("count", $count);
|
||||
$permits->addAttribute("start", $start);
|
||||
$permits->addAttribute("end", $end);
|
||||
$permits->addAttribute("page", $this->pagination_page);
|
||||
|
||||
$_SESSION[self::PAGINATION_PAGE] = $this->pagination_page;
|
||||
|
||||
return $permits;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
+104
-117
@@ -57,13 +57,16 @@ class PermitsByBuilder extends Base {
|
||||
|
||||
// Populate Entry Dates with what was searched for if provided or users entry dates if no entry dates were provided
|
||||
|
||||
$searchhistory->record->searchhistory_parameters->rdi_entry_start_date = $permits->record->rdi_entry_start_date;
|
||||
$searchhistory->record->searchhistory_parameters->rdi_entry_end_date = $permits->record->rdi_entry_end_date;
|
||||
$searchhistory->record->searchhistory_parameters->permit_entry_start_date = $permits->record->permit_entry_start_date;
|
||||
$searchhistory->record->searchhistory_parameters->permit_entry_end_date = $permits->record->permit_entry_end_date;
|
||||
|
||||
$XML = $this->mergeXML($permits, "<XML/>");
|
||||
$XML = $this->mergeXML($subscription, $XML);
|
||||
$XML = $this->mergeXML($popovers, $XML);
|
||||
|
||||
// echo $XML;
|
||||
// die();
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("searchPermitsByBuilder"));
|
||||
$this->displayContent($content);
|
||||
}
|
||||
@@ -75,78 +78,77 @@ class PermitsByBuilder extends Base {
|
||||
public function getPermits($permit_area, $projecttype) {
|
||||
|
||||
// Sanitize inputs
|
||||
$rdi_company = filter_input(INPUT_POST, "rdi_company") ?: "";
|
||||
$rdi_and_or = filter_input(INPUT_POST, "rdi_and_or") ?: "OR";
|
||||
$rdi_entry_start_date = filter_input(INPUT_POST, "rdi_entry_start_date") ?: "";
|
||||
$rdi_entry_end_date = filter_input(INPUT_POST, "rdi_entry_end_date") ?: "";
|
||||
$rdi_permit_start_date = filter_input(INPUT_POST, "rdi_permit_start_date") ?: "";
|
||||
$rdi_permit_end_date = filter_input(INPUT_POST, "rdi_permit_end_date") ?: "";
|
||||
$permit_company = filter_input(INPUT_POST, "permit_company") ?: "";
|
||||
$permit_and_or = filter_input(INPUT_POST, "permit_and_or") ?: "OR";
|
||||
$permit_entry_start_date = filter_input(INPUT_POST, "permit_entry_start_date") ?: "";
|
||||
$permit_entry_end_date = filter_input(INPUT_POST, "permit_entry_end_date") ?: "";
|
||||
$permit_permit_start_date = filter_input(INPUT_POST, "permit_permit_start_date") ?: "";
|
||||
$permit_permit_end_date = filter_input(INPUT_POST, "permit_permit_end_date") ?: "";
|
||||
$pagination = filter_input(INPUT_POST, "pagination") ?: "";
|
||||
|
||||
$rdi_entry_start_date = ($rdi_entry_start_date == "") ? null : date("Y-m-d", strtotime($rdi_entry_start_date));
|
||||
$rdi_entry_end_date = ($rdi_entry_end_date == "") ? null : date("Y-m-d", strtotime($rdi_entry_end_date));
|
||||
$rdi_permit_start_date = ($rdi_permit_start_date == "") ? null : date("Y-m-d", strtotime($rdi_permit_start_date));
|
||||
$rdi_permit_end_date = ($rdi_permit_end_date == "") ? null : date("Y-m-d", strtotime($rdi_permit_end_date));
|
||||
$permit_entry_start_date = ($permit_entry_start_date == "") ? null : date("Y-m-d", strtotime($permit_entry_start_date));
|
||||
$permit_entry_end_date = ($permit_entry_end_date == "") ? null : date("Y-m-d", strtotime($permit_entry_end_date));
|
||||
$permit_permit_start_date = ($permit_permit_start_date == "") ? null : date("Y-m-d", strtotime($permit_permit_start_date));
|
||||
$permit_permit_end_date = ($permit_permit_end_date == "") ? null : date("Y-m-d", strtotime($permit_permit_end_date));
|
||||
|
||||
// Validate AND/OR
|
||||
if (!in_array(strtoupper($rdi_and_or), ["AND", "OR"])) {
|
||||
$rdi_and_or = "OR";
|
||||
if (!in_array(strtoupper($permit_and_or), ["AND", "OR"])) {
|
||||
$permit_and_or = "OR";
|
||||
}
|
||||
|
||||
// Pagination settings
|
||||
$this->pagination_size = filter_input(INPUT_POST, "rdis_per_page", FILTER_SANITIZE_NUMBER_INT) ?: $this->pagination_size;
|
||||
$rdis_order_by = filter_input(INPUT_POST, "rdis_order_by") ?: "rdi_permit_number";
|
||||
$rdis_order_direction = strtoupper(filter_input(INPUT_POST, "rdis_order_direction") ?: "DESC");
|
||||
$this->pagination_size = filter_input(INPUT_POST, "permits_per_page", FILTER_SANITIZE_NUMBER_INT) ?: $this->pagination_size;
|
||||
$permits_order_by = filter_input(INPUT_POST, "permits_order_by") ?: "permit_company";
|
||||
$permits_order_direction = strtoupper(filter_input(INPUT_POST, "permits_order_direction") ?: "ASC");
|
||||
|
||||
// Ensure valid order by column
|
||||
$allowed_order_columns = ["rdi_permit_number", "rdi_entry_date", "rdi_permit_date", "rdi_company", "rdi_permit_count"];
|
||||
if (!in_array($rdis_order_by, $allowed_order_columns)) {
|
||||
$rdis_order_by = "rdi_permit_number";
|
||||
$allowed_order_columns = ["permit_permit_number", "permit_entry_date", "permit_permit_date", "permit_company", "permit_permit_count"];
|
||||
if (!in_array($permits_order_by, $allowed_order_columns)) {
|
||||
$permits_order_by = "order by view_permits.permit_company";
|
||||
}
|
||||
|
||||
// Connect to DB
|
||||
$connection = $this->connect();
|
||||
|
||||
// === count QUERY ===
|
||||
$SQL = "select count(distinct rdi_company, rdi_address, rdi_city, rdi_state, rdi_zip, rdi_phone_verbose,
|
||||
rdi_ytd_permits, rdi_ytd_value, rdi_12mth_prev_permits) as totalcount
|
||||
from view_rdis r
|
||||
join counties c on r.rdi_county = c.county_serial
|
||||
where r.rdi_project_type = :rdi_project_type";
|
||||
$SQL = "select count(distinct permit_company) as totalcount
|
||||
from view_permits r
|
||||
join counties c on r.permit_county = c.county_serial
|
||||
where r.permit_project_type = :permit_project_type";
|
||||
|
||||
if ($permit_area != "All") {
|
||||
$SQL .= " and c.county_area = :permit_area";
|
||||
}
|
||||
|
||||
if (!empty($rdi_company)) {
|
||||
$SQL .= " and r.rdi_company REGEXP :rdi_company";
|
||||
if (!empty($permit_company)) {
|
||||
$SQL .= " and r.permit_company REGEXP :permit_company";
|
||||
}
|
||||
|
||||
if (!empty($rdi_entry_start_date)) {
|
||||
$SQL .= " $rdi_and_or (r.rdi_entry_date between :rdi_entry_start_date and :rdi_entry_end_date)";
|
||||
if (!empty($permit_entry_start_date)) {
|
||||
$SQL .= " $permit_and_or (r.permit_entry_date between :permit_entry_start_date and :permit_entry_end_date)";
|
||||
}
|
||||
|
||||
if (!empty($rdi_permit_start_date)) {
|
||||
$SQL .= " $rdi_and_or (r.rdi_permit_date between :rdi_permit_start_date and :rdi_permit_end_date)";
|
||||
if (!empty($permit_permit_start_date)) {
|
||||
$SQL .= " $permit_and_or (r.permit_permit_date between :permit_permit_start_date and :permit_permit_end_date)";
|
||||
}
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_project_type", $projecttype, PDO::PARAM_STR);
|
||||
$statement->bindValue(":permit_project_type", $projecttype, PDO::PARAM_STR);
|
||||
|
||||
if ($permit_area != "All") {
|
||||
$statement->bindValue(":permit_area", $permit_area, PDO::PARAM_STR);
|
||||
}
|
||||
if (!empty($rdi_company)) {
|
||||
$statement->bindValue(":rdi_company", $rdi_company, PDO::PARAM_STR);
|
||||
if (!empty($permit_company)) {
|
||||
$statement->bindValue(":permit_company", $permit_company, PDO::PARAM_STR);
|
||||
}
|
||||
if (!empty($rdi_entry_start_date)) {
|
||||
$statement->bindValue(":rdi_entry_start_date", $rdi_entry_start_date);
|
||||
$statement->bindValue(":rdi_entry_end_date", $rdi_entry_end_date);
|
||||
if (!empty($permit_entry_start_date)) {
|
||||
$statement->bindValue(":permit_entry_start_date", $permit_entry_start_date);
|
||||
$statement->bindValue(":permit_entry_end_date", $permit_entry_end_date);
|
||||
}
|
||||
if (!empty($rdi_permit_start_date)) {
|
||||
$statement->bindValue(":rdi_permit_start_date", $rdi_permit_start_date);
|
||||
$statement->bindValue(":rdi_permit_end_date", $rdi_permit_end_date);
|
||||
if (!empty($permit_permit_start_date)) {
|
||||
$statement->bindValue(":permit_permit_start_date", $permit_permit_start_date);
|
||||
$statement->bindValue(":permit_permit_end_date", $permit_permit_end_date);
|
||||
}
|
||||
|
||||
$statement->execute();
|
||||
@@ -172,60 +174,48 @@ class PermitsByBuilder extends Base {
|
||||
$end = min($count, $start + $this->pagination_size - 1);
|
||||
|
||||
// === DATA QUERY ===
|
||||
$SQL = "select r.rdi_serial, r.rdi_company, r.rdi_address, r.rdi_city, r.rdi_state, r.rdi_zip, r.rdi_phone_verbose,
|
||||
r.rdi_ytd_permits, r.rdi_ytd_value, r.rdi_12mth_prev_permits,
|
||||
count(*) as rdi_permit_count, SUM(r.rdi_value) as rdi_value_verbose,
|
||||
case
|
||||
when rdi_12mth_prev_permits is null or rdi_12mth_prev_permits = 0 then ''
|
||||
|
||||
/* your 75% rule: current is < 75% of last year */
|
||||
when (r.rdi_ytd_permits / rdi_12mth_prev_permits) < 0.75 then '='
|
||||
/* ±5% band */
|
||||
when ((r.rdi_ytd_permits - rdi_12mth_prev_permits) / rdi_12mth_prev_permits) >= 0.05 then 'up'
|
||||
when ((r.rdi_ytd_permits - rdi_12mth_prev_permits) / rdi_12mth_prev_permits) <= -0.05 then 'down'
|
||||
else '='
|
||||
end as permits_trend
|
||||
|
||||
from view_rdis r
|
||||
join counties c on r.rdi_county = c.county_serial
|
||||
where r.rdi_project_type = :rdi_project_type";
|
||||
$SQL = "select view_permits.permit_serial, view_permits.permit_company, count(*) as permit_permit_count, SUM(view_permits.permit_value) as permit_value_verbose,
|
||||
view_permits.ytd_permits, view_permits.previous_ytd_permits, view_permits.permits_trend, view_permits.previous_ytd_value, view_permits.ytd_value,
|
||||
view_permits.permit_address, view_permits.permit_city, view_permits.permit_state, view_permits.permit_zip, view_permits.permit_phone_verbose
|
||||
from view_permits
|
||||
join counties c on view_permits.permit_county = c.county_serial
|
||||
where view_permits.permit_project_type = :permit_project_type";
|
||||
|
||||
if ($permit_area != "All") {
|
||||
$SQL .= " and c.county_area = :permit_area";
|
||||
}
|
||||
if (!empty($rdi_company)) {
|
||||
$SQL .= " and r.rdi_company REGEXP :rdi_company";
|
||||
if (!empty($permit_company)) {
|
||||
$SQL .= " and view_permits.permit_company REGEXP :permit_company";
|
||||
}
|
||||
if (!empty($rdi_entry_start_date)) {
|
||||
$SQL .= " $rdi_and_or (r.rdi_entry_date between :rdi_entry_start_date and :rdi_entry_end_date)";
|
||||
if (!empty($permit_entry_start_date)) {
|
||||
$SQL .= " $permit_and_or (view_permits.permit_entry_date between :permit_entry_start_date and :permit_entry_end_date)";
|
||||
}
|
||||
if (!empty($rdi_permit_start_date)) {
|
||||
$SQL .= " $rdi_and_or (r.rdi_permit_date between :rdi_permit_start_date and :rdi_permit_end_date)";
|
||||
if (!empty($permit_permit_start_date)) {
|
||||
$SQL .= " $permit_and_or (view_permits.permit_permit_date between :permit_permit_start_date and :permit_permit_end_date)";
|
||||
}
|
||||
|
||||
$SQL .= " group by r.rdi_company, r.rdi_address, r.rdi_city, r.rdi_state, r.rdi_zip, r.rdi_phone,
|
||||
r.rdi_ytd_permits, r.rdi_ytd_value, r.rdi_12mth_prev_permits
|
||||
order by $rdis_order_by $rdis_order_direction
|
||||
$SQL .= " group by view_permits.permit_company
|
||||
order by $permits_order_by $permits_order_direction
|
||||
limit :limit
|
||||
offset :offset";
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_project_type", $projecttype, PDO::PARAM_STR);
|
||||
$statement->bindValue(":permit_project_type", $projecttype, PDO::PARAM_STR);
|
||||
|
||||
if ($permit_area != "All") {
|
||||
$statement->bindValue(":permit_area", $permit_area, PDO::PARAM_STR);
|
||||
}
|
||||
if (!empty($rdi_company)) {
|
||||
$statement->bindValue(":rdi_company", $rdi_company, PDO::PARAM_STR);
|
||||
if (!empty($permit_company)) {
|
||||
$statement->bindValue(":permit_company", $permit_company, PDO::PARAM_STR);
|
||||
}
|
||||
if (!empty($rdi_entry_start_date)) {
|
||||
$statement->bindValue(":rdi_entry_start_date", $rdi_entry_start_date);
|
||||
$statement->bindValue(":rdi_entry_end_date", $rdi_entry_end_date);
|
||||
if (!empty($permit_entry_start_date)) {
|
||||
$statement->bindValue(":permit_entry_start_date", $permit_entry_start_date);
|
||||
$statement->bindValue(":permit_entry_end_date", $permit_entry_end_date);
|
||||
}
|
||||
if (!empty($rdi_permit_start_date)) {
|
||||
$statement->bindValue(":rdi_permit_start_date", $rdi_permit_start_date);
|
||||
$statement->bindValue(":rdi_permit_end_date", $rdi_permit_end_date);
|
||||
if (!empty($permit_permit_start_date)) {
|
||||
$statement->bindValue(":permit_permit_start_date", $permit_permit_start_date);
|
||||
$statement->bindValue(":permit_permit_end_date", $permit_permit_end_date);
|
||||
}
|
||||
|
||||
$statement->bindValue(":limit", $this->pagination_size, PDO::PARAM_INT);
|
||||
@@ -233,83 +223,80 @@ class PermitsByBuilder extends Base {
|
||||
|
||||
$statement->execute();
|
||||
|
||||
$rdis = $this->getTableXML("rdis", $statement);
|
||||
$permits = $this->getTableXML("permits", $statement);
|
||||
|
||||
// Insert Pagination Attributes
|
||||
$rdis->addAttribute("count", $count);
|
||||
$rdis->addAttribute("start", $start);
|
||||
$rdis->addAttribute("end", $end);
|
||||
$rdis->addAttribute("page", $this->pagination_page);
|
||||
$permits->addAttribute("count", $count);
|
||||
$permits->addAttribute("start", $start);
|
||||
$permits->addAttribute("end", $end);
|
||||
$permits->addAttribute("page", $this->pagination_page);
|
||||
|
||||
$_SESSION[self::PAGINATION_PAGE] = $this->pagination_page;
|
||||
|
||||
return $rdis;
|
||||
return $permits;
|
||||
}
|
||||
|
||||
// =============================
|
||||
// Fetch All Permits for Exports
|
||||
// =============================
|
||||
|
||||
public function getAllPermitsByBuilder($permit_area, $projecttype) {
|
||||
public function getAllPermits($permit_area, $projecttype) {
|
||||
|
||||
// Connect to DB
|
||||
$connection = $this->connect();
|
||||
|
||||
// === count QUERY ===
|
||||
$SQL = "SELECT count(DISTINCT rdi_company, rdi_address, rdi_city, rdi_state, rdi_zip, rdi_phone_verbose,
|
||||
rdi_ytd_permits, rdi_ytd_value, rdi_12mth_prev_permits) AS count
|
||||
FROM view_rdis r
|
||||
JOIN counties c on r.rdi_county = c.county_serial
|
||||
WHERE r.rdi_project_type = :rdi_project_type";
|
||||
$SQL = "select count(distinct permit_company) as totalcount
|
||||
from view_permits r
|
||||
join counties c on r.permit_county = c.county_serial
|
||||
where r.permit_project_type = :permit_project_type";
|
||||
|
||||
if ($permit_area !== "All") {
|
||||
if ($permit_area != "All") {
|
||||
$SQL .= " and c.county_area = :permit_area";
|
||||
}
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_project_type", $projecttype, PDO::PARAM_STR);
|
||||
$statement->bindValue(":permit_project_type", $projecttype, PDO::PARAM_STR);
|
||||
|
||||
if ($permit_area !== "All") {
|
||||
if ($permit_area != "All") {
|
||||
$statement->bindValue(":permit_area", $permit_area, PDO::PARAM_STR);
|
||||
}
|
||||
|
||||
$statement->execute();
|
||||
|
||||
|
||||
$recordset = $statement->fetch(PDO::FETCH_ASSOC);
|
||||
$count = $recordset ? (int) $recordset["count"] : 0;
|
||||
$count = $recordset ? (int) $recordset["totalcount"] : 0;
|
||||
|
||||
// === DATA QUERY ===
|
||||
$SQL = "SELECT r.rdi_company, r.rdi_address, r.rdi_city, r.rdi_state, r.rdi_zip, r.rdi_phone_verbose,
|
||||
r.rdi_ytd_permits, r.rdi_ytd_value, r.rdi_12mth_prev_permits,
|
||||
count(*) AS rdi_permit_count, SUM(r.rdi_value) AS rdi_value
|
||||
FROM view_rdis r
|
||||
JOIN counties c on r.rdi_county = c.county_serial
|
||||
WHERE r.rdi_project_type = :rdi_project_type";
|
||||
$SQL = "select view_permits.permit_serial, view_permits.permit_company, count(*) as permit_permit_count, SUM(view_permits.permit_value) as permit_value_verbose,
|
||||
view_permits.ytd_permits, view_permits.previous_ytd_permits, view_permits.permits_trend, view_permits.previous_ytd_value, view_permits.ytd_value,
|
||||
view_permits.permit_address, view_permits.permit_city, view_permits.permit_state, view_permits.permit_zip, view_permits.permit_phone_verbose
|
||||
from view_permits
|
||||
join counties c on view_permits.permit_county = c.county_serial
|
||||
where view_permits.permit_project_type = :permit_project_type";
|
||||
|
||||
if ($permit_area !== "All") {
|
||||
if ($permit_area != "All") {
|
||||
$SQL .= " and c.county_area = :permit_area";
|
||||
}
|
||||
|
||||
$SQL .= " group by r.rdi_company, r.rdi_address, r.rdi_city, r.rdi_state, r.rdi_zip, r.rdi_phone,
|
||||
r.rdi_ytd_permits, r.rdi_ytd_value, r.rdi_12mth_prev_permits";
|
||||
$SQL .= " group by view_permits.permit_company order by view_permits.permit_company";
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_project_type", $projecttype, PDO::PARAM_STR);
|
||||
$statement->bindValue(":permit_project_type", $projecttype, PDO::PARAM_STR);
|
||||
|
||||
if ($permit_area !== "All") {
|
||||
if ($permit_area != "All") {
|
||||
$statement->bindValue(":permit_area", $permit_area, PDO::PARAM_STR);
|
||||
}
|
||||
|
||||
$statement->execute();
|
||||
|
||||
$rdis = $this->getTableXML("rdis", $statement);
|
||||
$permits = $this->getTableXML("permits", $statement);
|
||||
|
||||
// Insert Pagination Attributes
|
||||
$rdis->addAttribute("count", $count);
|
||||
$permits->addAttribute("count", $count);
|
||||
|
||||
return $rdis;
|
||||
return $permits;
|
||||
}
|
||||
|
||||
// ======================
|
||||
@@ -318,20 +305,20 @@ class PermitsByBuilder extends Base {
|
||||
|
||||
public function getSelectedPermits($permit_area, $projecttype, $permit_serial = 0) {
|
||||
|
||||
$SQL = "SELECT r.rdi_company, r.rdi_address, r.rdi_city, r.rdi_state, r.rdi_zip, r.rdi_phone_verbose,
|
||||
r.rdi_ytd_permits, r.rdi_ytd_value, r.rdi_12mth_prev_permits,
|
||||
count(*) AS rdi_permit_count, SUM(r.rdi_value) AS rdi_value
|
||||
FROM view_rdis r
|
||||
JOIN counties c on r.rdi_county = c.county_serial
|
||||
WHERE r.rdi_project_type = '{$projecttype}' ";
|
||||
$SQL = "select view_permits.permit_serial, view_permits.permit_company, count(*) as permit_permit_count, SUM(view_permits.permit_value) as permit_value_verbose,
|
||||
view_permits.ytd_permits, view_permits.previous_ytd_permits, view_permits.permits_trend, view_permits.previous_ytd_value, view_permits.ytd_value,
|
||||
view_permits.permit_address, view_permits.permit_city, view_permits.permit_state, view_permits.permit_zip, view_permits.permit_phone_verbose
|
||||
from view_permits
|
||||
join counties c on view_permits.permit_county = c.county_serial
|
||||
where view_permits.permit_project_type = '{$projecttype}' ";
|
||||
|
||||
if ($permit_area !== "All") {
|
||||
if ($permit_area != "All") {
|
||||
$SQL .= " and c.county_area = '$permit_area'";
|
||||
}
|
||||
|
||||
$SQL .= " and rdi_serial in ({$permit_serial}) ";
|
||||
$SQL .= " group by r.rdi_company, r.rdi_address, r.rdi_city, r.rdi_state, r.rdi_zip, r.rdi_phone,
|
||||
r.rdi_ytd_permits, r.rdi_ytd_value, r.rdi_12mth_prev_permits";
|
||||
$SQL .= " and permit_serial in ({$permit_serial}) ";
|
||||
|
||||
$SQL .= " group by view_permits.permit_company order by view_permits.permit_company";
|
||||
|
||||
return $this->getTable("permits", $SQL);
|
||||
}
|
||||
|
||||
-549
@@ -1,549 +0,0 @@
|
||||
<?php
|
||||
|
||||
class RDI extends Base {
|
||||
|
||||
// Variables.
|
||||
|
||||
private $current_user_serial = 0;
|
||||
private $current_user_id = "";
|
||||
private $current_user_name = "";
|
||||
private $current_user_email = "";
|
||||
private $pagination_size = 20;
|
||||
private $pagination_page = 1;
|
||||
|
||||
// =================
|
||||
// Class Constructor
|
||||
// =================
|
||||
|
||||
public function __construct() {
|
||||
|
||||
set_error_handler(array($this, "displayError"));
|
||||
|
||||
date_default_timezone_set(self::TIMEZONE);
|
||||
|
||||
$this->current_user_serial = $_SESSION[self::USER_SERIAL] ?? 0;
|
||||
$this->current_user_id = $_SESSION[self::USER_ID] ?? "";
|
||||
$this->current_user_name = $_SESSION[self::USER_NAME] ?? "";
|
||||
$this->current_user_email = $_SESSION[self::USER_EMAIL] ?? "";
|
||||
|
||||
$this->pagination_page = $_SESSION[self::PAGINATION_PAGE] ?? 1;
|
||||
}
|
||||
|
||||
// ==========
|
||||
// Manage RDI
|
||||
// ==========
|
||||
|
||||
public function manageRDI() {
|
||||
|
||||
$rdi = $this->getRDIPage();
|
||||
$popovers = (new Popovers())->getPopovers();
|
||||
|
||||
$XML = $this->mergeXML($rdi, "<XML/>");
|
||||
$XML = $this->mergeXML($popovers, $XML);
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("manageRDI"));
|
||||
|
||||
$this->displayContent($content);
|
||||
}
|
||||
|
||||
// =======
|
||||
// Add RDI
|
||||
// =======
|
||||
|
||||
public function addRDI() {
|
||||
|
||||
$step = filter_input(INPUT_POST, "step") ?: "prompt";
|
||||
|
||||
switch ($step) {
|
||||
|
||||
case "prompt":
|
||||
|
||||
$constants = $this->getConstants();
|
||||
$counties = (new Counties())->getCounties();
|
||||
|
||||
$XML = $this->mergeXML($constants, "<XML/>");
|
||||
$XML = $this->mergeXML($counties, $XML);
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("addRDI"));
|
||||
|
||||
$this->displayContent($content);
|
||||
|
||||
break;
|
||||
|
||||
case "add":
|
||||
|
||||
$rdi_permit_facts_id = filter_input(INPUT_POST, "rdi_permit_facts_id", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_permit_number = filter_input(INPUT_POST, "rdi_permit_number") ?: '';
|
||||
$rdi_entry_date = filter_input(INPUT_POST, "rdi_entry_date") ?: '';
|
||||
$rdi_permit_date = filter_input(INPUT_POST, "rdi_permit_date") ?: '';
|
||||
$rdi_sub_div_name = filter_input(INPUT_POST, "rdi_sub_div_name") ?: '';
|
||||
$rdi_project_type = filter_input(INPUT_POST, "rdi_project_type") ?: '';
|
||||
$rdi_county = filter_input(INPUT_POST, "rdi_county") ?: '';
|
||||
$rdi_company = filter_input(INPUT_POST, "rdi_company") ?: '';
|
||||
$rdi_phone = filter_input(INPUT_POST, "rdi_phone") ?: '';
|
||||
$rdi_project_addr = filter_input(INPUT_POST, "rdi_project_addr") ?: '';
|
||||
$rdi_city = filter_input(INPUT_POST, "rdi_city") ?: '';
|
||||
$rdi_state = filter_input(INPUT_POST, "rdi_state") ?: '';
|
||||
$rdi_zip = filter_input(INPUT_POST, "rdi_zip", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_project_city = filter_input(INPUT_POST, "rdi_project_city") ?: '';
|
||||
$rdi_project_state = filter_input(INPUT_POST, "rdi_project_state") ?: '';
|
||||
$rdi_value = filter_input(INPUT_POST, "rdi_value", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_lot = filter_input(INPUT_POST, "rdi_lot", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_dist_ll = filter_input(INPUT_POST, "rdi_dist_ll", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_owner_name = filter_input(INPUT_POST, "rdi_owner_name") ?: '';
|
||||
$rdi_owner_phone = filter_input(INPUT_POST, "rdi_owner_phone", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$rdi_owner_address = filter_input(INPUT_POST, "rdi_owner_address") ?: '';
|
||||
$rdi_owner_city = filter_input(INPUT_POST, "rdi_owner_city") ?: '';
|
||||
$rdi_owner_state = filter_input(INPUT_POST, "rdi_owner_state") ?: '';
|
||||
$rdi_owner_zip = filter_input(INPUT_POST, "rdi_owner_zip", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$rdi_size = filter_input(INPUT_POST, "rdi_size", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_units = filter_input(INPUT_POST, "rdi_units", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_building_type = filter_input(INPUT_POST, "rdi_building_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_work_type = filter_input(INPUT_POST, "rdi_work_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_ct1 = filter_input(INPUT_POST, "rdi_ct1", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_ytd_permits = filter_input(INPUT_POST, "rdi_ytd_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_ytd_value = filter_input(INPUT_POST, "rdi_ytd_value") ?: 0;
|
||||
$rdi_12mth_prev_permits = filter_input(INPUT_POST, "rdi_12mth_prev_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$rdi_entry_date = date("Y-m-d", strtotime($rdi_entry_date));
|
||||
$rdi_permit_date = date("Y-m-d", strtotime($rdi_permit_date));
|
||||
$rdi_value = str_replace(",", "", $rdi_value);
|
||||
|
||||
$SQL = "INSERT INTO rdis (
|
||||
rdi_permit_facts_id,
|
||||
rdi_permit_number,
|
||||
rdi_entry_date,
|
||||
rdi_permit_date,
|
||||
rdi_sub_div_name,
|
||||
rdi_project_type,
|
||||
rdi_county,
|
||||
rdi_company,
|
||||
rdi_phone,
|
||||
rdi_project_addr,
|
||||
rdi_city,
|
||||
rdi_state,
|
||||
rdi_zip,
|
||||
rdi_project_city,
|
||||
rdi_project_state,
|
||||
rdi_value,
|
||||
rdi_lot,
|
||||
rdi_dist_ll,
|
||||
rdi_owner_name,
|
||||
rdi_owner_phone,
|
||||
rdi_owner_address,
|
||||
rdi_owner_city,
|
||||
rdi_owner_state,
|
||||
rdi_owner_zip,
|
||||
rdi_size,
|
||||
rdi_units,
|
||||
rdi_building_type,
|
||||
rdi_work_type,
|
||||
rdi_ct1,
|
||||
rdi_ytd_permits,
|
||||
rdi_ytd_value,
|
||||
rdi_12mth_prev_permits
|
||||
) VALUES (
|
||||
:rdi_permit_facts_id,
|
||||
:rdi_permit_number,
|
||||
:rdi_entry_date,
|
||||
:rdi_permit_date,
|
||||
:rdi_sub_div_name,
|
||||
:rdi_project_type,
|
||||
:rdi_county,
|
||||
:rdi_company,
|
||||
:rdi_phone,
|
||||
:rdi_project_addr,
|
||||
:rdi_city,
|
||||
:rdi_state,
|
||||
:rdi_zip,
|
||||
:rdi_project_city,
|
||||
:rdi_project_state,
|
||||
:rdi_value,
|
||||
:rdi_lot,
|
||||
:rdi_dist_ll,
|
||||
:rdi_owner_name,
|
||||
:rdi_owner_phone,
|
||||
:rdi_owner_address,
|
||||
:rdi_owner_city,
|
||||
:rdi_owner_state,
|
||||
:rdi_owner_zip,
|
||||
:rdi_size,
|
||||
:rdi_units,
|
||||
:rdi_building_type,
|
||||
:rdi_work_type,
|
||||
:rdi_ct1,
|
||||
:rdi_ytd_permits,
|
||||
:rdi_ytd_value,
|
||||
:rdi_12mth_prev_permits
|
||||
)";
|
||||
|
||||
$statement = $this->connect()->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_permit_facts_id", $rdi_permit_facts_id);
|
||||
$statement->bindValue(":rdi_permit_number", $rdi_permit_number);
|
||||
$statement->bindValue(":rdi_entry_date", $rdi_entry_date);
|
||||
$statement->bindValue(":rdi_permit_date", $rdi_permit_date);
|
||||
$statement->bindValue(":rdi_sub_div_name", $rdi_sub_div_name);
|
||||
$statement->bindValue(":rdi_project_type", $rdi_project_type);
|
||||
$statement->bindValue(":rdi_county", $rdi_county);
|
||||
$statement->bindValue(":rdi_company", $rdi_company);
|
||||
$statement->bindValue(":rdi_phone", $rdi_phone);
|
||||
$statement->bindValue(":rdi_project_addr", $rdi_project_addr);
|
||||
$statement->bindValue(":rdi_city", $rdi_city);
|
||||
$statement->bindValue(":rdi_state", $rdi_state);
|
||||
$statement->bindValue(":rdi_zip", $rdi_zip);
|
||||
$statement->bindValue(":rdi_project_city", $rdi_project_city);
|
||||
$statement->bindValue(":rdi_project_state", $rdi_project_state);
|
||||
$statement->bindValue(":rdi_value", $rdi_value);
|
||||
$statement->bindValue(":rdi_lot", $rdi_lot);
|
||||
$statement->bindValue(":rdi_dist_ll", $rdi_dist_ll);
|
||||
$statement->bindValue(":rdi_owner_name", $rdi_owner_name);
|
||||
$statement->bindValue(":rdi_owner_phone", $rdi_owner_phone);
|
||||
$statement->bindValue(":rdi_owner_address", $rdi_owner_address);
|
||||
$statement->bindValue(":rdi_owner_city", $rdi_owner_city);
|
||||
$statement->bindValue(":rdi_owner_state", $rdi_owner_state);
|
||||
$statement->bindValue(":rdi_owner_zip", $rdi_owner_zip);
|
||||
$statement->bindValue(":rdi_size", $rdi_size);
|
||||
$statement->bindValue(":rdi_units", $rdi_units);
|
||||
$statement->bindValue(":rdi_building_type", $rdi_building_type);
|
||||
$statement->bindValue(":rdi_work_type", $rdi_work_type);
|
||||
$statement->bindValue(":rdi_ct1", $rdi_ct1);
|
||||
$statement->bindValue(":rdi_ytd_permits", $rdi_ytd_permits);
|
||||
$statement->bindValue(":rdi_ytd_value", $rdi_ytd_value);
|
||||
$statement->bindValue(":rdi_12mth_prev_permits", $rdi_12mth_prev_permits);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
$this->displayHome();
|
||||
}
|
||||
}
|
||||
|
||||
// ==========
|
||||
// Delete RDI
|
||||
// ==========
|
||||
|
||||
public function deleteRDI() {
|
||||
|
||||
$rdi_serial = filter_input(INPUT_POST, "rdi_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$rdi = $this->getRDI($rdi_serial);
|
||||
|
||||
if ($rdi->count() == 0) {
|
||||
$this->logError("Invalid RDI ({$rdi_serial}). " . __METHOD__);
|
||||
}
|
||||
|
||||
$SQL = "delete from rdis
|
||||
where rdi_serial = {$rdi_serial}";
|
||||
|
||||
$this->executeSQL($SQL);
|
||||
}
|
||||
|
||||
// ==========
|
||||
// Edit a RDI
|
||||
// ==========
|
||||
|
||||
public function editRDI() {
|
||||
|
||||
$step = filter_input(INPUT_POST, "step") ?: "prompt";
|
||||
|
||||
switch ($step) {
|
||||
|
||||
case "prompt":
|
||||
|
||||
$rdi_serial = filter_input(INPUT_POST, "rdi_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$rdi = $this->getRDI($rdi_serial);
|
||||
|
||||
if ($rdi->count() == 0) {
|
||||
$this->logError("Invalid RDI ({$rdi_serial}). " . __METHOD__);
|
||||
}
|
||||
|
||||
$constants = $this->getConstants();
|
||||
$counties = (new Counties())->getCounties();
|
||||
|
||||
$XML = $this->mergeXML($rdi, "<XML/>");
|
||||
$XML = $this->mergeXML($constants, $XML);
|
||||
$XML = $this->mergeXML($counties, $XML);
|
||||
|
||||
$content = $this->applyXSL($XML, $this->getXSL("editRDI"));
|
||||
$this->displayContent($content);
|
||||
|
||||
break;
|
||||
|
||||
case "update":
|
||||
|
||||
$rdi_serial = filter_input(INPUT_POST, "rdi_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_permit_facts_id = filter_input(INPUT_POST, "rdi_permit_facts_id", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_permit_number = filter_input(INPUT_POST, "rdi_permit_number") ?: '';
|
||||
$rdi_entry_date = filter_input(INPUT_POST, "rdi_entry_date") ?: '';
|
||||
$rdi_permit_date = filter_input(INPUT_POST, "rdi_permit_date") ?: '';
|
||||
$rdi_sub_div_name = filter_input(INPUT_POST, "rdi_sub_div_name") ?: '';
|
||||
$rdi_project_type = filter_input(INPUT_POST, "rdi_project_type") ?: '';
|
||||
$rdi_county = filter_input(INPUT_POST, "rdi_county") ?: '';
|
||||
$rdi_company = filter_input(INPUT_POST, "rdi_company") ?: '';
|
||||
$rdi_phone = filter_input(INPUT_POST, "rdi_phone") ?: '';
|
||||
$rdi_project_addr = filter_input(INPUT_POST, "rdi_project_addr") ?: '';
|
||||
$rdi_city = filter_input(INPUT_POST, "rdi_city") ?: '';
|
||||
$rdi_state = filter_input(INPUT_POST, "rdi_state") ?: '';
|
||||
$rdi_zip = filter_input(INPUT_POST, "rdi_zip", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_project_city = filter_input(INPUT_POST, "rdi_project_city") ?: '';
|
||||
$rdi_project_state = filter_input(INPUT_POST, "rdi_project_state") ?: '';
|
||||
$rdi_value = filter_input(INPUT_POST, "rdi_value", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_lot = filter_input(INPUT_POST, "rdi_lot", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_dist_ll = filter_input(INPUT_POST, "rdi_dist_ll", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_owner_name = filter_input(INPUT_POST, "rdi_owner_name") ?: '';
|
||||
$rdi_owner_phone = filter_input(INPUT_POST, "rdi_owner_phone", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$rdi_owner_address = filter_input(INPUT_POST, "rdi_owner_address") ?: '';
|
||||
$rdi_owner_city = filter_input(INPUT_POST, "rdi_owner_city") ?: '';
|
||||
$rdi_owner_state = filter_input(INPUT_POST, "rdi_owner_state") ?: '';
|
||||
$rdi_owner_zip = filter_input(INPUT_POST, "rdi_owner_zip", FILTER_SANITIZE_NUMBER_INT) ?: '';
|
||||
$rdi_size = filter_input(INPUT_POST, "rdi_size", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_units = filter_input(INPUT_POST, "rdi_units", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_building_type = filter_input(INPUT_POST, "rdi_building_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_work_type = filter_input(INPUT_POST, "rdi_work_type", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_ct1 = filter_input(INPUT_POST, "rdi_ct1", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_ytd_permits = filter_input(INPUT_POST, "rdi_ytd_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
$rdi_ytd_value = filter_input(INPUT_POST, "rdi_ytd_value") ?: 0;
|
||||
$rdi_12mth_prev_permits = filter_input(INPUT_POST, "rdi_12mth_prev_permits", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
$rdi_entry_date = date("Y-m-d", strtotime($rdi_entry_date));
|
||||
$rdi_permit_date = date("Y-m-d", strtotime($rdi_permit_date));
|
||||
$rdi_value = str_replace(",", "", $rdi_value);
|
||||
|
||||
// Verify the RDI
|
||||
$rdi = $this->getRDI($rdi_serial);
|
||||
|
||||
if ($rdi->count() == 0) {
|
||||
$this->logError("Invalid RDI ({$rdi_serial}). " . __METHOD__);
|
||||
}
|
||||
|
||||
$SQL = "UPDATE rdis
|
||||
SET rdi_permit_facts_id = :rdi_permit_facts_id,
|
||||
rdi_permit_number = :rdi_permit_number,
|
||||
rdi_entry_date = :rdi_entry_date,
|
||||
rdi_permit_date = :rdi_permit_date,
|
||||
rdi_sub_div_name = :rdi_sub_div_name,
|
||||
rdi_project_type = :rdi_project_type,
|
||||
rdi_county = :rdi_county,
|
||||
rdi_company = :rdi_company,
|
||||
rdi_phone = :rdi_phone,
|
||||
rdi_project_addr = :rdi_project_addr,
|
||||
rdi_city = :rdi_city,
|
||||
rdi_state = :rdi_state,
|
||||
rdi_zip = :rdi_zip,
|
||||
rdi_project_city = :rdi_project_city,
|
||||
rdi_project_state = :rdi_project_state,
|
||||
rdi_value = :rdi_value,
|
||||
rdi_lot = :rdi_lot,
|
||||
rdi_dist_ll = :rdi_dist_ll,
|
||||
rdi_owner_name = :rdi_owner_name,
|
||||
rdi_owner_phone = :rdi_owner_phone,
|
||||
rdi_owner_address = :rdi_owner_address,
|
||||
rdi_owner_city = :rdi_owner_city,
|
||||
rdi_owner_state = :rdi_owner_state,
|
||||
rdi_owner_zip = :rdi_owner_zip,
|
||||
rdi_size = :rdi_size,
|
||||
rdi_units = :rdi_units,
|
||||
rdi_building_type = :rdi_building_type,
|
||||
rdi_work_type = :rdi_work_type,
|
||||
rdi_ct1 = :rdi_ct1,
|
||||
rdi_ytd_permits = :rdi_ytd_permits,
|
||||
rdi_ytd_value = :rdi_ytd_value,
|
||||
rdi_12mth_prev_permits = :rdi_12mth_prev_permits
|
||||
WHERE rdi_serial = :rdi_serial";
|
||||
|
||||
$statement = $this->connect()->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_serial", $rdi_serial);
|
||||
$statement->bindValue(":rdi_permit_facts_id", $rdi_permit_facts_id);
|
||||
$statement->bindValue(":rdi_permit_number", $rdi_permit_number);
|
||||
$statement->bindValue(":rdi_entry_date", $rdi_entry_date);
|
||||
$statement->bindValue(":rdi_permit_date", $rdi_permit_date);
|
||||
$statement->bindValue(":rdi_sub_div_name", $rdi_sub_div_name);
|
||||
$statement->bindValue(":rdi_project_type", $rdi_project_type);
|
||||
$statement->bindValue(":rdi_county", $rdi_county);
|
||||
$statement->bindValue(":rdi_company", $rdi_company);
|
||||
$statement->bindValue(":rdi_phone", $rdi_phone);
|
||||
$statement->bindValue(":rdi_project_addr", $rdi_project_addr);
|
||||
$statement->bindValue(":rdi_city", $rdi_city);
|
||||
$statement->bindValue(":rdi_state", $rdi_state);
|
||||
$statement->bindValue(":rdi_zip", $rdi_zip);
|
||||
$statement->bindValue(":rdi_project_city", $rdi_project_city);
|
||||
$statement->bindValue(":rdi_project_state", $rdi_project_state);
|
||||
$statement->bindValue(":rdi_value", $rdi_value);
|
||||
$statement->bindValue(":rdi_lot", $rdi_lot);
|
||||
$statement->bindValue(":rdi_dist_ll", $rdi_dist_ll);
|
||||
$statement->bindValue(":rdi_owner_name", $rdi_owner_name);
|
||||
$statement->bindValue(":rdi_owner_phone", $rdi_owner_phone);
|
||||
$statement->bindValue(":rdi_owner_address", $rdi_owner_address);
|
||||
$statement->bindValue(":rdi_owner_city", $rdi_owner_city);
|
||||
$statement->bindValue(":rdi_owner_state", $rdi_owner_state);
|
||||
$statement->bindValue(":rdi_owner_zip", $rdi_owner_zip);
|
||||
$statement->bindValue(":rdi_size", $rdi_size);
|
||||
$statement->bindValue(":rdi_units", $rdi_units);
|
||||
$statement->bindValue(":rdi_building_type", $rdi_building_type);
|
||||
$statement->bindValue(":rdi_work_type", $rdi_work_type);
|
||||
$statement->bindValue(":rdi_ct1", $rdi_ct1);
|
||||
$statement->bindValue(":rdi_ytd_permits", $rdi_ytd_permits);
|
||||
$statement->bindValue(":rdi_ytd_value", $rdi_ytd_value);
|
||||
$statement->bindValue(":rdi_12mth_prev_permits", $rdi_12mth_prev_permits);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
$this->displayHome();
|
||||
}
|
||||
}
|
||||
|
||||
// ================================
|
||||
// Return an Active RDI Object
|
||||
// ================================
|
||||
|
||||
public function getActiveRDI() {
|
||||
|
||||
$SQL = "select view_rdis.*
|
||||
from view_rdis
|
||||
where rdi_status is true";
|
||||
|
||||
return $this->getTable("rdis", $SQL);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// Return an RDI Object
|
||||
// ========================
|
||||
|
||||
public function getRDI($rdi_serial = 0) {
|
||||
|
||||
$SQL = "select view_rdis.*
|
||||
from view_rdis
|
||||
where rdi_serial = {$rdi_serial}";
|
||||
|
||||
return $this->getTable("rdis", $SQL);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// Return a RDI Object
|
||||
// ========================
|
||||
|
||||
public function getRDIs() {
|
||||
|
||||
$SQL = "select view_rdis.*
|
||||
from view_rdis";
|
||||
|
||||
return $this->getTable("rdis", $SQL);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// Return a RDI Page Object
|
||||
// ========================
|
||||
|
||||
public function getRDIPage() {
|
||||
|
||||
// Find Criteria
|
||||
|
||||
$find_rdi = filter_input(INPUT_POST, "find_rdi") ?: "";
|
||||
$find_rdi = $this->sanitizeString($find_rdi);
|
||||
|
||||
$this->pagination_size = filter_input(INPUT_POST, "rdis_per_page", FILTER_SANITIZE_NUMBER_INT) ?: $this->pagination_size;
|
||||
|
||||
$rdis_order_by = filter_input(INPUT_POST, "rdis_order_by") ?: "";
|
||||
$rdis_order_direction = filter_input(INPUT_POST, "rdis_order_direction") ?: "";
|
||||
|
||||
if ($rdis_order_by === "") {
|
||||
$orderby = "rdi_permit_number desc";
|
||||
} else {
|
||||
$orderby = $rdis_order_by . " " . $rdis_order_direction;
|
||||
}
|
||||
|
||||
// Record Count
|
||||
|
||||
$connection = $this->connect();
|
||||
|
||||
$SQL = "select count(*) as count
|
||||
from view_rdis
|
||||
where rdi_permit_number regexp :rdi_permit_number
|
||||
or rdi_entry_date_verbose regexp :rdi_entry_date_verbose
|
||||
or rdi_permit_date_verbose regexp :rdi_permit_date_verbose
|
||||
or rdi_sub_div_name regexp :rdi_sub_div_name
|
||||
or rdi_project_type regexp :rdi_project_type";
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_permit_number", $find_rdi);
|
||||
$statement->bindValue(":rdi_entry_date_verbose", $find_rdi);
|
||||
$statement->bindValue(":rdi_permit_date_verbose", $find_rdi);
|
||||
$statement->bindValue(":rdi_sub_div_name", $find_rdi);
|
||||
$statement->bindValue(":rdi_project_type", $find_rdi);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
$recordset = $statement->fetch(PDO::FETCH_ASSOC);
|
||||
|
||||
$count = (count($recordset) > 0) ? (integer) $recordset["count"] : (integer) 0;
|
||||
|
||||
// Pagination
|
||||
|
||||
$pagination = filter_input(INPUT_POST, "pagination") ?: "";
|
||||
|
||||
switch ($pagination) {
|
||||
|
||||
case "first" : $this->pagination_page = 1;
|
||||
break;
|
||||
case "previous" : $this->pagination_page = max(($this->pagination_page - 1), 1);
|
||||
break;
|
||||
case "next" : $this->pagination_page = ($this->pagination_page + 1);
|
||||
break;
|
||||
case "last" : $this->pagination_page = ($count / $this->pagination_size);
|
||||
break;
|
||||
}
|
||||
|
||||
$offset = (($this->pagination_page * $this->pagination_size) - $this->pagination_size);
|
||||
$start = ($offset + 1);
|
||||
$end = min($count, (($start + $this->pagination_size) - 1));
|
||||
|
||||
// Data
|
||||
|
||||
$SQL = "select view_rdis.*
|
||||
from view_rdis
|
||||
where rdi_permit_number regexp :rdi_permit_number
|
||||
or rdi_entry_date_verbose regexp :rdi_entry_date_verbose
|
||||
or rdi_permit_date_verbose regexp :rdi_permit_date_verbose
|
||||
or rdi_sub_div_name regexp :rdi_sub_div_name
|
||||
or rdi_project_type regexp :rdi_project_type
|
||||
order by {$orderby}
|
||||
limit {$this->pagination_size}
|
||||
offset {$offset}";
|
||||
|
||||
$statement = $connection->prepare($SQL);
|
||||
|
||||
$statement->bindValue(":rdi_permit_number", $find_rdi);
|
||||
$statement->bindValue(":rdi_entry_date_verbose", $find_rdi);
|
||||
$statement->bindValue(":rdi_permit_date_verbose", $find_rdi);
|
||||
$statement->bindValue(":rdi_sub_div_name", $find_rdi);
|
||||
$statement->bindValue(":rdi_project_type", $find_rdi);
|
||||
|
||||
$statement->execute();
|
||||
|
||||
$rdis = $this->getTableXML("rdis", $statement);
|
||||
|
||||
// Insert Pagination Attributes
|
||||
|
||||
$rdis->addAttribute("count", $count);
|
||||
$rdis->addAttribute("start", $start);
|
||||
$rdis->addAttribute("end", $end);
|
||||
$rdis->addAttribute("page", $this->pagination_page);
|
||||
|
||||
$_SESSION[self::PAGINATION_PAGE] = $this->pagination_page;
|
||||
|
||||
return $rdis;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
+1
-1
@@ -325,6 +325,6 @@ table.table-auto tbody td:not(:last-of-type), table.table-auto tfoot td:not(:las
|
||||
font-family: bootstrap-icons;
|
||||
}
|
||||
|
||||
.manageRDI th.sortable:hover {
|
||||
th.sortable:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
// =======
|
||||
// Add RDI
|
||||
// Add Permits
|
||||
// =======
|
||||
|
||||
$(document).ready(function () {
|
||||
@@ -37,8 +37,8 @@ $(document).ready(function () {
|
||||
// Date Pickers
|
||||
// ------------
|
||||
|
||||
$("#rdi_entry_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_entry_date",
|
||||
$("#permit_entry_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_entry_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -47,8 +47,8 @@ $(document).ready(function () {
|
||||
todayBtn: "linked",
|
||||
todayHighlight: true});
|
||||
|
||||
$("#rdi_permit_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_permit_date",
|
||||
$("#permit_permit_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_permit_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -65,7 +65,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_entry_date").focus().datepicker("show");
|
||||
$("#permit_entry_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -73,7 +73,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_permit_date").focus().datepicker("show");
|
||||
$("#permit_permit_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -85,7 +85,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#addRDI").submit();
|
||||
$("#addPermit").submit();
|
||||
|
||||
});
|
||||
|
||||
@@ -95,7 +95,7 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnCancel").on("click", function () {
|
||||
|
||||
$sessionStorage.action = $sessionStorage.addRDI || "";
|
||||
$sessionStorage.action = $sessionStorage.addPermit || "";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -107,20 +107,20 @@ $(document).ready(function () {
|
||||
// Validate Inputs
|
||||
// ---------------
|
||||
|
||||
$("#addRDI").submit(function (e) {
|
||||
$("#addPermit").submit(function (e) {
|
||||
|
||||
var rdi_entry_date = $("#rdi_entry_date"), rdi_county = $("#rdi_county");
|
||||
var permit_entry_date = $("#permit_entry_date"), permit_county = $("#permit_county");
|
||||
|
||||
clearInputErrors();
|
||||
|
||||
|
||||
if (isBlank(rdi_entry_date)) {
|
||||
createInputError(rdi_entry_date, "Entry Date is required");
|
||||
if (isBlank(permit_entry_date)) {
|
||||
createInputError(permit_entry_date, "Entry Date is required");
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($("option:selected", rdi_county).val() === "") {
|
||||
createInputError(rdi_county, "County is required");
|
||||
if ($("option:selected", permit_county).val() === "") {
|
||||
createInputError(permit_county, "County is required");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -128,7 +128,7 @@ $(document).ready(function () {
|
||||
|
||||
.done(function () {
|
||||
|
||||
$sessionStorage.action = $sessionStorage.editRDI || "";
|
||||
$sessionStorage.action = $sessionStorage.addPermit || "";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
+4
-4
@@ -42,12 +42,12 @@ $(document).ready(function () {
|
||||
|
||||
});
|
||||
|
||||
$(".manage-rdi").on("click", function () {
|
||||
$(".manage-permits").on("click", function () {
|
||||
|
||||
$sessionStorage.action = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.managePermits";
|
||||
$sessionStorage.pagination = "first";
|
||||
$sessionStorage.find_rdi = "";
|
||||
$sessionStorage.rdis_order_by = "";
|
||||
$sessionStorage.find_permit = "";
|
||||
$sessionStorage.permits_order_by = "";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
// =================
|
||||
// Edit RDI
|
||||
// =================
|
||||
// ===========
|
||||
// Edit Permit
|
||||
// ===========
|
||||
|
||||
$(document).ready(function () {
|
||||
|
||||
@@ -37,8 +37,8 @@ $(document).ready(function () {
|
||||
// Date Pickers
|
||||
// ------------
|
||||
|
||||
$("#rdi_entry_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_entry_date",
|
||||
$("#permit_entry_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_entry_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -47,8 +47,8 @@ $(document).ready(function () {
|
||||
todayBtn: "linked",
|
||||
todayHighlight: true});
|
||||
|
||||
$("#rdi_permit_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_permit_date",
|
||||
$("#permit_permit_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_permit_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -65,7 +65,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_entry_date").focus().datepicker("show");
|
||||
$("#permit_entry_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -73,7 +73,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_permit_date").focus().datepicker("show");
|
||||
$("#permit_permit_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -85,7 +85,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#editRDI").submit();
|
||||
$("#editPermit").submit();
|
||||
|
||||
});
|
||||
|
||||
@@ -95,7 +95,7 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnCancel").on("click", function () {
|
||||
|
||||
$sessionStorage.action = $sessionStorage.editRDI || "";
|
||||
$sessionStorage.action = $sessionStorage.editPermit || "";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -109,18 +109,18 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnDelete").on("click", function () {
|
||||
|
||||
$("#confirm-dialog").removeClass().addClass("modal confirm-delete-rdi")
|
||||
.find(".modal-title").html("Confirm Delete RDI").end()
|
||||
.find(".modal-body").html("Are you sure you wish to delete this RDI?").end()
|
||||
$("#confirm-dialog").removeClass().addClass("modal confirm-delete-permit")
|
||||
.find(".modal-title").html("Confirm Delete Permit").end()
|
||||
.find(".modal-body").html("Are you sure you wish to delete this Permit?").end()
|
||||
.modal("show");
|
||||
|
||||
});
|
||||
|
||||
$("body").on("click", ".confirm-delete-rdi .btnConfirmDialogConfirm", function () {
|
||||
$("body").on("click", ".confirm-delete-permit .btnConfirmDialogConfirm", function () {
|
||||
|
||||
$.post("./", {action: "RDI.deleteRDI", rdi_serial: $sessionStorage.rdi_serial})
|
||||
$.post("./", {action: "Permits.deletePermit", permit_serial: $sessionStorage.permit_serial})
|
||||
.done(function () {
|
||||
formSubmit({action: $sessionStorage.deleteRDI});
|
||||
formSubmit({action: $sessionStorage.deletePermit});
|
||||
});
|
||||
|
||||
});
|
||||
@@ -129,20 +129,20 @@ $(document).ready(function () {
|
||||
// Validate Inputs
|
||||
// ---------------
|
||||
|
||||
$("#editRDI").submit(function (e) {
|
||||
$("#editPermit").submit(function (e) {
|
||||
|
||||
var rdi_entry_date = $("#rdi_entry_date"), rdi_county = $("#rdi_county");
|
||||
var permit_entry_date = $("#permit_entry_date"), permit_county = $("#permit_county");
|
||||
|
||||
clearInputErrors();
|
||||
|
||||
|
||||
if (isBlank(rdi_entry_date)) {
|
||||
createInputError(rdi_entry_date, "Entry Date is required");
|
||||
if (isBlank(permit_entry_date)) {
|
||||
createInputError(permit_entry_date, "Entry Date is required");
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($("option:selected", rdi_county).val() === "") {
|
||||
createInputError(rdi_county, "County is required");
|
||||
if ($("option:selected", permit_county).val() === "") {
|
||||
createInputError(permit_county, "County is required");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ $(document).ready(function () {
|
||||
|
||||
.done(function () {
|
||||
|
||||
$sessionStorage.action = $sessionStorage.editRDI || "";
|
||||
$sessionStorage.action = $sessionStorage.editPermit || "";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
// ==========
|
||||
// Manage RDI
|
||||
// ==========
|
||||
// ==============
|
||||
// Manage Permits
|
||||
// ==============
|
||||
|
||||
$(document).ready(function () {
|
||||
|
||||
@@ -11,7 +11,7 @@ $(document).ready(function () {
|
||||
// Initialize Dropdowns
|
||||
// --------------------
|
||||
|
||||
$("#rdis_per_page").val($sessionStorage.rdis_per_page || "20");
|
||||
$("#permits_per_page").val($sessionStorage.permits_per_page || "20");
|
||||
|
||||
// -----------
|
||||
// Find Button
|
||||
@@ -19,7 +19,7 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnFind").on("click", function () {
|
||||
|
||||
$sessionStorage.action = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.managePermits";
|
||||
$sessionStorage.pagination = "first";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
@@ -30,7 +30,7 @@ $(document).ready(function () {
|
||||
|
||||
});
|
||||
|
||||
$("#find_rdi").on("keyup", function (e) {
|
||||
$("#find_permit").on("keyup", function (e) {
|
||||
if (e.key === "Enter") {
|
||||
$(".btnFind").trigger("click");
|
||||
}
|
||||
@@ -42,9 +42,9 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnClearFind").on("click", function () {
|
||||
|
||||
$("#find_rdi").val("").trigger("change");
|
||||
$("#find_permit").val("").trigger("change");
|
||||
|
||||
$sessionStorage.action = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.managePermits";
|
||||
$sessionStorage.pagination = "first";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
@@ -59,10 +59,10 @@ $(document).ready(function () {
|
||||
// Per Page Change
|
||||
// ---------------
|
||||
|
||||
$("#rdis_per_page").on("change", function () {
|
||||
$("#permits_per_page").on("change", function () {
|
||||
|
||||
$sessionStorage.rdis_per_page = $(this).val();
|
||||
$sessionStorage.action = "RDI.manageRDI";
|
||||
$sessionStorage.permits_per_page = $(this).val();
|
||||
$sessionStorage.action = "Permits.managePermits";
|
||||
$sessionStorage.pagination = "first";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
@@ -79,7 +79,7 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnPagination").on("click", function () {
|
||||
|
||||
$sessionStorage.action = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.managePermits";
|
||||
$sessionStorage.pagination = $(this).data("pagination");
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
@@ -100,8 +100,8 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnAdd").on("click", function () {
|
||||
|
||||
$sessionStorage.action = "RDI.addRDI";
|
||||
$sessionStorage.addRDI = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.addPermit";
|
||||
$sessionStorage.addPermit = "Permits.managePermits";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -125,7 +125,7 @@ $(document).ready(function () {
|
||||
|
||||
$(".btnRefresh").on("click", function () {
|
||||
|
||||
$sessionStorage.action = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.managePermits";
|
||||
$sessionStorage.pagination = "first";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
@@ -136,19 +136,18 @@ $(document).ready(function () {
|
||||
|
||||
});
|
||||
|
||||
// -----------
|
||||
// RDI Summary
|
||||
// -----------
|
||||
// ---------------
|
||||
// Permits Summary
|
||||
// ---------------
|
||||
|
||||
$("#rdis-table tbody td:not('.selection-checkboxes')").on("click touch", function (e) {
|
||||
$("#permits-table tbody td:not('.selection-checkboxes')").on("click touch", function (e) {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$sessionStorage.action = "RDI.editRDI";
|
||||
$sessionStorage.rdi_serial = $(e.target).closest("tr").data("rdi-serial");
|
||||
$sessionStorage.rdiSummary = "RDI.manageRDI";
|
||||
$sessionStorage.editRDI = "RDI.manageRDI";
|
||||
$sessionStorage.deleteRDI = "RDI.manageRDI";
|
||||
$sessionStorage.action = "Permits.editPermit";
|
||||
$sessionStorage.permit_serial = $(e.target).closest("tr").data("permit-serial");
|
||||
$sessionStorage.editPermit = "Permits.managePermits";
|
||||
$sessionStorage.deletePermit = "Permits.managePermits";
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -160,43 +159,43 @@ $(document).ready(function () {
|
||||
// Column Heading Sort
|
||||
// -------------------
|
||||
|
||||
if (($sessionStorage.rdis_order_by || "") !== "") {
|
||||
if (($sessionStorage.permits_order_by || "") !== "") {
|
||||
|
||||
$("th[data-order-by = '" + ($sessionStorage.rdis_order_by || "") + "']").append('<i class="' + ($sessionStorage.rdis_order_icon || "") + ' text-danger ms-1 me-0"/>');
|
||||
$("th[data-order-by = '" + ($sessionStorage.permits_order_by || "") + "']").append('<i class="' + ($sessionStorage.permits_order_icon || "") + ' text-danger ms-1 me-0"/>');
|
||||
|
||||
}
|
||||
|
||||
$("th.sortable").on("click", function (e) {
|
||||
|
||||
if ($(e.target).data("order-by") !== ($sessionStorage.rdis_order_by || "")) { // New Column
|
||||
if ($(e.target).data("order-by") !== ($sessionStorage.permits_order_by || "")) { // New Column
|
||||
|
||||
$sessionStorage.rdis_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.rdis_order_direction = "asc";
|
||||
$sessionStorage.rdis_order_icon = "bi bi-arrow-up";
|
||||
$sessionStorage.permits_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.permits_order_direction = "asc";
|
||||
$sessionStorage.permits_order_icon = "bi bi-arrow-up";
|
||||
|
||||
} else {
|
||||
|
||||
switch ($sessionStorage.rdis_order_direction) {
|
||||
switch ($sessionStorage.permits_order_direction) {
|
||||
|
||||
case "" :
|
||||
|
||||
$sessionStorage.rdis_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.rdis_order_direction = "asc";
|
||||
$sessionStorage.rdis_order_icon = "bi bi-arrow-up";
|
||||
$sessionStorage.permits_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.permits_order_direction = "asc";
|
||||
$sessionStorage.permits_order_icon = "bi bi-arrow-up";
|
||||
break;
|
||||
|
||||
case "asc" :
|
||||
|
||||
$sessionStorage.rdis_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.rdis_order_direction = "desc";
|
||||
$sessionStorage.rdis_order_icon = "bi bi-arrow-down";
|
||||
$sessionStorage.permits_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.permits_order_direction = "desc";
|
||||
$sessionStorage.permits_order_icon = "bi bi-arrow-down";
|
||||
break;
|
||||
|
||||
case "desc" :
|
||||
|
||||
$sessionStorage.rdis_order_by = "";
|
||||
$sessionStorage.rdis_order_direction = "";
|
||||
$sessionStorage.rdis_order_icon = "";
|
||||
$sessionStorage.permits_order_by = "";
|
||||
$sessionStorage.permits_order_direction = "";
|
||||
$sessionStorage.permits_order_icon = "";
|
||||
break;
|
||||
|
||||
}
|
||||
@@ -243,7 +242,7 @@ $(document).ready(function () {
|
||||
// Toggle a Select Checkbox
|
||||
// ------------------------
|
||||
|
||||
$(".rdi-row").on("click touch", function (e) {
|
||||
$(".permit-row").on("click touch", function (e) {
|
||||
|
||||
if (!($(e.target).hasClass("selection-area"))) {
|
||||
return false;
|
||||
@@ -280,9 +279,9 @@ $(document).ready(function () {
|
||||
return $(this).val();
|
||||
}).get();
|
||||
|
||||
$("input[name = 'action']", "#PrintRDIForm").val("print");
|
||||
$("input[name = 'selected_rdis']", "#PrintRDIForm").val(selected);
|
||||
$("#PrintRDIForm").submit();
|
||||
$("input[name = 'action']", "#PrintPermitForm").val("print");
|
||||
$("input[name = 'selected_permits']", "#PrintPermitForm").val(selected);
|
||||
$("#PrintPermitForm").submit();
|
||||
|
||||
});
|
||||
|
||||
@@ -370,7 +369,7 @@ $(document).ready(function () {
|
||||
// Per Page Dropdown
|
||||
// -----------------
|
||||
|
||||
$("#rdis_per_page").on("change", function () {
|
||||
$("#permits_per_page").on("change", function () {
|
||||
|
||||
$(".btnFind").trigger("click");
|
||||
|
||||
@@ -22,7 +22,7 @@ $(document).ready(function () {
|
||||
// Initialize Dropdowns
|
||||
// --------------------
|
||||
|
||||
$("#rdis_per_page").val($sessionStorage.rdis_per_page || "20");
|
||||
$("#permits_per_page").val($sessionStorage.permits_per_page || "20");
|
||||
|
||||
// -----------
|
||||
// Input Masks
|
||||
@@ -37,8 +37,8 @@ $(document).ready(function () {
|
||||
// Date Pickers
|
||||
// ------------
|
||||
|
||||
$("#rdi_entry_start_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_entry_start_date",
|
||||
$("#permit_entry_start_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_entry_start_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -46,8 +46,8 @@ $(document).ready(function () {
|
||||
todayBtn: "linked",
|
||||
todayHighlight: true});
|
||||
|
||||
$("#rdi_entry_end_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_entry_end_date",
|
||||
$("#permit_entry_end_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_entry_end_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -55,8 +55,8 @@ $(document).ready(function () {
|
||||
todayBtn: "linked",
|
||||
todayHighlight: true});
|
||||
|
||||
$("#rdi_permit_start_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_permit_start_date",
|
||||
$("#permit_permit_start_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_permit_start_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -64,8 +64,8 @@ $(document).ready(function () {
|
||||
todayBtn: "linked",
|
||||
todayHighlight: true});
|
||||
|
||||
$("#rdi_permit_end_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.rdi_permit_end_date",
|
||||
$("#permit_permit_end_date").datepicker({format: "mm-dd-yyyy",
|
||||
container: "div.permit_permit_end_date",
|
||||
keyboardNavigation: false,
|
||||
showOnFocus: false,
|
||||
autoclose: true,
|
||||
@@ -81,7 +81,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_entry_start_date").focus().datepicker("show");
|
||||
$("#permit_entry_start_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -89,7 +89,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_entry_end_date").focus().datepicker("show");
|
||||
$("#permit_entry_end_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -97,7 +97,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_permit_start_date").focus().datepicker("show");
|
||||
$("#permit_permit_start_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -105,7 +105,7 @@ $(document).ready(function () {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$("#rdi_permit_end_date").focus().datepicker("show");
|
||||
$("#permit_permit_end_date").focus().datepicker("show");
|
||||
|
||||
});
|
||||
|
||||
@@ -117,15 +117,15 @@ $(document).ready(function () {
|
||||
|
||||
var filter = $(this).val().toLowerCase();
|
||||
|
||||
$(".rdi-row").hide().filter(function () {
|
||||
$(".permit-row").hide().filter(function () {
|
||||
return $(this).find(".filterable").text().toLowerCase().indexOf(filter) > -1;
|
||||
}).show();
|
||||
|
||||
if ($(".rdi-row:visible").length === 0) {
|
||||
$("#rdis-table thead").hide();
|
||||
if ($(".permit-row:visible").length === 0) {
|
||||
$("#permits-table thead").hide();
|
||||
$(".filter-error").removeClass("d-none");
|
||||
} else {
|
||||
$("#rdis-table thead").show();
|
||||
$("#permits-table thead").show();
|
||||
$(".filter-error").addClass("d-none");
|
||||
}
|
||||
|
||||
@@ -154,9 +154,9 @@ $(document).ready(function () {
|
||||
// Per Page Change
|
||||
// ---------------
|
||||
|
||||
$("#rdis_per_page").on("change", function () {
|
||||
$("#permits_per_page").on("change", function () {
|
||||
|
||||
$sessionStorage.rdis_per_page = $(this).val();
|
||||
$sessionStorage.permits_per_page = $(this).val();
|
||||
$sessionStorage.action = "PermitsByBuilder.searchPermits";
|
||||
$sessionStorage.pagination = "first";
|
||||
|
||||
@@ -224,12 +224,12 @@ $(document).ready(function () {
|
||||
$("#spinner-dialog").modal("show");
|
||||
|
||||
delete $sessionStorage.pagination;
|
||||
delete $sessionStorage.rdi_company;
|
||||
delete $sessionStorage.rdi_and_or;
|
||||
delete $sessionStorage.rdi_entry_start_date;
|
||||
delete $sessionStorage.rdi_entry_end_date;
|
||||
delete $sessionStorage.rdi_permit_start_date;
|
||||
delete $sessionStorage.rdi_permit_end_date;
|
||||
delete $sessionStorage.permit_company;
|
||||
delete $sessionStorage.permit_and_or;
|
||||
delete $sessionStorage.permit_entry_start_date;
|
||||
delete $sessionStorage.permit_entry_end_date;
|
||||
delete $sessionStorage.permit_permit_start_date;
|
||||
delete $sessionStorage.permit_permit_end_date;
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -258,12 +258,12 @@ $(document).ready(function () {
|
||||
|
||||
$("#spinner-dialog").modal("show");
|
||||
|
||||
var builder = $("#rdi_company"),
|
||||
rdi_and_or = $("#rdi_and_or"),
|
||||
rdi_entry_start_date = $("#rdi_entry_start_date"),
|
||||
rdi_entry_end_date = $("#rdi_entry_end_date"),
|
||||
rdi_permit_start_date = $("#rdi_permit_start_date"),
|
||||
rdi_permit_end_date = $("#rdi_permit_end_date"),
|
||||
var builder = $("#permit_company"),
|
||||
permit_and_or = $("#permit_and_or"),
|
||||
permit_entry_start_date = $("#permit_entry_start_date"),
|
||||
permit_entry_end_date = $("#permit_entry_end_date"),
|
||||
permit_permit_start_date = $("#permit_permit_start_date"),
|
||||
permit_permit_end_date = $("#permit_permit_end_date"),
|
||||
form_error = $("#search-form-error");
|
||||
|
||||
clearInputErrors();
|
||||
@@ -278,35 +278,35 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
// Validate required fields
|
||||
if ([builder, rdi_entry_start_date, rdi_entry_end_date, rdi_permit_start_date, rdi_permit_end_date].every(isBlank)) {
|
||||
if ([builder, permit_entry_start_date, permit_entry_end_date, permit_permit_start_date, permit_permit_end_date].every(isBlank)) {
|
||||
return showError("Please provide a search criteria.");
|
||||
}
|
||||
|
||||
if (isBlank(rdi_entry_start_date) && !isBlank(rdi_entry_end_date)) {
|
||||
return showError("Please provide an Entry From Date for range.", rdi_entry_start_date);
|
||||
if (isBlank(permit_entry_start_date) && !isBlank(permit_entry_end_date)) {
|
||||
return showError("Please provide an Entry From Date for range.", permit_entry_start_date);
|
||||
}
|
||||
|
||||
if (isBlank(rdi_permit_start_date) && !isBlank(rdi_permit_end_date)) {
|
||||
return showError("Please provide a Permit From Date for range.", rdi_permit_start_date);
|
||||
if (isBlank(permit_permit_start_date) && !isBlank(permit_permit_end_date)) {
|
||||
return showError("Please provide a Permit From Date for range.", permit_permit_start_date);
|
||||
}
|
||||
|
||||
// Validate date ranges
|
||||
if (rdi_entry_end_date.val() && !checkEndingDate(rdi_entry_start_date, rdi_entry_end_date)) {
|
||||
if (permit_entry_end_date.val() && !checkEndingDate(permit_entry_start_date, permit_entry_end_date)) {
|
||||
return showError("Start Date must be prior to End Date");
|
||||
}
|
||||
|
||||
if (rdi_permit_end_date.val() && !checkEndingDate(rdi_permit_start_date, rdi_permit_end_date)) {
|
||||
if (permit_permit_end_date.val() && !checkEndingDate(permit_permit_start_date, permit_permit_end_date)) {
|
||||
return showError("Start Date must be prior to End Date");
|
||||
}
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
$sessionStorage.rdi_company = builder.val();
|
||||
$sessionStorage.rdi_and_or = rdi_and_or.val();
|
||||
$sessionStorage.rdi_entry_start_date = rdi_entry_start_date.val();
|
||||
$sessionStorage.rdi_entry_end_date = rdi_entry_end_date.val();
|
||||
$sessionStorage.rdi_permit_start_date = rdi_permit_start_date.val();
|
||||
$sessionStorage.rdi_permit_end_date = rdi_permit_end_date.val();
|
||||
$sessionStorage.permit_company = builder.val();
|
||||
$sessionStorage.permit_and_or = permit_and_or.val();
|
||||
$sessionStorage.permit_entry_start_date = permit_entry_start_date.val();
|
||||
$sessionStorage.permit_entry_end_date = permit_entry_end_date.val();
|
||||
$sessionStorage.permit_permit_start_date = permit_permit_start_date.val();
|
||||
$sessionStorage.permit_permit_end_date = permit_permit_end_date.val();
|
||||
|
||||
sessionStorage.setItem($application, JSON.stringify($sessionStorage));
|
||||
|
||||
@@ -318,43 +318,43 @@ $(document).ready(function () {
|
||||
// Column Heading Sort
|
||||
// -------------------
|
||||
|
||||
if (($sessionStorage.rdis_order_by || "") !== "") {
|
||||
if (($sessionStorage.permits_order_by || "") !== "") {
|
||||
|
||||
$("th[data-order-by = '" + ($sessionStorage.rdis_order_by || "") + "']").append('<i class="' + ($sessionStorage.rdis_order_icon || "") + ' text-danger ms-1 me-0"/>');
|
||||
$("th[data-order-by = '" + ($sessionStorage.permits_order_by || "") + "']").append('<i class="' + ($sessionStorage.permits_order_icon || "") + ' text-danger ms-1 me-0"/>');
|
||||
|
||||
}
|
||||
|
||||
$("th.sortable").on("click", function (e) {
|
||||
|
||||
if ($(e.target).data("order-by") !== ($sessionStorage.rdis_order_by || "")) { // New Column
|
||||
if ($(e.target).data("order-by") !== ($sessionStorage.permits_order_by || "")) { // New Column
|
||||
|
||||
$sessionStorage.rdis_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.rdis_order_direction = "asc";
|
||||
$sessionStorage.rdis_order_icon = "bi bi-arrow-up";
|
||||
$sessionStorage.permits_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.permits_order_direction = "asc";
|
||||
$sessionStorage.permits_order_icon = "bi bi-arrow-up";
|
||||
|
||||
} else {
|
||||
|
||||
switch ($sessionStorage.rdis_order_direction) {
|
||||
switch ($sessionStorage.permits_order_direction) {
|
||||
|
||||
case "" :
|
||||
|
||||
$sessionStorage.rdis_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.rdis_order_direction = "asc";
|
||||
$sessionStorage.rdis_order_icon = "bi bi-arrow-up";
|
||||
$sessionStorage.permits_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.permits_order_direction = "asc";
|
||||
$sessionStorage.permits_order_icon = "bi bi-arrow-up";
|
||||
break;
|
||||
|
||||
case "asc" :
|
||||
|
||||
$sessionStorage.rdis_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.rdis_order_direction = "desc";
|
||||
$sessionStorage.rdis_order_icon = "bi bi-arrow-down";
|
||||
$sessionStorage.permits_order_by = $(e.target).data("order-by");
|
||||
$sessionStorage.permits_order_direction = "desc";
|
||||
$sessionStorage.permits_order_icon = "bi bi-arrow-down";
|
||||
break;
|
||||
|
||||
case "desc" :
|
||||
|
||||
$sessionStorage.rdis_order_by = "";
|
||||
$sessionStorage.rdis_order_direction = "";
|
||||
$sessionStorage.rdis_order_icon = "";
|
||||
$sessionStorage.permits_order_by = "";
|
||||
$sessionStorage.permits_order_direction = "";
|
||||
$sessionStorage.permits_order_icon = "";
|
||||
break;
|
||||
|
||||
}
|
||||
@@ -401,7 +401,7 @@ $(document).ready(function () {
|
||||
// Toggle a Select Checkbox
|
||||
// ------------------------
|
||||
|
||||
$(".rdi-row").on("click touch", function (e) {
|
||||
$(".permit-row").on("click touch", function (e) {
|
||||
|
||||
if (!($(e.target).hasClass("selection-area"))) {
|
||||
return false;
|
||||
@@ -644,7 +644,7 @@ $(document).ready(function () {
|
||||
// Per Page Dropdown
|
||||
// -----------------
|
||||
|
||||
$("#rdis_per_page").on("change", function () {
|
||||
$("#permits_per_page").on("change", function () {
|
||||
|
||||
$(".btnFind").trigger("click");
|
||||
|
||||
|
||||
@@ -2,6 +2,10 @@
|
||||
<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
|
||||
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
|
||||
<open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
|
||||
<group/>
|
||||
<group>
|
||||
<file>file:/C:/Users/JamesRichie/OneDrive%20-%20OneSource%20IT%20Solutions%20LLC/Documents/NetBeansProjects/dec-international/atlhousingreport/classes/PermitsByBuilder.php</file>
|
||||
<file>file:/C:/Users/JamesRichie/OneDrive%20-%20OneSource%20IT%20Solutions%20LLC/Documents/NetBeansProjects/dec-international/atlhousingreport/classes/Consolidation.php</file>
|
||||
<file>file:/C:/Users/JamesRichie/OneDrive%20-%20OneSource%20IT%20Solutions%20LLC/Documents/NetBeansProjects/dec-international/atlhousingreport/xsl/searchPermitsByBuilder.xsl</file>
|
||||
</group>
|
||||
</open-files>
|
||||
</project-private>
|
||||
|
||||
@@ -32,8 +32,8 @@ class Export_AllPermitsByBuilderCSV extends Base {
|
||||
$permit_area = $subscription->record->subscription_area;
|
||||
$projecttype = $subscription->record->subscription_projecttype;
|
||||
|
||||
$permits = (new PermitsByBuilder())->getAllPermitsByBuilder($permit_area, $projecttype);
|
||||
|
||||
$permits = (new PermitsByBuilder())->getAllPermits($permit_area, $projecttype);
|
||||
|
||||
header('Content-Type: text/csv');
|
||||
header('Content-Disposition: attachment; filename="AllPermitsByBuilder.csv"');
|
||||
|
||||
@@ -49,19 +49,19 @@ class Export_AllPermitsByBuilderCSV extends Base {
|
||||
|
||||
foreach ($permits as $permit) {
|
||||
|
||||
$builder = $permit->rdi_company;
|
||||
$permitcount = $permit->rdi_permit_count;
|
||||
$permit_value = $permit->rdi_value;
|
||||
$currentyearytd = $permit->rdi_ytd_permits;
|
||||
$permit_ytd_value = $permit->rdi_ytd_value;
|
||||
$rdi12monthprevpermits = $permit->rdi_12mth_prev_permits;
|
||||
$address = "{$permit->rdi_address} {$permit->rdi_city} {$permit->rdi_state} {$permit->rdi_zip}";
|
||||
$phone = $permit->rdi_phone_verbose;
|
||||
$builder = $permit->permit_company;
|
||||
$permitcount = $permit->permit_permit_count;
|
||||
$permit_value = $permit->permit_value_verbose;
|
||||
$currentyearytd = $permit->ytd_permits;
|
||||
$permit_ytd_value = $permit->ytd_value;
|
||||
$permit12monthprevpermits = $permit->previous_ytd_permits;
|
||||
$address = "{$permit->permit_address} {$permit->permit_city} {$permit->permit_state} {$permit->permit_zip}";
|
||||
$phone = $permit->permit_phone_verbose;
|
||||
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->rdi_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->rdi_value, 2);
|
||||
$permit_ytd_value = "$" . number_format((int) $permit_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit_value, 2);
|
||||
|
||||
$permit_data = array($builder, $permitcount, $permit_value, $currentyearytd, $permit_ytd_value, $rdi12monthprevpermits, $address, $phone);
|
||||
$permit_data = array($builder, $permitcount, $permit_value, $currentyearytd, $permit_ytd_value, $permit12monthprevpermits, $address, $phone);
|
||||
|
||||
fputcsv($output, $permit_data, ',', '"', '\\');
|
||||
}
|
||||
|
||||
@@ -29,13 +29,13 @@ class Export_AllPermitsByBuilderExcel extends Base {
|
||||
set_time_limit(0);
|
||||
|
||||
$subscription_serial = filter_input(INPUT_POST, "subscription_serial", FILTER_SANITIZE_NUMBER_INT) ?: 0;
|
||||
|
||||
|
||||
$subscription = (new Subscriptions())->getSubscription($subscription_serial);
|
||||
|
||||
$permit_area = $subscription->record->subscription_area;
|
||||
$projecttype = $subscription->record->subscription_projecttype;
|
||||
|
||||
$permits = (new PermitsByBuilder())->getAllPermitsByBuilder($permit_area, $projecttype);
|
||||
$permits = (new PermitsByBuilder())->getAllPermits($permit_area, $projecttype);
|
||||
|
||||
// Create the Spreadsheet.
|
||||
|
||||
@@ -95,19 +95,19 @@ class Export_AllPermitsByBuilderExcel extends Base {
|
||||
|
||||
foreach ($permits as $permit) {
|
||||
|
||||
$address = "{$permit->rdi_address} {$permit->rdi_city}, {$permit->rdi_state} {$permit->rdi_zip}";
|
||||
$address = "{$permit->permit_address} {$permit->permit_city}, {$permit->permit_state} {$permit->permit_zip}";
|
||||
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->rdi_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->rdi_value, 2);
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->permit_value_verbose, 2);
|
||||
|
||||
$spreadsheet->getActiveSheet()->setCellValue("A" . $row, (string) $permit->rdi_company);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("B" . $row, (string) $permit->rdi_permit_count);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("A" . $row, (string) $permit->permit_company);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("B" . $row, (string) $permit->permit_permit_count);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("C" . $row, (string) $permit_value);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("D" . $row, (string) $permit->rdi_ytd_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("E" . $row, (string) $permit->rdi_ytd_value);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("F" . $row, (string) $permit->rdi_12mth_prev_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("D" . $row, (string) $permit->ytd_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("E" . $row, (string) $permit_ytd_value);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("F" . $row, (string) $permit->previous_ytd_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("G" . $row, (string) $address);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("H" . $row, (string) $permit->rdi_phone_verbose);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("H" . $row, (string) $permit->permit_phone_verbose);
|
||||
|
||||
$row++;
|
||||
}
|
||||
|
||||
@@ -50,19 +50,19 @@ class Export_SelectedPermitsByBuilderCSV extends Base {
|
||||
|
||||
foreach ($permits as $permit) {
|
||||
|
||||
$builder = $permit->rdi_company;
|
||||
$permitcount = $permit->rdi_permit_count;
|
||||
$permit_value = $permit->rdi_value;
|
||||
$currentyearytd = $permit->rdi_ytd_permits;
|
||||
$permit_ytd_value = $permit->rdi_ytd_value;
|
||||
$rdi12monthprevpermits = $permit->rdi_12mth_prev_permits;
|
||||
$address = "{$permit->rdi_address} {$permit->rdi_city} {$permit->rdi_state} {$permit->rdi_zip}";
|
||||
$phone = $permit->rdi_phone_verbose;
|
||||
$builder = $permit->permit_company;
|
||||
$permitcount = $permit->permit_permit_count;
|
||||
$permit_value = $permit->permit_value_verbose;
|
||||
$currentyearytd = $permit->ytd_permits;
|
||||
$permit_ytd_value = $permit->ytd_value;
|
||||
$permit12monthprevpermits = $permit->previous_ytd_permits;
|
||||
$address = "{$permit->permit_address} {$permit->permit_city} {$permit->permit_state} {$permit->permit_zip}";
|
||||
$phone = $permit->permit_phone_verbose;
|
||||
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->rdi_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->rdi_value, 2);
|
||||
$permit_ytd_value = "$" . number_format((int) $permit_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit_value, 2);
|
||||
|
||||
$permit_data = array($builder, $permitcount, $permit_value, $currentyearytd, $permit_ytd_value, $rdi12monthprevpermits, $address, $phone);
|
||||
$permit_data = array($builder, $permitcount, $permit_value, $currentyearytd, $permit_ytd_value, $permit12monthprevpermits, $address, $phone);
|
||||
|
||||
fputcsv($output, $permit_data, ',', '"', '\\');
|
||||
}
|
||||
|
||||
@@ -98,17 +98,17 @@ class Export_SelectedPermitsByBuilderExcel extends Base {
|
||||
|
||||
$address = "{$permit->rdi_address} {$permit->rdi_city}, {$permit->rdi_state} {$permit->rdi_zip}";
|
||||
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->rdi_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->rdi_value, 2);
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->permit_value_verbose, 2);
|
||||
|
||||
$spreadsheet->getActiveSheet()->setCellValue("A" . $row, (string) $permit->rdi_company);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("B" . $row, (string) $permit->rdi_permit_count);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("A" . $row, (string) $permit->permit_company);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("B" . $row, (string) $permit->permit_permit_count);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("C" . $row, (string) $permit_value);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("D" . $row, (string) $permit->rdi_ytd_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("E" . $row, (string) $permit->rdi_ytd_value);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("F" . $row, (string) $permit->rdi_12mth_prev_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("D" . $row, (string) $permit->ytd_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("E" . $row, (string) $permit_ytd_value);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("F" . $row, (string) $permit->previous_ytd_permits);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("G" . $row, (string) $address);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("H" . $row, (string) $permit->rdi_phone_verbose);
|
||||
$spreadsheet->getActiveSheet()->setCellValue("H" . $row, (string) $permit->permit_phone_verbose);
|
||||
|
||||
$row++;
|
||||
}
|
||||
|
||||
@@ -99,7 +99,7 @@ class AllPermitsByBuilder_Print extends TCPDF {
|
||||
|
||||
// Get the data for the report
|
||||
|
||||
$permits = (new PermitsByBuilder())->getAllPermitsByBuilder($permit_area, $projecttype);
|
||||
$permits = (new PermitsByBuilder())->getAllPermits($permit_area, $projecttype);
|
||||
|
||||
// -------
|
||||
// Permits
|
||||
@@ -143,19 +143,19 @@ class AllPermitsByBuilder_Print extends TCPDF {
|
||||
$this->stripeLine($rowCount, 257);
|
||||
$rowCount++;
|
||||
|
||||
$address = "{$permit->rdi_address} {$permit->rdi_city}, {$permit->rdi_state} {$permit->rdi_zip}";
|
||||
$address = "{$permit->permit_address} {$permit->permit_city}, {$permit->permit_state} {$permit->permit_zip}";
|
||||
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->rdi_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->rdi_value, 2);
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->permit_value_verbose, 2);
|
||||
|
||||
$this->Cell(52, 0, $permit->rdi_company, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(10, 0, $permit->rdi_permit_count, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(52, 0, $permit->permit_company, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(10, 0, $permit->permit_permit_count, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(20, 0, $permit_value, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->rdi_ytd_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->ytd_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(20, 0, $permit_ytd_value, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->rdi_12mth_prev_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->previous_ytd_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(85, 0, $address, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(25, 0, $permit->rdi_phone_verbose, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(25, 0, $permit->permit_phone_verbose, 0, 0, "L", false, "", 3);
|
||||
|
||||
$this->Ln(4);
|
||||
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
require_once ("tcpdf/tcpdf.php");
|
||||
|
||||
// ==========================
|
||||
// Print Selected Work Orders
|
||||
// ==========================
|
||||
// ======================
|
||||
// Print Selected Permits
|
||||
// ======================
|
||||
|
||||
class Print_Selected_RDIs extends Base {
|
||||
class Print_Selected_Permits extends Base {
|
||||
|
||||
// Variables.
|
||||
|
||||
@@ -31,9 +31,9 @@ class Print_Selected_RDIs extends Base {
|
||||
|
||||
public function print() {
|
||||
|
||||
$report = new RDI_Print();
|
||||
$report = new Permit_Print();
|
||||
|
||||
$report->selected_rdis = explode(",", $_SESSION[self::REPORTS_POST]["selected_rdis"]);
|
||||
$report->selected_permits = explode(",", $_SESSION[self::REPORTS_POST]["selected_permits"]);
|
||||
$report->output_type = $this->output_type;
|
||||
|
||||
ob_clean();
|
||||
@@ -50,12 +50,12 @@ class Print_Selected_RDIs extends Base {
|
||||
// Class to Generate the .pdf
|
||||
// ==========================
|
||||
|
||||
class RDI_Print extends TCPDF {
|
||||
class Permit_Print extends TCPDF {
|
||||
|
||||
// Variables
|
||||
|
||||
public $selected_rdis = array();
|
||||
public $rdi_serial = 0;
|
||||
public $selected_permits = array();
|
||||
public $permit_serial = 0;
|
||||
public $first_page = true;
|
||||
public $output_type = "normal";
|
||||
|
||||
@@ -80,17 +80,17 @@ class RDI_Print extends TCPDF {
|
||||
|
||||
// Process each Selected Work Order
|
||||
|
||||
foreach ($this->selected_rdis as $this->rdi_serial) {
|
||||
foreach ($this->selected_permits as $this->permit_serial) {
|
||||
|
||||
// Get the data for the report
|
||||
|
||||
$RDI = new RDI();
|
||||
$Permit = new Permits();
|
||||
|
||||
$rdi = $RDI->getRDI($this->rdi_serial);
|
||||
$permit = $Permit->getPermit($this->permit_serial);
|
||||
|
||||
// Set report defaults
|
||||
|
||||
$this->title = "Print RDI Record";
|
||||
$this->title = "Print Permit Record";
|
||||
|
||||
$this->SetFont("Calibri");
|
||||
$this->SetMargins(10, 26, 10);
|
||||
@@ -102,105 +102,105 @@ class RDI_Print extends TCPDF {
|
||||
$this->addPage("P", "LETTER");
|
||||
|
||||
// -------------------
|
||||
// RDI Record Details
|
||||
// Permit Record Details
|
||||
// -------------------
|
||||
|
||||
$rdi = $rdi->record ?? "";
|
||||
$permit = $permit->record ?? "";
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Permit Facts ID:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_permit_facts_id, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_permit_facts_id, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Entry Date:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_entry_date_verbose, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_entry_date_verbose, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Permit Number:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_permit_number, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_permit_number, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Permit Date:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_permit_date_verbose, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_permit_date_verbose, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Project Address:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_rdi_project_addr, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_permit_project_addr, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Subdivision Name:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_sub_div_name, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_sub_div_name, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Project Type:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_project_type, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_project_type, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Company", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_company, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_company, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Address:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, "{$rdi->rdi_address} {$rdi->rdi_city}, {$rdi->rdi_state} {$rdi->rdi_zip}", 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, "{$permit->permit_address} {$permit->permit_city}, {$permit->permit_state} {$permit->permit_zip}", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Phone:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->$rdi->rdi_phone_verbose, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->$permit->permit_phone_verbose, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Project City:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_phone_verbose, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_phone_verbose, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Project State:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_project_state, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_project_state, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Size:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_intersection_namerdi_size, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_intersection_namepermit_size, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Units:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_size, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_size, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Building Type:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_building_type, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_building_type, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Value:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_building_type, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_building_type, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "County:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_county, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_county, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Work Type", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, "$rdi->rdi_work_type", 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, "$permit->permit_work_type", 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Lot:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_lot, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_lot, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Dist/LL", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, "$rdi->rdi_dist_ll", 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, "$permit->permit_dist_ll", 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "CTL:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_ct1, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_ct1, 0, 0, "L", false, "", 3);
|
||||
|
||||
$this->Ln(6);
|
||||
|
||||
@@ -211,20 +211,20 @@ class RDI_Print extends TCPDF {
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Owner Name:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_owner_name, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_owner_name, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Address", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, "{$rdi->rdi_owner_address} {$rdi->rdi_owner_city}, {$rdi->rdi_owner_state} {$rdi->rdi_owner_zip}", 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, "{$permit->permit_owner_address} {$permit->permit_owner_city}, {$permit->permit_owner_state} {$permit->permit_owner_zip}", 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Owner Phone:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_owner_phone, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_owner_phone, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "Address", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_owner_phone, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_owner_phone, 0, 1, "L", false, "", 3);
|
||||
|
||||
$this->Ln(2);
|
||||
|
||||
@@ -235,11 +235,11 @@ class RDI_Print extends TCPDF {
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "YTD Permits:", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_ytd_permits, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_ytd_permits, 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "B", 10);
|
||||
$this->Cell(25, 0, "YTD Value", 0, 0, "L", false, "", 3);
|
||||
$this->SetFont("Calibri", "", 10);
|
||||
$this->Cell(65, 0, $rdi->rdi_ytd_value, 0, 1, "L", false, "", 3);
|
||||
$this->Cell(65, 0, $permit->permit_ytd_value, 0, 1, "L", false, "", 3);
|
||||
// ----------------------------
|
||||
// Rectangle around the Details
|
||||
// ----------------------------
|
||||
@@ -252,9 +252,9 @@ class RDI_Print extends TCPDF {
|
||||
// --------------
|
||||
|
||||
if ($this->output_type == "string") {
|
||||
return $this->Output("RDIRecord.pdf", "S");
|
||||
return $this->Output("PermitRecord.pdf", "S");
|
||||
} else {
|
||||
$this->Output("RDIRecord.pdf");
|
||||
$this->Output("PermitRecord.pdf");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -273,7 +273,7 @@ class RDI_Print extends TCPDF {
|
||||
|
||||
$this->Cell(0, 6, "DEC International", 0, 0, "C");
|
||||
$this->Ln(6);
|
||||
$this->Cell(0, 6, "RDI Record", 0, 1, "C");
|
||||
$this->Cell(0, 6, "Permit Record", 0, 1, "C");
|
||||
}
|
||||
|
||||
// ======
|
||||
@@ -146,19 +146,19 @@ class Permit_Print extends TCPDF {
|
||||
$this->stripeLine($rowCount, 257);
|
||||
$rowCount++;
|
||||
|
||||
$address = "{$permit->rdi_address} {$permit->rdi_city}, {$permit->rdi_state} {$permit->rdi_zip}";
|
||||
$address = "{$permit->permit_address} {$permit->permit_city}, {$permit->permit_state} {$permit->permit_zip}";
|
||||
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->rdi_ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->rdi_value, 2);
|
||||
$permit_ytd_value = "$" . number_format((int) $permit->ytd_value, 2);
|
||||
$permit_value = "$" . number_format((int) $permit->permit_value_verbose, 2);
|
||||
|
||||
$this->Cell(52, 0, $permit->rdi_company, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(10, 0, $permit->rdi_permit_count, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(52, 0, $permit->permit_company, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(10, 0, $permit->permit_permit_count, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(20, 0, $permit_value, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->rdi_ytd_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->ytd_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(20, 0, $permit_ytd_value, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->rdi_12mth_prev_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(15, 0, $permit->previous_ytd_permits, 0, 0, "C", false, "", 3);
|
||||
$this->Cell(85, 0, $address, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(25, 0, $permit->rdi_phone_verbose, 0, 0, "L", false, "", 3);
|
||||
$this->Cell(25, 0, $permit->permit_phone_verbose, 0, 0, "L", false, "", 3);
|
||||
|
||||
$this->Ln(4);
|
||||
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
<?php
|
||||
|
||||
$SQL = "create table permits (
|
||||
|
||||
permit_serial serial,
|
||||
permit_permit_facts_id bigint unsigned default 0,
|
||||
permit_entry_date_str varchar(12) default '',
|
||||
permit_entry_date date not null default 0,
|
||||
permit_permit_number varchar(50) default '',
|
||||
permit_permit_date_str varchar(12) default '',
|
||||
permit_permit_date date default null,
|
||||
|
||||
permit_project_addr varchar(100) default '',
|
||||
permit_sub_div_name varchar(100) default '',
|
||||
permit_project_type varchar(100) default '',
|
||||
|
||||
permit_company varchar(100) default '',
|
||||
permit_address varchar(100) default null,
|
||||
permit_city varchar(100) default null,
|
||||
permit_state varchar(2) default null,
|
||||
permit_zip varchar(10) default null,
|
||||
permit_phone varchar(14) default null,
|
||||
permit_project_city varchar(100) default '',
|
||||
permit_project_state varchar(2) default '',
|
||||
permit_size int(11) default null,
|
||||
permit_units int(11) default 0,
|
||||
permit_building_type int(11) default 0,
|
||||
permit_value int(11) default 0,
|
||||
permit_work_type int(11) default 0,
|
||||
permit_county varchar(100) default 0,
|
||||
permit_lot varchar(7) default null,
|
||||
permit_dist_ll varchar(7) default null,
|
||||
permit_ct1 tinyint(1) default 0,
|
||||
|
||||
permit_owner_name varchar(100) default null,
|
||||
permit_owner_address varchar(100) default null,
|
||||
permit_owner_city varchar(100) default null,
|
||||
permit_owner_state varchar(2) default null,
|
||||
permit_owner_zip varchar(10) default null,
|
||||
permit_owner_phone varchar(14) default null,
|
||||
|
||||
permit_ytd_permits int(11) default 0,
|
||||
permit_ytd_value int(11) default 0,
|
||||
permit_12mth_prev_permits int(11) default 0,
|
||||
|
||||
permit_creator varchar(100) default null,
|
||||
permit_created datetime default null,
|
||||
permit_changer varchar(100) default null,
|
||||
permit_changed datetime default null,
|
||||
|
||||
primary key (permit_serial)
|
||||
)
|
||||
|
||||
default character set = utf8";
|
||||
?>
|
||||
@@ -0,0 +1,82 @@
|
||||
<?php
|
||||
|
||||
$SQL = "create or replace view view_company_permit_trends as
|
||||
select
|
||||
companies.permit_company,
|
||||
|
||||
ifnull(prev.prev_ytd_permits, 0) as prev_ytd_permits,
|
||||
ifnull(curr.ytd_permits, 0) as ytd_permits,
|
||||
|
||||
ifnull(prev.prev_ytd_value, 0) as prev_ytd_value,
|
||||
ifnull(curr.ytd_value, 0) as ytd_value,
|
||||
|
||||
case
|
||||
when ifnull(prev.prev_ytd_permits, 0) = 0 then null
|
||||
else round(
|
||||
((ifnull(curr.ytd_permits, 0) - prev.prev_ytd_permits) / prev.prev_ytd_permits) * 100,
|
||||
2
|
||||
)
|
||||
end as permits_pct_change,
|
||||
|
||||
case
|
||||
when ifnull(prev.prev_ytd_value, 0) = 0 then null
|
||||
else round(
|
||||
((ifnull(curr.ytd_value, 0) - prev.prev_ytd_value) / prev.prev_ytd_value) * 100,
|
||||
2
|
||||
)
|
||||
end as value_pct_change,
|
||||
|
||||
case
|
||||
when ifnull(prev.prev_ytd_permits, 0) = 0 then ''
|
||||
when (ifnull(curr.ytd_permits, 0) / prev.prev_ytd_permits) < 0.75 then 'down'
|
||||
when ((ifnull(curr.ytd_permits, 0) - prev.prev_ytd_permits) / prev.prev_ytd_permits) >= 0.05 then 'up'
|
||||
when ((ifnull(curr.ytd_permits, 0) - prev.prev_ytd_permits) / prev.prev_ytd_permits) <= -0.05 then 'down'
|
||||
else '='
|
||||
end as permits_trend,
|
||||
|
||||
case
|
||||
when ifnull(prev.prev_ytd_value, 0) = 0 then ''
|
||||
when (ifnull(curr.ytd_value, 0) / prev.prev_ytd_value) < 0.75 then '='
|
||||
when ((ifnull(curr.ytd_value, 0) - prev.prev_ytd_value) / prev.prev_ytd_value) >= 0.05 then 'up'
|
||||
when ((ifnull(curr.ytd_value, 0) - prev.prev_ytd_value) / prev.prev_ytd_value) <= -0.05 then 'down'
|
||||
else '='
|
||||
end as value_trend
|
||||
|
||||
from
|
||||
(
|
||||
select distinct permit_company
|
||||
from permits
|
||||
where permit_company is not null
|
||||
and trim(permit_company) <> ''
|
||||
) companies
|
||||
|
||||
left join
|
||||
(
|
||||
select
|
||||
permit_company,
|
||||
count(*) as prev_ytd_permits,
|
||||
sum(ifnull(permit_value, 0)) as prev_ytd_value
|
||||
from permits
|
||||
where permit_company is not null
|
||||
and trim(permit_company) <> ''
|
||||
and permit_permit_date >= makedate(year(curdate()) - 1, 1)
|
||||
and permit_permit_date <= date_sub(curdate(), interval 1 year)
|
||||
group by permit_company
|
||||
) prev
|
||||
on companies.permit_company = prev.permit_company
|
||||
|
||||
left join
|
||||
(
|
||||
select
|
||||
permit_company,
|
||||
count(*) as ytd_permits,
|
||||
sum(ifnull(permit_value, 0)) as ytd_value
|
||||
from permits
|
||||
where permit_company is not null
|
||||
and trim(permit_company) <> ''
|
||||
and permit_permit_date >= makedate(year(curdate()), 1)
|
||||
and permit_permit_date <= curdate()
|
||||
group by permit_company
|
||||
) curr
|
||||
on companies.permit_company = curr.permit_company";
|
||||
?>
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
$SQL = "create view view_permits as
|
||||
|
||||
select permits.*,
|
||||
date_format(permit_entry_date, '%c/%e/%Y') as permit_entry_date_verbose,
|
||||
date_format(permit_permit_date, '%c/%e/%Y') as permit_permit_date_verbose,
|
||||
date_format(permit_created, '%c/%e/%Y %l:%i %p') as permit_created_verbose,
|
||||
date_format(permit_changed, '%c/%e/%Y %l:%i %p') as permit_changed_verbose,
|
||||
|
||||
IF(
|
||||
permit_phone IS NULL OR permit_phone = '',
|
||||
'Not Provided',
|
||||
CONCAT('(', SUBSTRING(permit_phone, 1, 3), ') ',
|
||||
SUBSTRING(permit_phone, 4, 3), '-',
|
||||
SUBSTRING(permit_phone, 7, 4)
|
||||
)) as permit_phone_verbose,
|
||||
|
||||
concat('$', format(permit_value, 2)) as permit_value_verbose,
|
||||
format(permit_size, 0) as permit_size_verbose,
|
||||
|
||||
trends.prev_ytd_permits as previous_ytd_permits,
|
||||
trends.ytd_permits as ytd_permits,
|
||||
trends.permits_trend,
|
||||
|
||||
trends.prev_ytd_value as previous_ytd_value,
|
||||
trends.ytd_value
|
||||
|
||||
|
||||
from permits
|
||||
|
||||
join view_company_permit_trends as trends
|
||||
on permits.permit_company = trends.permit_company";
|
||||
?>
|
||||
@@ -6,8 +6,8 @@
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add RDI Record</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addRDI</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Add Permit</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">addPermit</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
@@ -27,26 +27,26 @@
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="RDI.addRDI"/>
|
||||
<input type="hidden" name="action" value="Permit.addPermit"/>
|
||||
<input type="hidden" name="step" value="add"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_permit_facts_id">Permit Facts ID</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_permit_facts_id" id="rdi_permit_facts_id" maxlength="100" autocomplete="off" autofocus="yes"/>
|
||||
<label class="form-label" for="permit_permit_facts_id">Permit Facts ID</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_permit_facts_id" id="permit_permit_facts_id" maxlength="100" autocomplete="off" autofocus="yes"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_permit_number">Permit Number</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_permit_number" id="rdi_permit_number" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_permit_number">Permit Number</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_permit_number" id="permit_permit_number" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
|
||||
<label class="form-label" for="rdi_entry_date">Entry Date</label>
|
||||
<div class="input-group input-group-sm rdi_entry_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_entry_date" id="rdi_entry_date"/>
|
||||
<label class="form-label" for="permit_entry_date">Entry Date</label>
|
||||
<div class="input-group input-group-sm permit_entry_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_entry_date" id="permit_entry_date"/>
|
||||
<button class="btn btn-sm btn-outline-primary btnEntryDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
@@ -55,9 +55,9 @@
|
||||
</div>
|
||||
<div class="col-lg-3 mb-3">
|
||||
|
||||
<label class="form-label" for="rdi_permit_date">Permit Date</label>
|
||||
<div class="input-group input-group-sm rdi_permit_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_permit_date" id="rdi_permit_date"/>
|
||||
<label class="form-label" for="permit_permit_date">Permit Date</label>
|
||||
<div class="input-group input-group-sm permit_permit_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_permit_date" id="permit_permit_date"/>
|
||||
<button class="btn btn-sm btn-outline-primary btnPermitDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
@@ -70,20 +70,20 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_sub_div_name">Subdivision</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_sub_div_name" id="rdi_sub_div_name" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_sub_div_name">Subdivision</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_sub_div_name" id="permit_sub_div_name" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_project_type">Project Type</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="rdi_project_type" id="rdi_project_type" size="1">
|
||||
<label class="form-label" for="permit_project_type">Project Type</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="permit_project_type" id="permit_project_type" size="1">
|
||||
<xsl:apply-templates select="//Constants/ProjectTypes"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_county">County</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="rdi_county" id="rdi_county" size="1">
|
||||
<label class="form-label" for="permit_county">County</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="permit_county" id="permit_county" size="1">
|
||||
<xsl:apply-templates select="//counties"/>
|
||||
</select>
|
||||
</div>
|
||||
@@ -92,34 +92,34 @@
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="rdi_company">Company</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_company" id="rdi_company" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_company">Company</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_company" id="permit_company" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_phone">Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="rdi_phone" id="rdi_phone" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_phone">Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="permit_phone" id="permit_phone" autocomplete="off"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_project_addr">Project Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_project_addr" id="rdi_project_addr" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_project_addr">Project Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_project_addr" id="permit_project_addr" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_city">City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_city" id="rdi_city" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_city">City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_city" id="permit_city" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_state">State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_state" id="rdi_state" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_state">State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_state" id="permit_state" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_zip">ZIP Code</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="rdi_zip" id="rdi_zip" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_zip">ZIP Code</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="permit_zip" id="permit_zip" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -127,65 +127,65 @@
|
||||
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_project_city">Project City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_project_city" id="rdi_project_city" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_project_city">Project City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_project_city" id="permit_project_city" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_project_state">Project State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_project_state" id="rdi_project_state" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_project_state">Project State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_project_state" id="permit_project_state" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_value">Project Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_value" id="rdi_value" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_value">Project Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_value" id="permit_value" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<!-- Empty nodes included -->
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_lot">Lot</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_lot" id="rdi_lot" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_lot">Lot</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_lot" id="permit_lot" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_dist_ll">District LL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_dist_ll" id="rdi_dist_ll" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_dist_ll">District LL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_dist_ll" id="permit_dist_ll" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_owner_name">Owner Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_name" id="rdi_owner_name" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_owner_name">Owner Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_name" id="permit_owner_name" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_owner_phone">Owner Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="rdi_owner_phone" id="rdi_owner_phone" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_owner_phone">Owner Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="permit_owner_phone" id="permit_owner_phone" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_owner_address">Owner Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_address" id="rdi_owner_address" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_owner_address">Owner Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_address" id="permit_owner_address" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_owner_city">Owner City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_city" id="rdi_owner_city" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_owner_city">Owner City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_city" id="permit_owner_city" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_owner_state">Owner State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_state" id="rdi_owner_state" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_owner_state">Owner State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_state" id="permit_owner_state" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_owner_zip">Owner ZIP</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="rdi_owner_zip" id="rdi_owner_zip" maxlength="100" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_owner_zip">Owner ZIP</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="permit_owner_zip" id="permit_owner_zip" maxlength="100" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -193,28 +193,28 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_size">Size</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_size" id="rdi_size"/>
|
||||
<label class="form-label" for="permit_size">Size</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_size" id="permit_size"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_units">Units</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_units" id="rdi_units"/>
|
||||
<label class="form-label" for="permit_units">Units</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_units" id="permit_units"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_building_type">Building Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_building_type" id="rdi_building_type"/>
|
||||
<label class="form-label" for="permit_building_type">Building Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_building_type" id="permit_building_type"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_work_type">Work Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_work_type" id="rdi_work_type"/>
|
||||
<label class="form-label" for="permit_work_type">Work Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_work_type" id="permit_work_type"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-1 mb-2">
|
||||
<label class="form-label" for="rdi_ct1">CTL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_ct1" id="rdi_ct1"/>
|
||||
<label class="form-label" for="permit_ct1">CTL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_ct1" id="permit_ct1"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -222,18 +222,18 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_ytd_permits">YTD Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_ytd_permits" id="rdi_ytd_permits"/>
|
||||
<label class="form-label" for="permit_ytd_permits">YTD Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_ytd_permits" id="permit_ytd_permits"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_ytd_value">YTD Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_ytd_value" id="rdi_ytd_value"/>
|
||||
<label class="form-label" for="permit_ytd_value">YTD Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_ytd_value" id="permit_ytd_value"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_12mth_prev_permits">12 Month Prev Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_12mth_prev_permits" id="rdi_12mth_prev_permits"/>
|
||||
<label class="form-label" for="permit_12mth_prev_permits">12 Month Prev Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_12mth_prev_permits" id="permit_12mth_prev_permits"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
+2
-2
@@ -104,8 +104,8 @@
|
||||
|
||||
<div class="dropdown-menu mt-2 pt-0 pb-0">
|
||||
|
||||
<a class="dropdown-item ps-2 manage-rdi" href="javascript:void(0);">
|
||||
<i class="bi bi-buildings me-2"/>RDI Records</a>
|
||||
<a class="dropdown-item ps-2 manage-permits" href="javascript:void(0);">
|
||||
<i class="bi bi-buildings me-2"/>Permits</a>
|
||||
|
||||
<a class="dropdown-item ps-2 rdi-consolidation" href="javascript:void(0);">
|
||||
<i class="bi bi-hammer me-2"/>RDI Consolidation</a>
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit RDI Record</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editRDI</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Edit Permit</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">editPermit</xsl:param>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
@@ -27,28 +27,28 @@
|
||||
|
||||
<form action="" name="{$PAGE-NAME}" method="post" id="{$PAGE-NAME}">
|
||||
|
||||
<input type="hidden" name="action" value="RDI.editRDI"/>
|
||||
<input type="hidden" name="action" value="Permits.editPermit"/>
|
||||
<input type="hidden" name="step" value="update"/>
|
||||
|
||||
<input type="hidden" name="rdi_serial" id="rdi_serial" value="{//rdis/record/rdi_serial}"/>
|
||||
<input type="hidden" name="permit_serial" id="permit_serial" value="{//permits/record/permit_serial}"/>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_permit_facts_id">Permit Facts ID</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_permit_facts_id" id="rdi_permit_facts_id" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_permit_facts_id}"/>
|
||||
<label class="form-label" for="permit_permit_facts_id">Permit Facts ID</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_permit_facts_id" id="permit_permit_facts_id" maxlength="100" autocomplete="off" value="{//permits/record/permit_permit_facts_id}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_permit_number">Permit Number</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_permit_number" id="rdi_permit_number" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_permit_number}"/>
|
||||
<label class="form-label" for="permit_permit_number">Permit Number</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_permit_number" id="permit_permit_number" maxlength="100" autocomplete="off" value="{//permits/record/permit_permit_number}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
|
||||
<label class="form-label" for="rdi_entry_date">Entry Date</label>
|
||||
<div class="input-group input-group-sm rdi_entry_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_entry_date" id="rdi_entry_date" maxlength="10" value="{//rdis/record/rdi_entry_date_verbose}"/>
|
||||
<label class="form-label" for="permit_entry_date">Entry Date</label>
|
||||
<div class="input-group input-group-sm permit_entry_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_entry_date" id="permit_entry_date" maxlength="10" value="{//permits/record/permit_entry_date_verbose}"/>
|
||||
<button class="btn btn-sm btn-outline-primary btnEntryDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
@@ -58,9 +58,9 @@
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
|
||||
<label class="form-label" for="rdi_permit_date">Permit Date</label>
|
||||
<div class="input-group input-group-sm rdi_permit_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_permit_date" id="rdi_permit_date" maxlength="10" value="{//rdis/record/rdi_permit_date_verbose}"/>
|
||||
<label class="form-label" for="permit_permit_date">Permit Date</label>
|
||||
<div class="input-group input-group-sm permit_permit_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_permit_date" id="permit_permit_date" maxlength="10" value="{//permits/record/permit_permit_date_verbose}"/>
|
||||
<button class="btn btn-sm btn-outline-primary btnPermitDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
@@ -73,20 +73,20 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_sub_div_name">Subdivision</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_sub_div_name" id="rdi_sub_div_name" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_sub_div_name}"/>
|
||||
<label class="form-label" for="permit_sub_div_name">Subdivision</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_sub_div_name" id="permit_sub_div_name" maxlength="100" autocomplete="off" value="{//permits/record/permit_sub_div_name}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_project_type">Project Type</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="rdi_project_type" id="rdi_project_type" size="1">
|
||||
<label class="form-label" for="permit_project_type">Project Type</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="permit_project_type" id="permit_project_type" size="1">
|
||||
<xsl:apply-templates select="//Constants/ProjectTypes"/>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 mb-3">
|
||||
<label class="form-label" for="rdi_county">County</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="rdi_county" id="rdi_county" size="1">
|
||||
<label class="form-label" for="permit_county">County</label>
|
||||
<select class="form-control form-control-sm search-dropdown" name="permit_county" id="permit_county" size="1">
|
||||
<xsl:apply-templates select="//counties"/>
|
||||
</select>
|
||||
</div>
|
||||
@@ -95,34 +95,34 @@
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-8 mb-3">
|
||||
<label class="form-label" for="rdi_company">Company</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_company" id="rdi_company" autocomplete="off" value="{//rdis/record/rdi_company}"/>
|
||||
<label class="form-label" for="permit_company">Company</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_company" id="permit_company" autocomplete="off" value="{//permits/record/permit_company}"/>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_phone">Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="rdi_phone" id="rdi_phone" autocomplete="off" value="{//rdis/record/rdi_phone}"/>
|
||||
<label class="form-label" for="permit_phone">Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="permit_phone" id="permit_phone" autocomplete="off" value="{//permits/record/permit_phone}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_project_addr">Project Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_project_addr" id="rdi_project_addr" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_project_addr}"/>
|
||||
<label class="form-label" for="permit_project_addr">Project Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_project_addr" id="permit_project_addr" maxlength="100" autocomplete="off" value="{//permits/record/permit_project_addr}"/>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_city">City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_city" id="rdi_city" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_city}"/>
|
||||
<label class="form-label" for="permit_city">City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_city" id="permit_city" maxlength="100" autocomplete="off" value="{//permits/record/permit_city}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_state">State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_state" id="rdi_state" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_state}"/>
|
||||
<label class="form-label" for="permit_state">State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_state" id="permit_state" maxlength="100" autocomplete="off" value="{//permits/record/permit_state}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_zip">ZIP Code</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="rdi_zip" id="rdi_zip" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_zip}"/>
|
||||
<label class="form-label" for="permit_zip">ZIP Code</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="permit_zip" id="permit_zip" maxlength="100" autocomplete="off" value="{//permits/record/permit_zip}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -130,65 +130,65 @@
|
||||
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_project_city">Project City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_project_city" id="rdi_project_city" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_project_city}"/>
|
||||
<label class="form-label" for="permit_project_city">Project City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_project_city" id="permit_project_city" maxlength="100" autocomplete="off" value="{//permits/record/permit_project_city}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_project_state">Project State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_project_state" id="rdi_project_state" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_project_state}"/>
|
||||
<label class="form-label" for="permit_project_state">Project State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_project_state" id="permit_project_state" maxlength="100" autocomplete="off" value="{//permits/record/permit_project_state}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_value">Project Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_value" id="rdi_value" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_value_verbose}"/>
|
||||
<label class="form-label" for="permit_value">Project Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_value" id="permit_value" maxlength="100" autocomplete="off" value="{//permits/record/permit_value_verbose}"/>
|
||||
</div>
|
||||
|
||||
<!-- Empty nodes included -->
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_lot">Lot</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_lot" id="rdi_lot" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_lot}"/>
|
||||
<label class="form-label" for="permit_lot">Lot</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_lot" id="permit_lot" maxlength="100" autocomplete="off" value="{//permits/record/permit_lot}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_dist_ll">District LL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_dist_ll" id="rdi_dist_ll" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_dist_ll}"/>
|
||||
<label class="form-label" for="permit_dist_ll">District LL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_dist_ll" id="permit_dist_ll" maxlength="100" autocomplete="off" value="{//permits/record/permit_dist_ll}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_owner_name">Owner Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_name" id="rdi_owner_name" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_owner_name}"/>
|
||||
<label class="form-label" for="permit_owner_name">Owner Name</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_name" id="permit_owner_name" maxlength="100" autocomplete="off" value="{//permits/record/permit_owner_name}"/>
|
||||
</div>
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_owner_phone">Owner Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="rdi_owner_phone" id="rdi_owner_phone" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_owner_phone}"/>
|
||||
<label class="form-label" for="permit_owner_phone">Owner Phone</label>
|
||||
<input type="text" class="form-control form-control-sm phone-mask" name="permit_owner_phone" id="permit_owner_phone" maxlength="100" autocomplete="off" value="{//permits/record/permit_owner_phone}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-5 mb-3">
|
||||
<label class="form-label" for="rdi_owner_address">Owner Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_address" id="rdi_owner_address" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_owner_address}"/>
|
||||
<label class="form-label" for="permit_owner_address">Owner Address</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_address" id="permit_owner_address" maxlength="100" autocomplete="off" value="{//permits/record/permit_owner_address}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_owner_city">Owner City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_city" id="rdi_owner_city" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_owner_city}"/>
|
||||
<label class="form-label" for="permit_owner_city">Owner City</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_city" id="permit_owner_city" maxlength="100" autocomplete="off" value="{//permits/record/permit_owner_city}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_owner_state">Owner State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_owner_state" id="rdi_owner_state" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_owner_state}"/>
|
||||
<label class="form-label" for="permit_owner_state">Owner State</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_owner_state" id="permit_owner_state" maxlength="100" autocomplete="off" value="{//permits/record/permit_owner_state}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_owner_zip">Owner ZIP</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="rdi_owner_zip" id="rdi_owner_zip" maxlength="100" autocomplete="off" value="{//rdis/record/rdi_owner_zip}"/>
|
||||
<label class="form-label" for="permit_owner_zip">Owner ZIP</label>
|
||||
<input type="text" class="form-control form-control-sm zip-mask" name="permit_owner_zip" id="permit_owner_zip" maxlength="100" autocomplete="off" value="{//permits/record/permit_owner_zip}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -196,28 +196,28 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_size">Size</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_size" id="rdi_size" value="{//rdis/record/rdi_size}"/>
|
||||
<label class="form-label" for="permit_size">Size</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_size" id="permit_size" value="{//permits/record/permit_size}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_units">Units</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_units" id="rdi_units" value="{//rdis/record/rdi_units}"/>
|
||||
<label class="form-label" for="permit_units">Units</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_units" id="permit_units" value="{//permits/record/permit_units}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_building_type">Building Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_building_type" id="rdi_building_type" value="{//rdis/record/rdi_building_type}"/>
|
||||
<label class="form-label" for="permit_building_type">Building Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_building_type" id="permit_building_type" value="{//permits/record/permit_building_type}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_work_type">Work Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_work_type" id="rdi_work_type" value="{//rdis/record/rdi_work_type}"/>
|
||||
<label class="form-label" for="permit_work_type">Work Type</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_work_type" id="permit_work_type" value="{//permits/record/permit_work_type}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-1 mb-2">
|
||||
<label class="form-label" for="rdi_ct1">CTL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_ct1" id="rdi_ct1" value="{//rdis/record/rdi_ct1}"/>
|
||||
<label class="form-label" for="permit_ct1">CTL</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_ct1" id="permit_ct1" value="{//permits/record/permit_ct1}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -225,18 +225,18 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_ytd_permits">YTD Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_ytd_permits" id="rdi_ytd_permits" value="{//rdis/record/rdi_ytd_permits}"/>
|
||||
<label class="form-label" for="permit_ytd_permits">YTD Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_ytd_permits" id="permit_ytd_permits" value="{//permits/record/permit_ytd_permits}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_ytd_value">YTD Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_ytd_value" id="rdi_ytd_value" value="{//rdis/record/rdi_ytd_value}"/>
|
||||
<label class="form-label" for="permit_ytd_value">YTD Value</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_ytd_value" id="permit_ytd_value" value="{//permits/record/permit_ytd_value}"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_12mth_prev_permits">12 Month Prev Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_12mth_prev_permits" id="rdi_12mth_prev_permits" value="{//rdis/record/rdi_12mth_prev_permits}"/>
|
||||
<label class="form-label" for="permit_12mth_prev_permits">12 Month Prev Permits</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_12mth_prev_permits" id="permit_12mth_prev_permits" value="{//permits/record/permit_12mth_prev_permits}"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -269,7 +269,7 @@
|
||||
<xsl:for-each select="ProjectType">
|
||||
<xsl:sort select="."/>
|
||||
<option value="{.}" data-tokens="{.}">
|
||||
<xsl:if test=". = //rdis/record/rdi_project_type">
|
||||
<xsl:if test=". = //permits/record/permit_project_type">
|
||||
<xsl:attribute name="selected"/>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="." />
|
||||
@@ -287,7 +287,7 @@
|
||||
<xsl:for-each select="record">
|
||||
|
||||
<option value="{county_serial}" data-tokens="{county_serial}">
|
||||
<xsl:if test="county_serial = //rdis/record/rdi_county">
|
||||
<xsl:if test="county_serial = //permits/record/permit_county">
|
||||
<xsl:attribute name="selected">selected</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="county_name"/>
|
||||
@@ -6,15 +6,15 @@
|
||||
<!-- Parameters -->
|
||||
|
||||
<xsl:param name="VERSION">1.0</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">RDI Records</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">manageRDI</xsl:param>
|
||||
<xsl:param name="PAGE-TITLE">Permits</xsl:param>
|
||||
<xsl:param name="PAGE-NAME">managePermits</xsl:param>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//rdis/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//rdis/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//rdis/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//rdis/@page"/>
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//permits/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//permits/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//permits/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//permits/@page"/>
|
||||
|
||||
<!-- Main Template -->
|
||||
|
||||
@@ -45,8 +45,8 @@
|
||||
|
||||
<div class="col-lg-4 mb-2">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control autosave" name="find_rdi" id="find_rdi" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_rdi']/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_rdi']/popover_text}" data-bs-html="true" data-bs-custom-class="custom-tooltip">
|
||||
<input type="text" class="form-control autosave" name="find_permit" id="find_permit" maxlength="100" autocomplete="off" placeholder="{//popovers/record[popover_name = 'find_permit']/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_permit']/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">
|
||||
@@ -60,7 +60,7 @@
|
||||
<div class="input-group-text">
|
||||
<i class="bi bi-list-ol"/>
|
||||
</div>
|
||||
<select class="form-select" name="rdis_per_page" id="rdis_per_page">
|
||||
<select class="form-select" name="permits_per_page" id="permits_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
@@ -87,7 +87,7 @@
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 mb-2 btnRefresh">
|
||||
<i class="bi bi-arrow-clockwise me-2"/>Refresh</button>
|
||||
|
||||
<xsl:if test="count(//rdis/record) > 0">
|
||||
<xsl:if test="count(//permits/record) > 0">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 mb-2 btnSelectAll" >
|
||||
<i class="bi bi-check2-square me-2"/>Select All</button>
|
||||
</xsl:if>
|
||||
@@ -119,36 +119,36 @@
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//rdis/record) = 0">
|
||||
<xsl:when test="count(//permits/record) = 0">
|
||||
|
||||
<div class="fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no RDI Records to view...</xsl:text>
|
||||
<xsl:text>There are no Permit Records to view...</xsl:text>
|
||||
</div>
|
||||
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
|
||||
<div class="table-responsive">
|
||||
<div class="table-responsive scrollable">
|
||||
|
||||
<table class="table table-sm table-striped table-hover base-table" id="rdis-table">
|
||||
<table class="table table-sm table-striped table-hover base-table" id="permits-table">
|
||||
|
||||
<thead class="sticky-header" data-theme="{$THEME}">
|
||||
|
||||
<th class="text-center">Select</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_permit_number">Permit Number</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_project_addr">Project Address</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_sub_div_name">Subdivision Name</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_project_type">Project Type</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_company">Company</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_permit_date">Permit Date</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_entry_date">Entry Date</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_permit_number">Permit Number</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_project_addr">Project Address</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_sub_div_name">Subdivision Name</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_project_type">Project Type</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_company">Company</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_permit_date">Permit Date</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_entry_date">Entry Date</th>
|
||||
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<xsl:apply-templates select="//rdis"/>
|
||||
<xsl:apply-templates select="//permits"/>
|
||||
|
||||
</tbody>
|
||||
|
||||
@@ -166,49 +166,49 @@
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Form to Print Selected RDI -->
|
||||
<!-- Form to Print Selected Permit -->
|
||||
|
||||
<form style="display:inline;" id="PrintRDIForm" method="post" action="" target="PrintTab">
|
||||
<form style="display:inline;" id="PrintPermitForm" method="post" action="" target="PrintTab">
|
||||
|
||||
<input type="hidden" name="action" value="print"/>
|
||||
<input type="hidden" name="report" value="Print_Selected_RDIs"/>
|
||||
<input type="hidden" name="selected_rdis" value=""/>
|
||||
<input type="hidden" name="action" value="print"/>
|
||||
<input type="hidden" name="report" value="Print_Selected_Permits"/>
|
||||
<input type="hidden" name="selected_permits" value=""/>
|
||||
|
||||
</form>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for RDI tows -->
|
||||
<!-- Template for Permit tows -->
|
||||
|
||||
<xsl:template match="rdis/record">
|
||||
<xsl:template match="permits/record">
|
||||
|
||||
<tr class="hoverable rdi-row text-nowrap" data-rdi-serial="{rdi_serial}">
|
||||
<tr class="hoverable permit-row text-nowrap" data-permit-serial="{permit_serial}">
|
||||
|
||||
<td class="checkbox text-center selection-checkboxes selection-area">
|
||||
<input type="checkbox" class="selection-checkbox selection-area" name="selected[]" value="{rdi_serial}">
|
||||
<input type="checkbox" class="selection-checkbox selection-area" name="selected[]" value="{permit_serial}">
|
||||
</input>
|
||||
<span class="selection-area user-select-none"> </span>
|
||||
</td>
|
||||
<td class="rdi_permit_number">
|
||||
<xsl:value-of select="rdi_permit_number"/>
|
||||
<td class="permit_permit_number">
|
||||
<xsl:value-of select="permit_permit_number"/>
|
||||
</td>
|
||||
<td class="rdi_project_addr text-nowrap">
|
||||
<xsl:value-of select="rdi_project_addr"/>
|
||||
<td class="permit_project_addr text-nowrap">
|
||||
<xsl:value-of select="permit_project_addr"/>
|
||||
</td>
|
||||
<td class="rdi_sub_div_name text-nowrap">
|
||||
<xsl:value-of select="rdi_sub_div_name"/>
|
||||
<td class="permit_sub_div_name text-nowrap">
|
||||
<xsl:value-of select="permit_sub_div_name"/>
|
||||
</td>
|
||||
<td class="rdi_project_type text-nowrap">
|
||||
<xsl:value-of select="rdi_project_type"/>
|
||||
<td class="permit_project_type text-nowrap">
|
||||
<xsl:value-of select="permit_project_type"/>
|
||||
</td>
|
||||
<td class="rdi_company">
|
||||
<xsl:value-of select="rdi_company"/>
|
||||
<td class="permit_company">
|
||||
<xsl:value-of select="permit_company"/>
|
||||
</td>
|
||||
<td class="rdi_permit_date">
|
||||
<xsl:value-of select="rdi_permit_date_verbose"/>
|
||||
<td class="permit_permit_date">
|
||||
<xsl:value-of select="permit_permit_date_verbose"/>
|
||||
</td>
|
||||
<td class="rdi_entry_date">
|
||||
<xsl:value-of select="rdi_entry_date_verbose"/>
|
||||
<td class="permit_entry_date">
|
||||
<xsl:value-of select="permit_entry_date_verbose"/>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
@@ -11,10 +11,10 @@
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//rdis/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//rdis/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//rdis/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//rdis/@page"/>
|
||||
<xsl:variable name="PAGINATION_COUNT" select="//permits/@count"/>
|
||||
<xsl:variable name="PAGINATION_START" select="//permits/@start"/>
|
||||
<xsl:variable name="PAGINATION_END" select="//permits/@end"/>
|
||||
<xsl:variable name="PAGINATION_PAGE" select="//permits/@page"/>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
||||
@@ -43,13 +43,13 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-3">
|
||||
<label class="form-label" for="rdi_company">Builder/Company</label>
|
||||
<input type="text" class="form-control form-control-sm" name="rdi_company" id="rdi_company" maxlength="120" autocomplete="off" autofocus="autofocus"/>
|
||||
<label class="form-label" for="permit_company">Builder/Company</label>
|
||||
<input type="text" class="form-control form-control-sm" name="permit_company" id="permit_company" maxlength="120" autocomplete="off" autofocus="autofocus"/>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-1 mb-3">
|
||||
<label class="form-label" for="rdi_and_or">And/Or</label>
|
||||
<select class="form-select form-select-sm" name="rdi_and_or" id="rdi_and_or" size="1">
|
||||
<label class="form-label" for="permit_and_or">And/Or</label>
|
||||
<select class="form-select form-select-sm" name="permit_and_or" id="permit_and_or" size="1">
|
||||
<option value="and">And</option>
|
||||
<option value="or">Or</option>
|
||||
</select>
|
||||
@@ -60,36 +60,36 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_entry_start_date">Entry Start Date</label>
|
||||
<div class="input-group input-group-sm rdi_entry_start_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_entry_start_date" id="rdi_entry_start_date" autocomplete="off" value=""/>
|
||||
<label class="form-label" for="permit_entry_start_date">Entry Start Date</label>
|
||||
<div class="input-group input-group-sm permit_entry_start_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_entry_start_date" id="permit_entry_start_date" autocomplete="off" value=""/>
|
||||
<button class="btn btn-sm btn-outline-primary btnEntryStartDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_entry_end_date">Entry End Date</label>
|
||||
<div class="input-group input-group-sm rdi_entry_end_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_entry_end_date" id="rdi_entry_end_date" autocomplete="off" value=""/>
|
||||
<label class="form-label" for="permit_entry_end_date">Entry End Date</label>
|
||||
<div class="input-group input-group-sm permit_entry_end_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_entry_end_date" id="permit_entry_end_date" autocomplete="off" value=""/>
|
||||
<button class="btn btn-sm btn-outline-primary btnEntryEndDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_permit_start_date">Permit Start Date</label>
|
||||
<div class="input-group input-group-sm rdi_permit_start_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_permit_start_date" id="rdi_permit_start_date" autocomplete="off" value=""/>
|
||||
<label class="form-label" for="permit_permit_start_date">Permit Start Date</label>
|
||||
<div class="input-group input-group-sm permit_permit_start_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_permit_start_date" id="permit_permit_start_date" autocomplete="off" value=""/>
|
||||
<button class="btn btn-sm btn-outline-primary btnPermitStartDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-2 mb-3">
|
||||
<label class="form-label" for="rdi_permit_end_date">Permit End Date</label>
|
||||
<div class="input-group input-group-sm rdi_permit_end_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="rdi_permit_end_date" id="rdi_permit_end_date" autocomplete="off"/>
|
||||
<label class="form-label" for="permit_permit_end_date">Permit End Date</label>
|
||||
<div class="input-group input-group-sm permit_permit_end_date">
|
||||
<input type="text" class="form-control form-control-sm date-mask" name="permit_permit_end_date" id="permit_permit_end_date" autocomplete="off"/>
|
||||
<button class="btn btn-sm btn-outline-primary btnPermitEndDateCalendar" type="button" data-bs-toggle="tooltip" data-bs-title="Calendar" data-bs-custom-class="custom-tooltip" tabindex="-1">
|
||||
<i class="bi bi-calendar3"/>
|
||||
</button>
|
||||
@@ -119,7 +119,7 @@
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//rdis/record) > 0">
|
||||
<xsl:when test="count(//permits/record) > 0">
|
||||
|
||||
<div class="card mt-3">
|
||||
|
||||
@@ -154,7 +154,7 @@
|
||||
<div class="input-group-text">
|
||||
<i class="bi bi-list-ol"/>
|
||||
</div>
|
||||
<select class="form-select" name="rdis_per_page" id="rdis_per_page">
|
||||
<select class="form-select" name="permits_per_page" id="permits_per_page">
|
||||
<option value="20">20</option>
|
||||
<option value="40">40</option>
|
||||
<option value="60">60</option>
|
||||
@@ -170,7 +170,7 @@
|
||||
|
||||
<div class="buttons mt-1 mb-1">
|
||||
|
||||
<xsl:if test="count(//rdis/record) > 0">
|
||||
<xsl:if test="count(//permits/record) > 0">
|
||||
<button type="button" class="btn btn-sm btn-primary me-2 mb-2 btnSelectAll">
|
||||
<i class="bi bi-check2-square me-2"/>Select All</button>
|
||||
</xsl:if>
|
||||
@@ -239,7 +239,7 @@
|
||||
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="count(//rdis/record) = 0">
|
||||
<xsl:when test="count(//permits/record) = 0">
|
||||
|
||||
<div class="filter-error fs-5 text-danger fw-bold fst-italic mt-3 mb-1">
|
||||
<xsl:text>There are no Permits to view...</xsl:text>
|
||||
@@ -255,25 +255,25 @@
|
||||
|
||||
<div class="table-responsive scrollable">
|
||||
|
||||
<table class="table table-sm table-striped table-hover base-table" id="rdis-table">
|
||||
<table class="table table-sm table-striped table-hover base-table" id="permits-table">
|
||||
|
||||
<thead class="sticky-header" data-theme="{$THEME}">
|
||||
|
||||
<th class="text-center" >Select</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_company" >Company</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_permit_count">Permits</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_value" >Value</th>
|
||||
<th class="sortable text-nowrap text-center" data-order-by="rdi_project_type">Current <br />Year YTD</th>
|
||||
<th class="sortable text-nowrap text-center" data-order-by="rdi_company" >Current<br /> YTD Value</th>
|
||||
<th class="text-nowrap text-center" >Last <br /> 12 Months</th>
|
||||
<th class="sortable text-nowrap" data-order-by="rdi_address" >Address</th>
|
||||
<th class="text-nowrap" >Phone</th>
|
||||
<th class="text-center" >Select</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_company" >Company</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_permit_count">Permits</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_value" >Value</th>
|
||||
<th class="sortable text-nowrap text-center" data-order-by="permit_project_type">Current <br />Year YTD</th>
|
||||
<th class="sortable text-nowrap text-center" data-order-by="permit_company" >Current<br /> YTD Value</th>
|
||||
<th class="text-nowrap text-center" >Last <br /> 12 Months</th>
|
||||
<th class="sortable text-nowrap" data-order-by="permit_address" >Address</th>
|
||||
<th class="text-nowrap" >Phone</th>
|
||||
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<xsl:apply-templates select="//rdis"/>
|
||||
<xsl:apply-templates select="//permits"/>
|
||||
|
||||
</tbody>
|
||||
|
||||
@@ -327,7 +327,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Form to Print All RDI -->
|
||||
<!-- Form to Print All Permits -->
|
||||
|
||||
<form style="display:inline;" id="PrintAllPermitsByBuilderPDFForm" method="post" action="" target="PrintTab">
|
||||
|
||||
@@ -341,49 +341,49 @@
|
||||
|
||||
<form style="display:inline;" id="PrintSelectedPermitsByBuilderForm" method="post" action="" target="PrintTab">
|
||||
|
||||
<input type="hidden" name="action" value="print"/>
|
||||
<input type="hidden" name="report" value="Print_Selected_PermitsByBuilder"/>
|
||||
<input type="hidden" name="selected_permits" value=""/>
|
||||
<input type="hidden" name="action" value="print"/>
|
||||
<input type="hidden" name="report" value="Print_Selected_PermitsByBuilder"/>
|
||||
<input type="hidden" name="selected_permits" value=""/>
|
||||
<input type="hidden" name="subscription_serial" value="{{//subscriptions/record/subscription_serial}}"/>
|
||||
|
||||
</form>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Template for RDI rows -->
|
||||
<!-- Template for Permits rows -->
|
||||
|
||||
<xsl:template match="rdis/record">
|
||||
<xsl:template match="permits/record">
|
||||
|
||||
<tr class="hoverable rdi-row text-nowrap" data-rdi-serial="{rdi_serial}">
|
||||
<tr class="hoverable permit-row text-nowrap" data-permit-serial="{permit_serial}">
|
||||
|
||||
<td class="checkbox text-center selection-checkboxes selection-area">
|
||||
<input type="checkbox" class="selection-checkbox selection-area" name="selected[]" value="{rdi_serial}">
|
||||
<input type="checkbox" class="selection-checkbox selection-area" name="selected[]" value="{permit_serial}">
|
||||
</input>
|
||||
<span class="selection-area user-select-none"> </span>
|
||||
</td>
|
||||
|
||||
<td class="rdi_company filterable">
|
||||
<xsl:value-of select="rdi_company"/>
|
||||
<td class="permit_company filterable">
|
||||
<xsl:value-of select="permit_company"/>
|
||||
</td>
|
||||
|
||||
<td class="rdi_permit_count text-nowrap filterable">
|
||||
<xsl:value-of select="rdi_permit_count"/>
|
||||
<td class="permit_permit_count text-nowrap filterable">
|
||||
<xsl:value-of select="permit_permit_count"/>
|
||||
</td>
|
||||
|
||||
<td class="rdi_value text-nowrap filterable">
|
||||
<xsl:value-of select="concat('$', format-number(rdi_value_verbose, '###,###'))"/>
|
||||
<td class="permit_value text-nowrap filterable">
|
||||
<xsl:value-of select="concat('$', format-number(permit_value_verbose, '###,###'))"/>
|
||||
</td>
|
||||
|
||||
<td class="rdi_ytd_permits text-nowrap filterable text-center">
|
||||
<xsl:value-of select="rdi_ytd_permits"/>
|
||||
<td class="ytd_permits text-nowrap filterable text-center">
|
||||
<xsl:value-of select="ytd_permits"/>
|
||||
</td>
|
||||
|
||||
<td class="rdi_ytd_value filterable text-center">
|
||||
<xsl:value-of select="concat('$', format-number(rdi_ytd_value, '###,###'))"/>
|
||||
<td class="permit_ytd_value filterable text-center">
|
||||
<xsl:value-of select="concat('$', format-number(ytd_value, '###,###'))"/>
|
||||
</td>
|
||||
|
||||
<td class="rdi_12mth_prev_permits filterable text-center">
|
||||
<xsl:value-of select="rdi_12mth_prev_permits"/>
|
||||
<td class="permit_12mth_prev_permits filterable text-center">
|
||||
<xsl:value-of select="previous_ytd_permits"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="permits_trend = 'up'">
|
||||
<i class="bi bi-arrow-up text-success"></i>
|
||||
@@ -397,12 +397,12 @@
|
||||
</xsl:choose>
|
||||
</td>
|
||||
|
||||
<td class="rdi_entry_date filterable">
|
||||
<xsl:value-of select="concat(rdi_address, ' ', rdi_city, ', ', rdi_state, ' ', rdi_zip)"/>
|
||||
<td class="permit_address filterable">
|
||||
<xsl:value-of select="concat(permit_address, ' ', permit_city, ', ', permit_state, ' ', permit_zip)"/>
|
||||
</td>
|
||||
|
||||
<td class="rdi_phone filterable">
|
||||
<xsl:value-of select="rdi_phone_verbose"/>
|
||||
<td class="permit_phone filterable">
|
||||
<xsl:value-of select="permit_phone_verbose"/>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
Reference in New Issue
Block a user