Squashed commit of the following:
commit 91b55288edee8cdae93570212e0e94c3cc2e66ff
Author: phl0 <github@florian-wolters.de>
Date: Mon Jan 16 14:59:52 2023 +0100
Add link to DD3AH map
commit 11149f8202bb118d635b952512de4f4456c1789a
Author: phl0 <github@florian-wolters.de>
Date: Mon Jan 16 14:29:37 2023 +0100
Add datatable
commit fc768b32bc256c12668bb1c095184e56edbb2d25
Author: phl0 <github@florian-wolters.de>
Date: Mon Jan 16 14:06:38 2023 +0100
Remove old code
commit b8dfe8566fdc8b20a105b7120faeff4a054b4166
Author: phl0 <github@florian-wolters.de>
Date: Sun Jan 15 23:13:09 2023 +0100
Filter summary for DOK/SDOK and remove empty lines
commit 5d081a2f7dacd0da8761b7e06a253a6e4050b6c4
Author: phl0 <github@florian-wolters.de>
Date: Sun Jan 15 22:55:46 2023 +0100
Remove not worked for now
commit 00e9354a5f0be9d40ca3b16e29dbf1728b7d2875
Author: phl0 <github@florian-wolters.de>
Date: Sun Jan 15 22:53:17 2023 +0100
Include SAT QSOs in totals
commit c1dd7e131ee750b647d4ba802c5aa7af742bdea3
Author: phl0 <github@florian-wolters.de>
Date: Sun Jan 15 17:16:30 2023 +0100
Use worked DOKs from DB instead of list from file
commit 5e60dc51b5b6ea12bf0109847967c80b0f31e79a
Author: phl0 <github@florian-wolters.de>
Date: Fri Jan 13 14:59:27 2023 +0100
Use QSL only for confirmed QSOs
commit 26c03d9a62492bcbfdfdfb5ec1b6d72e61134bce
Author: phl0 <github@florian-wolters.de>
Date: Mon Jan 9 16:40:37 2023 +0100
Add filter to QSO details popup
commit 20b704aa853c806b0739ac9bd3d4a6082987fb9c
Author: phl0 <github@florian-wolters.de>
Date: Mon Jan 9 15:25:35 2023 +0100
Forgot to delete replaced part of code
commit 574a1ebd17625f508ac40cb87b927efdc9d9f998
Author: phl0 <github@florian-wolters.de>
Date: Mon Jan 9 15:20:21 2023 +0100
Hide NM as just a marker for no DOK at all
commit 2b5c2ad8e149c370e036fdfc2f978f411bc11ea7
Author: phl0 <github@florian-wolters.de>
Date: Thu Jan 5 22:49:03 2023 +0100
Remove debug statement
commit 39406b96a3ec8f98ec8548156b83016d68cb6897
Author: phl0 <github@florian-wolters.de>
Date: Thu Jan 5 22:48:06 2023 +0100
Add option for eQSL
commit 2de47e79f232a8505e951366c557b136c6b6d28d
Author: phl0 <github@florian-wolters.de>
Date: Thu Jan 5 15:27:10 2023 +0100
Rework DOK stats
209 行
8.6 KiB
PHP
209 行
8.6 KiB
PHP
<style>
|
|
/*Legend specific*/
|
|
.legend {
|
|
padding: 6px 8px;
|
|
font: 14px Arial, Helvetica, sans-serif;
|
|
background: white;
|
|
background: rgba(255, 255, 255, 0.8);
|
|
line-height: 24px;
|
|
color: #555;
|
|
}
|
|
.legend h4 {
|
|
text-align: center;
|
|
font-size: 16px;
|
|
margin: 2px 12px 8px;
|
|
color: #777;
|
|
}
|
|
.legend span {
|
|
position: relative;
|
|
bottom: 3px;
|
|
}
|
|
.legend i {
|
|
width: 18px;
|
|
height: 18px;
|
|
float: left;
|
|
margin: 0 8px 0 0;
|
|
opacity: 0.7;
|
|
}
|
|
</style>
|
|
|
|
<div class="container">
|
|
|
|
<h2><?php echo $page_title?></h2>
|
|
<form class="form" action="<?php echo site_url('awards/dok'); ?>" method="post" enctype="multipart/form-data">
|
|
<fieldset>
|
|
|
|
<div class="form-group row">
|
|
<label class="col-md-2 control-label" for="band">DOK / SDOK</label>
|
|
<div class="col-md-2">
|
|
<select id="doks" name="doks" class="form-control custom-select-sm">
|
|
<option value="both" <?php if ($this->input->post('doks') == "both" || $this->input->method() !== 'post') echo ' selected'; ?> >DOK + SDOK</option>
|
|
<?php echo '<option value="dok"';
|
|
if ($this->input->post('doks') == 'dok') echo ' selected';
|
|
echo '>DOK</option>'."\n";
|
|
?>
|
|
<?php echo '<option value="sdok"';
|
|
if ($this->input->post('doks') == 'sdok') echo ' selected';
|
|
echo '>SDOK</option>'."\n";
|
|
?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<div class="col-md-2" for="checkboxes">Worked / Confirmed</div>
|
|
<div class="col-md-10">
|
|
<div class="form-check-inline">
|
|
<input class="form-check-input" type="checkbox" name="worked" id="worked" value="1" <?php if ($this->input->post('worked') || $this->input->method() !== 'post') echo ' checked="checked"'; ?> >
|
|
<label class="form-check-label" for="worked">Show worked</label>
|
|
</div>
|
|
<div class="form-check-inline">
|
|
<input class="form-check-input" type="checkbox" name="confirmed" id="confirmed" value="1" <?php if ($this->input->post('confirmed') || $this->input->method() !== 'post') echo ' checked="checked"'; ?> >
|
|
<label class="form-check-label" for="confirmed">Show confirmed</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<div class="col-md-2">QSL / LoTW</div>
|
|
<div class="col-md-10">
|
|
<div class="form-check-inline">
|
|
<input class="form-check-input" type="checkbox" name="qsl" value="1" id="qsl" <?php if ($this->input->post('qsl') || $this->input->method() !== 'post') echo ' checked="checked"'; ?> >
|
|
<label class="form-check-label" for="qsl">QSL</label>
|
|
</div>
|
|
<div class="form-check-inline">
|
|
<input class="form-check-input" type="checkbox" name="lotw" value="1" id="lotw" <?php if ($this->input->post('lotw') || $this->input->method() !== 'post') echo ' checked="checked"'; ?> >
|
|
<label class="form-check-label" for="lotw">LoTW</label>
|
|
</div>
|
|
<div class="form-check-inline">
|
|
<input class="form-check-input" type="checkbox" name="eqsl" value="1" id="eqsl" <?php if ($this->input->post('eqsl')) echo ' checked="checked"'; ?> >
|
|
<label class="form-check-label" for="eqsl">eQSL</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<label class="col-md-2 control-label" for="band">Band</label>
|
|
<div class="col-md-2">
|
|
<select id="band2" name="band" class="form-control custom-select-sm">
|
|
<option value="All" <?php if ($this->input->post('band') == "All" || $this->input->method() !== 'post') echo ' selected'; ?> >Every band</option>
|
|
<?php foreach($worked_bands as $band) {
|
|
echo '<option value="' . $band . '"';
|
|
if ($this->input->post('band') == $band) echo ' selected';
|
|
echo '>' . $band . '</option>'."\n";
|
|
} ?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<label class="col-md-2 control-label" for="mode">Mode</label>
|
|
<div class="col-md-2">
|
|
<select id="mode" name="mode" class="form-control custom-select-sm">
|
|
<option value="All" <?php if ($this->input->post('mode') == "All" || $this->input->method() !== 'mode') echo ' selected'; ?>>All</option>
|
|
<?php
|
|
foreach($modes->result() as $mode){
|
|
if ($mode->submode == null) {
|
|
echo '<option value="' . $mode->mode . '"';
|
|
if ($this->input->post('mode') == $mode->mode) echo ' selected';
|
|
echo '>'. $mode->mode . '</option>'."\n";
|
|
} else {
|
|
echo '<option value="' . $mode->submode . '"';
|
|
if ($this->input->post('mode') == $mode->submode) echo ' selected';
|
|
echo '>' . $mode->submode . '</option>'."\n";
|
|
}
|
|
}
|
|
?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<?php
|
|
$doks = array();
|
|
foreach ($dok_array as $dok => $value) {
|
|
if (preg_match('/^[A-Z][0-9]{2}$/', $dok)) {
|
|
$doks[] = $dok;
|
|
}
|
|
}
|
|
?>
|
|
|
|
<div class="form-group row">
|
|
<label class="col-md-2 control-label" for="button1id"></label>
|
|
<div class="col-md-10">
|
|
<button id="button2id" type="reset" name="button2id" class="btn btn-sm btn-warning">Reset</button>
|
|
<button id="button1id" type="submit" name="button1id" class="btn btn-sm btn-primary">Show</button>
|
|
<button id="button3id" type="button" name="button3id" class="btn btn-sm btn-info" onclick=" window.open('https://dd3ah.de/dokmap/dokonly.html?zoom=9&dokonly=<?php print implode(',', $doks); ?>','_blank')"><i class="fas fa-globe-americas"></i> Map</button>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</form>
|
|
<br />
|
|
|
|
<div class="tab-content" id="myTabContent">
|
|
<div class="tab-pane fade" id="dokmaptab" role="tabpanel" aria-labelledby="home-tab">
|
|
<br />
|
|
|
|
</div>
|
|
|
|
<div class="tab-pane fade show active" id="table" role="tabpanel" aria-labelledby="table-tab">
|
|
|
|
<?php
|
|
if ($dok_array) {
|
|
echo '
|
|
<table style="width:100%" id="doktable" class="table table-sm table-bordered table-hover table-striped table-condensed text-center">
|
|
<thead>
|
|
<tr>
|
|
<th>DOK</th>';
|
|
foreach($bands as $band) {
|
|
echo '<th>' . $band . '</th>';
|
|
}
|
|
echo '</tr>
|
|
</thead>
|
|
<tbody>';
|
|
foreach ($dok_array as $dok => $value) { // Fills the table with the data
|
|
echo '<tr>
|
|
<td>'. $dok .'</td>';
|
|
foreach ($value as $key) {
|
|
echo '<td style="text-align: center">' . $key . '</td>';
|
|
}
|
|
echo '</tr>';
|
|
}
|
|
echo '</table>
|
|
<h2>Summary</h2>
|
|
|
|
<table class="table-sm tablesummary table table-bordered table-hover table-striped table-condensed text-center">
|
|
<thead>
|
|
<tr><td></td>';
|
|
|
|
foreach($bands as $band) {
|
|
echo '<td>' . $band . '</td>';
|
|
}
|
|
echo '<td>Total</td></tr>
|
|
</thead>
|
|
<tbody>
|
|
|
|
<tr><td>Total worked</td>';
|
|
|
|
foreach ($dok_summary['worked'] as $dxcc) { // Fills the table with the data
|
|
echo '<td style="text-align: center">' . $dxcc . '</td>';
|
|
}
|
|
|
|
echo '</tr><tr>
|
|
<td>Total confirmed</td>';
|
|
foreach ($dok_summary['confirmed'] as $dxcc) { // Fills the table with the data
|
|
echo '<td style="text-align: center">' . $dxcc . '</td>';
|
|
}
|
|
|
|
echo '</tr>
|
|
</table>
|
|
</div>';
|
|
|
|
}
|
|
else {
|
|
echo '<div class="alert alert-danger" role="alert"><a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>Nothing found!</div>';
|
|
}
|
|
?>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|