//Set pass-able variables
var cssIsset            =   false;
var css_srcArray        =   new Array();

//Sets base array for browser specific CSS
var css_srcArray            =   [ "msie", "firefox", "netscape", "safari", "chrome", "default" ];

//Sets the array parameters for storing browser specific CSS
/*
    Microsoft Interenet Explorer        6, 7, 8
    Mozilla Firefox                     1, 2, 3
    Netscape (General)                  1, 2, 3, 4, 5
    Safari                              1, 2, 3, 4
    Chrome                              1, 2, 3, 4(b)
    --Default reserved for when ToolKit cannot determine browser name and/or version
*/
css_srcArray["msie"]        =   { 6:null, 7:null, 8:null, "minV":6, "maxV":8 };
css_srcArray["firefox"]     =   { 1:null, 2:null, 3:null, "minV":1, "maxV":5 };
css_srcArray["netscape"]    =   { 1:null, 2:null, 3:null, 4:null, 5:null, "minV":1, "maxV":5 };
css_srcArray["safari"]      =   { 1:null, 2:null, 3:null, 4:null, "minV":1, "maxV":4 };
css_srcArray["chrome"]      =   { 1:null, 2:null, 3:null, 4:null, "minV":1, "maxV":4 };
css_srcArray["default"]     =   { 0:null };

//Used to dump previous CSS data
//Needed for when multiple sources are being retrieved
function dump_cssData()
{
    css_srcArray["msie"]        =   { 6:null, 7:null, 8:null, "minV":6, "maxV":8 };
    css_srcArray["netscape"]    =   { 1:null, 2:null, 3:null, 4:null, 5:null, "minV":1, "maxV":5 };
    css_srcArray["safari"]      =   { 1:null, 2:null, 3:null, 4:null, "minV":1, "maxV":4 };
    css_srcArray["chrome"]      =   { 1:null, 2:null, 3:null, 4:null, "minV":1, "maxV":3 };
    css_srcArray["default"]     =   { 0:null };
}

//Sets default CSS source folder
function set_defaultCSS(css_srcFolder)
{
    css_srcArray["default"][0]      =   css_srcFolder;
}

//Sets browser secific source folder
function set_browserCSS(css_srcFolder, name, version)
{
    if(css_srcArray[name][version] == undefined)
    {
       css_srcArray[name][version]  =   css_srcFolder;
    }
    else
    {
        alert("The browser identifier " + name + " and/or the version number " + version + " is not supported by this version of WD_JsTK. Try using the set_defaultCSS() function to catch unrecognized browsers.");
    }
}

function create_cssElement(css_file)
{
    var browserName         =   id_browserName();
    var browserVersion      =   Math.round(id_browserVersion());
    
    if(css_srcArray[browserName][browserVersion])
    {
        document.write('<link rel="stylesheet" type="text/css" href="' + css_srcArray[browserName][browserVersion] + '/' + css_file + '">');
        css_srcArray[browserName][browserVersion]    =   null;
        cssIsset                                     =   true;
    }
    
    if(browserVersion < css_srcArray[browserName]["maxV"] && cssIsset != true)
    {
        var highestSupportV     =   css_srcArray[browserName]["maxV"];
        
        for(i = highestSupportV; i != css_srcArray.length+highestSupportV; i++)
        {
            if(css_srcArray[browserName][i])
            {
                document.write('<link rel="stylesheet" type="text/css" href="' + css_srcArray[browserName][i] + '/' + css_file + '">');
                css_srcArray[browserName][i]    =   null;
                cssIsset                        =   true;
                break;
            }
        }
    }
    
    if(browserVersion > css_srcArray[browserName]["minV"] && cssIsset != true)
    {
        var lowestSupportV  =   css_srcArray[browserName]["minV"];
        
        for(i = browserVersion; i != lowestSupportV; i--)
        {
            if(css_srcArray[browserName][i])
            {
                document.write('<link rel="stylesheet" type="text/css" href="' + css_srcArray[browserName][i] + '/' + css_file + '">');
                css_srcArray[browserName][i]    =   null;
                cssIsset                        =   true;
                break;
            }
        }
    }
    
    if(browserVersion < css_srcArray[browserName]["minV"] && cssIsset != true)
    {
        var lowestSupportV  =   css_srcArray[browserName]["minV"];
        
        for(i = lowestSupportV; i != css_srcArray.length+lowestSupportV; i++)
        {
            if(css_srcArray[browserName][i])
            {
                document.write('<link rel="stylesheet" type="text/css" href="' + css_srcArray[browserName][i] + '/' + css_file + '">');
                css_srcArray[browserName][i]    =   null;
                cssIsset                        =   true;
                break;
            }
        }
    }
    
    if(css_srcArray["default"][0] && cssIsset != true)
    {
        document.write('<link rel="stylesheet" type="text/css" href="' + css_srcArray["default"][0] + '/' + css_file + '">');
        css_srcArray["default"][0]      =   null;
        cssIsset                        =   true;
    }
    
    cssIsset        =   false;
}