diff --git a/application/controllers/Logbookadvanced.php b/application/controllers/Logbookadvanced.php index 1ace1b340..03750cd2b 100644 --- a/application/controllers/Logbookadvanced.php +++ b/application/controllers/Logbookadvanced.php @@ -615,6 +615,7 @@ class Logbookadvanced extends CI_Controller { $json_string['qth']['show'] = $this->def_boolean($this->input->post('qth')); $json_string['frequency']['show'] = $this->def_boolean($this->input->post('frequency')); $json_string['dcl']['show'] = $this->def_boolean($this->input->post('dcl')); + $json_string['last_modification']['show'] = $this->def_boolean($this->input->post('last_modification')); $obj['column_settings']= json_encode($json_string); diff --git a/application/models/Logbookadvanced_model.php b/application/models/Logbookadvanced_model.php index e30514004..3ce89043c 100644 --- a/application/models/Logbookadvanced_model.php +++ b/application/models/Logbookadvanced_model.php @@ -603,7 +603,7 @@ class Logbookadvanced_model extends CI_Model { } $sql = " - SELECT qsos.*, dxcc_entities.*, lotw_users.*, station_profile.*, satellite.*, dxcc_entities.name as dxccname, mydxcc.name AS station_country, exists(select 1 from qsl_images where qsoid = qsos.COL_PRIMARY_KEY) as qslcount, coalesce(contest.name, qsos.col_contest_id) as contestname + SELECT qsos.*, qsos.last_modified AS qso_last_modified, dxcc_entities.*, lotw_users.*, station_profile.*, satellite.*, dxcc_entities.name as dxccname, mydxcc.name AS station_country, exists(select 1 from qsl_images where qsoid = qsos.COL_PRIMARY_KEY) as qslcount, coalesce(contest.name, qsos.col_contest_id) as contestname FROM " . $this->config->item('table_name') . " qsos INNER JOIN station_profile ON qsos.station_id=station_profile.station_id LEFT OUTER JOIN satellite ON qsos.col_prop_mode='SAT' and qsos.COL_SAT_NAME = COALESCE(NULLIF(satellite.name, ''), NULLIF(satellite.displayname, '')) diff --git a/application/views/logbookadvanced/index.php b/application/views/logbookadvanced/index.php index b6350a4ee..e3b34bd4d 100644 --- a/application/views/logbookadvanced/index.php +++ b/application/views/logbookadvanced/index.php @@ -20,62 +20,62 @@ let lang_gen_hamradio_nightshadow = '= _pgettext("Map Options", "Night Shadow"); ?>'; let lang_gen_hamradio_ituzone = '= __("ITU Zone"); ?>'; let lang_gen_hamradio_cqzone = '= __("CQ Zone"); ?>'; - let lang_gen_advanced_logbook_help = '= __("Advanced Logbook Help"); ?>'; - let lang_gen_advanced_logbook_continent_fix = '= __("Continent fix"); ?>'; - let lang_gen_advanced_logbook_problem_fixing_itu_zones = '= __("There was a problem fixing ITU Zones."); ?>'; - let lang_gen_advanced_logbook_problem_fixing_cq_zones = '= __("There was a problem fixing CQ Zones."); ?>'; - let lang_gen_advanced_logbook_itu_zones_updated = '= __("ITU Zones updated successfully!"); ?>'; - let lang_gen_advanced_logbook_cq_zones_updated = '= __("CQ Zones updated successfully!"); ?>'; - let lang_gen_advanced_logbook_select_row_itu_zones = '= __("You need to select at least 1 row to fix ITU Zones!"); ?>'; - let lang_gen_advanced_logbook_select_row_cq_zones = '= __("You need to select at least 1 row to fix CQ Zones!"); ?>'; - let lang_gen_advanced_logbook_select_row_state = '= __("You need to select at least 1 row to fix State!"); ?>'; - let lang_gen_advanced_logbook_state_updated = '= __("State updated successfully!"); ?>'; - let lang_gen_advanced_logbook_problem_fixing_state = '= __("There was a problem fixing State."); ?>'; - let lang_gen_advanced_logbook_fixing_state = '= __("Fixing State"); ?>'; - let lang_gen_advanced_logbook_fixing_state_qsos = '= __("Fixing State (%s QSOs)"); ?>'; - let lang_gen_advanced_logbook_fixing_state_remaining = '= __("Fixing State: %s remaining"); ?>'; - let lang_gen_advanced_logbook_fixed = '= __("Fixed"); ?>'; - let lang_gen_advanced_logbook_fixed_with_count = '= __("Fixed: %s"); ?>'; - let lang_gen_advanced_logbook_skipped = '= __("Skipped"); ?>'; - let lang_gen_advanced_logbook_skipped_with_count = '= __("Skipped: %s, see details for skipped rows below"); ?>'; - let lang_gen_advanced_logbook_state_fix_complete = '= __("State Fix Complete"); ?>'; - let lang_gen_advanced_logbook_state_not_supported = '= __("Not all DXCC entities have state support. If you need support for additional countries, please create a ticket at %s with the GeoJSON file and desired letter coding for your country."); ?>'; - let lang_gen_advanced_logbook_github_url = 'https://github.com/wavelog/wavelog/issues'; - let lang_gen_advanced_logbook_github_link = 'Wavelog GitHub'; - let lang_gen_advanced_logbook_select_only_one_row_quickfilter = '= __("Only 1 row can be selected for Quickfilter!"); ?>' - let lang_gen_advanced_logbook_select_at_least_one_row_quickfilter = '= __("You need to select a row to use the Quickfilters!"); ?>'; - let lang_gen_advanced_logbook_select_at_least_one_row_qslcard = '= __("You need to select a least 1 row to display a QSL card!"); ?>'; - let lang_gen_advanced_logbook_continents_updated = '= __("Continents updated successfully!"); ?>'; - let lang_gen_advanced_logbook_problem_fixing_continents = '= __("There was a problem fixing Continents."); ?>'; - let lang_gen_advanced_logbook_error = '= __("ERROR"); ?>'; - let lang_gen_advanced_logbook_success = '= __("SUCCESS"); ?>'; - let lang_gen_advanced_logbook_info = '= __("INFO"); ?>'; - let lang_gen_advanced_logbook_warning = '= __("WARNING"); ?>'; - let lang_gen_advanced_logbook_qsl_card = '= __("QSL Card"); ?>'; - let lang_gen_advanced_logbook_close = '= __("Close"); ?>'; - let lang_gen_advanced_logbook_save = '= __("Save"); ?>'; - let lang_gen_advanced_logbook_update_now = '= __("Update now"); ?>'; - let lang_gen_advanced_logbook_options = '= __("Options for the Advanced Logbook"); ?>'; - let lang_gen_advanced_logbook_label_print_error = '= __("Something went wrong with label print. Go to labels and check if you have defined a label, and that it is set for print!"); ?>'; - let lang_gen_advanced_logbook_select_at_least_one_row = '= __("You need to select a least 1 row!"); ?>'; - let lang_gen_advanced_logbook_start_printing_at_which_label = '= __("Start printing at which label?"); ?>'; - let lang_gen_advanced_logbook_select_at_least_one_row_label = '= __("You need to select at least 1 row to print a label!"); ?>'; - let lang_gen_advanced_logbook_error_saving_options = '= __("An error occurred while saving options: "); ?>'; - let lang_gen_advanced_logbook_select_at_least_one_row_delete = '= __("You need to select a least 1 row to delete!"); ?>'; - let lang_gen_advanced_logbook_select_at_least_one_row_callbook = '= __("You need to select a least 1 row to update from callbook!"); ?>'; - let lang_gen_advanced_logbook_an_error_ocurred_while_making_request = '= __("An error ocurred while making the request"); ?>'; - let lang_gen_advanced_logbook_select_at_least_one_location = '= __("You need to select at least 1 location to do a search!"); ?>'; - let lang_gen_advanced_logbook_update_distances = '= __("Update Distances"); ?>'; - let lang_gen_advanced_logbook_records_updated = '= __("QSO records updated."); ?>'; - let lang_gen_advanced_logbook_problem_updating_distances = '= __("There was a problem updating distances."); ?>'; - let lang_gen_advanced_logbook_distances_updated = '= __("Distances updated successfully!"); ?>'; + let lang_gen_advanced_logbook_help = '= __("Advanced Logbook Help"); ?>'; + let lang_gen_advanced_logbook_continent_fix = '= __("Continent fix"); ?>'; + let lang_gen_advanced_logbook_problem_fixing_itu_zones = '= __("There was a problem fixing ITU Zones."); ?>'; + let lang_gen_advanced_logbook_problem_fixing_cq_zones = '= __("There was a problem fixing CQ Zones."); ?>'; + let lang_gen_advanced_logbook_itu_zones_updated = '= __("ITU Zones updated successfully!"); ?>'; + let lang_gen_advanced_logbook_cq_zones_updated = '= __("CQ Zones updated successfully!"); ?>'; + let lang_gen_advanced_logbook_select_row_itu_zones = '= __("You need to select at least 1 row to fix ITU Zones!"); ?>'; + let lang_gen_advanced_logbook_select_row_cq_zones = '= __("You need to select at least 1 row to fix CQ Zones!"); ?>'; + let lang_gen_advanced_logbook_select_row_state = '= __("You need to select at least 1 row to fix State!"); ?>'; + let lang_gen_advanced_logbook_state_updated = '= __("State updated successfully!"); ?>'; + let lang_gen_advanced_logbook_problem_fixing_state = '= __("There was a problem fixing State."); ?>'; + let lang_gen_advanced_logbook_fixing_state = '= __("Fixing State"); ?>'; + let lang_gen_advanced_logbook_fixing_state_qsos = '= __("Fixing State (%s QSOs)"); ?>'; + let lang_gen_advanced_logbook_fixing_state_remaining = '= __("Fixing State: %s remaining"); ?>'; + let lang_gen_advanced_logbook_fixed = '= __("Fixed"); ?>'; + let lang_gen_advanced_logbook_fixed_with_count = '= __("Fixed: %s"); ?>'; + let lang_gen_advanced_logbook_skipped = '= __("Skipped"); ?>'; + let lang_gen_advanced_logbook_skipped_with_count = '= __("Skipped: %s, see details for skipped rows below"); ?>'; + let lang_gen_advanced_logbook_state_fix_complete = '= __("State Fix Complete"); ?>'; + let lang_gen_advanced_logbook_state_not_supported = '= __("Not all DXCC entities have state support. If you need support for additional countries, please create a ticket at %s with the GeoJSON file and desired letter coding for your country."); ?>'; + let lang_gen_advanced_logbook_github_url = 'https://github.com/wavelog/wavelog/issues'; + let lang_gen_advanced_logbook_github_link = 'Wavelog GitHub'; + let lang_gen_advanced_logbook_select_only_one_row_quickfilter = '= __("Only 1 row can be selected for Quickfilter!"); ?>' + let lang_gen_advanced_logbook_select_at_least_one_row_quickfilter = '= __("You need to select a row to use the Quickfilters!"); ?>'; + let lang_gen_advanced_logbook_select_at_least_one_row_qslcard = '= __("You need to select a least 1 row to display a QSL card!"); ?>'; + let lang_gen_advanced_logbook_continents_updated = '= __("Continents updated successfully!"); ?>'; + let lang_gen_advanced_logbook_problem_fixing_continents = '= __("There was a problem fixing Continents."); ?>'; + let lang_gen_advanced_logbook_error = '= __("ERROR"); ?>'; + let lang_gen_advanced_logbook_success = '= __("SUCCESS"); ?>'; + let lang_gen_advanced_logbook_info = '= __("INFO"); ?>'; + let lang_gen_advanced_logbook_warning = '= __("WARNING"); ?>'; + let lang_gen_advanced_logbook_qsl_card = '= __("QSL Card"); ?>'; + let lang_gen_advanced_logbook_close = '= __("Close"); ?>'; + let lang_gen_advanced_logbook_save = '= __("Save"); ?>'; + let lang_gen_advanced_logbook_update_now = '= __("Update now"); ?>'; + let lang_gen_advanced_logbook_options = '= __("Options for the Advanced Logbook"); ?>'; + let lang_gen_advanced_logbook_label_print_error = '= __("Something went wrong with label print. Go to labels and check if you have defined a label, and that it is set for print!"); ?>'; + let lang_gen_advanced_logbook_select_at_least_one_row = '= __("You need to select a least 1 row!"); ?>'; + let lang_gen_advanced_logbook_start_printing_at_which_label = '= __("Start printing at which label?"); ?>'; + let lang_gen_advanced_logbook_select_at_least_one_row_label = '= __("You need to select at least 1 row to print a label!"); ?>'; + let lang_gen_advanced_logbook_error_saving_options = '= __("An error occurred while saving options: "); ?>'; + let lang_gen_advanced_logbook_select_at_least_one_row_delete = '= __("You need to select a least 1 row to delete!"); ?>'; + let lang_gen_advanced_logbook_select_at_least_one_row_callbook = '= __("You need to select a least 1 row to update from callbook!"); ?>'; + let lang_gen_advanced_logbook_an_error_ocurred_while_making_request = '= __("An error ocurred while making the request"); ?>'; + let lang_gen_advanced_logbook_select_at_least_one_location = '= __("You need to select at least 1 location to do a search!"); ?>'; + let lang_gen_advanced_logbook_update_distances = '= __("Update Distances"); ?>'; + let lang_gen_advanced_logbook_records_updated = '= __("QSO records updated."); ?>'; + let lang_gen_advanced_logbook_problem_updating_distances = '= __("There was a problem updating distances."); ?>'; + let lang_gen_advanced_logbook_distances_updated = '= __("Distances updated successfully!"); ?>'; - let lang_gen_advanced_logbook_confirm_fix_missing_dxcc = '= __("Are you sure you want to fix all QSOs with missing DXCC information? This action cannot be undone."); ?>'; - let lang_gen_advanced_logbook_dupe_search = '= __("Duplicate Search"); ?>'; - let lang_gen_advanced_logbook_search = '= __("Search"); ?>'; + let lang_gen_advanced_logbook_confirm_fix_missing_dxcc = '= __("Are you sure you want to fix all QSOs with missing DXCC information? This action cannot be undone."); ?>'; + let lang_gen_advanced_logbook_dupe_search = '= __("Duplicate Search"); ?>'; + let lang_gen_advanced_logbook_search = '= __("Search"); ?>'; - let lang_gen_advanced_logbook_show_more = '= __("Show more"); ?>'; - let lang_gen_advanced_logbook_show_less = '= __("Show less"); ?>'; + let lang_gen_advanced_logbook_show_more = '= __("Show more"); ?>'; + let lang_gen_advanced_logbook_show_less = '= __("Show less"); ?>'; @@ -126,6 +126,7 @@ \"qth\":{\"show\":\"true\"}, \"frequency\":{\"show\":\"true\"}, \"dcl\":{\"show\":\"true\"}, + \"last_modification\":{\"show\":\"true\"}, }"; } $current_opts = json_decode($options); @@ -218,23 +219,26 @@ echo "\nvar o_template = { antennaelevation: {show: 'true'}};"; echo "\nuser_options={...user_options, ...o_template};"; } - if (!isset($current_opts->county)) { + if (!isset($current_opts->county)) { echo "\nvar o_template = { county: {show: 'true'}};"; echo "\nuser_options={...user_options, ...o_template};"; } - if (!isset($current_opts->qth)) { + if (!isset($current_opts->qth)) { echo "\nvar o_template = { qth: {show: 'true'}};"; echo "\nuser_options={...user_options, ...o_template};"; } - if (!isset($current_opts->frequency)) { + if (!isset($current_opts->frequency)) { echo "\nvar o_template = { frequency: {show: 'true'}};"; echo "\nuser_options={...user_options, ...o_template};"; } - if (!isset($current_opts->dcl)) { + if (!isset($current_opts->dcl)) { echo "\nvar o_template = { dcl: {show: 'true'}};"; echo "\nuser_options={...user_options, ...o_template};"; } - + if (!isset($current_opts->last_modification)) { + echo "\nvar o_template = { last_modification: {show: 'true'}};"; + echo "\nuser_options={...user_options, ...o_template};"; + } foreach ($mapoptions as $mo) { if ($mo != null) { @@ -870,6 +874,9 @@ $options = json_decode($options); datetime->show ?? "true") == "true") { echo '