2021-03-14 10:11:21 +01:00
|
|
|
<?php
|
|
|
|
|
echo '
|
2026-03-26 22:26:47 +00:00
|
|
|
<div class="table-responsive" style="max-height: 350px; overflow-y: auto;">
|
2021-03-14 10:11:21 +01:00
|
|
|
<table style="width:100%" class="table-sm table table-bordered table-hover table-striped table-condensed text-center">
|
2026-03-26 22:26:47 +00:00
|
|
|
<thead class="sticky-top bg-white">
|
2021-03-14 10:11:21 +01:00
|
|
|
<tr>
|
2026-03-26 22:26:47 +00:00
|
|
|
<th style="min-width: 60px;">Mode</th>';
|
2021-03-14 10:11:21 +01:00
|
|
|
foreach($bands as $band) {
|
2026-03-26 22:26:47 +00:00
|
|
|
echo '<th style="min-width: 50px;">' . $band . '</th>';
|
2021-03-14 10:11:21 +01:00
|
|
|
}
|
|
|
|
|
echo '</tr>
|
|
|
|
|
</thead>
|
|
|
|
|
<tbody>';
|
2026-03-26 22:26:47 +00:00
|
|
|
|
|
|
|
|
// Consolidate SSB, LSB, USB into SSB
|
|
|
|
|
$consolidatedResult = [];
|
2021-03-14 10:11:21 +01:00
|
|
|
foreach ($result as $mode => $value) {
|
2026-03-26 22:26:47 +00:00
|
|
|
$normalizedMode = strtoupper($mode);
|
|
|
|
|
// Convert LSB and USB to SSB
|
|
|
|
|
if ($normalizedMode === 'LSB' || $normalizedMode === 'USB') {
|
|
|
|
|
$normalizedMode = 'SSB';
|
|
|
|
|
}
|
|
|
|
|
// Merge into consolidatedResult
|
|
|
|
|
if (!isset($consolidatedResult[$normalizedMode])) {
|
|
|
|
|
$consolidatedResult[$normalizedMode] = $value;
|
|
|
|
|
} else {
|
|
|
|
|
// Merge band data - prioritize 'C' over 'W', and 'W' over '-'
|
|
|
|
|
foreach ($value as $band => $val) {
|
|
|
|
|
if ($val === 'C' || $consolidatedResult[$normalizedMode][$band] === '-') {
|
|
|
|
|
$consolidatedResult[$normalizedMode][$band] = $val;
|
|
|
|
|
} elseif ($val === 'W' && $consolidatedResult[$normalizedMode][$band] === '-') {
|
|
|
|
|
$consolidatedResult[$normalizedMode][$band] = $val;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Sort to put SSB near the top
|
|
|
|
|
uksort($consolidatedResult, function($a, $b) {
|
|
|
|
|
if ($a === 'SSB') return -1;
|
|
|
|
|
if ($b === 'SSB') return 1;
|
|
|
|
|
return strcmp($a, $b);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
foreach ($consolidatedResult as $mode => $value) {
|
2021-03-14 10:11:21 +01:00
|
|
|
echo '<tr>
|
2026-03-26 22:26:47 +00:00
|
|
|
<td style="font-weight: 500; background-color: #f8f9fa;">'. strtoupper($mode) .'</td>';
|
2021-07-29 10:38:27 +02:00
|
|
|
foreach ($value as $key => $val) {
|
2021-07-29 12:38:41 +02:00
|
|
|
switch($type) {
|
|
|
|
|
case 'dxcc': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $dxcc).'","' . $key . '","' . $mode . '","DXCC2")\'>' . $val . '</a>'; break;
|
|
|
|
|
case 'iota': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $iota).'","' . $key . '","' . $mode . '","IOTA")\'>' . $val . '</a>'; break;
|
2023-02-18 14:19:02 +01:00
|
|
|
case 'vucc': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $grid).'","' . $key . '","' . $mode . '","VUCC")\'>' . $val . '</a>'; break;
|
|
|
|
|
case 'cq': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $cqz).'","' . $key . '","' . $mode . '","CQZone")\'>' . $val . '</a>'; break;
|
2021-07-29 12:38:41 +02:00
|
|
|
case 'was': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $was).'","' . $key . '","' . $mode . '","WAS")\'>' . $val . '</a>'; break;
|
|
|
|
|
case 'sota': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $sota).'","' . $key . '","' . $mode . '","SOTA")\'>' . $val . '</a>'; break;
|
|
|
|
|
case 'wwff': $linkinfo = '<a href=\'javascript:displayContacts("'.str_replace("&", "%26", $wwff).'","' . $key . '","' . $mode . '","WWFF")\'>' . $val . '</a>'; break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$info = '<td>';
|
|
|
|
|
|
2021-07-29 10:38:27 +02:00
|
|
|
if ($val == 'W') {
|
2023-11-28 19:55:44 +01:00
|
|
|
$info .= '<div class=\'bg-danger awardsBgDanger\'>' . $linkinfo . '</div>';
|
2021-03-14 10:11:21 +01:00
|
|
|
}
|
2021-07-29 10:38:27 +02:00
|
|
|
else if ($val == 'C') {
|
2023-11-28 19:55:44 +01:00
|
|
|
$info .= '<div class=\'bg-success awardsBgSuccess\'>' . $linkinfo . '</div>';
|
2021-03-14 10:11:21 +01:00
|
|
|
}
|
|
|
|
|
else {
|
2021-07-29 12:38:41 +02:00
|
|
|
$info .= $val;
|
2021-03-14 10:11:21 +01:00
|
|
|
}
|
2021-07-29 12:38:41 +02:00
|
|
|
|
|
|
|
|
$info .= '</td>';
|
|
|
|
|
|
|
|
|
|
echo $info;
|
2021-03-14 10:11:21 +01:00
|
|
|
}
|
|
|
|
|
echo '</tr>';
|
|
|
|
|
}
|
2026-03-26 22:26:47 +00:00
|
|
|
|
|
|
|
|
echo '</tbody></table>
|
|
|
|
|
</div>';
|
2021-03-14 10:11:21 +01:00
|
|
|
?>
|
2026-03-26 22:26:47 +00:00
|
|
|
|