| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | $('#distplot_bands').change(function(){ | 
					
						
							|  |  |  | 	var band = $("#distplot_bands option:selected").text(); | 
					
						
							|  |  |  | 	if (band != "SAT") { | 
					
						
							|  |  |  | 		$("#distplot_sats").prop('disabled', true); | 
					
						
							|  |  |  | 	} else { | 
					
						
							|  |  |  | 		$("#distplot_sats").prop('disabled', false); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function distPlot(form) { | 
					
						
							|  |  |  | 	$(".alert").remove(); | 
					
						
							|  |  |  | 	var baseURL= "<?php echo base_url();?>"; | 
					
						
							|  |  |  | 	$.ajax({ | 
					
						
							|  |  |  | 		url: base_url+'index.php/distances/get_distances', | 
					
						
							|  |  |  | 		type: 'post', | 
					
						
							|  |  |  | 		data: {'band': form.distplot_bands.value, | 
					
						
							|  |  |  | 			'sat': form.distplot_sats.value}, | 
					
						
							|  |  |  | 		success: function(tmp) { | 
					
						
							|  |  |  | 			if (tmp.ok == 'OK') { | 
					
						
							|  |  |  | 				if (!($('#information').length > 0)) | 
					
						
							|  |  |  | 					$("#distances_div").append('<div id="information"></div><div id="graphcontainer" style="height: 600px; margin: 0 auto"></div>'); | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 				var color = ifDarkModeThemeReturn('white', 'grey'); | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 				var options = { | 
					
						
							|  |  |  | 					chart: { | 
					
						
							|  |  |  | 						type: 'column', | 
					
						
							|  |  |  | 						zoomType: 'xy', | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 						renderTo: 'graphcontainer', | 
					
						
							|  |  |  | 						backgroundColor: getBodyBackground() | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 					}, | 
					
						
							|  |  |  | 					title: { | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 						text: 'Distance Distribution', | 
					
						
							|  |  |  | 						style: { | 
					
						
							|  |  |  | 							color: color | 
					
						
							|  |  |  | 						} | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 					}, | 
					
						
							|  |  |  | 					xAxis: { | 
					
						
							|  |  |  | 						categories: [], | 
					
						
							|  |  |  | 						crosshair: true, | 
					
						
							|  |  |  | 						type: "category", | 
					
						
							|  |  |  | 						min:0, | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 						max:100, | 
					
						
							|  |  |  | 						labels: { | 
					
						
							|  |  |  | 							style: { | 
					
						
							|  |  |  | 								color: color | 
					
						
							|  |  |  | 							} | 
					
						
							|  |  |  | 						} | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 					}, | 
					
						
							|  |  |  | 					yAxis: { | 
					
						
							|  |  |  | 						title: { | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 							text: '# QSOs', | 
					
						
							|  |  |  | 							style: { | 
					
						
							|  |  |  | 								color: color | 
					
						
							|  |  |  | 							} | 
					
						
							|  |  |  | 						}, | 
					
						
							|  |  |  | 						labels: { | 
					
						
							|  |  |  | 							style: { | 
					
						
							|  |  |  | 								color: color | 
					
						
							|  |  |  | 							} | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 						} | 
					
						
							|  |  |  | 					}, | 
					
						
							|  |  |  | 					navigator: { | 
					
						
							|  |  |  | 						enabled: true, | 
					
						
							|  |  |  | 						xAxis: { | 
					
						
							|  |  |  | 							labels: { | 
					
						
							|  |  |  | 								formatter: function() { | 
					
						
							|  |  |  | 									return this.value * '50' + ' ' + tmp.unit; | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 								}, | 
					
						
							|  |  |  | 								style: { | 
					
						
							|  |  |  | 									color: color | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 								} | 
					
						
							|  |  |  | 							} | 
					
						
							|  |  |  | 						} | 
					
						
							|  |  |  | 					}, | 
					
						
							|  |  |  | 					rangeSelector: { | 
					
						
							|  |  |  | 						selected: 1 | 
					
						
							|  |  |  | 					}, | 
					
						
							|  |  |  | 					tooltip: { | 
					
						
							|  |  |  | 						formatter: function () { | 
					
						
							|  |  |  | 							if(this.point) { | 
					
						
							|  |  |  | 								return "Distance: " + options.xAxis.categories[this.point.x] + | 
					
						
							|  |  |  | 									"<br />Callsign(s) worked (max 5 shown): " + myComments[this.point.x] + | 
					
						
							|  |  |  | 									"<br />Number of QSOs: <strong>" + series.data[this.point.x] + "</strong>"; | 
					
						
							|  |  |  | 							} | 
					
						
							|  |  |  | 						} | 
					
						
							|  |  |  | 					}, | 
					
						
							| 
									
										
										
										
											2021-09-11 00:53:24 +08:00
										 |  |  | 					legend: { | 
					
						
							|  |  |  | 						itemStyle: { | 
					
						
							|  |  |  | 							color: color | 
					
						
							|  |  |  | 						} | 
					
						
							|  |  |  | 					}, | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 					series: [] | 
					
						
							|  |  |  | 				}; | 
					
						
							|  |  |  | 				var myComments=[]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				var series = { | 
					
						
							|  |  |  | 					data: [], | 
					
						
							|  |  |  | 					showInNavigator: true | 
					
						
							|  |  |  | 				}; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				$.each(tmp.qsodata, function(){ | 
					
						
							|  |  |  | 					myComments.push(this.calls); | 
					
						
							|  |  |  | 					options.xAxis.categories.push(this.dist); | 
					
						
							|  |  |  | 					series.name = 'Number of QSOs'; | 
					
						
							|  |  |  | 					series.data.push(this.count); | 
					
						
							|  |  |  | 				}); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				options.series.push(series); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-12 22:46:16 +08:00
										 |  |  | 				$('#information').html(tmp.qrb.Qsos + " contacts were plotted.<br /> Your furthest contact was with " + tmp.qrb.Callsign | 
					
						
							| 
									
										
										
										
											2021-03-10 01:20:27 +08:00
										 |  |  | 					+ " in gridsquare "+ tmp.qrb.Grid | 
					
						
							|  |  |  | 					+"; the distance was " | 
					
						
							|  |  |  | 					+tmp.qrb.Distance + tmp.unit +"."); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				var chart = new Highcharts.Chart(options); | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 			else { | 
					
						
							|  |  |  | 				if (($('#information').length > 0)) { | 
					
						
							|  |  |  | 					$("#information").remove(); | 
					
						
							|  |  |  | 					$("#graphcontainer").remove(); | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				$("#distances_div").append('<div class="alert alert-danger" role="alert"><a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>' + tmp.Error + '</div>'); | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	}); | 
					
						
							|  |  |  | } |