function drawMainMap() 
{
      if (GBrowserIsCompatible()) 
      {
        /*var overIcon = new GIcon();
        overIcon.image = "http://www.dublinpitchandputt.com/imageStore/clubs/logos/shandon128.png";
        overIcon.iconSize = new GSize(24, 32);
        //overIcon.shadowSize = new GSize(22, 20);
        overIcon.iconAnchor = new GPoint(6, 20);
        overIcon.infoWindowAnchor = new GPoint(6, 1);
        overIcon.infoShadowAnchor = new GPoint(13, 13);*/
        
        var map = new GMap2(document.getElementById("map_canvas")); 
        //var shandonMarker = new GMarker(new GLatLng(53.364856,-6.278858),{title:"Shandon Pitch and Putt Club",icon:overIcon});
        var shandonMarker = new GMarker(new GLatLng(53.364856,-6.278858),{title:"Shandon Pitch and Putt Club"});
        var ierneMarker = new GMarker(new GLatLng(53.367532,-6.247873),{title:"Ierne Pitch and Putt Club"});
        var cyMarker = new GMarker(new GLatLng(53.366661,-6.238732),{title:"CYMC/LC Pitch and Putt Club"});
        var erinsIsleMarker = new GMarker(new GLatLng(53.384096,-6.299672),{title:"Erins Isle Pitch and Putt Club"});
        var portmarnockMarker = new GMarker(new GLatLng(53.422372,-6.129829),{title:"Portmarnock Pitch and Putt Club"});
        var cpmMarker = new GMarker(new GLatLng(53.322581,-6.398764),{title:"CPM Pitch and Putt Club"});
        var rgscMarker = new GMarker(new GLatLng(53.299646,-6.415758),{title:"RGSC Pitch and Putt Club"});
        var lucanMarker = new GMarker(new GLatLng(53.331386,-6.453867),{title:"Lucan Pitch and Putt Club"});
        var glenvilleMarker = new GMarker(new GLatLng(53.271373,-6.360741),{title:"Glenville Pitch and Putt Club"});
        var guinnessMarker = new GMarker(new GLatLng(53.330098,-6.308035),{title:"Guinness Pitch and Putt Club"});
        var dcbsMarker = new GMarker(new GLatLng(53.346401,-6.390266),{title:"DCBS Pitch and Putt Club"});
        var loughlinstownMarker = new GMarker(new GLatLng(53.243492,-6.129684),{title:"Loughlinstown Pitch and Putt Club"});
        var oldcountyMarker = new GMarker(new GLatLng(53.314262,-6.308041),{title:"Old County Pitch and Putt Club"});
        var ringcommonMarker = new GMarker(new GLatLng(53.577066,-6.216288),{title:"Ring Common Pitch and Putt Club"});
        
        map.setCenter(new GLatLng(53.364856, -6.258945), 13);
        map.setZoom(10);
        
        map.addOverlay(shandonMarker);
        map.addOverlay(ierneMarker);
        map.addOverlay(cyMarker);
        map.addOverlay(erinsIsleMarker);
        map.addOverlay(portmarnockMarker);
        map.addOverlay(cpmMarker);
        map.addOverlay(rgscMarker);
        map.addOverlay(lucanMarker);
        map.addOverlay(glenvilleMarker);
        map.addOverlay(guinnessMarker);
        map.addOverlay(dcbsMarker);
        map.addOverlay(loughlinstownMarker);
        map.addOverlay(oldcountyMarker);
        map.addOverlay(ringcommonMarker);
        
        map.setUIToDefault();
      }
}

function LoadInstance(year,grade,comp,crumbTrail)
{
    var xmlHttp;
    
    document.getElementById('divLoading').style.display = 'block';
    document.getElementById('divHistory').style.display = 'none';
    document.getElementById('divInstances').style.display = 'none';
    
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
      // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e)
            {
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }
    
    xmlHttp.onreadystatechange=function()
    {
        if(xmlHttp.readyState==4)
        {
            document.getElementById("ctl00_divCrumbtrail").innerHTML += " > " + crumbTrail;
            document.getElementById("divCompetitionText").innerHTML = xmlHttp.responseText;
        }
    }
    
    xmlHttp.open("GET","InstanceBuilder.aspx?cid="+comp+"&sid="+year+"&gid="+grade+"&stamp="+Math.random(),true);
    xmlHttp.send(null);
}

