﻿
// This is the Language Library (Version 1.1)

function setLanguage(language) {
			
        var region, str;

        getRegion();        // The region object must be there
        switch (language) {                // for now we just support the below languages
                case "en":
                case "nl":
                case "vi":       
                case "de":
                case "ar":	        
                case "ph": 
                case "es":
                        break;
                default: { // Otherwise we'll use the browserlanguage
                        if(!browserSnipper()) // a safer way would be checking for the type of navigator.language
                                str=navigator.language; // will give system language
                        else
                                str=navigator.userLanguage; // from region settings in windows
			
                        language=str.charAt(0)+str.charAt(1);
                        if(language=="en"){
							
                        }
                }
        }
        myRegion12345.language=language;                                        // We'll set it in the Region object
        createCookie("Language", myRegion12345.language, 30);        // And we'll set the cookie
        return language;                                                                        // And we'll set what is returned
}

function getRegion() {

                var myCookie;
        /*
        returns our own region object with settings for language, location, number format, etc.
        Properties supported:
                language, we'll use the first two letters from the Microsoft definition;
                                        We might add an extended language property to make full difference later
                months, array 0-11 with monthnames
                weekdays, array 0-6 with weekday names, starting with monday
        */

        var str;

        if (typeof(myRegion12345)=="object")
                return myRegion12345;
        else {
                myRegion12345=new Object();
                //first we read if we have a cookie
                myCookie=readCookie("Language");
	//	alert(myCookie);
                if(myCookie==null){
                        //now our cookie is null so we have to create
                        if(!browserSnipper()){ // a safer way would be checking for the type of navigator.language
                                str=navigator.language; // will give system language
                        }
                        else {
                                str=navigator.userLanguage; // from region settings in windows
                        }
                 
                        myRegion12345.language=str.charAt(0)+str.charAt(1);
                        //create a cookie with the myRegion12345.language value
                        //our cookie name "Language"
                }
                else{
                        //now we have a cookie
                        myRegion12345.language=myCookie;
                }
                switch (myRegion12345.language) {
                        case "nl": {
                                myRegion12345.months=new Array("januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december");
                                // days match the getDay function
                                myRegion12345.weekdays=new Array("zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag");
                                break;
                        }
                        case "de":{
								myRegion12345.months= new Array("Januar", "Februar", "Mrz", "April", "Mag", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember")
								myRegion12345.weekdays = new Array("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");
								break;
                        }
                        case "es":{
								myRegion12345.months = new Array("Enero", "Febrero", "Marcha", "Abril", "Puede", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
								myRegion12345.weekdays = new Array("domingo", "lunes", "martes", "mircoles", "jueves", "viernes", "sbado");
								break;
                        }
                        case "ko":{
								myRegion12345.months = new Array("1?", "2?", "3 ?", "4?","5?", "6??", "7?", "8?", "9?", "10?", "11?", "12?");
								myRegion12345.weekdays = new Array("???", "???", "???", "???", "???", "???", "???");
								break;
                        }
                        case "ph":{
								myRegion12345.months = new Array("Enero", "Febrero", "Marso", "Abril","Mayo", "Hunyo", "Hulyo", "Agusto", "Septembre", "Oktobre", "Nobembre", "Desembre");
								myRegion12345.weekdays = new Array("Domingo","Lunes", "Martes", "Merkules", "Huwebes", "Byernes", "Sabado");
								break;
                        }
                        case "ja":{
								myRegion12345.months = new Array("1?","2?","3?","4?","5?","6?","7?","8?","9?","10?","11?","12?");
								myRegion12345.weekdays = new Array("???" ,"???" ,"???" ,"???" ,"???" ,"???" ,"???");
								break;
                        }                  
                        case "fr":{ 
								myRegion12345.months = new Array("janvier","février","mars","avril","mai","juin","juillet","août","septembre","october","novembre","decembre");
								myRegion12345.weekdays = new Array("dimanche" ,"lundi" ,"mardi" ,"mercredi" ,"jeudi" ,"vendredi" ,"samedi");
								break;
                        }     
                        default: { // We'll default to english
                                myRegion12345.months=new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
                                myRegion12345.weekdays=new Array("sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday");
								break;
						}
                } // end switch
        }
        //for now i will create a temporary case statement for the text direction
        switch (myRegion12345.language){
			case "ar":{
				myRegion12345.direction="Right";
			break 
			}	
			default:{
				myRegion12345.direction="Left";
			}
        }
        return myRegion12345;
}