Revamp ADIF import/export UI and enhance styling

Improves the ADIF import/export page with a more structured layout, icons, grouped options, and clearer forms for import, export, LoTW, and DCL actions. Adds extensive CSS for better visual hierarchy, card and tab styling, form controls, and alert presentation to provide a modern, user-friendly experience.
这个提交包含在:
Peter Goodhall 2025-08-09 21:55:20 +01:00
父节点 c00d28d519
当前提交 8039d41fb4
共有 2 个文件被更改,包括 439 次插入182 次删除

查看文件

@ -1,6 +1,12 @@
<div class="container adif" id="adif_import">
<h2><?php echo $page_title; ?></h2>
<div class="row">
<div class="col-md-12">
<h2><i class="fas fa-file-import me-2"></i><?php echo $page_title; ?></h2>
<p class="text-muted mb-4">Import and export your amateur radio logs in ADIF format</p>
</div>
</div>
<?php
$showtab = '';
if (isset($tab)) {
@ -8,9 +14,9 @@
}
?>
<div class="card">
<div class="card-header">
<ul class="nav nav-tabs card-header-tabs pull-right" role="tablist">
<div class="card shadow-sm">
<div class="card-header bg-light">
<ul class="nav nav-tabs card-header-tabs" role="tablist">
<li class="nav-item">
<a class="nav-link <?php if ($showtab == '' || $showtab == 'adif') {
echo 'active';
@ -18,13 +24,19 @@
echo 'true';
} else {
echo 'false';
} ?>"><?php echo lang('adif_import') ?></a>
} ?>">
<i class="fas fa-upload me-1"></i><?php echo lang('adif_import') ?>
</a>
</li>
<li class="nav-item">
<a class="nav-link" id="export-tab" data-bs-toggle="tab" href="#export" role="tab" aria-controls="export" aria-selected="false"><?php echo lang('adif_export') ?></a>
<a class="nav-link" id="export-tab" data-bs-toggle="tab" href="#export" role="tab" aria-controls="export" aria-selected="false">
<i class="fas fa-download me-1"></i><?php echo lang('adif_export') ?>
</a>
</li>
<li class="nav-item">
<a class="nav-link" id="lotw-tab" data-bs-toggle="tab" href="#lotw" role="tab" aria-controls="lotw" aria-selected="false"><?php echo lang('lotw_title') ?></a>
<a class="nav-link" id="lotw-tab" data-bs-toggle="tab" href="#lotw" role="tab" aria-controls="lotw" aria-selected="false">
<i class="fas fa-globe me-1"></i><?php echo lang('lotw_title') ?>
</a>
</li>
<li class="nav-item">
<a class="nav-link <?php if ($showtab == 'dcl') {
@ -33,7 +45,9 @@
echo 'true';
} else {
echo 'false';
} ?>"><?php echo lang('darc_dcl') ?></a>
} ?>">
<i class="fas fa-flag me-1"></i><?php echo lang('darc_dcl') ?>
</a>
</li>
</ul>
</div>
@ -48,220 +62,378 @@
<?php if (isset($error) && ($showtab == '' || $showtab == 'adif')) { ?>
<div class="alert alert-danger" role="alert">
<?php echo $error; ?>
<i class="fas fa-exclamation-triangle me-2"></i><?php echo $error; ?>
</div>
<?php } ?>
<p><span class="badge text-bg-warning"><?php echo lang('general_word_important') ?></span> <?php echo lang('adif_alert_log_files_type') ?></p>
<p><span class="badge text-bg-warning"><?php echo lang('general_word_warning') ?></span> <?php echo lang('gen_max_file_upload_size') ?><?php echo $max_upload; ?>B.</p>
<!-- Important Notices -->
<div class="row mb-4">
<div class="col-md-12">
<div class="alert alert-warning d-flex align-items-center" role="alert">
<i class="fas fa-info-circle me-2"></i>
<div>
<strong><?php echo lang('general_word_important') ?>:</strong> <?php echo lang('adif_alert_log_files_type') ?><br>
<strong><?php echo lang('general_word_warning') ?>:</strong> <?php echo lang('gen_max_file_upload_size') ?><?php echo $max_upload; ?>B.
</div>
</div>
</div>
</div>
<form class="form" action="<?php echo site_url('adif/import'); ?>" method="post" enctype="multipart/form-data">
<select name="station_profile" class="form-select mb-2 me-sm-2" style="width: 20%;">
<option value="0"><?php echo lang('adif_select_stationlocation') ?></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 =\"selected\"";
} ?>><?php echo lang('gen_hamradio_callsign') . ": " ?><?php echo $station->station_callsign; ?> (<?php echo $station->station_profile_name; ?>)</option>
<?php } ?>
</select>
<label class="visually-hidden" for="inlineFormInputName2"><?php echo lang('adif_file_label') ?></label>
<input class="file-input mb-2 me-sm-2" type="file" name="userfile" size="20" />
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="skipDuplicate" value="1" id="skipDuplicate">
<label class="form-check-label" for="skipDuplicate"><?php echo lang('adif_import_dup') ?></label>
<!-- Station Selection and File Upload -->
<div class="row mb-4">
<div class="col-md-6">
<h5 class="mb-3"><i class="fas fa-tower-broadcast me-2"></i>Station Selection</h5>
<div class="mb-3">
<label for="station_profile" class="form-label">Select Station Location</label>
<select name="station_profile" id="station_profile" class="form-select">
<option value="0"><?php echo lang('adif_select_stationlocation') ?></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 =\"selected\"";
} ?>>
<?php echo lang('gen_hamradio_callsign') . ": " ?><?php echo $station->station_callsign; ?> (<?php echo $station->station_profile_name; ?>)
</option>
<?php } ?>
</select>
</div>
</div>
<div class="col-md-6">
<h5 class="mb-3"><i class="fas fa-file me-2"></i>File Upload</h5>
<div class="mb-3">
<label for="userfile" class="form-label">Choose ADIF File</label>
<input class="form-control" type="file" name="userfile" id="userfile" accept=".adi,.ADI,.adif,.ADIF" />
<div class="form-text">Supported formats: .adi, .adif</div>
</div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="markLotw" value="1" id="markLotwImport">
<label class="form-check-label" for="markLotwImport"><?php echo lang('adif_mark_imported_lotw') ?></label>
<!-- Import Options -->
<div class="row mb-4">
<div class="col-md-12">
<h5 class="mb-3"><i class="fas fa-cogs me-2"></i>Import Options</h5>
<!-- Basic Options -->
<div class="card mb-3">
<div class="card-header">
<h6 class="mb-0">Basic Settings</h6>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="skipDuplicate" value="1" id="skipDuplicate">
<label class="form-check-label" for="skipDuplicate">
<strong><?php echo lang('adif_import_dup') ?></strong>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="dxccAdif" value="1" id="dxccAdif">
<label class="form-check-label" for="dxccAdif">
<strong><?php echo lang('adif_dxcc_from_adif') ?></strong>
<br><small class="text-muted"><?php echo lang('adif_dxcc_from_adif_hint') ?></small>
</label>
</div>
</div>
<div class="col-md-6">
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="operatorName" value="1" id="operatorName">
<label class="form-check-label" for="operatorName">
<strong><?php echo lang('adif_always_use_login_call_as_op') ?></strong>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="skipStationCheck" value="1" id="skipStationCheck">
<label class="form-check-label" for="skipStationCheck">
<span class="badge bg-danger me-1"><?php echo lang('general_word_danger') ?></span>
<strong><?php echo lang('adif_ignore_station_call') ?></strong>
<br><small class="text-muted"><?php echo lang('adif_ignore_station_call_hint') ?></small>
</label>
</div>
</div>
</div>
</div>
</div>
<div class="small form-text text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="markHrd" value="1" id="markHrdImport">
<label class="form-check-label" for="markHrdImport"><?php echo lang('adif_mark_imported_hrdlog') ?></label>
</div>
<div class="small form-text text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="markQrz" value="1" id="markQrzImport">
<label class="form-check-label" for="markQrzImport"><?php echo lang('adif_mark_imported_qrz') ?></label>
</div>
<div class="small form-text text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="markClublog" value="1" id="markClublogImport">
<label class="form-check-label" for="markClublogImport"><?php echo lang('adif_mark_imported_clublog') ?></label>
</div>
<div class="small form-text text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="dxccAdif" value="1" id="dxccAdif">
<label class="form-check-label" for="dxccAdif"><?php echo lang('adif_dxcc_from_adif') ?></label>
</div>
<div class="small form-text text-muted"><?php echo lang('adif_dxcc_from_adif_hint') ?></div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="operatorName" value="1" id="operatorName">
<label class="form-check-label" for="operatorName"><?php echo lang('adif_always_use_login_call_as_op') ?></label>
<!-- Logbook Upload Markers -->
<div class="card">
<div class="card-header">
<h6 class="mb-0">Mark as Uploaded to Online Logbooks</h6>
<small class="text-muted">Select if ADIF being imported does not contain this information</small>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="markLotw" value="1" id="markLotwImport">
<label class="form-check-label" for="markLotwImport">
<strong><?php echo lang('adif_mark_imported_lotw') ?></strong>
<br><small class="text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></small>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="markHrd" value="1" id="markHrdImport">
<label class="form-check-label" for="markHrdImport">
<strong><?php echo lang('adif_mark_imported_hrdlog') ?></strong>
<br><small class="text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></small>
</label>
</div>
</div>
<div class="col-md-6">
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="markQrz" value="1" id="markQrzImport">
<label class="form-check-label" for="markQrzImport">
<strong><?php echo lang('adif_mark_imported_qrz') ?></strong>
<br><small class="text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></small>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="markClublog" value="1" id="markClublogImport">
<label class="form-check-label" for="markClublogImport">
<strong><?php echo lang('adif_mark_imported_clublog') ?></strong>
<br><small class="text-muted"><?php echo lang('adif_hint_no_info_in_file') ?></small>
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="skipStationCheck" value="1" id="skipStationCheck">
<label class="form-check-label" for="skipStationCheck"><span class="badge text-bg-warning"><?php echo lang('general_word_danger') ?></span> <?php echo lang('adif_ignore_station_call') ?></label>
</div>
<div class="small form-text text-muted"><?php echo lang('adif_ignore_station_call_hint') ?></div>
<!-- Submit Button -->
<div class="row">
<div class="col-md-12">
<button type="submit" class="btn btn-primary btn-lg">
<i class="fas fa-upload me-2"></i><?php echo lang('adif_upload') ?>
</button>
</div>
</div>
<button type="submit" class="btn btn-sm btn-primary mb-2" value="Upload"><?php echo lang('adif_upload') ?></button>
</form>
</div>
<div class="tab-pane fade" id="export" role="tabpanel" aria-labelledby="home-tab">
<div class="tab-pane fade" id="export" role="tabpanel" aria-labelledby="export-tab">
<!-- Custom Export Section -->
<div class="row mb-4">
<div class="col-md-12">
<h5 class="mb-3"><i class="fas fa-download me-2"></i><?php echo lang('adif_export_take_it_anywhere') ?></h5>
<p class="text-muted mb-4"><?php echo lang('adif_export_take_it_anywhere_hint') ?></p>
<form class="form" action="<?php echo site_url('adif/export_custom'); ?>" method="post" enctype="multipart/form-data">
<div class="card">
<div class="card-header">
<h6 class="mb-0">Export Settings</h6>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="mb-3">
<label for="station_profile_export" class="form-label">Station Location</label>
<select name="station_profile" id="station_profile_export" class="form-select">
<option value="0"><?php echo lang('adif_select_stationlocation') ?></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 =\"selected\"";
} ?>>
<?php echo lang('gen_hamradio_callsign') . ": " ?><?php echo $station->station_callsign; ?> (<?php echo $station->station_profile_name; ?>)
</option>
<?php } ?>
</select>
</div>
<div class="mb-3">
<label for="from_export" class="form-label"><?php echo lang('gen_from_date') ?></label>
<input name="from" id="from_export" type="date" class="form-control">
</div>
<div class="mb-3">
<label for="to_export" class="form-label"><?php echo lang('gen_to_date') ?></label>
<input name="to" id="to_export" type="date" class="form-control">
</div>
</div>
<div class="col-md-6">
<h6 class="mb-3">Export Options</h6>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="markLotw" value="1" id="markLotwExport">
<label class="form-check-label" for="markLotwExport">
<strong><?php echo lang('adif_mark_exported_lotw') ?></strong>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="exportLotw" value="1" id="exportLotw">
<label class="form-check-label" for="exportLotw">
<strong><?php echo lang('adif_mark_exported_no_lotw') ?></strong>
</label>
</div>
</div>
</div>
</div>
<div class="card-footer">
<button type="submit" class="btn btn-primary">
<i class="fas fa-download me-2"></i><?php echo lang('adif_export_qso') ?>
</button>
</div>
</div>
</form>
</div>
</div>
<form class="form" action="<?php echo site_url('adif/export_custom'); ?>" method="post" enctype="multipart/form-data">
<h5 class="card-title"><?php echo lang('adif_export_take_it_anywhere') ?> </h5>
<p class="card-text"><?php echo lang('adif_export_take_it_anywhere_hint') ?> </p>
<select name="station_profile" class="form-select mb-2 me-sm-2" style="width: 20%;">
<option value="0"><?php echo lang('adif_select_stationlocation') ?></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 =\"selected\"";
} ?>><?php echo lang('gen_hamradio_callsign') . ": " ?><?php echo $station->station_callsign; ?> (<?php echo $station->station_profile_name; ?>)</option>
<?php } ?>
</select>
<br>
<label for="from"><?php echo lang('gen_from_date') . ": " ?></label>
<input name="from" id="from" type="date" class="form-control w-auto">
<br>
<label for="to"><?php echo lang('gen_to_date') . ": " ?></label>
<input name="to" id="to" type="date" class="form-control w-auto">
<br>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="markLotw" value="1" id="markLotwExport">
<label class="form-check-label" for="markLotwExport"><?php echo lang('adif_mark_exported_lotw') ?></label>
<!-- Satellite Export Section -->
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<h6 class="mb-0"><i class="fas fa-satellite me-2"></i><?php echo lang('adif_export_sat_only_qso') ?></h6>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<p class="mb-3">Export all satellite contacts from your logbook</p>
<a href="<?php echo site_url('adif/exportsat'); ?>" title="Export All Satellite Contacts" target="_blank" class="btn btn-outline-primary">
<i class="fas fa-satellite me-2"></i><?php echo lang('adif_export_sat_only_qso_all') ?>
</a>
</div>
<div class="col-md-6">
<p class="mb-3">Export satellite contacts confirmed on LoTW</p>
<a href="<?php echo site_url('adif/exportsatlotw'); ?>" title="Export All Satellite QSOs Confirmed on LoTW" target="_blank" class="btn btn-outline-primary">
<i class="fas fa-check-circle me-2"></i><?php echo lang('adif_export_sat_only_qso_lotw') ?>
</a>
</div>
</div>
</div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="exportLotw" value="1" id="exportLotw">
<label class="form-check-label" for="exportLotw"><?php echo lang('adif_mark_exported_no_lotw') ?></label>
</div>
</div>
</div>
<button type="submit" class="btn btn-sm btn-primary" value="Export"><?php echo lang('adif_export_qso') ?></button>
</form>
<br><br>
<h5><?php echo lang('adif_export_sat_only_qso') ?></h5>
<p><a href="<?php echo site_url('adif/exportsat'); ?>" title="Export All Satellite Contacts" target="_blank" class="btn btn-sm btn-primary"><?php echo lang('adif_export_sat_only_qso_all') ?></a></p>
<p><a href="<?php echo site_url('adif/exportsatlotw'); ?>" title="Export All Satellite QSOs Confirmed on LoTW" target="_blank" class="btn btn-sm btn-primary"><?php echo lang('adif_export_sat_only_qso_lotw') ?></a></p>
</div>
</div>
<div class="tab-pane fade" id="lotw" role="tabpanel" aria-labelledby="home-tab">
<form class="form" action="<?php echo site_url('adif/mark_lotw'); ?>" method="post" enctype="multipart/form-data">
<select name="station_profile" class="form-select mb-2 me-sm-2" style="width: 20%;">
<option value="0"><?php echo lang('adif_select_stationlocation') ?></option>
<?php foreach ($station_profile->result() as $station) { ?>
<option value="<?php echo $station->station_id; ?>"><?php echo lang('gen_hamradio_callsign') . ": " ?><?php echo $station->station_callsign; ?> (<?php echo $station->station_profile_name; ?>)</option>
<?php } ?>
</select>
<p><span class="badge text-bg-warning"><?php echo lang('general_word_warning') ?></span> <?php echo lang('adif_lotw_export_if_selected') ?></p>
<br>
<label for="from"><?php echo lang('gen_from_date') . ": " ?></label>
<input name="from" id="from" type="date" class="form-control w-auto">
<br>
<label for="to"><?php echo lang('gen_to_date') . ": " ?></label>
<input name="to" id="to" type="date" class="form-control w-auto">
<br>
<button type="button" class="btn btn-sm btn-primary" id="markExportedToLotw" value="Export"><?php echo lang('adif_mark_qso_as_exported_to_lotw') ?></button>
</form>
<div class="tab-pane fade" id="lotw" role="tabpanel" aria-labelledby="lotw-tab">
<div class="row">
<div class="col-md-12">
<h5 class="mb-3"><i class="fas fa-globe me-2"></i>LoTW Export Management</h5>
<div class="alert alert-warning d-flex align-items-center" role="alert">
<i class="fas fa-exclamation-triangle me-2"></i>
<div>
<strong><?php echo lang('general_word_warning') ?>:</strong> <?php echo lang('adif_lotw_export_if_selected') ?>
</div>
</div>
<form class="form" action="<?php echo site_url('adif/mark_lotw'); ?>" method="post" enctype="multipart/form-data">
<div class="card">
<div class="card-header">
<h6 class="mb-0">Mark QSOs as Exported to LoTW</h6>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="mb-3">
<label for="station_profile_lotw" class="form-label">Station Location</label>
<select name="station_profile" id="station_profile_lotw" class="form-select">
<option value="0"><?php echo lang('adif_select_stationlocation') ?></option>
<?php foreach ($station_profile->result() as $station) { ?>
<option value="<?php echo $station->station_id; ?>">
<?php echo lang('gen_hamradio_callsign') . ": " ?><?php echo $station->station_callsign; ?> (<?php echo $station->station_profile_name; ?>)
</option>
<?php } ?>
</select>
</div>
</div>
<div class="col-md-3">
<div class="mb-3">
<label for="from_lotw" class="form-label"><?php echo lang('gen_from_date') ?></label>
<input name="from" id="from_lotw" type="date" class="form-control">
</div>
</div>
<div class="col-md-3">
<div class="mb-3">
<label for="to_lotw" class="form-label"><?php echo lang('gen_to_date') ?></label>
<input name="to" id="to_lotw" type="date" class="form-control">
</div>
</div>
</div>
</div>
<div class="card-footer">
<button type="button" class="btn btn-primary" id="markExportedToLotw">
<i class="fas fa-check me-2"></i><?php echo lang('adif_mark_qso_as_exported_to_lotw') ?>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
<div class="tab-pane <?php if ($showtab == 'dcl') {
echo 'active';
} else {
echo 'fade';
} ?>" id="dcl" role="tabpanel" aria-labelledby="home-tab">
} ?>" id="dcl" role="tabpanel" aria-labelledby="dcl-tab">
<?php if (isset($error) && $showtab == 'dcl') { ?>
<div class="alert alert-danger" role="alert">
<?php echo $error; ?>
<i class="fas fa-exclamation-triangle me-2"></i><?php echo $error; ?>
</div>
<?php } ?>
<p class="card-text"><?php echo lang('adif_dcl_text_pre') ?> <a href="http://dcl.darc.de/dml/export_adif_form.php" target="_blank"><?php echo lang('darc_dcl') ?></a> <?php echo lang('adif_dcl_text_post') ?></p>
<form class="form" action="<?php echo site_url('adif/dcl'); ?>" method="post" enctype="multipart/form-data">
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="onlyConfirmed" value="1" id="onlyConfirmed" checked>
<label class="form-check-label" for="onlyConfirmed"><?php echo lang('only_confirmed_qsos') ?></label>
<div class="row">
<div class="col-md-12">
<h5 class="mb-3"><i class="fas fa-flag me-2"></i>DARC DCL Import</h5>
<div class="alert alert-info d-flex align-items-center" role="alert">
<i class="fas fa-info-circle me-2"></i>
<div>
<?php echo lang('adif_dcl_text_pre') ?> <a href="http://dcl.darc.de/dml/export_adif_form.php" target="_blank" class="alert-link"><?php echo lang('darc_dcl') ?></a> <?php echo lang('adif_dcl_text_post') ?>
</div>
<div class="small form-text text-muted"><?php echo lang('only_confirmed_qsos_hint') ?></div>
</div>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="overwriteDok" value="1" id="overwriteDok">
<label class="form-check-label" for="overwriteDok"><span class="badge text-bg-warning"><?php echo lang('general_word_warning') ?></span> <?php echo lang('overwrite_by_dcl') ?></label>
<form class="form" action="<?php echo site_url('adif/dcl'); ?>" method="post" enctype="multipart/form-data">
<div class="card">
<div class="card-header">
<h6 class="mb-0">DCL Import Settings</h6>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="mb-3">
<label for="userfile_dcl" class="form-label">Choose DCL ADIF File</label>
<input class="form-control" type="file" name="userfile" id="userfile_dcl" />
</div>
</div>
<div class="col-md-6">
<h6 class="mb-3">Import Options</h6>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="onlyConfirmed" value="1" id="onlyConfirmed" checked>
<label class="form-check-label" for="onlyConfirmed">
<strong><?php echo lang('only_confirmed_qsos') ?></strong>
<br><small class="text-muted"><?php echo lang('only_confirmed_qsos_hint') ?></small>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="overwriteDok" value="1" id="overwriteDok">
<label class="form-check-label" for="overwriteDok">
<span class="badge bg-warning text-dark me-1"><?php echo lang('general_word_warning') ?></span>
<strong><?php echo lang('overwrite_by_dcl') ?></strong>
<br><small class="text-muted"><?php echo lang('overwrite_by_dcl_hint') ?></small>
</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" type="checkbox" name="ignoreAmbiguous" value="1" id="ignoreAmbiguous" checked>
<label class="form-check-label" for="ignoreAmbiguous">
<strong><?php echo lang('ignore_ambiguous') ?></strong>
<br><small class="text-muted"><?php echo lang('ignore_ambiguous_hint') ?></small>
</label>
</div>
</div>
</div>
</div>
<div class="card-footer">
<button type="submit" class="btn btn-primary">
<i class="fas fa-upload me-2"></i><?php echo lang('adif_upload') ?>
</button>
</div>
</div>
<div class="small form-text text-muted"><?php echo lang('overwrite_by_dcl_hint') ?></div>
</div>
</form>
</div>
<div class="mb-3 row">
<div class="col-md-10">
<div class="form-check-inline">
<input class="form-check-input" type="checkbox" name="ignoreAmbiguous" value="1" id="ignoreAmbiguous" checked>
<label class="form-check-label" for="ignoreAmbiguous"><?php echo lang('ignore_ambiguous') ?></label>
</div>
<div class="small form-text text-muted"><?php echo lang('ignore_ambiguous_hint') ?></div>
</div>
</div>
<input class="file-input mb-2 me-sm-2" type="file" name="userfile" size="20" />
<button type="submit" class="btn btn-sm btn-primary mb-2" value="Upload"><?php echo lang('adif_upload') ?></button>
</form>
</div>
</div>
</div>
</div>

