function resizeFonts(relativeSize){
	var isOk = 0;
	var cookieSize;
	cookieSize=parseInt(getCookie("RelativeFontSize"))

	if(isNaN(cookieSize))
	{
        	cookieSize=0;
	}

	if (relativeSize<0)
	{
		if (cookieSize>0)
		{
			isOk=1;
		}
	}

	if (relativeSize>0)
	{
		if (cookieSize<3)
		{
			isOk=1;
		}
	}

	if(isOk==1)
	{
		resizeFonts_main(relativeSize,0);
	}
}

function resizeFonts_onLoad() {
    resizeFonts_main(getCookie("RelativeFontSize"),1);
}

function resizeFonts_main(relativeSize,justPageLoad) {
    
    //Ask cookie if there already is a relative size
    relativeSize = parseInt(relativeSize);
    fontSizeFromCookie=parseInt(getCookie("RelativeFontSize"));

    if(isNaN(fontSizeFromCookie))
    {
        fontSizeFromCookie=0;
    }
    
    if(justPageLoad==0)
    {
        setCookie("RelativeFontSize",(fontSizeFromCookie+parseInt(relativeSize)));
    }

    var IE = (navigator.appName == 'Microsoft Internet Explorer')? true : false; //simple browser(IE) check 
    var coll;
    var oldSize;
    var newSize;
    var unit;
    var getBody;
    var getallTags;
    var times;
    
    getallTags = document.getElementsByTagName('*');

    if (relativeSize<0) {
        times=relativeSize*-1; 
        increment=-1;
    }else{
        times=relativeSize;
        increment=1;
    }
    
    for (k = 0 ; k < getallTags.length; k++) 
    {
        
        
        for(i=0;i<times; i++){
            if(IE)
            {
                oldSize = getallTags[k].currentStyle.fontSize;
                unit=oldSize.substring(oldSize.length-2,oldSize.length);
                oldSize = oldSize.substring(0,oldSize.length-2);
            }
            else
            {
                oldSize=window.getComputedStyle(getallTags[k], "").getPropertyValue("font-size");
                unit=oldSize.substring(oldSize.length-2,oldSize.length);
                oldSize = oldSize.substring(0,oldSize.length-2);
            }
            
            newSize=parseInt(oldSize)+increment;
            
            try
            {
            
                if(!isNaN(newSize)&&unit!='+0'&&getallTags[k].className!='') { 
                coll=coll+','+newSize;
                
                getallTags[k].style.fontSize = newSize + unit;
                }
            }
            catch(err)
            {
                //Handle possible error here...
            }
        }
    }
}

function setCookie(cookieName,cookieValue) {
	var today = new Date();
	var expire = new Date();
	expire.setTime(today.getTime() + 3600000*24*1000);
	document.cookie = cookieName + "=" + escape(cookieValue) + "; path=/; expires="+expire.toGMTString();	
}

function getCookie(cookieName) {
	oCookie = document.cookie;
	var index = oCookie.indexOf(cookieName + "=");
	if (index == -1) return null;
	index = oCookie.indexOf("=", index) + 1;
	var endstr = oCookie.indexOf(";", index);
	if (endstr == -1) endstr = oCookie.length;
	return unescape(oCookie.substring(index, endstr));
}

function CheckSize(askee,countingfield,maxSize) {
    currentLength = askee.value.length;
    if (currentLength>maxSize) 
    {
        askee.value = askee.value.substr(0,maxSize);
        remainingCharacters = 0;
    } 
    else 
    {
        remainingCharacters = maxSize-currentLength;
    }
    SmsSendertbRemChars.value = remainingCharacters;
}
