Merge remote-tracking branch 'upstream/station_logbooks' into addQsoDatesToLotwCerts

pull/1580/head
phl0 2022-08-24 17:18:55 +02:00
commit 133239df7f
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 48EA1E640798CA9A
25 zmienionych plików z 299 dodań i 12 usunięć

Wyświetl plik

@ -337,6 +337,35 @@ class QSO extends CI_Controller {
echo json_encode($json);
}
public function get_wwff() {
$json = [];
if(!empty($this->input->get("query"))) {
$query = isset($_GET['query']) ? $_GET['query'] : FALSE;
$wwff = strtoupper($query);
$file = 'assets/json/wwff.txt';
if (is_readable($file)) {
$lines = file($file, FILE_IGNORE_NEW_LINES);
$input = preg_quote($wwff, '~');
$reg = '~^'. $input .'(.*)$~';
$result = preg_grep($reg, $lines);
$json = [];
$i = 0;
foreach ($result as &$value) {
// Limit to 100 as to not slowdown browser too much
if (count($json) <= 100) {
$json[] = ["name"=>$value];
}
}
}
}
header('Content-Type: application/json');
echo json_encode($json);
}
/*
* Function is used for autocompletion of DOK in the QSO entry form
*/

Wyświetl plik

@ -376,6 +376,47 @@ class Update extends CI_Controller {
}
}
/*
* Pulls the WWFF directory for autocompletion in QSO dialogs
*/
public function update_wwff() {
$csvfile = 'https://wwff.co/wwff-data/wwff_directory.csv';
$wwfffile = './assets/json/wwff.txt';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $csvfile);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_USERAGENT, 'Cloudlog Updater');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$csv = curl_exec($ch);
curl_close($ch);
$wwfffilehandle = fopen($wwfffile, 'w');
$data = str_getcsv($csv,"\n");
foreach ($data as $idx => $row) {
if ($idx == 0) continue; // Skip line we are not interested in
$row = str_getcsv($row, ',');
if ($row[0]) {
fwrite($wwfffilehandle, $row[0].PHP_EOL);
}
}
fclose($wwfffilehandle);
if (file_exists($wwfffile))
{
$nCount = count(file($wwfffile));
if ($nCount > 0)
{
echo "DONE: " . number_format($nCount) . " WWFF's saved";
} else {
echo"FAILED: Empty file";
}
} else {
echo"FAILED: Could not create wwff.txt file locally";
}
}
}
?>

Wyświetl plik

@ -103,6 +103,7 @@ $lang['gen_hamradio_dok'] = 'DOK';
$lang['gen_hamradio_state'] = 'State';
$lang['gen_hamradio_iota'] = 'IOTA';
$lang['gen_hamradio_sota'] = 'SOTA';
$lang['gen_hamradio_wwff'] = 'WWFF';
$lang['gen_hamradio_gridsquare'] = 'Gridsquare';
$lang['gen_hamradio_operator'] = 'Operator';
@ -119,4 +120,4 @@ $lang['gen_from_date'] = 'From date';
$lang['gen_this_qso_was_confirmed_on'] = 'This QSO was confirmed on';
$lang['error_no_logbook_found'] = 'No logbooks were found. You need to define a logbook under Station Logbooks! Do it here:';
$lang['error_no_logbook_found'] = 'No logbooks were found. You need to define a logbook under Station Logbooks! Do it here:';

Wyświetl plik

@ -12,9 +12,10 @@ $lang['qso_title_image'] = 'Profile Picture';
$lang['qso_transmit_power_helptext'] = 'Give power value in Watts. Include only numbers in the input.';
$lang['qso_sota_ref_helptext'] = 'For example: GM/NS-001.';
$lang['qso_wwff_ref_helptext'] = 'For example: DLFF-0069.';
$lang['qso_sig_helptext'] = 'For example: WWFF or POTA';
$lang['qso_sig_info_helptext'] = 'For example: DLFF-0029';
$lang['qso_sig_helptext'] = 'For example: POTA';
$lang['qso_sig_info_helptext'] = 'For example: PA-0150';
$lang['qso_dok_helptext'] = 'For example: Q03';

