var base_path;var geosettings;$(document).ready(function(){$(".displayed-if-latlng").hide();$("#fora").hide();$("#report-submission-form").hide();$("#tv-channel-table-wrapper").hide();$("#tv-channel-table").hide();$("#tigerbangs-map-wrapper").hide();var x={TV:"NTSC",CA:"NTSC",TX:"NTSC",TB:"NTSC",TS:"NTSC",DT:"DTV",DC:"DTV",DS:"DTV",DX:"DTV",LD:"DTV"};var v=new Array();var o=new Array();var n=new Array();var b;var r;var C=0;var m=0;var A;var s=true;var d="Click on a TV station on the map or in the list to display channel, distance, azimuth and other details";var B=new GMap2(document.getElementById("map-canvas"));B.addControl(new GLargeMapControl());B.addControl(new GOverviewMapControl());B.enableDoubleClickZoom();B.addControl(new GMapTypeControl());B.removeMapType(G_HYBRID_MAP);B.addMapType(G_PHYSICAL_MAP);var j=new GIcon(G_DEFAULT_ICON);j.iconSize=new GSize(32,32);j.iconAnchor=new GPoint(16,16);j.infoWindowAnchor=new GPoint(16,16);var z=0;if(geosettings.state.length==0&&geosettings.zip.length==0){$.getJSON(base_path+"geoip/get_city.php",{param:"test"},function(F){if(F.FAILED=="FAILED"){$("#fora").show();$(".displayed-if-latlng").hide()}else{$(".displayed-if-latlng").show();$("#fora").hide();C=F.latitude;m=F.longitude;geodata=new Array();geodata.country=F.country_code;geodata.state=F.region;geodata.statename=F.regionname;geodata.city=F.city;geodata.zip=F.postal_code;var E=$("#radius option:selected").val();u(geodata,E,false)}})}else{$("#state option[value='"+geosettings.state+"']").attr("selected","selected");$.get(base_path+"funcs.php",{param:"address",state:geosettings.state},function(E){$("#city").html(E);if(geosettings.city.length!=0){$("#city option[value='"+geosettings.city.replace(" ","+")+"']").attr("selected","selected");$.get(base_path+"funcs.php",{param:"address",city:geosettings.city,state:geosettings.state},function(F){$("#Zip").html(F);if(geosettings.zip.length!=0){$("#Zip option[value='"+geosettings.zip+"']").attr("selected","selected")}})}});if(geosettings.city.length!=0){$("#addcity").val(geosettings.city)}if(geosettings.zip.length!=0){$("#addzip").val(geosettings.zip)}if(geosettings.add1.length!=0){$("#address1").val(geosettings.add1)}if(geosettings.add2.length!=0){$("#address2").val(geosettings.add2)}var l=$("#radius option:selected").val();u(geosettings,l)}function u(G,E,F){if(F==undefined){F=true}if(G.zip=="undefined"||G.zip.length==0){$(".statename").html(G.statename);if(G.city=="undefined"||G.city.length==0){$(".cityname").html("");$("#notincitytext").html(G.statename)}else{$(".cityname").html(G.city+", ");$("#notincitytext").html(G.city)}}else{$(".statename").html("");$(".cityname").html("Zip Code "+G.zip);$("#notincitytext").html("zip code "+G.zip)}$(".selectedradius").html(E);q();if(r){B.removeOverlay(r)}if(!F){$("#fora").hide("slow");$(".displayed-if-latlng").show();var H=new GLatLng(C,m);B.setCenter(H,8);B.panTo(H);q();if(b){B.removeOverlay(b)}if(r){B.removeOverlay(r)}B.addOverlay(c(H));k(G,E);h(G)}else{$.getJSON(base_path+"funcs.php",{param:"latlong",state:G.state,city:G.city,zip:G.zip,add1:G.add1,add2:G.add2},function(I){if(I.FAILED=="FAILED"){$("#fora").show("slow");$(".displayed-if-latlng").hide();$("#channelsselect").html("");$("#channels").html("");alert("Please enter a valid location");return false}else{$("#fora").hide("slow");$(".displayed-if-latlng").show();C=I.lat;m=I["long"];var J=new GLatLng(C,m);B.setCenter(J,8);B.panTo(J);q();if(b){B.removeOverlay(b)}if(r){B.removeOverlay(r)}B.addOverlay(c(J));k(G,E);h(G)}})}t(G);e(G);return true}function k(F,E){$.getJSON(base_path+"funcs.php",{param:"station",state:F.state,city:F.city,zip:F.zip,lat:C,lon:m,r:E,affonly:s},function(H){$("#channelsselect").html("");if(H.FAILED=="FAILED"){$("#channels").html("");$("#tv-channel-table").html("");$("#stationtable").html("");alert("No TV Stations found within "+E+" miles of the specified location");return false}else{$("#channels").html(H.option);$("#tv-channel-table").html(H.table);$("#tv-channel-table-wrapper").show();$("#stationtable").html(H.reporttable);v.length=0;for(var I=0;I<H.latlon.length;I++){var G=new GLatLng(H.latlon[I]["lat"],H.latlon[I]["lon"]);v[H.callsign[I]]=new Array();v[H.callsign[I]]["latlng"]=G;v[H.callsign[I]]["info"]=H.info[I];v[H.callsign[I]]["channel"]=H.channel[I];v[H.callsign[I]]["service"]=H.service[I];v[H.callsign[I]]["network"]=H.network[I];v[H.callsign[I]]["lang"]=H.lang[I];v[H.callsign[I]]["christian"]=H.christian[I];v[H.callsign[I]]["power"]=H.power[I];v[H.callsign[I]]["distance"]=H.distance[I];v[H.callsign[I]]["azimuth"]=H.azimuth[I]}A=H.geotoken;y();$.post(base_path+"funcs.php",{param:"geoselector",token:A,enabled:o.join()},function(J){$("#geoselector-suggestion").html(J)});g(d,20000)}})}function h(E){$("#state-report").val(E.state);if(E.zip!="undefined"){$("#zip-report").val(E.zip)}if(E.city!="undefined"){$("#city-report").val(E.city)}if(E.add1!="undefined"){$("#add1-report").val(E.add1);if(E.add2!="undefined"){$("#add2-report").val(E.add2)}}$.get(base_path+"funcs.php",{param:"report",lat:C,lng:m},function(F){$("#user-reports").html(F)})}function t(E){$.getJSON(base_path+"funcs.php",{param:"rcomend",state:E.state,city:E.city,zip:E.zip},function(F){if(F.length==0){if(E.city.length>0&&E.city!="undefined"){$("#citynamerec").html(E.city);if($("#mod-notice-city").length>0){$("#mod-notice-city").text(E.city)}$("#statenamerec").html(", "+E.statename)}else{$("#citynamerec").html("");if($("#mod-notice-city").length>0){$("#mod-notice-city").text("All")}$("#statenamerec").html(E.statename)}$("#ziprec").html("");if($("#mod-notice-zip").length>0){$("#mod-notice-zip").text("All")}if($("#mod-notice-state").length>0){$("#mod-notice-state").text(E.statename)}$("#tigerbangs-recommendation").html("No recommendation found for this area.")}else{if(E.city.length>0&&F.city!="undefined"){$("#citynamerec").html(F.city);if($("#mod-notice-city").length>0){$("#mod-notice-city").text(F.city)}$("#statenamerec").html(", "+E.statename)}else{$("#citynamerec").html("");if($("#mod-notice-city").length>0){$("#mod-notice-city").text("All")}if(F.state!="undefined"){$("#statenamerec").html(E.statename)}}if(F.zip!="undefined"&&F.zip!=""){$("#ziprec").html(", Zip "+F.zip);if($("#mod-notice-zip").length>0){$("#mod-notice-zip").text(F.zip)}}if(F.state!="undefined"&&$("#mod-notice-state").length>0){$("#mod-notice-state").text(F.state)}$("#tigerbangs-recommendation").html(F.recommendation)}if(F.author=="hdtvlabs"){$("#recommendation-by").html("HDTV Labs")}$("#tigerbangs-map-wrapper").show()})}function e(E){$.get(base_path+"funcs.php",{param:"forums",state:E.state,city:E.city,zip:E.zip},function(F){$("#related-forums").html(F)})}function a(F,G){var H=String.fromCharCode("A".charCodeAt(0)+G);var E=new GIcon(j);if(v[G]["channel"]<=13){E.image=base_path+"images/32towerblack.png";var I="VHF"}else{E.image=base_path+"images/32towerblue.png";var I="UHF"}markerOptions={icon:E};n[G]=new GMarker(F,markerOptions);GEvent.addListener(n[G],"click",function(){latSel=F.lat();lonSel=F.lng();if(r){B.removeOverlay(r)}D(C,m,latSel,lonSel);var J='<div style="height: 15px;"><div style="float:left"> '+G;if(v[G]["network"]&&v[G]["network"].length!=0){J=J+" ("+v[G]["network"]+")"}J=J+"</div>";if(x[v[G]["service"]]=="DTV"){J=J+'<img style="display:inline; vertical-align=bottom; margin-bottom: -3px !important; margin-bottom: 0px; padding-left: 5px;" src="'+base_path+'images/dtv.png">'}J=J+'</div><div style="clear:both">';J=J+"Distance: "+v[G]["distance"]+" miles @"+v[G]["azimuth"]+"&deg;<br/>";J=J+"Channel "+v[G]["channel"]+"("+I+")</div>";n[G].openInfoWindowHtml(J);$("#channels option:selected").attr("selected",false);$("#channels option[id='"+G+"']").attr("selected","selected")});return n[G]}function c(F){var E=new GIcon(j);E.image=base_path+"images/32home.png";markerOptions={icon:E};b=new GMarker(F,markerOptions);return b}function D(H,F,G,E){r=new GPolyline([new GLatLng(H,F),new GLatLng(G,E)],"#000044",6,0.7);B.addOverlay(r)}function q(){for(var E in n){if(E=="length"){continue}B.removeOverlay(n[E])}}function y(){q();o.length=0;for(var E in v){if(E=="length"){continue}if(w(E)){o.push(E);B.addOverlay(a(v[E]["latlng"],E));$("#channels option[id='"+E+"']").css("color","black")}else{$("#channels option[id='"+E+"']").css("color","#AAAAAA");if($("#channels option[id='"+E+"']").is(":selected")&&r){B.removeOverlay(r)}}}}function w(O){var K;var M=$("#show-digital").is(":checked");var L=$("#show-analog").is(":checked");var P=$("#show-vhf").is(":checked");var G=$("#show-uhf").is(":checked");var J=$("#show-eng").is(":checked");var F=$("#show-spa").is(":checked");var R=$("#show-low-power").is(":checked");var N=$("#show-christian").is(":checked");var I=parseInt($("input[name='rbUnaffiliated']:checked").val());var E;if(v[O]["network"]&&v[O]["network"].length>0){if(v[O]["network"].indexOf("/")==-1){E=$("input[name='cbShowNet"+v[O]["network"]+"']").is(":checked")}else{var H=new Array();H=v[O]["network"].split("/");E=false;for(var Q in H){E=E||$("input[name='cbShowNet"+H[Q]+"']").is(":checked")}}}else{E=I}K=(v[O]["channel"]<=13&&P)||(v[O]["channel"]>13&&G);K=K&&((x[v[O]["service"]]=="DTV"&&M)||(x[v[O]["service"]]=="NTSC"&&L));K=K&&((v[O]["lang"]=="eng"&&J)||(v[O]["lang"]=="spa"&&F)||v[O]["lang"]==undefined||v[O]["lang"].length==0);K=K&&(R||v[O]["power"]>50);K=K&&(N||(1-v[O]["christian"]));K=K&&E;return K}function g(F,E){$.blockUI({message:'<div class="growlUI"><p>'+F+"</p></div>",timeout:E,fadeIn:700,fadeOut:1000,centerY:false,showOverlay:false,css:{width:"300px",height:"95px",top:"7px",left:"",right:"15px",border:"none",padding:"5px",opacity:0.8,cursor:null,color:"#fff",backgroundColor:"#000","-webkit-border-radius":"10px","-moz-border-radius":"10px"}})}$("#radius").change(function(){$("#channelsselect").html("<img src='"+base_path+"images/ajax-loader.gif'/>");$("#channels").html("");$("#tv-channel-table").html("");var I=$("#state option:selected").val();var G=jQuery.trim($("#state option:selected").text());var K=$("#addcity").val();K=jQuery.trim(K);if((K.length==0)||(K==null)){K=$("#city option:selected").val()}reg=/[+]/g;var F=navigator.appName;if(F=="Microsoft Internet Explorer"){RegExp.multiline=true}K=K.replace(reg," ");z=$("#addzip").val();z=jQuery.trim(z);if((z.length==0)||(z==null)){z=$("#Zip option:selected").val()}var J=$("#address1").val();J=jQuery.trim(J);var H=$("#address2").val();H=jQuery.trim(H);if((J.length==0)||(J==null)){J="undefined"}if((H.length==0)||(H==null)){H="undefined"}var E=$("#radius option:selected").val();$(".selectedradius").html(E);if(E==100){B.setCenter(new GLatLng(C,m),7)}if(E<100){B.setCenter(new GLatLng(C,m),7)}if(E<70){B.setCenter(new GLatLng(C,m),8)}if(E<50){B.setCenter(new GLatLng(C,m),9)}if(E<30){B.setCenter(new GLatLng(C,m),10)}geodata=new Array();geodata.state=I;geodata.statename=G;geodata.city=K;geodata.zip=z;geodata.add1=J;geodata.add2=H;k(geodata,E)});$(".go").click(function(){$("#channelsselect").html("<img src='"+base_path+"images/ajax-loader.gif'/>");var I=$("#state option:selected").val();var G=jQuery.trim($("#state option:selected").text());var K=$("#addcity").val();K=jQuery.trim(K);if((K.length==0)||(K==null)){K=$("#city option:selected").val()}reg=/[+]/g;var F=navigator.appName;if(F=="Microsoft Internet Explorer"){RegExp.multiline=true}K=K.replace(reg," ");z=$("#addzip").val();z=jQuery.trim(z);if((z.length==0)||(z==null)){z=$("#Zip option:selected").val()}var J=$("#address1").val();J=jQuery.trim(J);var H=$("#address2").val();H=jQuery.trim(H);var L=J+H;if((J.length==0)||(J==null)){J="undefined"}if((H.length==0)||(H==null)){H="undefined"}var E;if(z.length!=0&&z!="undefined"&&L.length==0){E=z+"/"}else{if(I.length!=0&&I!="undefined"){E=I+"/";if(K.length!=0&&K!="undefined"){E=E+K.replace(/ /g,"+")+"/"}}}if(E.length!=0&&J!="undefined"){E=E+"?add1="+J.replace(/ /g,"+");if(H!="undefined"){E=E+"&add2="+H.replace(/ /g,"+")}}E=base_path+E;window.location=E});$("a.address-form-toggle").click(function(E){E.preventDefault();$("#fora").slideToggle("slow")});$("a.report-form-toggle").click(function(E){E.preventDefault();$("#report-submission-form").slideToggle("slow")});$("#report-address-use").click(function(E){E.preventDefault();$("#address-use-notice").slideToggle("slow")});$("#report-add-antenna").click(function(E){E.preventDefault();$("#report-another-antenna").slideToggle("slow")});$("#report-placement").change(function(){var E=$("#report-placement option:selected").val();if(E=="Indoor"){$(".report-outdoor-only").hide()}else{$(".report-outdoor-only").show()}});$("#report-placement-2").change(function(){var E=$("#report-placement-2 option:selected").val();if(E=="Indoor"){$(".report-outdoor-only-2").hide()}else{$(".report-outdoor-only-2").show()}});$("#report-antenna-brand").change(function(){var E=$("#report-antenna-brand option:selected").val();$.get(base_path+"funcs.php",{param:"models",brand:E},function(F){$("#report-antenna-model").html(F)})});$("#report-antenna-brand-2").change(function(){var E=$("#report-antenna-brand-2 option:selected").val();$.get(base_path+"funcs.php",{param:"models",brand:E},function(F){$("#report-antenna-model-2").html(F)})});$(".station-disp-ctrl").click(function(){if($.browser.msie){$(this).trigger("change")}});$(".station-disp-ctrl").change(function(){g("Re-loading TV stations and re-calculating antenna suggestion ...",4000);y();$.post(base_path+"funcs.php",{param:"geoselector",token:A,enabled:o.join()},function(E){$("#geoselector-suggestion").html(E)})});$(".aff-only-switch").change(function(){g("Re-loading TV stations and re-calculating antenna suggestion ...",4000);s=1-parseInt($("input[name='rbUnaffiliated']:checked").val());k(geosettings,l)});$("#more-nets, #more-nets-image").click(function(){$("#more-networks-block").slideToggle("slow");var E=$("#more-nets").text();if(E=="Expand"){$("#more-nets").text("Collapse")}else{$("#more-nets").text("Expand")}});$(".collapsible").click(function(){$("#tv-channel-table").slideToggle("slow");$(".collapsible").toggleClass("expand-arrow")});$("#channels").change(function(){var F=$("#channels option:selected").text();F=F.replace(/[^A-Z0-9\-]/g,"");var E=w(F);if(E){GEvent.trigger(n[F],"click");latSel=v[F]["latlng"].lat();lonSel=v[F]["latlng"].lng();if(r){B.removeOverlay(r)}D(C,m,latSel,lonSel)}});$("#state").change(function(){$("#cityselect").html("<img src='"+base_path+"images/ajax-loader.gif'/>");$("#city").html("");$("#Zip").html("");$("#addcity").val("");$("#addzip").val("");$("#address1").val("");$("#address2").val("");var E=$("#state option:selected").val();$.get(base_path+"funcs.php",{param:"address",state:E},function(F){$("#cityselect").html("");$("#city").html(F);$("#Zip").html("<option value='undefined' selected='selected'>Select city first</option>")})});$("#city").change(function(){$("#Zipselect").html("<img src='"+base_path+"images/ajax-loader.gif'/>");$("#addcity").val("");$("#addzip").val("");$("#address1").val("");$("#address2").val("");var F=$("#city  option:selected").val();var E=$("#state option:selected").val();var G=0;$.get(base_path+"funcs.php",{param:"address",city:F,state:E},function(H){$("#Zipselect").html("");$("#Zip").html(H)})});$("#Zip").change(function(){$("#addzip").val("");$("#address1").val("");$("#address2").val("")});$("#state-report").change(function(){var E=$("#state-report option:selected").val();$.get(base_path+"funcs.php",{param:"address",state:E},function(F){$("#city-report").html(F)})});$("#city-report").change(function(){var F=$("#city-report option:selected").val();var E=$("#state-report option:selected").val();var G=0;$.get(base_path+"funcs.php",{param:"address",city:F,state:E},function(H){$("#zip-report").html(H)})});function f(J,H,G){var F=$("input#name-report").val();F=jQuery.trim(F);if((F=="")||(F.length==0)){alert("Please enter name.");$("input#name-report").focus();return false}var I=$("input#state-report").val();if(I==""){alert("State not selected");$("input#state-report").focus();return false}var K=$("input#city-report").val();if(K==""){alert("City not selected");$("input#city-report").focus();return false}if($("#report-antenna-model option:selected").val()==0&&$("#report-antenna-model-2 option:selected").val()==0&&$("#antenna-model-text").val().length==0&&$("#antenna-model-text-2").val().length==0){alert("Antenna not specified");$("#report-antenna-model").focus();return false}if($("#report-placement option:selected").val()==0){alert("Antenna placement must be specified");$("#report-placement").focus();return false}if($("#report-antenna-model-2 option:selected").val()!=0&&$("#report-placement-2 option:selected").val()==0){alert("Please, specify placement of the 2nd antenna");$("#report-placement").focus();return false}if($("#antenna-orientation").val().length>0&&($("#antenna-orientation").val()<0||$("#antenna-orientation").val()>=360)){alert("Antenna orientation must be between 0 and 360 degrees");$("#antenna-orientation").focus();return false}if($("#antenna-orientation-2").val().length>0&&($("#antenna-orientation-2").val()<0||$("#antenna-orientation-2").val()>=360)){alert("Antenna orientation must be between 0 and 360 degrees");$("#antenna-orientation-2").focus();return false}var E=0;$("#stationtable select").each(function(L){if($(this).find("option:selected").val()!=0){E=1}});if(!E){alert("You should specify reception quality of at least one TV channel to submit the report.");return false}return true}function p(F,G){$("#report-submission-form").hide();var E='<div id="approval-msg">';if(F.indexOf("Error")==0){E+=F}else{E+="Thank you! Your report has been submitted and is pending approval by our staff. Usually, we review and approve ";E+="reports within 48 hours. The purpose of the review process is to detect spam. ";E+="As soon as the report is approved, it will be displayed in the reports section for relevant searches.";$("#user-reports").html(F)}E+='<br/><br/><input id="close-btn" type="button" value="Close"/>';E+="</div>";$.blockUI({message:E,timeout:15000,fadeIn:700,fadeOut:1000});$("#close-btn").click(function(){$.unblockUI();return false})}var i={beforeSubmit:f,success:p};$("#report-form-id").ajaxForm(i)});