[Map][Custom] Allows filtering custom map by band
这个提交包含在:
父节点
ad7525aae8
当前提交
08623f4667
共有 4 个文件被更改,包括 71 次插入 和 10 次删除
|
|
@ -34,6 +34,26 @@ class Map extends CI_Controller {
|
||||||
function custom()
|
function custom()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
$this->load->model('dxcc');
|
||||||
|
$this->load->model('modes');
|
||||||
|
|
||||||
|
$data['worked_bands'] = $this->dxcc->get_worked_bands(); // Used in the view for band select
|
||||||
|
$data['modes'] = $this->modes->active(); // Used in the view for mode select
|
||||||
|
|
||||||
|
if ($this->input->post('band') != NULL) { // Band is not set when page first loads.
|
||||||
|
if ($this->input->post('band') == 'All') { // Did the user specify a band? If not, use all bands
|
||||||
|
$bands = $data['worked_bands'];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$bands[] = $this->input->post('band');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$bands = $data['worked_bands'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$data['bands'] = $bands; // Used for displaying selected band(s) in the table in the view
|
||||||
|
|
||||||
// Calculate Lat/Lng from Locator to use on Maps
|
// Calculate Lat/Lng from Locator to use on Maps
|
||||||
if($this->session->userdata('user_locator')) {
|
if($this->session->userdata('user_locator')) {
|
||||||
$this->load->library('qra');
|
$this->load->library('qra');
|
||||||
|
|
@ -83,11 +103,12 @@ class Map extends CI_Controller {
|
||||||
function map_data_custom() {
|
function map_data_custom() {
|
||||||
$start_date = $this->uri->segment(3);
|
$start_date = $this->uri->segment(3);
|
||||||
$end_date = $this->uri->segment(4);
|
$end_date = $this->uri->segment(4);
|
||||||
|
$band = $this->uri->segment(5);
|
||||||
$this->load->model('logbook_model');
|
$this->load->model('logbook_model');
|
||||||
|
|
||||||
$this->load->library('qra');
|
$this->load->library('qra');
|
||||||
|
|
||||||
$qsos = $this->logbook_model->map_week_qsos(rawurldecode($start_date), rawurldecode($end_date));
|
$qsos = $this->logbook_model->map_custom_qsos(rawurldecode($start_date), rawurldecode($end_date), $band);
|
||||||
|
|
||||||
echo "{\"markers\": [";
|
echo "{\"markers\": [";
|
||||||
$count = 1;
|
$count = 1;
|
||||||
|
|
|
||||||
|
|
@ -1021,7 +1021,7 @@ class Logbook_model extends CI_Model {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Return QSOs over a period of days */
|
/* Return QSOs over a period of days */
|
||||||
function map_week_qsos($start, $end) {
|
function map_week_qsos($start, $end, $band) {
|
||||||
$CI =& get_instance();
|
$CI =& get_instance();
|
||||||
$CI->load->model('Stations');
|
$CI->load->model('Stations');
|
||||||
$station_id = $CI->Stations->find_active();
|
$station_id = $CI->Stations->find_active();
|
||||||
|
|
@ -1034,6 +1034,30 @@ class Logbook_model extends CI_Model {
|
||||||
return $query;
|
return $query;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* used to return custom qsos requires start, end date plus a band */
|
||||||
|
function map_custom_qsos($start, $end, $band) {
|
||||||
|
$CI =& get_instance();
|
||||||
|
$CI->load->model('Stations');
|
||||||
|
$station_id = $CI->Stations->find_active();
|
||||||
|
|
||||||
|
$this->db->where("COL_TIME_ON BETWEEN '".$start."' AND '".$end."'");
|
||||||
|
$this->db->where("station_id", $station_id);
|
||||||
|
|
||||||
|
|
||||||
|
if($band != "All" && $band != "SAT") {
|
||||||
|
$this->db->where("COL_BAND", $band);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($band == "SAT") {
|
||||||
|
$this->db->where("COL_PROP_MODE", "SAT");
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->db->order_by("COL_TIME_ON", "ASC");
|
||||||
|
$query = $this->db->get($this->config->item('table_name'));
|
||||||
|
|
||||||
|
return $query;
|
||||||
|
}
|
||||||
|
|
||||||
/* Returns QSOs for the date sent eg 2011-09-30 */
|
/* Returns QSOs for the date sent eg 2011-09-30 */
|
||||||
function map_day($date) {
|
function map_day($date) {
|
||||||
$CI =& get_instance();
|
$CI =& get_instance();
|
||||||
|
|
|
||||||
|
|
@ -267,7 +267,7 @@ function getLookupResult() {
|
||||||
var q_lng = -32.695312;
|
var q_lng = -32.695312;
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
var qso_loc = '<?php echo site_url('map/map_data_custom/');?><?php echo rawurlencode($date_from); ?>/<?php echo rawurlencode($date_to); ?>';
|
var qso_loc = '<?php echo site_url('map/map_data_custom/');?><?php echo rawurlencode($date_from); ?>/<?php echo rawurlencode($date_to); ?>/<?php echo rawurlencode($this->input->post('band')); ?>';
|
||||||
var q_zoom = 2;
|
var q_zoom = 2;
|
||||||
|
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<div class="container map-QSOs">
|
<div class="container custom-map-QSOs">
|
||||||
|
|
||||||
<h2><?php echo $station_profile->station_profile_name; ?> Station Profile QSOs (Custom Date)</h2>
|
<h2><?php echo $station_profile->station_profile_name; ?> Station Profile QSOs (Custom Date)</h2>
|
||||||
|
|
||||||
|
|
@ -9,8 +9,8 @@
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
<form method="post" action="<?php echo site_url('map/custom');?>">
|
<form method="post" action="<?php echo site_url('map/custom');?>">
|
||||||
<p class="card-text">From date:</p>
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<label class="col-md-2 control-label" for="from">Start Date/Time</label>
|
||||||
<div class="input-group date col-md-3" id="datetimepicker1" data-target-input="nearest">
|
<div class="input-group date col-md-3" id="datetimepicker1" data-target-input="nearest">
|
||||||
<input name="from" type="text" placeholder="DD/MM/YYYY" class="form-control datetimepicker-input" data-target="#datetimepicker1"/>
|
<input name="from" type="text" placeholder="DD/MM/YYYY" class="form-control datetimepicker-input" data-target="#datetimepicker1"/>
|
||||||
<div class="input-group-append" data-target="#datetimepicker1" data-toggle="datetimepicker">
|
<div class="input-group-append" data-target="#datetimepicker1" data-toggle="datetimepicker">
|
||||||
|
|
@ -18,10 +18,11 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</row>
|
||||||
<p class="card-text">To date:</p>
|
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<label class="col-md-2 control-label" for="to">End Date/Time</label>
|
||||||
|
|
||||||
<div class="input-group date col-md-3" id="datetimepicker2" data-target-input="nearest">
|
<div class="input-group date col-md-3" id="datetimepicker2" data-target-input="nearest">
|
||||||
<input name="to" type="text" placeholder="DD/MM/YYYY" class="form-control datetimepicker-input" data-target="#datetimepicker2"/>
|
<input name="to" type="text" placeholder="DD/MM/YYYY" class="form-control datetimepicker-input" data-target="#datetimepicker2"/>
|
||||||
<div class="input-group-append" data-target="#datetimepicker2" data-toggle="datetimepicker">
|
<div class="input-group-append" data-target="#datetimepicker2" data-toggle="datetimepicker">
|
||||||
|
|
@ -30,6 +31,21 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group row">
|
||||||
|
<label class="col-md-2 control-label" for="band">Band</label>
|
||||||
|
|
||||||
|
<div class="col-md-2">
|
||||||
|
<select id="band2" name="band" class="form-control custom-select-sm">
|
||||||
|
<option value="All" <?php if ($this->input->post('band') == "All" || $this->input->method() !== 'post') echo ' selected'; ?> >Every band</option>
|
||||||
|
<?php foreach($worked_bands as $band) {
|
||||||
|
echo '<option value="' . $band . '"';
|
||||||
|
if ($this->input->post('band') == $band) echo ' selected';
|
||||||
|
echo '>' . $band . '</option>'."\n";
|
||||||
|
} ?>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<input type="submit" value="Load Map">
|
<input type="submit" value="Load Map">
|
||||||
<br><br>
|
<br><br>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
||||||
正在加载…
在新工单中引用