Wyświetl plik

@ -12,9 +12,10 @@ $lang['qso_title_image'] = 'Profilbild';
$lang['qso_transmit_power_helptext'] = 'Gib die Ausgangsleistung in Watt an. Erfasse nur Zahlen bei der Eingabe.';
$lang['qso_sota_ref_helptext'] = 'Zum Beispiel: GM/NS-001.';
$lang['qso_wwff_ref_helptext'] = 'Zum Beispiel: DLFF-0069.';
$lang['qso_sig_helptext'] = 'Zum Beispiel: WWFF oder POTA';
$lang['qso_sig_info_helptext'] = 'Zum Beispiel: DLFF-0029';
$lang['qso_sig_helptext'] = 'Zum Beispiel: POTA';
$lang['qso_sig_info_helptext'] = 'Zum Beispiel: PA-0150';
$lang['qso_dok_helptext'] = 'Zum Beispiel: Q03';

Wyświetl plik

@ -87,6 +87,7 @@ class AdifHelper {
'SILENT_KEY',
'SKCC',
'SOTA_REF',
'WWFF_REF',
'SRX',
'SRX_STRING',
'STATE',
@ -188,6 +189,8 @@ class AdifHelper {
$line .= $this->getAdifFieldLine("MY_SOTA_REF", $qso->station_sota);
$line .= $this->getAdifFieldLine("MY_WWFF_REF", $qso->station_wwff);
$line .= $this->getAdifFieldLine("MY_CQ_ZONE", $qso->station_cq);
$line .= $this->getAdifFieldLine("MY_ITU_ZONE", $qso->station_itu);

Wyświetl plik

@ -0,0 +1,46 @@
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
/**
* Class Migration_add_wwff_columns
*
* Add WWFF columnds to database to reflect latest ADIF v3.1.3 spec changes
* See http://www.adif.org.uk/313/ADIF_313_annotated.htm
*
*/
class Migration_add_wwff_columns extends CI_Migration {
public function up()
{
if (!$this->db->field_exists('COL_WWFF_REF', 'TABLE_HRD_CONTACTS_V01')) {
$fields = array(
'COL_WWFF_REF VARCHAR(30) DEFAULT NULL',
'COL_MY_WWFF_REF VARCHAR(50) DEFAULT NULL',
);
$this->dbforge->add_column('TABLE_HRD_CONTACTS_V01', $fields, 'COL_VUCC_GRIDS');
// Now copy over data from SIG_INFO fields and remove COL_SIG and COL_SIG_INFO only if COL_SIG is WWFF
// This cannot be reverted on downgrade to prevent overwriting of other COL_SIG information
$this->db->set('COL_WWFF_REF', 'COL_SIG_INFO', FALSE);
$this->db->set('COL_SIG_INFO', '');
$this->db->set('COL_SIG', '');
$this->db->where('COL_SIG', 'WWFF');
$this->db->update('TABLE_HRD_CONTACTS_V01');
// Add MY_WWFF_REF to station profile
$fields = array(
'station_wwff varchar(50) DEFAULT NULL',
);
$this->dbforge->add_column('station_profile', $fields);
}
}
public function down()
{
$this->dbforge->drop_column('TABLE_HRD_CONTACTS_V01', 'COL_WWFF_REF');
$this->dbforge->drop_column('TABLE_HRD_CONTACTS_V01', 'COL_MY_WWFF_REF');
$this->dbforge->drop_column('station_profile', 'station_wwff');
}
}

Wyświetl plik

@ -177,6 +177,7 @@ class Logbook_model extends CI_Model {
'COL_STATE' => trim($this->input->post('usa_state')),
'COL_CNTY' => $clean_county_input,
'COL_SOTA_REF' => trim($this->input->post('sota_ref')),
'COL_WWFF_REF' => trim($this->input->post('wwff_ref')),
'COL_SIG' => trim($this->input->post('sig')),
'COL_SIG_INFO' => trim($this->input->post('sig_info')),
'COL_DARC_DOK' => strtoupper(trim($darc_dok)),
@ -209,6 +210,7 @@ class Logbook_model extends CI_Model {
$data['COL_MY_CITY'] = strtoupper(trim($station['station_city']));
$data['COL_MY_IOTA'] = strtoupper(trim($station['station_iota']));
$data['COL_MY_SOTA_REF'] = strtoupper(trim($station['station_sota']));
$data['COL_MY_WWFF_REF'] = strtoupper(trim($station['station_wwff']));
$data['COL_STATION_CALLSIGN'] = strtoupper(trim($station['station_callsign']));
$data['COL_MY_DXCC'] = strtoupper(trim($station['station_dxcc']));
@ -283,8 +285,7 @@ class Logbook_model extends CI_Model {
$this->db->where('COL_SOTA_REF', $searchphrase);
break;
case 'WWFF':
$this->db->where('COL_SIG', 'WWFF');
$this->db->where('COL_SIG_INFO', $searchphrase);
$this->db->where('COL_WWFF_REF', $searchphrase);
break;
}
@ -661,6 +662,7 @@ class Logbook_model extends CI_Model {
'COL_LOTW_QSL_RCVD' => $this->input->post('lotw_recv'),
'COL_IOTA' => $this->input->post('iota_ref'),
'COL_SOTA_REF' => $this->input->post('sota_ref'),
'COL_WWFF_REF' => $this->input->post('wwff_ref'),
'COL_TX_PWR' => $txpower,
'COL_SIG' => $this->input->post('sig'),
'COL_SIG_INFO' => $this->input->post('sig_info'),
@ -2608,6 +2610,7 @@ class Logbook_model extends CI_Model {
'COL_MY_SIG_INFO_INTL' => (!empty($record['my_sig_info_intl'])) ? $record['my_sig_info_intl'] : '',
'COL_MY_SIG_INTL' => (!empty($record['my_sig_intl'])) ? $record['my_sig_intl'] : '',
'COL_MY_SOTA_REF' => (!empty($record['my_sota_ref'])) ? $record['my_sota_ref'] : '',
'COL_MY_WWFF_REF' => (!empty($record['my_wwff_ref'])) ? $record['my_wwff_ref'] : '',
'COL_MY_STATE' => (!empty($record['my_state'])) ? $record['my_state'] : '',
'COL_MY_STREET' => (!empty($record['my_street'])) ? $record['my_street'] : '',
'COL_MY_STREET_INTL' => (!empty($record['my_street_intl'])) ? $record['my_street_intl'] : '',
@ -2656,6 +2659,7 @@ class Logbook_model extends CI_Model {
'COL_SILENT_KEY' => (!empty($record['silent_key'])) ? $record['silent_key'] : '',
'COL_SKCC' => (!empty($record['skcc'])) ? $record['skcc'] : '',
'COL_SOTA_REF' => (!empty($record['sota_ref'])) ? $record['sota_ref'] : '',
'COL_WWFF_REF' => (!empty($record['wwff_ref'])) ? $record['wwff_ref'] : '',
'COL_SRX' => (!empty($record['srx'])) ? $record['srx'] : null,
'COL_SRX_STRING' => (!empty($record['srx_string'])) ? $record['srx_string'] : '',
'COL_STATE' => (!empty($record['state'])) ? strtoupper($record['state']) : '',
@ -2693,6 +2697,7 @@ class Logbook_model extends CI_Model {
$data['COL_MY_CITY'] = trim($row['station_city']);
$data['COL_MY_IOTA'] = strtoupper(trim($row['station_iota']));
$data['COL_MY_SOTA_REF'] = strtoupper(trim($row['station_sota']));
$data['COL_MY_WWFF_REF'] = strtoupper(trim($row['station_wwff']));
$data['COL_STATION_CALLSIGN'] = strtoupper(trim($row['station_callsign']));
$data['COL_MY_DXCC'] = strtoupper(trim($row['station_dxcc']));

Wyświetl plik

@ -64,6 +64,7 @@ class Stations extends CI_Model {
'station_city' => xss_clean($this->input->post('city', true)),
'station_iota' => xss_clean(strtoupper($this->input->post('iota', true))),
'station_sota' => xss_clean(strtoupper($this->input->post('sota', true))),
'station_wwff' => xss_clean(strtoupper($this->input->post('wwff', true))),
'station_sig' => xss_clean(strtoupper($this->input->post('sig', true))),
'station_sig_info' => xss_clean(strtoupper($this->input->post('sig_info', true))),
'station_callsign' => xss_clean($this->input->post('station_callsign', true)),
@ -89,6 +90,7 @@ class Stations extends CI_Model {
'station_city' => xss_clean($this->input->post('city', true)),
'station_iota' => xss_clean($this->input->post('iota', true)),
'station_sota' => xss_clean($this->input->post('sota', true)),
'station_wwff' => xss_clean($this->input->post('wwff', true)),
'station_sig' => xss_clean($this->input->post('sig', true)),
'station_sig_info' => xss_clean($this->input->post('sig_info', true)),
'station_callsign' => xss_clean($this->input->post('station_callsign', true)),
@ -242,6 +244,10 @@ class Stations extends CI_Model {
$this->db->where('COL_MY_SOTA_REF', $row->station_sota);
}
if($row->station_wwff != "") {
$this->db->where('COL_MY_WWFF_REF', $row->station_wwff);
}
if($row->station_sig != "") {
$this->db->where('COL_MY_SIG', $row->station_sig);
}

Wyświetl plik

@ -7,6 +7,7 @@ function echo_table_header_col($ctx, $name) {
case 'Country': echo '<th>'.$ctx->lang->line('general_word_country').'</th>'; break;
case 'IOTA': echo '<th>'.$ctx->lang->line('gen_hamradio_iota').'</th>'; break;
case 'SOTA': echo '<th>'.$ctx->lang->line('gen_hamradio_sota').'</th>'; break;
case 'WWFF': echo '<th>'.$ctx->lang->line('gen_hamradio_wwff').'</th>'; break;
case 'State': echo '<th>'.$ctx->lang->line('gen_hamradio_state').'</th>'; break;
case 'Grid': echo '<th>'.$ctx->lang->line('gen_hamradio_gridsquare').'</th>'; break;
case 'Band': echo '<th>'.$ctx->lang->line('gen_hamradio_band').'</th>'; break;
@ -22,6 +23,7 @@ function echo_table_col($row, $name) {
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY))) . '</td>'; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA) . '</td>'; break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF) . '</td>'; break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF) . '</td>'; break;
case 'Grid': echo '<td>'; echoQrbCalcLink($row->station_gridsquare, $row->COL_VUCC_GRIDS, $row->COL_GRIDSQUARE); echo '</td>'; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo '<a href="https://db.satnogs.org/search/?q='.$row->COL_SAT_NAME.'" target="_blank">'.$row->COL_SAT_NAME.'</a></td>'; } else { echo strtolower($row->COL_BAND); } echo '</td>'; break;
case 'State': echo '<td>' . ($row->COL_STATE) . '</td>'; break;

Wyświetl plik

@ -2007,6 +2007,34 @@ $(document).ready(function(){
}
});
$('#wwff_ref_edit').selectize({
maxItems: 1,
closeAfterSelect: true,
loadThrottle: 250,
valueField: 'name',
labelField: 'name',
searchField: 'name',
options: [],
create: false,
load: function(query, callback) {
if (!query || query.length < 3) return callback(); // Only trigger if 3 or more characters are entered
$.ajax({
url: baseURL+'index.php/qso/get_wwff',
type: 'GET',
dataType: 'json',
data: {
query: query,
},
error: function() {
callback();
},
success: function(res) {
callback(res);
}
});
}
});
$('#darc_dok_edit').selectize({
maxItems: 1,
closeAfterSelect: true,

Wyświetl plik

@ -77,11 +77,22 @@
<form method="post" action="<?php echo site_url('logbooks/edit/'); ?><?php echo $station_logbook_details->logbook_id; ?>" name="create_profile">
<input type="hidden" name="logbook_id" value="<?php echo $station_logbook_details->logbook_id; ?>">
<?php
$linked_stations = array();
if ($station_locations_linked) {
foreach ($station_locations_linked->result() as $row) {
$linked_stations[] = $row->station_id;
}
}
?>
<div class="form-group">
<label for="StationLocationsSelect">Select Available Station Locations</label>
<select name="SelectedStationLocation" class="form-control" id="StationLocationSelect" aria-describedby="StationLocationSelectHelp">
<?php foreach ($station_locations_list->result() as $row) { ?>
<?php foreach ($station_locations_list->result() as $row) {
if (!in_array($row->station_id, $linked_stations)) { ?>
<option value="<?php echo $row->station_id;?>"><?php echo $row->station_profile_name;?> (Callsign: <?php echo $row->station_callsign;?> DXCC: <?php echo $row->station_country;?>)</option>
<?php } ?>
<?php } ?>
</select>
</div>

Wyświetl plik

@ -106,6 +106,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -119,6 +120,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -133,6 +135,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -146,6 +149,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -159,6 +163,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;

Wyświetl plik

@ -395,6 +395,11 @@
<input type="text" class="form-control" id="sota_ref_edit" name="sota_ref" value="<?php echo $qso->COL_SOTA_REF; ?>">
</div>
<div class="form-group">
<label for="wwff_ref">WWFF</label>
<input type="text" class="form-control" id="wwff_ref_edit" name="wwff_ref" value="<?php echo $qso->COL_WWFF_REF; ?>">
</div>
<div class="form-group">
<label for="sig">Sig</label>
<input type="text" class="form-control" id="sig" name="sig" value="<?php echo $qso->COL_SIG; ?>">

Wyświetl plik

@ -388,6 +388,17 @@
</div>
</div>
<div class="form-row">
<div class="form-group col-md-9">
<label for="wwff_ref"><?php echo $this->lang->line('gen_hamradio_wwff_reference'); ?></label>
<input class="form-control" id="wwff_ref" type="text" name="wwff_ref" value="" />
<small id="wwffRefHelp" class="form-text text-muted"><?php echo $this->lang->line('qso_wwff_ref_helptext'); ?></small>
</div>
<div class="form-group col-md-3 align-self-center">
<small id="wwff_info" class="badge badge-secondary"></small>
</div>
</div>
<div class="form-group">
<label for="sig"><?php echo $this->lang->line('gen_hamradio_sig'); ?></label>
<input class="form-control" id="sig" type="text" name="sig" value="" />

Wyświetl plik

@ -124,6 +124,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -137,6 +138,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -151,6 +153,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -164,6 +167,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;
@ -177,6 +181,7 @@
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY)));; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA); break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF); break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF); break;
case 'Grid': echo '<td>'; echo strlen($row->COL_GRIDSQUARE)==0?$row->COL_VUCC_GRIDS:$row->COL_GRIDSQUARE; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo $row->COL_SAT_NAME; } else { echo strtolower($row->COL_BAND); }; break;
case 'State': echo '<td>' . ($row->COL_STATE); break;

