﻿var visibleRoutesScheduled = false;

function drawVisibleRoutesDiv(div){
    if(!visibleRoutesScheduled){
        visibleRoutesScheduled=true;
        setTimeout(function(){doDrawVisibleRoutesDiv(div);},50);
    }
}

function doDrawVisibleRoutesDiv(div){
    visibleRoutesScheduled = false;
    console.log("drawVisibleRoutesDiv");
    
    var shtml = '';
    
    if (routesResultSet.length == 0) {
		
		 shtml = "<div class='msgNoRoutesFound'>" + msgNoRoutesFound + "</div>  ";
	}else{
        
        for(var i=0;i<visibleRoutes.length;i++){
            if(visibleRoutes[i].id!=null){
                shtml+='<div class="run"><div class="runName"><span class="runColor" style="background-color: ' + visibleRoutes[i].color + '">&nbsp;&nbsp;&nbsp;&nbsp;</span><h3>';
                var currouteid = routes[visibleRoutes[i].id + ''].id;
                if(visibleRoutes[i].id==null)
                    shtml+='&nbsp;';
                else
                    shtml+='<a href="ViewRun.aspx?RouteId=' + currouteid + '">' + routes[visibleRoutes[i].id + ''].name +'</a>';
                shtml+='</h3></div><div class="runInfo">';
                
               // shtml+=routes[visibleRoutes[i].id + ''].rating;
                // add rating icons only if rated.
               if(parseFloat(routes[visibleRoutes[i].id + ''].rating) > 0)
               {
                    shtml+='<span class="inline-rating"  id="StarRating_route_' + routes[visibleRoutes[i].id + ''].id + '">' +
					       '<ul class="star-rating small-star">' +
                           '<li class="current-rating" style="width: ' + parseFloat(routes[visibleRoutes[i].id + ''].rating) * 20 + '%;"' +
                           ' id="current_route_' + visibleRoutes[i].id + '">Avgrating is ' + parseFloat(routes[visibleRoutes[i].id + ''].rating) + ' Stars.</li>' + 
					       '</ul></span>';
    					   
					       //id="userRating_route_' + routes[visibleRoutes[i].id + ''].id  Not using this anymore..
                }
                shtml+='<small>' + routes[visibleRoutes[i].id + ''].displayDistance() + '</small></div></div>';
                shtml+='';
            }
        }
        
        shtml+="<div class='runspagination'>";
        
            
        //shtml+="<br />"+ gLbDisplayingRuns + " " + (routesResultSet.length<1?0:((visibleRoutesPage-1)*(visibleRoutes.length)+1)) + " " + gLbThrough + " " + ((visibleRoutesPage)*(visibleRoutes.length)>routesResultSet.length?routesResultSet.length:(visibleRoutesPage)*(visibleRoutes.length)) + " " + gLbOf + " " + routesResultSet.length + " " + gLbRuns;
        shtml+="<div class='totalruns'>"+ gLbDisplayingRuns + " " + (routesResultSet.length<1?0:((visibleRoutesPage-1)*(visibleRoutes.length)+1)) + "-" + ((visibleRoutesPage)*(visibleRoutes.length)>routesResultSet.length?routesResultSet.length:(visibleRoutesPage)*(visibleRoutes.length)) + " " + gLbOf + " " + routesResultSet.length + " " + gLbRuns + "</div>";


		if ( visibleRoutes.length <= ((visibleRoutesPage)*(visibleRoutes.length)>routesResultSet.length?routesResultSet.length:(visibleRoutesPage)*(visibleRoutes.length))  	 )  // if we need to paginate.. x-y of z. if (y  routesresultset.length)
		{
			if(visibleRoutesPage<=1)
				shtml+="<a class='prevruns inactive external'>"+gLbPrev+"</a>";
			else
				shtml+="<a href='#' onclick='setVisibleRoutesPage(visibleRoutesPage-1);return false;' class='prevruns external'>"+gLbPrev+"</a>";
			shtml+="  ";
			if(visibleRoutesPage*visibleRoutes.length>=routesResultSet.length)
				shtml+="<a class='nextruns inactive external'>"+gLbNext+"</a>";
			else
				shtml+="<a href='#' onclick='setVisibleRoutesPage(visibleRoutesPage+1);return false;' class='nextruns external'>"+gLbNext+"</a>";
        }    
          
        
        shtml+="</div>";
    }
    
    shtml+="<div id='moremapstuff'>";
    shtml+="<input type='checkbox' " + (arePicturePopupsDisplayed()?"checked='checked'":"") + " onclick='this.checked=togglePicturePopups();'> " + msgShowPhoto;
    shtml+="</div>";
    
    div.innerHTML = shtml;
    
    setTimeout(function() {if(adjustlinks) adjustlinks(); },1); //there are links to other islands inside of this div, so we have to fix them
}


