var fs_global_data={drs:"",max_stops:"",miles:"",dep:"",ret:"",day_index:-1,flight:""};var $j;var fs_global_drs_dep=new Array();var fs_global_drs_ret=new Array();var fs_global_drs_stop=new Array();var fs_global_user_dep=new Array();var fs_global_user_ret=new Array();var fs_global_user_stop=new Array();var fs_global_timer_id=0;var fs_global_timer_delay=250;var fs_global_spinner_time=200;var fs_global_event_counter=0;var fs_global_calendar_date;var fs_global_gate_chart_loading=0;var fs_global_gate_first_time=1;var fs_global_image_chart;var fs_sort_function=fs_dest_sort_value;var fs_global_url_chart="../chart/?";var fs_global_url_chart_img="../app/helper/get-miles-image.pl?";var fs_global_url_image_map="../app/helper/get-miles-html-map.php?";var fs_global_url_json_drs="../app/helper/get-miles-json-drs.php?";var fs_global_url_json_miles="../app/helper/get-miles-json-prices.php?";var fs_global_url_flight="../flight/?";var fs_global_day_names=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");var fs_global_month_names=new Array("January","February","March","April","May","June","July","August","September","October","November","December");var fs_global_month_abbrs=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
function fs_miles_init(){var b;var a;b=fs_global_trip[0].orig;fs_global_data.day_index=fs_global_trip[0].index;fs_util_copy_drs_pref();fs_time_calendar_init();fs_init_jquery_options();fs_init_jquery_chart();fs_init_jquery_helpers();fs_init_jquery_column_sort();fs_init_trip_slider();fs_option_orig_dropdowns(b);fs_option_orig_checkboxes(b);fs_chart_dates(0);fs_json_get_drs();}
function fs_init_jquery_options(){var a;var b;$j("#from-selection").change(function(){fs_option_orig_dropdown_change();return false;});$j(".calendar .prev").click(function(){fs_time_calendar_prev();});$j(".calendar .next").click(function(){fs_time_calendar_next();});$j(".option-bar .flight-times .dep input").click(function(){a=$j(this).val();b=$j(this).attr("checked")?1:0;fs_global_user_dep[a]=b;fs_chart_defer();});$j(".option-bar .flight-times .ret input").click(function(){a=$j(this).val();b=$j(this).attr("checked")?1:0;fs_global_user_ret[a]=b;fs_chart_defer();});}
function fs_init_jquery_chart(){$j("#chart-rewind").click(function(){if(!$j(this).hasClass("disabled")){fs_chart_eval_buttons(399);fs_chart_rewind();}return false;});$j("#chart-rewind").dblclick(function(){if(!$j(this).hasClass("disabled")){$j("#fs_chart_helper").stop(true);fs_chart_eval_buttons("home");fs_chart_rewind("home");}return false;});$j("#chart-advance").click(function(){if(!$j(this).hasClass("disabled")){fs_chart_eval_buttons(-399);fs_chart_advance();}if($j("#chart-advance-helper").css("display")=="block"){fs_helper_hide($j("#chart-advance-helper"));}return false;});$j("#chart-advance").dblclick(function(){if(!$j(this).hasClass("disabled")){$j("#fs_chart_helper").stop(true);fs_chart_eval_buttons("end");fs_chart_advance("end");}return false;});}
function fs_init_jquery_helpers(){fs_helper_show($j("#chart-advance-helper"));$j("#chart-advance-helper a").click(function(){fs_helper_hide($j(this).parent("div"));return false;});}
function fs_init_jquery_column_sort(){$j("#table-area").hide();$j("th.dest-col a").click(function(){fs_sort_function=fs_dest_sort_dest;fs_dest_sort();$j(this).parents("table").find("a.selected").removeClass("selected");$j(this).addClass("selected");return false;});$j("th.miles-col a").click(function(){fs_sort_function=fs_dest_sort_miles;fs_dest_sort();$j(this).parents("table").find("a.selected").removeClass("selected");$j(this).addClass("selected");return false;});$j("th.value-col a").click(function(){fs_sort_function=fs_dest_sort_value;fs_dest_sort();$j(this).parents("table").find("a.selected").removeClass("selected");$j(this).addClass("selected");return false;});$j("th.fare-col a").click(function(){fs_sort_function=fs_dest_sort_fare;fs_dest_sort();$j(this).parents("table").find("a.selected").removeClass("selected");$j(this).addClass("selected");return false;});}
function fs_init_trip_slider(){var a=fs_global_trip[0].stay;var b;var c;$j("#bar-1 .tripSlider").slider({min:0,max:110,step:11,orientation:"horizontal",value:(a*11),animate:false,slide:function(f,d){a=Math.round(d.value/11);fs_option_trip_length_summary(a);if(fs_global_data.day_index>=0){b=fs_util_date_add(new Date(),fs_global_data.day_index+1);c=fs_util_date_add(b,a);fs_option_trip_length_detail(b,c);}},stop:function(f,d){if(fs_global_event_counter===0){fs_chart_dates(0);fs_json_get_drs();}}});fs_option_trip_length_summary(a);if(fs_global_data.day_index>=0){b=fs_util_date_add(new Date(),fs_global_data.day_index+1);c=fs_util_date_add(b,a);fs_option_trip_length_detail(b,c);}}
function fs_helper_show(a){a.fadeIn();}
function fs_helper_hide(a){a.fadeOut();}
function fs_option_trip_length_summary(a){fs_global_trip[0].stay=a;$j(".days-count").text(fs_option_trip_length_days(a));$j(".nights-count").text(fs_option_trip_length_nights(a));}
function fs_option_trip_length_days(a){var b;if(a){b=(a+1)+" days";}else{b="same day";}return b;}
function fs_option_trip_length_nights(b){var a;if(b){a=b+((b==1)?" night":" nights");}else{a="0 nights";}return a;}
function fs_option_trip_length_detail(b,d){var c;var a;$j(".trip-slider .depart-date span").removeClass("disabled");$j(".trip-slider .return-date span").removeClass("disabled");c=fs_global_day_names[b.getDay()];a=c+", "+fs_option_trip_length_detail_2(b);$j(".trip-slider .depart-date span").html(a);c=fs_global_day_names[d.getDay()];a=c+", "+fs_option_trip_length_detail_2(d);$j(".trip-slider .return-date span").html(a);}
function fs_option_trip_length_detail_2(a){return parseInt(a.getMonth()+1,10)+"/"+a.getDate()+"/"+a.getFullYear();}
function fs_option_orig_dropdown_change(){var a;a=$j("#from-selection").val();fs_global_trip[0].orig=a;fs_option_orig_checkboxes(a);$j("#chart-area").show();$j(".search-options").show();fs_util_copy_drs_pref();fs_json_get_drs();}
function fs_option_orig_dropdowns(g){var c;var f;var d;var e=false;var b=new Array();for(c=0;c<com_flyspy_routes.length;c++){f=com_flyspy_routes[c];if(f.dest.length){d="";if(f.code==fs_util_first_route(g)){d=" selected";e=true;}b.push('<option value="'+f.code+'"'+d+">"+f.sname+" - "+f.code+"</option>");}}if(!e){b.unshift('<option value="" selected>Select an origin city</option>');$j("#chart-area").hide();$j(".search-options").hide();}$j("#from-selection").html(b.join(""));}
function fs_option_orig_checkboxes(k){var g;var d;var b;var h=new Array();var f;var l;var e;var c;var j;if(k===""){$j(".from-airports ul.airport-checkboxes").empty();}else{g=fs_util_get_route(k);d=(g.near.length===0)?" disabled":"";if(g.near.length){b=g.sname+" ("+g.code+")";}else{b=g.sname;}h.push('<li><input type="radio" value="'+fs_util_first_route(k)+'" checked'+d+" /><label>"+b+"</label></li>");if(g.near.length){for(f=0;f<g.near.length;f++){l=g.near[f];e=g.dist[f];c=fs_util_get_route(l);j=(k.indexOf(l)>-1)?" checked":"";h.push('<li><input type="radio" value="'+l+'"'+j+" /><label>"+c.sname+" ("+c.code+') <span class="distance">'+e+" mi</span></label></li>");}}$j(".from-airports ul.airport-checkboxes").html(h.join(""));$j(".from-airports input").click(function(){fs_option_drs_checkboxes();fs_chart_defer();});}}
function fs_option_drs_checkboxes(){var a;var c;var b;for(a=0;a<6;a++){fs_global_drs_dep[a]=0;fs_global_drs_ret[a]=0;fs_global_drs_stop[a]=0;}$j(".from-airports li input:checked").each(function(d){c=this.value;b=fs_util_get_drs(c);if(b!==""){for(d=0;d<6;d++){if(b.dep.substr(d,1)=="1"){fs_global_drs_dep[d]=1;}if(b.ret.substr(d,1)=="1"){fs_global_drs_ret[d]=1;}if(b.stop.substr(d,1)=="1"){fs_global_drs_stop[d]=1;}}}});$j(".option-bar .flight-times .dep input").each(function(d){fs_option_drs_checkboxes_on("d",d,this);});$j(".option-bar .flight-times .ret input").each(function(d){fs_option_drs_checkboxes_on("r",d,this);});fs_option_drs_stops();$j(".stops li input").each(function(d){fs_option_drs_checkboxes_on("s",d,this);});}
function fs_option_drs_stops(){var d;var e;var k;var l;var g=new Array();var j;var f;var b;var c;var h;d=fs_global_data.max_stops;e=$j(".stops li input").size();if(d==(e-1)){return;}k=((d==5)?5:(d+1));if(k<2){k=2;}l=new Array();l=[0,0,0,0,0,0];$j(".stops li input:checked").each(function(a){l[this.value]=1;});for(b=0;b<=k;b++){j=(l[b]==1?" checked":"");f=b;if(b==k){f+="+";}g.push('<li><input type="checkbox" value="'+b+'"'+j+" /><label>"+f+"</label></li>");}$j(".stops ul").html(g.join(""));$j(".stops input").click(function(){c=$j(this).val();h=$j(this).attr("checked")?1:0;fs_global_user_stop[c]=h;fs_chart_defer();});}
function fs_option_drs_checkboxes_on(e,f,c){var b;var a;var d;b=false;if(e=="d"){a=fs_global_drs_dep;d=fs_global_user_dep;}else{if(e=="r"){a=fs_global_drs_ret;d=fs_global_user_ret;}else{if(e=="s"){a=fs_global_drs_stop;d=fs_global_user_stop;}}}if(a[f]){if(d[f]){$j(c).attr("checked",true);}else{$j(c).attr("checked",false);}$j(c).attr("disabled",false);b=true;}if(!b){$j(c).attr("checked",false);$j(c).attr("disabled",true);}}
function fs_chart_eval_buttons(c){var a=parseInt($j("#fs_chart_helper").css("left"),10);var b;b=2621;if(c=="home"){c=0-a;}else{if(c=="end"){c=(b*-1)-a;}}$j(".title-bar a.disabled").removeClass("disabled");if(a+c>=0){$j("#chart-rewind").addClass("disabled");}else{if(a+c<=b*-1){$j("#chart-advance").addClass("disabled");}}}
function fs_chart_advance(b){var a;var c;if(b=="end"){c=-2622;}else{a=parseInt($j("#fs_chart_helper").css("left"),10);c=a-399;}if(c<-2622){c=-2622;}fs_chart_scroll_to(c);}
function fs_chart_rewind(b){var a;var c;if(b=="home"){c=0;}else{a=parseInt($j("#fs_chart_helper").css("left"),10);c=a+399;}if(c>0){c=0;}fs_chart_scroll_to(c);}
function fs_chart_dates(e){var a=new Date();var d;var b;var c;if(e>=0){d=fs_util_date_add(a,e+1);b=fs_util_date_add(a,e+30);c="Departure dates: ";c+=fs_global_month_names[d.getMonth()]+" "+d.getDate();if(d.getFullYear()!=d.getFullYear()){c+=", "+d.getFullYear();}c+=" to ";c+=fs_global_month_names[b.getMonth()]+" "+b.getDate()+", "+b.getFullYear();c+="<span>Trip length: "+fs_option_trip_length_nights(fs_global_trip[0].stay)+" / "+fs_option_trip_length_days(fs_global_trip[0].stay)+"</span>";}}
function fs_chart_defer(){fs_util_timer_clear();fs_util_timer_set();}
function fs_chart_now(){var e;var a;var b;var d;var c;fs_util_timer_clear();if(fs_util_event_processing()){return;}e=fs_util_url_parms();if(e!==""){a=new Date().getTime();e+="&ver="+a;b="";if(fs_global_data.day_index>=0){b="&date="+fs_global_data.day_index;}d=fs_global_url_chart_img+e+b;c=fs_global_url_image_map+e;fs_chart_update_chart(d);fs_chart_update_image_map(c);fs_json_get_miles(e);}}
function fs_chart_update_chart(a){fs_global_gate_chart_loading=1;$j("#fs_chart").fadeTo(fs_global_spinner_time,0.25,function(){if(fs_global_gate_chart_loading){$j("#fs_div_spinner").fadeIn(fs_global_spinner_time);}});fs_util_event_start();fs_global_image_chart=new Image();$j(fs_global_image_chart).load(function(){fs_chart_update_chart_done(0);}).error(function(){fs_chart_update_chart_done(1);}).attr("src",a).attr("useMap","#fs_map").attr("id","fs_chart");}
function fs_chart_update_chart_done(a){fs_global_gate_chart_loading=0;fs_util_event_stop();$j(fs_global_image_chart).hide();$j("#fs_chart").fadeOut(300);$j("#fs_chart").replaceWith(fs_global_image_chart);$j("#fs_chart").css({opacity:"0.1"});$j("#fs_chart").show();$j("#fs_div_spinner").fadeOut(fs_global_spinner_time,function(){$j("#fs_chart").fadeTo(fs_global_spinner_time,1);});if(fs_global_gate_first_time&&fs_global_data.day_index>-1){fs_global_gate_first_time=0;fs_time_trip_details_scroll(fs_global_data.day_index,0);}}
function fs_chart_scroll_to(a){$j("#fs_chart_helper").animate({left:a+"px"},"normal");}
function fs_chart_update_image_map(a){fs_util_event_start();$j("#fs_div_map").load(a,function(){$j("#fs_div_map area").tooltip({track:true,delay:0,showURL:false,extraClass:"chart",fixPNG:true,top:-130,left:-91,attr:"tooltitle"});$j("#fs_chart").attr("useMap","#fs_map");fs_util_event_stop();});}
function fs_time_trip_details_scroll(a,b){var c;$j(".title-bar a").removeClass("disabled");if(a<=10){c=0;$j("#chart-rewind").addClass("disabled");}else{if(a>=53){c=-(46*57);$j("#chart-advance").addClass("disabled");}else{c=-((a*57)-(6*57));}}fs_chart_scroll_to(c);fs_time_trip_details(a,b);}
function fs_time_trip_details(a,j){var g;var h;var c;var f;var b;var l;var e=new Array();var k=new Array();var d;if(j&&fs_util_event_processing()){return;}fs_global_data.day_index=a;if(j){g=fs_util_url_parms();if(g!==""){h="";if(a>=0){h="&date="+a;}c=fs_global_url_chart_img+g+h;fs_chart_update_chart(c);}}f=fs_global_data.miles;if(f.miles===""){return;}b=fs_util_date_add(new Date(),fs_global_data.day_index+1);l=fs_util_date_add(b,fs_global_trip[0].stay);fs_option_trip_length_detail(b,l);fs_time_calendar(b,l);$j(".destinations tbody").fadeTo(250,0.25,function(){fs_dest_update();$j(".destinations tbody").fadeTo(250,1,function(){$j.sparkline_display_visible();});});}
function fs_time_calendar_init(){var a=new Date();var b;var c;b=a.julian()+1+fs_global_data.day_index;c=0;if(fs_global_data.day_index>=0){c=b+fs_global_trip[0].stay;c=fs_util_julian_to_date(c);}b=fs_util_julian_to_date(b);fs_time_calendar(b,c);}
function fs_time_calendar(c,d){var b;var a;b=c.getMonth();if(!d){fs_time_calendar_one_month(c,d);}else{a=d.getMonth();if(b==a){fs_time_calendar_one_month(c,d);}else{fs_time_calendar_two_month(c,d);}}}
function fs_time_calendar_prev(){var c;var b;var a;c=new Date();c=fs_util_date_add(c,1);c.setDate(1);c=c.julian();b=fs_global_calendar_date.julian();if(b>c){a=fs_global_calendar_date;if(a.getMonth()===0){a.setFullYear(a.getFullYear()-1);a.setMonth(11);}else{a.setMonth(a.getMonth()-1);}fs_time_calendar(a,0);}}
function fs_time_calendar_next(){var b;var a;var c;b=new Date();b=fs_util_date_add(b,1+60);b.setDate(1);b=b.julian();a=fs_global_calendar_date.julian();if(a<b){c=fs_global_calendar_date;if(c.getMonth()==11){c.setFullYear(c.getFullYear()+1);c.setMonth(0);}else{c.setMonth(c.getMonth()+1);}fs_time_calendar(c,0);}}
function fs_time_calendar_one_month(b,c){var w;var r;var d;var p;var u;var v;var n;var e;var l;var t;var k;var m;var h;var q;var o;var g;var f;var s;var x=new Array();w=new Date();w=fs_util_date_add(w,1);w=w.julian();r=w+29;d=b.getFullYear();p=b.getMonth();u=b.julian();v=0;if(c){v=c.julian();}n=new Date(d,p,1);fs_global_calendar_date=n;n=n.getDay();l=fs_util_end_of_month(b);e=new Date(d,p,l);e=e.getDay();$j(".calendar .caption").text(fs_global_month_names[p]+" "+d);t=new Date();t.setFullYear(d,p,1);t=t.julian();k=1;x.push("<tr>");for(m=1,h=0;m<=l;m++,h++){if(m==1){for(q=0;q<n;q++,h++){x.push("<td>&nbsp;</td>");}}if(h&&h%7===0){x.push("</tr><tr>");k++;}o="";if(h%7==6){o=' style="border-right: none;"';}g=fs_time_calendar_class(t,u,v);if(t>=w&&t<=r){f=t-w;x.push("<td"+g+o+'><a href="" onclick="fs_time_trip_details_scroll('+f+', 1); return false;">'+m+"</a></td>");}else{x.push("<td"+g+o+">"+m+"</td>");}t++;}for(s=e+1;s<=6;s++){o=(s==6)?' style="border-right: none;"':"";x.push("<td"+o+">&nbsp;</td>");}x.push("</tr>");k++;for(s=k;s<=6;s++){x.push("<tr>");for(q=0;q<7;q++){o=(q==6)?' style="border-right: none;"':"";x.push("<td"+o+">&nbsp;</td>");}x.push("</tr>");}$j("#calendar-body").html(x.join(""));}
function fs_time_calendar_two_month(c,d){var z;var t;var e;var s;var q;var j;var m;var l;var C;var v;var x;var y;var n;var o;var w;var b;var g;var r;var p;var h;var f;var B;var k;var u;var A=new Array();z=new Date();z=fs_util_date_add(z,1);z=z.julian();t=z+29;e=c.getFullYear();s=d.getFullYear();q=c.getMonth();j=d.getMonth();m=c.getDate();l=d.getDate();C=fs_util_end_of_month(c);v=fs_util_end_of_month(d);x=c.julian();y=d.julian();$j(".calendar .caption").text(fs_global_month_names[q]+" "+e);n=new Date(e,q,C);n=n.getDay();o=C-n-7;w=new Date();w.setFullYear(e,q,o);w=w.julian();b=false;for(g=0;g<2;g++){A.push("<tr>");for(r=0;r<7;r++){p="";if(r==6){p=' style="border-right: none;"';}if(o>C){if(b===false){b=true;A.push('<td class="trip span-start"'+p+">&nbsp;</td>");}else{A.push("<td"+p+">&nbsp;</td>");}}else{h=fs_time_calendar_class(w,x,y);if(w>=z&&w<=t){f=w-z;A.push("<td"+h+p+'><a href="" onclick="fs_time_trip_details_scroll('+f+', 1); return false;">'+o+"</a></td>");}else{A.push("<td"+h+p+">"+o+"</td>");}o=o+1;w++;}}A.push("</tr>");if(o>C){break;}}A.push('<tr><td class="caption" colspan="7" style="border-right: none;">'+fs_global_month_names[j]+" "+s+"</td></tr>");A.push("<tr>");B=new Date(s,j,1);B=B.getDay();o=1;for(k=0;k<7;k++){p="";if(k==6){p=' style="border-right: none;"';}if(k<B){if(k==B-1){A.push('<td class="trip span-end"'+p+">&nbsp;</td>");}else{A.push("<td>&nbsp;</td>");}}else{h=fs_time_calendar_class(w,x,y);if(w>=z&&w<=t){f=w-z;A.push("<td"+h+p+'><a href="" onclick="fs_time_trip_details_scroll('+f+', 1); return false;">'+o+"</a></td>");}else{A.push("<td"+h+p+">"+o+"</td>");}o=o+1;w++;}}A.push("</tr>");for(u=0;u<2;u++){A.push("<tr>");for(r=0;r<7;r++){p="";if(r==6){p=' style="border-right: none;"';}if(o>C){A.push("<td"+p+">&nbsp;</td>");}else{h=fs_time_calendar_class(w,x,y);if(w>=z&&w<=t){f=w-z;A.push("<td"+h+p+'><a href="" onclick="fs_time_trip_details_scroll('+f+', 1); return false;">'+o+"</a></td>");}else{A.push("<td"+h+p+">"+o+"</td>");}o=o+1;w++;}}A.push("</tr>");}$j("#calendar-body").html(A.join(""));}
function fs_time_calendar_class(c,g,f){var a;var e;var b="";var d="";a=new Date();a=a.julian();e=a+60;if(c<a){b="disabled";}else{if(f){if(c==g){b="trip-start";d="Depart date";if(c==f){b="trip-sameday";d="Depart and return the same day";}}else{if((c>g)&&(c<f)){b="trip";d="Away";}else{if(c==f){b="trip-end";d="Return date";}else{if(c>e){b="disabled";}}}}}else{if(c>e){b="disabled";}}}if(c==a){if(b!==""){b+=" today";}else{b="today";}d="Today's date";}if(b!==""){b=' class="'+b+'" title="'+d+'"';}return b;}
function fs_dest_update(){var f;var j;var e;var g;var d=new Array();var h;var b;fs_global_data.miles.sort(fs_sort_function);$j(".destinations tbody").height($j(".destinations").height());j=fs_util_url_orig_dest(".from-airports input:checked");for(f=0;f<fs_global_data.miles.length;f++){e=fs_global_data.miles[f];g=e.days[fs_global_data.day_index];h=fs_chart_href(j,e.dest);b=fs_flight_href(j,e.dest,g);d.push("<tr>");d.push('<td class="dest-col">'+e.destname+"</td>");d.push('<td class="spark-col"><span class="sparkline">'+e.days+"</span></td>");d.push('<td class="miles-col"><div class="counter"><span class="numbers">'+e.miles+'</span></div> <span class="suffix">mi</span></td>');if(g){d.push('<td class="value-col">'+fs_util_price_per_mile(g/e.miles)+'<span class="suffix">/ mi</span></td>');d.push('<td class="fare-col"><span class="dollars">$</span> '+g+"</td>");}else{d.push('<td class="value-col">&nbsp;</td>');d.push('<td class="fare-col">&nbsp;</td>');}d.push('<td class="chart-link"><a href="'+h+'">Chart &raquo;</a></td>');d.push('<td class="flights-link"><a href="'+b+'" class="disabled">Flights &raquo;</a></td>');d.push("</tr>");}var c=$j("<tbody />").addClass("normal").html(d.join(""));if($j("#table-area").is(":hidden")){$j("#table-area").show();}$j(".destinations tbody").remove();$j(".destinations").append(c);$j(".destinations tr:even").addClass("stripe");$j(".destinations tr:last").addClass("last");$j(".destinations tbody.normal .sparkline").sparkline("html",{type:"line",width:"70px",height:"24px",lineColor:"#4268a1",fillColor:"#dfeffd",defaultPixelsPerValue:2,spotColor:false,spotRadius:2,minSpotColor:false,maxSpotColor:false,offsetColor:"#0a4279",offsetIndex:fs_global_data.day_index});$j(".destinations tbody").height("auto");}
function fs_util_price_per_mile(d){var c="";var b;var a;d=Math.round(d*1000);d=d/1000;if(String(d).indexOf(".")==-1){b=d;a="000";}else{b=String(d).split(".")[0];a=String(d).split(".")[1];}if(a.length==1){a+="00";}else{if(a.length==2){a+="0";}}a_class=b>0?"prefix-bold":"prefix";c='<span class="'+a_class+'"><span class="dollars">$</span> '+b+"</span>";c+='<div class="counter"><span class="numbers">.'+a+"</span></div>";return c;}
function fs_dest_sort(){$j(".destinations tbody").fadeTo(250,0.25,function(){fs_dest_update();$j(".destinations tbody").fadeTo(250,1,function(){$j.sparkline_display_visible();});});return false;}
function fs_dest_sort_dest(d,c){return((d.destname<c.destname)?-1:((d.destname>c.destname)?1:0));}
function fs_dest_sort_miles(d,c){return d.miles-c.miles;}
function fs_dest_sort_value(d,c){return(d.days[fs_global_data.day_index]/d.miles)-(c.days[fs_global_data.day_index]/c.miles);}
function fs_dest_sort_fare(d,c){return d.days[fs_global_data.day_index]-c.days[fs_global_data.day_index];}
function fs_chart_href(d,a){var c;var b;c=fs_util_url_dest_parms(d,a);if(c===""){return"";}return fs_global_url_chart+c+"&index="+fs_global_data.day_index;}
function fs_flight_href(e,a,d){var c;var b;c=fs_util_url_dest_parms(e,a);b=fs_util_url_date_parms();if(c===""||b===""){return"";}return fs_global_url_flight+c+b+"&index="+fs_global_data.day_index+"&price="+d;}
function fs_util_copy_drs_pref(){var a;for(a=0;a<6;a++){fs_global_user_dep[a]=parseInt(fs_global_trip[0].dep.substr(a,1),10);fs_global_user_ret[a]=parseInt(fs_global_trip[0].ret.substr(a,1),10);fs_global_user_stop[a]=parseInt(fs_global_trip[0].stop.substr(a,1),10);}}
function fs_util_get_route(a){var b;for(b=0;b<com_flyspy_routes.length;b++){if(com_flyspy_routes[b].code==fs_util_first_route(a)){return com_flyspy_routes[b];}}return{code:"",name:"Unknown",sname:"",dest:[],near:[],dist:[]};}
function fs_util_first_route(a){return a.substr(0,3);}
function fs_util_get_drs(b){var a;for(a=0;a<fs_global_data.drs.length;a++){if(fs_global_data.drs[a].orig==b){return fs_global_data.drs[a];}}return"";}
function fs_util_url_parms(){var c;var d="";var b;var a=new Array();c=false;d=fs_util_url_orig_dest(".from-airports input:checked");if(d===""){return"";}a.push(d);a.push(fs_global_trip[0].stay);b="";$j(".flight-times td.dep input").each(function(e){b+=this.checked?"1":"0";});if(b.indexOf("1")==-1){c=true;}a.push(b);b="";$j(".flight-times td.ret input").each(function(e){b+=this.checked?"1":"0";});if(b.indexOf("1")==-1){c=true;}a.push(b);b="";$j(".stops input").each(function(e){b+=this.checked?"1":"0";});if(b.indexOf("1")==-1){c=true;}a.push(b);if(c){return"";}return"trip="+a.join(":");}
function fs_util_url_dest_parms(e,b){var d;var c;var a=new Array();d=false;if(e===""||b===""){return"";}a.push(e);a.push(b);a.push(fs_global_trip[0].stay);c="";$j(".flight-times td.dep input").each(function(f){c+=this.checked?"1":"0";});if(c.indexOf("1")==-1){d=true;}a.push(c);c="";$j(".flight-times td.ret input").each(function(f){c+=this.checked?"1":"0";});if(c.indexOf("1")==-1){d=true;}a.push(c);c="";$j(".stops input").each(function(f){c+=this.checked?"1":"0";});if(c.indexOf("1")==-1){d=true;}a.push(c);if(d){return"";}return"trip="+a.join(":");}
function fs_util_url_orig_dest(a){var b="";$j(a).each(function(c){b+=this.value;});return b;}
function fs_util_url_date_parms(){var d;var c;var e;var f;var a;var b=fs_global_trip[0].stay;d=fs_global_data.miles;if(d===""){return"";}c=fs_global_data.day_index;e=fs_util_date_add(new Date(),c+1);f=fs_util_date_add(e,b);return"&dep="+e.ymd("-")+"&ret="+f.ymd("-");}
function fs_util_timer_set(){fs_global_timer_id=setTimeout("fs_chart_now()",fs_global_timer_delay);}
function fs_util_timer_clear(){if(fs_global_timer_id){clearTimeout(fs_global_timer_id);fs_global_timer_id=0;}}
function fs_util_end_of_month(f){var a;var g;var i;var e;var h;var c;var d;var b;a=f.getFullYear();g=f.getMonth();if(g===0||g==2||g==4||g==6||g==7||g==9||g==11){i=31;}if(g==3||g==5||g==8||g==10){i=30;}if(g==1){e=a/4;h=new String(e);c=h.indexOf(".");if(c!=-1){i=28;}else{i=29;}d=new String(a);b=new String(d.charAt(2));b=b+new String(d.charAt(3));if(b=="00"){e=a/400;h=new String(e);c=h.indexOf(".");if(c!=-1){i=28;}else{i=29;}}}return i;}
function fs_util_min_array(c){var b;var d;var a=999999;for(b=0;b<c.length;b++){d=c[b];if(d>0){a=Math.min(a,d);}}return a;}
function fs_util_event_start(){if(fs_global_event_counter===0){$j("#bar-1 .tripSlider").slider("disable");}fs_global_event_counter++;}
function fs_util_event_stop(){if(fs_global_event_counter){fs_global_event_counter--;if(fs_global_event_counter===0){$j("#bar-1 .tripSlider").slider("enable");}}}
function fs_util_event_processing(){return(fs_global_event_counter>0)?true:false;}
function fs_util_julian_to_date(julian){var new_date;with(Math){var ijd=floor(julian);var el=floor(ijd+68569);var n=floor(4*el/146097);el=el-floor((146097*n+3)/4);var i=floor(4000*(el+1)/1461001);el=el-floor(1461*i/4)+31;var j=floor(80*el/2447);var k=el-floor(2447*j/80);el=floor(j/11);j=j+2-12*el;i=100*(n-49)+i+el;}new_date=new Date();new_date.setHours(0,0,0,0);new_date.setFullYear(i,j-1,k);return new_date;}
function fs_util_date_add(a,b){a=a.julian();a+=b;return fs_util_julian_to_date(a);}
function fs_json_get_drs(){var b="";var a;$j(".from-airports li input").each(function(c){b+=this.value;});if(b!==""){fs_util_event_start();a=fs_global_url_json_drs+"trip="+b+":"+fs_global_trip[0].stay;fs_getJSON(a,{},"json",function(c,d){fs_global_data.drs=c.drs;fs_global_data.max_stops=c.max_stops;fs_option_drs_checkboxes();fs_util_event_stop();fs_chart_now();},function(d,c,e){fs_util_event_stop();});}else{fs_option_drs_checkboxes();}}
function fs_json_get_miles(b){var a;fs_util_event_start();a=fs_global_url_json_miles+b;fs_getJSON(a,{},"json",function(c,d){fs_global_data.dep=c.dep;fs_global_data.ret=c.ret;fs_global_data.miles=c.miles;if(fs_global_data.day_index>=0){fs_time_trip_details(fs_global_data.day_index,0);}fs_util_event_stop();},function(d,c,e){fs_util_event_stop();});}
function fs_getJSON(c,d,f,e,a){var b={};b.type=d.Method||"POST";b.url=c;b.processData=true;b.cache=false;b.data=d;b.dataType=f;b.success=e;if(a){b.error=a;}$j.ajax(b);}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(d,c){var b,a;if(c===undefined){c=0;}else{if(c<0){c=Math.max(0,this.length+c);}}for(b=c,a=this.length;b<a;b++){if(this[b]===d){return b;}}return -1;};}Date.prototype.julian=function(){var yy=this.getFullYear();var mm=this.getMonth()+1;var dd=this.getDate();with(Math){var gg=1;if(yy<=1585){gg=0;}var jd=-1*floor(7*(floor((mm+9)/12)+yy)/4);var s=1;if((mm-9)<0){s=-1;}var a=abs(mm-9);var j1=floor(yy+s*floor(a/7));j1=-1*floor((floor(j1/100)+1)*3/4);jd=jd+floor(275*mm/9)+dd+(gg*j1);jd=jd+1721027+2*gg+367*yy;}return jd;};Date.prototype.month=function(){return parseInt(this.getMonth()+1);};Date.prototype.ymd=function(a){return this.getFullYear()+a+this.month()+a+this.getDate();};