Wyświetl plik

@ -56,7 +56,7 @@
<div class="form-group">
<label for="stationCityInput">Station City</label>
<input type="text" class="form-control" name="city" id="stationCityInput" aria-describedby="stationCityInputHelp" required>
<input type="text" class="form-control" name="city" id="stationCityInput" aria-describedby="stationCityInputHelp">
<small id="stationCityInputHelp" class="form-text text-muted">Station city. For example: Inverness</small>
</div>
@ -192,16 +192,22 @@
<small id="stationSOTAInputHelp" class="form-text text-muted">Station SOTA reference.</small>
</div>
<div class="form-group">
<label for="stationWWFFInput">WWFF Reference</label>
<input type="text" class="form-control" name="wwff" id="stationWWFFInput" aria-describedby="stationWWFFInputHelp">
<small id="stationWWFFInputHelp" class="form-text text-muted">Station WWFF reference (e.g. DLFF-0069).</small>
</div>
<div class="form-group">
<label for="stationSigInput">Signature</label>
<input type="text" class="form-control" name="sig" id="stationSigInput" aria-describedby="stationSigInputHelp">
<small id="stationSigInputHelp" class="form-text text-muted">Station Signature (e.g. WWFF).</small>
<small id="stationSigInputHelp" class="form-text text-muted">Station Signature (e.g. POTA).</small>
</div>
<div class="form-group">
<label for="stationSigInfoInput">Signature Info</label>
<input type="text" class="form-control" name="sig_info" id="stationSigInfoInput" aria-describedby="stationSigInfoInputHelp">
<small id="stationSigInfoInput" class="form-text text-muted">Station Signature Info (e.g. DLFF-0029).</small>
<small id="stationSigInfoInput" class="form-text text-muted">Station Signature Info (e.g. PA-0150).</small>
</div>
<div class="form-group">