查看文件

@ -74,6 +74,91 @@ thead>tr>td {
margin-bottom: 0rem;
}
/* Enhanced ADIF styling */
.adif .nav-tabs .nav-link {
border-radius: 0.5rem 0.5rem 0 0;
border: 1px solid transparent;
margin-right: 0.25rem;
}
.adif .nav-tabs .nav-link:hover {
border-color: #e9ecef #e9ecef #dee2e6;
isolation: isolate;
}
.adif .nav-tabs .nav-link.active {
background-color: #fff;
border-color: #dee2e6 #dee2e6 #fff;
}
.adif .card {
border: none;
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}
.adif .card-header {
background-color: #f8f9fa;
border-bottom: 1px solid #dee2e6;
padding: 1rem 1.25rem;
}
.adif .card-body {
padding: 1.5rem;
}
.adif .form-check {
padding-left: 0;
}
.adif .form-check-input {
margin-right: 0.5rem;
}
.adif .form-check-label {
font-size: 0.9rem;
line-height: 1.4;
}
.adif .badge {
font-size: 0.7rem;
padding: 0.25rem 0.5rem;
}
.adif .btn {
border-radius: 0.375rem;
font-weight: 500;
padding: 0.5rem 1rem;
}
.adif .btn-lg {
padding: 0.75rem 1.5rem;
font-size: 1.1rem;
}
.adif .form-control,
.adif .form-select {
border-radius: 0.375rem;
border-color: #ced4da;
}
.adif .form-control:focus,
.adif .form-select:focus {
border-color: #86b7fe;
box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.adif .card .card-header h6 {
margin-bottom: 0;
font-weight: 600;
color: #495057;
}
.adif .alert {
border-radius: 0.5rem;
border: none;
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}
.api .alert p {
margin-bottom: 0rem;
}