[Advanced Logbook] Added SOTA, POTA, WWFF searches and refs
这个提交包含在:
父节点
878094a5ab
当前提交
6fc021f14c
共有 5 个文件被更改,包括 174 次插入 和 77 次删除
|
|
@ -111,6 +111,10 @@ class Logbookadvanced extends CI_Controller {
|
|||
'lotwReceived' => xss_clean($this->input->post('lotwReceived')),
|
||||
'eqslSent' => xss_clean($this->input->post('eqslSent')),
|
||||
'eqslReceived' => xss_clean($this->input->post('eqslReceived')),
|
||||
'qslvia' => xss_clean($this->input->post('qslvia')),
|
||||
'sota' => xss_clean($this->input->post('sota')),
|
||||
'pota' => xss_clean($this->input->post('pota')),
|
||||
'wwff' => xss_clean($this->input->post('wwff')),
|
||||
);
|
||||
|
||||
$qsos = [];
|
||||
|
|
|
|||
|
|
@ -94,6 +94,26 @@ class Logbookadvanced_model extends CI_Model {
|
|||
$binding[] = $searchCriteria['cqzone'];
|
||||
}
|
||||
|
||||
if ($searchCriteria['qslvia'] !== '') {
|
||||
$conditions[] = "COL_QSL_VIA like ?";
|
||||
$binding[] = $searchCriteria['qslvia'].'%';
|
||||
}
|
||||
|
||||
if ($searchCriteria['sota'] !== '') {
|
||||
$conditions[] = "COL_SOTA_REF like ?";
|
||||
$binding[] = $searchCriteria['sota'].'%';
|
||||
}
|
||||
|
||||
if ($searchCriteria['pota'] !== '') {
|
||||
$conditions[] = "COL_POTA_REF like ?";
|
||||
$binding[] = $searchCriteria['pota'].'%';
|
||||
}
|
||||
|
||||
if ($searchCriteria['wwff'] !== '') {
|
||||
$conditions[] = "COL_WWFF_REF like ?";
|
||||
$binding[] = $searchCriteria['wwff'].'%';
|
||||
}
|
||||
|
||||
if ($searchCriteria['gridsquare'] !== '') {
|
||||
$conditions[] = "(COL_GRIDSQUARE like ? or COL_VUCC_GRIDS like ?)";
|
||||
$binding[] = '%' . $searchCriteria['gridsquare'] . '%';
|
||||
|
|
|
|||
|
|
@ -156,6 +156,18 @@
|
|||
?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-lg-2 col-md-2 col-sm-3 col-xl">
|
||||
<label class="form-label" for="sota">SOTA</label>
|
||||
<input type="text" name="sota" id="sota" class="form-control form-control-sm" value="">
|
||||
</div>
|
||||
<div class="form-group col-lg-2 col-md-2 col-sm-3 col-xl">
|
||||
<label class="form-label" for="wwff">WWFF</label>
|
||||
<input type="text" name="wwff" id="wwff" class="form-control form-control-sm" value="">
|
||||
</div>
|
||||
<div class="form-group col-lg-2 col-md-2 col-sm-3 col-xl">
|
||||
<label class="form-label" for="pota">POTA</label>
|
||||
<input type="text" name="pota" id="pota" class="form-control form-control-sm" value="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="form-group col-lg-2 col-md-2 col-sm-3 col-xl">
|
||||
|
|
@ -224,6 +236,17 @@
|
|||
<option value="V">Verified</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-lg-2 col-md-2 col-sm-3 col-xl">
|
||||
<label for="qslvia">QSL Via</label>
|
||||
<datalist id="qslvia" name="qslvia">
|
||||
<option value="">All</option>
|
||||
<option value="B">Bureau</option>
|
||||
<option value="D">Direct</option>
|
||||
<option value="E">Electronic</option>
|
||||
<option value="M">Manager</option>
|
||||
</datalist>
|
||||
<input type="search" list="qslvia" name="qslviainput" class="custom-select custom-select-sm">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -257,6 +280,9 @@
|
|||
<button type="button" class="btn btn-sm btn-primary mr-1" id="searchCqZone">Search CQ Zone</button>
|
||||
<button type="button" class="btn btn-sm btn-primary mr-1" id="searchMode">Search Mode</button>
|
||||
<button type="button" class="btn btn-sm btn-primary mr-1" id="searchBand">Search Band</button>
|
||||
<button type="button" class="btn btn-sm btn-primary mr-1" id="searchSota">Search SOTA</button>
|
||||
<button type="button" class="btn btn-sm btn-primary mr-1" id="searchWwff">Search WWFF</button>
|
||||
<button type="button" class="btn btn-sm btn-primary mr-1" id="searchPota">Search POTA</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -193,6 +193,10 @@ $(document).ready(function () {
|
|||
lotwReceived: this.lotwReceived.value,
|
||||
eqslSent: this.eqslSent.value,
|
||||
eqslReceived: this.eqslReceived.value,
|
||||
qslvia: $('[name="qslviainput"]').val(),
|
||||
sota: this.sota.value,
|
||||
pota: this.pota.value,
|
||||
wwff: this.wwff.value,
|
||||
},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
|
|
@ -392,6 +396,18 @@ $(document).ready(function () {
|
|||
quickSearch('band');
|
||||
});
|
||||
|
||||
$('#searchSota').click(function (event) {
|
||||
quickSearch('sota');
|
||||
});
|
||||
|
||||
$('#searchWwff').click(function (event) {
|
||||
quickSearch('wwff');
|
||||
});
|
||||
|
||||
$('#searchPota').click(function (event) {
|
||||
quickSearch('pota');
|
||||
});
|
||||
|
||||
function quickSearch(type) {
|
||||
var elements = $('#qsoList tbody input:checked');
|
||||
var nElements = elements.length;
|
||||
|
|
@ -427,6 +443,9 @@ $(document).ready(function () {
|
|||
case 'state': var tdoffset = (offset + 17); col1 = currentRow.find("td:eq("+tdoffset+")").text(); break;
|
||||
case 'dx': col1 = currentRow.find("td:eq(3)").text(); col1 = col1.match(/^([^\s]+)/gm); break;
|
||||
case 'gridsquare': col1 = $(currentRow).find('#dxgrid').text(); col1 = col1.substring(0, 4); break;
|
||||
case 'sota': col1 = $(currentRow).find('#dxsota').text(); break;
|
||||
case 'wwff': col1 = $(currentRow).find('#dxwwff').text(); break;
|
||||
case 'pota': col1 = $(currentRow).find('#dxpota').text(); break;
|
||||
case 'mode': col1 = currentRow.find("td:eq(4)").text(); break;
|
||||
case 'band': col1 = currentRow.find("td:eq(7)").text(); col1 = col1.match(/\S\w*/); break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -45,6 +45,8 @@ class QSO
|
|||
private string $dxSigInfo;
|
||||
private string $dxDARCDOK;
|
||||
private string $dxSOTAReference;
|
||||
private string $dxPOTAReference;
|
||||
private string $dxWWFFReference;
|
||||
/** @var string[] */
|
||||
private string $dxVUCCGridsquares;
|
||||
private string $QSLMsg;
|
||||
|
|
@ -107,6 +109,8 @@ class QSO
|
|||
'COL_MY_SOTA_REF',
|
||||
'COL_MY_VUCC_GRIDS',
|
||||
'COL_SOTA_REF',
|
||||
'COL_POTA_REF',
|
||||
'COL_WWFF_REF',
|
||||
'COL_SUBMODE',
|
||||
'COL_VUCC_GRIDS',
|
||||
'COL_CQZ',
|
||||
|
|
@ -171,6 +175,8 @@ class QSO
|
|||
$this->dxDARCDOK = $data['COL_DARC_DOK'] ?? '';
|
||||
|
||||
$this->dxSOTAReference = $data['COL_SOTA_REF'] ?? '';
|
||||
$this->dxPOTAReference = $data['COL_POTA_REF'] ?? '';
|
||||
$this->dxWWFFReference = $data['COL_WWFF_REF'] ?? '';
|
||||
|
||||
$this->dxVUCCGridsquares = $data['COL_VUCC_GRIDS'] ?? '';
|
||||
|
||||
|
|
@ -637,6 +643,22 @@ class QSO
|
|||
return $this->dxSOTAReference;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getDxPOTAReference(): string
|
||||
{
|
||||
return $this->dxPOTAReference;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getWWFFReference(): string
|
||||
{
|
||||
return $this->dxWWFFReference;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
|
|
@ -846,7 +868,13 @@ class QSO
|
|||
$refs[] = '<span id="dxgrid">' . $this->dxGridsquare . '</span> ' .$this->getQrbLink($this->stationGridsquare, $this->dxVUCCGridsquares, $this->dxGridsquare);
|
||||
}
|
||||
if ($this->dxSOTAReference !== '') {
|
||||
$refs[] = "SOTA:" . $this->dxSOTAReference;
|
||||
$refs[] = "SOTA: " . '<span id="dxsota">' . $this->dxSOTAReference. '</span>';
|
||||
}
|
||||
if ($this->dxPOTAReference !== '') {
|
||||
$refs[] = "POTA: " . '<span id="dxpota">' . $this->dxPOTAReference. '</span>';
|
||||
}
|
||||
if ($this->dxWWFFReference !== '') {
|
||||
$refs[] = "WWFF: " . '<span id="dxwwff">' . $this->dxWWFFReference. '</span>';
|
||||
}
|
||||
if ($this->dxSig !== '') {
|
||||
$refs[] = $this->dxSig . ":" . $this->dxSigInfo;
|
||||
|
|
|
|||
正在加载…
在新工单中引用