Wyświetl plik

@ -68,7 +68,7 @@
<!-- City -->
<div class="form-group">
<label for="stationCityInput">Station City</label>
<input type="text" class="form-control" name="city" id="stationCityInput" aria-describedby="stationCityInputHelp" value="<?php if(set_value('city') != "") { echo set_value('city'); } else { echo $my_station_profile->station_city; } ?>" required>
<input type="text" class="form-control" name="city" id="stationCityInput" aria-describedby="stationCityInputHelp" value="<?php if(set_value('city') != "") { echo set_value('city'); } else { echo $my_station_profile->station_city; } ?>">
<small id="stationCityInputHelp" class="form-text text-muted">Station city. For example: Inverness</small>
</div>
@ -264,6 +264,21 @@
</div>
</div>
<div class="col-md">
<div class="card">
<h5 class="card-header">WWFF</h5>
<div class="card-body">
<div class="form-group">
<label for="stationWWFFInput">WWFF Reference</label>
<input type="text" class="form-control" name="wwff" id="stationWWFFInput" aria-describedby="stationWWFFInputHelp" value="<?php if(set_value('wwff') != "") { echo set_value('wwff'); } else { echo $my_station_profile->station_wwff; } ?>">
<small id="stationWWFFInputHelp" class="form-text text-muted">Station WWFF reference.</small>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md">
<div class="card">
<h5 class="card-header">Signature</h5>

