2023-01-25 17:43:47 +00:00
< script type = " text/javascript " >
2024-02-22 16:56:21 +00:00
/*
*
* Define global javascript variables
*
*/
var base_url = " <?php echo base_url(); ?> " ; // Base URL
var site_url = " <?php echo site_url(); ?> " ; // Site URL
var icon_dot_url = " <?php echo base_url(); ?>assets/images/dot.png " ;
// get the user_callsign from session
var my_call = " <?php echo $this->session ->userdata('user_callsign'); ?> " . toUpperCase ();
2023-01-25 17:43:47 +00:00
</ script >
2023-10-08 08:41:24 +00:00
< script >
2023-11-29 19:16:53 +00:00
/*
2023-10-08 08:41:24 +00:00
General Language
*/
var lang_general_word_qso_data = " <?php echo lang('general_word_qso_data'); ?> " ;
2023-10-18 09:45:15 +00:00
var lang_general_word_danger = " <?php echo lang('general_word_danger'); ?> " ;
2023-10-30 22:50:56 +00:00
var lang_general_word_attention = " <?php echo lang('general_word_attention'); ?> " ;
var lang_general_word_warning = " <?php echo lang('general_word_warning'); ?> " ;
var lang_general_word_cancel = " <?php echo lang('general_word_cancel'); ?> " ;
var lang_general_word_ok = " <?php echo lang('general_word_ok'); ?> " ;
2023-10-18 09:45:15 +00:00
var lang_qso_delete_warning = " <?php echo lang('qso_delete_warning'); ?> " ;
2023-10-24 15:42:53 +00:00
var lang_general_word_colors = " <?php echo lang('general_word_colors'); ?> " ;
var lang_general_word_confirmed = " <?php echo lang('general_word_confirmed'); ?> " ;
var lang_general_word_worked_not_confirmed = " <?php echo lang('general_word_worked_not_confirmed'); ?> " ;
var lang_general_word_not_worked = " <?php echo lang('general_word_not_worked'); ?> " ;
2023-11-05 18:31:43 +00:00
var lang_admin_close = " <?php echo lang('admin_close'); ?> " ;
2023-10-08 08:41:24 +00:00
</ script >
2020-09-15 20:20:01 +00:00
<!-- General JS Files used across Cloudlog -->
< script src = " <?php echo base_url(); ?>assets/js/jquery-3.3.1.min.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/jquery.fancybox.min.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/bootstrap.bundle.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/leaflet.js " ></ script >
2023-03-18 13:16:59 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/Control.FullScreen.js " ></ script >
2022-02-13 17:08:55 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.Maidenhead.qrb.js " ></ script >
2022-06-12 11:18:26 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " activators " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.Maidenhead.activators.js " ></ script >
2022-06-12 11:18:26 +00:00
< ? php } ?>
2022-02-16 07:17:15 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/leaflet.geodesic.js " ></ script >
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/radiohelpers.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/darkmodehelpers.js " ></ script >
2020-09-22 19:08:26 +00:00
< script src = " <?php echo base_url(); ?>assets/js/bootstrapdialog/js/bootstrap-dialog.min.js " ></ script >
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/easyprint.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/common.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/eqslcharcounter.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/version_dialog.js " ></ script >
2023-01-24 09:52:58 +00:00
2022-02-09 21:10:30 +00:00
< script src = " https://unpkg.com/htmx.org@1.6.1 " ></ script >
2023-09-12 13:30:28 +00:00
< script >
// Reinitialize tooltips after new content has been loaded
document . addEventListener ( 'htmx:afterSwap' , function ( event ) {
2023-11-14 12:35:53 +00:00
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
2023-09-12 13:30:28 +00:00
});
2024-02-22 16:56:21 +00:00
</ script >
2023-12-03 08:37:39 +00:00
<!-- Version Dialog START -->
2023-12-04 00:20:50 +00:00
2023-12-03 08:37:39 +00:00
< ? php
2024-02-22 16:56:21 +00:00
if ( $this -> session -> userdata ( 'user_id' ) != null ) {
2023-12-04 04:56:05 +00:00
$versionDialog = $this -> optionslib -> get_option ( 'version_dialog' );
2023-12-04 22:03:25 +00:00
if ( empty ( $versionDialog )) {
$this -> optionslib -> update ( 'version_dialog' , 'release_notes' , 'yes' );
}
2023-12-04 19:44:26 +00:00
$versionDialogHeader = $this -> optionslib -> get_option ( 'version_dialog_header' );
if ( empty ( $versionDialogHeader )) {
$this -> optionslib -> update ( 'version_dialog_header' , $this -> lang -> line ( 'options_version_dialog' ), 'yes' );
}
2024-02-22 16:56:21 +00:00
if ( $versionDialog != " disabled " ) {
$confirmed = $this -> user_options_model -> get_options ( 'version_dialog' , array ( 'option_name' => 'confirmed' )) -> result ();
$confirmation_value = ( isset ( $confirmed [ 0 ] -> option_value )) ? $confirmed [ 0 ] -> option_value : 'false' ;
2023-12-04 04:56:05 +00:00
if ( $confirmation_value != 'true' ) {
$this -> user_options_model -> set_option ( 'version_dialog' , 'confirmed' , array ( 'boolean' => $confirmation_value ));
2024-02-22 16:56:21 +00:00
?> <script>
2023-12-04 04:56:05 +00:00
displayVersionDialog ();
</ script >< ? php
2024-02-22 16:56:21 +00:00
}
}
}
?>
2023-12-03 08:37:39 +00:00
<!-- Version Dialog END -->
2022-11-15 17:29:33 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " oqrs " ) { ?>
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/oqrs.js " ></ script >
2022-11-15 17:29:33 +00:00
< ? php } ?>
2023-11-21 11:13:09 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " options " ) { ?>
< script >
$ ( '#sendTestMailButton' ) . click ( function () {
$ . ajax ({
url : base_url + 'index.php/options/sendTestMail' ,
type : 'POST' ,
});
});
</ script >
< ? php } ?>
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " awards " && ( $this -> uri -> segment ( 2 ) == " cq " )) { ?>
2022-10-12 07:44:13 +00:00
< script src = " <?php echo base_url(); ?>assets/js/Polyline.encoded.js " ></ script >
2024-02-22 16:56:21 +00:00
< script id = " cqmapjs " type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/cqmap.js " tileUrl = " <?php echo $this->optionslib ->get_option('option_map_tile_server'); ?> " ></ script >
2022-10-12 07:44:13 +00:00
< ? php } ?>
2021-04-29 22:50:45 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " awards " && ( $this -> uri -> segment ( 2 ) == " iota " )) { ?>
< script id = " iotamapjs " type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/iotamap.js " tileUrl = " <?php echo $this->optionslib ->get_option('option_map_tile_server'); ?> " ></ script >
2022-12-11 16:47:36 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " awards " && ( $this -> uri -> segment ( 2 ) == " dxcc " )) { ?>
< script id = " dxccmapjs " type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/dxccmap.js " tileUrl = " <?php echo $this->optionslib ->get_option('option_map_tile_server'); ?> " ></ script >
2022-11-11 18:23:41 +00:00
< ? php } ?>
2022-09-18 14:48:16 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " statistics " ) { ?>
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/chart.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/chartjs-plugin-piechart-outlabels.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/statistics.js " ></ script >
< ? php } ?>
2023-02-09 00:05:36 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " continents " ) { ?>
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/chart.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/chartjs-plugin-piechart-outlabels.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/sections/continents.js " ></ script >
< ? php } ?>
2023-10-18 18:01:36 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " adif " || $this -> uri -> segment ( 1 ) == " qrz " || $this -> uri -> segment ( 1 ) == " hrdlog " || $this -> uri -> segment ( 1 ) == " webadif " || $this -> uri -> segment ( 1 ) == " sattimers " ) { ?>
2020-09-15 20:20:01 +00:00
<!-- Javascript used for ADIF Import and Export Areas -->
2020-11-08 10:26:38 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/moment.min.js " ></ script >
2022-12-04 14:16:36 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " maintenance " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/maintenance.js " ></ script >
2023-08-01 08:21:17 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " adif " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/adif.js " ></ script >
2023-11-19 16:04:19 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " notes " && ( $this -> uri -> segment ( 2 ) == " add " || $this -> uri -> segment ( 2 ) == " edit " )) { ?>
2020-09-15 20:20:01 +00:00
<!-- Javascript used for Notes Area -->
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/plugins/quill/quill.min.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/sections/notes.js " ></ script >
2019-10-05 20:57:44 +00:00
< ? php } ?>
2022-10-15 18:50:20 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " logbooks " && $this -> uri -> segment ( 2 ) == " edit " ) { ?>
2024-02-22 16:56:21 +00:00
< script >
function removeSlug () {
var slugLink = document . getElementById ( " slugLink " );
if ( slugLink !== null ) {
slugLink . style . display = " none " ;
}
document . getElementById ( 'publicSlugInput' ) . value = ''
2022-10-15 18:50:20 +00:00
}
2024-02-22 16:56:21 +00:00
</ script >
2022-10-15 18:50:20 +00:00
< ? php } ?>
2021-01-29 20:11:35 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/datatables.min.js " ></ script >
2020-10-19 12:10:58 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/dataTables.buttons.min.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/buttons.html5.min.js " ></ script >
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/selectize.js " ></ script >
2020-09-22 19:08:26 +00:00
2022-01-20 14:44:32 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " station " ) { ?>
2024-02-22 16:56:21 +00:00
< script language = " javascript " src = " <?php echo base_url(); ?>assets/js/HamGridSquare.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/sections/station_locations.js " ></ script >
2022-04-14 14:45:35 +00:00
< script >
var position ;
2024-02-22 16:56:21 +00:00
2022-04-14 14:45:35 +00:00
function getLocation () {
if ( navigator . geolocation ) {
navigator . geolocation . getCurrentPosition ( showPosition );
2023-03-17 17:54:35 +00:00
} else {
2022-04-14 14:48:09 +00:00
console . log ( 'Geolocation is not supported by this browser.' );
2022-04-14 14:45:35 +00:00
}
}
function showPosition ( position ) {
2024-02-22 16:56:21 +00:00
gridsquare = latLonToGridSquare ( position . coords . latitude , position . coords . longitude );
2022-04-14 14:49:02 +00:00
document . getElementById ( " stationGridsquareInput " ) . value = gridsquare ;
2024-02-22 16:56:21 +00:00
}
2022-04-14 14:45:35 +00:00
</ script >
2022-01-20 14:50:42 +00:00
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " logbooks " ) { ?>
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/station_logbooks.js " ></ script >
2022-01-20 14:44:32 +00:00
< ? php } ?>
2023-01-31 12:00:23 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " debug " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " >
function copyURL ( url ) {
var urlField = $ ( '#baseUrl' );
navigator . clipboard . writeText ( url ) . then ( function () {});
urlField . addClass ( 'flash-copy' )
. delay ( '1000' ) . queue ( function () {
urlField . removeClass ( 'flash-copy' ) . dequeue ();
});
}
2023-01-31 12:00:23 +00:00
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ({
'delay' : {
show : 500 ,
hide : 0
},
'placement' : 'right'
});
});
</ script >
2023-01-31 12:00:23 +00:00
< ? php } ?>
2022-09-28 13:41:08 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " api " && $this -> uri -> segment ( 2 ) == " help " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " >
function copyApiKey ( apiKey ) {
var apiKeyField = $ ( '#' + apiKey );
navigator . clipboard . writeText ( apiKey ) . then ( function () {});
apiKeyField . addClass ( 'flash-copy' )
. delay ( '1000' ) . queue ( function () {
apiKeyField . removeClass ( 'flash-copy' ) . dequeue ();
});
}
2022-09-28 13:41:08 +00:00
2024-02-22 16:56:21 +00:00
function copyApiUrl () {
var apiUrlField = $ ( '#apiUrl' );
navigator . clipboard . writeText ( " <?php echo base_url(); ?> " ) . then ( function () {});
apiUrlField . addClass ( 'flash-copy' )
. delay ( '1000' ) . queue ( function () {
apiUrlField . removeClass ( 'flash-copy' ) . dequeue ();
});
}
2023-03-09 21:57:28 +00:00
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ({
'delay' : {
show : 500 ,
hide : 0
},
'placement' : 'right'
});
});
</ script >
2022-09-28 13:41:08 +00:00
< ? php } ?>
2022-01-20 14:50:42 +00:00
2019-09-11 23:53:39 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " search " && $this -> uri -> segment ( 2 ) == " filter " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/query-builder.standalone.min.js " ></ script >
2019-09-11 23:53:39 +00:00
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " >
$ ( " .search-results-box " ) . hide ();
$ ( '#builder' ) . queryBuilder ({
filters : [
< ? php foreach ( $get_table_names -> result () as $row ) {
$value_name = str_replace ( " COL_ " , " " , $row -> Field );
if ( $value_name != " PRIMARY_KEY " && strpos ( $value_name , 'MY_' ) === false && strpos ( $value_name , '_INTL' ) == false ) { ?> {
id : '<?php echo $row->Field; ?>' ,
label : '<?php echo $value_name; ?>' ,
< ? php if ( strpos ( $row -> Type , 'int(' ) !== false ) { ?>
type : 'integer' ,
operators : [ 'equal' , 'not_equal' , 'less' , 'less_or_equal' , 'greater' , 'greater_or_equal' ]
< ? php } elseif ( strpos ( $row -> Type , 'double' ) !== false ) { ?>
type : 'double' ,
operators : [ 'equal' , 'not_equal' , 'less' , 'less_or_equal' , 'greater' , 'greater_or_equal' ]
< ? php } elseif ( strpos ( $row -> Type , 'datetime' ) !== false ) { ?>
type : 'datetime' ,
operators : [ 'equal' , 'not_equal' , 'less' , 'less_or_equal' , 'greater' , 'greater_or_equal' ]
< ? php } else { ?>
type : 'string' ,
operators : [ 'equal' , 'not_equal' , 'begins_with' , 'contains' , 'ends_with' , 'is_empty' , 'is_not_empty' , 'is_null' , 'is_not_null' ]
< ? php } ?>
},
< ? php } ?>
2021-10-03 18:06:08 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
]
});
2021-09-25 15:40:15 +00:00
2024-02-22 16:56:21 +00:00
function export_search_result () {
var result = $ ( '#builder' ) . queryBuilder ( 'getRules' );
if ( ! $ . isEmptyObject ( result )) {
xhttp = new XMLHttpRequest ();
xhttp . onreadystatechange = function () {
var a ;
if ( xhttp . readyState === 4 && xhttp . status === 200 ) {
// Trick for making downloadable link
a = document . createElement ( 'a' );
a . href = window . URL . createObjectURL ( xhttp . response );
// Give filename you wish to download
a . download = " advanced_search_export.adi " ;
a . style . display = 'none' ;
document . body . appendChild ( a );
a . click ();
}
};
// Post data to URL which handles post request
xhttp . open ( " POST " , " <?php echo site_url('search/export_to_adif'); ?> " , true );
xhttp . setRequestHeader ( " Content-type " , " application/x-www-form-urlencoded " );
// You should set responseType as blob for binary responses
xhttp . responseType = 'blob' ;
xhttp . send ( " search= " + JSON . stringify ( result , null , 2 ));
}
}
function export_stored_query ( id ) {
2021-10-03 18:06:08 +00:00
xhttp = new XMLHttpRequest ();
xhttp . onreadystatechange = function () {
var a ;
if ( xhttp . readyState === 4 && xhttp . status === 200 ) {
// Trick for making downloadable link
a = document . createElement ( 'a' );
a . href = window . URL . createObjectURL ( xhttp . response );
// Give filename you wish to download
a . download = " advanced_search_export.adi " ;
a . style . display = 'none' ;
document . body . appendChild ( a );
a . click ();
}
};
// Post data to URL which handles post request
2024-02-22 16:56:21 +00:00
xhttp . open ( " POST " , " <?php echo site_url('search/export_stored_query_to_adif'); ?> " , true );
2021-10-03 18:06:08 +00:00
xhttp . setRequestHeader ( " Content-type " , " application/x-www-form-urlencoded " );
// You should set responseType as blob for binary responses
xhttp . responseType = 'blob' ;
2024-02-22 16:56:21 +00:00
xhttp . send ( " id= " + id );
2021-10-03 18:06:08 +00:00
}
2021-09-25 15:40:15 +00:00
2024-02-22 16:56:21 +00:00
$ ( '#btn-save' ) . on ( 'click' , function () {
var resultquery = $ ( '#builder' ) . queryBuilder ( 'getRules' );
if ( ! $ . isEmptyObject ( resultquery )) {
let message = 'Description: <input class="form-control input-group-sm getqueryname">'
2021-10-03 18:06:08 +00:00
2024-02-22 16:56:21 +00:00
BootstrapDialog . confirm ({
title : 'Query description' ,
size : BootstrapDialog . SIZE_NORMAL ,
cssClass : 'description-dialog' ,
closable : true ,
nl2br : false ,
message : message ,
btnCancelLabel : 'Cancel' ,
btnOKLabel : 'Save' ,
callback : function ( result ) {
if ( result ) {
$ . post ( " <?php echo site_url('search/save_query'); ?> " , {
search : JSON . stringify ( resultquery , null , 2 ),
description : $ ( " .getqueryname " ) . val ()
})
. done ( function ( data ) {
$ ( " .alert " ) . remove ();
$ ( " .card-body.main " ) . append ( '<div class="alert alert-success">Your query has been saved!</div>' );
if ( $ ( " #querydropdown option " ) . length == 0 ) {
var dropdowninfo = ' <button class="btn btn-sm btn-primary" onclick="edit_stored_query_dialog()" id="btn-edit">Edit queries</button></p>' +
'<div class="mb-3 row querydropdownform">' +
'<label class="col-md-2 control-label" for="querydropdown"> Stored queries:</label>' +
'<div class="col-md-3">' +
2023-11-14 12:35:53 +00:00
'<select id="querydropdown" name="querydropdown" class="form-select form-select-sm">' +
2021-10-11 17:36:52 +00:00
'</select>' +
2024-02-22 16:56:21 +00:00
'</div>' +
'<button class="btn btn-sm btn-primary ld-ext-right runbutton" onclick="run_query()">Run Query<div class="ld ld-ring ld-spin"></div></button>' +
'</div>' ;
$ ( " #btn-save " ) . after ( dropdowninfo );
}
$ ( '#querydropdown' ) . append ( new Option ( data . description , data . id )); // We add the saved query to the dropdown
});
}
2024-01-04 03:03:11 +00:00
},
2021-10-03 18:06:08 +00:00
});
2019-09-11 23:53:39 +00:00
2024-02-22 16:56:21 +00:00
} else {
2021-10-03 18:06:08 +00:00
BootstrapDialog . show ({
title : 'Stored Queries' ,
2024-02-22 16:56:21 +00:00
type : BootstrapDialog . TYPE_WARNING ,
size : BootstrapDialog . SIZE_NORMAL ,
2021-10-03 18:06:08 +00:00
cssClass : 'queries-dialog' ,
nl2br : false ,
2024-02-22 16:56:21 +00:00
message : 'You need to make a query before you search!' ,
2021-10-03 18:06:08 +00:00
buttons : [{
2023-11-05 18:38:34 +00:00
label : lang_admin_close ,
2021-10-03 18:06:08 +00:00
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
2024-02-22 16:56:21 +00:00
function run_query () {
$ ( " .alert " ) . remove ();
$ ( " .runbutton " ) . addClass ( 'running' );
$ ( " .runbutton " ) . prop ( 'disabled' , true );
let id = $ ( '#querydropdown' ) . val ();
$ . post ( " <?php echo site_url('search/run_query'); ?> " , {
id : id
2021-10-03 18:06:08 +00:00
})
. done ( function ( data ) {
2024-02-22 16:56:21 +00:00
$ ( '.exportbutton' ) . html ( '<button class="btn btn-sm btn-primary" onclick="export_stored_query(' + id + ')">Export to ADIF</button>' );
2021-10-03 18:06:08 +00:00
$ ( '.card-body.result' ) . empty ();
$ ( " .search-results-box " ) . show ();
$ ( '.card-body.result' ) . append ( data );
$ ( '.table' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2021-10-03 18:06:08 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
2023-11-14 12:35:53 +00:00
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
2024-02-22 16:56:21 +00:00
$ ( " .runbutton " ) . removeClass ( 'running' );
$ ( " .runbutton " ) . prop ( 'disabled' , false );
2021-10-03 18:06:08 +00:00
});
2024-02-22 16:56:21 +00:00
}
function delete_stored_query ( id ) {
BootstrapDialog . confirm ({
title : 'DANGER' ,
message : 'Warning! Are you sure you want delete this stored query?' ,
type : BootstrapDialog . TYPE_DANGER ,
closable : true ,
draggable : true ,
btnOKClass : 'btn-danger' ,
callback : function ( result ) {
if ( result ) {
$ . ajax ({
url : base_url + 'index.php/search/delete_query' ,
type : 'post' ,
data : {
'id' : id
},
success : function ( data ) {
$ ( " .bootstrap-dialog-message " ) . prepend ( '<div class="alert alert-danger">The stored query has been deleted!</div>' );
$ ( " #query_ " + id ) . remove (); // removes query from table in dialog
$ ( " #querydropdown option[value=' " + id + " '] " ) . remove (); // removes query from dropdown
if ( $ ( " #querydropdown option " ) . length == 0 ) {
$ ( " #btn-edit " ) . remove ();
$ ( '.querydropdownform' ) . remove ();
};
},
error : function () {
$ ( " .bootstrap-dialog-message " ) . prepend ( '<div class="alert alert-danger">The stored query could not be deleted. Please try again!</div>' );
},
});
2021-10-03 18:06:08 +00:00
}
2024-02-22 16:56:21 +00:00
}
2021-10-03 18:06:08 +00:00
});
}
2019-09-11 23:53:39 +00:00
2024-02-22 16:56:21 +00:00
function edit_stored_query ( id ) {
$ ( '#description_' + id ) . attr ( 'contenteditable' , 'true' );
$ ( '#description_' + id ) . focus ();
$ ( '#edit_' + id ) . html ( '<a class="btn btn-primary btn-sm" href="javascript:save_edited_query(' + id + ');">Save</a>' ); // Change to save button
2021-10-03 18:06:08 +00:00
}
2019-09-11 23:53:39 +00:00
2024-02-22 16:56:21 +00:00
function save_edited_query ( id ) {
$ ( '#description_' + id ) . attr ( 'contenteditable' , 'false' );
$ ( '#edit_' + id ) . html ( '<a class="btn btn-outline-primary btn-sm" href="javascript:edit_stored_query(' + id + ');">Edit</a>' );
$ . ajax ({
url : base_url + 'index.php/search/save_edited_query' ,
type : 'post' ,
data : {
id : id ,
description : $ ( '#description_' + id ) . html (),
},
success : function ( html ) {
$ ( '#edit_' + id ) . html ( '<a class="btn btn-outline-primary btn-sm" href="javascript:edit_stored_query(' + id + ');">Edit</a>' ); // Change to edit button
$ ( " .bootstrap-dialog-message " ) . prepend ( '<div class="alert alert-success">The query description has been updated!</div>' );
$ ( " #querydropdown option[value=' " + id + " '] " ) . text ( $ ( '#description_' + id ) . html ()); // Change text in dropdown
},
error : function () {
$ ( " .bootstrap-dialog-message " ) . prepend ( '<div class="alert alert-danger">Something went wrong with the save. Please try again!</div>' );
},
});
}
function edit_stored_query_dialog () {
$ ( " .alert " ) . remove ();
$ . ajax ({
url : base_url + 'index.php/search/get_stored_queries' ,
type : 'post' ,
success : function ( html ) {
BootstrapDialog . show ({
title : 'Stored Queries' ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'queries-dialog' ,
nl2br : false ,
message : html ,
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
}
$ ( '#btn-get' ) . on ( 'click' , function () {
$ ( " .alert " ) . remove ();
var result = $ ( '#builder' ) . queryBuilder ( 'getRules' );
if ( ! $ . isEmptyObject ( result )) {
$ ( " .searchbutton " ) . addClass ( 'running' );
$ ( " .searchbutton " ) . prop ( 'disabled' , true );
$ . post ( " <?php echo site_url('search/search_result'); ?> " , {
search : JSON . stringify ( result , null , 2 ),
temp : " testvar "
})
. done ( function ( data ) {
$ ( '.exportbutton' ) . html ( '<button class="btn btn-sm btn-primary" onclick="export_search_result();">Export to ADIF</button>' );
$ ( '.card-body.result' ) . empty ();
$ ( " .search-results-box " ) . show ();
$ ( '.card-body.result' ) . append ( data );
$ ( '.table' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
$ ( " .searchbutton " ) . removeClass ( 'running' );
$ ( " .searchbutton " ) . prop ( 'disabled' , false );
$ ( " #btn-save " ) . show ();
$ ( '.table-responsive .dropdown-toggle' ) . off ( 'mouseenter' ) . on ( 'mouseenter' , function () {
showQsoActionsMenu ( $ ( this ) . closest ( '.dropdown' ));
});
});
} else {
BootstrapDialog . show ({
title : 'Stored Queries' ,
type : BootstrapDialog . TYPE_WARNING ,
size : BootstrapDialog . SIZE_NORMAL ,
cssClass : 'queries-dialog' ,
nl2br : false ,
message : 'You need to make a query before you search!' ,
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
$ ( '#btn-set' ) . on ( 'click' , function () {
//$('#builder').queryBuilder('setRules', rules_basic);
var result = $ ( '#builder' ) . queryBuilder ( 'getRules' );
if ( ! $ . isEmptyObject ( result )) {
rules_basic = result ;
}
});
//When rules changed :
$ ( '#builder' ) . on ( 'getRules.queryBuilder.filter' , function ( e ) {
//$log.info(e.value);
});
</ script >
2022-02-13 22:03:38 +00:00
2019-09-11 23:53:39 +00:00
< ? php } ?>
2019-01-09 15:18:46 +00:00
< script >
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
$ ( '#create_station_profile #country' ) . val ( $ ( " #dxcc_select option:selected " ) . text ());
$ ( " #create_station_profile #dxcc_select " ) . change ( function () {
$ ( '#country' ) . val ( $ ( " #dxcc_select option:selected " ) . text ());
2022-03-22 16:41:03 +00:00
2024-02-22 16:56:21 +00:00
});
});
2019-01-09 15:18:46 +00:00
</ script >
2019-01-13 15:59:16 +00:00
2023-10-14 19:05:33 +00:00
< script >
2024-02-22 16:56:21 +00:00
function printWarning () {
if ( $ ( " #dxcc_select option:selected " ) . text () . includes ( " <?php echo lang('gen_hamradio_deleted_dxcc'); ?> " )) {
$ ( '#warningMessageDXCC' ) . show ();
$ ( '#dxcc_select' ) . css ( 'border' , '2px solid rgb(217, 83, 79)' );
$ ( '#warningMessageDXCC' ) . text ( " <?php echo lang('station_location_dxcc_warning'); ?> " );
} else {
$ ( '#dxcc_select' ) . css ( 'border' , '' );
$ ( '#warningMessageDXCC' ) . hide ();
}
2023-10-14 19:05:33 +00:00
}
2024-02-22 16:56:21 +00:00
$ ( '#dxcc_select' ) . ready ( function () {
printWarning ();
});
2023-10-16 15:04:48 +00:00
2024-02-22 16:56:21 +00:00
$ ( '#dxcc_select' ) . on ( 'change' , function () {
printWarning ();
});
2023-10-14 19:05:33 +00:00
</ script >
2019-03-20 17:47:40 +00:00
< script >
2024-02-22 16:56:21 +00:00
var $ = jQuery . noConflict ();
$ ( '[data-fancybox]' ) . fancybox ({
toolbar : false ,
smallBtn : true ,
iframe : {
preload : false
}
});
// Here we capture ALT-L to invoke the Quick lookup
document . onkeyup = function ( e ) {
if ( e . altKey && e . which == 76 ) {
spawnLookupModal ();
}
if ( e . altKey && e . which == 81 ) {
spawnQrbCalculator ();
}
};
2023-04-01 13:28:21 +00:00
2024-02-22 16:56:21 +00:00
function newpath ( latlng1 , latlng2 , locator1 , locator2 ) {
// If map is already initialized
var container = L . DomUtil . get ( 'mapqrbcontainer' );
2023-04-01 13:28:21 +00:00
2024-02-22 16:56:21 +00:00
if ( container != null ) {
container . _leaflet_id = null ;
container . remove ();
$ ( " #mapqrb " ) . append ( '<div id="mapqrbcontainer" style="Height: 500px"></div>' );
}
var map = new L . Map ( 'mapqrbcontainer' , {
fullscreenControl : true ,
fullscreenControlOptions : {
position : 'topleft'
},
}) . setView ([ 30 , 0 ], 1.5 );
// Need to fix so that marker is placed at same place as end of line, but this only needs to be done when longitude is < -170
if ( latlng2 [ 1 ] < - 170 ) {
latlng2 [ 1 ] = parseFloat ( latlng2 [ 1 ]) + 360 ;
}
if ( latlng1 [ 1 ] < - 170 ) {
latlng1 [ 1 ] = parseFloat ( latlng1 [ 1 ]) + 360 ;
}
2022-02-13 17:08:55 +00:00
2024-02-22 16:56:21 +00:00
map . fitBounds ([
[ latlng1 [ 0 ], latlng1 [ 1 ]],
[ latlng2 [ 0 ], latlng2 [ 1 ]]
]);
2022-02-13 17:08:55 +00:00
2024-02-22 16:56:21 +00:00
var maidenhead = L . maidenheadqrb () . addTo ( map );
2022-02-13 17:08:55 +00:00
2024-02-22 16:56:21 +00:00
var osmUrl = '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' ;
var osmAttrib = 'Map data © <a href="https://openstreetmap.org">OpenStreetMap</a> contributors' ;
var osm = new L . TileLayer ( osmUrl , {
minZoom : 1 ,
maxZoom : 12 ,
attribution : osmAttrib
});
2022-02-15 19:28:37 +00:00
2024-02-22 16:56:21 +00:00
var redIcon = L . icon ({
iconUrl : icon_dot_url ,
iconSize : [ 10 , 10 ], // size of the icon
});
2022-02-15 19:28:37 +00:00
2024-02-22 16:56:21 +00:00
map . addLayer ( osm );
2022-02-15 19:28:37 +00:00
2024-02-22 16:56:21 +00:00
var marker = L . marker ([ latlng1 [ 0 ], latlng1 [ 1 ]], {
closeOnClick : false ,
autoClose : false
}) . addTo ( map ) . bindPopup ( locator1 );
2023-04-01 13:28:21 +00:00
2024-02-22 16:56:21 +00:00
var marker2 = L . marker ([ latlng2 [ 0 ], latlng2 [ 1 ]], {
closeOnClick : false ,
autoClose : false
}) . addTo ( map ) . bindPopup ( locator2 );
2022-02-13 17:08:55 +00:00
2024-02-22 16:56:21 +00:00
const multiplelines = [];
multiplelines . push (
2022-02-16 07:17:15 +00:00
new L . LatLng ( latlng1 [ 0 ], latlng1 [ 1 ]),
new L . LatLng ( latlng2 [ 0 ], latlng2 [ 1 ])
2022-02-13 17:08:55 +00:00
)
2024-02-22 16:56:21 +00:00
const geodesic = L . geodesic ( multiplelines , {
weight : 3 ,
opacity : 1 ,
color : 'red' ,
wrap : false ,
steps : 100
}) . addTo ( map );
}
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
function showActivatorsMap ( call , count , grids ) {
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
let re = / , / g ;
grids = grids . replace ( re , ', ' );
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
var result = " Callsign: " + call . replace ( '0' , 'Ø' ) + " <br /> " ;
result += " Count: " + count + " <br/> " ;
result += " Grids: " + grids + " <br/><br /> " ;
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
$ ( " .activatorsmapResult " ) . html ( result );
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
// If map is already initialized
var container = L . DomUtil . get ( 'mapactivators' );
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
if ( container != null ) {
container . _leaflet_id = null ;
}
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
const map = new L . map ( 'mapactivators' ) . setView ([ 30 , 0 ], 1.5 );
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
var grid_four = grids . split ( ', ' );
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
var maidenhead = new L . maidenheadactivators ( grid_four ) . addTo ( map );
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
var osmUrl = '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' ;
var osmAttrib = 'Map data © <a href="https://openstreetmap.org">OpenStreetMap</a> contributors' ;
var osm = new L . TileLayer ( osmUrl , {
minZoom : 1 ,
maxZoom : 12 ,
attribution : osmAttrib
});
2022-06-12 11:18:26 +00:00
2024-02-22 16:56:21 +00:00
map . addLayer ( osm );
}
2019-03-20 17:47:40 +00:00
</ script >
2019-04-08 14:36:23 +00:00
2020-12-07 17:28:19 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " map " && $this -> uri -> segment ( 2 ) == " custom " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.Maidenhead.js " ></ script >
< script id = " leafembed " type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/leafembed.js " tileUrl = " <?php echo $this->optionslib ->get_option('option_map_tile_server'); ?> " ></ script >
2020-12-07 17:28:19 +00:00
< script type = " text/javascript " >
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
2020-12-07 17:28:19 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $qra == " set " ) { ?>
var q_lat = < ? php echo $qra_lat ; ?> ;
var q_lng = < ? php echo $qra_lng ; ?> ;
2020-12-07 17:28:19 +00:00
< ? php } else { ?>
2024-02-22 16:56:21 +00:00
var q_lat = 40.313043 ;
var q_lng = - 32.695312 ;
2020-12-07 17:28:19 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
var qso_loc = '<?php echo site_url(' map / map_plot_json / '); ?>' ;
2022-03-09 18:01:04 +00:00
var q_zoom = 3 ;
2020-12-07 17:28:19 +00:00
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
2020-12-07 17:28:19 +00:00
< ? php if ( $this -> config -> item ( 'map_gridsquares' ) != FALSE ) { ?>
2024-02-22 16:56:21 +00:00
var grid = " Yes " ;
2020-12-07 17:28:19 +00:00
< ? php } else { ?>
2024-02-22 16:56:21 +00:00
var grid = " No " ;
2020-12-07 17:28:19 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
initmap ( grid , 'custommap' , {
'initmap_only' : true
});
2023-12-13 21:54:04 +00:00
// Check and change date if to < from //
$ ( '.custom-map-QSOs input[name="to"]' ) . off ( 'change' ) . on ( 'change' , function () {
2024-02-22 16:56:21 +00:00
if ( $ ( '.custom-map-QSOs input[name="to"]' ) . val () . replaceAll ( '-' , '' ) < $ ( '.custom-map-QSOs input[name="from"]' ) . val () . replaceAll ( '-' , '' )) {
2023-12-13 21:54:04 +00:00
$ ( '.custom-map-QSOs input[name="from"]' ) . val ( $ ( '.custom-map-QSOs input[name="to"]' ) . val ());
}
});
$ ( '.custom-map-QSOs input[name="from"]' ) . off ( 'change' ) . on ( 'change' , function () {
2024-02-22 16:56:21 +00:00
if ( $ ( '.custom-map-QSOs input[name="from"]' ) . val () . replaceAll ( '-' , '' ) > $ ( '.custom-map-QSOs input[name="to"]' ) . val () . replaceAll ( '-' , '' )) {
2023-12-13 21:54:04 +00:00
$ ( '.custom-map-QSOs input[name="to"]' ) . val ( $ ( '.custom-map-QSOs input[name="from"]' ) . val ());
}
});
2023-12-13 06:10:10 +00:00
// Form "submit" //
2024-02-22 16:56:21 +00:00
$ ( '.custom-map-QSOs .btn_submit_map_custom' ) . off ( 'click' ) . on ( 'click' , function () {
var customdata = {
'dataPost' : {
'date_from' : $ ( '.custom-map-QSOs input[name="from"]' ) . val (),
'date_to' : $ ( '.custom-map-QSOs input[name="to"]' ) . val (),
'band' : $ ( '.custom-map-QSOs select[name="band"]' ) . val (),
'mode' : $ ( '.custom-map-QSOs select[name="mode"]' ) . val (),
'prop_mode' : $ ( '.custom-map-QSOs select[name="prop_mode"]' ) . val (),
'isCustom' : true
},
'map_id' : '#custommap'
};
2023-12-13 21:54:04 +00:00
initplot ( qso_loc , customdata );
2023-12-13 06:10:10 +00:00
})
2020-12-07 16:32:12 +00:00
2024-02-22 16:56:21 +00:00
});
2020-12-07 16:32:12 +00:00
</ script >
< ? php } ?>
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " " || $this -> uri -> segment ( 1 ) == " dashboard " ) { ?>
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.Maidenhead.js " ></ script >
< script id = " leafembed " type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/leafembed.js " tileUrl = " <?php echo $this->optionslib ->get_option('option_map_tile_server'); ?> " ></ script >
2023-11-29 19:16:53 +00:00
2019-03-20 16:58:06 +00:00
< script type = " text/javascript " >
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
2020-02-27 22:18:54 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $qra == " set " ) { ?>
var q_lat = < ? php echo $qra_lat ; ?> ;
var q_lng = < ? php echo $qra_lng ; ?> ;
2019-03-20 16:58:06 +00:00
< ? php } else { ?>
2024-02-22 16:56:21 +00:00
var q_lat = 40.313043 ;
var q_lng = - 32.695312 ;
2019-03-20 16:58:06 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
var qso_loc = '<?php echo site_url(' map / map_plot_json '); ?>' ;
2020-08-22 22:34:15 +00:00
var q_zoom = 3 ;
2019-03-20 16:58:06 +00:00
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
2019-06-24 16:32:22 +00:00
< ? php if ( $this -> config -> item ( 'map_gridsquares' ) != FALSE ) { ?>
2024-02-22 16:56:21 +00:00
var grid = " Yes " ;
2019-06-24 16:32:22 +00:00
< ? php } else { ?>
2024-02-22 16:56:21 +00:00
var grid = " No " ;
2019-06-24 16:32:22 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
initmap ( grid , 'map' , {
'dataPost' : {
'nb_qso' : '18'
}
});
2019-06-24 16:32:22 +00:00
2024-02-22 16:56:21 +00:00
});
2019-03-20 16:58:06 +00:00
</ script >
2019-04-08 14:36:23 +00:00
< ? php } ?>
2019-03-20 16:58:06 +00:00
2019-01-13 15:59:16 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " radio " ) { ?>
2024-02-22 16:56:21 +00:00
<!-- If this is the admin / radio page run the JS -->
< script type = " text/javascript " >
$ ( document ) . ready ( function () {
setInterval ( function () {
// Get Mode
$ . get ( 'radio/status/' , function ( result ) {
2019-01-13 15:59:16 +00:00
//$('.status').append(result);
$ ( '.status' ) . html ( result );
2024-02-22 16:56:21 +00:00
});
}, 2000 );
});
</ script >
2019-01-13 15:59:16 +00:00
< ? php } ?>
2019-05-14 10:52:11 +00:00
2022-10-31 14:27:54 +00:00
2022-01-12 19:51:24 +00:00
< script type = " text/javascript " >
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
2022-01-12 19:51:24 +00:00
</ script >
2022-10-31 14:27:54 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " search " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " >
i = 0 ;
2019-09-04 21:11:55 +00:00
2024-02-22 16:56:21 +00:00
function findduplicates () {
event . preventDefault ();
$ ( '#partial_view' ) . load ( base_url + " index.php/logbook/search_duplicates/ " + $ ( " #station_id " ) . val (), function () {
$ ( '.qsolist' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 500px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
});
2022-10-31 19:09:19 +00:00
}
2024-02-22 16:56:21 +00:00
function findlotwunconfirmed () {
event . preventDefault ();
$ ( '#partial_view' ) . load ( base_url + " index.php/logbook/search_lotw_unconfirmed/ " + $ ( " #station_id " ) . val (), function () {
$ ( '.qsolist' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 500px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
});
2023-05-26 08:38:31 +00:00
}
2024-02-22 16:56:21 +00:00
function findincorrectcqzones () {
event . preventDefault ();
$ ( '#partial_view' ) . load ( base_url + " index.php/logbook/search_incorrect_cq_zones/ " + $ ( " #station_id " ) . val (), function () {
$ ( '.qsolist' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 500px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
});
2022-10-31 11:25:56 +00:00
}
2024-02-22 16:56:21 +00:00
function searchButtonPress () {
event . preventDefault ()
if ( $ ( '#callsign' ) . val ()) {
let fixedcall = $ ( '#callsign' ) . val ();
$ ( '#partial_view' ) . load ( " logbook/search_result/ " + fixedcall . replace ( 'Ø' , '0' ), function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
}
}
2019-09-04 21:11:55 +00:00
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
2019-05-14 10:52:11 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> input -> post ( 'callsign' ) != " " ) { ?>
$ ( '#partial_view' ) . load ( " logbook/search_result/<?php echo str_replace( " Ø " , " 0 " , $this->input ->post('callsign')); ?> " , function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
< ? php } ?>
2021-02-12 22:27:08 +00:00
2024-02-22 16:56:21 +00:00
$ ( $ ( '#callsign' )) . on ( 'keypress' , function ( e ) {
if ( e . which == 13 ) {
2019-05-14 10:52:11 +00:00
2024-02-22 16:56:21 +00:00
if ( $ ( '#callsign' ) . val ()) {
let fixedcall = $ ( '#callsign' ) . val ();
$ ( '#partial_view' ) . load ( " logbook/search_result/ " + fixedcall . replace ( 'Ø' , '0' ), function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
}
2019-05-14 10:52:11 +00:00
2024-02-22 16:56:21 +00:00
event . preventDefault ();
return false ;
}
});
2019-09-04 21:11:55 +00:00
2024-02-22 16:56:21 +00:00
});
</ script >
2019-05-14 10:52:11 +00:00
< ? php } ?>
2019-05-25 17:43:32 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " logbook " && $this -> uri -> segment ( 2 ) != " view " ) { ?>
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.Maidenhead.js " ></ script >
< script id = " leafembed " type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/leafembed.js " tileUrl = " <?php echo $this->optionslib ->get_option('option_map_tile_server'); ?> " ></ script >
2022-01-12 19:51:24 +00:00
< script type = " text/javascript " >
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ()
});
2022-01-12 19:51:24 +00:00
</ script >
2019-05-14 15:46:16 +00:00
< script type = " text/javascript " >
2024-02-22 16:56:21 +00:00
< ? php if ( $qra == " set " ) { ?>
var q_lat = < ? php echo $qra_lat ; ?> ;
var q_lng = < ? php echo $qra_lng ; ?> ;
2019-05-14 15:46:16 +00:00
< ? php } else { ?>
2024-02-22 16:56:21 +00:00
var q_lat = 40.313043 ;
var q_lng = - 32.695312 ;
2019-05-14 15:46:16 +00:00
< ? php } ?>
2023-12-12 07:18:42 +00:00
var qso_loc = '<?php echo site_url(' map / map_plot_json '); ?>' ;
2020-08-23 15:42:23 +00:00
var q_zoom = 3 ;
2019-05-14 15:46:16 +00:00
2019-06-24 17:21:02 +00:00
< ? php if ( $this -> config -> item ( 'map_gridsquares' ) != FALSE ) { ?>
2024-02-22 16:56:21 +00:00
var grid = " Yes " ;
2019-06-24 17:21:02 +00:00
< ? php } else { ?>
2024-02-22 16:56:21 +00:00
var grid = " No " ;
2019-06-24 17:21:02 +00:00
< ? php } ?>
2024-02-22 16:56:21 +00:00
initmap ( grid , 'map' , {
'dataPost' : {
'nb_qso' : '25' ,
'offset' : '<?php echo $this->uri->segment(3); ?>'
}
});
2019-05-14 15:46:16 +00:00
</ script >
2019-05-21 12:44:22 +00:00
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " qso " ) { ?>
2023-08-01 15:24:33 +00:00
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/qso.js " ></ script >
< ? php if ( $this -> session -> userdata ( 'isWinkeyEnabled' )) { ?>
< script src = " <?php echo base_url(); ?>assets/js/winkey.js " ></ script >
< ? php }
2023-08-01 15:24:33 +00:00
2024-02-22 16:56:21 +00:00
if ( $this -> optionslib -> get_option ( 'dxcache_url' ) != '' ) { ?>
< script type = " text/javascript " >
var dxcluster_provider = '<?php echo base_url(); ?>index.php/dxcluster' ;
$ ( document ) . ready ( function () {
$ ( " #check_cluster " ) . on ( " click " , function () {
$ . ajax ({
url : dxcluster_provider + " /qrg_lookup/ " + $ ( " #frequency " ) . val () / 1000 ,
cache : false ,
dataType : " json "
}) . done (
function ( dxspot ) {
reset_fields ();
$ ( " #callsign " ) . val ( dxspot . spotted );
$ ( " #callsign " ) . trigger ( " blur " );
}
);
});
});
</ script >
< ? php
}
2023-07-16 11:53:53 +00:00
2022-02-18 13:46:16 +00:00
$this -> load -> model ( 'stations' );
$active_station_id = $this -> stations -> find_active ();
$station_profile = $this -> stations -> profile ( $active_station_id );
$active_station_info = $station_profile -> row ();
if ( strpos ( $active_station_info -> station_gridsquare , ',' ) !== false ) {
$gridsquareArray = explode ( ',' , $active_station_info -> station_gridsquare );
$user_gridsquare = $gridsquareArray [ 0 ];
} else {
$user_gridsquare = $active_station_info -> station_gridsquare ;
}
2024-02-22 16:56:21 +00:00
?>
2019-06-13 23:14:39 +00:00
2024-02-22 16:56:21 +00:00
< script >
var markers = L . layerGroup ();
var pos = [ 51.505 , - 0.09 ];
var mymap = L . map ( 'qsomap' ) . setView ( pos , 12 );
$ . ajax ({
url : base_url + 'index.php/logbook/qralatlngjson' ,
type : 'post' ,
data : {
< ? php if ( $active_station_info -> station_gridsquare != " " ) { ?>
qra : '<?php echo $user_gridsquare; ?>' ,
< ? php } else if ( null !== $this -> config -> item ( 'locator' )) { ?>
qra : '<?php echo $this->config->item(' locator '); ?>' ,
< ? php } else { ?>
// Fallback to London in case all else fails
qra : 'IO91WM' ,
< ? php } ?>
},
success : function ( data ) {
result = JSON . parse ( data );
if ( typeof result [ 0 ] !== " undefined " && typeof result [ 1 ] !== " undefined " ) {
mymap . panTo ([ result [ 0 ], result [ 1 ]]);
pos = result ;
}
},
error : function () {},
});
2019-06-13 23:14:39 +00:00
2024-02-22 16:56:21 +00:00
L . tileLayer ( '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' , {
maxZoom : 18 ,
attribution : '<?php echo $this->optionslib->get_option(' option_map_tile_server_copyright '); ?>' ,
id : 'mapbox.streets'
}) . addTo ( mymap );
</ script >
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " >
var manual = < ? php echo $_GET [ 'manual' ]; ?> ;
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
$ ( '.callsign-suggest' ) . hide ();
2020-04-25 06:09:29 +00:00
2024-02-22 16:56:21 +00:00
setRst ( $ ( " .mode " ) . val ());
2019-08-15 11:03:15 +00:00
2024-02-22 16:56:21 +00:00
/* On Page Load */
var catcher = function () {
var changed = false ;
$ ( 'form' ) . each ( function () {
if ( $ ( this ) . data ( 'initialForm' ) != $ ( this ) . serialize ()) {
changed = true ;
$ ( this ) . addClass ( 'changed' );
} else {
$ ( this ) . removeClass ( 'changed' );
}
});
if ( changed ) {
return 'Unsaved QSO!' ;
}
};
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
$ ( function () {
$ ( 'form' ) . each ( function () {
$ ( this ) . data ( 'initialForm' , $ ( this ) . serialize ());
}) . submit ( function ( e ) {
var formEl = this ;
var changed = false ;
$ ( 'form' ) . each ( function () {
if ( this != formEl && $ ( this ) . data ( 'initialForm' ) != $ ( this ) . serialize ()) {
changed = true ;
$ ( this ) . addClass ( 'changed' );
} else {
$ ( this ) . removeClass ( 'changed' );
}
});
if ( changed && ! confirm ( 'You have an unsaved QSO. Continue with QSO?' )) {
e . preventDefault ();
} else {
$ ( window ) . unbind ( 'beforeunload' , catcher );
}
});
$ ( window ) . bind ( 'beforeunload' , catcher );
});
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
// Callsign always has focus on load
$ ( " #callsign " ) . focus ();
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
if ( ! manual ) {
$ ( function ( $ ) {
resetTimers ( 0 );
});
}
2019-05-25 21:17:35 +00:00
});
2019-06-24 15:13:51 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> session -> userdata ( 'user_qso_end_times' ) == 1 ) { ?>
$ ( '#callsign' ) . focusout ( function () {
if ( ! manual && $ ( '#callsign' ) . val () != '' ) {
clearInterval ( handleStart );
clearInterval ( handleDate );
}
});
$ ( '#start_time' ) . focusout ( function () {
if ( manual && $ ( '#start_time' ) . val () != '' ) {
$ ( '#end_time' ) . val ( $ ( '#start_time' ) . val ());
}
});
< ? php } ?>
2022-10-19 12:52:43 +00:00
2024-02-22 16:56:21 +00:00
jQuery ( function ( $ ) {
var input = $ ( '#callsign' );
input . on ( 'keydown' , function () {
var key = event . keyCode || event . charCode ;
2020-04-13 08:34:02 +00:00
2024-02-22 16:56:21 +00:00
if ( key == 8 || key == 46 ) {
reset_fields ();
}
});
2023-05-01 19:14:30 +00:00
2024-02-22 16:56:21 +00:00
$ ( document ) . keyup ( function ( e ) {
if ( e . charCode === 0 ) {
let fixedcall = $ ( '#callsign' ) . val ();
$ ( '#callsign' ) . val ( fixedcall . replace ( 'Ø' , '0' ));
}
if ( e . key === " Escape " ) { // escape key maps to keycode `27`
reset_fields ();
if ( ! manual ) {
resetTimers ( 0 )
}
$ ( '#callsign' ) . val ( " " );
$ ( " #callsign " ) . focus ();
updateFromCAT ();
}
});
});
2023-04-27 21:02:57 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> session -> userdata ( 'user_sota_lookup' ) == 1 ) { ?>
$ ( '#sota_ref' ) . change ( function () {
var sota = $ ( '#sota_ref' ) . val ();
if ( sota . length > 0 ) {
$ . ajax ({
url : base_url + 'index.php/qso/get_sota_info' ,
type : 'post' ,
data : {
'sota' : sota
},
success : function ( res ) {
$ ( '#qth' ) . val ( res . name );
$ ( '#locator' ) . val ( res . locator );
},
error : function () {
$ ( '#qth' ) . val ( '' );
$ ( '#locator' ) . val ( '' );
},
});
}
});
< ? php } ?>
2020-12-07 20:26:16 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> session -> userdata ( 'user_wwff_lookup' ) == 1 ) { ?>
$ ( '#wwff_ref' ) . change ( function () {
var wwff = $ ( '#wwff_ref' ) . val ();
if ( wwff . length > 0 ) {
$ . ajax ({
url : base_url + 'index.php/qso/get_wwff_info' ,
type : 'post' ,
data : {
'wwff' : wwff
},
success : function ( res ) {
$ ( '#qth' ) . val ( res . name );
$ ( '#locator' ) . val ( res . locator );
},
error : function () {
$ ( '#qth' ) . val ( '' );
$ ( '#locator' ) . val ( '' );
},
});
}
});
< ? php } ?>
2023-08-14 14:10:24 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> session -> userdata ( 'user_pota_lookup' ) == 1 ) { ?>
$ ( '#pota_ref' ) . change ( function () {
var pota = $ ( '#pota_ref' ) . val ();
if ( pota . length > 0 ) {
$ . ajax ({
url : base_url + 'index.php/qso/get_pota_info' ,
type : 'post' ,
data : {
'pota' : pota
},
success : function ( res ) {
$ ( '#qth' ) . val ( res . name );
$ ( '#locator' ) . val ( res . grid6 );
},
error : function () {
$ ( '#qth' ) . val ( '' );
$ ( '#locator' ) . val ( '' );
},
});
}
});
< ? php } ?>
2023-11-01 13:24:13 +00:00
2024-02-22 16:56:21 +00:00
$ ( '#stationProfile' ) . change ( function () {
var stationProfile = $ ( '#stationProfile' ) . val ();
$ . ajax ({
url : base_url + 'index.php/qso/get_station_power' ,
type : 'post' ,
data : {
'stationProfile' : stationProfile
},
success : function ( res ) {
$ ( '#transmit_power' ) . val ( res . station_power );
},
error : function () {
$ ( '#transmit_power' ) . val ( '' );
},
});
// [eQSL default msg] change value on change station profle //
qso_set_eqsl_qslmsg ( stationProfile , false , '.qso_panel' );
});
// [eQSL default msg] change value on clic //
$ ( '.qso_panel .qso_eqsl_qslmsg_update' ) . off ( 'click' ) . on ( 'click' , function () {
qso_set_eqsl_qslmsg ( $ ( '.qso_panel #stationProfile' ) . val (), true , '.qso_panel' );
$ ( '#charsLeft' ) . text ( " " );
});
2023-11-01 13:24:13 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> session -> userdata ( 'user_qth_lookup' ) == 1 ) { ?>
$ ( '#qth' ) . focusout ( function () {
if ( $ ( '#locator' ) . val () === '' ) {
var lat = 0 ;
var lon = 0 ;
$ . ajax ({
async : false ,
type : 'GET' ,
dataType : " json " ,
url : " https://nominatim.openstreetmap.org/?city= " + $ ( this ) . val () + " &format=json&addressdetails=1&limit=1 " ,
data : {},
success : function ( data ) {
if ( typeof data [ 0 ] . lat !== 'undefined' ) {
lat = parseFloat ( data [ 0 ] . lat );
}
if ( typeof data [ 0 ] . lon !== 'undefined' ) {
lon = parseFloat ( data [ 0 ] . lon );
}
},
});
if ( lat !== 0 && lon !== 0 ) {
var qthloc = LatLng2Loc ( lat , lon , 10 );
if ( qthloc . length > 0 ) {
$ ( '#locator' ) . val ( qthloc . substr ( 0 , 6 )) . trigger ( 'focusout' );
}
}
}
});
LatLng2Loc = function ( y , x , num ) {
if ( x < - 180 ) {
x = x + 360 ;
}
if ( x > 180 ) {
x = x - 360 ;
}
var yqth , yi , yk , ydiv , yres , ylp , y ;
var ycalc = new Array ( 0 , 0 , 0 );
var yn = new Array ( 0 , 0 , 0 , 0 , 0 , 0 , 0 );
var ydiv_arr = new Array ( 10 , 1 , 1 / 24 , 1 / 240 , 1 / 240 / 24 );
ycalc [ 0 ] = ( x + 180 ) / 2 ;
ycalc [ 1 ] = y + 90 ;
for ( yi = 0 ; yi < 2 ; yi ++ ) {
for ( yk = 0 ; yk < 5 ; yk ++ ) {
ydiv = ydiv_arr [ yk ];
yres = ycalc [ yi ] / ydiv ;
ycalc [ yi ] = yres ;
if ( ycalc [ yi ] > 0 ) ylp = Math . floor ( yres );
else ylp = Math . ceil ( yres );
ycalc [ yi ] = ( ycalc [ yi ] - ylp ) * ydiv ;
yn [ 2 * yk + yi ] = ylp ;
}
}
2023-11-01 13:24:13 +00:00
2024-02-22 16:56:21 +00:00
var qthloc = " " ;
if ( num >= 2 ) qthloc += String . fromCharCode ( yn [ 0 ] + 0x41 ) + String . fromCharCode ( yn [ 1 ] + 0x41 );
if ( num >= 4 ) qthloc += String . fromCharCode ( yn [ 2 ] + 0x30 ) + String . fromCharCode ( yn [ 3 ] + 0x30 );
if ( num >= 6 ) qthloc += String . fromCharCode ( yn [ 4 ] + 0x41 ) + String . fromCharCode ( yn [ 5 ] + 0x41 );
if ( num >= 8 ) qthloc += ' ' + String . fromCharCode ( yn [ 6 ] + 0x30 ) + String . fromCharCode ( yn [ 7 ] + 0x30 );
if ( num >= 10 ) qthloc += String . fromCharCode ( yn [ 8 ] + 0x61 ) + String . fromCharCode ( yn [ 9 ] + 0x61 );
return qthloc ;
}
< ? php } ?>
2020-12-07 20:26:16 +00:00
</ script >
2021-10-06 18:24:14 +00:00
2024-02-22 16:56:21 +00:00
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " qso " || ( $this -> uri -> segment ( 1 ) == " contesting " && $this -> uri -> segment ( 2 ) != " add " )) { ?>
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/moment.min.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/datetime-moment.js " ></ script >
2020-12-07 20:26:16 +00:00
< script >
2024-02-22 16:56:21 +00:00
$ ( '#notice-alerts' ) . delay ( 1000 ) . fadeOut ( 5000 );
function setRst ( mode ) {
if ( mode == 'JT65' || mode == 'JT65B' || mode == 'JT6C' || mode == 'JTMS' || mode == 'ISCAT' || mode == 'MSK144' || mode == 'JTMSK' || mode == 'QRA64' || mode == 'FT8' || mode == 'FT4' || mode == 'JS8' || mode == 'JT9' || mode == 'JT9-1' || mode == 'ROS' ) {
$ ( '#rst_sent' ) . val ( '-5' );
$ ( '#rst_rcvd' ) . val ( '-5' );
} else if ( mode == 'FSK441' || mode == 'JT6M' ) {
$ ( '#rst_sent' ) . val ( '26' );
$ ( '#rst_rcvd' ) . val ( '26' );
} else if ( mode == 'CW' || mode == 'RTTY' || mode == 'PSK31' || mode == 'PSK63' ) {
$ ( '#rst_sent' ) . val ( '599' );
$ ( '#rst_rcvd' ) . val ( '599' );
} else {
$ ( '#rst_sent' ) . val ( '59' );
$ ( '#rst_rcvd' ) . val ( '59' );
}
2023-12-21 08:22:56 +00:00
}
2024-02-22 16:56:21 +00:00
function getUTCTimeStamp ( el ) {
var now = new Date ();
var localTime = now . getTime ();
var utc = localTime + ( now . getTimezoneOffset () * 60000 );
$ ( el ) . attr ( 'value' , ( " 0 " + now . getUTCHours ()) . slice ( - 2 ) + ':' + ( " 0 " + now . getUTCMinutes ()) . slice ( - 2 ) + ':' + ( " 0 " + now . getUTCSeconds ()) . slice ( - 2 ));
2023-12-21 08:22:56 +00:00
}
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
function getUTCDateStamp ( el ) {
var now = new Date ();
var localTime = now . getTime ();
var utc = localTime + ( now . getTimezoneOffset () * 60000 );
$ ( el ) . attr ( 'value' , ( " 0 " + now . getUTCDate ()) . slice ( - 2 ) + '-' + ( " 0 " + ( now . getUTCMonth () + 1 )) . slice ( - 2 ) + '-' + now . getUTCFullYear ());
}
</ script >
2019-05-25 16:59:19 +00:00
2024-02-22 16:56:21 +00:00
< script >
// Javascript for controlling rig frequency.
var updateFromCAT = function () {
var cat2UI = function ( ui , cat , allow_empty , allow_zero , callback_on_update ) {
// Check, if cat-data is available
if ( cat == null ) {
return ;
} else if ( typeof allow_empty !== 'undefined' && ! allow_empty && cat == '' ) {
return ;
} else if ( typeof allow_zero !== 'undefined' && ! allow_zero && cat == '0' ) {
return ;
}
// Only update the ui-element, if cat-data has changed
if ( ui . data ( 'catValue' ) != cat ) {
ui . val ( cat );
ui . data ( 'catValue' , cat );
if ( typeof callback_on_update === 'function' ) {
callback_on_update ( cat );
}
}
}
if ( $ ( 'select.radios option:selected' ) . val () != '0' ) {
radioID = $ ( 'select.radios option:selected' ) . val ();
$ . getJSON ( " radio/json/ " + radioID , function ( data ) {
/* {
" frequency " : " 2400210000 " ,
" frequency_rx " : " 10489710000 " ,
" mode " : " SSB " ,
" satmode " : " S/X " ,
" satname " : " QO-100 "
" power " : " 20 "
" prop_mode " : " SAT " ,
" error " : " not_logged_id " // optional, reserved for errors
} */
if ( data . error ) {
if ( data . error == 'not_logged_in' ) {
$ ( " .radio_cat_state " ) . remove ();
if ( $ ( '.radio_login_error' ) . length == 0 ) {
$ ( '.qso_panel' ) . prepend ( '<div class="alert alert-danger radio_login_error" role="alert"><i class="fas fa-broadcast-tower"></i> You\'re not logged it. Please <a href="<?php echo base_url(); ?>">login</a></div>' );
}
}
// Put future Errorhandling here
} else {
if ( $ ( '.radio_login_error' ) . length != 0 ) {
$ ( " .radio_login_error " ) . remove ();
}
cat2UI ( $ ( '#frequency' ), data . frequency , false , true , function ( d ) {
$ ( " #band " ) . val ( frequencyToBand ( d ))
});
cat2UI ( $ ( '#frequency_rx' ), data . frequency_rx , false , true , function ( d ) {
$ ( " #band_rx " ) . val ( frequencyToBand ( d ))
});
cat2UI ( $ ( '.mode' ), data . mode , false , false , function ( d ) {
setRst ( $ ( " .mode " ) . val ())
});
cat2UI ( $ ( '#sat_name' ), data . satname , false , false );
cat2UI ( $ ( '#sat_mode' ), data . satmode , false , false );
cat2UI ( $ ( '#transmit_power' ), data . power , false , false );
cat2UI ( $ ( '#selectPropagation' ), data . prop_mode , false , false );
// Display CAT Timeout warning based on the figure given in the config file
var minutes = Math . floor ( < ? php echo $this -> optionslib -> get_option ( 'cat_timeout_interval' ); ?> / 60);
if ( data . updated_minutes_ago > minutes ) {
$ ( " .radio_cat_state " ) . remove ();
if ( $ ( '.radio_timeout_error' ) . length == 0 ) {
$ ( '#radio_status' ) . prepend ( '<div class="alert alert-danger radio_timeout_error" role="alert"><i class="fas fa-broadcast-tower"></i> Radio connection timed-out: ' + $ ( 'select.radios option:selected' ) . text () + ' data is ' + data . updated_minutes_ago + ' minutes old.</div>' );
} else {
$ ( '.radio_timeout_error' ) . html ( 'Radio connection timed-out: ' + $ ( 'select.radios option:selected' ) . text () + ' data is ' + data . updated_minutes_ago + ' minutes old.' );
}
} else {
$ ( " .radio_timeout_error " ) . remove ();
text = '<i class="fas fa-broadcast-tower"></i><span style="margin-left:10px;"></span><b>TX:</b> ' + ( Math . round ( parseInt ( data . frequency ) / 100 ) / 10000 ) . toFixed ( 4 ) + ' MHz' ;
if ( data . mode != null ) {
text = text + '<span style="margin-left:10px"></span>' + data . mode ;
}
if ( data . power != null && data . power != 0 ) {
text = text + '<span style="margin-left:10px"></span>' + data . power + ' W' ;
}
ptext = '' ;
if ( data . prop_mode != null && data . prop_mode != '' ) {
ptext = ptext + data . prop_mode ;
if ( data . prop_mode == 'SAT' ) {
ptext = ptext + ' ' + data . satname ;
}
}
if ( data . frequency_rx != null && data . frequency_rx != 0 ) {
ptext = ptext + '<span style="margin-left:10px"></span><b>RX:</b> ' + ( Math . round ( parseInt ( data . frequency_rx ) / 1000 ) / 1000 ) . toFixed ( 3 ) + ' MHz' ;
}
if ( ptext != '' ) {
text = text + '<span style="margin-left:10px"></span>(' + ptext + ')' ;
}
if ( ! $ ( '#radio_cat_state' ) . length ) {
$ ( '#radio_status' ) . prepend ( '<div aria-hidden="true"><div id="radio_cat_state" class="alert alert-success radio_cat_state" role="alert">' + text + '</div></div>' );
} else {
$ ( '#radio_cat_state' ) . html ( text );
}
}
}
});
}
};
// Update frequency every three second
setInterval ( updateFromCAT , 3000 );
// If a radios selected from drop down select radio update.
$ ( '.radios' ) . change ( updateFromCAT );
// If no radio is selected clear data
$ ( " .radios " ) . change ( function () {
if ( $ ( " .radios option:selected " ) . val () == 0 ) {
$ ( " #sat_name " ) . val ( " " );
$ ( " #sat_mode " ) . val ( " " );
$ ( " #frequency " ) . val ( " " );
$ ( " #frequency_rx " ) . val ( " " );
$ ( " #band_rx " ) . val ( " " );
$ ( " #selectPropagation " ) . val ( $ ( " #selectPropagation option:first " ) . val ());
$ ( " .radio_timeout_error " ) . remove ();
}
});
</ script >
2019-05-25 17:43:32 +00:00
2024-02-22 16:56:21 +00:00
< ? php } ?>
2019-05-25 17:43:32 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " logbook " && $this -> uri -> segment ( 2 ) == " view " ) { ?>
< script >
var mymap = L . map ( 'map' ) . setView ([ lat , long ], 5 );
2019-05-25 17:43:32 +00:00
2024-02-22 16:56:21 +00:00
L . tileLayer ( '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' , {
maxZoom : 18 ,
attribution : '<?php echo $this->optionslib->get_option(' option_map_tile_server_copyright '); ?>' ,
id : 'mapbox.streets'
}) . addTo ( mymap );
2020-06-17 13:37:17 +00:00
2022-02-04 14:09:51 +00:00
2024-02-22 16:56:21 +00:00
var printer = L . easyPrint ({
tileLayer : tiles ,
sizeModes : [ 'Current' , 'A4Landscape' , 'A4Portrait' ],
filename : 'myMap' ,
exportOnly : true ,
hideControlContainer : true
}) . addTo ( mymap );
2020-06-17 13:37:17 +00:00
2024-02-22 16:56:21 +00:00
var redIcon = L . icon ({
iconUrl : icon_dot_url ,
iconSize : [ 18 , 18 ], // size of the icon
});
2019-05-25 17:43:32 +00:00
2024-02-22 16:56:21 +00:00
L . marker ([ lat , long ], {
icon : redIcon
}) . addTo ( mymap )
. bindPopup ( callsign );
2019-05-25 17:43:32 +00:00
2024-02-22 16:56:21 +00:00
mymap . on ( 'click' , onMapClick );
</ script >
2019-05-25 17:43:32 +00:00
< ? php } ?>
2019-05-25 16:59:19 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " update " ) { ?>
2024-02-22 16:56:21 +00:00
< script >
$ ( document ) . ready ( function () {
$ ( '#btn_update_dxcc' ) . bind ( 'click' , function () {
$ ( '#dxcc_update_status' ) . show ();
$ . ajax ({
url : " update/dxcc "
});
2019-05-25 16:59:19 +00:00
setTimeout ( update_stats , 5000 );
2024-02-22 16:56:21 +00:00
});
2019-05-25 16:59:19 +00:00
2024-02-22 16:56:21 +00:00
function update_stats () {
$ ( '#dxcc_update_status' ) . load ( '<?php echo base_url() ?>updates/status.html' , function ( val ) {
$ ( '#dxcc_update_staus' ) . html ( val );
2019-05-21 12:44:22 +00:00
2024-02-22 16:56:21 +00:00
if (( val === null ) || ( val . substring ( 0 , 4 ) != " DONE " )) {
setTimeout ( update_stats , 5000 );
}
});
}
});
</ script >
2019-05-21 12:44:22 +00:00
2019-06-26 20:11:44 +00:00
< ? php } ?>
2022-10-06 10:51:36 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " gridsquares " && ! empty ( $this -> uri -> segment ( 2 ))) { ?>
2024-02-22 16:56:21 +00:00
< script >
var gridsquaremap = true ;
</ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.MaidenheadColoured.js " ></ script >
2019-06-26 20:11:44 +00:00
2024-02-22 16:56:21 +00:00
< script >
var layer = L . tileLayer ( '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' , {
maxZoom : 18 ,
attribution : '<?php echo $this->optionslib->get_option(' option_map_tile_server_copyright '); ?>' ,
id : 'mapbox.streets'
});
2019-06-26 20:11:44 +00:00
2024-02-22 16:56:21 +00:00
var map = L . map ( 'gridsquare_map' , {
layers : [ layer ],
center : [ 19 , 0 ],
zoom : 2 ,
minZoom : 1 ,
fullscreenControl : true ,
fullscreenControlOptions : {
position : 'topleft'
},
});
var printer = L . easyPrint ({
tileLayer : layer ,
sizeModes : [ 'Current' ],
filename : 'myMap' ,
exportOnly : true ,
hideControlContainer : true
}) . addTo ( map );
var grid_two = < ? php echo $grid_2char ; ?> ;
var grid_four = < ? php echo $grid_4char ; ?> ;
var grid_six = < ? php echo $grid_6char ; ?> ;
var grid_two_count = grid_two . length ;
var grid_four_count = grid_four . length ;
var grid_six_count = grid_six . length ;
var grid_two_confirmed = < ? php echo $grid_2char_confirmed ; ?> ;
var grid_four_confirmed = < ? php echo $grid_4char_confirmed ; ?> ;
var grid_six_confirmed = < ? php echo $grid_6char_confirmed ; ?> ;
var grid_two_confirmed_count = grid_two_confirmed . length ;
var grid_four_confirmed_count = grid_four_confirmed . length ;
var grid_six_confirmed_count = grid_six_confirmed . length ;
if ( grid_four_confirmed_count > 0 ) {
var span = document . getElementById ( 'confirmed_grids' );
span . innerText = span . textContent = '(' + grid_four_confirmed_count + ' <?php echo lang(' gridsquares_grid_squares '); ?>' + ( grid_four_confirmed_count != 1 ? 's' : '' ) + ') ' ;
}
if (( grid_four_count - grid_four_confirmed_count ) > 0 ) {
var span = document . getElementById ( 'worked_grids' );
span . innerText = span . textContent = '(' + ( grid_four_count - grid_four_confirmed_count ) + ' <?php echo lang(' gridsquares_grid_squares '); ?>' + ( grid_four_count - grid_four_confirmed_count != 1 ? 's' : '' ) + ') ' ;
}
var span = document . getElementById ( 'sum_grids' );
span . innerText = span . textContent = ' <?php echo lang(' gridsquares_total_count '); ?>' + ': ' + grid_four_count + ' <?php echo lang(' gridsquares_grid_squares '); ?>' + ( grid_four_count != 1 ? 's' : '' );
var maidenhead = L . maidenhead () . addTo ( map );
map . on ( 'click' , onMapClick );
function onMapClick ( event ) {
var LatLng = event . latlng ;
var lat = LatLng . lat ;
var lng = LatLng . lng ;
var locator = LatLng2Loc ( lat , lng , 10 );
var loc_4char = locator . substring ( 0 , 4 );
if ( map . getZoom () > 2 ) {
< ? php if ( $this -> session -> userdata ( 'user_callsign' )) { ?>
spawnGridsquareModal ( loc_4char );
< ? php } ?>
}
};
function spawnGridsquareModal ( loc_4char ) {
var band = '' ;
var search_type = " <?php echo $this->uri ->segment(2); ?> " ;
if ( search_type == " satellites " ) {
band = 'SAT' ;
} else {
band = " <?php echo $this->uri ->segment(3); ?> " ;
}
$ ( " .modal-body " ) . empty ();
$ . ajax ({
url : base_url + 'index.php/awards/qso_details_ajax' ,
type : 'post' ,
data : {
'Searchphrase' : loc_4char ,
'Band' : band ,
'Mode' : 'All' ,
'Type' : 'VUCC'
},
success : function ( html ) {
$ ( " .modal-body " ) . html ( html );
$ ( " .modal-body table " ) . addClass ( 'table-sm' );
$ ( " .modal-body h5 " ) . empty ();
var count = $ ( '.table tr' ) . length ;
count = count - 1 ;
$ ( '#qso_count' ) . text ( count );
if ( count > 1 ) {
$ ( '#gt1_qso' ) . text ( " s " );
} else {
$ ( '#gt1_qso' ) . text ( " " );
}
if ( count > 0 ) {
$ ( '#square_number' ) . text ( loc_4char );
$ ( '#exampleModal' ) . modal ( 'show' );
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ({
boundary : 'window'
});
}
$ ( '.table-responsive .dropdown-toggle' ) . off ( 'mouseenter' ) . on ( 'mouseenter' , function () {
2023-12-22 10:15:00 +00:00
showQsoActionsMenu ( $ ( this ) . closest ( '.dropdown' ));
});
2024-02-22 16:56:21 +00:00
}
});
2019-06-28 17:17:54 +00:00
}
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " gridsquares " && $this -> uri -> segment ( 2 ) == " band " ) { ?>
2019-06-28 17:17:54 +00:00
2024-02-22 16:56:21 +00:00
var bands_available = < ? php echo $bands_available ; ?> ;
$ ( '#gridsquare_bands' ) . append ( '<option value="All">All</option>' )
$ . each ( bands_available , function ( key , value ) {
$ ( '#gridsquare_bands' )
. append ( $ ( " <option></option> " )
. attr ( " value " , value )
. text ( value ));
});
var num = " <?php echo $this->uri ->segment(3); ?> " ;
$ ( " #gridsquare_bands option " ) . each ( function () {
if ( $ ( this ) . val () == num ) { // EDITED THIS LINE
$ ( this ) . attr ( " selected " , " selected " );
}
});
$ ( function () {
// bind change event to select
$ ( '#gridsquare_bands' ) . on ( 'change' , function () {
var url = $ ( this ) . val (); // get selected value
if ( url ) { // require a URL
window . location = " <?php echo site_url('gridsquares/band/'); ?> " + url
}
return false ;
});
});
< ? php } ?>
</ script >
2020-02-18 09:49:27 +00:00
< ? php } ?>
2022-10-06 10:51:36 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " activated_grids " && ! empty ( $this -> uri -> segment ( 2 ))) { ?>
2022-02-03 21:09:05 +00:00
2024-02-22 16:56:21 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/leaflet/L.MaidenheadColoured.js " ></ script >
2022-02-03 21:09:05 +00:00
2024-02-22 16:56:21 +00:00
< script >
var layer = L . tileLayer ( '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' , {
maxZoom : 18 ,
attribution : '<?php echo $this->optionslib->get_option(' option_map_tile_server_copyright '); ?>' ,
id : 'mapbox.streets'
});
var map = L . map ( 'gridsquare_map' , {
layers : [ layer ],
center : [ 19 , 0 ],
zoom : 2 ,
minZoom : 1 ,
fullscreenControl : true ,
fullscreenControlOptions : {
position : 'topleft'
},
});
var grid_two = < ? php echo $grid_2char ; ?> ;
var grid_four = < ? php echo $grid_4char ; ?> ;
var grid_six = < ? php echo $grid_6char ; ?> ;
var grid_two_count = grid_two . length ;
var grid_four_count = grid_four . length ;
var grid_six_count = grid_six . length ;
var grid_two_confirmed = < ? php echo $grid_2char_confirmed ; ?> ;
var grid_four_confirmed = < ? php echo $grid_4char_confirmed ; ?> ;
var grid_six_confirmed = < ? php echo $grid_6char_confirmed ; ?> ;
var grid_two_confirmed_count = grid_two_confirmed . length ;
var grid_four_confirmed_count = grid_four_confirmed . length ;
var grid_six_confirmed_count = grid_six_confirmed . length ;
if ( grid_four_confirmed_count > 0 ) {
var span = document . getElementById ( 'confirmed_grids' );
span . innerText = span . textContent = '(' + grid_four_confirmed_count + ' <?php echo lang(' gridsquares_grid_squares '); ?>' + ( grid_four_confirmed_count != 1 ? 's' : '' ) + ') ' ;
2022-02-03 21:09:05 +00:00
}
2024-02-22 16:56:21 +00:00
if (( grid_four_count - grid_four_confirmed_count ) > 0 ) {
var span = document . getElementById ( 'activated_grids' );
span . innerText = span . textContent = '(' + ( grid_four_count - grid_four_confirmed_count ) + ' <?php echo lang(' gridsquares_grid_squares '); ?>' + ( grid_four_count - grid_four_confirmed_count != 1 ? 's' : '' ) + ') ' ;
}
var span = document . getElementById ( 'sum_grids' );
span . innerText = span . textContent = ' <?php echo lang(' gridsquares_total_count '); ?>' + ': ' + grid_four_count + ' <?php echo lang(' gridsquares_grid_squares '); ?>' + ( grid_four_count != 1 ? 's' : '' );
var maidenhead = L . maidenhead () . addTo ( map );
map . on ( 'click' , onMapClick );
function onMapClick ( event ) {
var LatLng = event . latlng ;
var lat = LatLng . lat ;
var lng = LatLng . lng ;
var locator = LatLng2Loc ( lat , lng , 10 );
var loc_4char = locator . substring ( 0 , 4 );
if ( map . getZoom () > 2 ) {
< ? php if ( $this -> session -> userdata ( 'user_callsign' )) { ?>
var band = '' ;
var search_type = " <?php echo $this->uri ->segment(2); ?> " ;
if ( search_type == " satellites " ) {
band = 'SAT' ;
} else {
band = " <?php echo $this->uri ->segment(3); ?> " ;
}
$ ( " .modal-body " ) . empty ();
$ . ajax ({
url : base_url + 'index.php/activated_grids/qso_details_ajax' ,
type : 'post' ,
data : {
'Searchphrase' : loc_4char ,
'Band' : band ,
'Mode' : 'All' ,
},
success : function ( html ) {
$ ( " .modal-body " ) . html ( html );
$ ( " .modal-body table " ) . addClass ( 'table-sm' );
$ ( " .modal-body h5 " ) . empty ();
var count = $ ( '.table tr' ) . length ;
count = count - 1 ;
$ ( '#qso_count' ) . text ( count );
if ( count > 1 ) {
$ ( '#gt1_qso' ) . text ( " s " );
} else {
$ ( '#gt1_qso' ) . text ( " " );
}
2022-02-03 21:09:05 +00:00
2024-02-22 16:56:21 +00:00
if ( count > 0 ) {
$ ( '#square_number' ) . text ( loc_4char );
$ ( '#exampleModal' ) . modal ( 'show' );
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ({
boundary : 'window'
});
}
$ ( '.table-responsive .dropdown-toggle' ) . off ( 'mouseenter' ) . on ( 'mouseenter' , function () {
showQsoActionsMenu ( $ ( this ) . closest ( '.dropdown' ));
});
}
});
< ? php } ?>
}
};
2019-06-28 17:17:54 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " activated_grids " && $this -> uri -> segment ( 2 ) == " band " ) { ?>
var bands_available = < ? php echo $bands_available ; ?> ;
$ ( '#gridsquare_bands' ) . append ( '<option value="All">All</option>' )
$ . each ( bands_available , function ( key , value ) {
$ ( '#gridsquare_bands' )
. append ( $ ( " <option></option> " )
. attr ( " value " , value )
. text ( value ));
});
var num = " <?php echo $this->uri ->segment(3); ?> " ;
$ ( " #gridsquare_bands option " ) . each ( function () {
if ( $ ( this ) . val () == num ) { // EDITED THIS LINE
$ ( this ) . attr ( " selected " , " selected " );
}
});
$ ( function () {
// bind change event to select
$ ( '#gridsquare_bands' ) . on ( 'change' , function () {
var url = $ ( this ) . val (); // get selected value
if ( url ) { // require a URL
window . location = " <?php echo site_url('activated_grids/band/'); ?> " + url
}
return false ;
});
});
< ? php } ?>
</ script >
2020-02-18 09:49:27 +00:00
< ? php } ?>
2020-04-24 21:29:01 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " dayswithqso " ) { ?>
2020-11-08 10:26:38 +00:00
< script src = " <?php echo base_url(); ?>assets/js/chart.js " ></ script >
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/dayswithqso.js " ></ script >
2020-04-24 21:29:01 +00:00
< ? php } ?>
2020-02-18 09:49:27 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " distances " ) { ?>
2020-11-08 10:26:38 +00:00
< script src = " <?php echo base_url(); ?>assets/js/highstock.js " ></ script >
2020-12-02 13:49:14 +00:00
< script src = " <?php echo base_url(); ?>assets/js/highstock/exporting.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/highstock/offline-exporting.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/highstock/export-data.js " ></ script >
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/distances.js " ></ script >
2019-05-14 15:46:16 +00:00
< ? php } ?>
2020-04-25 21:11:13 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " hrdlog " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/hrdlog.js " ></ script >
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " qrz " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/qrzlogbook.js " ></ script >
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " webadif " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/webadif.js " ></ script >
< ? php } ?>
2020-09-18 10:17:41 +00:00
2020-09-22 19:08:26 +00:00
< script >
2024-02-22 16:56:21 +00:00
function displayQso ( id ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/logbook/view/' + id ,
type : 'post' ,
success : function ( html ) {
BootstrapDialog . show ({
title : lang_general_word_qso_data ,
cssClass : 'qso-dialog' ,
size : BootstrapDialog . SIZE_WIDE ,
nl2br : false ,
message : html ,
onshown : function ( dialog ) {
var qsoid = $ ( " #qsoid " ) . text ();
$ ( " .editButton " ) . html ( '<a class="btn btn-primary" id="edit_qso" href="javascript:qso_edit(' + qsoid + ')"><i class="fas fa-edit"></i><?php echo lang(' general_edit_qso '); ?></a>' );
var lat = $ ( " #lat " ) . text ();
var long = $ ( " #long " ) . text ();
var callsign = $ ( " #callsign " ) . text ();
var mymap = L . map ( 'mapqso' ) . setView ([ lat , long ], 5 );
var tiles = L . tileLayer ( '<?php echo $this->optionslib->get_option(' option_map_tile_server '); ?>' , {
maxZoom : 18 ,
attribution : '<?php echo $this->optionslib->get_option(' option_map_tile_server_copyright '); ?>' ,
}) . addTo ( mymap );
var printer = L . easyPrint ({
tileLayer : tiles ,
sizeModes : [ 'Current' ],
filename : 'myMap' ,
exportOnly : true ,
hideControlContainer : true
}) . addTo ( mymap );
var redIcon = L . icon ({
iconUrl : icon_dot_url ,
iconSize : [ 18 , 18 ], // size of the icon
});
2023-11-29 19:16:53 +00:00
2024-02-22 16:56:21 +00:00
L . marker ([ lat , long ], {
icon : redIcon
}) . addTo ( mymap )
. bindPopup ( callsign );
2023-11-29 19:16:53 +00:00
2024-02-22 16:56:21 +00:00
},
});
2023-11-29 19:16:53 +00:00
2024-02-22 16:56:21 +00:00
}
});
2023-11-29 19:16:53 +00:00
}
2024-02-22 16:56:21 +00:00
</ script >
2020-09-20 12:09:46 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " dxcc " ) { ?>
2020-09-22 19:08:26 +00:00
< script >
2024-02-22 16:56:21 +00:00
$ ( '.tabledxcc' ) . DataTable ({
2020-09-22 19:08:26 +00:00
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 400px " ,
2020-09-22 19:08:26 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2020-10-19 17:16:42 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2020-10-19 17:16:42 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
$ ( '.tablesummary' ) . DataTable ({
info : false ,
searching : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2020-10-19 17:16:42 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
2020-09-22 19:08:26 +00:00
});
2020-09-20 09:09:22 +00:00
2021-09-10 16:53:24 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
2020-10-19 17:16:42 +00:00
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
2020-09-22 19:08:26 +00:00
</ script >
< ? php } ?>
2020-09-20 09:02:29 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " waja " ) { ?>
2020-09-22 19:08:26 +00:00
< script >
2024-02-22 16:56:21 +00:00
$ ( '.tablewaja' ) . DataTable ({
2020-10-06 20:01:29 +00:00
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 400px " ,
2020-10-06 20:01:29 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2020-10-19 17:16:42 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2020-10-19 17:16:42 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
2020-10-06 20:01:29 +00:00
});
2020-10-19 17:16:42 +00:00
$ ( '.tablesummary' ) . DataTable ({
info : false ,
searching : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2020-10-19 17:16:42 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2021-09-10 16:53:24 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
2020-10-19 17:16:42 +00:00
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
2020-09-22 19:08:26 +00:00
</ script >
< ? php } ?>
2020-09-20 09:02:29 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " vucc_band " ) { ?>
2020-09-22 19:08:26 +00:00
< script >
2024-02-22 16:56:21 +00:00
$ ( '.tablevucc' ) . DataTable ({
2020-10-06 20:01:29 +00:00
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 400px " ,
2020-10-06 20:01:29 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2020-10-19 17:16:42 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2020-10-19 17:16:42 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2024-02-22 16:56:21 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
</ script >
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 2 ) == " iota " ) { ?>
< script >
$ ( '.tableiota' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
$ ( '.tablesummary' ) . DataTable ({
info : false ,
searching : false ,
ordering : false ,
" paging " : false ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
2020-10-06 20:01:29 +00:00
});
2021-09-10 16:53:24 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
2020-10-19 17:16:42 +00:00
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
2020-09-22 19:08:26 +00:00
</ script >
2024-02-22 16:56:21 +00:00
2020-09-22 19:08:26 +00:00
< ? php } ?>
2020-09-20 09:02:29 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " cq " ) { ?>
< script >
$ ( '.tablecq' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2023-03-17 17:54:35 +00:00
2024-02-22 16:56:21 +00:00
$ ( '.tablesummary' ) . DataTable ({
info : false ,
searching : false ,
ordering : false ,
" paging " : false ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2021-01-31 14:27:56 +00:00
2024-02-22 16:56:21 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
2020-08-19 05:57:35 +00:00
}
2024-02-22 16:56:21 +00:00
</ script >
< ? php } ?>
2020-08-25 20:03:54 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " was " ) { ?>
< script >
$ ( '.tablewas' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2020-10-14 10:22:13 +00:00
2024-02-22 16:56:21 +00:00
$ ( '.tablesummary' ) . DataTable ({
info : false ,
searching : false ,
ordering : false ,
" paging " : false ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
</ script >
< ? php } ?>
2020-10-19 17:16:42 +00:00
2024-02-22 16:56:21 +00:00
< script >
function selectize_usa_county () {
var baseURL = " <?php echo base_url(); ?> " ;
$ ( '#stationCntyInputEdit' ) . selectize ({
delimiter : ';' ,
maxItems : 1 ,
closeAfterSelect : true ,
loadThrottle : 250 ,
valueField : 'name' ,
labelField : 'name' ,
searchField : 'name' ,
options : [],
create : false ,
load : function ( query , callback ) {
var state = $ ( " #input_usa_state_edit option:selected " ) . text ();
if ( ! query || state == " " ) return callback ();
2020-09-25 16:22:13 +00:00
$ . ajax ({
2024-02-22 16:56:21 +00:00
url : baseURL + 'index.php/qso/get_county' ,
type : 'GET' ,
dataType : 'json' ,
data : {
query : query ,
state : state ,
2020-09-25 16:22:13 +00:00
},
2024-02-22 16:56:21 +00:00
error : function () {
callback ();
},
success : function ( res ) {
callback ( res );
2022-03-22 16:41:03 +00:00
}
});
}
2024-02-22 16:56:21 +00:00
});
}
function qso_save () {
var baseURL = " <?php echo base_url(); ?> " ;
var myform = document . getElementById ( " qsoform " );
var fd = new FormData ( myform );
$ . ajax ({
url : baseURL + 'index.php/qso/qso_save_ajax' ,
data : fd ,
cache : false ,
processData : false ,
contentType : false ,
type : 'POST' ,
success : function ( dataofconfirm ) {
$ ( " .edit-dialog " ) . modal ( 'hide' );
$ ( " .qso-dialog " ) . modal ( 'hide' );
< ? php if ( $this -> uri -> segment ( 1 ) != " search " && $this -> uri -> segment ( 2 ) != " filter " && $this -> uri -> segment ( 1 ) != " qso " && $this -> uri -> segment ( 1 ) != " logbookadvanced " ) { ?> location.reload();
< ? php } ?>
},
error : function ( xhr , status , error ) {
console . log ( xhr . responseText );
}
});
}
</ script >
< ? php if ( $this -> uri -> segment ( 1 ) == " timeline " ) { ?>
< script >
$ ( '.timelinetable' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 500px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
function displayTimelineContacts ( querystring , band , mode , type ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/timeline/details' ,
type : 'post' ,
data : {
'Querystring' : querystring ,
'Band' : band ,
'Mode' : mode ,
'Type' : type
2024-01-04 03:03:11 +00:00
},
2024-02-22 16:56:21 +00:00
success : function ( html ) {
BootstrapDialog . show ({
title : lang_general_word_qso_data ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'qso-was-dialog' ,
nl2br : false ,
message : html ,
onshown : function ( dialog ) {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
$ ( '.table-responsive .dropdown-toggle' ) . off ( 'mouseenter' ) . on ( 'mouseenter' , function () {
showQsoActionsMenu ( $ ( this ) . closest ( '.dropdown' ));
});
},
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
2022-03-22 16:41:03 +00:00
});
2024-02-22 16:56:21 +00:00
}
</ script >
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " activators " ) { ?>
< script >
$ ( '.activatorstable' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 500px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2022-03-22 16:41:03 +00:00
2024-02-22 16:56:21 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
2022-03-22 16:41:03 +00:00
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
$ ( '#band' ) . change ( function () {
if ( $ ( this ) . val () == " SAT " ) {
$ ( '#leogeo' ) . show ();
} else {
$ ( '#leogeo' ) . hide ();
}
});
< ? php if ( $this -> input -> post ( 'band' ) != " SAT " ) { ?>
$ ( '#leogeo' ) . hide ();
< ? php } ?>
});
2020-09-25 16:22:13 +00:00
2024-02-22 16:56:21 +00:00
function displayActivatorsContacts ( call , band , leogeo ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/activators/details' ,
type : 'post' ,
data : {
'Callsign' : call ,
'Band' : band ,
'LeoGeo' : leogeo
},
success : function ( html ) {
BootstrapDialog . show ({
title : lang_general_word_qso_data ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'qso-was-dialog' ,
nl2br : false ,
message : html ,
onshown : function ( dialog ) {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
},
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
}
</ script >
< ? php } ?>
2020-10-09 16:29:41 +00:00
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " mode " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/mode.js " ></ script >
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " band " ) { ?>
< script src = " <?php echo base_url(); ?>assets/js/sections/bands.js " ></ script >
< ? php } ?>
2022-09-05 18:26:08 +00:00
2020-10-06 19:12:14 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " accumulated " ) { ?>
2020-11-08 10:26:38 +00:00
< script src = " <?php echo base_url(); ?>assets/js/chart.js " ></ script >
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/accumulatedstatistics.js " ></ script >
2020-10-06 19:12:14 +00:00
< ? php } ?>
2020-09-18 10:17:41 +00:00
2020-10-17 22:00:01 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " timeplotter " ) { ?>
2020-11-08 10:26:38 +00:00
< script src = " <?php echo base_url(); ?>assets/js/highstock.js " ></ script >
2020-12-02 13:49:14 +00:00
< script src = " <?php echo base_url(); ?>assets/js/highstock/exporting.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/highstock/offline-exporting.js " ></ script >
< script src = " <?php echo base_url(); ?>assets/js/highstock/export-data.js " ></ script >
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/timeplot.js " ></ script >
2020-10-17 22:00:01 +00:00
< ? php } ?>
2023-05-10 14:03:30 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " qsl " || $this -> uri -> segment ( 1 ) == " eqsl " ) {
2024-02-22 16:56:21 +00:00
// Get Date format
if ( $this -> session -> userdata ( 'user_date_format' )) {
// If Logged in and session exists
$custom_date_format = $this -> session -> userdata ( 'user_date_format' );
} else {
// Get Default date format from /config/cloudlog.php
$custom_date_format = $this -> config -> item ( 'qso_date_format' );
}
2022-05-27 18:20:25 +00:00
switch ( $custom_date_format ) {
2024-02-22 16:56:21 +00:00
case 'd/m/y' :
$usethisformat = 'D/MM/YY' ;
break ;
case 'd/m/Y' :
$usethisformat = 'D/MM/YYYY' ;
break ;
case 'm/d/y' :
$usethisformat = 'MM/D/YY' ;
break ;
case 'm/d/Y' :
$usethisformat = 'MM/D/YYYY' ;
break ;
case 'd.m.Y' :
$usethisformat = 'D.MM.YYYY' ;
break ;
case 'y/m/d' :
$usethisformat = 'YY/MM/D' ;
break ;
case 'Y-m-d' :
$usethisformat = 'YYYY-MM-D' ;
break ;
case 'M d, Y' :
$usethisformat = 'MMM D, YYYY' ;
break ;
case 'M d, y' :
$usethisformat = 'MMM D, YY' ;
break ;
2022-05-27 18:20:25 +00:00
}
2023-03-17 17:54:35 +00:00
2024-02-22 16:56:21 +00:00
?>
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/moment.min.js " ></ script >
2022-05-27 18:20:25 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/datetime-moment.js " ></ script >
2020-10-28 22:20:03 +00:00
< script >
2022-05-27 21:10:19 +00:00
$ . fn . dataTable . moment ( '<?php echo $usethisformat ?>' );
2023-08-15 20:23:11 +00:00
$ . fn . dataTable . ext . buttons . clear = {
className : 'buttons-clear' ,
2024-02-22 16:56:21 +00:00
action : function ( e , dt , node , config ) {
dt . search ( '' ) . draw ();
2023-08-15 20:23:11 +00:00
}
};
2024-02-22 16:56:21 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " qsl " ) { ?>
$ ( '.qsltable' ) . DataTable ({
< ? php } else if ( $this -> uri -> segment ( 1 ) == " eqsl " ) { ?>
$ ( '.eqsltable' ) . DataTable ({
< ? php } ?> "pageLength": 25,
responsive : false ,
ordering : true ,
" scrollY " : " 500px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
" order " : [ 2 , 'desc' ],
dom : 'Bfrtip' ,
buttons : [{
extend : 'clear' ,
text : 'Clear'
}]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( '[class*="buttons"]' ) . css ( " color " , " white " );
}
2020-11-01 20:45:47 +00:00
</ script >
< ? php } ?>
2020-10-28 22:20:03 +00:00
2020-12-06 12:21:35 +00:00
2020-11-01 20:45:47 +00:00
< script >
2024-02-22 16:56:21 +00:00
function viewQsl ( picture , callsign ) {
var baseURL = " <?php echo base_url(); ?> " ;
var $textAndPic = $ ( '<div></div>' );
$textAndPic . append ( '<center><img class="img-fluid w-qsl" style="height:auto;width:auto;"src="' + baseURL + '/assets/qslcard/' + picture + '" /><center>' );
var title = '' ;
if ( callsign == null ) {
title = 'QSL Card' ;
} else {
title = 'QSL Card for ' + callsign . replace ( '0' , 'Ø' );
2020-10-28 22:20:03 +00:00
}
2024-02-22 16:56:21 +00:00
BootstrapDialog . show ({
title : title ,
size : BootstrapDialog . SIZE_WIDE ,
message : $textAndPic ,
buttons : [{
label : lang_admin_close ,
action : function ( dialogRef ) {
dialogRef . close ();
}
}]
});
}
2020-11-01 20:45:47 +00:00
</ script >
2020-10-28 22:20:03 +00:00
< script >
2024-02-22 16:56:21 +00:00
function deleteQsl ( id ) {
BootstrapDialog . confirm ({
title : 'DANGER' ,
message : 'Warning! Are you sure you want to delete this QSL card?' ,
type : BootstrapDialog . TYPE_DANGER ,
closable : true ,
draggable : true ,
btnOKClass : 'btn-danger' ,
callback : function ( result ) {
if ( result ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/qsl/delete' ,
type : 'post' ,
data : {
'id' : id
},
success : function ( data ) {
$ ( " # " + id ) . parent ( " tr:first " ) . remove (); // removes qsl from table
2020-11-01 11:36:02 +00:00
2024-02-22 16:56:21 +00:00
// remove qsl from carousel
$ ( " .carousel-indicators li:last-child " ) . remove ();
$ ( " .carouselimageid_ " + id ) . remove ();
$ ( '#carouselExampleIndicators' ) . find ( '.carousel-item' ) . first () . addClass ( 'active' );
2020-11-01 11:36:02 +00:00
2024-02-22 16:56:21 +00:00
// remove table and hide tab if all qsls are deleted
if ( $ ( '.qsltable tr' ) . length == 1 ) {
$ ( '.qsltable' ) . remove ();
$ ( '.qslcardtab' ) . attr ( 'hidden' , '' );
2020-10-28 22:20:03 +00:00
}
2024-02-22 16:56:21 +00:00
}
});
2020-10-28 22:20:03 +00:00
}
2024-02-22 16:56:21 +00:00
}
});
}
2020-10-28 22:20:03 +00:00
</ script >
2023-05-10 14:03:30 +00:00
< script >
2024-02-22 16:56:21 +00:00
function viewEqsl ( picture , callsign ) {
var baseURL = " <?php echo base_url(); ?> " ;
var $textAndPic = $ ( '<div></div>' );
$textAndPic . append ( '<img class="img-fluid" style="height:auto;width:auto;"src="' + baseURL + 'images/eqsl_card_images/' + picture + '" />' );
var title = '' ;
if ( callsign == null ) {
title = 'eQSL Card' ;
} else {
title = 'eQSL Card for ' + callsign . replace ( '0' , 'Ø' );
2023-05-10 14:03:30 +00:00
}
2024-02-22 16:56:21 +00:00
BootstrapDialog . show ({
title : title ,
size : BootstrapDialog . SIZE_WIDE ,
message : $textAndPic ,
buttons : [{
label : lang_admin_close ,
action : function ( dialogRef ) {
dialogRef . close ();
}
}]
});
}
2023-05-10 14:03:30 +00:00
</ script >
2023-10-20 13:44:34 +00:00
< script >
2024-02-22 16:56:21 +00:00
$ ( '#displayAwardInfo' ) . click ( function ( event ) {
2023-10-20 13:44:34 +00:00
var awardInfoLines = [
lang_award_info_ln2 ,
lang_award_info_ln3 ,
lang_award_info_ln4
];
var awardInfoContent = " " ;
2024-02-22 16:56:21 +00:00
awardInfoLines . forEach ( function ( line ) {
2023-10-20 13:44:34 +00:00
awardInfoContent += line + " <br><br> " ;
});
BootstrapDialog . alert ({
2024-02-22 16:56:21 +00:00
title : " <h4> " + lang_award_info_ln1 + " </h4> " ,
2023-10-20 13:44:34 +00:00
message : awardInfoContent ,
});
2024-02-22 16:56:21 +00:00
});
</ script >
< script >
/*
* Used to fetch QSOs from the logbook in the awards
*/
function displayContacts ( searchphrase , band , mode , type , qsl ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/awards/qso_details_ajax' ,
type : 'post' ,
data : {
'Searchphrase' : searchphrase ,
'Band' : band ,
'Mode' : mode ,
'Type' : type ,
'QSL' : qsl
},
success : function ( html ) {
BootstrapDialog . show ({
title : lang_general_word_qso_data ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'qso-dialog' ,
nl2br : false ,
message : html ,
onshown : function ( dialog ) {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
$ ( '.contacttable' ) . DataTable ({
" pageLength " : 7 ,
responsive : false ,
ordering : false ,
" scrollY " : " 550px " ,
" scrollCollapse " : true ,
" paging " : true ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
$ ( '.table-responsive .dropdown-toggle' ) . off ( 'mouseenter' ) . on ( 'mouseenter' , function () {
showQsoActionsMenu ( $ ( this ) . closest ( '.dropdown' ));
});
},
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
}
function displayContactsOnMap ( target , searchphrase , band , mode , type , qsl ) {
2021-07-24 12:31:16 +00:00
$ . ajax ({
2024-02-22 16:56:21 +00:00
url : base_url + 'index.php/awards/qso_details_ajax' ,
2021-07-24 12:31:16 +00:00
type : 'post' ,
data : {
'Searchphrase' : searchphrase ,
'Band' : band ,
'Mode' : mode ,
2023-01-16 16:08:27 +00:00
'Type' : type ,
2024-02-22 16:56:21 +00:00
'QSL' : qsl
2021-07-24 12:31:16 +00:00
},
2024-02-22 16:56:21 +00:00
success : function ( html ) {
var dialog = new BootstrapDialog ({
2023-10-08 08:41:24 +00:00
title : lang_general_word_qso_data ,
2021-07-24 12:31:16 +00:00
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'qso-dialog' ,
nl2br : false ,
message : html ,
2022-01-12 19:51:24 +00:00
onshown : function ( dialog ) {
2024-02-22 16:56:21 +00:00
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
$ ( '.contacttable' ) . DataTable ({
" pageLength " : 25 ,
2022-11-12 09:50:46 +00:00
responsive : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 550px " ,
2022-11-12 09:50:46 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2022-11-12 09:50:46 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2022-11-12 09:50:46 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2024-02-22 16:56:21 +00:00
$ ( '.table-responsive .dropdown-toggle' ) . off ( 'mouseenter' ) . on ( 'mouseenter' , function () {
2023-12-22 10:15:00 +00:00
showQsoActionsMenu ( $ ( this ) . closest ( '.dropdown' ));
});
2022-01-12 19:51:24 +00:00
},
2021-07-24 12:31:16 +00:00
buttons : [{
2023-11-05 18:38:34 +00:00
label : lang_admin_close ,
2024-02-22 16:56:21 +00:00
action : function ( dialogItself ) {
2021-07-24 12:31:16 +00:00
dialogItself . close ();
}
}]
});
2024-02-22 16:56:21 +00:00
dialog . realize ();
target . append ( dialog . getModal ());
dialog . open ();
2021-07-24 12:31:16 +00:00
}
});
}
2020-11-01 11:36:02 +00:00
function uploadQsl () {
2024-02-22 16:56:21 +00:00
var baseURL = " <?php echo base_url(); ?> " ;
2020-11-01 11:36:02 +00:00
var formdata = new FormData ( document . getElementById ( " fileinfo " ));
$ . ajax ({
url : baseURL + 'index.php/qsl/uploadqsl' ,
type : 'post' ,
data : formdata ,
enctype : 'multipart/form-data' ,
processData : false ,
contentType : false ,
success : function ( data ) {
if ( data . status . front . status == 'Success' ) {
if ( $ ( '.qsltable' ) . length > 0 ) {
2024-02-22 16:56:21 +00:00
$ ( '.qsltable tr:last' ) . after ( '<tr><td style="text-align: center">' + data . status . front . filename + '</td>' +
'<td id="' + data . status . front . insertid + '"style="text-align: center"><button onclick="deleteQsl(' + data . status . front . insertid + ');" class="btn btn-sm btn-danger">Delete</button></td>' +
'<td style="text-align: center"><button onclick="viewQsl(\'' + data . status . front . filename + '\')" class="btn btn-sm btn-success">View</button></td>' +
2020-11-01 20:45:47 +00:00
'</tr>' );
2020-11-01 11:36:02 +00:00
var quantity = $ ( " .carousel-indicators li " ) . length ;
2024-02-22 16:56:21 +00:00
$ ( " .carousel-indicators " ) . append ( '<li data-bs-target="#carouselExampleIndicators" data-bs-slide-to="' + quantity + '"></li>' );
$ ( " .carousel-inner " ) . append ( '<center><div class="carousel-item carouselimageid_' + data . status . front . insertid + '"><img class="img-fluid w-qsl" src="' + baseURL + '/assets/qslcard/' + data . status . front . filename + '" alt="QSL picture #' + ( quantity + 1 ) + '"></div></center>' );
2020-11-01 11:36:02 +00:00
$ ( " #qslcardfront " ) . val ( null );
2024-02-22 16:56:21 +00:00
} else {
$ ( " #qslupload " ) . prepend ( '<table style="width:100%" class="qsltable table table-sm table-bordered table-hover table-striped table-condensed">' +
'<thead>' +
'<tr>' +
'<th style="text-align: center">QSL image file</th>' +
'<th style="text-align: center"></th>' +
'<th style="text-align: center"></th>' +
'</tr>' +
'</thead><tbody>' +
'<tr><td style="text-align: center">' + data . status . front . filename + '</td>' +
'<td id="' + data . status . front . insertid + '"style="text-align: center"><button onclick="deleteQsl(' + data . status . front . insertid + ');" class="btn btn-sm btn-danger">Delete</button></td>' +
'<td style="text-align: center"><button onclick="viewQsl(\'' + data . status . front . filename + '\')" class="btn btn-sm btn-success">View</button></td>' +
'</tr>' +
'</tbody></table>' );
2020-11-01 11:36:02 +00:00
$ ( '.qslcardtab' ) . removeAttr ( 'hidden' );
var quantity = $ ( " .carousel-indicators li " ) . length ;
2024-02-22 16:56:21 +00:00
$ ( " .carousel-indicators " ) . append ( '<li class="active" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="' + quantity + '"></li>' );
$ ( " .carousel-inner " ) . append ( '<center><div class="active carousel-item carouselimageid_' + data . status . front . insertid + '"><img class="img-fluid w-qsl" src="' + baseURL + '/assets/qslcard/' + data . status . front . filename + '" alt="QSL picture #' + ( quantity + 1 ) + '"></div></center>' );
2020-11-01 11:36:02 +00:00
$ ( " .carouselExampleIndicators " ) . carousel ();
$ ( " #qslcardfront " ) . val ( null );
}
2023-06-30 09:54:39 +00:00
} else if ( data . status . front . status != '' ) {
2023-12-07 00:20:39 +00:00
$ ( " #qslupload " ) . append ( '<div class="alert alert-danger">Front QSL Card:' +
2024-02-22 16:56:21 +00:00
data . status . front . error +
2020-11-01 11:36:02 +00:00
'</div>' );
}
if ( data . status . back . status == 'Success' ) {
var qsoid = $ ( " #qsoid " ) . text ();
if ( $ ( '.qsltable' ) . length > 0 ) {
2024-02-22 16:56:21 +00:00
$ ( '.qsltable tr:last' ) . after ( '<tr><td style="text-align: center">' + data . status . back . filename + '</td>' +
'<td id="' + data . status . back . insertid + '"style="text-align: center"><button onclick="deleteQsl(' + data . status . back . insertid + ');" class="btn btn-sm btn-danger">Delete</button></td>' +
'<td style="text-align: center"><button onclick="viewQsl(\'' + data . status . back . filename + '\')" class="btn btn-sm btn-success">View</button></td>' +
2020-11-01 20:45:47 +00:00
'</tr>' );
2020-11-01 11:36:02 +00:00
var quantity = $ ( " .carousel-indicators li " ) . length ;
2024-02-22 16:56:21 +00:00
$ ( " .carousel-indicators " ) . append ( '<li data-bs-target="#carouselExampleIndicators" data-bs-slide-to="' + quantity + '"></li>' );
$ ( " .carousel-inner " ) . append ( '<center><div class="carousel-item carouselimageid_' + data . status . back . insertid + '"><img class="img-fluid w-qsl" src="' + baseURL + '/assets/qslcard/' + data . status . back . filename + '" alt="QSL picture #' + ( quantity + 1 ) + '"></div></center>' );
2020-11-01 11:36:02 +00:00
$ ( " #qslcardback " ) . val ( null );
2024-02-22 16:56:21 +00:00
} else {
$ ( " #qslupload " ) . prepend ( '<table style="width:100%" class="qsltable table table-sm table-bordered table-hover table-striped table-condensed">' +
'<thead>' +
'<tr>' +
'<th style="text-align: center">QSL image file</th>' +
'<th style="text-align: center"></th>' +
'<th style="text-align: center"></th>' +
'</tr>' +
'</thead><tbody>' +
'<tr><td style="text-align: center">' + data . status . back . filename + '</td>' +
'<td id="' + data . status . back . insertid + '"style="text-align: center"><button onclick="deleteQsl(' + data . status . back . insertid + ');" class="btn btn-sm btn-danger">Delete</button></td>' +
'<td><button onclick="viewQsl(\'' + data . status . back . filename + '\')" class="btn btn-sm btn-success">View</button></td>' +
'</tr>' +
2020-11-01 11:36:02 +00:00
'</tbody></table>' );
$ ( '.qslcardtab' ) . removeAttr ( 'hidden' );
var quantity = $ ( " .carousel-indicators li " ) . length ;
2024-02-22 16:56:21 +00:00
$ ( " .carousel-indicators " ) . append ( '<li class="active" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="' + quantity + '"></li>' );
$ ( " .carousel-inner " ) . append ( '<center><div class="active carousel-item carouselimageid_' + data . status . back . insertid + '"><img class="img-fluid w-qsl" src="' + baseURL + '/assets/qslcard/' + data . status . back . filename + '" alt="QSL picture #' + ( quantity + 1 ) + '"></div></center>' );
2020-11-01 11:36:02 +00:00
$ ( " .carouselExampleIndicators " ) . carousel ();
$ ( " #qslcardback " ) . val ( null );
}
2023-06-30 09:54:39 +00:00
} else if ( data . status . back . status != '' ) {
2023-12-07 00:20:39 +00:00
$ ( " #qslupload " ) . append ( '<div class="alert alert-danger">\nBack QSL Card: ' +
2024-02-22 16:56:21 +00:00
data . status . back . error +
2020-11-01 11:36:02 +00:00
'</div>' );
}
}
});
}
</ script >
2021-07-22 05:55:34 +00:00
< script >
2024-02-22 16:56:21 +00:00
function addQsosToQsl ( filename ) {
var title = 'Add additional QSOs to a QSL Card' ;
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/qsl/loadSearchForm' ,
type : 'post' ,
data : {
'filename' : filename
},
success : function ( html ) {
BootstrapDialog . show ({
title : title ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'qso-search_results' ,
nl2br : false ,
message : html ,
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
}
2021-07-22 05:55:34 +00:00
2024-02-22 16:56:21 +00:00
function addQsoToQsl ( qsoid , filename , id ) {
var title = 'Add additional QSOs to a QSL Card' ;
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/qsl/addQsoToQsl' ,
type : 'post' ,
data : {
'filename' : filename ,
'qsoid' : qsoid
},
success : function ( html ) {
if ( html . status == 'Success' ) {
location . reload ();
} else {
$ ( " .alert " ) . remove ();
$ ( '#searchresult' ) . prepend ( '<div class="alert alert-danger">Something went wrong. Please try again!</div>' );
}
}
});
}
function searchAdditionalQsos ( filename ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/qsl/searchQsos' ,
type : 'post' ,
data : {
'callsign' : $ ( '#callsign' ) . val (),
'filename' : filename
},
success : function ( html ) {
$ ( '#searchresult' ) . empty ();
$ ( '#searchresult' ) . append ( html );
}
});
}
2021-07-22 05:55:34 +00:00
</ script >
2023-04-24 22:06:52 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " contesting " && ( $this -> uri -> segment ( 2 ) != " add " && $this -> uri -> segment ( 2 ) != " edit " )) { ?>
2022-03-27 15:33:05 +00:00
< script >
2022-05-30 13:30:28 +00:00
var manual = < ? php echo $_GET [ 'manual' ]; ?> ;
2022-03-27 15:33:05 +00:00
</ script >
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/contesting.js?v2 " ></ script >
2021-01-24 14:29:29 +00:00
< ? php } ?>
< ? php if ( $this -> uri -> segment ( 1 ) == " station " ) { ?>
2024-02-22 16:56:21 +00:00
< script >
var baseURL = " <?php echo base_url(); ?> " ;
2021-03-14 16:30:36 +00:00
2021-01-24 14:29:29 +00:00
var state = $ ( " #StateHelp option:selected " ) . text ();
if ( state != " " ) {
$ ( " #stationCntyInput " ) . prop ( 'disabled' , false );
2024-02-22 16:56:21 +00:00
station_profile_selectize_usa_county ();
2021-01-24 14:29:29 +00:00
}
2021-03-14 16:30:36 +00:00
2024-02-22 16:56:21 +00:00
$ ( '#StateHelp' ) . change ( function () {
var state = $ ( " #StateHelp option:selected " ) . text ();
if ( state != " " ) {
$ ( " #stationCntyInput " ) . prop ( 'disabled' , false );
station_profile_selectize_usa_county ();
} else {
$ ( " #stationCntyInput " ) . prop ( 'disabled' , true );
//$('#stationCntyInput')[0].selectize.destroy();
$ ( " #stationCntyInput " ) . val ( " " );
}
});
function station_profile_selectize_usa_county () {
$ ( '#stationCntyInput' ) . selectize ({
maxItems : 1 ,
closeAfterSelect : true ,
loadThrottle : 250 ,
valueField : 'name' ,
labelField : 'name' ,
searchField : 'name' ,
options : [],
create : false ,
load : function ( query , callback ) {
var state = $ ( " #StateHelp option:selected " ) . text ();
if ( ! query || state == " " ) return callback ();
$ . ajax ({
url : baseURL + 'index.php/station/get_county' ,
type : 'GET' ,
dataType : 'json' ,
data : {
query : query ,
state : state ,
},
error : function () {
callback ();
},
success : function ( res ) {
callback ( res );
}
});
}
});
}
</ script >
2021-01-24 14:29:29 +00:00
2021-02-06 23:03:05 +00:00
< ? php } ?>
2021-02-07 14:22:03 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " counties " || $this -> uri -> segment ( 2 ) == " counties_details " ) { ?>
2024-02-22 16:56:21 +00:00
< script >
$ ( '.countiestable' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 390px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
2021-02-06 23:03:05 +00:00
2024-02-22 16:56:21 +00:00
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
2021-02-07 14:22:03 +00:00
2024-02-22 16:56:21 +00:00
function displayCountyContacts ( state , county ) {
var baseURL = " <?php echo base_url(); ?> " ;
$ . ajax ({
url : baseURL + 'index.php/awards/counties_details_ajax' ,
type : 'post' ,
data : {
'State' : state ,
'County' : county
},
success : function ( html ) {
BootstrapDialog . show ({
title : lang_general_word_qso_data ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'qso-counties-dialog' ,
nl2br : false ,
message : html ,
onshown : function ( dialog ) {
$ ( '[data-bs-toggle="tooltip"]' ) . tooltip ();
},
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
});
}
});
}
</ script >
2021-02-12 22:27:08 +00:00
< ? php } ?>
2021-03-21 07:19:38 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " sig_details " ) { ?>
2024-02-22 16:56:21 +00:00
< script >
$ ( '.tablesig' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2024-02-22 16:56:21 +00:00
dom : 'Bfrtip' ,
buttons : [
'csv'
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
$ ( " .buttons-csv " ) . css ( " color " , " white " );
}
</ script >
2021-03-21 07:19:38 +00:00
< ? php } ?>
2021-02-12 22:27:08 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " contesting " && $this -> uri -> segment ( 2 ) == " add " ) { ?>
2024-02-22 16:56:21 +00:00
< script src = " <?php echo base_url(); ?>assets/js/sections/contestingnames.js " ></ script >
2020-11-16 18:20:45 +00:00
< ? php } ?>
2021-05-22 06:45:24 +00:00
2021-08-09 12:29:53 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " themes " ) { ?>
< script >
2024-02-22 16:56:21 +00:00
function deleteTheme ( id , name ) {
BootstrapDialog . confirm ({
title : 'DANGER' ,
message : 'Warning! Are you sure you want to delete the following theme: ' + name + '?' ,
type : BootstrapDialog . TYPE_DANGER ,
closable : true ,
draggable : true ,
btnOKClass : 'btn-danger' ,
callback : function ( result ) {
if ( result ) {
$ . ajax ({
url : base_url + 'index.php/themes/delete' ,
type : 'post' ,
data : {
'id' : id
},
success : function ( data ) {
$ ( " .theme_ " + id ) . parent ( " tr:first " ) . remove (); // removes mode from table
}
});
}
}
});
}
function addThemeDialog () {
$ . ajax ({
url : base_url + 'index.php/themes/add' ,
type : 'post' ,
success : function ( html ) {
BootstrapDialog . show ({
title : 'Create Theme' ,
size : BootstrapDialog . SIZE_WIDE ,
cssClass : 'create-theme-dialog' ,
nl2br : false ,
message : html ,
buttons : [{
label : lang_admin_close ,
action : function ( dialogItself ) {
dialogItself . close ();
}
}]
2021-08-09 12:29:53 +00:00
});
}
2024-02-22 16:56:21 +00:00
});
}
2021-08-09 12:29:53 +00:00
2024-02-22 16:56:21 +00:00
function addTheme ( form ) {
if ( form . name . value != '' ) {
$ . ajax ({
url : base_url + 'index.php/themes/add' ,
type : 'post' ,
data : {
'name' : form . name . value ,
'foldername' : form . foldername . value ,
},
success : function ( html ) {
location . reload ();
}
});
}
}
2021-08-09 12:29:53 +00:00
</ script >
< ? php } ?>
2021-09-15 17:30:34 +00:00
2023-05-05 10:00:23 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " eqsl " ) { ?>
2024-02-22 16:56:21 +00:00
< script >
$ ( '.qsotable' ) . DataTable ({
" stateSave " : true ,
" pageLength " : 25 ,
responsive : false ,
" scrollY " : " 400px " ,
" scrollCollapse " : true ,
" paging " : false ,
" scrollX " : true ,
" language " : {
url : getDataTablesLanguageUrl (),
},
" ordering " : true ,
" order " : [ 0 , 'desc' ],
});
</ script >
2023-05-05 10:00:23 +00:00
< ? php } ?>
2022-11-30 16:17:19 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " awards " ) {
2024-02-22 16:56:21 +00:00
// Get Date format
if ( $this -> session -> userdata ( 'user_date_format' )) {
// If Logged in and session exists
$custom_date_format = $this -> session -> userdata ( 'user_date_format' );
} else {
// Get Default date format from /config/cloudlog.php
$custom_date_format = $this -> config -> item ( 'qso_date_format' );
}
2022-10-25 11:35:45 +00:00
switch ( $custom_date_format ) {
2024-02-22 16:56:21 +00:00
case 'd/m/y' :
$usethisformat = 'D/MM/YY' ;
break ;
case 'd/m/Y' :
$usethisformat = 'D/MM/YYYY' ;
break ;
case 'm/d/y' :
$usethisformat = 'MM/D/YY' ;
break ;
case 'm/d/Y' :
$usethisformat = 'MM/D/YYYY' ;
break ;
case 'd.m.Y' :
$usethisformat = 'D.MM.YYYY' ;
break ;
case 'y/m/d' :
$usethisformat = 'YY/MM/D' ;
break ;
case 'Y-m-d' :
$usethisformat = 'YYYY-MM-D' ;
break ;
case 'M d, Y' :
$usethisformat = 'MMM D, YYYY' ;
break ;
case 'M d, y' :
$usethisformat = 'MMM D, YY' ;
break ;
2022-10-25 11:35:45 +00:00
}
2024-02-22 16:56:21 +00:00
?>
2022-10-25 11:35:45 +00:00
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/moment.min.js " ></ script >
< script type = " text/javascript " src = " <?php echo base_url(); ?>assets/js/datetime-moment.js " ></ script >
2022-11-30 16:17:19 +00:00
< ? php if ( $this -> uri -> segment ( 2 ) == " wwff " ) { ?>
< script >
$ . fn . dataTable . moment ( '<?php echo $usethisformat ?>' );
$ . fn . dataTable . ext . buttons . clear = {
className : 'buttons-clear' ,
2024-02-22 16:56:21 +00:00
action : function ( e , dt , node , config ) {
dt . search ( '' ) . draw ();
2022-11-30 16:17:19 +00:00
}
};
$ ( '#wwfftable' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : true ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 500px " ,
2022-11-30 16:17:19 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2022-11-30 16:17:19 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2024-02-22 16:56:21 +00:00
" order " : [ 0 , 'asc' ],
2022-11-30 16:17:19 +00:00
dom : 'Bfrtip' ,
2024-02-22 16:56:21 +00:00
buttons : [{
extend : 'csv'
},
{
extend : 'clear' ,
text : 'Clear'
}
2022-11-30 16:17:19 +00:00
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
2024-02-22 16:56:21 +00:00
$ ( '[class*="buttons"]' ) . css ( " color " , " white " );
2022-10-25 11:35:45 +00:00
}
2022-11-30 16:17:19 +00:00
</ script >
< ? php } else if ( $this -> uri -> segment ( 2 ) == " pota " ) { ?>
< script >
$ . fn . dataTable . moment ( '<?php echo $usethisformat ?>' );
$ . fn . dataTable . ext . buttons . clear = {
className : 'buttons-clear' ,
2024-02-22 16:56:21 +00:00
action : function ( e , dt , node , config ) {
dt . search ( '' ) . draw ();
2022-11-30 16:17:19 +00:00
}
};
$ ( '#potatable' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : true ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 500px " ,
2022-11-30 16:17:19 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2022-11-30 16:17:19 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2024-02-22 16:56:21 +00:00
" order " : [ 0 , 'asc' ],
2022-11-30 16:17:19 +00:00
dom : 'Bfrtip' ,
2024-02-22 16:56:21 +00:00
buttons : [{
extend : 'csv'
},
{
extend : 'clear' ,
text : 'Clear'
}
2022-11-30 16:17:19 +00:00
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
2024-02-22 16:56:21 +00:00
$ ( '[class*="buttons"]' ) . css ( " color " , " white " );
2022-11-30 16:17:19 +00:00
}
</ script >
2023-01-16 16:08:27 +00:00
< ? php } else if ( $this -> uri -> segment ( 2 ) == " dok " ) { ?>
< script >
$ . fn . dataTable . ext . buttons . clear = {
className : 'buttons-clear' ,
2024-02-22 16:56:21 +00:00
action : function ( e , dt , node , config ) {
dt . search ( '' ) . draw ();
2023-01-16 16:08:27 +00:00
}
};
$ ( '#doktable' ) . DataTable ({
" pageLength " : 25 ,
responsive : false ,
ordering : false ,
2024-02-22 16:56:21 +00:00
" scrollY " : " 500px " ,
2023-01-16 16:08:27 +00:00
" scrollCollapse " : true ,
2024-02-22 16:56:21 +00:00
" paging " : false ,
2023-01-16 16:08:27 +00:00
" scrollX " : true ,
2024-01-04 03:03:11 +00:00
" language " : {
2024-01-04 03:18:20 +00:00
url : getDataTablesLanguageUrl (),
2024-01-04 03:03:11 +00:00
},
2023-01-16 16:08:27 +00:00
dom : 'Bfrtip' ,
2024-02-22 16:56:21 +00:00
buttons : [{
extend : 'csv'
},
{
extend : 'clear' ,
text : 'Clear'
}
2023-01-16 16:08:27 +00:00
]
});
// change color of csv-button if dark mode is chosen
if ( isDarkModeTheme ()) {
2024-02-22 16:56:21 +00:00
$ ( '[class*="buttons"]' ) . css ( " color " , " white " );
2023-01-16 16:08:27 +00:00
}
</ script >
2022-11-30 16:17:19 +00:00
< ? php } ?>
2022-10-25 11:35:45 +00:00
< ? php } ?>
2023-12-18 08:01:45 +00:00
< ? php if ( $this -> uri -> segment ( 1 ) == " user " ) { ?>
2023-11-30 17:11:22 +00:00
<!-- [ MAP Custom ] select list with icons -->
< script >
2024-02-22 16:56:21 +00:00
$ ( document ) . ready ( function () {
$ ( '.icon_selectBox' ) . off ( 'click' ) . on ( 'click' , function () {
2023-11-30 17:11:22 +00:00
var boxcontent = $ ( this ) . attr ( 'data-boxcontent' );
2024-02-22 16:56:21 +00:00
if ( $ ( '.icon_selectBox_data[data-boxcontent="' + boxcontent + '"]' ) . is ( " :hidden " )) {
$ ( '.icon_selectBox_data[data-boxcontent="' + boxcontent + '"]' ) . show ();
} else {
$ ( '.icon_selectBox_data[data-boxcontent="' + boxcontent + '"]' ) . hide ();
}
});
$ ( '.icon_selectBox_data' ) . off ( 'mouseleave' ) . on ( 'mouseleave' , function () {
if ( $ ( this ) . is ( " :visible " )) {
$ ( this ) . hide ();
}
2023-11-30 17:11:22 +00:00
});
2024-02-22 16:56:21 +00:00
$ ( '.icon_selectBox_data label' ) . off ( 'click' ) . on ( 'click' , function () {
2023-11-30 17:11:22 +00:00
var boxcontent = $ ( this ) . closest ( '.icon_selectBox_data' ) . attr ( 'data-boxcontent' );
2024-02-22 16:56:21 +00:00
$ ( 'input[name="user_map_' + boxcontent + '_icon"]' ) . attr ( 'value' , $ ( this ) . attr ( 'data-value' ));
2023-12-12 20:41:23 +00:00
if ( $ ( this ) . attr ( 'data-value' ) != " 0 " ) {
2024-02-22 16:56:21 +00:00
$ ( '.user_icon_color[data-icon="' + boxcontent + '"]' ) . show ();
$ ( '.icon_selectBox[data-boxcontent="' + boxcontent + '"] .icon_overSelect' ) . html ( $ ( this ) . html ());
2023-11-30 17:11:22 +00:00
} else {
2024-02-22 16:56:21 +00:00
$ ( '.user_icon_color[data-icon="' + boxcontent + '"]' ) . hide ();
$ ( '.icon_selectBox[data-boxcontent="' + boxcontent + '"] .icon_overSelect' ) . html ( $ ( this ) . html () . substring ( 0 , 10 ) + '.' );
2023-11-30 17:11:22 +00:00
}
2024-02-22 16:56:21 +00:00
$ ( '.icon_selectBox_data[data-boxcontent="' + boxcontent + '"]' ) . hide ();
2023-12-12 20:41:23 +00:00
});
2023-12-18 08:01:45 +00:00
$ ( '.collapse' ) . on ( 'shown.bs.collapse' , function ( e ) {
var $card = $ ( this ) . closest ( '.accordion-item' );
var $open = $ ( $ ( this ) . data ( 'parent' )) . find ( '.collapse.show' );
2024-02-22 16:56:21 +00:00
2023-12-18 08:01:45 +00:00
var additionalOffset = 0 ;
2024-02-22 16:56:21 +00:00
if ( $card . prevAll () . filter ( $open . closest ( '.accordion-item' )) . length !== 0 ) {
additionalOffset = $open . height ();
2023-12-18 08:01:45 +00:00
}
$ ( 'html,body' ) . animate ({
scrollTop : $card . offset () . top - additionalOffset
}, 300 );
});
2023-11-30 17:11:22 +00:00
});
</ script >
2023-12-12 20:41:23 +00:00
< ? php } ?>
2023-11-30 17:11:22 +00:00
2022-12-18 15:49:54 +00:00
< ? php
2024-02-22 16:56:21 +00:00
if ( isset ( $scripts ) && is_array ( $scripts )) {
foreach ( $scripts as $script ) {
?> <script type="text/javascript" src="<?php echo base_url() . $script; ?>"></script>
< ? php
}
2022-12-18 15:49:54 +00:00
}
?>
2024-02-22 16:56:21 +00:00
< script >
< ? php
echo " var lang_datatables_language = ' " . lang ( " datatables_language " ) . " '; "
?>
</ script >
</ body >
</ html >