function LoadLeagueInstance(year,grade,league,inst,crumbTrail)
{
    var xmlHttp;
    
    document.getElementById('divLoading').style.display = 'block';
    document.getElementById('divHistory').style.display = 'none';
    document.getElementById('divInstances').style.display = 'none';
    
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
      // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e)
            {
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }
    
    xmlHttp.onreadystatechange=function()
    {
        if(xmlHttp.readyState==4)
        {
            if(document.getElementById("ctl00_divCrumbtrail").innerHTML.indexOf(crumbTrail) < 0)
            {
                document.getElementById("ctl00_divCrumbtrail").innerHTML += " > " + crumbTrail;
            }
            document.getElementById("divCompetitionText").innerHTML = xmlHttp.responseText;
        }
    }
    
    xmlHttp.open("GET","LeagueInstanceBuilder.aspx?lid="+league+"&sid="+year+"&gid="+grade+"&iid="+inst+"&stamp="+Math.random(),true);
    xmlHttp.send(null);
}

function ChangeCompetitionTab(tabNum)
{
    if(tabNum == 1)
    {
        document.getElementById("tabLeaderboard").style.display = "block";
        document.getElementById("tabNews").style.display = "none";
        
        if(document.getElementById("tabTeeTimes") != null)  
            document.getElementById("tabTeeTimes").style.display = "none";  
        
        document.getElementById("tabLeaderboardTab").className = "floatingActiveTabForTabControls";
        document.getElementById("tabNewsTab").className = "floatingTabForTabControls";
        
        if(document.getElementById("tabTeeTimesTab") != null)  
            document.getElementById("tabTeeTimesTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 2)
    {
        document.getElementById("tabLeaderboard").style.display = "none";
        document.getElementById("tabNews").style.display = "block";
        
        if(document.getElementById("tabTeeTimes") != null)  
            document.getElementById("tabTeeTimes").style.display = "none"; 
            
        document.getElementById("tabLeaderboardTab").className = "floatingTabForTabControls";
        document.getElementById("tabNewsTab").className = "floatingActiveTabForTabControls";
        
        if(document.getElementById("tabTeeTimesTab") != null)  
            document.getElementById("tabTeeTimesTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 3)
    {
        document.getElementById("tabLeaderboard").style.display = "none";
        document.getElementById("tabNews").style.display = "none";
        
        if(document.getElementById("tabTeeTimes") != null)  
            document.getElementById("tabTeeTimes").style.display = "block"; 
            
        document.getElementById("tabLeaderboardTab").className = "floatingTabForTabControls";
        document.getElementById("tabNewsTab").className = "floatingTabForTabControls";
        
        if(document.getElementById("tabTeeTimesTab") != null)  
            document.getElementById("tabTeeTimesTab").className = "floatingActiveTabForTabControls";
    }
}

function ChangeLeagueTab(tabNum)
{
    if(tabNum == 1)
    {
        document.getElementById("tabTable").style.display = "block";
        document.getElementById("tabPhotos").style.display = "none";
        document.getElementById("tabFixtures").style.display = "none";
        document.getElementById("tabKnockoutStage").style.display = "none";
        
        document.getElementById("tabTableTab").className = "floatingActiveTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingTabForTabControls";
        document.getElementById("tabFixturesTab").className = "floatingTabForTabControls";
        document.getElementById("tabKnockoutTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 2)
    {
        document.getElementById("tabTable").style.display = "none";
        document.getElementById("tabPhotos").style.display = "none";
        document.getElementById("tabFixtures").style.display = "block";
        document.getElementById("tabKnockoutStage").style.display = "none";
        
        document.getElementById("tabTableTab").className = "floatingTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingTabForTabControls";
        document.getElementById("tabFixturesTab").className = "floatingActiveTabForTabControls";
        document.getElementById("tabKnockoutTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 3)
    {
        document.getElementById("tabTable").style.display = "none";
        document.getElementById("tabPhotos").style.display = "block";
        document.getElementById("tabFixtures").style.display = "none";
        document.getElementById("tabKnockoutStage").style.display = "none";
        
        document.getElementById("tabTableTab").className = "floatingTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingActiveTabForTabControls";
        document.getElementById("tabFixturesTab").className = "floatingTabForTabControls";
        document.getElementById("tabKnockoutTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 4)
    {
        document.getElementById("tabTable").style.display = "none";
        document.getElementById("tabPhotos").style.display = "none";
        document.getElementById("tabFixtures").style.display = "none";
        document.getElementById("tabKnockoutStage").style.display = "block";
        
        document.getElementById("tabTableTab").className = "floatingTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingTabForTabControls";
        document.getElementById("tabFixturesTab").className = "floatingTabForTabControls";
        document.getElementById("tabKnockoutTab").className = "floatingActiveTabForTabControls";
    }
}

function ChangeClubTab(tabNum)
{
    if(tabNum == 1)
    {
        document.getElementById("contentProfile").style.display = "block";
        document.getElementById("contentPhotos").style.display = "none";
        if(document.getElementById("contentCourse") != null)
        document.getElementById("contentCourse").style.display = "none";
        
        document.getElementById("tabProfileTab").className = "floatingActiveTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingTabForTabControls";
        if(document.getElementById("tabCourseTab") != null)
        document.getElementById("tabCourseTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 2)
    {
        document.getElementById("contentProfile").style.display = "none";
        document.getElementById("contentPhotos").style.display = "none";
        if(document.getElementById("contentCourse") != null)
        document.getElementById("contentCourse").style.display = "none";
        
        document.getElementById("tabProfileTab").className = "floatingTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingTabForTabControls";
        if(document.getElementById("tabCourseTab") != null)
        document.getElementById("tabCourseTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 3)
    {
        document.getElementById("contentProfile").style.display = "none";
        document.getElementById("contentPhotos").style.display = "block";
        
        if(document.getElementById("contentCourse") != null)
        document.getElementById("contentCourse").style.display = "none";
        
        document.getElementById("tabProfileTab").className = "floatingTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingActiveTabForTabControls";
        if(document.getElementById("tabCourseTab") != null)
        document.getElementById("tabCourseTab").className = "floatingTabForTabControls";
    }
    else if(tabNum == 4)
    {
        document.getElementById("contentProfile").style.display = "none";
        document.getElementById("contentPhotos").style.display = "none";
        if(document.getElementById("contentCourse") != null)
        document.getElementById("contentCourse").style.display = "block";
        
        document.getElementById("tabProfileTab").className = "floatingTabForTabControls";
        document.getElementById("tabPhotosTab").className = "floatingTabForTabControls";
        if(document.getElementById("tabCourseTab") != null)
        document.getElementById("tabCourseTab").className = "floatingActiveTabForTabControls";
    }
}

function activate(divName,iconName)
{
    document.getElementById(divName).style.backgroundImage = 'url(./images/menuIcons/inactiveLink.png)';
    document.getElementById(divName).style.backgroundColor = '#056bac';
    document.getElementById(divName).style.color = '#eaeaea';
    document.getElementById(divName).style.fontWeight = 'bold';
}

function deactivate(divName,iconName)
{
   if(divName != document.getElementById('ctl00_txtHiddenCurrentPage').value)
  {
   document.getElementById(divName).style.backgroundImage = 'url(./images/menuIcons/activeLink.png)';
   document.getElementById(divName).style.backgroundColor = '#eaeaea';
   document.getElementById(divName).style.color = '#056bac';
   document.getElementById(divName).style.fontWeight = 'bold';
    }
}

function openPage(page)
{
    document.location = page;
}

function getreg()
{
    $.ajax({ 
        type: "POST",               
        url: "json.aspx?fid=1",               
        contentType: "application/x-www-form-urlencoded",              
        data: "",          
        dataType: "text",              
        success: function(msg) { displayRegDataTable(msg); },               
        error: function() {$.modal("An Ajax error has occurred.")}         
     });
}

function getclubselectoptions()
{
    $.ajax({ 
        type: "POST",               
        url: "json.aspx?fid=5",               
        contentType: "application/x-www-form-urlencoded",              
        data: "",          
        dataType: "text",              
        success: function(msg) { $("select#clubSelector").html(msg); },               
        error: function() {$.modal("An Ajax error has occurred.")}         
     });
}

function getregplayerbyregno()
{
    var name = document.getElementById("txtName").value;
    var regno = document.getElementById("txtRegNo").value;
    
    if(name != "")
    {
        var theURL = "json.aspx?fid=6&pn=" + document.getElementById("txtName").value;
        $.ajax({ 
            type: "POST",               
            url: theURL,               
            contentType: "application/x-www-form-urlencoded",              
            data: "",          
            dataType: "text",              
            success: function(msg) { displayRegDataTable(msg);document.getElementById("clubSelector").selectedIndex=0;document.getElementById("txtRegNo").value='';},               
            error: function() {$.modal("An Ajax error has occurred.")}         
         });
    }
    else {
        var theURL = "json.aspx?fid=2&rn=" + document.getElementById("txtRegNo").value;
        $.ajax({ 
            type: "POST",               
            url: theURL,               
            contentType: "application/x-www-form-urlencoded",              
            data: "",          
            dataType: "text",              
            success: function(msg) { displayRegDataTable(msg);document.getElementById("clubSelector").selectedIndex=0;document.getElementById("txtName").value=''; },               
            error: function() {$.modal("An Ajax error has occurred.")}         
         });
     }
}

function getregplayerbyname()
{
    var theURL = "json.aspx?fid=6&pn=" + document.getElementById("txtName").value;
    $.ajax({ 
        type: "POST",               
        url: theURL,               
        contentType: "application/x-www-form-urlencoded",              
        data: "",          
        dataType: "text",              
        success: function(msg) { displayRegDataTable(msg);document.getElementById("clubSelector").selectedIndex=0;document.getElementById("txtRegNo").value='';},               
        error: function() {$.modal("An Ajax error has occurred.")}         
     });
}

function getregplayerbyclub()
{
    var theURL = "json.aspx?fid=4&c=" + document.getElementById("clubSelector").value;
    $.ajax({ 
        type: "POST",               
        url: theURL,               
        contentType: "application/x-www-form-urlencoded",              
        data: "",          
        dataType: "text",              
        success: function(msg) { displayRegDataTable(msg);document.getElementById("txtRegNo").value='';document.getElementById("txtName").value='';},               
        error: function() {$.modal("An Ajax error has occurred.")}         
     });
}

function disableEnter( evt ) {
   var key;      
     if(window.event)
          key = window.event.keyCode; //IE
     else
          key = e.which; //firefox      

     return (key != 13);
}

function displayRegDataTable(dataInJson)
{
    try
    {
       var dsjsonresults = YAHOO.lang.JSON.parse(dataInJson);
        var dsjson = dsjsonresults.SearchResults.results;
        
        var tableConfiguration = {
            paginator : new YAHOO.widget.Paginator({rowsPerPage: 20})
        };
        
        var clubLinkBuilder = function(elCell, oRecord, oColumn, oData) { elCell.innerHTML = '<a href="http://www.dublinpitchandputt.com/clubs.aspx?cid=' + oRecord.getData('ClubID')+ '" target="_blank">' + oRecord.getData('Club')+ '</a>'; } 
        YAHOO.widget.DataTable.Formatter.clubLinkFormatter = clubLinkBuilder;
        
        var playerLinkBuilder = function(elCell, oRecord, oColumn, oData) { elCell.innerHTML = '<a href="http://www.dublinpitchandputt.com/player.aspx?pid=' + oRecord.getData('RegistrationNumber')+ '" target="_blank">' + oRecord.getData('Name')+ '</a>'; } 
        YAHOO.widget.DataTable.Formatter.playerLinkFormatter = playerLinkBuilder;
        
		var dataSource = new YAHOO.util.DataSource(dsjson); 
        dataSource.responseType = YAHOO.util.DataSource.TYPE_JSARRAY; 
        dataSource.responseSchema = { fields: [
                                                   {key:"RegistrationNumber",parser:"number"},
                                                   {key:"Name"},
                                                   {key:"ClubID",parser:"number"},
                                                   {key:"Club"},
                                                   {key:"Handicap",parser:"number"}] }; 

        var columnDefs = [
                            { key: "RegistrationNumber", label: "Reg. Number", width:100, sortable:true },
                            { key: "Name", label: "Name", formatter:"playerLinkFormatter", width:375 , sortable:true },
                            { key: "Club", label: "Club", formatter:"clubLinkFormatter", width:200 , sortable:true },
                            { key: "Handicap", label: "Handicap",width:50,sortable:true }
        ];

        var dataTable = new YAHOO.widget.DataTable("regDataPane", columnDefs, dataSource, tableConfiguration);
    }
    catch(e)
    {  
        alert(e.message);
    }
}