2020-05-24 22:12:58 +00:00
< ? php if ( $query -> num_rows () > 0 ) { foreach ( $query -> result () as $row ) { ?>
2020-10-28 22:20:03 +00:00
< div class = " container-fluid " >
< ul class = " nav nav-tabs " id = " myTab " role = " tablist " >
< li class = " nav-item " >
< a class = " nav-link active " id = " table-tab " data - toggle = " tab " href = " #qsodetails " role = " tab " aria - controls = " table " aria - selected = " true " > QSO Details </ a >
</ li >
< ? php
if (( $this -> config -> item ( 'use_auth' )) && ( $this -> session -> userdata ( 'user_type' ) >= 2 )) {
if ( count ( $qslimages ) > 0 ) {
echo ' < li class = " nav-item " >
< a class = " nav-link " id = " map-tab " data - toggle = " tab " href = " #qslcard " role = " tab " aria - controls = " home " aria - selected = " false " > QSL card </ a >
</ li > ' ;
}
echo ' < li class = " nav-item " >
< a class = " nav-link " id = " map-tab " data - toggle = " tab " href = " #qslupload " role = " tab " aria - controls = " home " aria - selected = " false " > QSL card management </ a >
</ li > ' ;
}
?>
</ ul >
< div class = " tab-content " id = " myTabContent " >
< div class = " tab-pane active " id = " qsodetails " role = " tabpanel " aria - labelledby = " home-tab " >
< div class = " row " >
< div class = " col " >
< table width = " 100% " >
< tr >
< ? php
// 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' );
}
?>
< td > Date / Time :</ td >
< ? php if (( $this -> config -> item ( 'use_auth' ) && ( $this -> session -> userdata ( 'user_type' ) >= 2 )) || $this -> config -> item ( 'use_auth' ) === FALSE || ( $this -> config -> item ( 'show_time' ))) { ?>
< td >< ? php $timestamp = strtotime ( $row -> COL_TIME_ON ); echo date ( $custom_date_format , $timestamp ); $timestamp = strtotime ( $row -> COL_TIME_ON ); echo " at " . date ( 'H:i' , $timestamp ); ?> </td>
< ? php } else { ?>
< td >< ? php $timestamp = strtotime ( $row -> COL_TIME_ON ); echo date ( $custom_date_format , $timestamp ); ?> </td>
< ? php } ?>
</ tr >
< tr >
< td > Callsign :</ td >
< td >< b >< ? php echo str_replace ( " 0 " , " Ø " , strtoupper ( $row -> COL_CALL )); ?> </b></td>
</ tr >
< tr >
< td > Band :</ td >
< td >< ? php echo $row -> COL_BAND ; ?> </td>
</ tr >
< ? php if ( $this -> config -> item ( 'display_freq' ) == true ) { ?>
< tr >
< td > Freq :</ td >
< td >< ? php echo frequency_display_string ( $row -> COL_FREQ ); ?> </td>
</ tr >
< ? php if ( $row -> COL_FREQ_RX != 0 ) { ?>
< tr >
< td > Freq ( RX ) :</ td >
< td >< ? php echo frequency_display_string ( $row -> COL_FREQ_RX ); ?> </td>
</ tr >
< ? php }} ?>
< tr >
< td > Mode :</ td >
< td >< ? php echo $row -> COL_SUBMODE == null ? $row -> COL_MODE : $row -> COL_SUBMODE ; ?> </td>
</ tr >
< tr >
< td > RST Sent :</ td >
< td >< ? php echo $row -> COL_RST_SENT ; ?> <?php if ($row->COL_STX) { ?>(<?php echo $row->COL_STX;?>)<?php } ?> <?php if ($row->COL_STX_STRING) { ?>(<?php echo $row->COL_STX_STRING;?>)<?php } ?></td>
</ tr >
< tr >
< td > RST Recv :</ td >
< td >< ? php echo $row -> COL_RST_RCVD ; ?> <?php if ($row->COL_SRX) { ?>(<?php echo $row->COL_SRX;?>)<?php } ?> <?php if ($row->COL_SRX_STRING) { ?>(<?php echo $row->COL_SRX_STRING;?>)<?php } ?></td>
</ tr >
< ? php if ( $row -> COL_GRIDSQUARE != null ) { ?>
< tr >
< td > Gridsquare :</ td >
< td >< ? php echo $row -> COL_GRIDSQUARE ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_GRIDSQUARE != null ) { ?>
<!-- Total Distance Between the Station Profile Gridsquare and Logged Square -->
< tr >
< td > Total Distance </ td >
< td >
< ? php
// Load the QRA Library
$CI =& get_instance ();
$CI -> load -> library ( 'qra' );
// Cacluate Distance
echo $CI -> qra -> distance ( $row -> station_gridsquare , $row -> COL_GRIDSQUARE , $measurement_base );
switch ( $measurement_base ) {
case 'M' :
echo " mi " ;
break ;
case 'K' :
echo " km " ;
break ;
case 'N' :
echo " nmi " ;
break ;
}
?>
</ td >
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_VUCC_GRIDS != null ) { ?>
< tr >
< td > Gridsquare ( Multi ) :</ td >
< td >< ? php echo $row -> COL_VUCC_GRIDS ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_STATE != null ) { ?>
< tr >
< td > USA State :</ td >
< td >< ? php echo $row -> COL_STATE ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_NAME != null ) { ?>
< tr >
< td > Name :</ td >
< td >< ? php echo $row -> COL_NAME ; ?> </td>
</ tr >
< ? php } ?>
< ? php if (( $this -> config -> item ( 'use_auth' ) && ( $this -> session -> userdata ( 'user_type' ) >= 2 )) || $this -> config -> item ( 'use_auth' ) === FALSE ) { ?>
< ? php if ( $row -> COL_COMMENT != null ) { ?>
< tr >
< td > Comment :</ td >
< td >< ? php echo $row -> COL_COMMENT ; ?> </td>
</ tr >
< ? php } ?>
< ? php } ?>
< ? php if ( $row -> COL_SAT_NAME != null ) { ?>
< tr >
< td > Sat Name :</ td >
< td >< ? php echo $row -> COL_SAT_NAME ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_SAT_MODE != null ) { ?>
< tr >
< td > Sat Mode :</ td >
< td >< ? php echo $row -> COL_SAT_MODE ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_COUNTRY != null ) { ?>
< tr >
< td > Country :</ td >
< td >< ? php echo ucwords ( strtolower (( $row -> COL_COUNTRY ))); ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_IOTA != null ) { ?>
< tr >
< td > IOTA Ref :</ td >
< td >< ? php echo $row -> COL_IOTA ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_SOTA_REF != null ) { ?>
< tr >
< td > SOTA Ref :</ td >
< td >< ? php echo $row -> COL_SOTA_REF ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_DARC_DOK != null ) { ?>
< tr >
< td > DOK :</ td >
< td >< a href = " https://www.darc.de/<?php echo $row->COL_DARC_DOK ; ?> " target = " _new " >< ? php echo $row -> COL_DARC_DOK ; ?> </a></td>
</ tr >
< ? php } ?>
</ table >
< ? php if ( $row -> COL_QSL_SENT == " Y " || $row -> COL_QSL_RCVD == " Y " ) { ?>
< h3 > QSL Info :</ h3 >
< ? php if ( $row -> COL_QSL_SENT == " Y " && $row -> COL_QSL_SENT_VIA == " B " ) { ?>
< p > QSL Card has been sent via the bureau </ p >
< ? php } ?>
< ? php if ( $row -> COL_QSL_SENT == " Y " && $row -> COL_QSL_SENT_VIA == " D " ) { ?>
< p > QSL Card has been sent direct </ p >
< ? php } ?>
< ? php if ( $row -> COL_QSL_RCVD == " Y " && $row -> COL_QSL_RCVD_VIA == " B " ) { ?>
< p > QSL Card has been received via the bureau </ p >
< ? php } ?>
< ? php if ( $row -> COL_QSL_RCVD == " Y " && $row -> COL_QSL_RCVD_VIA == " D " ) { ?>
< p > QSL Card has been received direct </ p >
< ? php } ?>
< ? php } ?>
< ? php if ( $row -> COL_LOTW_QSL_RCVD == " Y " ) { ?>
< h3 > LoTW :</ h3 >
< p > This QSO is confirmed on Lotw </ p >
< ? php } ?>
< h2 style = " font-size: 22px; " > Station Information </ h2 >
< table width = " 100% " >
< tr >
< td > Station Callsign </ td >
< td >< ? php echo $row -> station_callsign ; ?> </td>
</ tr >
< tr >
< td > Station Gridsquare </ td >
< td >< ? php echo $row -> station_gridsquare ; ?> </td>
</ tr >
< ? php if ( $row -> station_city ) { ?>
< tr >
< td > Station City :</ td >
< td >< ? php echo $row -> station_city ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> station_country ) { ?>
< tr >
< td > Station Country :</ td >
< td >< ? php echo ucwords ( strtolower (( $row -> station_country ))); ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_OPERATOR ) { ?>
< tr >
< td > Station Operator </ td >
< td >< ? php echo $row -> COL_OPERATOR ; ?> </td>
</ tr >
< ? php } ?>
< ? php if ( $row -> COL_TX_PWR ) { ?>
< tr >
< td > Station Transmit Power </ td >
< td >< ? php echo $row -> COL_TX_PWR ; ?> w</td>
</ tr >
< ? php } ?>
</ table >
</ div >
< div class = " col " >
< div id = " mapqso " style = " width: 340px; height: 250px " ></ div >
< ? php if (( $this -> config -> item ( 'use_auth' ) && ( $this -> session -> userdata ( 'user_type' ) >= 2 )) || $this -> config -> item ( 'use_auth' ) === FALSE ) { ?>
< br >
< p class = " editButton " >< a class = " btn btn-success " href = " <?php echo site_url('qso/edit'); ?>/<?php echo $row->COL_PRIMARY_KEY ; ?> " href = " javascript:; " >< i class = " fas fa-edit " ></ i > Edit QSO </ a ></ p >
< ? php } ?>
< ? php
if ( $row -> COL_SAT_NAME != null ) {
$twitter_band_sat = $row -> COL_SAT_NAME ;
$hashtags = " #hamr #cloudlog #amsat " ;
} else {
$twitter_band_sat = $row -> COL_BAND ;
$hashtags = " #hamr #cloudlog " ;
}
$twitter_string = urlencode ( " Just worked " . $row -> COL_CALL . " in " . ucwords ( strtolower (( $row -> COL_COUNTRY ))) . " (Gridsquare: " . $row -> COL_GRIDSQUARE . " ) on " . $twitter_band_sat . " using " . $row -> COL_MODE . " " . $hashtags );
?>
< div class = " text-right " >< a class = " btn btn-sm btn-primary twitter-share-button " target = " _blank " href = " https://twitter.com/intent/tweet?text=<?php echo $twitter_string ; ?> " >< i class = " fab fa-twitter " ></ i > Tweet </ a ></ div >
</ div >
</ div >
</ div >
< ? php
if (( $this -> config -> item ( 'use_auth' )) && ( $this -> session -> userdata ( 'user_type' ) >= 2 )) {
?>
< div class = " tab-pane fade " id = " qslupload " role = " tabpanel " aria - labelledby = " table-tab " >
< ? php
if ( count ( $qslimages ) > 0 ) {
echo ' < 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 >
</ tr >
</ thead >< tbody > ' ;
foreach ( $qslimages as $qsl ) {
echo '<tr>' ;
echo '<td style=\'text-align: center\'>' . $qsl -> filename . '</td>' ;
echo '<td id="' . $qsl -> id . '" style=\'text-align: center\'><button onclick="deleteQsl(\'' . $qsl -> id . '\')" class="btn btn-sm btn-danger">Delete</button></td>' ;
echo '</tr>' ;
}
echo '</tbody></table>' ;
}
?>
< form class = " form " id = " fileinfo " method = " post " enctype = " multipart/form-data " action = " <?php echo site_url('qsl/uploadqsl');?> " >
< fieldset >
< div class = " form-group " >
< label for = " qslcardfront " > Upload QSL card image </ label >
< input class = " form-control-file " type = " file " id = " qslcardfront " name = " qslcardfront " accept = " image/* " capture = " environment " >
</ div >
< input type = " hidden " class = " form-control " id = " qsoinputid " name = " qsoid " value = " <?php echo $row->COL_PRIMARY_KEY ; ?> " >
< button type = " submit " id = " button1id " name = " button1id " class = " btn btn-primary " > Upload QSL card image </ button >
</ fieldset >
</ form >
</ div >
< div class = " tab-pane fade " id = " qslcard " role = " tabpanel " aria - labelledby = " table-tab " >
< div id = " carouselExampleIndicators " class = " carousel slide " data - ride = " carousel " >
< ol class = " carousel-indicators " >
< ? php
$i = 0 ;
foreach ( $qslimages as $image ) {
echo '<li data-target="#carouselExampleIndicators" data-slide-to="' . $i . '"' ;
if ( $i == 0 ) {
echo 'class="active"' ;
}
$i ++ ;
echo '></li>' ;
}
?>
</ ol >
< div class = " carousel-inner " >
< ? php
$i = 1 ;
foreach ( $qslimages as $image ) {
echo '<div class="carousel-item' ;
if ( $i == 1 ) {
echo ' active' ;
}
echo '">' ;
echo '<img class="d-block w-100" src="' . base_url () . '/assets/qslcard/' . $image -> filename . '" alt="QSL picture #' . $i ++. '">' ;
echo '</div>' ;
}
?>
</ div >
< a class = " carousel-control-prev " href = " #carouselExampleIndicators " role = " button " data - slide = " prev " >
< span class = " carousel-control-prev-icon " aria - hidden = " true " ></ span >
< span class = " sr-only " > Previous </ span >
</ a >
< a class = " carousel-control-next " href = " #carouselExampleIndicators " role = " button " data - slide = " next " >
< span class = " carousel-control-next-icon " aria - hidden = " true " ></ span >
< span class = " sr-only " > Next </ span >
</ a >
</ div >
</ div >
< ? php
}
?>
</ div >
2020-03-02 20:13:19 +00:00
</ div >
2011-07-21 23:10:09 +00:00
< ? php
if ( $row -> COL_GRIDSQUARE != null ) {
2013-02-15 02:21:26 +00:00
$stn_loc = $this -> qra -> qra2latlong ( trim ( $row -> COL_GRIDSQUARE ));
2013-02-15 00:27:27 +00:00
$lat = $stn_loc [ 0 ];
$lng = $stn_loc [ 1 ];
} else {
2019-12-04 20:02:37 +00:00
$CI =& get_instance ();
$CI -> load -> model ( 'Logbook_model' );
$result = $CI -> Logbook_model -> dxcc_lookup ( $row -> COL_CALL , $row -> COL_TIME_ON );
$lat = $result [ 'lat' ];
$lng = $result [ 'long' ];
2013-02-15 00:27:27 +00:00
}
2011-07-21 23:10:09 +00:00
?>
2019-06-17 13:12:39 +00:00
2018-11-27 14:11:14 +00:00
< script >
2019-05-25 17:43:32 +00:00
var lat = < ? php echo $lat ; ?> ;
var long = < ? php echo $lng ; ?> ;
var callsign = " <?php echo $row->COL_CALL ; ?> " ;
2018-11-27 14:11:14 +00:00
</ script >
2020-09-18 10:17:41 +00:00
< div hidden id = 'lat' >< ? php echo $lat ; ?> </div>
< div hidden id = 'long' >< ? php echo $lng ; ?> </div>
< div hidden id = 'callsign' >< ? php echo $row -> COL_CALL ; ?> </div>
< div hidden id = 'qsoid' >< ? php echo $row -> COL_PRIMARY_KEY ; ?> </div>
2011-07-21 23:10:09 +00:00
2011-07-06 16:15:48 +00:00
< ? php } } ?>
2019-02-24 17:37:31 +00:00
< ? php
// converts a frequency in Hz (e.g. 3650) to 3.650 MHz
function frequency_display_string ( $frequency )
{
return number_format (( $frequency / 1000 / 1000 ), 3 ) . " MHz " ;
}
?>