if(jQuery)(function(jQuery){jQuery.extend(jQuery.fn,{uploadify:function(options){jQuery(this).each(function(){settings=jQuery.extend({id:jQuery(this).attr('id'),uploader:'uploadify.swf',script:'uploadify.php',expressInstall:null,folder:'',height:30,width:110,cancelImg:'cancel.png',wmode:'opaque',scriptAccess:'sameDomain',fileDataName:'Filedata',method:'POST',queueSizeLimit:999,simUploadLimit:1,queueID:false,displayData:'percentage',onInit:function(){},onSelect:function(){},onQueueFull:function(){},onCheck:function(){},onCancel:function(){},onError:function(){},onProgress:function(){},onComplete:function(){},onAllComplete:function(){}},options);var pagePath=location.pathname;pagePath=pagePath.split('/');pagePath.pop();pagePath=pagePath.join('/')+'/';var data={};data.uploadifyID=settings.id;data.pagepath=pagePath;if(settings.buttonImg)data.buttonImg=escape(settings.buttonImg);if(settings.buttonText)data.buttonText=escape(settings.buttonText);if(settings.rollover)data.rollover=true;data.script=settings.script;data.folder=escape(settings.folder);if(settings.scriptData){var scriptDataString='';for(var name in settings.scriptData){scriptDataString+='&'+name+'='+settings.scriptData[name];}
data.scriptData=escape(scriptDataString.substr(1));}
data.width=settings.width;data.height=settings.height;data.wmode=settings.wmode;data.method=settings.method;data.queueSizeLimit=settings.queueSizeLimit;data.simUploadLimit=settings.simUploadLimit;if(settings.hideButton)data.hideButton=true;if(settings.fileDesc)data.fileDesc=settings.fileDesc;if(settings.fileExt)data.fileExt=settings.fileExt;if(settings.multi)data.multi=true;if(settings.auto)data.auto=true;if(settings.sizeLimit)data.sizeLimit=settings.sizeLimit;if(settings.checkScript)data.checkScript=settings.checkScript;if(settings.fileDataName)data.fileDataName=settings.fileDataName;if(settings.queueID)data.queueID=settings.queueID;if(settings.onInit()!==false){jQuery(this).css('display','none');jQuery(this).after('<div id="'+jQuery(this).attr('id')+'Uploader"></div>');swfobject.embedSWF(settings.uploader,settings.id+'Uploader',settings.width,settings.height,'9.0.24',settings.expressInstall,data,{'quality':'high','wmode':settings.wmode,'allowScriptAccess':settings.scriptAccess});if(settings.queueID==false){jQuery("#"+jQuery(this).attr('id')+"Uploader").after('<div id="'+jQuery(this).attr('id')+'Queue" class="uploadifyQueue"></div>');}}
if(typeof(settings.onOpen)=='function'){jQuery(this).bind("uploadifyOpen",settings.onOpen);}
jQuery(this).bind("uploadifySelect",{'action':settings.onSelect,'queueID':settings.queueID},function(event,ID,fileObj){if(event.data.action(event,ID,fileObj)!==false){var byteSize=Math.round(fileObj.size/1024*100)*.01;var suffix='KB';if(byteSize>1000){byteSize=Math.round(byteSize*.001*100)*.01;suffix='MB';}
var sizeParts=byteSize.toString().split('.');if(sizeParts.length>1){byteSize=sizeParts[0]+'.'+sizeParts[1].substr(0,2);}else{byteSize=sizeParts[0];}
if(fileObj.name.length>20){fileName=fileObj.name.substr(0,20)+'...';}else{fileName=fileObj.name;}
queue='#'+jQuery(this).attr('id')+'Queue';if(event.data.queueID){queue='#'+event.data.queueID;}
jQuery(queue).append('<div id="'+jQuery(this).attr('id')+ID+'" class="uploadifyQueueItem">\
        <div class="cancel">\
         <a href="javascript:jQuery(\'#'+jQuery(this).attr('id')+'\').uploadifyCancel(\''+ID+'\')"><img src="'+settings.cancelImg+'" border="0" /></a>\
        </div>\
        <span class="fileName">'+fileName+' ('+byteSize+suffix+')</span><span class="percentage"></span>\
        <div class="uploadifyProgress">\
         <div id="'+jQuery(this).attr('id')+ID+'ProgressBar" class="uploadifyProgressBar"><!--Progress Bar--></div>\
        </div>\
       </div>');}});if(typeof(settings.onSelectOnce)=='function'){jQuery(this).bind("uploadifySelectOnce",settings.onSelectOnce);}
jQuery(this).bind("uploadifyQueueFull",{'action':settings.onQueueFull},function(event,queueSizeLimit){if(event.data.action(event,queueSizeLimit)!==false){alert('The queue is full.  The max size is '+queueSizeLimit+'.');}});jQuery(this).bind("uploadifyCheckExist",{'action':settings.onCheck},function(event,checkScript,fileQueueObj,folder,single){var postData=new Object();postData=fileQueueObj;postData.folder=pagePath+folder;if(single){for(var ID in fileQueueObj){var singleFileID=ID;}}
jQuery.post(checkScript,postData,function(data){for(var key in data){if(event.data.action(event,checkScript,fileQueueObj,folder,single)!==false){var replaceFile=confirm("Do you want to replace the file "+data[key]+"?");if(!replaceFile){document.getElementById(jQuery(event.target).attr('id')+'Uploader').cancelFileUpload(key,true,true);}}}
if(single){document.getElementById(jQuery(event.target).attr('id')+'Uploader').startFileUpload(singleFileID,true);}else{document.getElementById(jQuery(event.target).attr('id')+'Uploader').startFileUpload(null,true);}},"json");});jQuery(this).bind("uploadifyCancel",{'action':settings.onCancel},function(event,ID,fileObj,data,clearFast){if(event.data.action(event,ID,fileObj,data,clearFast)!==false){var fadeSpeed=(clearFast==true)?0:250;jQuery("#"+jQuery(this).attr('id')+ID).fadeOut(fadeSpeed,function(){jQuery(this).remove()});}});if(typeof(settings.onClearQueue)=='function'){jQuery(this).bind("uploadifyClearQueue",settings.onClearQueue);}
var errorArray=[];jQuery(this).bind("uploadifyError",{'action':settings.onError},function(event,ID,fileObj,errorObj){if(event.data.action(event,ID,fileObj,errorObj)!==false){var fileArray=new Array(ID,fileObj,errorObj);errorArray.push(fileArray);jQuery("#"+jQuery(this).attr('id')+ID+" .percentage").text(" - "+errorObj.type+" Error");jQuery("#"+jQuery(this).attr('id')+ID).addClass('uploadifyError');}});jQuery(this).bind("uploadifyProgress",{'action':settings.onProgress,'toDisplay':settings.displayData},function(event,ID,fileObj,data){if(event.data.action(event,ID,fileObj,data)!==false){jQuery("#"+jQuery(this).attr('id')+ID+"ProgressBar").css('width',data.percentage+'%');if(event.data.toDisplay=='percentage')displayData=' - '+data.percentage+'%';if(event.data.toDisplay=='speed')displayData=' - '+data.speed+'KB/s';if(event.data.toDisplay==null)displayData=' ';jQuery("#"+jQuery(this).attr('id')+ID+" .percentage").text(displayData);}});jQuery(this).bind("uploadifyComplete",{'action':settings.onComplete},function(event,ID,fileObj,response,data){if(event.data.action(event,ID,fileObj,unescape(response),data)!==false){jQuery("#"+jQuery(this).attr('id')+ID+" .percentage").text(' - Completed');jQuery("#"+jQuery(this).attr('id')+ID).fadeOut(250,function(){jQuery(this).remove()});}});if(typeof(settings.onAllComplete)=='function'){jQuery(this).bind("uploadifyAllComplete",{'action':settings.onAllComplete},function(event,uploadObj){if(event.data.action(event,uploadObj)!==false){errorArray=[];}});}});},uploadifySettings:function(settingName,settingValue,resetObject){var returnValue=false;jQuery(this).each(function(){if(settingName=='scriptData'&&settingValue!=null){if(resetObject){var scriptData=settingValue;}else{var scriptData=jQuery.extend(settings.scriptData,settingValue);}
var scriptDataString='';for(var name in scriptData){scriptDataString+='&'+name+'='+escape(scriptData[name]);}
settingValue=scriptDataString.substr(1);}
returnValue=document.getElementById(jQuery(this).attr('id')+'Uploader').updateSettings(settingName,settingValue);});if(settingValue==null){if(settingName=='scriptData'){var returnSplit=unescape(returnValue).split('&');var returnObj=new Object();for(var i=0;i<returnSplit.length;i++){var iSplit=returnSplit[i].split('=');returnObj[iSplit[0]]=iSplit[1];}
returnValue=returnObj;}
return returnValue;}},uploadifyUpload:function(ID){jQuery(this).each(function(){document.getElementById(jQuery(this).attr('id')+'Uploader').startFileUpload(ID,false);});},uploadifyCancel:function(ID){jQuery(this).each(function(){document.getElementById(jQuery(this).attr('id')+'Uploader').cancelFileUpload(ID,true,false);});},uploadifyClearQueue:function(){jQuery(this).each(function(){document.getElementById(jQuery(this).attr('id')+'Uploader').clearFileUploadQueue(false);});}})})(jQuery);Routes=window.Routes||{}
Routes.Show={init:function(metric,flashvars){var self=this;$(function(){Map.metric=metric;Map.movieId='viewport';var params={allowFullScreen:'true',allowScriptAccess:'always',wmode:'transparent',bgcolor:'#FFFFFF',menu:'false',flashvars:flashvars};swfobject.embedSWF('/routeViewer.swf?2000000068',Map.movieId,'100%','100%','9.0.0',false,false,params,{});$('#sidebar_tabs a, #overview_tabs a').click(function(){var divToShow="#"+$(this).attr('id').replace('_tab','');if($(divToShow).css('display')=='none'){var supercontainer=$(this).parent().parent().parent();if($(supercontainer).attr('id')=='sidebar_tabs'){$('.sidebar_page').hide();$('#sidebar_tabs a').removeClass('active');}else if($(supercontainer).attr('id')=='overview_tabs'){$('.overview_tab_page').hide();$('#overview_tabs a').removeClass('active');}
$(this).addClass('active');$(divToShow).show();}
return false;});$('#playback_settings_toggle').hoverIntent(function(){if($('#playback_container:animated').length==0){if($(this).hasClass('toggled')){$(this).removeClass('toggled');$('#playback_container').animate({height:'75px'},300);}else{$(this).addClass('toggled');$('#playback_container').animate({height:'150px'},300);}}},function(){});$('#playback_settings :checkbox').click(function(){var prefName=$(this).attr('id');var val=$(this).attr('checked');self.setPlaybackPreference(prefName.replace(/^playback_/,''),val)
Application.setPreference(prefName,val,true);});$("#elapsed_time_slider").slider({min:0,max:100,slide:function(event,ui){self.setPlaybackPercentage(ui.value);}});var values=[1,1.5,2,2.5,3,4,5,6,7,8,9,10,13,16,19,23,27,32,36,41,47,52,58,65,72,79,86,94,102,110,119,128,137,146,156,167,177,188,200];$("#playback_speed_slider").slider({min:0,max:values.length-1,value:17,slide:function(event,ui){$('#playback_speed_label').html(values[ui.value]+'x');Map.movie().setPlaybackSpeed(values[ui.value]/20);}});$('.histogram_image_link').click(function(){$('.histogram_image_url').toggle("fast");return false;});$('.static_image_link').click(function(){$('.static_image_url').toggle("fast");return false;});$('.embed_code').hide();$('.embed_link').click(function(){$('.embed_code').toggle("fast");return false;});$('.email_share_link').click(function(){$('.email_code').toggle("fast");return false;});$('#email_share_form').submit(function(){$(this).ajaxSubmit({type:'post',dataType:'json',success:function(response){if(response.success>0){$.jGrowl(response.message,{life:5000});}else{$.jGrowl(response.message,{sticky:true});}},error:function(request,txt_status,error){$.jGrowl("Something went wrong: "+txt_status+", "+error+".  Contact us if this problem persists",{sticky:true});}});return false;});$("#email_share_text").bind("keydown",function(e){if(e.keyCode==13){$('#email_share_form').submit();return false;}});$('a.save_link').click(function(){$li=$(this).closest('li');$.post($(this).attr('href'),function(){$li.hide('fast');});return false;});$('.toggle_overlay').click(function(){var $this=$(this);if($this.is(':checked')){Map.movie().enableOverlay($this.val());}else{Map.movie().disableOverlay($this.val());}
return false;});$('.opt_3d').hide();$('#threeD_toggle').click(function(){if(!$(this).hasClass('toggled')){Map.movie().enable3dMode();$(this).addClass('toggled');$('.opt_3d').show();}else{Map.movie().disable3dMode()
$(this).removeClass('toggled');$('.opt_3d').hide();}
return false;});$('#play_pause_btn').click(function(){if(!$(this).hasClass('playing')){Map.movie().startPlayback()
$(this).addClass('playing');}else{Map.movie().pause()
$(this).removeClass('playing');}
return false;})
$('#stop_btn').click(function(){Map.movie().stopPlayback();$('#play_pause_btn').removeClass('playing');return false;});$('#comment_form #new_comment').focus(function(){$(this).attr('rows','3');$(this).html('');$(this).css('color','#000');$('#comment_form .button').fadeIn();}).blur(function(){if($('#new_comment').val()==''){$(this).attr('rows','1');$(this).html('Add your comment');$('#comment_form .button').slideUp();$(this).css('color','#999');}})
Map.resizeMap();$(window).resize(function(){Map.resizeMap();});Comments.init('#comment_form');$('#opt_enable_interpolation').click(function(){Application.setPreference('route_viewer_enable_interpolation',this.checked,true);})
$('#opt_enable_crosshairs').click(function(){Application.setPreference('route_viewer_enable_crosshairs',this.checked,true);})
$('#opt_enable_scrollwheel_zoom').click(function(){Application.setPreference('route_viewer_enable_scrollwheel_zoom',this.checked,true);})
$('#opt_enable_keyboard_shortcuts').click(function(){Application.setPreference('route_viewer_enable_keyboard_shortcuts',this.checked,true);})
$('#opt_enable_distance_markers').click(function(){Application.setPreference('route_viewer_enable_distance_markers',this.checked,true);})
$('#overview_tab').click(function(){Application.setPreference('route_viewer_active_tab','overview',true);});$('#metrics_tab').click(function(){Application.setPreference('route_viewer_active_tab','metrics',true);});$('#comments_content_tab').click(function(){Application.setPreference('route_viewer_active_subtab','comments',true);});$('#share_tab').click(function(){Application.setPreference('route_viewer_active_subtab','share',true);});$('#export_tab').click(function(){Application.setPreference('route_viewer_active_subtab','export',true);});$('#options_toggle').click(function(){Application.setPreference('route_viewer_options_opened',$(this).hasClass('contracted')?false:true,true);})
$('.set_option').click(function(){var $this=$(this);if($this.is(':checked')){Map.movie().setOption($this.val(),true);}else{Map.movie().setOption($this.val(),false);}});var profiles={printWindow:{height:500,width:660,center:1,scrollbars:1}};$(".popupwindow").popupwindow(profiles);$('.edit_photos').click(function(){$('p.caption').toggle();$('.photo_form').toggle();});});},photos_file_ids:[],initPhotosUpload:function(asset_type,asset_id,authenticity_token,session_key_name,session_key_value){$('#upload_photos_file_ids').val(Routes.Show.photos_file_ids.join(','));$(function(){var uploadifyOpts={'uploader':'/uploadify.swf','script':'/upload/photos','cancelImg':'/images/cancel.png','scriptData':{authenticity_token:encodeURIComponent(authenticity_token),parent_type:asset_type,parent_id:asset_id},'multi':true,'auto':true,'buttonText':'ADD PHOTOS','onComplete':function(e,qid,fileobj,response){var data=eval('('+response+')');Routes.Show.photos_file_ids.push(data);$('#upload_photos_file_ids').val(Routes.Show.photos_file_ids.join(','));$('#photos_uploaded').show().find(".items").append("<div id='uploaded_data_file_"+data+"'>"+'<img src="/photos/small/'+data+'.jpg" /><br />'+'<textarea name="photos['+data+'][caption]" rows="1" style="width:190px"></textarea>'+"</div>");}};uploadifyOpts.scriptData[session_key_name]=session_key_value;$("#photos_uploader").uploadify(uploadifyOpts);});},setPlaybackPercentage:function(pct){Map.movie().setPlaybackPercentage(pct);},setPlaybackPreference:function(setting,val){Map.movie().updatePlaybackSetting(setting,val);}};function playheadUpdated(time,min_time,max_time){var seconds=time-min_time;var pct=Math.round(100*seconds/(max_time-min_time));$("#elapsed_time_slider").slider('option','value',pct);var hours=Math.floor(seconds/3600);seconds-=hours*3600;var minutes=Math.floor(seconds/60);seconds-=minutes*60;$('#elapsed_time').html((hours<10?'0':'')+hours+':'+(minutes<10?'0':'')+minutes+':'+(seconds<10?'0':'')+seconds);}
Map={selectedId:null,metric:false,createMode:false,movieId:null,movie:function(){return $('#'+Map.movieId).get(0);},saveScreenshotResponse:function(response){response=$.evalJSON(response);if(response.status=="success"){$('#histo_image_gen_link').hide();$('#histo_image_container').show();$.jGrowl("Success!");}else{$.jGrowl("Something went wrong.  We have been notified of the issue and will resolve it as soon as possible.");}},triggerKeyDownCommand:function(){},resizeMap:function(){var offset=31;var wh=window.innerHeight?window.innerHeight-offset:$(window).height()-offset;$('.fullpage_left_col,.fullpage_right_col').height(wh);$('#map,#new_route_map').height(wh);if($('#save_route_form').length!=0){$('.fullpage_left_col,.fullpage_right_col').css('height',$(document).height()-offset);}
if($('#sidebar_pages').length!=0){if($('#playback_controller').length==0){$('#sidebar_pages').height(wh-35);}else{$('#sidebar_pages').height(wh-135);}}},speedLabel:function(value,label){var newVal=this.metric?value*1:value*0.621371192;return newVal.toFixed(1)+(label?(this.metric?" kph":" mph"):'');},longLabel:function(value,label){var newVal=this.metric?value*.001:value*0.000621371192;return newVal.toFixed(1)+(label?(label=='full'?(this.metric?' km':' miles'):(this.metric?" km":" mi")):'');},shortLabel:function(value,label){var newVal=this.metric?value:value*3.2808399;return Math.round(newVal)+(label?(label=='full'?(this.metric?' meters':' feet'):(this.metric?" m":" ft")):'');},toggleOverlay:function(self,type){if($(self).is(':checked'))
Map.movie().enableOverlay(type);else
Map.movie().disableOverlay(type);},gotoLocation:function(){var loc=$('#location').val();Map.movie().gotoLocation(loc);},setUnits:function(units){Map.movie().setUnits(units);},loadRouteWithCallback:function(path,activityId,callback){if(Map.movie()&&Map.movie().isMapReady&&Map.movie().isMapReady()){Map.movie().loadJsonRouteWithCallback(path,activityId,callback);}else{setTimeout("Map.loadRoute('"+path+"', '"+activityId+"', '"+callback+"')",200);}},loadRoute:function(path){if(Map.movie()&&Map.movie().isMapReady&&Map.movie().isMapReady()){Map.movie().loadJsonRoute(path);}else{setTimeout("Map.loadRoute('"+path+"')",200);}},clearMap:function(after_cb){if(Map.movie()&&Map.movie().isMapReady&&Map.movie().isMapReady()){Map.movie().clearMap();if(after_cb)after_cb();}else{setTimeout(function(){Map.clearMap(after_cb)},200);}},callWhenReady:function(fn){if(Map.movie()&&Map.movie().isMapReady&&(Map.movie().isMapReady()==true)){fn();}else{setTimeout(function(){Map.callWhenReady(fn);},100);}},geocodingResponse:function(response){if(response['details']!=null){if(response['details'].Country){$('#user_country_code').val(response['details'].Country.CountryNameCode);if(response['details'].Country.AdministrativeArea){var aa=response['details'].Country.AdministrativeArea;$('#user_administrative_area').val(aa.AdministrativeAreaName);if(aa.Locality){$('#user_locality').val(aa.Locality.LocalityName);}else if(aa.SubAdministrativeArea&&aa.SubAdministrativeArea.Locality){var l=aa.SubAdministrativeArea.Locality;$('#user_locality').val(l.LocalityName);if(l.PostalCode)
$('#user_postal_code').val(l.PostalCode.PostalCodeNumber);else
$('#user_postal_code').val('');}else{$('#user_locality').val('');}}else{$('#user_administrative_area').val('');}}else{$('#user_country_code').val('');}
$('#user_lat').val(response['lat']);$('#user_lng').val(response['lng']);$('#map').get(0).setCenterLatLng(response['lat'],response['lng']);}else{$('#search-error').text('We could not find '+response['location']+'.  Please modify the search and try again.');}}};Routes=window.Routes||{};function IE_likes_to_randomly_hide_the_map(){if($('#map').css('display')=='none'){$('#map').show();}
setTimeout('IE_likes_to_randomly_hide_the_map()',200);}
$(function(){var ie=!!(window['ActiveXObject']&&window['XMLHttpRequest']);if(ie&&$('#map').size()>0)IE_likes_to_randomly_hide_the_map();var input_has_focus=false;$(':text, :textarea').focus(function(){input_has_focus=true;}).blur(function(){input_has_focus=false;});$('#map').bind('mousewheel',function(event,delta){vel=Math.abs(delta);if(delta>0){Map.callWhenReady(function(){Map.movie().mousewheelZoomIn();});}else{Map.callWhenReady(function(){Map.movie().mousewheelZoomOut();});}
return false;});$(document).keydown(function(event){var key_shortcuts_enabled=$('#opt_enable_keyboard_shortcuts').attr('checked');if(!input_has_focus&&key_shortcuts_enabled){var key=event.keyCode||event.which;Map.callWhenReady(function(){Map.movie().triggerKeyDownCommand(key);});}});$('.toggle_buttons .button').click(function(){$this=$(this);$this.siblings().removeClass('toggled');if(!$this.hasClass('toggled'))$this.toggleClass('toggled');if($this.hasClass('directions')){Map.callWhenReady(function(){Map.movie().setDrawingMode('directions');});}else if($this.hasClass('polyline')){Map.callWhenReady(function(){Map.movie().setDrawingMode('polyline');});}else if($this.hasClass('cycling')){Map.callWhenReady(function(){Map.movie().walkingMode(true);});}else if($this.hasClass('driving')){Map.callWhenReady(function(){Map.movie().walkingMode(false);});}});$('#cue_sheet_preview tr').live('mouseover',function(){var $this=$(this);$('#cue_sheet_preview tr').css({'background-color':''});$this.css({'background-color':'#E7E7E7','cursor':'pointer'});Map.callWhenReady(function(){Map.movie().showCoursePointMarker($this.attr('id'));});}).live('mouseout',function(){var $this=$(this);$this.css({'background-color':''});Map.callWhenReady(function(){Map.movie().hideCoursePointMarker($this.attr('id'));});}).live('click',function(){var $this=$(this);Map.callWhenReady(function(){Map.movie().openCoursePointInfo($this.attr('id'));});$('#cue_sheet_preview tr').removeClass('openCoursePointInfo');$this.addClass('openCoursePointInfo');});});Routes.Common={pois:[],onMapCleared:function(){this.pois=[];},geocodeResult:function(countryCode,administrativeArea,locality,postalCode){var geo={country_code:countryCode,administrative_area:administrativeArea,locality:locality,postal_code:postalCode};$('#geodata').val($.toJSON(geo));},getRouteViewerOptions:function(){var optsArray=[];var i=0;$('#options input[type="checkbox"]').each(function(){optsArray[i]=$(this).val()+":"+$(this).attr('checked');i++;})
return optsArray;},populateCoursePoints:function(course_points,append){var $cuesheet_table=$('#cue_sheet_preview');if(!append)
$cuesheet_table.empty();if(course_points==null)
return;var len=$cuesheet_table.find('tr').length;for(var i=0;i<course_points.length;i++){$cuesheet_table.append(Routes.Common.createCoursePointRow(course_points[i],i+len));}},createCoursePointRow:function(cp,index){$('#start_drawing_for_cue_sheet').hide();var $row=$('<tr id="'+index+'" lat="'+cp['lat']+'" lng="'+cp['lng']+'"><td>'+
cp['notes']+'</td><td>'+Map.longLabel(cp['distance'],true)+'</td></tr>');return $row;},prevCoursePointInfo:function(prevCPI){$('#cue_sheet_preview tr').removeClass('openCoursePointInfo');$('#'+prevCPI).addClass('openCoursePointInfo');},nextCoursePointInfo:function(nextCPI){$('#cue_sheet_preview tr').removeClass('openCoursePointInfo');$('#'+nextCPI).addClass('openCoursePointInfo');},updateMetrics:function(metrics,zoomedIn){if(zoomedIn)
$('.hide_zoomed_out').show();else
$('.hide_zoomed_out').hide();if(metrics==null){metrics={distance:0,eleGain:0,eleLoss:0,maxCadence:0,minCadence:0,avgCadence:0,maxHeartRate:0,minHeartRate:0,avgHeartRate:0,maxSpeed:0,minSpeed:0,avgSpeed:0,minElevation:0,maxElevation:0,avgElevation:0,startElevation:0,endElevation:0,numPoints:0,maxGrade:0};}
$('.changesOnZoom').toggleClass('zoomed_in',zoomedIn);if(metrics.hasOwnProperty('avgCadence')){$("#maxCad").text(metrics.maxCadence+" rpm");$("#minCad").text(metrics.minCadence+" rpm");$("#avgCad").text(metrics.avgCadence+" rpm");}
if(metrics.hasOwnProperty('avgHeartRate')){$("#maxHr").text(metrics.maxHeartRate+" bpm");$("#minHr").text(metrics.minHeartRate+" bpm");$("#avgHr").text(metrics.avgHeartRate+" bpm");}
if(metrics.hasOwnProperty('avgSpeed')){$("#maxSpeed").text(Map.speedLabel(metrics.maxSpeed,true));$("#minSpeed").text(Map.speedLabel(metrics.minSpeed,true));$("#avgSpeed").text(Map.speedLabel(metrics.avgSpeed,true));}
if(metrics.hasOwnProperty('distance')){$(".txtDistance").text(Map.longLabel(metrics.distance,true));}
if(metrics.hasOwnProperty('eleGain')){$(".txtAscent").text(Map.shortLabel(metrics.eleGain,false));}
if(metrics.hasOwnProperty('eleLoss')&&!isNaN(metrics.eleLoss)){$(".txtDescent").text(Map.shortLabel(metrics.eleLoss,true));}
if(metrics.hasOwnProperty('duration')){$('#duration').text(metrics.duration);$('#movingTime').text(metrics.movingTime);$('#stoppedTime').text(metrics.stoppedTime);}
$('#txtTrackPoints').text(metrics.numPoints);$('#txtCoursePoints').text(metrics.numCoursePoints);if(metrics.hasOwnProperty('minElevation')&&!isNaN(metrics.minElevation))
$('#txtMinElevation').text(Map.shortLabel(metrics.minElevation,true));if(metrics.hasOwnProperty('maxElevation')&&!isNaN(metrics.maxElevation))
$('#txtMaxElevation').text(Map.shortLabel(metrics.maxElevation,true));if(metrics.hasOwnProperty('avgElevation')&&!isNaN(metrics.avgElevation))
$('#txtAvgElevation').text(Map.shortLabel(metrics.avgElevation,true));if(metrics.hasOwnProperty('startElevation')&&!isNaN(metrics.startElevation))
$('#txtStartElevation').text(Map.shortLabel(metrics.startElevation,true));if(metrics.hasOwnProperty('endElevation')&&!isNaN(metrics.endElevation))
$('#txtFinishElevation').text(Map.shortLabel(metrics.endElevation,true));if(metrics.hasOwnProperty('maxGrade')){$('#txtMaxGrade').text(metrics.maxGrade+" %");}else{$('#txtMaxGrade').text('0 %');}
if(metrics.hasOwnProperty('avgGrade')){$('#txtAvgGrade').text(metrics.avgGrade+" %");}else{$('#txtAvgGrade').text('0 %');}}};(function($){var types=['DOMMouseScroll','mousewheel'];$.event.special.mousewheel={setup:function(){if(this.addEventListener)
for(var i=types.length;i;)
this.addEventListener(types[--i],handler,false);else
this.onmousewheel=handler;},teardown:function(){if(this.removeEventListener)
for(var i=types.length;i;)
this.removeEventListener(types[--i],handler,false);else
this.onmousewheel=null;}};$.fn.extend({mousewheel:function(fn){return fn?this.bind("mousewheel",fn):this.trigger("mousewheel");},unmousewheel:function(fn){return this.unbind("mousewheel",fn);}});function handler(event){var args=[].slice.call(arguments,1),delta=0,returnValue=true;event=$.event.fix(event||window.event);event.type="mousewheel";if(event.wheelDelta)delta=event.wheelDelta/120;if(event.detail)delta=-event.detail/3;args.unshift(event,delta);return $.event.handle.apply(this,args);}})(jQuery);jQuery.fn.popupwindow=function(p)
{var profiles=p||{};return this.each(function(index){var settings,parameters,mysettings,b,a;mysettings=(jQuery(this).attr("rel")||"").split(",");settings={height:600,width:600,toolbar:0,scrollbars:0,status:0,resizable:1,left:0,top:0,center:0,createnew:1,location:0,menubar:0};if(mysettings.length==1&&mysettings[0].split(":").length==1)
{a=mysettings[0];if(typeof profiles[a]!="undefined")
{settings=jQuery.extend(settings,profiles[a]);}}
else
{for(var i=0;i<mysettings.length;i++)
{b=mysettings[i].split(":");if(typeof settings[b[0]]!="undefined"&&b.length==2)
{settings[b[0]]=b[1];}}}
if(settings.center==1)
{settings.top=(screen.height-(settings.height+110))/2;settings.left=(screen.width-settings.width)/2;}
parameters="location="+settings.location+",menubar="+settings.menubar+",height="+settings.height+",width="+settings.width+",toolbar="+settings.toolbar+",scrollbars="+settings.scrollbars+",status="+settings.status+",resizable="+settings.resizable+",left="+settings.left+",screenX="+settings.left+",top="+settings.top+",screenY="+settings.top;jQuery(this).bind("click",function(){var name=settings.createnew?"PopUpWindow"+index:"PopUpWindow";window.open(this.href,name,parameters).focus();return false;});});};$(function(){$('.fullpage_left_col').resizable({handles:'e',maxWidth:500,minWidth:240,resize:function(event,ui){$('#map').css('margin-left',ui.helper.width());}});$('.contracted').next('div').hide();window.collapse=function(side){$('#route_container').css('background','#FFF');var col=$('.fullpage_'+side+'_col');col.children('.collapse').removeClass('collapse').addClass('expand');if(side=='left'){$('#map').animate({marginLeft:0},"fast",function(){$('#route_container').css('background','#333');});}
if(side=='right'){$('#map').animate({marginRight:0},"fast");}
col.animate({width:"0"},"fast",function(){col.addClass('hidden_'+side+'_col');});col.children('#ds_v, #ds_vl').hide();return false;}
window.expand=function(side){var col=$('.fullpage_'+side+'_col');var width="250px";col.children('.expand').addClass('collapse').removeClass('expand');if(side=='left'){$('#map').animate({marginLeft:250},"fast",function(){col.children('#ds_v, #ds_vl').show();});}
if(side=='right'){$('#map').animate({marginRight:270},"fast",function(){col.children('#ds_v, #ds_vl').show();});width="270px";}
col.animate({width:width},"fast",function(){col.removeClass('hidden_'+side+'_col');});return false;}
window.toggleSidebars=function(side){var col=$('.fullpage_'+side+'_col');hidden_class_name='hidden_'+side+'_col';if(col.hasClass(hidden_class_name)){window.expand(side);}else{window.collapse(side);}}
$('.left.collapse').live("click",function(){collapse('left');Application.setPreference('route_planner_left_sidebar_closed',true,true);return false;});$('.right.collapse').live("click",function(){collapse('right');Application.setPreference('route_planner_right_sidebar_closed',true,true);return false;});$('.expand.left').live("click",function(){expand('left');Application.setPreference('route_planner_left_sidebar_closed',false,true);return false;});$('.expand.right').live("click",function(){expand('right');Application.setPreference('route_planner_right_sidebar_closed',false,true);return false;});$('.toggle_next').click(function(){$(this).toggleClass('contracted').next().slideToggle(400);});$('.toggle_all').click(function(){$(this).parents().eq(1).siblings('.toggle_next').click();});});