157 行
		
	
	
		
			无行尾
		
	
	
		
			8.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			157 行
		
	
	
		
			无行尾
		
	
	
		
			8.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<div class="table-responsive">
 | 
						|
    <br>
 | 
						|
    <h2>Hamsat - Satellite Rovers</h2>
 | 
						|
    <p>This data is from <a target="_blank" href="https://hams.at/">https://hams.at/</a>.
 | 
						|
        <?php if ($user_hamsat_workable_only) {
 | 
						|
            echo " Only workable passes shown.";
 | 
						|
        } else {
 | 
						|
            echo " All passes shown.";
 | 
						|
        } ?>
 | 
						|
    </p>
 | 
						|
    <?php if ($user_hamsat_workable_only && $user_hamsat_key == '') { ?>
 | 
						|
        <div class="alert alert-warning" role="warning">
 | 
						|
            Private feed key empty. Please set the feed key in your profile.
 | 
						|
        </div>
 | 
						|
    <?php } else { ?>
 | 
						|
        <?php if ($rovedata['data'] == []) { ?>
 | 
						|
            <div class="alert alert-warning" role="warning">
 | 
						|
                <?php echo lang('hams_at_no_activations_found'); ?>
 | 
						|
            </div>
 | 
						|
        <?php } else { ?>
 | 
						|
            <table class="table table-striped table-hover">
 | 
						|
                <thead>
 | 
						|
                    <tr>
 | 
						|
                        <th>Date</th>
 | 
						|
                        <th>Time</th>
 | 
						|
                        <th>Callsign</th>
 | 
						|
                        <th>Comment</th>
 | 
						|
                        <th>Satellite</th>
 | 
						|
                        <th>Mode</th>
 | 
						|
                        <th>Gridsquare(s)</th>
 | 
						|
                        <th>Workable</th>
 | 
						|
                        <th></th>
 | 
						|
                        <th></th>
 | 
						|
                    </tr>
 | 
						|
                </thead>
 | 
						|
                <tbody>
 | 
						|
                    <?php foreach ($rovedata['data'] as $rove) :
 | 
						|
                        if ($user_hamsat_workable_only) {
 | 
						|
                            if (!$rove['is_workable']) {
 | 
						|
                                continue;
 | 
						|
                            }
 | 
						|
                        } ?>
 | 
						|
                        <tr>
 | 
						|
                            <td>
 | 
						|
                                <?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/wavelog.php
 | 
						|
                                    $custom_date_format = $this->config->item('qso_date_format');
 | 
						|
                                }
 | 
						|
 | 
						|
                                ?>
 | 
						|
 | 
						|
                                <?php $timestamp = strtotime($rove['aos_at']);
 | 
						|
                                echo date($custom_date_format, $timestamp); ?>
 | 
						|
 | 
						|
                            </td>
 | 
						|
                            <td>
 | 
						|
                                <?php echo date("H:i:s", $timestamp) . " - " . date("H:i:s", strtotime($rove['los_at'])); ?>
 | 
						|
                            </td>
 | 
						|
                            <td>
 | 
						|
                                <?php
 | 
						|
                                $CI = &get_instance();
 | 
						|
                                $CI->load->model('logbooks_model');
 | 
						|
                                $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook'));
 | 
						|
                                $CI->load->model('logbook_model');
 | 
						|
                                $call_worked = $CI->logbook_model->check_if_callsign_worked_in_logbook($rove['callsign'], $logbooks_locations_array, "SAT");
 | 
						|
                                if ($call_worked != 0) {
 | 
						|
                                    echo "<span class=\"text-success\">" . $rove['callsign'] . "</span>";
 | 
						|
                                } else {
 | 
						|
                                    echo $rove['callsign'];
 | 
						|
                                }
 | 
						|
                                ?>
 | 
						|
                            </td>
 | 
						|
                            <td>
 | 
						|
                                <?php
 | 
						|
                                echo xss_clean($rove['comment'] ?? '-');
 | 
						|
                                ?>
 | 
						|
                            </td>
 | 
						|
                            <?php
 | 
						|
                            $direction = '';
 | 
						|
                            if ($rove['mhz_direction'] == 'up') {
 | 
						|
                                $direction = '↑';
 | 
						|
                            } else if ($rove['mhz_direction'] == 'down') {
 | 
						|
                                $direction = '↓';
 | 
						|
                            }
 | 
						|
                            $modeclass = '';
 | 
						|
                            if ($rove['mode'] == 'SSB' || $rove['mode'] == 'CW') {
 | 
						|
                                $modeclass = 'hamsatBgLin';
 | 
						|
                            } else if ($rove['mode'] == 'Data') {
 | 
						|
                                $modeclass = 'hamsatBgData';
 | 
						|
                            } else if ($rove['mode'] == 'FM') {
 | 
						|
                                $modeclass = 'hamsatBgFm';
 | 
						|
                            }
 | 
						|
 | 
						|
                            ?>
 | 
						|
                            <td><span data-bs-toggle="tooltip" title="<?php if ($rove['mhz'] != '') {
 | 
						|
                                                                            printf("%.3f", $rove['mhz']);
 | 
						|
                                                                            echo " " . $direction ?? '';
 | 
						|
                                                                        } ?>"><?= $rove['satellite']['name'] ?></span></td>
 | 
						|
                            <td><span title="<?php echo $rove['mode']; ?>" class="badge <?php echo $modeclass; ?>"><?php echo $rove['mode']; ?></span></td>
 | 
						|
                            <td>
 | 
						|
 | 
						|
 | 
						|
                                <?php
 | 
						|
                                // Load the logbook model and call check_if_grid_worked_in_logbook
 | 
						|
                                foreach ($rove['grids'] as $grid) {
 | 
						|
                                    $worked = $CI->logbook_model->check_if_grid_4char_worked_in_logbook($grid, null, "SAT");
 | 
						|
                                    if ($worked != 0) {
 | 
						|
                                        echo " <span data-bs-toggle=\"tooltip\" title=\"Worked\" class=\"badge bg-success\">" . $grid . "</span>";
 | 
						|
                                    } else {
 | 
						|
                                        echo " <span data-bs-toggle=\"tooltip\" title=\"Not Worked\" class=\"badge bg-danger\">" . $grid . "</span>";
 | 
						|
                                    }
 | 
						|
                                }
 | 
						|
                                ?>
 | 
						|
 | 
						|
 | 
						|
                            </td>
 | 
						|
                            <td>
 | 
						|
                                <?php
 | 
						|
                                if ($user_hamsat_key != '') {
 | 
						|
                                    if ($rove['is_workable']) {
 | 
						|
                                        echo date("H:i", strtotime($rove['workable_start_at'])) . " - " . date("H:i", strtotime($rove['workable_end_at']));
 | 
						|
                                    } else {
 | 
						|
                                        echo "<span data-bs-toggle=\"tooltip\" title=\"No\" class=\"badge bg-danger\">No</span>";
 | 
						|
                                    }
 | 
						|
                                } else {
 | 
						|
                                    echo "<span data-bs-toggle=\"tooltip\" title=\"Unknown\" class=\"badge bg-warning\">Unknown</span>";
 | 
						|
                                }
 | 
						|
                                ?>
 | 
						|
                            </td>
 | 
						|
                            <td><a href="<?php echo $rove['url']; ?>" target="_blank">Track</a></td>
 | 
						|
                            <?php
 | 
						|
                            $sat = $rove['satellite']['name'];
 | 
						|
                            switch (strtoupper($rove['satellite']['name'])) {
 | 
						|
                                case "GREENCUBE":
 | 
						|
                                    $sat = 'IO-117';
 | 
						|
                                    break;
 | 
						|
                            }
 | 
						|
                            ?>
 | 
						|
                            <td>
 | 
						|
                                <?php
 | 
						|
                                if ($rove['is_workable'] || $user_hamsat_key == '') { ?>
 | 
						|
                                    <a href="https://sat.fg8oj.com/sked.php?s%5B%5D=<?php echo $sat; ?>&l=<?php echo strtoupper($gridsquare); ?>&el1=0&l2=<?php echo $rove['grids'][0]; ?>&el2=0&duration=1&start=0&OK=Search" target="_blank">Sked</a>
 | 
						|
                                <?php } ?>
 | 
						|
                            </td>
 | 
						|
                        </tr>
 | 
						|
                    <?php endforeach; ?>
 | 
						|
                </tbody>
 | 
						|
            </table>
 | 
						|
        <?php } ?>
 | 
						|
    <?php } ?>
 | 
						|
</div>
 |