
checkBrowserWidth();

attachEventListener(window, "resize", checkBrowserWidth, false);




function checkBrowserWidth()
{
	var theWidth = getBrowserWidth();
	
	if (theWidth == 0)
	{
		var resolutionCookie = document.cookie.match(/(^|;)tmib_res_layout[^;]*(;|$)/);

		if (resolutionCookie != null)
		{
			setStylesheet(unescape(resolutionCookie[0].split("=")[1]));
			setImageSize(unescape(resolutionCookie[0].split("=")[1]));
		}
		
		addLoadListener(checkBrowserWidth);
		
		return false;
	}

	if (theWidth > 1250)
	{
		setStylesheet("1280x1024");
		setImageSize("1280x1024");
		document.cookie = "tmib_res_layout=" + escape("1280x1024");
	}
	else
	{
		if (theWidth > 978)
		{
			setStylesheet("1024x768");
			setImageSize("1024x768");
			document.cookie = "tmib_res_layout=" + escape("1024x768");
		}
		else
		{
			setStylesheet("800x600");
			setImageSize("800x600");
			document.cookie = "tmib_res_layout=" + escape("800x600");
		}
	}
	
	return true;
}




function getBrowserWidth()
{
	if (window.innerWidth)
	{
		return window.innerWidth;
	}
	else if (document.documentElement && document.documentElement.clientWidth != 0)
	{
		return document.documentElement.clientWidth;
	}
	else if (document.body)
	{
		return document.body.clientWidth;
	}
	
	return 0;
}




function setStylesheet(styleTitle)
{
	var currTag;

	if (document.getElementsByTagName)
	{
		for (var i = 0; (currTag = document.getElementsByTagName("link")[i]); i++)
		{
			if (currTag.getAttribute("rel").indexOf("style") != -1 && currTag.getAttribute("title"))
			{
				currTag.disabled = true;

				if(currTag.getAttribute("title") == styleTitle)
				{
					currTag.disabled = false;
				}
			}
		}
	}
	
	return true;
}

function setImageSize(size)
{
    /*
    Leggo tutti gli elementi img e input,
    poi verrą modificato l'attributo <src>
    */
    var el = new Array();
 
    var images = document.getElementsByTagName('img');
    for(var i=0; i<images.length; i++)
        el.push(images[i]);
 
    var imageButtons = document.getElementsByTagName('input');       
    for(var i=0; i<imageButtons.length; i++)
        el.push(imageButtons[i]);
    
    for (var i=0; i < el.length; i++)
    {
        if ((el[i].id != '') && (typeof(el[i]) != 'undefined'))
        {
            var img = image[size][el[i].id];
            if (img != null)
            {
                var w = img.split(',')[0];
                var h = img.split(',')[1];
                var stretch = false;
                if (img.split(',')[2].toLowerCase() == 'y')
                    stretch = true;
                ChangeSize(el[i], w, h, stretch);
            }
        }
        if ((el[i].className != '') && (typeof(el[i]) != 'undefined'))
        {
            var img = image[size]['C:'+el[i].className];
            if (img != null)
            {
                var w = img.split(',')[0];
                var h = img.split(',')[1];
                var stretch = false;
                if (img.split(',')[2].toLowerCase() == 'y')
                    stretch = true;
                ChangeSize(el[i], w, h, stretch);
            }
        }
    }
}

function ChangeSize(img, w, h, stretch)
{
    var urlSplit = img.src.split('/');
    
    var src = '';
    for (var i = 0; i < urlSplit.length; i++)
    {
    
        var param = urlSplit[i].split('-');
        if (urlSplit[i] == '' ||  param.length < 2)
        {
            src += urlSplit[i];
        }
        else
        {
            var paramName = param[0];
            var paramValue = urlSplit[i].substring(paramName.length + 1);
            
            switch (paramName.toLowerCase())
            {
                case 'w':
                    paramValue = w;
                    break;
                
                case 'h':
                    paramValue = h;
                    break;
                
                case 's':
                    paramValue = (stretch == true ? '1' : '0');
                    break;
            }       
            src += paramName + '-' + paramValue;
        }
        
        if (i < (urlSplit.length -1 )) src += '/';
    }
    
    
    if (src != '' && img.src.toLowerCase() != src.toLowerCase())
    {
        //alert(img.src + '\nto\n' + src);
        img.src = src;
    }
    
}
