function validateOrderInput(e)
{
    if(!isPositiveInt(e.value) && e.value != '')
    {
        e.style.border = "2px solid #BA0000";
    }
    else
        e.style.border = "2px inset white";
}


function getLinkCode()
{
    var id = document.getElementById('pageid').value;
    var title = document.getElementById('linkname').value;
    var code = "<a href='index.php?page=" + id + "'>" + title + "</a>";
    document.getElementById('code').value = code;
    document.getElementById('sample').innerHTML = code;
}

function getImgCode()
{
    var image = document.getElementById('image').value;
    var l = document.getElementById('l').checked;
    var r = document.getElementById('r').checked;
    var w = document.getElementById('imgwidth').value;

    var code = "<img src='/ekoboxen/images/" + image + "' alt='' width='" + w + "px' ";
    if(l)
    {
        code += "class='leftImage' ";
    }
    else if(r)
    {
        code += "class='rightImage' ";
    }
    code += "/>";
    document.getElementById('code').value = code;
    document.getElementById('sample').innerHTML = code;
    
}


function showDiv(text, id,  event)
{
    var e = document.getElementById(id);
    e.innerHTML = text;
    x = event.clientX + 10;
    y = event.clientY + 10;
    e.style.top = y + 'px';
    e.style.left = x + 'px';
    e.style.display = 'block';

}

function isPositiveInt(value)
{
    return value.toString().search(/^[0-9]+$/) == 0 && value > 0;
}

function trimNumber(s)
{
    while (s.substr(0,1) == '0' && s.length>1)
    {
        s = s.substr(1);
    }
    return s;
}

var STR_PAD_LEFT = 1;
var STR_PAD_RIGHT = 2;
var STR_PAD_BOTH = 3;
 
function pad(str, len, pad, dir)
{
         
    if (typeof(len) == "undefined") { var len = 0; }
    if (typeof(pad) == "undefined") { var pad = ' '; }
    if (typeof(dir) == "undefined") { var dir = STR_PAD_RIGHT; }

    if (len + 1 >= str.length) {

        switch (dir){

        case STR_PAD_LEFT:
            str = Array(len + 1 - str.length).join(pad) + str;
            break;
    
        case STR_PAD_BOTH:
            var right = Math.ceil((padlen = len - str.length) / 2);
            var left = padlen - right;
            str = Array(left+1).join(pad) + str + Array(right+1).join(pad);
            break;
                                                                                                                                                             
        default:
            str = str + Array(len + 1 - str.length).join(pad);
        break;
        } // switch
    }
                         
    return str;
                             
}

function showHideMessage()
{
    document.getElementById('message').style.display = 'block';
    document.getElementById('message').style.opacity = '100';
    document.getElementById('message').style.MozOpacity = '100';
    document.getElementById('message').style.KhtmlOpacity = '100';
    document.getElementById('message').style.filter = "alpha(opacity=100)";

    setTimeout("fadeoutdiv('message')", 1500);
}

var fadeouttime=50; // higher is slower
var opacchange=10; // higher is faster (between 2-30 will probably work best)

function fadeoutdiv(id) 
{ 
        fadeoutto=setTimeout("divOut(" + 100 + ",'" + id + "')",fadeouttime);
} 

function divOut(opacity, id)
{ 
    opacity-=opacchange;

    var os = document.getElementById(id).style; 
    os.opacity = (opacity / 101); 
    os.MozOpacity = (opacity / 101); 
    os.KhtmlOpacity = (opacity / 101); 
    os.filter = "alpha(opacity=" + opacity + ")";
                                    
    clearTimeout(fadeoutto);
    if(opacity>0)
    {
        fadeoutto=setTimeout("divOut(" + opacity + ",'" + id + "')",fadeouttime);
    }
    else
    {
        os.display="none";
    }
} 

function toggle_visibility(id)
{
	var e = document.getElementById(id);
	if(e.style.display == 'block')
		e.style.display = 'none';
	else
		e.style.display = 'block';
}

function change_div_content(content, id)
{
	var e = document.getElementById(id);
	e.style.display = 'block';
	e.innerHTML = content;
}

function changeOrderContent(month)
{
	var year = getYear();

	change_div_content('order_content');
}

function ClearOptions(OptionList)
{
	// Always clear an option list from the last entry to the first
	for (x = OptionList.length; x >= 0; x = x - 1) {
		OptionList[x] = null;
	}
}

function AddToOptionList(OptionList, OptionValue, OptionText)
{
   // Add option to the bottom of the list
	OptionList[OptionList.length] = new Option(OptionText, OptionValue);
}

function getYear()
{
	var YearList = document.my_orders.i_year;
	return YearList[YearList.selectedIndex].value;
}

function populateMonths()
{
	var year = getYear();


	var months = new Array();
	if(year == '2007')
	{
		months[0] = "oktober";
		months[1] = "november";
		months[2] = "december";
	}
	else if(year == '2008')
	{
		months[0] = "februari";
	}

	//Clear out the list of months
	ClearOptions(document.my_orders.i_month);

	AddToOptionList(document.my_orders.i_month, '', 'Välj månad');

	for(i = 0; i < months.length; i++)
	{
		AddToOptionList(document.my_orders.i_month, months[i], months[i]);
	}
}

function callback(serverData, serverStatus, id) 
{       // Anropas när vi fått datat från servern
    if(serverStatus == 200)
    {
        document.getElementById(id).innerHTML = serverData;   //Skriv ut datat i vårt HTML element

        initDrag();
    } 
    else 
    {
        document.getElementById(id).innerHTML = 'Laddar...'; 
    }
}

function ajaxRequest(openThis, id, noLoad) 
{
    if(noLoad == undefined)
    {
        noLoad = false;
    }

    var AJAX = null; // Skapa AJAX variablen.

    if (window.XMLHttpRequest) 
    { // Kolla om denna webbläsaren har ett XMLHttpRequest objekt?
        AJAX=new XMLHttpRequest(); // Om ja! -- Ladda det.
    } 
    else 
    { // Nej!, Försök skapa det på Microsofts sätt.
        AJAX=new ActiveXObject("Microsoft.XMLHTTP"); // Okej, ActiveX, hur formaterar vi c:? :)
    } // Klart.
    
    if (AJAX==null) 
    { // Om vi inte kunde skapa vårt AJAX objekt...
        alert("Din browser stödjer inte AJAX."); // Felmeddelande.                                               
        return false // Retunera false, vi misslyckades.
    }
   
    AJAX.onreadystatechange = function() 
    { // När webbläsaren har den efterfrågade informationen.
        if (AJAX.readyState==4 || AJAX.readyState=="complete") 
        { // Kolla om det är helt klart.
            callback(AJAX.responseText, AJAX.status, id); // Skicka viadre informationen för bearbetning.
        }  
        else 
        { 
            if(!noLoad)
            {
                document.getElementById(id).innerHTML = 'Laddar...<br />'; 
            }
        }
    }      
    
    var url= openThis; // Detta är adressen vi vill öppna.
    AJAX.open("GET", url, true); // Öppna adressen.
    AJAX.send(null); // Skicka en förfrågan.
}

