kopia lustrzana https://github.com/magicbug/Cloudlog
Merge pull request #937 from AndreasK79/quick_lookup
[Quick lookup] New feature to quickly check worked/confirmed on band/…pull/946/head
commit
961f766d65
|
@ -16,14 +16,38 @@ class Lookup extends CI_Controller {
|
|||
$this->load->model('user_model');
|
||||
if(!$this->user_model->authorize(2)) { $this->session->set_flashdata('notice', 'You\'re not allowed to do that!'); redirect('dashboard'); }
|
||||
}
|
||||
|
||||
|
||||
public function index()
|
||||
{
|
||||
$data['page_title'] = "Quick Lookup";
|
||||
$this->load->model('logbook_model');
|
||||
$data['dxcc'] = $this->logbook_model->fetchDxcc();
|
||||
$data['iota'] = $this->logbook_model->fetchIota();
|
||||
$this->load->view('lookup/index', $data);
|
||||
}
|
||||
|
||||
public function search() {
|
||||
$CI =& get_instance();
|
||||
$CI->load->model('Stations');
|
||||
$station_id = $CI->Stations->find_active();
|
||||
|
||||
$type = xss_clean($this->input->post('type'));
|
||||
$dxcc = xss_clean($this->input->post('dxcc'));
|
||||
$was = xss_clean($this->input->post('was'));
|
||||
$cqz = xss_clean($this->input->post('cqz'));
|
||||
$sota = xss_clean($this->input->post('sota'));
|
||||
$grid = xss_clean($this->input->post('grid'));
|
||||
$iota = xss_clean($this->input->post('iota'));
|
||||
|
||||
$this->load->model('lookup_model');
|
||||
|
||||
$data['bands'] = $this->lookup_model->get_Worked_Bands($station_id);
|
||||
$data['result'] = $this->lookup_model->getSearchResult($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota, $data['bands']);
|
||||
$this->load->view('lookup/result', $data);
|
||||
}
|
||||
|
||||
public function scp($call) {
|
||||
|
||||
|
||||
if($call) {
|
||||
$uppercase_callsign = strtoupper($call);
|
||||
}
|
||||
|
@ -78,7 +102,7 @@ class Lookup extends CI_Controller {
|
|||
{
|
||||
echo " " . $strCall . " ";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,224 @@
|
|||
<?php
|
||||
|
||||
class Lookup_model extends CI_Model{
|
||||
|
||||
function __construct(){
|
||||
// Call the Model constructor
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
function getSearchResult($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota, $bands){
|
||||
$modes = $this->get_worked_modes($station_id);
|
||||
|
||||
return $this->getResultFromDatabase($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota, $modes, $bands);
|
||||
}
|
||||
|
||||
function getResultFromDatabase($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota, $modes, $bands) {
|
||||
// Creating an empty array with all the bands and modes from the database
|
||||
foreach ($modes as $mode) {
|
||||
foreach ($bands as $band) {
|
||||
$resultArray[$mode][$band] = '-';
|
||||
}
|
||||
}
|
||||
|
||||
// Populating array with worked band/mode combinations
|
||||
$worked = $this->getQueryData($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota,'worked');
|
||||
foreach ($worked as $w) {
|
||||
$resultArray[$w->col_mode][$w->col_band] = 'W';
|
||||
}
|
||||
|
||||
// Populating array with confirmed band/mode combinations
|
||||
$confirmed = $this->getQueryData($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota,'confirmed');
|
||||
foreach ($confirmed as $c) {
|
||||
$resultArray[$c->col_mode][$c->col_band] = 'C';
|
||||
}
|
||||
|
||||
return $resultArray;
|
||||
}
|
||||
|
||||
/*
|
||||
* Builds query depending on what we are searching for
|
||||
*/
|
||||
function getQueryData($station_id, $type, $dxcc, $was, $cqz, $sota, $grid, $iota, $confirmedtype) {
|
||||
// If user inputs longer grid than 4 chars, we use only the first 4
|
||||
if (strlen($grid) > 4) {
|
||||
$fixedgrid = substr($grid, 0, 4);
|
||||
}
|
||||
else {
|
||||
$fixedgrid = $grid;
|
||||
}
|
||||
|
||||
$sql = "SELECT distinct col_band, lower(col_mode) as col_mode FROM " . $this->config->item('table_name') . " thcv";
|
||||
|
||||
$sql .= " where station_id = " . $station_id;
|
||||
|
||||
$sql .= " and coalesce(col_submode, '') = ''";
|
||||
|
||||
$sql .= " and col_prop_mode != 'SAT'";
|
||||
|
||||
switch ($type) {
|
||||
case 'dxcc': $sql .= " and col_dxcc = " . $dxcc; break;
|
||||
case 'iota': $sql .= " and col_iota = '" . $iota . "'"; break;
|
||||
case 'grid': $sql .= " and (col_gridsquare like '%" . $fixedgrid . "%' or col_vucc_grids like '%" . $fixedgrid . "%')" ; break;
|
||||
case 'cqz': $sql .= " and col_cqz = " . $cqz; break;
|
||||
case 'was': $sql .= " and col_state = '" . $was . "' and COL_DXCC in ('291', '6', '110')";; break;
|
||||
case 'sota': $sql .= " and col_sota_ref = '" . $sota . "'"; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
if ($confirmedtype == 'confirmed') {
|
||||
$sql .= " and (col_qsl_rcvd = 'Y' or col_lotw_qsl_rcvd = 'Y')";
|
||||
}
|
||||
|
||||
$sql .= " union SELECT distinct col_band, lower(col_submode) as col_mode FROM " . $this->config->item('table_name') . " thcv";
|
||||
|
||||
$sql .= " where station_id = " . $station_id;
|
||||
|
||||
$sql .= " and coalesce(col_submode, '') <> ''";
|
||||
|
||||
$sql .= " and col_prop_mode != 'SAT'";
|
||||
|
||||
switch ($type) {
|
||||
case 'dxcc': $sql .= " and col_dxcc = " . $dxcc; break;
|
||||
case 'iota': $sql .= " and col_iota = '" . $iota . "'"; break;
|
||||
case 'grid': $sql .= " and (col_gridsquare like '%" . $fixedgrid . "%' or col_vucc_grids like '%" . $fixedgrid . "%')" ; break;
|
||||
case 'cqz': $sql .= " and col_cqz = " . $cqz; break;
|
||||
case 'was': $sql .= " and col_state = '" . $was . "' and COL_DXCC in ('291', '6', '110')";; break;
|
||||
case 'sota': $sql .= " and col_sota_ref = '" . $sota . "'"; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
if ($confirmedtype == 'confirmed') {
|
||||
$sql .= " and (col_qsl_rcvd = 'Y' or col_lotw_qsl_rcvd = 'Y')";
|
||||
}
|
||||
|
||||
$sql .= " union SELECT distinct 'SAT' col_band, lower(col_mode) as col_mode FROM " . $this->config->item('table_name') . " thcv";
|
||||
|
||||
$sql .= " where station_id = " . $station_id;
|
||||
|
||||
$sql .= " and coalesce(col_submode, '') = ''";
|
||||
|
||||
$sql .= " and col_prop_mode = 'SAT'";
|
||||
|
||||
switch ($type) {
|
||||
case 'dxcc': $sql .= " and col_dxcc = " . $dxcc; break;
|
||||
case 'iota': $sql .= " and col_iota = '" . $iota . "'"; break;
|
||||
case 'grid': $sql .= " and (col_gridsquare like '%" . $fixedgrid . "%' or col_vucc_grids like '%" . $fixedgrid . "%')" ; break;
|
||||
case 'cqz': $sql .= " and col_cqz = " . $cqz; break;
|
||||
case 'was': $sql .= " and col_state = '" . $was . "' and COL_DXCC in ('291', '6', '110')";; break;
|
||||
case 'sota': $sql .= " and col_sota_ref = '" . $sota . "'"; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
if ($confirmedtype == 'confirmed') {
|
||||
$sql .= " and (col_qsl_rcvd = 'Y' or col_lotw_qsl_rcvd = 'Y')";
|
||||
}
|
||||
|
||||
$sql .= " union SELECT distinct 'SAT' col_band, lower(col_submode) as col_mode FROM " . $this->config->item('table_name') . " thcv";
|
||||
|
||||
$sql .= " where station_id = " . $station_id;
|
||||
|
||||
$sql .= " and coalesce(col_submode, '') <> ''";
|
||||
|
||||
$sql .= " and col_prop_mode = 'SAT'";
|
||||
|
||||
switch ($type) {
|
||||
case 'dxcc': $sql .= " and col_dxcc = " . $dxcc; break;
|
||||
case 'iota': $sql .= " and col_iota = '" . $iota . "'"; break;
|
||||
case 'grid': $sql .= " and (col_gridsquare like '%" . $fixedgrid . "%' or col_vucc_grids like '%" . $fixedgrid . "%')" ; break;
|
||||
case 'cqz': $sql .= " and col_cqz = " . $cqz; break;
|
||||
case 'was': $sql .= " and col_state = '" . $was . "' and COL_DXCC in ('291', '6', '110')";; break;
|
||||
case 'sota': $sql .= " and col_sota_ref= '" . $sota . "'"; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
if ($confirmedtype == 'confirmed') {
|
||||
$sql .= " and (col_qsl_rcvd = 'Y' or col_lotw_qsl_rcvd = 'Y')";
|
||||
}
|
||||
|
||||
$query = $this->db->query($sql);
|
||||
|
||||
return $query->result();
|
||||
}
|
||||
|
||||
public $bandslots = array("160m" => 0,
|
||||
"80m" => 0,
|
||||
"60m" => 0,
|
||||
"40m" => 0,
|
||||
"30m" => 0,
|
||||
"20m" => 0,
|
||||
"17m" => 0,
|
||||
"15m" => 0,
|
||||
"12m" => 0,
|
||||
"10m" => 0,
|
||||
"6m" => 0,
|
||||
"4m" => 0,
|
||||
"2m" => 0,
|
||||
"70cm" => 0,
|
||||
"23cm" => 0,
|
||||
"13cm" => 0,
|
||||
"9cm" => 0,
|
||||
"6cm" => 0,
|
||||
"3cm" => 0,
|
||||
"1.25cm" => 0,
|
||||
"SAT" => 0,
|
||||
);
|
||||
|
||||
/*
|
||||
* Get's the worked bands from the log
|
||||
*/
|
||||
function get_worked_bands($station_id)
|
||||
{
|
||||
// get all worked slots from database
|
||||
$data = $this->db->query(
|
||||
"SELECT distinct LOWER(`COL_BAND`) as `COL_BAND` FROM `" . $this->config->item('table_name') . "` WHERE station_id = " . $station_id . " AND COL_PROP_MODE != \"SAT\""
|
||||
);
|
||||
$worked_slots = array();
|
||||
foreach ($data->result() as $row) {
|
||||
array_push($worked_slots, $row->COL_BAND);
|
||||
}
|
||||
|
||||
$SAT_data = $this->db->query(
|
||||
"SELECT distinct LOWER(`COL_PROP_MODE`) as `COL_PROP_MODE` FROM `" . $this->config->item('table_name') . "` WHERE station_id = " . $station_id . " AND COL_PROP_MODE = \"SAT\""
|
||||
);
|
||||
|
||||
foreach ($SAT_data->result() as $row) {
|
||||
array_push($worked_slots, strtoupper($row->COL_PROP_MODE));
|
||||
}
|
||||
|
||||
// bring worked-slots in order of defined $bandslots
|
||||
$results = array();
|
||||
foreach (array_keys($this->bandslots) as $slot) {
|
||||
if (in_array($slot, $worked_slots)) {
|
||||
array_push($results, $slot);
|
||||
}
|
||||
}
|
||||
return $results;
|
||||
}
|
||||
|
||||
/*
|
||||
* Get's the worked modes from the log
|
||||
*/
|
||||
function get_worked_modes($station_id)
|
||||
{
|
||||
// get all worked modes from database
|
||||
$data = $this->db->query(
|
||||
"SELECT distinct LOWER(`COL_MODE`) as `COL_MODE` FROM `" . $this->config->item('table_name') . "` WHERE station_id = " . $station_id . " order by COL_MODE ASC"
|
||||
);
|
||||
$results = array();
|
||||
foreach ($data->result() as $row) {
|
||||
array_push($results, $row->COL_MODE);
|
||||
}
|
||||
|
||||
$data = $this->db->query(
|
||||
"SELECT distinct LOWER(`COL_SUBMODE`) as `COL_SUBMODE` FROM `" . $this->config->item('table_name') . "` WHERE station_id = " . $station_id . " and coalesce(COL_SUBMODE, '') <> '' order by COL_SUBMODE ASC"
|
||||
);
|
||||
foreach ($data->result() as $row) {
|
||||
if (!in_array($row, $results)) {
|
||||
array_push($results, $row->COL_SUBMODE);
|
||||
}
|
||||
}
|
||||
|
||||
return $results;
|
||||
}
|
||||
}
|
|
@ -141,6 +141,103 @@ $('[data-fancybox]').fancybox({
|
|||
}
|
||||
});
|
||||
|
||||
// Here we capture ALT-L to invoice the Quick lookup
|
||||
document.onkeyup = function(e) {
|
||||
// ALT-W wipe
|
||||
if (e.altKey && e.which == 76) {
|
||||
spawnLookupModal();
|
||||
}
|
||||
};
|
||||
|
||||
// This displays the dialog with the form and it's where the resulttable is displayed
|
||||
function spawnLookupModal() {
|
||||
$.ajax({
|
||||
url: base_url + 'index.php/lookup',
|
||||
type: 'post',
|
||||
success: function (html) {
|
||||
BootstrapDialog.show({
|
||||
title: 'Quick lookup',
|
||||
size: BootstrapDialog.SIZE_WIDE,
|
||||
cssClass: 'lookup-dialog',
|
||||
nl2br: false,
|
||||
message: html,
|
||||
onshown: function(dialog) {
|
||||
$('#quicklookuptype').change(function(){
|
||||
var type = $('#quicklookuptype').val();
|
||||
if (type == "dxcc") {
|
||||
$('#quicklookupdxcc').show();
|
||||
$('#quicklookupiota').hide();
|
||||
$('#quicklookupcqz').hide();
|
||||
$('#quicklookupwas').hide();
|
||||
$('#quicklookuptext').hide();
|
||||
} else if (type == "iota") {
|
||||
$('#quicklookupiota').show();
|
||||
$('#quicklookupdxcc').hide();
|
||||
$('#quicklookupcqz').hide();
|
||||
$('#quicklookupwas').hide();
|
||||
$('#quicklookuptext').hide();
|
||||
} else if (type == "grid") {
|
||||
$('#quicklookuptext').show();
|
||||
$('#quicklookupiota').hide();
|
||||
$('#quicklookupdxcc').hide();
|
||||
$('#quicklookupcqz').hide();
|
||||
$('#quicklookupwas').hide();
|
||||
} else if (type == "sota") {
|
||||
$('#quicklookuptext').show();
|
||||
$('#quicklookupiota').hide();
|
||||
$('#quicklookupdxcc').hide();
|
||||
$('#quicklookupcqz').hide();
|
||||
$('#quicklookupwas').hide();
|
||||
} else if (type == "cqz") {
|
||||
$('#quicklookupcqz').show();
|
||||
$('#quicklookupiota').hide();
|
||||
$('#quicklookupdxcc').hide();
|
||||
$('#quicklookupwas').hide();
|
||||
$('#quicklookuptext').hide();
|
||||
} else if (type == "was") {
|
||||
$('#quicklookupwas').show();
|
||||
$('#quicklookupcqz').hide();
|
||||
$('#quicklookupiota').hide();
|
||||
$('#quicklookupdxcc').hide();
|
||||
$('#quicklookuptext').hide();
|
||||
}
|
||||
});
|
||||
},
|
||||
buttons: [{
|
||||
label: 'Close',
|
||||
action: function (dialogItself) {
|
||||
dialogItself.close();
|
||||
}
|
||||
}]
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// This function executes the call to the backend for fetching queryresult and displays the table in the dialog
|
||||
function getLookupResult() {
|
||||
$(".ld-ext-right").addClass('running');
|
||||
$(".ld-ext-right").prop('disabled', true);
|
||||
$.ajax({
|
||||
url: base_url + 'index.php/lookup/search',
|
||||
type: 'post',
|
||||
data: {
|
||||
type: $('#quicklookuptype').val(),
|
||||
dxcc: $('#quicklookupdxcc').val(),
|
||||
was: $('#quicklookupwas').val(),
|
||||
grid: $('#quicklookuptext').val(),
|
||||
cqz: $('#quicklookupcqz').val(),
|
||||
iota: $('#quicklookupiota').val(),
|
||||
sota: $('#quicklookuptext').val(),
|
||||
},
|
||||
success: function (html) {
|
||||
$('#lookupresulttable').html(html);
|
||||
$(".ld-ext-right").removeClass('running');
|
||||
$(".ld-ext-right").prop('disabled', false);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<?php if ($this->uri->segment(1) == "map" && $this->uri->segment(2) == "custom") { ?>
|
||||
|
|
|
@ -29,10 +29,8 @@
|
|||
<link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>assets/plugins/quill/quill.snow.css" />
|
||||
<?php } ?>
|
||||
|
||||
<?php if ($this->uri->segment(1) == "qrz" || $this->uri->segment(1) == "accumulated" || $this->uri->segment(1) == "timeplotter") { ?>
|
||||
<link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>assets/css/loading.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>assets/css/ldbtn.min.css" />
|
||||
<?php } ?>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>assets/css/buttons.dataTables.min.css"/>
|
||||
|
||||
|
@ -147,7 +145,7 @@
|
|||
|
||||
<a class="dropdown-item" href="<?php echo site_url('update');?>" title="Update Country Files"><i class="fas fa-sync"></i> Update Country Files</a>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</li>
|
||||
<?php } ?>
|
||||
|
@ -183,7 +181,7 @@
|
|||
<a class="dropdown-item" href="<?php echo site_url('user/edit')."/".$this->session->userdata('user_id'); ?>" title="Account"><i class="fas fa-user"></i> Account</a>
|
||||
|
||||
<a class="dropdown-item" href="<?php echo site_url('station');?>" title="Manage station locations"><i class="fas fa-home"></i> Station Locations</a>
|
||||
|
||||
|
||||
<div class="dropdown-divider"></div>
|
||||
|
||||
<a class="dropdown-item" href="<?php echo site_url('adif');?>" title="Amateur Data Interchange Format (ADIF) import / export"><i class="fas fa-sync"></i> ADIF Import / Export</a>
|
||||
|
|
|
@ -0,0 +1,97 @@
|
|||
<form method="post" class="form-inline">
|
||||
<select id="quicklookuptype" name="type" class="form-control custom-select">
|
||||
<option value="cqz">CQ Zone</option>
|
||||
<option value="dxcc">DXCC</option>
|
||||
<option value="grid">Gridsquare</option>
|
||||
<option value="iota">IOTA</option>
|
||||
<option value="sota">SOTA</option>
|
||||
<option value="was">US State</option>
|
||||
</select>
|
||||
<div> </div>
|
||||
<input style="display:none" class="form-control input-group-sm" id="quicklookuptext" type="text" name="searchfield" placeholder="" aria-label="Search">
|
||||
<select style="display:none" class="form-control custom-select" id="quicklookupdxcc" name="dxcc" required>
|
||||
|
||||
<?php
|
||||
foreach($dxcc as $d){
|
||||
echo '<option value=' . $d->adif . '>' . $d->prefix . ' - ' . ucwords(strtolower(($d->name))) . '</option>';
|
||||
}
|
||||
?>
|
||||
|
||||
</select>
|
||||
|
||||
<select class="form-control custom-select" id="quicklookupcqz" name="cqz" required>
|
||||
<?php
|
||||
for ($i = 1; $i<=40; $i++) {
|
||||
echo '<option value="'. $i . '">'. $i .'</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
|
||||
<select style="display:none" class="form-control custom-select" id="quicklookupwas" name="was">
|
||||
<option value="AL">Alabama (AL)</option>
|
||||
<option value="AK">Alaska (AK)</option>
|
||||
<option value="AZ">Arizona (AZ)</option>
|
||||
<option value="AR">Arkansas (AR)</option>
|
||||
<option value="CA">California (CA)</option>
|
||||
<option value="CO">Colorado (CO)</option>
|
||||
<option value="CT">Connecticut (CT)</option>
|
||||
<option value="DE">Delaware (DE)</option>
|
||||
<option value="DC">District Of Columbia (DC)</option>
|
||||
<option value="FL">Florida (FL)</option>
|
||||
<option value="GA">Georgia (GA)</option>
|
||||
<option value="HI">Hawaii (HI)</option>
|
||||
<option value="ID">Idaho (ID)</option>
|
||||
<option value="IL">Illinois (IL)</option>
|
||||
<option value="IN">Indiana (IN)</option>
|
||||
<option value="IA">Iowa (IA)</option>
|
||||
<option value="KS">Kansas (KS)</option>
|
||||
<option value="KY">Kentucky (KY)</option>
|
||||
<option value="LA">Louisiana (LA)</option>
|
||||
<option value="ME">Maine (ME)</option>
|
||||
<option value="MD">Maryland (MD)</option>
|
||||
<option value="MA">Massachusetts (MA)</option>
|
||||
<option value="MI">Michigan (MI)</option>
|
||||
<option value="MN">Minnesota (MN)</option>
|
||||
<option value="MS">Mississippi (MS)</option>
|
||||
<option value="MO">Missouri (MO)</option>
|
||||
<option value="MT">Montana (MT)</option>
|
||||
<option value="NE">Nebraska (NE)</option>
|
||||
<option value="NV">Nevada (NV)</option>
|
||||
<option value="NH">New Hampshire (NH)</option>
|
||||
<option value="NJ">New Jersey (NJ)</option>
|
||||
<option value="NM">New Mexico (NM)</option>
|
||||
<option value="NY">New York (NY)</option>
|
||||
<option value="NC">North Carolina (NC)</option>
|
||||
<option value="ND">North Dakota (ND)</option>
|
||||
<option value="OH">Ohio (OH)</option>
|
||||
<option value="OK">Oklahoma (OK)</option>
|
||||
<option value="OR">Oregon (OR)</option>
|
||||
<option value="PA">Pennsylvania (PA)</option>
|
||||
<option value="RI">Rhode Island (RI)</option>
|
||||
<option value="SC">South Carolina (SC)</option>
|
||||
<option value="SD">South Dakota (SD)</option>
|
||||
<option value="TN">Tennessee (TN)</option>
|
||||
<option value="TX">Texas (TX)</option>
|
||||
<option value="UT">Utah (UT)</option>
|
||||
<option value="VT">Vermont (VT)</option>
|
||||
<option value="VA">Virginia (VA)</option>
|
||||
<option value="WA">Washington (WA)</option>
|
||||
<option value="WV">West Virginia (WV)</option>
|
||||
<option value="WI">Wisconsin (WI)</option>
|
||||
<option value="WY">Wyoming (WY)</option>
|
||||
</select>
|
||||
|
||||
<select style="display:none" class="form-control custom-select" id="quicklookupiota" name="iota_ref">
|
||||
|
||||
<?php
|
||||
foreach($iota as $i){
|
||||
echo '<option value=' . $i->tag . '>' . $i->tag . ' - ' . $i->name . '</option>';
|
||||
}
|
||||
?>
|
||||
|
||||
</select>
|
||||
<div> </div><button id="button1id" type="button" name="button1id" class="btn btn-primary ld-ext-right" onclick="getLookupResult(this.form)">Show<div class="ld ld-ring ld-spin"></div></button>
|
||||
</form>
|
||||
<br/>
|
||||
<div class="table-responsive" id="lookupresulttable">
|
||||
</div>
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
echo '
|
||||
<table style="width:100%" class="table-sm table table-bordered table-hover table-striped table-condensed text-center">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>';
|
||||
foreach($bands as $band) {
|
||||
echo '<th>' . $band . '</th>';
|
||||
}
|
||||
echo '</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
foreach ($result as $mode => $value) {
|
||||
echo '<tr>
|
||||
<td>'. strtoupper($mode) .'</td>';
|
||||
foreach ($value as $key) {
|
||||
if ($key == 'W') {
|
||||
echo '<td><div class=\'alert-danger\'>' . $key . '</div></td>';
|
||||
}
|
||||
else if ($key == 'C') {
|
||||
echo '<td><div class=\'alert-success\'>' . $key . '</div></td>';
|
||||
}
|
||||
else {
|
||||
echo '<td>' . $key . '</td>';
|
||||
}
|
||||
}
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
?>
|
Ładowanie…
Reference in New Issue