﻿// ----------------------------------------------------------------------------------------//
//	Hämtar ut och returnerar ett element baserat                                           //
//	på det id och tagName som anges                                                        //
//	Om läsaren inte kan hämta ut med document.all eller getElementById                     //
//	så loopar den genom alla element av det tagName man angivit                            //
//	id = id på elementet som skall hämtas                                                  //
//	tagName = vilken sorts element                                                         //
// ----------------------------------------------------------------------------------------//
function GetElement(id, tagName)
{
	if(id != null)
	{
		//if(debug){alert("document.getElementById: " + (document.getElementById ? true : false) + "\ndocument.all: " + (document.all ? true : false));}
		
		var element = null;
		if((document.getElementById ? true : false)){element = document.getElementById(id);}
		else if((document.all ? true : false)){element = document.all[id];}

		// if document.all and document.getElementById didnt work and a tagName is specified
		if(element == null && tagName != null)
		{
			if(debug){alert("Could not use getElementById\nID: " + id);}
			
			var elements = document.getElementsByTagName(tagName);			
			for(var i = 0; i < elements.length; i++)
			{
				var tempElement = elements[i];
				if(tempElement.id != null && tempElement.id == id){element = tempElement; break;}
			}
		}
		
		if(debug){alert("Element: " + element + "\nID: " + element.id);}
		
		return element;
	}else{ return null; }
}

function progressActivate(){
	var img = document.getElementById('imageProgress');
	if(img){
		img.src = '../../Pages/Images/progress.gif';
		img.style.display = 'inline';
	}
	if(document.getElementById('textProgress'))
		document.getElementById('textProgress').style.display = 'inline';
}

function progressDisableTags(tagName){
	var tag = document.getElementsByTagName(tagName);
	for(i=0;i<tag.length;i++)
		tag[i].disabled = true;
}

function HideTags(thetagName){
	var tag = document.getElementsByTagName(thetagName);
	for(i=0;i<tag.length;i++){tag[i].style.visibility = "hidden";}
}

function ShowTags(thetagName){
	var tag = document.getElementsByTagName(thetagName);
	for(i=0;i<tag.length;i++){tag[i].style.visibility = "";}
}

function DisablePupUpButtons(){
	var tag = document.getElementsByTagName("img");
	for(i=0;i<tag.length;i++){if(tag[i].id.indexOf("selectPopUp") != -1){tag[i].style.visibility = "hidden";}}
}

function EnablePupUpButtons(){
	var tag = document.getElementsByTagName("img");
	for(i=0;i<tag.length;i++){if(tag[i].id.indexOf("selectPopUp") != -1){tag[i].style.visibility = "";}}
}

function ValidateTextbox(textBoxID)
{
	var box = GetElement(textBoxID, "INPUT");
	if(box != null){return IsNumeric(box.value);}
	else{return false;}
}

// ----------------------------------------------------------------------------------------//
//	Validerar det användaren skriver i en textbox                                          //
//	e = event                                                                              //
// ----------------------------------------------------------------------------------------//
function ValidateInput(e)
{
	var key = "";
	key = GetKeyCode(e);
	
	if(key != null)
	{
		if(key == 8 || key == 0){return true}
		else
		{
			var keychar = String.fromCharCode(key);
			return IsNumeric(keychar);
		}
		// backspace = 8
		// del = 0
	}
	else{return false;}
}

// ----------------------------------------------------------------------------------------//
//	Validerar om en text är numerisk                                                       //
//	sText = texten som ska kontrolleras                                                    //
// ----------------------------------------------------------------------------------------//
function IsNumeric(sText)
{
	if(sText != null && sText != "")
	{
		//var ValidChars = "0123456789.";
		var ValidChars = "0123456789";
		var IsNumber=true;
		var Char;

		for (i = 0; i < sText.length && IsNumber == true; i++) 
		{ 
			Char = sText.charAt(i); 
			if (ValidChars.indexOf(Char) == -1) 
			{
				IsNumber = false;
			}
		}
		return IsNumber;
	}else{return false;}
}

// ----------------------------------------------------------------------------------------//
//	e = event                                                                              //
// ----------------------------------------------------------------------------------------//
function GetKeyCode(e)
{
	if (window.event)
		return window.event.keyCode;
	else if (e)
		return e.which;
	else
	return null;
}

// ----------------------------------------------------------------------------------------//
//	id = id på element                                                                     //
//	tagName = tag namn, till exempel DIV eller INPUT                                       //
//	clearElementContent = ta bort html i element efter att det blivit dolt                 //
// ----------------------------------------------------------------------------------------//
function HideElement(id, tagName, clearElementContent)
{
	var element = GetElement(id, tagName);
	if(element != null)
	{
		if(document.all)
		{ //IE6 IE7
			element.style.display = "none";
			element.style.height = "0px";
			element.style.visibility = "hidden";
			element.style.overflow = "hidden";
		}
		else
		{ //FF SAFARI
			element.style.display = "none";
		}
		
		if(clearElementContent){element.innerHTML = "";}
	}
}

// ----------------------------------------------------------------------------------------//
//	Visar ett element                                                                      //
//	id = id på element                                                                     //
//	tagName = tag namn, till exempel DIV eller INPUT                                       //
// ----------------------------------------------------------------------------------------//
function ShowElement(id, tagName)
{
	var element = GetElement(id, tagName);
	if(element != null)
	{
		if(document.all)
		{
			element.style.display = "block";
			element.style.height = "auto";
			element.style.visibility = "visible";
			element.style.overflow = "visible";
		}
		else{element.style.display = "inherit";}
	}
}