| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class Activated_grids_model extends CI_Model { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function get_activated_sat_squares() { | 
					
						
							|  |  |  |         $CI =& get_instance(); | 
					
						
							|  |  |  |         $CI->load->model('logbooks_model'); | 
					
						
							|  |  |  |         $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (!$logbooks_locations_array) { | 
					
						
							|  |  |  |             return null; | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2023-09-17 19:36:35 +08:00
										 |  |  | 	$location_list = "'".implode("','",$logbooks_locations_array)."'"; | 
					
						
							| 
									
										
										
										
											2023-05-26 00:25:49 +08:00
										 |  |  |         $sql = 'SELECT DISTINCT station_gridsquare AS SAT_SQUARE FROM ' | 
					
						
							| 
									
										
										
										
											2022-02-16 15:29:03 +08:00
										 |  |  |            . 'station_profile JOIN '.$this->config->item('table_name').' on '.$this->config->item('table_name').'.station_id = station_profile.station_id ' | 
					
						
							| 
									
										
										
										
											2023-09-17 19:36:35 +08:00
										 |  |  | 	   . 'WHERE station_profile.station_gridsquare != "" AND '.$this->config->item('table_name').'.COL_SAT_NAME != ""' | 
					
						
							|  |  |  | 	   . ' AND station_profile.station_id in ('.$location_list.')'; | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  |         return $this->db->query($sql); | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	function get_activated_confirmed_sat_squares() { | 
					
						
							|  |  |  | 		$CI =& get_instance(); | 
					
						
							|  |  |  | 		$CI->load->model('logbooks_model'); | 
					
						
							|  |  |  | 		$logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (!$logbooks_locations_array) { | 
					
						
							|  |  |  |             return null; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		$location_list = "'".implode("','",$logbooks_locations_array)."'"; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-26 00:25:49 +08:00
										 |  |  |       $sql = 'SELECT DISTINCT station_gridsquare AS SAT_SQUARE FROM ' | 
					
						
							| 
									
										
										
										
											2022-02-16 15:29:03 +08:00
										 |  |  |          . 'station_profile JOIN '.$this->config->item('table_name').' on '.$this->config->item('table_name').'.station_id = station_profile.station_id ' | 
					
						
							|  |  |  |          . 'WHERE station_profile.station_gridsquare != "" AND '.$this->config->item('table_name').'.COL_SAT_NAME != "" ' | 
					
						
							| 
									
										
										
										
											2023-09-17 19:36:35 +08:00
										 |  |  |          . 'AND (COL_LOTW_QSL_SENT = "Y" OR COL_QSL_SENT = "Y")' | 
					
						
							|  |  |  | 	 . ' AND station_profile.station_id in ('.$location_list.')'; | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 		return $this->db->query($sql); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function get_band($band) { | 
					
						
							|  |  |  |         $CI =& get_instance(); | 
					
						
							|  |  |  |         $CI->load->model('logbooks_model'); | 
					
						
							|  |  |  |         $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (!$logbooks_locations_array) { | 
					
						
							|  |  |  |             return null; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  |         $location_list = "'".implode("','",$logbooks_locations_array)."'"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $sql = 'SELECT DISTINCT station_gridsquare AS GRID_SQUARES, COL_BAND FROM ' | 
					
						
							| 
									
										
										
										
											2022-02-16 15:29:03 +08:00
										 |  |  |            . 'station_profile JOIN '.$this->config->item('table_name').' on '.$this->config->item('table_name').'.station_id = station_profile.station_id ' | 
					
						
							| 
									
										
										
										
											2023-09-17 19:36:35 +08:00
										 |  |  |            . 'WHERE station_profile.station_gridsquare != "" ' | 
					
						
							|  |  |  | 	   . ' AND station_profile.station_id in ('.$location_list.')'; | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |         if ($band != 'All') { | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  |             $sql .= 'AND COL_BAND = "'.$band.'" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "SAT" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "INTERNET" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "ECH" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "RPT" ' | 
					
						
							|  |  |  |                . 'AND COL_SAT_NAME = "" '; | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  |         return $this->db->query($sql); | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	function get_band_confirmed($band) { | 
					
						
							|  |  |  | 		$CI =& get_instance(); | 
					
						
							|  |  |  | 		$CI->load->model('logbooks_model'); | 
					
						
							|  |  |  | 		$logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (!$logbooks_locations_array) { | 
					
						
							|  |  |  |             return null; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		$location_list = "'".implode("','",$logbooks_locations_array)."'"; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  |         $sql = 'SELECT DISTINCT station_gridsquare AS GRID_SQUARES, COL_BAND FROM ' | 
					
						
							| 
									
										
										
										
											2022-02-16 15:29:03 +08:00
										 |  |  |            . 'station_profile JOIN '.$this->config->item('table_name').' on '.$this->config->item('table_name').'.station_id = station_profile.station_id ' | 
					
						
							| 
									
										
										
										
											2023-09-17 19:36:35 +08:00
										 |  |  |            . 'WHERE station_profile.station_gridsquare != "" ' | 
					
						
							|  |  |  | 	   . ' AND station_profile.station_id in ('.$location_list.')'; | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |         if ($band != 'All') { | 
					
						
							|  |  |  |             $sql .= 'AND COL_BAND = "'.$band.'" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "SAT" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "INTERNET" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "ECH" ' | 
					
						
							|  |  |  |                . 'AND COL_PROP_MODE != "RPT" ' | 
					
						
							|  |  |  |                . 'AND COL_SAT_NAME = "" '; | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-14 22:15:07 +08:00
										 |  |  |         $sql .= ' AND (COL_LOTW_QSL_SENT = "Y" OR COL_QSL_SENT = "Y")'; | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 		return $this->db->query($sql); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function search_band($band, $gridsquare) { | 
					
						
							|  |  |  |         $CI =& get_instance(); | 
					
						
							|  |  |  |         $CI->load->model('logbooks_model'); | 
					
						
							|  |  |  |         $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $location_list = "'".implode("','",$logbooks_locations_array)."'"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $sql = 'SELECT COL_CALL, COL_TIME_ON, COL_BAND, COL_MODE, COL_GRIDSQUARE, COL_VUCC_GRIDS FROM ' | 
					
						
							|  |  |  |             .$this->config->item('table_name') | 
					
						
							|  |  |  |             .' WHERE station_id IN (' . $location_list . ') ' | 
					
						
							| 
									
										
										
										
											2022-02-06 23:17:21 +08:00
										 |  |  | 			. ' AND (COL_MY_GRIDSQUARE LIKE "%'.$gridsquare.'%")'; | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |         if ($band != 'All') { | 
					
						
							|  |  |  |             $sql .= ' AND COL_BAND = "' . $band | 
					
						
							|  |  |  |                 .'"
 | 
					
						
							|  |  |  |             AND COL_PROP_MODE != "SAT" | 
					
						
							|  |  |  |             AND COL_PROP_MODE != "INTERNET" | 
					
						
							|  |  |  |             AND COL_PROP_MODE != "ECH" | 
					
						
							|  |  |  |             AND COL_PROP_MODE != "RPT" | 
					
						
							|  |  |  |             AND COL_SAT_NAME = ""'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $result = $this->db->query($sql); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //print_r($result);
 | 
					
						
							|  |  |  |         return json_encode($result->result()); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function search_sat($gridsquare) { | 
					
						
							|  |  |  |         $CI =& get_instance(); | 
					
						
							|  |  |  |         $CI->load->model('logbooks_model'); | 
					
						
							|  |  |  |         $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $location_list = "'".implode("','",$logbooks_locations_array)."'"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $sql = 'SELECT COL_CALL, COL_TIME_ON, COL_BAND, COL_MODE, COL_SAT_NAME, COL_GRIDSQUARE, COL_VUCC_GRIDS FROM ' . | 
					
						
							|  |  |  | 				$this->config->item('table_name'). | 
					
						
							|  |  |  | 				' WHERE station_id IN ('.$location_list. ')' . | 
					
						
							| 
									
										
										
										
											2022-02-06 23:17:21 +08:00
										 |  |  | 				' AND (COL_MY_GRIDSQUARE LIKE "%'.$gridsquare.'%")'. | 
					
						
							| 
									
										
										
										
											2022-02-04 05:09:05 +08:00
										 |  |  | 				' AND COL_PROP_MODE = "SAT"'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $result = $this->db->query($sql); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //print_r($result);
 | 
					
						
							|  |  |  |         return json_encode($result->result()); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } |