
WattBike.setLanguage={
	state:{
	    wraper:null,
	    
	    currentCountinent:null,
	    currentCountry:null,
	    currentLanguage:null,
	    currentPortal:null
	},
	
	initialize:function(wraper){	        
	    WattBike.setLanguage.state.wraper = wraper;
        WattBike.setLanguage.getAllContinents(WattBike.setLanguage.populateContinents);
	},	

	getLanguage:function()
	{
	    $("#languageId", WattBike.setLanguage.state.wraper).val(WattBike.setLanguage.state.currentLanguage);
	    $("#portalId", WattBike.setLanguage.state.wraper).val(WattBike.setLanguage.state.currentPortal);
	    return true;
	},
	
	getAllContinents:function(callback)
	{
	    WattBike.CommerceLive.WebService.Languages.GetAllContinents(callback);
	},
	
    getCountriesByContinentID:function(callback)
	{
	    WattBike.CommerceLive.WebService.Languages.GetCountriesByContinentID(WattBike.setLanguage.state.currentCountinent, callback);
	},
	
    GetLanguagesByCountryID:function(callback)
	{
	    WattBike.CommerceLive.WebService.Languages.GetLanguagesByCountryID(WattBike.setLanguage.state.currentCountry, callback);
	},	

    populateContinents:function(result)
    {
        var continents = result.value;
    
	    $("#continents", WattBike.setLanguage.state.wraper).empty();
	    for(var i=0; i< continents.length; i++)
	    {
	        var continent = continents[i];
	        
	        var className = '';
	        if (i == 0)
	        {
	            className = 'selected';
	            WattBike.setLanguage.state.currentCountinent = continent.ContinentID;
	        }
	        
	        var listHTML = '<div id=continent' + continent.ContinentID + ' name="continent" class=' + className + '>' + continent.Name + '</div>'
	        $("#continents", WattBike.setLanguage.state.wraper).append(listHTML);
	        
	        $("div [@id=continent" + continent.ContinentID + "]", WattBike.setLanguage.state.wraper)[0].continent = continent;
	    }	
	    
	    if (continents.length > 0)
	        WattBike.setLanguage.getCountriesByContinentID(WattBike.setLanguage.populateCountries);
	        
        $("div [@name=continent]", WattBike.setLanguage.state.wraper).click(function(){
            $("div [@name=continent]", WattBike.setLanguage.state.wraper).removeClass("selected");
            $(this).addClass("selected");
        
            WattBike.setLanguage.state.currentCountinent = $(this)[0].continent.ContinentID;
            WattBike.setLanguage.getCountriesByContinentID(WattBike.setLanguage.populateCountries);
        });
    },
    
    populateCountries:function(result)
    {
        var countries = result.value;
    
	    $("#countries", WattBike.setLanguage.state.wraper).empty();
	    
	    for(var i=0; i< countries.length; i++)
	    {
	        var country = countries[i];
	        
	        var className = '';
	        if (i == 0)
	        {
	            className = 'selected';
	            WattBike.setLanguage.state.currentCountry = country.CountryID;
	        }	        
	        
	        var listHTML = '<div id=country' + country.CountryID + ' name="country" class=' + className + '>' + country.Name + '</div>'
	        $("#countries", WattBike.setLanguage.state.wraper).append(listHTML);
	        
	        $("div [@id=country" + country.CountryID + "]", WattBike.setLanguage.state.wraper)[0].country = country;
	    }	
	    
	    
	    if (countries.length > 0)
	        WattBike.setLanguage.GetLanguagesByCountryID(WattBike.setLanguage.populateLanguages);
	        
        $("div [@name=country]", WattBike.setLanguage.state.wraper).click(function(){
            $("div [@name=country]", WattBike.setLanguage.state.wraper).removeClass("selected");
            $(this).addClass("selected");
        
            WattBike.setLanguage.state.currentCountry = $(this)[0].country.CountryID;
            WattBike.setLanguage.GetLanguagesByCountryID(WattBike.setLanguage.populateLanguages);
        });	        
    },  
    
    populateLanguages:function(result)
    {
        var languages = result.value;
    
	    $("#languages", WattBike.setLanguage.state.wraper).empty();
	    
	    for(var i=0; i< languages.length; i++)
	    {
	        var language = languages[i];
	        
	        var className = '';
	        if (i == 0)
	        {
	            className = 'selected';
	            WattBike.setLanguage.state.currentLanguage = language.LanguageID;
	            WattBike.setLanguage.state.currentPortal = language.Portal.PortalID;
	        }	        
	        
	        var listHTML = '<div id=language' + language.LanguageID + ' name="language" class=' + className + '>' + language.Name + '</div>'
	        $("#languages", WattBike.setLanguage.state.wraper).append(listHTML);	  
	        
	        $("div [@id=language" + language.LanguageID + "]", WattBike.setLanguage.state.wraper)[0].language = language;
	    }	
	    
        $("div [@name=language]", WattBike.setLanguage.state.wraper).click(function(){
            $("div [@name=language]", WattBike.setLanguage.state.wraper).removeClass("selected");
            $(this).addClass("selected");
            
            WattBike.setLanguage.state.currentLanguage = $(this)[0].language.LanguageID;
            WattBike.setLanguage.state.currentPortal = $(this)[0].language.Portal.PortalID;
        });	 	    
    }        
};

(function($) {

})(jQuery);


