Missing Files added
这个提交包含在:
		
							父节点
							
								
									6ad92cea08
								
							
						
					
					
						当前提交
						7d0ee70f58
					
				
					共有  2 个文件被更改,包括 31 次插入 和 0 次删除
				
			
		|  | @ -81,6 +81,12 @@ function updateRow(qso) { | ||||||
| 	if (user_options.iota.show == "true"){ | 	if (user_options.iota.show == "true"){ | ||||||
| 		cells.eq(c++).html(qso.iota); | 		cells.eq(c++).html(qso.iota); | ||||||
| 	} | 	} | ||||||
|  | 	if (user_options.pota.show == "true"){ | ||||||
|  | 		cells.eq(c++).html(qso.pota); | ||||||
|  | 	} | ||||||
|  | 	if (user_options.operator.show == "true"){ | ||||||
|  | 		cells.eq(c++).html(qso.operator); | ||||||
|  | 	} | ||||||
| 
 | 
 | ||||||
| 	$('[data-bs-toggle="tooltip"]').tooltip(); | 	$('[data-bs-toggle="tooltip"]').tooltip(); | ||||||
| 	return row; | 	return row; | ||||||
|  | @ -174,6 +180,12 @@ function loadQSOTable(rows) { | ||||||
| 		if (user_options.iota.show == "true"){ | 		if (user_options.iota.show == "true"){ | ||||||
| 			data.push(qso.iota); | 			data.push(qso.iota); | ||||||
| 		} | 		} | ||||||
|  | 		if (user_options.pota.show == "true"){ | ||||||
|  | 			data.push(qso.pota); | ||||||
|  | 		} | ||||||
|  | 		if (user_options.operator.show == "true"){ | ||||||
|  | 			data.push(qso.operator); | ||||||
|  | 		} | ||||||
| 
 | 
 | ||||||
| 		let createdRow = table.row.add(data).index(); | 		let createdRow = table.row.add(data).index(); | ||||||
| 		table.rows(createdRow).nodes().to$().data('qsoID', qso.qsoID); | 		table.rows(createdRow).nodes().to$().data('qsoID', qso.qsoID); | ||||||
|  | @ -261,6 +273,7 @@ $(document).ready(function () { | ||||||
| 				qslSentMethod: this.qslSentMethod.value, | 				qslSentMethod: this.qslSentMethod.value, | ||||||
| 				qslReceivedMethod: this.qslReceivedMethod.value, | 				qslReceivedMethod: this.qslReceivedMethod.value, | ||||||
| 				iota: this.iota.value, | 				iota: this.iota.value, | ||||||
|  | 				operator: this.operator.value, | ||||||
| 				dxcc: this.dxcc.value, | 				dxcc: this.dxcc.value, | ||||||
| 				propmode: this.selectPropagation.value, | 				propmode: this.selectPropagation.value, | ||||||
| 				gridsquare: this.gridsquare.value, | 				gridsquare: this.gridsquare.value, | ||||||
|  | @ -497,6 +510,10 @@ $(document).ready(function () { | ||||||
| 		quickSearch('pota'); | 		quickSearch('pota'); | ||||||
| 	}); | 	}); | ||||||
| 
 | 
 | ||||||
|  | 	$('#searchOperator').click(function (event) { | ||||||
|  | 		quickSearch('operator'); | ||||||
|  | 	}); | ||||||
|  | 
 | ||||||
| 	$('#dupeButton').click(function (event) { | 	$('#dupeButton').click(function (event) { | ||||||
| 		dupeSearch(); | 		dupeSearch(); | ||||||
| 	}); | 	}); | ||||||
|  | @ -623,6 +640,7 @@ $(document).ready(function () { | ||||||
| 				case 'sota': 		col1 = $(currentRow).find('#dxsota').text(); break; | 				case 'sota': 		col1 = $(currentRow).find('#dxsota').text(); break; | ||||||
| 				case 'wwff': 		col1 = $(currentRow).find('#dxwwff').text(); break; | 				case 'wwff': 		col1 = $(currentRow).find('#dxwwff').text(); break; | ||||||
| 				case 'pota': 		col1 = $(currentRow).find('#dxpota').text(); break; | 				case 'pota': 		col1 = $(currentRow).find('#dxpota').text(); break; | ||||||
|  | 				case 'operator': 	col1 = $(currentRow).find('#operator').text(); break; | ||||||
| 				case 'mode': 		col1 = currentRow.find("td:eq(4)").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; | 				case 'band': 		col1 = currentRow.find("td:eq(7)").text(); col1 = col1.match(/\S\w*/); break; | ||||||
| 			} | 			} | ||||||
|  | @ -872,6 +890,7 @@ function mapQsos(form) { | ||||||
| 				qslvia: $('[name="qslviainput"]').val(), | 				qslvia: $('[name="qslviainput"]').val(), | ||||||
| 				sota: form.sota.value, | 				sota: form.sota.value, | ||||||
| 				pota: form.pota.value, | 				pota: form.pota.value, | ||||||
|  | 				operator: form.operator.value, | ||||||
| 				wwff: form.wwff.value, | 				wwff: form.wwff.value, | ||||||
| 				qslimages: form.qslimages.value, | 				qslimages: form.qslimages.value, | ||||||
| 			}, | 			}, | ||||||
|  | @ -1069,6 +1088,8 @@ function loadMap(data) { | ||||||
| 				state: $('input[name="state"]').is(':checked') ? true : false, | 				state: $('input[name="state"]').is(':checked') ? true : false, | ||||||
| 				cqzone: $('input[name="cqzone"]').is(':checked') ? true : false, | 				cqzone: $('input[name="cqzone"]').is(':checked') ? true : false, | ||||||
| 				iota: $('input[name="iota"]').is(':checked') ? true : false, | 				iota: $('input[name="iota"]').is(':checked') ? true : false, | ||||||
|  | 				pota: $('input[name="pota"]').is(':checked') ? true : false, | ||||||
|  | 				operator: $('input[name="operator"]').is(':checked') ? true : false, | ||||||
| 			}, | 			}, | ||||||
| 			success: function(data) { | 			success: function(data) { | ||||||
| 				$('#saveButton').prop("disabled", false); | 				$('#saveButton').prop("disabled", false); | ||||||
|  |  | ||||||
|  | @ -65,6 +65,7 @@ class QSO | ||||||
| 	private string $callsign; | 	private string $callsign; | ||||||
| 	private string $lastupload; | 	private string $lastupload; | ||||||
| 	private string $lotw_hint; | 	private string $lotw_hint; | ||||||
|  | 	private string $operator; | ||||||
| 
 | 
 | ||||||
| 	/** | 	/** | ||||||
| 	 * @param array $data Does no validation, it's assumed to be a row from the database in array format | 	 * @param array $data Does no validation, it's assumed to be a row from the database in array format | ||||||
|  | @ -116,6 +117,7 @@ class QSO | ||||||
| 			'COL_STATE', | 			'COL_STATE', | ||||||
| 			'COL_COUNTRY', | 			'COL_COUNTRY', | ||||||
| 			'COL_IOTA', | 			'COL_IOTA', | ||||||
|  | 			'COL_OPERATOR', | ||||||
| 		]; | 		]; | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -202,6 +204,7 @@ class QSO | ||||||
| 		$this->callsign = (($data['callsign'] ?? null) === null) ? '' : $data['callsign']; | 		$this->callsign = (($data['callsign'] ?? null) === null) ? '' : $data['callsign']; | ||||||
| 		$this->lastupload = (($data['lastupload'] ?? null) === null) ? '' : date($custom_date_format . " H:i", strtotime($data['lastupload'] ?? null)); | 		$this->lastupload = (($data['lastupload'] ?? null) === null) ? '' : date($custom_date_format . " H:i", strtotime($data['lastupload'] ?? null)); | ||||||
| 		$this->lotw_hint = $this->getLotwHint($data['lastupload'] ?? null); | 		$this->lotw_hint = $this->getLotwHint($data['lastupload'] ?? null); | ||||||
|  | 		$this->operator = ($data['COL_OPERATOR'] === null) ? '' :$data['COL_OPERATOR']; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	/** | 	/** | ||||||
|  | @ -771,6 +774,11 @@ class QSO | ||||||
| 		return '<span id="iota">' . $this->iota . '</span>'; | 		return '<span id="iota">' . $this->iota . '</span>'; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	public function getOperator(): string | ||||||
|  | 	{ | ||||||
|  | 		return '<span id="operator">' . $this->operator . '</span>'; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	public function toArray(): array | 	public function toArray(): array | ||||||
| 	{ | 	{ | ||||||
| 		return [ | 		return [ | ||||||
|  | @ -792,6 +800,8 @@ class QSO | ||||||
| 			'name' => $this->getName(), | 			'name' => $this->getName(), | ||||||
| 			'dxcc' => $this->getDXCC(), | 			'dxcc' => $this->getDXCC(), | ||||||
| 			'state' => $this->getState(), | 			'state' => $this->getState(), | ||||||
|  | 			'pota' => $this->dxPOTAReference, | ||||||
|  | 			'operator' => $this->getOperator(), | ||||||
| 			'cqzone' => $this->getCqzone(), | 			'cqzone' => $this->getCqzone(), | ||||||
| 			'iota' => $this->getIOTA(), | 			'iota' => $this->getIOTA(), | ||||||
| 			'end' => $this->end === null ? null : $this->end->format("Y-m-d"), | 			'end' => $this->end === null ? null : $this->end->format("Y-m-d"), | ||||||
|  |  | ||||||
		正在加载…
	
		在新工单中引用