2023-10-26 20:14:53 +02:00
|
|
|
<script type="text/javascript">
|
2023-10-28 00:23:43 +02:00
|
|
|
var Bands = <?php echo json_encode($bands); ?>;
|
2023-10-27 21:45:15 +02:00
|
|
|
var user_id = <?php echo $this->session->userdata('user_id'); ?>;
|
2023-10-26 20:14:53 +02:00
|
|
|
</script>
|
|
|
|
|
|
2023-10-24 22:54:35 +02:00
|
|
|
<div class="container">
|
2023-10-26 20:14:53 +02:00
|
|
|
|
2025-11-05 22:15:15 +00:00
|
|
|
<div id="simpleFleInfo" class="mt-3 mb-2">
|
2023-10-28 00:23:43 +02:00
|
|
|
<script>
|
2023-10-30 23:52:20 +01:00
|
|
|
var lang_qso_simplefle_info_ln1 = "<?php echo lang('qso_simplefle_info_ln1'); ?>";
|
|
|
|
|
var lang_qso_simplefle_info_ln2 = "<?php echo lang('qso_simplefle_info_ln2'); ?>";
|
|
|
|
|
var lang_qso_simplefle_info_ln3 = "<?php echo lang('qso_simplefle_info_ln3'); ?>";
|
|
|
|
|
var lang_qso_simplefle_info_ln4 = "<?php echo lang('qso_simplefle_info_ln4'); ?>";
|
|
|
|
|
var lang_qso_simplefle_syntax_help = "<?php echo lang('qso_simplefle_syntax_help_button'); ?>";
|
|
|
|
|
var lang_qso_simplefle_syntax_help_title = "<?php echo lang('qso_simplefle_syntax_help_title'); ?>";
|
2023-11-01 21:08:21 +01:00
|
|
|
var lang_qso_simplefle_syntax_help_close_w_sample = "<?php echo lang('qso_simplefle_syntax_help_close_w_sample'); ?>";
|
|
|
|
|
var lang_admin_close = "<?php echo lang('admin_close'); ?>";
|
2023-10-30 23:52:20 +01:00
|
|
|
var lang_qso_simplefle_error_band = "<?php echo lang('qso_simplefle_error_band'); ?>";
|
|
|
|
|
var lang_qso_simplefle_error_mode = "<?php echo lang('qso_simplefle_error_mode'); ?>";
|
|
|
|
|
var lang_qso_simplefle_error_time = "<?php echo lang('qso_simplefle_error_time'); ?>";
|
|
|
|
|
var lang_qso_simplefle_error_date = "<?php echo lang('qso_simplefle_error_date'); ?>";
|
|
|
|
|
var lang_qso_simplefle_qso_list_total = "<?php echo lang('qso_simplefle_qso_list_total'); ?>";
|
|
|
|
|
var lang_gen_hamradio_qso = "<?php echo lang('gen_hamradio_qso'); ?>";
|
|
|
|
|
var lang_qso_simplefle_error_stationcall = "<?php echo lang('qso_simplefle_error_stationcall'); ?>";
|
|
|
|
|
var lang_qso_simplefle_error_operator = "<?php echo lang('qso_simplefle_error_operator'); ?>";
|
|
|
|
|
var lang_qso_simplefle_warning_reset = "<?php echo lang('qso_simplefle_warning_reset'); ?>";
|
|
|
|
|
var lang_qso_simplefle_warning_missing_band_mode = "<?php echo lang('qso_simplefle_warning_missing_band_mode'); ?>";
|
2023-11-08 17:51:13 +01:00
|
|
|
var lang_qso_simplefle_warning_missing_time = "<?php echo lang('qso_simplefle_warning_missing_time'); ?>";
|
2023-11-02 08:22:01 +01:00
|
|
|
var lang_qso_simplefle_warning_example_data = "<?php echo lang('qso_simplefle_warning_example_data'); ?>";
|
2023-10-30 23:52:20 +01:00
|
|
|
var lang_qso_simplefle_confirm_save_to_log = "<?php echo lang('qso_simplefle_confirm_save_to_log'); ?>";
|
|
|
|
|
var lang_qso_simplefle_success_save_to_log_header = "<?php echo lang('qso_simplefle_success_save_to_log_header'); ?>";
|
|
|
|
|
var lang_qso_simplefle_success_save_to_log = "<?php echo lang('qso_simplefle_success_save_to_log'); ?>";
|
2023-10-28 00:23:43 +02:00
|
|
|
</script>
|
2025-11-05 22:15:15 +00:00
|
|
|
<h2 class="mb-2"><?php echo $page_title; ?></h2>
|
2023-11-14 13:35:53 +01:00
|
|
|
<button type="button" class="btn btn-sm btn-primary me-1" id="simpleFleInfoButton"><?php echo lang('qso_simplefle_info'); ?></button>
|
2023-10-28 00:23:43 +02:00
|
|
|
</div>
|
2023-10-25 09:29:16 +02:00
|
|
|
|
2023-10-28 00:23:43 +02:00
|
|
|
<?php if ($this->session->flashdata('message')) { ?>
|
|
|
|
|
<!-- Display Message -->
|
2023-11-14 20:19:57 +01:00
|
|
|
<div class="alert alert-danger">
|
2023-10-28 00:23:43 +02:00
|
|
|
<p><?php echo $this->session->flashdata('message'); ?></p>
|
|
|
|
|
</div>
|
|
|
|
|
<?php } ?>
|
2023-10-25 09:29:16 +02:00
|
|
|
</div>
|
|
|
|
|
<div class="container-fluid">
|
2023-10-26 20:14:53 +02:00
|
|
|
|
2023-10-28 00:23:43 +02:00
|
|
|
<div class="row mt-4">
|
|
|
|
|
<!-- START BASIC QSO DATA -->
|
2023-12-07 21:28:10 +01:00
|
|
|
<div class="card col-xs-12 col-md-4 simplefle" style="border: none">
|
2025-11-05 22:31:14 +00:00
|
|
|
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="card-header py-2">
|
2023-10-30 23:52:20 +01:00
|
|
|
<?php echo lang('qso_simplefle_qso_data'); ?>
|
2023-10-28 00:23:43 +02:00
|
|
|
</div>
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="card-body py-2">
|
2023-10-29 23:25:47 +01:00
|
|
|
<div class="row">
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="col-xs-12 col-lg-6 col-xl-6">
|
|
|
|
|
<div class="mb-2">
|
|
|
|
|
<label for="qsodate" class="form-label mb-1"><?php echo lang('qso_simplefle_qso_date'); ?></label>
|
|
|
|
|
<input type="date" class="form-control form-control-sm" id="qsodate">
|
2023-11-04 12:55:33 +01:00
|
|
|
<small class="form-text text-muted"><?php echo lang('qso_simplefle_qso_date_hint'); ?></small>
|
2023-10-25 09:29:16 +02:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="col-xs-12 col-lg-6 col-xl-6">
|
|
|
|
|
<label class="form-label mb-1"><?php echo lang('qso_simplefle_utc_time'); ?></label>
|
|
|
|
|
<div class="badge bg-primary fs-5" id="utc-time"></div>
|
2023-10-25 09:29:16 +02:00
|
|
|
</div>
|
2023-10-29 23:25:47 +01:00
|
|
|
</div>
|
|
|
|
|
<div class="row">
|
|
|
|
|
<div class="col-xs-12 col-lg-6">
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="mb-2">
|
|
|
|
|
<label for="station-call" class="form-label mb-1">
|
2023-10-30 23:52:20 +01:00
|
|
|
<?php echo lang('qso_simplefle_station_call_location'); ?>
|
2023-10-29 23:25:47 +01:00
|
|
|
</label>
|
2025-11-05 22:15:15 +00:00
|
|
|
<select name="station_profile" class="station_id form-select form-select-sm" id="station-call">
|
2023-10-29 23:25:47 +01:00
|
|
|
<option value="-">-</option>
|
|
|
|
|
<?php foreach ($station_profile->result() as $station) { ?>
|
|
|
|
|
<option value="<?php echo $station->station_id; ?>" <?php if ($station->station_id == $this->stations->find_active()) {
|
|
|
|
|
echo 'selected';
|
|
|
|
|
} ?>>
|
|
|
|
|
<?php echo lang('gen_hamradio_callsign') . ": " . $station->station_callsign . " (" . $station->station_profile_name . ")"; ?>
|
|
|
|
|
</option>
|
|
|
|
|
<?php } ?>
|
|
|
|
|
</select>
|
|
|
|
|
<div class="alert alert-danger" role="alert" id="warningStationCall" style="display: none"> </div>
|
2023-10-30 23:52:20 +01:00
|
|
|
<small class="form-text text-muted"><?php echo lang('qso_simplefle_station_call_location_hint'); ?></small>
|
2023-10-28 00:23:43 +02:00
|
|
|
</div>
|
2023-10-29 23:25:47 +01:00
|
|
|
</div>
|
2023-11-04 12:45:23 +01:00
|
|
|
<div class="col-xs-12 col-lg-6">
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="mb-2">
|
|
|
|
|
<label for="operator" class="form-label mb-1"><?php echo lang('qso_simplefle_operator'); ?> <span class="text-muted input-example"><?php echo lang('qso_simplefle_operator_hint'); ?></span></label>
|
|
|
|
|
<input type="text" class="form-control form-control-sm text-uppercase" id="operator" value="<?php echo $this->session->userdata('operator_callsign'); ?>">
|
2023-11-04 12:45:23 +01:00
|
|
|
<div class="alert alert-danger" role="alert" id="warningOperatorField" style="display: none"> </div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-10-25 09:29:16 +02:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-10-28 00:23:43 +02:00
|
|
|
|
|
|
|
|
<!-- END BASIC QSO DATA -->
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="card-body py-2">
|
|
|
|
|
<!-- Satellite feedback area - moved above textarea for better visibility -->
|
|
|
|
|
<div id="satellite-feedback" class="mb-2" style="display: none;">
|
|
|
|
|
<div class="alert alert-success mb-0 py-2" role="alert" style="border-left: 4px solid #28a745;">
|
|
|
|
|
<div class="d-flex align-items-center">
|
|
|
|
|
<i class="fas fa-satellite me-2"></i>
|
|
|
|
|
<strong id="sat-name-display"></strong>
|
|
|
|
|
</div>
|
|
|
|
|
<div id="sat-modes-display" class="mt-1 ms-4"></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2025-11-05 22:31:14 +00:00
|
|
|
|
2023-10-28 00:23:43 +02:00
|
|
|
<div class="row">
|
2023-10-25 09:29:16 +02:00
|
|
|
<div class="col">
|
2025-11-05 22:15:15 +00:00
|
|
|
<label for="textarea" class="form-label"><?php echo lang('qso_simplefle_enter_the_data'); ?></label>
|
|
|
|
|
<textarea name="qso" class="form-control form-control-sm qso-area" cols="auto" rows="12" id="textarea"></textarea>
|
2023-10-25 09:29:16 +02:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-10-28 00:23:43 +02:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-12-07 21:28:10 +01:00
|
|
|
<div class="card col-xs-12 col-md-8 simplefle" style="border: none">
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="card-header py-2">
|
2023-10-30 23:52:20 +01:00
|
|
|
<?php echo lang('qso_simplefle_qso_list'); ?>
|
2023-10-28 00:29:43 +02:00
|
|
|
</div>
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="card-body py-2">
|
2025-11-05 22:27:30 +00:00
|
|
|
<style>
|
|
|
|
|
/* Override the sfletable CSS to allow proper horizontal scrolling */
|
|
|
|
|
#qsoTable.sfletable.table thead,
|
|
|
|
|
#qsoTable.sfletable.table tbody tr {
|
|
|
|
|
display: table-row-group !important;
|
|
|
|
|
width: auto !important;
|
|
|
|
|
}
|
2025-11-05 22:31:14 +00:00
|
|
|
|
2025-11-05 22:27:30 +00:00
|
|
|
#qsoTable.sfletable.table thead tr,
|
|
|
|
|
#qsoTable.sfletable.table tbody tr {
|
|
|
|
|
display: table-row !important;
|
|
|
|
|
}
|
2025-11-05 22:31:14 +00:00
|
|
|
|
2025-11-05 22:27:30 +00:00
|
|
|
#qsoTable.sfletable.table tbody {
|
|
|
|
|
display: table-row-group !important;
|
|
|
|
|
position: static !important;
|
|
|
|
|
width: 100% !important;
|
|
|
|
|
overflow-y: visible !important;
|
|
|
|
|
max-height: none !important;
|
|
|
|
|
}
|
2025-11-05 22:31:14 +00:00
|
|
|
|
2025-11-05 22:27:30 +00:00
|
|
|
#qsoTable.sfletable {
|
|
|
|
|
height: auto !important;
|
|
|
|
|
}
|
|
|
|
|
</style>
|
|
|
|
|
<div class="qsoList table-responsive">
|
2026-01-14 10:23:15 +00:00
|
|
|
<table class="table contacttable table-striped table-hover sfletable" id="qsoTable" style="table-layout: fixed; min-width: 970px;">
|
2023-10-28 00:29:43 +02:00
|
|
|
<thead>
|
|
|
|
|
<tr>
|
2025-11-05 22:27:30 +00:00
|
|
|
<th style="padding: 0.5rem; width: 110px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('general_word_date'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 70px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('general_word_time'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 90px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_callsign'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 140px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_band'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 70px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_mode'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 70px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_rsts'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 70px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_rstr'); ?></th>
|
|
|
|
|
<th style="padding: 0.5rem; width: 90px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_operator'); ?></th>
|
2026-04-27 22:41:40 +01:00
|
|
|
<th style="padding: 0.5rem; width: 110px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"><?php echo lang('gen_hamradio_refs'); ?>*</th> <th style="padding: 0.5rem; width: 80px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">Grid</th> <th style="padding: 0.5rem; width: 150px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">Comment</th>
|
2023-10-28 00:29:43 +02:00
|
|
|
</tr>
|
|
|
|
|
</thead>
|
|
|
|
|
<tbody id="qsoTableBody">
|
|
|
|
|
</tbody>
|
|
|
|
|
</table>
|
|
|
|
|
</div>
|
2025-11-05 22:27:30 +00:00
|
|
|
<div class="d-flex flex-column flex-sm-row justify-content-between align-items-start align-items-sm-center mt-3 mb-2 gap-2">
|
2025-11-05 22:15:15 +00:00
|
|
|
<div>
|
|
|
|
|
<span class="badge bg-secondary js-qso-count">0 QSOs</span>
|
2023-11-02 14:50:21 +01:00
|
|
|
</div>
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="text-muted small">
|
2023-11-02 14:50:21 +01:00
|
|
|
<?php echo lang('qso_simplefle_refs_hint'); ?>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-10-28 00:23:43 +02:00
|
|
|
</div>
|
2025-11-05 22:15:15 +00:00
|
|
|
<div class="card-footer bg-white">
|
|
|
|
|
<div class="row g-2">
|
|
|
|
|
<div class="col-12 col-sm-6 col-md-3">
|
|
|
|
|
<button class="btn btn-primary w-100 js-reload-qso">
|
|
|
|
|
<i class="fas fa-sync-alt me-1"></i><?php echo lang('qso_simplefle_reload'); ?>
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="col-12 col-sm-6 col-md-3">
|
|
|
|
|
<button class="btn btn-warning w-100 js-save-to-log">
|
|
|
|
|
<i class="fas fa-save me-1"></i><?php echo lang('qso_simplefle_save'); ?>
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="col-12 col-sm-6 col-md-3">
|
|
|
|
|
<button class="btn btn-danger w-100 js-empty-qso">
|
|
|
|
|
<i class="fas fa-trash me-1"></i><?php echo lang('qso_simplefle_clear'); ?>
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="col-12 col-sm-6 col-md-3">
|
|
|
|
|
<button class="btn btn-success w-100" id="js-syntax">
|
|
|
|
|
<i class="fas fa-question-circle me-1"></i><?php echo lang('qso_simplefle_syntax_help_button'); ?>
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
2023-10-25 09:29:16 +02:00
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-10-26 20:14:53 +02:00
|
|
|
</div>
|
2023-11-02 14:50:21 +01:00
|
|
|
</div>
|