;(function($){var $scrollTo=$.scrollTo=function(target,duration,settings){$(window).scrollTo(target,duration,settings);};$scrollTo.defaults={axis:'xy',duration:parseFloat($.fn.jquery)>=1.3?0:1};$scrollTo.window=function(scope){return $(window)._scrollable();};$.fn._scrollable=function(){return this.map(function(){var elem=this,isWin=!elem.nodeName||$.inArray(elem.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!isWin)
return elem;var doc=(elem.contentWindow||elem).document||elem.ownerDocument||elem;return $.browser.safari||doc.compatMode=='BackCompat'?doc.body:doc.documentElement;});};$.fn.scrollTo=function(target,duration,settings){if(typeof duration=='object'){settings=duration;duration=0;}
if(typeof settings=='function')
settings={onAfter:settings};if(target=='max')
target=9e9;settings=$.extend({},$scrollTo.defaults,settings);duration=duration||settings.speed||settings.duration;settings.queue=settings.queue&&settings.axis.length>1;if(settings.queue)
duration/=2;settings.offset=both(settings.offset);settings.over=both(settings.over);return this._scrollable().each(function(){var elem=this,$elem=$(elem),targ=target,toff,attr={},win=$elem.is('html,body');switch(typeof targ){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(targ)){targ=both(targ);break;}
targ=$(targ,this);case'object':if(targ.is||targ.style)
toff=(targ=$(targ)).offset();}
$.each(settings.axis.split(''),function(i,axis){var Pos=axis=='x'?'Left':'Top',pos=Pos.toLowerCase(),key='scroll'+Pos,old=elem[key],max=$scrollTo.max(elem,axis);if(toff){attr[key]=toff[pos]+(win?0:old-$elem.offset()[pos]);if(settings.margin){attr[key]-=parseInt(targ.css('margin'+Pos))||0;attr[key]-=parseInt(targ.css('border'+Pos+'Width'))||0;}
attr[key]+=settings.offset[pos]||0;if(settings.over[pos])
attr[key]+=targ[axis=='x'?'width':'height']()*settings.over[pos];}else{var val=targ[pos];attr[key]=val.slice&&val.slice(-1)=='%'?parseFloat(val)/100*max:val;}
if(/^\d+$/.test(attr[key]))
attr[key]=attr[key]<=0?0:Math.min(attr[key],max);if(!i&&settings.queue){if(old!=attr[key])
animate(settings.onAfterFirst);delete attr[key];}});animate(settings.onAfter);function animate(callback){$elem.animate(attr,duration,settings.easing,callback&&function(){callback.call(this,target,settings);});};}).end();};$scrollTo.max=function(elem,axis){var Dim=axis=='x'?'Width':'Height',scroll='scroll'+Dim;if(!$(elem).is('html,body'))
return elem[scroll]-$(elem)[Dim.toLowerCase()]();var size='client'+Dim,html=elem.ownerDocument.documentElement,body=elem.ownerDocument.body;return Math.max(html[scroll],body[scroll])
-Math.min(html[size],body[size]);};function both(val){return typeof val=='object'?val:{top:val,left:val};};})(jQuery);;var down_speed=0;var up_speed=0;var slide_location=0;var provider_index=0;var timetrials_index=1;var retest=false;var skc_data=0;var prov_name=0;var geo_isp_id=0;user_data=new(user);function user(connection_type,postcode,location,provider,rating){this.test_id=0;this.connection_type=1;this.postcode=0;this.location_data=new(location);this.provider=0;this.rating=0;this.provider_data=new(provider);function location(id,name,long,lat){this.id=0;this.name=0;this.long=0;this.lat=0;this.exchange_id=0;}
function provider(id,name,image_url){this.id=0;this.name=0;this.image_url='/_img/0.gif';}}
email=10;software=150;album=400;movie=6000;youtube=50;photos=50;$(document).ready(function(){if(window.location.hash){$('#test_page .intro').hide();$('#setup').hide();nextPage();$.getJSON('/_ajax/speedtest.php?action=test&id='+window.location.hash.substr(1),function(data){user_data.test_id=data.id;user_data.postcode=data.postcode;if(data.provider_name!=null){user_data.provider_data.name=data.provider_name;}
else{user_data.provider_data.name='Uknown';}
user_data.rating=data.rating;up_speed=data.upload;down_speed=data.download;user_data.location_data.id=data.exchange_id;user_data.location_data.name=data.exchange_name;user_data.location_data.long=data.longitude;user_data.location_data.lat=data.latitude;skc_data=JSON.stringify(data.availability)
retrieveTest(down_speed,up_speed,skc_data);});}
var ctype_cookie=$.cookie('location_type');if(ctype_cookie!='connection_mobile_broadband'&&$.cookie('location')){$('#'+ctype_cookie+' input[type=text]').val($.cookie('location')).trigger('keyup');}
$('#fancy_overlay').addOverlay();$('.provider_select select').attr('disabled','disabled');$('.provider_select option[label="----------------"]').attr('disabled','disabled');$('#home').show();$('#location_autosuggest').suggestLocation();$('#content_header ol li').append('<span class="step_counter"></span>');var user_provider=0;$('#setup .column:not(.disabled, .complete) ul li').live('mouseover',function(){$(this).addClass('hover');});$('#setup .column:not(.disabled, .complete) ul li').live('mouseout',function(){$(this).removeClass('hover');});$('#setup .column:not(.disabled, .complete) ul li:not(.disabled)').live('click',function(){$(this).addClass('hover');});$('input:disabled').addClass('disabled');var $setupConnections=$('li.connection li');$('li.connection:not(.complete) ul li').live('click',function(){if($(this).is(':not(.connection_edit)')){$('#setup .column .suggest').hide();$('li.connection ul li:not(.connection_mobile_broadband)').find('form em').text(SETUP_POSTCODE_EXAMPLE);if(!$(this).is('.disabled')&&!$(this).is('.complete')&&!$(this).is('.selected')){$setupConnections.addClass('faded').removeClass('selected').find('.tooltip').hide().end().find('input.setup_button').addClass('disabled').attr('disabled','disabled');$('#location_autosuggest').hide();$(this).addClass('selected').removeClass('faded');$('.tooltip',this).show();$('input:text:first',this).focus().trigger('keyup');$('input:text:first',this).focus().trigger('keyup');if(!$(this).is('#connection_mobile_broadband')&&$.cookie('location')){$('input[type=text]',this).val($.cookie('location')).trigger('keyup');}
$('input',this).removeAttr('disabled');}
return false;}});$('li.connection li:not(.connection_mobile_broadband) input:text').bind('keydown',function(){$(this).valid();});$('li.connection li:not(.connection_mobile_broadband) input:text').keyup(function(e){value=$(this).val();if(value.length>=6){user_data.postcode=$(this).val();checkPostCode($(this),value,true);}else{$(this).next().addClass('disabled');}});$(".connection input:text").keypress(function(e){if((e.which&&e.which==13)||(e.keyCode&&e.keyCode==13)){$(this).parent().find('input:submit').click();return false;}else{return true;}})
$('.connection input.setup_button').click(function(event){if($(this).is('.disabled')){pageTracker._trackPageview("/speedtest/setup/connection/error/postcode_not_found/"+$(this).prev('input:text').val());}
event.stopPropagation();if(!$(this).is('.disabled')){$setupConnections.find('.tooltip').hide();$('.provider').removeClass('faded').removeClass('disabled').find('select').removeAttr('disabled');$('select#provider').show().next('p').remove();Cufon.replace('.provider .sifr');$(this).parent().parent().completeChoice();$(this).parent().parent().addClass('complete');$('li.connection').addClass('complete');$(this).parent().find('input:text').attr('readonly','true');user_data.postcode=$(this).parent().find('input:text').val();if($(this).parent().parent().is('.connection_home_broadband')){user_data.connection_type=1;}
else if($(this).parent().parent().is('.connection_mobile_broadband')){user_data.connection_type=2;}
else if($(this).parent().parent().is('.connection_business_broadband')){user_data.connection_type=3;}
if(user_data.connection_type!=2){location_text=user_data.postcode.toUpperCase();}else{location_text=user_data.postcode;if(location_text.length>26){location_text=location_text.substring(0,23)+'...';}}
initMaps();$(this).parent().hide();$(this).parent().parent().find('h4').show();$(this).parent().parent().find('em').after('<em class="location_done">'+location_text+'</em>');if($('.column.provider').is('.complete')){$('#setup .rating').removeClass('disabled');Cufon.replace('.rating .sifr');}
$('.column.provider').removeClass('faded').find('.faded').removeClass('faded');}
return false;});$('li.connection_mobile_broadband form').submit(function(){return false;});$('#setup li.provider:not(.disabled) ul li.provider_select').live('click',function(){$('#setup li.provider:not(.disabled) ul li:not(.provider_select)').removeClass('hover');$(this).removeClass('faded');chooseOtherProvider();$('select#provider').show();});$('#setup li.provider:not(.disabled) ul li:not(.provider_select)').live('click',function(){$(this).parent().find('li').addClass('faded').removeClass('complete').removeClass('hover').removeClass('selected');$(this).removeClass('faded');$(this).completeChoice();$(this).parent().parent().addClass('complete');$(this).addClass('complete hover');user_data.provider_data.id=$('.id',this).val();user_data.provider_data.name=$('.name',this).val();user_data.provider_data.image_url=$('.image_url',this).val();$('#setup .rating').removeClass('disabled');Cufon.replace('.rating .sifr');});$("#setup ol li:not('.disabled') .change_provider").live('click',function(){$('.provider .provider').hide();$('.change_provider').hide();$('.provider .provider_select').removeClass('faded').fadeIn();$('.provider .provider_other').removeClass('faded').fadeIn();chooseOtherProvider();return false;});$('#setup .provider select').click(function(event){event.stopPropagation()});var setup_height=$('#setup .copy').innerHeight();$('#setup li.rating:not(.complete) li').live('click',function(){if(!$('li.rating').is('.disabled')){user_data.rating=$(this).find('input').val();$(this).addClass('selected');$(this).completeChoice();$('li.rating').addClass('complete');$('a.change_provider').hide();showSetup();$('.terms p strong').show();}});$('#end_of_setup #edit_link').click(function(){detectProviders();$('ol > li.provider').addClass('faded disabled');if(!$('.column_connection .undetected_connection').is(':visible')){$('.connection_edit').hide();}
pageTracker._trackPageview("/speedtest/setup/start_again/");$('.terms p strong').hide();$('#setup ol li.rating ul li:not(.user_hidden)').slideDown(function(){$('.user_hidden.complete').hide();$('#setup ol > li:not(.provider) li').show();$('#steps_wrapper').css('height',$('#setup .copy').innerHeight()+50);if($('li.connection li.detected').length>0){$('li.connection li:not(.detected)').hide();$('.connection .connection_edit').show();}});$('.complete_badge').remove();$('.complete').removeClass('complete');$('.column.provider li:not(.faded)').addClass('faded');$('#end_of_setup .start_big_button').hide();$('.connection').removeClass('complete').find('li').removeClass('complete faded disabled selected hover').end().find('input:text').removeAttr('readonly').end().find('h4, form').removeAttr('style').end().find('.location_done').remove();$('.rating').removeClass('complete').addClass('disabled').find('li').removeClass('complete faded disabled selected hover');Cufon.replace('.rating .sifr');$('a.change_provider').show();$('.column.connection li.detected').click();return false;});$('#end_of_setup .start_big_button').click(function(){$('.terms p strong').hide();pageTracker._trackPageview("/speedtest/test/");$('#test').addOverlay()
startTest();});$('#retest').click(function(){pageTracker._trackPageview("/speedtest/test/retest/");$('#test_page .copy .loading_overlay').hide();$('.js_generated').remove();provider_index=0;timetrials_index=1;$('#table_nav .prev').hide();$('#table_nav .next').show();$('.slide_0').removeClass('hidden');$('#steps_wrapper').css('height',$('#test_page .copy').innerHeight()+50);$('.slide_indicator').empty();$('.terms').addClass('setup_screen');previousPage('#test');callFlashTest(user_data.postcode);$('.results_summary a').click();retest=true;return false;});var tabs=[];var tabContainers=[];var tab_switching=false;$('ul.tabs a').each(function(){tabs.push(this);tabContainers.push($(this.hash).get(0));});$(tabContainers).hide().filter(':first').show();$(tabs).click(function(){if($(this).parent().hasClass('selected')){return false;}
if(!tab_switching){tab_switching=true;pageTracker._trackPageview("/speedtest/results/"+this.hash.replace('#results_','')+"/");if($.browser.msie){$(tabContainers).hide().filter(this.hash).show();}else{$(tabContainers).hide().filter(this.hash).fadeIn();}
$(tabs).parent().removeClass('selected');$(this).parent().addClass('selected');if(!$('#results_timetrials thead th').eq(2).hasClass('hidden')){$('#results_timetrials .prev').hide();}
tab_switching=false;return false;}});$('.action .new_button').live('mouseover',function(){$(this).providerFancybox();});$('.test_stats').live('mouseover',function(){$(this).providerMoreInfoFancybox();});$('#fastest_providers td a').live('mouseover',function(){$(this).fancybox({'zoomSpeedIn':200,'zoomSpeedOut':300,'overlayShow':true,'hideOnContentClick':false,'overlayOpacity':0.8,'padding':0,'width':855,'height':5800,'onStart':function(){alert('ok');overlay_height=$('#fancy_overlay').height()+'px';$('#fancy_close').empty().append('Close<span></span>');$('#fancy_overlay .loading_overlay').css('line-height',overlay_height).show();pageTracker._trackPageview("/speedtest/results/streetstats/fastest_providers/show_fancy_box/");},'callbackOnShow':function(){Cufon.replace('#fancy_ajax .sifr');$('#fancy_overlay .loading_overlay').hide();$("#fancy_ajax a[href^='/go/']").external({toolbar:1,scrollbars:1,location:1,statusbar:1,menubar:1,resizable:1,width:800,height:600,left:100,top:150});$('#fancy_ajax #products .monthly_cost .conditions').wrap('<div class=\"bubble_wrap\"></div>');var in_progress=false;$('#fancy_ajax #products .monthly_cost .conditions_link').live('mouseover',function(){if(in_progress==false){in_progress=true;$(this).parent().find('.conditions .cost').remove();$(this).parent().find('.conditions').prepend($(this).prev('.cost').clone().append('a month')).fadeIn('fast');}});$('#fancy_ajax #products .monthly_cost .conditions_link').live('mouseout',function(){$(this).parent().find('.conditions').fadeOut('fast',function(){$(this).find('.cost').remove();in_progress=false});});},'callbackOnClose':function(){}})});$('#products thead .new_button').live('click',function(){pageTracker._trackPageview("/speedtest/results/update_product_table/");getProductTable($(this).attr('href'),$(this).parents('th').attr('id'),ptable_sort);$(window).scrollTo('#products',{duration:1000});return false;});resultsComparisonPagination();resultsTimeTrialsPagination()
$('#content_header ol li a').click(function(){return false;});});function startTest(){$('#end_of_setup .start_big_button').click(function(){return false;});$('#steps_wrapper').css('height',$('#test_page .copy').innerHeight()+50);callFlashTest(user_data.postcode);$('#test_holder .loading_large').css('line-height',$('#test_page').height()+'px');nextPage('#test');}
function showSetup(){$('#setup ol > li li.complete').addClass('hover');$('#setup ol > li li:not(.complete)').slideUp('normal',function(){if($.browser.msie){$('#setup #end_of_setup .start_big_button').show();}else{$('#setup #end_of_setup .start_big_button').fadeIn();}
if(!$.browser.msie||$.browser.version>6){$('#steps_wrapper').css('height',$('#setup .copy').innerHeight()+50);}});}
$.fn.completeChoice=function(){if($.browser.msie){$(this).addClass('complete').append('<div class="complete_badge"></div>').find('.complete_badge').show();}else{$(this).addClass('complete').append('<div class="complete_badge"></div>').find('.complete_badge').fadeIn();}}
$.fn.suggestLocation=function(){var timer=null;var acListTotal=0;var acListCurrent=0;var acSearchField=$('input#setup_connection_location');var acResults=$('#location_autosuggest ul');var suggest_box=$(this);var search_location='/_ajax/speedtest.php/?action=location&search=london';$('li.connection_mobile_broadband:not(.complete) #setup_connection_location').live('click',function(){if($(this).val().length>2){search_location='/_ajax/speedtest.php/?action=location&search='+$(this).val();$.getJSON(search_location,function(ajax_response){$(suggest_box).show().find('ul').empty();var loc_counter=0;$.each(ajax_response,function(k,v){loc_counter++;if(loc_counter<9){$('#location_autosuggest ul').append('<li><span tabindex="'+k+'">'+v.name+'</span><input class="loc_id" val="'+v.id+'" /><input class="loc_long" val="'+v.long+'" /><input class="loc_lat" val="'+v.lat+'" /></li>');}});if($('#location_autosuggest ul li').length==0){$(suggest_box).find('ul').hide();$(suggest_box).find('div').html("<h2><em></em> Error</h2><p>This isn't a valid location, please enter something else.").show();pageTracker._trackPageview("/speedtest/setup/connection/error/location_not_found/"+acSearchField.val());}else{$(suggest_box).find('ul').show();$(suggest_box).find('div').hide();}
acListTotal=$('#location_autosuggest ul li').length;$('#location_autosuggest li').click(function(){$('#setup_connection_location').val($('span',this).text()).next('.setup_button').removeClass('disabled').removeAttr('disabled');user_data.location_data.name=$('span',this).html();user_data.location_data.id=$('.loc_id',this).attr('val');user_data.location_data.long=$('.loc_long',this).attr('val');user_data.location_data.lat=$('.loc_lat',this).attr('val');user_data.connection_type=2;$(suggest_box).hide();$('li.connection_mobile_broadband input.setup_button').click().blur();return false;});$('#location_autosuggest li:first span').addClass('hover');$('#location_autosuggest li').hover(function(){var span=$(this).find('span');$('#location_autosuggest li span').removeClass('hover');span.addClass('hover');acListCurrent=span.attr('tabindex');});});}});$('li.connection_mobile_broadband:not(.complete) #setup_connection_location').live('keyup',function(e){var keyCode=e.keyCode||window.event.keyCode;var lastVal=acSearchField.val();var self=this;if(updownArrow(keyCode)){return;}
if(keyCode==13){acResults.find('li span.hover').click();return;}
clearInterval(timer);if($(this).val().length>2){timer=setInterval(function(){clearInterval(timer);search_location='/_ajax/speedtest.php/?action=location&search='+$(self).val();$.getJSON(search_location,function(ajax_response){$(suggest_box).show().find('ul').empty();var loc_counter=0;$.each(ajax_response,function(k,v){loc_counter++;if(loc_counter<9){$('#location_autosuggest ul').append('<li><span tabindex="'+k+'">'+v.name+'</span><input class="loc_id" val="'+v.id+'" /><input class="loc_long" val="'+v.long+'" /><input class="loc_lat" val="'+v.lat+'" /></li>');}});if($('#location_autosuggest ul li').length==0){$(suggest_box).find('ul').hide();$(suggest_box).find('div').html("<h2><em></em> Error</h2><p>This isn't a valid location, please enter something else.").show();pageTracker._trackPageview("/speedtest/setup/connection/error/location_not_found/"+acSearchField.val());}else{$(suggest_box).find('ul').show();$(suggest_box).find('div').hide();}
acListTotal=$('#location_autosuggest ul li').length;$('#location_autosuggest li').click(function(){$('#setup_connection_location').val($('span',this).text()).next('.setup_button').removeClass('disabled').removeAttr('disabled');user_data.location_data.name=$('span',this).html();user_data.location_data.id=$('.loc_id',this).attr('val');user_data.location_data.long=$('.loc_long',this).attr('val');user_data.location_data.lat=$('.loc_lat',this).attr('val');user_data.connection_type=2;$(suggest_box).hide();$('li.connection_mobile_broadband input.setup_button').click().blur();return false;});$('#location_autosuggest li:first span').addClass('hover');$('#location_autosuggest li').hover(function(){var span=$(this).find('span');$('#location_autosuggest li span').removeClass('hover');span.addClass('hover');acListCurrent=span.attr('tabindex');});});},300);}
else{$('#location_autosuggest').hide();}});function updownArrow(keyCode){if(keyCode==40||keyCode==38){if(keyCode==38){if(acListCurrent==0||acListCurrent==-1){acListCurrent=acListTotal-1;}else{acListCurrent--;}}else{if(acListCurrent==acListTotal-1){acListCurrent=0;}else{acListCurrent++;}}
acResults.children().each(function(i){if(i==acListCurrent){acSearchField.val($(this).find('span').text());$(this).find('span').attr('class','hover');}else{$(this).find('span').attr('class','blur');}});return true;}else{acListCurrent=0;return false;}}}
function plotBars(speeds){if(down_speed>speeds[0]){var top_speed=down_speed;}
else{var top_speed=speeds[0];}
var scale_plot=0;var s=0;var step=1;var scale=10;if(top_speed<=5){var step=1;scale=Math.round(top_speed);}
else if(top_speed<=20){var step=2;scale=Math.round(parseInt(top_speed)/2)*2;}
else if(top_speed<30){var step=5;scale=Math.round(parseInt(top_speed)/5)*5;}
else if(top_speed>=30){var step=10;scale=Math.round(parseInt(top_speed)/10)*10;}
$('#results_scale').empty();for(i=0;i<scale;i=i+step){scale_plot=scale-i;s++;$('#results_scale').append('<li><span>'+scale_plot+'Mb</span></li>')}
$('#results_scale li').css('height',parseInt(220/s));$('#results_comparison #speed_bars').empty();if(down_speed>speeds[0]){$('#results_comparison .user_result .speed_bar').css('height','220px');}
else{var speed_height=220*((Math.round(down_speed*100/scale))/100);$('#results_comparison .user_result .speed_bar').css('height',speed_height);}
for(i in speeds){var speed_height=220*((Math.round(speeds[i]*100/scale))/100);$('#results_comparison #speed_bars').append('<li><span class="vertical_bar"></span></li>');var scale_height=$('#results_comparison #speed_bars li').eq(0).innerHeight();if(speed_height!=0){if(speed_height>220){$('#results_comparison #speed_bars li').eq(i).css('height',speed_height);}
if(i>0){$('#results_comparison #speed_bars li').eq(i).css('height',scale_height);}
$('#results_comparison #speed_bars li').eq(i).find('span').css('height',speed_height);}
else{var no_data_label='<p>(not enough <br />speed tests)</p>';$('#results_comparison #speed_bars li').eq(i).find('span').addClass('no_data').append(no_data_label);}}
if(!retest){if(user_data.connection_type==2){$('#fastest_broadband h3').append(' '+user_data.location_data.name);}
else{$('#fastest_broadband h3').append(' '+user_data.postcode.toUpperCase());}
Cufon.replace('#fastest_broadband h3');}}
function resultProvider(down_speed,up_speed){$('.user_result .speed_bar em').attr('class','rating_'+user_data.rating);$('.user_result .vertical_bar').html(down_speed);if(down_speed<2){$('.user_rating').addClass('low_speed');}
if(user_data.provider_data.image_url!=0){$('.user_result .provider_row').html($.image({src:user_data.provider_data.image_url,width:60,height:50,alt:user_data.provider_data.name,mode:$.image.EXPAND}));if($.browser.msie&&$.browser.version<7){$('.user_result .provider_row img').ifixpng();}}else{$('.user_result .provider_row').html('<h2>'+user_data.provider_data.name+'</h2>');}
$('.user_result .download_speed , #timetrials_header .download_speed > p').html('<span>'+down_speed+'Mb</span>');$('.user_result .upload_speed , #timetrials_header .upload_speed > p').html(up_speed+'Mb');$('#timetrials_header .rating_box span').attr('class','rating_'+user_data.rating);$('#timetrials_header .email_row > p').html(calcTime(email,down_speed));$('#timetrials_header .software_row > p').html(calcTime(software,down_speed));$('#timetrials_header .album_row > p').html(calcTime(album,down_speed));$('#timetrials_header .movie_row > p').html(calcTime(movie,down_speed));$('#timetrials_header .youtube_row > p').html(calcTime(youtube,down_speed));$('#timetrials_header .photos_row > p').html(calcTime(photos,down_speed));}
function resultRatings(){if(down_speed<2){$('table#results_comparison_table thead th.user_column em').addClass('low_speed');}}
function callFlashTest(postcode){$('#test_holder').addOverlay();var flashvars=false;var params={"allowScriptAccess":"always","wmode":"transparent","loop":"false"};var attributes={"allowScriptAccess":"always","wmode":"transparent"};var flashvars={configExtension:"xml"};swfobject.embedSWF("/_swf/speed_test/speedtest.swf?v=2.1.8","test_flash","918","450","9.0.0",flashvars,params,attributes);}
function nextPage(destination,retrieved_test){var rt=false;if(retrieved_test){rt=true}
if(!$.browser.msie||$.browser.version>6){slide_location=slide_location-918;}
else{if(destination=='#setup'){slide_location=slide_location-990;}
else{if(rt){slide_location=slide_location-985;}
else{slide_location=slide_location-918;}}}
$('#main_home_illustration').fadeOut('fast');$('#steps_wrapper').animate({left:slide_location},500,function(){if(destination=='#setup'){detectConnection();}});updateStepCounter(destination);return false;}
function previousPage(destination){slide_location=slide_location+918;$('#steps_wrapper').animate({left:slide_location},500,function(){window.location.hash=destination;return false;});updateStepCounter(destination);return false;}
function goToPage(page){window.location.hash=page;updateStepCounter(page);}
function updateStepCounter(current){$('#content_header ol li').removeClass('current');$('#content_header ol li a').each(function(){if($(this).attr('href')==current){$(this).parent().addClass('current');}});return false;}
function test_started(test_count,server_id){}
function test_completed(download_speed,upload_speed,latency,server_id){var down=download_speed/1024;var up=upload_speed/1024;$.get('/_ajax/speedtest.php?action=availability',{"postcode":user_data.postcode},function(data){generateResults(down,up,data);});}
function generateResults(down,up,skcid){var connectione_done=$('.column.connection .location_done');var location_type_cookie=$(connectione_done).parent().attr('id');var location_cookie=$(connectione_done).html();var options={path:'/',expires:10};$.cookie('location',location_cookie,options);$.cookie('location_type',location_type_cookie,options);skc_data=skcid;down_speed=Math.round(down*10)/10;up_speed=Math.round(up*10)/10;$.post('/_ajax/speedtest.php?action=save',{upload:up,download:down,provider:user_data.provider_data.id,connection_type:user_data.connection_type,postcode:user_data.postcode,rating:user_data.rating,long:user_data.location_data.long,lat:user_data.location_data.lat,location:user_data.location_data.id,availability:skc_data,isp_id:geo_isp_id},function(data){user_data.test_id=data;window.location.hash=data;if(retest){$('.user_rating .download_speed').text(down_speed+'Mb');$('.user_rating .upload_speed').text(up_speed+'Mb');}
$('#results_page .intro h2').empty().append(SPEEDTEST_RESULTS_PAGE_HEADER);Cufon.replace('#results_page .intro h2');$('#steps_wrapper').css('height','auto');$('.terms').removeClass('setup_screen');$('#test_holder').empty().append('<div id="test_flash"></div>');latlong_check=setInterval(function(){if(user_latlng){resultProvider(down_speed,up_speed);getResultsData();resultRatings();getProductTable('/_ajax/speedtest.php?action=products&menu_id='+menu_id+'&availability='+skc_data+'&sort='+ptable_sort,ptable_sort);if(!retest){availabilityBox();}
pageTracker._trackPageview("/speedtest/results/summary/");nextPage('#results');$('#results_page').fadeIn();clearInterval(latlong_check);}},1000);});$('.speedmap_promo .download_header span').empty().append(down_speed+'Mb');$('.speedmap_promo .upload_header span').empty().append(up_speed+'Mb');$('.speedmap_promo .provider_header p span').empty();if(user_data.provider_data.name!=null){var p_name=user_data.provider_data.name;}
else{var p_name='uknown';}
setProviderName(p_name);if(user_data.provider_data.id!=0&&user_data.provider_data.image_url){$('.speedmap_promo .provider_header').find('img').remove().end().prepend($.image({src:user_data.provider_data.image_url,width:60,height:50,alt:user_data.provider_data.name,mode:$.image.EXPAND}));}
Cufon.replace('.speedmap_promo .header_info');}
function load_setup(){var in_progress=false;$('#home #intro .new_button span').text(BEGIN_SPEEDTEST_BUTTON_TEXT);$('#home .start_big_button').click(function(){if(!in_progress){in_progress=true;pageTracker._trackPageview("/speedtest/setup/");nextPage('#setup');$('#content_header ol').show();$('#steps_wrapper').css('height',$('#setup .copy').innerHeight()+50);$('.terms').addClass('setup_screen');detectProviders();return false;}
else{return false;}
in_progress=false;});}
function getProviderData(merchant){$.getJSON("/_ajax/speedtest.php?action=provider&id="+merchant,function(data){if(typeof data=='object'){$('#setup.detected .provider li.provider select').hide();user_data.provider_data.id=merchant;user_data.provider_data.name=data.name;if(typeof data.images.merchant_logo=='object'){$('#setup.detected .provider li.provider').append($.image({src:data.images.merchant_logo.IMAGE_URL,width:60,height:50,alt:data.name,mode:$.image.EXPAND}));user_data.provider_data.image_url=data.images.merchant_logo.IMAGE_URL;}else{user_data.provider_data.image_url==0}}
else{user_data.provider_data.id=$('#setup .provider select').val();user_data.provider_data.name=$('#setup .provider select option[value='+user_data.provider_data.id+']').attr('label');}
$('.chosen_provider').remove();$('select#provider').hide().after('<p class="chosen_provider">'+user_data.provider_data.name+'</p>');$('.chosen_provider').fadeIn();});}
function getProductTable(url,selected_col){$('#products .loading_overlay').show();$('#products .loading_large').show();$.get(url,function(data){$('#results_page #products').empty().append(data);if($('#results_page #products table tbody tr').length==0){$('#results_page #products').remove();$('h2.products_header').remove();$('#steps_wrapper').css('height','990px');}
$("table tbody a.button").external({toolbar:1,scrollbars:1,location:1,statusbar:1,menubar:1,resizable:1,width:800,height:600,left:100,top:150});$.get('/_js/broadband/product_table_new.js',function(data){$('head').append('<script type="text/javascript">'+data+'</script>');});$('#results_page #products table thead th.'+selected_col).addClass('selected');$('#results_page #products table thead th#'+selected_col).addClass('selected');$('#results_page #products table tbody td.'+selected_col).addClass('selected');$('#products .loading_overlay').hide();$('#products .loading_large').hide();$('#results_page #products table').css('height',$('#products').innerHeight());$('#results_page #products table').stickyheader();});}
$.fn.addOverlay=function(){$(this).append('<div class="loading_overlay"><span class="loading_large"><span class="sifr"><img src="/_img/broadband/speedtest_new/spinner_big.gif" width="32" height="32" /> Loading...</span></span></div>');}
$.fn.providerFancybox=function(){$(this).fancybox({'width':855,'height':580,'callbackOnStart':function(){overlay_height=$('#fancy_overlay').height()+'px';$('#fancy_close').empty().append('Close<span></span>');$('#fancy_overlay .loading_overlay').css('line-height',overlay_height).show();pageTracker._trackPageview("/speedtest/results/see_deals/");},'callbackOnShow':function(){Cufon.replace('#fancy_ajax .sifr');$('#fancy_overlay .loading_overlay').hide();$("#fancy_ajax a[href^='/go/']").external({toolbar:1,scrollbars:1,location:1,statusbar:1,menubar:1,resizable:1,width:800,height:600,left:100,top:150});$('#fancy_ajax #products .monthly_cost .conditions').wrap('<div class=\"bubble_wrap\"></div>');var in_progress=false;$('#fancy_ajax #products .monthly_cost .conditions_link').live('mouseover',function(){if(in_progress==false){in_progress=true;$(this).parent().find('.conditions .cost').remove();$(this).parent().find('.conditions').prepend($(this).prev('.cost').clone().append('a month')).fadeIn('fast');}});$('#fancy_ajax #products .monthly_cost .conditions_link').live('mouseout',function(){$(this).parent().find('.conditions').fadeOut('fast',function(){$(this).find('.cost').remove();in_progress=false});});},'callbackOnClose':function(){$('#fancy_ajax').empty();$('#products table').stickyheader();}})}
function calcTime(size,speed){if(speed>0){var sec_s=' Seconds';var min_s=' Minutes';var hrs_s=' Hr';var sec=Math.round(parseInt(size/(speed/8))*10)/10;var min=Math.floor(sec/60);sec=sec%60;if(sec==1){sec_s=' Second'}
if(sec<1){time_stamp='Less than a second'}
else{time_stamp=sec+sec_s};var hrs=Math.floor(min/60);min=min%60;if(min==1){min_s=' Minute'}
if(min>0){time_stamp=min+min_s;}
hrs=hrs%60;if(hrs>0){sec=Math.round(parseInt(size/(speed/8))*10)/10;time_stamp=Math.floor(sec/60)+' '+min_s;}
return time_stamp;}
else{return 0;}}
$.fn.enableConnection=function(){$(this).addClass('selected').removeClass('faded').show();$('.tooltip',this).show();if(!$(this).is('#connection_mobile_broadband')&&$.cookie('location')){$('input:text:first',this).val($.cookie('location')).trigger('keyup');}
return false;}
function detectConnection(){$('.connection .connection_mobile_broadband').hide();$('.connection .connection_business_broadband').hide();$('.connection .connection_home_broadband').hide();if(home_type==0&&mobile_type==0&&business_type==0){$('.connection .connection_mobile_broadband').show();$('.connection .connection_business_broadband').show();$('.connection .connection_home_broadband').show();$('.connection .connection_edit').hide();}
else{if(home_type==1){$('.connection .connection_home_broadband').show().addClass('detected')
if(mobile_type==0&&business_type==0){$('.connection .connection_home_broadband').enableConnection();}}
if(mobile_type==1){$('.connection .connection_mobile_broadband').show().addClass('detected');if(home_type==0&&business_type==0){$('.connection .connection_mobile_broadband').enableConnection();}}
if(business_type==1){$('.connection .connection_business_broadband').show().addClass('detected');if(mobile_type==0&&home_type==0){$('.connection .connection_business_broadband').enableConnection();}}}
$('.connection_edit').click(function(){pageTracker._trackPageview("/speedtest/setup/connection/edit/");$('.connection').removeClass('complete').find('li').removeClass('complete faded disabled selected hover').show().end().find('input:text').removeAttr('readonly');$('.tooltip').hide();$(this).fadeOut();});}
$.fn.providerMoreInfoFancybox=function(){var merchant=$(this).next('.provider_id').val();var container=$('#provider_more_info');$.getJSON("/_ajax/speedtest.php?action=provider&id="+merchant+"&exchange="+user_data.location_data.exchange_id+"&connection_type="+user_data.connection_type,function(data){$('.info_total_tests span').empty().append(data.speedtest_stats.tests);$('.info_average_speed span').empty().append(data.speedtest_stats.download_speed+'Mb');$('.info_fastest_recorded span').empty().append(data.speedtest_stats.fastest+'Mb');$('.more_info_stats img').remove();$('.more_info_stats').prepend($.image({src:data.images.merchant_logo.IMAGE_URL,width:60,height:50,alt:data.name,mode:$.image.EXPAND}));$('.more_info_text h4').empty().append('About '+data.name);$('.more_info_text > div').empty().append(data.text);});$(this).fancybox({'width':583,'height':343,'onStart':function(){$('.product_info.product, #provider_more_info').show();overlay_height=$('#fancy_overlay').height()+'px';pageTracker._trackPageview("/speedtest/results/summary/more_info/");},'onComplete':function(){addCloseText();Cufon.replace('#fancy_content .top10font');var in_progress=false;},'onClosed':function(){$('.info_total_tests span').empty();$('.info_average_speed span').empty();$('.info_fastest_recorded span').empty();$('.info_stats img').remove();$('.more_info_text h4').empty();$('.#more_info_text > div').empty();$('#provider_more_info').hide();}})}
function availabilityBox(){var sc=0;$.ajax({url:"/_ajax/speedtest.php",data:'action=providers_availability&availability='+skc_data,dataType:"json",success:function(ajax_response){$.each(ajax_response,function(k,v){if(k==50){sc=2;if(v.length>0){$('#broadband_availability li').eq(sc).find('.cross_icon').removeClass('cross_icon').addClass('tick_icon');}}
if(k==24){sc=1;if(v.length>0){$('#broadband_availability li').eq(sc).find('.cross_icon').removeClass('cross_icon').addClass('tick_icon');}}
if(k==8){sc=0;if(v.length>0){$('#broadband_availability li').eq(sc).find('.cross_icon').removeClass('cross_icon').addClass('tick_icon');}}
var punct=',';for(i=0;i<v.length;i++){if(i==v.length-1){punct='.';}
$('#broadband_availability li').eq(sc).find('p.list').show().append(' <a href="/_ajax/speedtest.php?action=products&provider='+v[i].provider_id+'&menu_id='+menu_id+'">'+v[i].provider_name+'</a>'+punct).end().find('p.na').hide().end().find('a').providerFancybox();}});}});}
function getResultsData(){var t=0;var prov_speeds=[0];$('#results_comparison > *').css('visibility','hidden');$.getJSON('/_ajax/speedtest.php/?action=providers&lat='+user_latlng.y+'&lon='+user_latlng.x+'&connection_type='+user_data.connection_type+'&availability='+skc_data,function(ajax_response){if(ajax_response.tests!=0&&typeof ajax_response.exchange=='object'){$('#results_summary #result_subtitle').html('Based on '+ajax_response.tests+' speed tests from the '+ajax_response.exchange.exchange_name+' telephone exchange.');user_data.location_data.exchange_id=ajax_response.exchange.exchange_id;}
$.each(ajax_response.providers,function(k,v){var dw=Math.round(v.speedtest_stats.download_speed*10)/10;var up=Math.round(v.speedtest_stats.upload_speed*10)/10;var download_data=dw+'Mb';var more_info_data='<a href="#provider_more_info" class="test_stats">more info</a><input type="hidden" value="'+v.id+'" class="provider_id" />'
if(typeof v.images.merchant_logo=='object'){var provider_logo=$.image({src:v.images.merchant_logo.IMAGE_URL,width:65,height:39,alt:v.name,mode:$.image.EXPAND});}
else{var provider_logo='<span class="text_only_logo">'+v.name+'</span>';}
var upload_data=Math.round(v.speedtest_stats.upload_speed*10)/10+'Mb';var average_label='average speed';if(v.speedtest_stats.tests==0){download_data='-';upload_data='-';}
$('#results_comparison_list').append('<li><div class="provider_row">'+provider_logo+'</div><div class="download_speed"><span>'+download_data+'<p class="average_label">Avg. of '+v.speedtest_stats.tests+' tests '+more_info_data+'</p></span></div><div class="upload_speed">'+upload_data+'</div><div class="action"><span class="price">'+v.name+'<br />from &#163;'+v.from_price+'</span><a class="new_button red_big" href="/_ajax/speedtest.php?action=products&provider='+v.id+'&menu_id='+menu_id+'"><span>'+SPEEDTEST_RESULTS_DEALS_LINK+'</span></a></li>');$('#timetrials_header #provider_logos #sliding_content').append('<div class="provider_logo">'+provider_logo+'<p class="average_label">Avg. of '+v.speedtest_stats.tests+' tests</p></div>');$('#timetrials_results #tt_scrolling_window').append('<div class="column_holder"><h4></h4><ul><li><p>'+calcTime(email,dw)+'</p></li><li><p>'+calcTime(software,dw)+'</p></li><li><p>'+calcTime(album,dw)+'</p></li><li>'+calcTime(movie,dw)+'</li></ul><h4></h4><ul><li><p>'+calcTime(youtube,dw)+'</p></li><li><p>'+calcTime(photos,dw)+'</p></li></ul><h4></h4><ul><li class="download_speed"><p>'+dw+'Mb</p></li><li class="upload_speed"><div></div><p class="upload_speed_big_grey">'+dw+'Mb</p></li></ul><div class="action"><span class="price">'+v.name+'<br />from &#163;'+v.from_price+'</span><a class="new_button red_big" href="/_ajax/speedtest.php?action=products&provider='+v.id+'&menu_id='+menu_id+'"><span>'+SPEEDTEST_RESULTS_DEALS_LINK+'</span></a></div></div>');prov_speeds[t]=Math.round(v.speedtest_stats.download_speed*10)/10;t++;if(t%6==0){$('.slide_indicator').append('<li></li>');}
$('table#fastest_providers tbody').updateSpeedmapsTable(v,t);});$('#results_comparison_box #results_scale, #results_comparison_box ul, #results_comparison_box .slide_indicator, #results_comparison_box #table_nav, #results_comparison_box .dr_broadband_compare').css('visibility','visible');plotBars(prov_speeds);$('#results_comparison > *').css('visibility','visible');$('#results_summary .loading_overlay').remove();});}
function resultsComparisonPagination(){var slides=$('#results_comparison_box #speedbars > li').length/6;var current_slide=1;var shift=0;$('#results_comparison_box .slide_indicator').empty().append('<li class="lit first"></li>');$('#results_summary #table_nav li').click(function(){if($(this).is('.next')){slideResultNext()}
else{slideResultPrev();}
$('#results_comparison_list').animate({left:shift},380,function(){});$('#results_comparison_box #speed_bars').animate({left:shift},380,'swing',function(){});});function slideResultNext(){current_slide++;shift=shift-655;$('#results_summary .slide_indicator .lit').removeClass('lit').next().addClass('lit');if(current_slide>slides){$('#results_summary #table_nav li.next').hide();$('#results_summary #table_nav li.prev').show();}
pageTracker._trackPageview("/speedtest/results/summary/provider/more/");}
function slideResultPrev(){current_slide--;shift=shift+655;$('#results_summary .slide_indicator .lit').removeClass('lit').prev().addClass('lit');if(current_slide==1){$('#results_summary #table_nav li.next').show();$('#results_summary #table_nav li.prev').hide();}
pageTracker._trackPageview("/speedtest/results/summary/provider/previous/");}}
function resultsTimeTrialsPagination(){var slides=$('#results_timetrials #tt_scrolling_window > div').length/6;var current_slide=1;var shift=0;$('#results_timetrials .slide_indicator').empty().append('<li class="lit first"></li>');$('#results_timetrials #table_nav li').click(function(){if($(this).is('.next')){current_slide++;shift=shift-636;$('#results_timetrials .slide_indicator .lit').removeClass('lit').next().addClass('lit');if(current_slide>slides){$('#results_timetrials #table_nav li.next').hide();$('#results_timetrials #table_nav li.prev').show();}}
else{current_slide--;shift=shift+636;$('#results_timetrials .slide_indicator .lit').removeClass('lit').prev().addClass('lit');if(current_slide==1){$('#results_timetrials #table_nav li.next').show();$('#results_timetrials #table_nav li.prev').hide();}}
$('#tt_scrolling_window').animate({left:shift},380,function(){});$('#provider_logos #sliding_content').animate({left:shift},380,function(){});return false;});}
$.fn.updateSpeedmapsTable=function(v,i){if(i<=10){cells=this.find('.provider_'+i+'');if(i==1){cells.eq(0).html('<span class="number_one">'+i+'</span>');}else{cells.eq(0).html(i);}
cells.eq(1).html('<a href="/_ajax/speedtest.php?action=products&provider='+v.id+'&menu_id='+menu_id+'">'+v.name+'</a>');cells.eq(2).html('<span class="down_arrow"></span> '+Math.round(v.speedtest_stats.download_speed*10)/10+'Mb');cells.eq(3).html('<span class="up_arrow"></span> '+Math.round(v.speedtest_stats.upload_speed*10)/10+'Mb');}}
function retrieveTest(down,up,skcid){skc_data=skcid;down_speed=Math.round(down*10)/10;up_speed=Math.round(up*10)/10;initMaps();$('#results_page .intro h2').empty().append(SPEEDTEST_RESULTS_PAGE_HEADER);Cufon.replace('#results_page .intro h2');$('#steps_wrapper').css('height','auto');$('.terms').removeClass('setup_screen');$('#test_holder').empty().append('<div id="test_flash"></div>');resultProvider(down_speed,up_speed);getResultsData();resultRatings();getProductTable('/_ajax/speedtest.php?action=products&menu_id='+menu_id+'&availability='+skc_data+'&sort='+ptable_sort,ptable_sort);availabilityBox();pageTracker._trackPageview("/speedtest/results/summary/");nextPage('#results',true);$('#results_page').fadeIn();$('.speedmap_promo .download_header span').empty().append(down_speed+'Mb');$('.speedmap_promo .upload_header span').empty().append(up_speed+'Mb');$('.speedmap_promo .provider_header p span').empty();if(user_data.provider_data.name!=null){var p_name=user_data.provider_data.name;}
else{var p_name='Uknown';}
setProviderName(p_name);}
function setProviderName(prov_name){if(prov_name.length>8){var split_name=prov_name.split(" ");var processed_name='';if(split_name.length>1&&prov_name.length>13){var name_size=26-(prov_name.length-11);for(i=0;i<2;i++){processed_name=processed_name+split_name[i]+'<br />';}
prov_name=processed_name;}
else{var name_size=26-(user_data.provider_data.name.length-9);}
$('.speedmap_promo .provider_header p span').css('font-size',name_size);}
$('.speedmap_promo .provider_header p span').html(prov_name);if(user_data.provider_data.id!=0){$('.speedmap_promo .provider_header').find('img').remove().end().prepend($.image({src:user_data.provider_data.image_url,width:60,height:50,alt:user_data.provider_data.name,mode:$.image.EXPAND}));}
Cufon.replace('.speedmap_promo .header_info');}
function getUrlVars()
{var vars=[],hash;var hashes=window.location.href.slice(window.location.href.indexOf('?')+1).split('&');for(var i=0;i<hashes.length;i++)
{hash=hashes[i].split('=');vars.push(hash[0]);vars[hash[0]]=hash[1];}
return vars;}
function detectProviders(){if(getUrlVars()["force_ip"]){var test_ip='force_ip='+getUrlVars()["force_ip"];}
else{test_ip='';}
$('#setup .column li.provider').remove();$('.change_provider').hide();var nmerchants=0;$.ajax({url:"/_ajax/speedtest.php?action=detect_provider",data:test_ip,dataType:"json",success:function(ajax_response){geo_isp_id=ajax_response.GEOIP_ISP_ID;if(ajax_response.GEOIP_MERCHANTS){$.each(ajax_response.GEOIP_MERCHANTS,function(k,v){$.each(v.isp_connection_types,function(kk,vv){if(kk==1){home_type=1}
if(kk==2){mobile_type=1}
if(kk==3){business_type=1}});nmerchants++;if(v.IMAGE_URL!=null){var prov_image=$.image({src:v.IMAGE_URL,width:80,height:50,alt:user_data.provider_data.name,mode:$.image.EXPAND})
var image_url=v.IMAGE_URL;}
else{var prov_image='<h4>'+v.MERCHANT_NAME+'</h4>';var image_url='/_img/0.gif';}
$('.column.provider ul').prepend('<li class="provider">'+prov_image+'<input type="hidden" class="id" value="'+v.MERCHANT_ID+'" /><input type="hidden" class="name" value="'+v.MERCHANT_NAME+'" /><input type="hidden" class="image_url" value="'+image_url+'" /><input type="hidden" class="connection_type" value="'+v.isp_connection_types.CONNECTION_TYPE_ID+'" /></li>');});$('.none_detected').hide();$('.change_provider').show();}
else{$('.column.provider li').show().removeClass('hover');$('.change_provider').hide();}
if(home_type==1||mobile_type==1||business_type==1){$('.column.connection .detected_connection').show();$('.column.connection .undetected_connection').hide();if(home_type==1){$('.column.connection .detected_connection:not(.edited)').append(' home broadband').addClass('edited');}
else if(mobile_type==1){$('.column.connection .detected_connection:not(.edited)').append(' mobile broadband').addClass('edited');}
else if(business_type==1){$('.column.connection .detected_connection:not(.edited)').append(' business broadband').addClass('edited');}}}});if(nmerchants==1){$('#setup.detected_single .provider').addClass('hover').completeChoice();user_data.provider_data.id=$('.provider .provider.complete .id').val();user_data.provider_data.name=$('.provider .provider.complete .name').val();user_data.provider_data.image_url=$('.provider .provider.complete .image_url').val();var detected_from_server=true;$('#setup').addClass('detected').addClass('detected_single');}
else if(nmerchants>1){var detected_from_server=true;$('#setup').addClass('detected');}
else{chooseOtherProvider();}}
function chooseOtherProvider(){$('#setup .column li.provider').remove();$('#setup .rating').addClass('disabled');Cufon.replace('.rating .sifr');$('#setup .provider').removeClass('selected complete').find('.complete_badge').remove();$('.chosen_provider').remove();$('select#provider').empty().append('<option label="Select provider">Select Provider</option>');$.ajax({url:"/_ajax/speedtest.php",data:'action=providers_list&connection_type='+user_data.connection_type,dataType:"json",success:function(ajax_response){$.each(ajax_response,function(k,v){$('select#provider').append('<optgroup label="'+k+'">');$.each(v,function(kk,vv){$('select#provider').append('<option value=\"'+kk+'\" label=\"'+vv+'\">'+vv+'</option>');});$('select#provider').append('</optgroup>');});}});$('select#provider').change(function(){user_data.provider_data.id=$(this).val();$(this).parent().parent().find('li').addClass('faded').removeClass('complete').removeClass('hover');$(this).parent().addClass('selected').removeClass('faded').find('.tooltip').hide();$(this).parent().completeChoice();$('li.provider').addClass('complete');$('#setup .rating').removeClass('disabled');Cufon.replace('.rating .sifr');user_data.provider_data.id=$('#setup .provider select').val();getProviderData(user_data.provider_data.id);});}