[Advance Search] Remove duplicate modes
Think this handles sub modes correctly now although you still see USB / LSB listed if its in the main MODE window. not sure whether to make a migration to change those.
这个提交包含在:
		
							父节点
							
								
									54c31a6b3f
								
							
						
					
					
						当前提交
						e16e7ed18a
					
				
					共有  2 个文件被更改,包括 21 次插入 和 8 次删除
				
			
		|  | @ -35,18 +35,18 @@ class Logbookadvanced extends CI_Controller { | ||||||
| 		} | 		} | ||||||
| 		ksort($deOptions); | 		ksort($deOptions); | ||||||
| 		$deOptions = array_keys($deOptions); | 		$deOptions = array_keys($deOptions); | ||||||
| 
 |  | ||||||
| 		$modes = []; | 		$modes = []; | ||||||
| 		if ($stationIds !== []) { | 		if ($stationIds !== []) { | ||||||
| 			foreach ($this->logbookadvanced_model->get_worked_modes($stationIds) as $mode) { | 			foreach ($this->logbookadvanced_model->get_worked_modes($stationIds) as $mode) { | ||||||
| 				$key = $mode['mode']; | 				$key = $mode['mode']; | ||||||
| 				if ($mode['submode'] !== null) { | 				if ($mode['submode'] != null) { | ||||||
| 					$key .= "|" . $mode['submode']; | 					$key .= "|" . $mode['submode']; | ||||||
| 				} | 				} | ||||||
|  | 
 | ||||||
| 				if ($mode['submode'] == null) { | 				if ($mode['submode'] == null) { | ||||||
| 					$modes[$key] = $mode['mode']; | 					$modes[$key] = $mode['mode']; | ||||||
| 				} else { | 				} else { | ||||||
| 					$modes[$key] = $mode['submode']; | 					$modes[$key] = $mode['mode'] . " | ".$mode['submode']; | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
|  | @ -14,7 +14,7 @@ class Logbookadvanced_model extends CI_Model { | ||||||
| 		$ids =  "'".implode("','",$stationIds)."'"; | 		$ids =  "'".implode("','",$stationIds)."'"; | ||||||
| 
 | 
 | ||||||
| 		$sql = " | 		$sql = " | ||||||
| 		SELECT distinct `COL_MODE`, `COL_SUBMODE` | 		SELECT distinct COL_MODE, COL_SUBMODE | ||||||
| 		FROM `" . $this->config->item('table_name') . "` qsos | 		FROM `" . $this->config->item('table_name') . "` qsos | ||||||
| 		WHERE qsos.station_id IN (".$ids.") | 		WHERE qsos.station_id IN (".$ids.") | ||||||
| 		ORDER BY COL_MODE, COL_SUBMODE";
 | 		ORDER BY COL_MODE, COL_SUBMODE";
 | ||||||
|  | @ -23,11 +23,24 @@ class Logbookadvanced_model extends CI_Model { | ||||||
| 			 | 			 | ||||||
| 		$results = []; | 		$results = []; | ||||||
| 		foreach ($data->result() as $row) { | 		foreach ($data->result() as $row) { | ||||||
| 			$results[] = [ | 			if(!empty($row->COL_SUBMODE)) { | ||||||
| 				'mode' => $row->COL_MODE, | 				$results[] = [ | ||||||
| 				'submode' => $row->COL_SUBMODE | 					'mode' => $row->COL_MODE, | ||||||
| 			]; | 					'submode' => $row->COL_SUBMODE | ||||||
|  | 				]; | ||||||
|  | 			} else { | ||||||
|  | 				// if mode is not already in the results array
 | ||||||
|  | 				if (!in_array($row->COL_MODE, array_column($results, 'mode'))) { | ||||||
|  | 					$results[] = [ | ||||||
|  | 						'mode' => $row->COL_MODE, | ||||||
|  | 						'submode' => null | ||||||
|  | 					]; | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
| 		} | 		} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| 		return $results; | 		return $results; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		正在加载…
	
		在新工单中引用