Wyświetl plik

@ -340,6 +340,7 @@
<option value="Country" <?php if ($user_column1 == "Country") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('general_word_country'); ?></option>
<option value="IOTA" <?php if ($user_column1 == "IOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_iota'); ?></option>
<option value="SOTA" <?php if ($user_column1 == "SOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_sota'); ?></option>
<option value="WWFF" <?php if ($user_column1 == "WWFF") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_wwff'); ?></option>
<option value="State" <?php if ($user_column1 == "State") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_state'); ?></option>
<option value="Grid" <?php if ($user_column1 == "Grid") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_gridsquare'); ?></option>
<option value="Operator" <?php if ($user_column1 == "Operator") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_operator'); ?></option>
@ -356,6 +357,7 @@
<option value="Country" <?php if ($user_column2 == "Country") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('general_word_country'); ?></option>
<option value="IOTA" <?php if ($user_column2 == "IOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_iota'); ?></option>
<option value="SOTA" <?php if ($user_column2 == "SOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_sota'); ?></option>
<option value="WWFF" <?php if ($user_column1 == "WWFF") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_wwff'); ?></option>
<option value="State" <?php if ($user_column2 == "State") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_state'); ?></option>
<option value="Grid" <?php if ($user_column2 == "Grid") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_gridsquare'); ?></option>
<option value="Operator" <?php if ($user_column2 == "Operator") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_operator'); ?></option>
@ -372,6 +374,7 @@
<option value="Country" <?php if ($user_column3 == "Country") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('general_word_country'); ?></option>
<option value="IOTA" <?php if ($user_column3 == "IOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_iota'); ?></option>
<option value="SOTA" <?php if ($user_column3 == "SOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_sota'); ?></option>
<option value="WWFF" <?php if ($user_column1 == "WWFF") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_wwff'); ?></option>
<option value="State" <?php if ($user_column3 == "State") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_state'); ?></option>
<option value="Grid" <?php if ($user_column3 == "Grid") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_gridsquare'); ?></option>
<option value="Operator" <?php if ($user_column3 == "Operator") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_operator'); ?></option>
@ -388,6 +391,7 @@
<option value="Country" <?php if ($user_column4 == "Country") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('general_word_country'); ?></option>
<option value="IOTA" <?php if ($user_column4 == "IOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_iota'); ?></option>
<option value="SOTA" <?php if ($user_column4 == "SOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_sota'); ?></option>
<option value="WWFF" <?php if ($user_column1 == "WWFF") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_wwff'); ?></option>
<option value="State" <?php if ($user_column4 == "State") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_state'); ?></option>
<option value="Grid" <?php if ($user_column4 == "Grid") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_gridsquare'); ?></option>
<option value="Operator" <?php if ($user_column4 == "Operator") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_operator'); ?></option>
@ -403,6 +407,7 @@
<option value="Country" <?php if ($user_column5 == "Country") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('general_word_country'); ?></option>
<option value="IOTA" <?php if ($user_column5 == "IOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_iota'); ?></option>
<option value="SOTA" <?php if ($user_column5 == "SOTA") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_sota'); ?></option>
<option value="WWFF" <?php if ($user_column1 == "WWFF") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_wwff'); ?></option>
<option value="State" <?php if ($user_column5 == "State") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_state'); ?></option>
<option value="Grid" <?php if ($user_column5 == "Grid") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_gridsquare'); ?></option>
<option value="Operator" <?php if ($user_column5 == "Operator") { echo " selected =\"selected\""; } ?>><?php echo $this->lang->line('gen_hamradio_operator'); ?></option>

Wyświetl plik

@ -7,6 +7,7 @@ function echo_table_header_col($ctx, $name) {
case 'Country': echo '<td>'.$ctx->lang->line('general_word_country').'</td>'; break;
case 'IOTA': echo '<td>'.$ctx->lang->line('gen_hamradio_iota').'</td>'; break;
case 'SOTA': echo '<td>'.$ctx->lang->line('gen_hamradio_sota').'</td>'; break;
case 'WWFF': echo '<td>'.$ctx->lang->line('gen_hamradio_wwff').'</td>'; break;
case 'State': echo '<td>'.$ctx->lang->line('gen_hamradio_state').'</td>'; break;
case 'Grid': echo '<td>'.$ctx->lang->line('gen_hamradio_gridsquare').'</td>'; break;
case 'Band': echo '<td>'.$ctx->lang->line('gen_hamradio_band').'</td>'; break;
@ -23,6 +24,7 @@ function echo_table_col($row, $name) {
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY))) . '</td>'; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA) . '</td>'; break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF) . '</td>'; break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF) . '</td>'; break;
case 'Grid': echo '<td>'; echoQrbCalcLink($row->station_gridsquare, $row->COL_VUCC_GRIDS, $row->COL_GRIDSQUARE); echo '</td>'; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo '<a href="https://db.satnogs.org/search/?q='.$row->COL_SAT_NAME.'" target="_blank">'.$row->COL_SAT_NAME.'</a></td>'; } else { echo strtolower($row->COL_BAND); } echo '</td>'; break;
case 'State': echo '<td>' . ($row->COL_STATE) . '</td>'; break;

Wyświetl plik

@ -208,6 +208,13 @@
</tr>
<?php } ?>
<?php if($row->COL_WWFF_REF != null) { ?>
<tr>
<td><?php echo $this->lang->line('gen_hamradio_wwff_reference'); ?></td>
<td><a href="https://wwff.co/directory/?showRef=<?php echo $row->COL_WWFF_REF; ?>" target="_blank"><?php echo $row->COL_WWFF_REF; ?></a></td>
</tr>
<?php } ?>
<?php if($row->COL_SIG != null) { ?>
<tr>
<td><?php echo $this->lang->line('gen_hamradio_sig'); ?></td>
@ -355,6 +362,13 @@
<td><?php echo $row->COL_TX_PWR; ?>w</td>
</tr>
<?php } ?>
<?php if($row->COL_MY_WWFF_REF) { ?>
<tr>
<td>Station WWFF Reference</td>
<td><?php echo $row->COL_MY_WWFF_REF; ?></td>
</tr>
<?php } ?>
</table>
</div>

Wyświetl plik

@ -22,6 +22,7 @@ function echo_table_col($row, $name) {
case 'Country': echo '<td>' . ucwords(strtolower(($row->COL_COUNTRY))) . '</td>'; break;
case 'IOTA': echo '<td>' . ($row->COL_IOTA) . '</td>'; break;
case 'SOTA': echo '<td>' . ($row->COL_SOTA_REF) . '</td>'; break;
case 'WWFF': echo '<td>' . ($row->COL_WWFF_REF) . '</td>'; break;
case 'Grid': echo '<td>'; echoQrbCalcLink($row->station_gridsquare, $row->COL_VUCC_GRIDS, $row->COL_GRIDSQUARE); echo '</td>'; break;
case 'Band': echo '<td>'; if($row->COL_SAT_NAME != null) { echo '<a href="https://db.satnogs.org/search/?q='.$row->COL_SAT_NAME.'" target="_blank">'.$row->COL_SAT_NAME.'</a></td>'; } else { echo strtolower($row->COL_BAND); } echo '</td>'; break;
case 'State': echo '<td>' . ($row->COL_STATE) . '</td>'; break;

Wyświetl plik

@ -83,6 +83,10 @@ thead > tr > td {
text-transform: uppercase;
}
.qso_panel #wwff_ref-selectized {
text-transform: uppercase;
}
.qso_panel #darc_dok-selectized {
text-transform: uppercase;
}
@ -103,6 +107,10 @@ thead > tr > td {
text-transform: uppercase;
}
.card-body #wwff_ref_edit-selectized {
text-transform: uppercase;
}
.card-body #darc_dok_edit-selectized {
text-transform: uppercase;
}

Wyświetl plik

@ -93,6 +93,39 @@ $( document ).ready(function() {
$('#sota_info').attr('title', 'Lookup '+$('#sota_ref').val()+' summit info on sota.org.uk');
});
$('#wwff_ref').selectize({
maxItems: 1,
closeAfterSelect: true,
loadThrottle: 250,
valueField: 'name',
labelField: 'name',
searchField: 'name',
options: [],
create: false,
load: function(query, callback) {
if (!query || query.length < 3) return callback(); // Only trigger if 3 or more characters are entered
$.ajax({
url: base_url+'index.php/qso/get_wwff',
type: 'GET',
dataType: 'json',
data: {
query: query,
},
error: function() {
callback();
},
success: function(res) {
callback(res);
}
});
}
});
$('#wwff_ref').change(function(){
$('#wwff_info').html('<a target="_blank" href="https://wwff.co/directory/?showRef='+$('#wwff_ref').val()+'"><img width="32" height="32" src="'+base_url+'images/icons/wwff.co.png"></a>');
$('#wwff_info').attr('title', 'Lookup '+$('#wwff_ref').val()+' reference info on wwff.co');
});
$('#darc_dok').selectize({
maxItems: 1,
closeAfterSelect: true,
@ -286,6 +319,9 @@ function reset_fields() {
$('#input_usa_state').val("");
$('#qso-last-table').show();
$('#partial_view').hide();
var $select = $('#wwff_ref').selectize();
var selectize = $select[0].selectize;
selectize.clear();
var $select = $('#darc_dok').selectize();
var selectize = $select[0].selectize;
selectize.clear();

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 32 KiB