mySubmitFormvalidated = true;
valuesEntered = false;
errors ="";
var textNummer=["", "- Ett", "- Två", "- Tre", "- Fyra", "- Fem", "- Sex", "- Sju", "- Åtta", "- Nio", "- Tio", "- Elva", "- Tolv", "- 13", "- 14", "- 15", "- 16 ,17", "- 18", "- 19", "- 20", "- 21"]
var invalidMandatoryFields

function addError(errorMessage)
{
	validated = false;
	errors = errors + errorMessage + "\n";
}

function validate(element)
{
	valuesEntered = true;
	var result = true;

	switch (element.name)
	{
		case "userName":
			result = validateName(element.value, 1, 90);
			if (! result)
			{
				addError("- Användarnamn");
			}
			break;

		case "password":
			result = validateText(element.value, 1, 20);
			if (! result)
			{
				addError("- Lösenord");
			}
			break;

		case "passwordValidate":

			var test1, test2, objParent

			objParent = element.form
			test1 = validateText(element.value, 1, 20);
			test2 = (objParent.password.value == element.value)

			if (!test1)
			{
				addError("- Bekr. Lösenord");
				result=false
			}

			if (!test2)
			{
				addError("- Lösenorden stämmer inte överrens");
				result=false
			}
			break;


		case "firstName":
			result = validateName(element.value, 1, 30);
			if (! result)
			{
				addError("- Förnamn");
			}
			break;


		case "surName":
			result = validateName(element.value, 1, 30);
			if (! result)
			{
				addError("- Efternamn");
			}
			break;

		case "contactPerson":
			result = validateName(element.value, 1, 30);
			if (! result)
			{
				addError("- Kontaktperson");
			}
			break;

		case "groupName":
			result = validateText(element.value, 1, 60);
			if (! result)
			{
				addError("- Gruppnamn");
			}
			break;

		case "invoiceCompanyName":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Addressnamn");
			}
			break;

		case "attention":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Att");
			}
			break;
			
		case "address":
			result = validateText(element.value, 1, 60);
			if (! result)
			{
				addError("- Adress");
			}
			break;

		case "addressRow2":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Adressrad 2");
			}
			break;
			
		case "addressRow3":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Adressrad 3");
			}
			break;			

		case "country":
			result = validateSelect(element.value);
			if (! result)
			{
				addError("- Land");
			}
			break;

		case "zipCode":

			result = validateZipCode(element.value);
			if (! result)
			{
				addError("- Postnummer");
			}
			break;

		case "zipCodeEng":

			result = validateText(element.value, 1, 15);
			if (! result)
			{
				addError("- Postnummer");
			}
			break;

		case "generalArticle":

			result = validateText(element.value, 1, 65);
			if (! result)
			{
				addError("- Benämning");
			}
			break;

		case "city":
			result = validateName(element.value, 1, 30);
			if (! result)
			{
				addError("- Ort");
			}
			break;
			
			
		case "deliveryCompanyName":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Addressnamn");
			}
			break;

		case "deliveryAttention":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Att");
			}
			break;

		case "deliveryAddress":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Adress");
			}
			break;

		case "deliveryAddressRow2":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Adressrad 2");
			}
			break;

		case "deliveryAddressRow3":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Adressrad 3");
			}
			break;
			
		case "deliveryZipCode":

			result = validateZipCode(element.value);
			if (! result)
			{
				addError("- Postnummer");
			}
			break;

		case "deliveryZipCodeEng":

			result = validateText(element.value, 1, 10);
			if (! result)
			{
				addError("- Postnummer");
			}
			break;

		case "deliveryCity":
			result = validateName(element.value, 1, 50);
			if (! result)
			{
				addError("- Ort");
			}
			break;

		case "emailAddress":
			result = validateEmail(element.value);
			if (! result)
			{
				addError("- E-post");
			}
			break;

		case "phoneNo":
			result = validatePhoneNo(element.value);
			if (! result)
			{
				addError("- Felaktigt telefonnummer. (Korrekt format: 'nummer-nummer' eller 'nummer nummer'.");
			}
			break;

		case "mobileNo":
			result = validatePhoneNo(element.value);
			if (! result)
			{
				addError("- Felaktigt mobilnummer. (Korrekt format: 'nummer-nummer' eller 'nummer nummer'.");
			}
			break;

		case "faxNo":
			result = validatePhoneNo(element.value);
			if (! result)
			{
				addError("- Felaktigt faxnummer. (Korrekt format: 'nummer-nummer' eller 'nummer nummer'.");
			}
			break;


		case "name":
			result = validateText(element.value, 1, 90);
			if (! result)
			{
				addError("- Namn");
			}
			break;

		case "customerName":
			result = validateText(element.value, 0, 90);
			if (! result)
			{
				addError("- Kundnamn");
			}
			break;

		case "customerFirstName":
			result = validateText(element.value, 0, 50);
			if (! result)
			{
				addError("- Förnamn");
			}
			break;

		case "customerSurName":
			result = validateText(element.value, 0, 50);
			if (! result)
			{
				addError("- Efternamn");
			}
			break;
												
		case "idNo":
			result = validateText(element.value, 0, 100);
			if (! result)
			{
				addError("- Id-nummer");
			}
			break;			

		case "contractName":
			result = validateText(element.value, 1, 100);
			if (! result)
			{
				addError("- Avtalsnamn");
			}
			break;
			
		case "contractTime":
			result = validateInt(element.value, 1, 2);
			if (! result)
			{
				addError("- Löptid");
			}
			break;	

		case "cancelTime":
			result = validateInt(element.value, 1, 2);
			if (! result)
			{
				addError("- Uppsägninstid");
			}
			break;		
					
		case "diffTimeInvoice":
			result = validateInt(element.value, 1, 2);
			if (! result)
			{
				addError("- Skapa faktura");
			}
			break;	

		case "invoiceInterval":
			result = validateInt(element.value, 1, 2);
			if (! result)
			{
				addError("- Fakturaintervall");
			}
			break;	
			
		case "noDaysPayment":
			result = validateInt(element.value, 1, 2);
			if (! result)
			{
				addError("- Betalningsvillkor");
			}
			break;	
						
		case "companyName":
			result = validateText(element.value, 1, 35);
			if (! result)
			{
				addError("- Företagsnamn");
			}
			break;

		case "equipment":
			result = validateText(element.value, 1, 30);
			if (! result)
			{
				addError("- Inventarie");
			}
			break;

		case "customerReference":
			result = validateText(element.value, 0, 30);
			if (! result)
			{
				addError("- Kundreferens");
			}
			break;
			
		case "customerOrderReference":
			result = validateText(element.value, 0, 50);
			if (! result)
			{
				addError("- Kundens orderreferens");
			}
			break;			

		case "articleName":
			result = validateText(element.value, 1, 70);
			if (! result)
			{
				addError("- Benämning");
			}
			break;

		case "comment":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Kommentar");
			}
			break;

		
		case "supplierArticleId":
			result = validateText(element.value, 0, 20);
			if (! result)
			{
				addError("- Leverantörens artikelnummer");
			}
			break;
			
		case "shortArticleInfo":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Kort artikelinformation");
			}
			break;

		case "articleInfo":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Artikelinformation");
			}
			break;
			
		case "standardOldPrice":
			result = validateDouble(element.value, 0, 10);
			if (! result)
			{
				addError("- Ordinarie pris");
			}
			break;
			
		case "extraUrl":
			result = validateText(element.value, 0, 200);
			if (! result)
			{
				addError("- Extra länksida");
			}
			break;

		case "extraUrlText":
			result = validateText(element.value, 0, 100);
			if (! result)
			{
				addError("- Länktext");
			}
			break;
			
		case "metaTitle":
			result = validateText(element.value, 0, 200);
			if (! result)
			{
				addError("- Titel");
			}
			break;

		case "metaKeywords":
			result = validateText(element.value, 0, 200);
			if (! result)
			{
				addError("- Nyckelord");
			}
			break;

		case "metaDescription":
			result = validateText(element.value, 0, 200);
			if (! result)
			{
				addError("- Beskrivning");
			}
			break;

		case "comments":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Kommentar");
			}
			break;

		case "articleComment":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Artikelkommentar");
			}
			break;

		case "publishedComment":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Publicerad kommentar");
			}
			break;


		case "internalComment":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Intern kommentar");
			}
			break;

		case "standardMail":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Standard e-postmeddelande");
			}
			break;
			
		case "searchwords":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Sökord");
			}
			break;
			
		case "description":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Beskrivning");
			}
			break;
			
		case "other":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Övrigt");
			}
			break;
													
		case "homePage":
			result = validateWww(element.value);
			if (! result)
			{
				addError("- Hemsida");
			}
			break;	

		case "alertText":
			result = validateText(element.value, 0, 250);
			if (! result)
			{
				addError("- Intern information");
			}
			break;	
			
		case "bankgiro":
			result = validateGiro(element.value);
			if (! result)
			{
				addError("- Bankgiro");
			}
			break;	

		case "postgiro":
			result = validateGiro(element.value);
			if (! result)
			{
				addError("- Postgiro");
			}
			break;	

		case "noAccountNo":
			result = validateGiro(element.value,0,30);
			if (! result)
			{
				addError("- Norskt kontonummer");
			}
			break;	
			
		case "buyPrice":

			result = validateDouble(element.value, 1, 10);
			if (! result)
			{
				addError("- Inköpspris");
			}
			break;

		case "stockPrice":

			result = validateDouble(element.value, 1, 10);
			if (! result)
			{
				addError("- Inventeringspris");
			}
			break;

		case "cashDiff":

			result = validateDoublePrice(element.value, 1, 10);
			if (! result)
			{
				addError("- Differens");
			}
			break;			
			
		case "cashInDesk":

			result = validateDoublePrice(element.value, 1, 10);
			if (! result)
			{
				addError("- Belopp i kassa");
			}
			break;			

		case "leftCash":

			result = validateDoublePrice(element.value, 1, 10);
			if (! result)
			{
				addError("- Växelkassa UT");
			}
			break;	

		case "cashTakeOut":

			result = validateDoublePrice(element.value, 1, 10);
			if (! result)
			{
				addError("- Växelkassa UT");
			}
			break;				

		case "sumTotalForeignPayed":

			result = validateDouble3(element.value, 1, 10);
			if (! result)
			{
				addError("- Inbetalt belopp (i utländsk valuta)");
			}
			break;

		case "sumTotalPayed":

			result = validateDouble3(element.value, 1, 10);
			if (! result)
			{
				addError("- Inbetalt belopp");
			}
			break;

		case "sumPayed":

			result = validateDouble3(element.value, 1, 10);
			if (! result)
			{
				addError("- Fakturabetalning");
			}
			break;

		case "currencyPayment":

			result = validateDoubleNeg(element.value, 1, 10);
			if (! result)
			{
				addError("- Valutadifferens");
			}
			break;

		case "interestPayment":

			result = validateDoubleNeg(element.value, 1, 10);
			if (! result)
			{
				addError("- Dröjsmålsränta");
			}
			break;
			
		case "overheadCharge":

			result = validateDouble(element.value, 1, 4);
			if (! result)
			{
				addError("- Påslag");
			}
			break;


		case "priceExclVat":

			result = validateDouble6(element.value, 1, 11);
			if (! result)
			{
				addError("- Pris exkl moms");
			}
			break;

		case "priceInclVat":

			result = validateDouble(element.value, 1, 11);
			if (! result)
			{
				addError("- Pris inkl moms");
			}
			break;

		case "orgNo":

			result = validateText(element.value, 3, 20);
			if (! result)
			{
				addError("- Organisationsnummer");
			}
			break;

		case "vatNo":

			result = validateText(element.value, 3, 30);
			if (! result)
			{
				addError("- Momsregistreringsnummer");
			}
			break;

		case "description":
			result = validateText(element.value, 1, 1000000);
			if (! result)
			{
				addError("- Beskrivning");
			}
			break;

		case "language":
			result = validateText(element.value, 0, 100);
			if (! result)
			{
				addError("- Språk");
			}
			break;
			
		case "title":
			result = validateText(element.value, 0, 100);
			if (! result)
			{
				addError("- Titel");
			}
			break;			

		case "editCurrency"+element.id:
			result = validateDoubleCurrency(element.value, 1, 10);
			if (! result)
			{
				addError("- Valutavärde");
			}
			break;

		case "addStockWithId"+element.id:
			result = validateDouble5(element.value, 1, 7);
			if (! result)
			{
				addError("- Antal (inlevererat)");
			}
			break;

		case "noInStockWithId"+element.id:
			result = validateDouble5(element.value, 1, 7);
			if (! result)
			{
				addError("- Antal (i lager)");
			}
			break;

		case "stockPriceWithId"+element.id:
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Inventeringspris (exkl moms)");
			}
			break;

		case "buyPriceWithId"+element.id:
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Inköpspris (exkl moms)");
			}
			break;

		case "priceExclVatWithId"+element.id:
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Utpris (exkl moms)");
			}
			break;

		case "priceInclVatWithId"+element.id:
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Utpris (exkl moms)");
			}
			break;

		case "priceExclVatWithIdNoValidate"+element.id:
			result = validateDoublePriceEmptyOk(element.value, 0, 50);
			if (! result)
			{
				addError("- Utpris (exkl moms)");
			}
			break;

		case "priceInclVatWithIdNoValidate"+element.id:
			result = validateDoublePriceEmptyOk(element.value, 0, 50);
			if (! result)
			{
				addError("- Utpris (exkl moms)");
			}
			break;
						
		case "articleNoRow"+element.id:
			result = validateText(element.value, 0, 25);
			if (! result)
			{
				addError("- Artikelnummer");
			}
			break;

		case "nameRow"+element.id:
			result = validateNameRow(element.value, 1, 130);
			if (! result)
			{
				addError("- Benämning");
			}
			break;

		case "article" + element.id:
			result = validateTextSelect(element.value, 1, 50);
			if (! result)
			{
				addError("- Artikel");
			}
			break;

		case "articleRow"+element.id:
			result = validateTextSelect(element.value, 1, 50);
			if (! result)
			{
				addError("- Artikel");
			}
			break;

		case "articleNameRow"+element.id:
			result = validateText3(element.value, 1, 140);
			if (! result)
			{
				if (element.value == "[Egen artikelbenämning]")
				{
					addError("- Egen artikelbenämning (Måste anges)");
				}
				else
				{
					addError("- Egen artikelbenämning");
				}
			}
			break;

		case "commentRow"+element.id:
			result = validateText2(element.value, 0, 130);
			if (! result)
			{
				addError("- Artikelkommentar");
			}
			break;

		case "accountNoRow"+ element.getAttribute("rowNo"):
			result = validateInt2(element.value, 1, 5);
			if (! result)
			{
				addError("- Kostnadsslag");
			}
			break;

		case "accountNo":
			result = validateInt2(element.value, 1, 5);
			if (! result)
			{
				addError("- Kontonummer");
			}
			break;

		case "deptAccountId":
			result = validateInt2(element.value, 1, 5);
			if (! result)
			{
				addError("- Skuldkonto / Utbetalningskonto");
			}
			break;


		case "supplierId":
			result = validateInt2(element.value, 1, 10);
			if (! result)
			{
				addError("- Leverantör");
			}
			break;

		case "groupId":
			result = validateInt2(element.value, 1, 10);
			if (! result)
			{
				addError("- Artikelgrupp");
			}
			break;

		case "groupIdRow"+element.getAttribute("rowNo"):
			result = validateInt2(element.value, 1, 10);
			if (! result)
			{
				addError("- Artikelgrupp");
			}
			break;
			
		case "customerId":
			result = validateTextSelect(element.value, 1, 50);
			if (! result)
			{
				addError("- Kund");
			}
			break;


		case "vatRow"+element.id:
			result = validateTextSelect(element.value, 1, 50);
			if (! result)
			{
				addError("- Moms");
			}
			break;


		case "priceRow"+element.getAttribute("rowNo"):
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Pris");
			}
			break;

		case "debitRow"+element.getAttribute("rowNo"):
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Debet");
			}
			break;

		case "creditRow"+element.getAttribute("rowNo"):
			result = validateDoublePrice(element.value, 1, 50);
			if (! result)
			{
				addError("- Kredit");
			}
			break;

		case "costExclVat":
			result = validateDouble2(element.value, 1, 50);
			if (! result)
			{
				addError("- Summa exkl moms");
			}
			break;

		case "costInclVat":
			result = validateDouble2(element.value, 1, 50);
			if (! result)
			{
				addError("- Summa inkl moms");
			}
			break;


		case "noItemsRow"+element.id:
			result = validateDoubleNoItems(element.value, 1, 7);
			if (! result)
			{
				addError("- Antal");
			}
			break;

		case "noItems2Row"+element.id:
			result = validateDoubleNoItems(element.value, 1, 7);
			if (! result)
			{
				addError("- Antal");
			}
			break;

		case "percentName":
			result = validateText(element.value, 1, 50);
			if (! result)
			{
				addError("- Kund");
			}
			break;

		case "percent":
			result = validateDouble(element.value, 0, 6);
			if (! result)
			{
				addError("- Procent");
			}
			break;	

		case "discountRow"+ element.id:
			result = validateDouble(element.value, 0, 6);
			if (! result)
			{
				addError("- Procent");
			}
			break;	
			
		case "discountGroupId-"+ element.getAttribute("groupId"):
			result = validateDouble(element.value, 0, 6);
			if (! result)
			{
				addError("- Rabattprocent");
			}
			break;	

		case "fromIntervalRow"+ element.getAttribute("rowNo"):
			result = validateInt2(element.value, 1, 10);
			if (! result)
			{
				addError("- Frånintervall på rad "+ element.getAttribute("rowNo"));
			}
			break;	
			
		case "toIntervalRow"+ element.getAttribute("rowNo"):
			result = validateInt4(element.value, 1, 10);
			if (! result)
			{
				addError("- Tillintervall på rad "+ element.getAttribute("rowNo"));
			}
			break;	

		case "discountIntervalRow"+ element.getAttribute("rowNo"):
			result = validateDouble(element.value, 1, 10);
			if (! result)
			{
				addError("- Intervallrabatt på rad "+ element.getAttribute("rowNo"));
			}
			break;

		case "discountPercent":
			result = validateDouble(element.value, 1, 10);
			if (! result)
			{
				addError("- Kundgruppsrabatt");
			}
			break;
																		
		case "daysToPayment":
			result = validateInt(element.value, 1, 3);
			if (! result)
			{
				addError("- Betalningsvilkor");
			}
			break;

		case "daysToRemind":
			result = validateInt(element.value, 1, 3);
			if (! result)
			{
				addError("- Påminnelsefrist");
			}
			break;	


		case "daysToTenderExpire":
			result = validateInt(element.value, 1, 3);
			if (! result)
			{
				addError("- Giltlighetstid");
			}
			break;	


		case "daysToDelivery":
			result = validateInt(element.value, 1, 3);
			if (! result)
			{
				addError("- Antal dagar till leverans");
			}
			break;	


		case "supplierName":
			result = validateText(element.value, 1, 30);
			if (! result)
			{
				addError("- Leverantör");
			}
			break;


		case "taxRow":
			result = validateText(element.value, 1, 30);
			if (! result)
			{
				addError("- Text för F-skattsedel");
			}
			break;


		case "standardMessage":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Standardmeddelande vid utlandskund");
			}
			break;

		case "factRows":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Krav/Villkor");
			}
			break;

		case "textToReminder":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Text till påminnelse");
			}
			break;

		case "textToReminder2":
			result = validateTextArea(element.value);
			if (! result)
			{
				addError("- Text till påminnelse 2");
			}
			break;


		case "remindFee":
			result = validateInt(element.value, 1, 4);
			if (! result)
			{
				addError("- Påminnelseavgift");
			}
			break;	

		case "lateInterest":
			result = validateDouble(element.value, 0, 6);
			if (! result)
			{
				addError("- Dröjsmålsränta");
			}
			break;	

		case "daysRemindToCollection":
			result = validateInt(element.value, 1, 3);
			if (! result)
			{
				addError("- Påminnelsefrist för påminnelse");
			}
			break;	

		case "height":
			result = validateDouble(element.value, 1, 5);
			if (! result)
			{
				addError("- Höjd");
			}
			break;	

		case "trunk":
			result = ValidateNumber(element.value);
			if (! result)
			{
				addError("- Stam");
			}
			break;	

		case "crown":
			result = validateDouble(element.value, 1, 5);
			if (! result)
			{
				addError("- Krona");
			}
			break;	

		case "price":
			result = validateDouble(element.value, 1, 20);
			if (! result)
			{
				addError("- Pris");
			}
			break;	

		case "purchasePrice":
			result = validateDouble(element.value, 1, 20);
			if (! result)
			{
				addError("- Inköpspris");
			}
			break;	


		case "salePrice":
			result = validateDouble(element.value, 1, 20);
			if (! result)
			{
				addError("- Försäljningspris");
			}
			break;	
			
		case "saleAccount":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Försäljningskonto");
			}
			break;	
			
		case "barCode":
			result = validateText(element.value, 0, 100);
			if (! result)
			{
				addError("- Streckkod");
			}
			break;			

		case "standardAccountSale":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Försäljning");
			}
			break;	

		case "standardAccountCustomer":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Kundfodring");
			}
			break;	

		case "standardAccountSupplierDept":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Leverantörsskuld");
			}
			break;				

		case "standardAccountCash":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Kassa");
			}
			break;	

		case "standardAccountBankgiro":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Bankgiro");
			}
			break;	

		case "standardAccountPlusgiro":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Plusgiro");
			}
			break;	

		case "standardAccountOutVat":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Utgående moms");
			}
			break;	

		case "standardAccountInVat":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Inkommande moms");
			}
			break;
			
		case "standardAccountDecimalRound":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Öresavrundning");
			}
			break;

		case "standardAccountWriteDown":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Nedskrivning");
			}
			break;

		case "standardAccountCurrencyDiff":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Valutadifferens");
			}
			break;

		case "standardAccountInterestPayment":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Dröjsmålsränta");
			}
			break;

		case "standardAccountBankCost":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Bankkostnad");
			}
			break;
			
		case "standardCreditSaleCost":
			result = validateInt(element.value, 4, 4);
			if (! result)
			{
				addError("- Kreditförsäljningskostnader");
			}
			break;
			
		case "ambitionSum":
			result = validateInt(element.value, 0, 12);
			if (! result)
			{
				addError("- Försäljningsmål (kr)");
			}
			break;
			
		case "ambitionNoNewCustomers":
			result = validateInt(element.value, 0, 12);
			if (! result)
			{
				addError("- Försäljningsmål (antal nya kunder)");
			}
			break;	

		case "noDaysBeforeRow"+element.getAttribute("rowNo"):
			result = validateInt(element.value, 1, 3);
			if (! result)
			{
				addError("- Antal dagar efter projektstart - Radnummer: "+ element.getAttribute("rowNo"));
			}
			break;		
			
		case "date":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Datum");
			}
			break;
			
		case "startDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Startdatum");
			}
			break;
			
		case "stopDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Stoppdatum");
			}
			break;
			
		case "fromDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Fråndatum");
			}
			break;

		case "toDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Tilldatum");
			}
			break;		

		case "fromDate2":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Fråndatum2");
			}
			break;

		case "toDate2":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Tilldatum2");
			}
			break;		

		case "expireDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Förfallodatum");
			}
			break;	

		case "deliveryDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Leveransdatum");
			}
			break;	

		case "payDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Betaldatum");
			}
			break;			
			
		case "realStopDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Faktiskt slutdatum");
			}
			break;			

		case "reminderDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Påminnelsedatum");
			}
			break;		
			
		case "saleDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Försäljningsdatum");
			}
			break;	
						
		case "purchaseDate":
			result = validateDate(element, 0, 6);
			if (! result)
			{
				addError("- Inköpsdatum");
			}
			break;	
									
		case "posNo":
			result = validatePosNo(element.value, 0, 6);
			if (! result)
			{
				addError("- Positionsnummer");
			}
			break;														

		case "posNoRow"+ element.getAttribute("rowNo") :
			result = validatePosNo(element.value, 0, 6);
			if (! result)
			{
				addError("- Positionsnummer, rad "+ element.getAttribute("rowNo"));
			}
			break;	
			
		case "suffixNameRow"+ element.getAttribute("rowNo"):
			result = validateText2(element.value, 1, 70);
			if (! result)
			{
				addError("- Namn");
			}
			break;
			
		case "noSuffixRow"+ element.getAttribute("rowNo"):
			result = validateText2(element.value, 1, 20);
			if (! result)
			{
				addError("- Suffix artikel nr");
			}
			break;
			
		case "nameSuffixRow"+ element.getAttribute("rowNo"):
			result = validateText(element.value, 1, 70);
			if (! result)
			{
				addError("- Suffixnamn");
			}
			break;
			
		case "commentSuffixRow"+ element.getAttribute("rowNo"):
			result = validateText(element.value, 1, 150);
			if (! result)
			{
				addError("- Suffixkommentar");
			}
			break;									

		case "priceChangeRow"+ element.getAttribute("rowNo"):
			result = validateDoublePrice(element.value, 1, 20);
			if (! result)
			{
				addError("- Prisförändring");
			}
			break;

		case "variantNameRow"+ element.getAttribute("rowNo"):
			result = validateText2(element.value, 1, 70);
			if (! result)
			{
				addError("- Varianttypsnamn");
			}
			break;										

	}

	switch (element.id)
	{
		case "validate":
			if (element.value == "")
			{
				//addError("- Ett obligatoriskt fält är ej ifyllt");
				invalidMandatoryFields = invalidMandatoryFields + 1
				result = false;
			}
			break;

		default:
			break;
		
	}


	if(result == true)
	{
		if (element.type == "checkbox")
			element.className = "inputNoBorder";
		else if (element.type == "radio")
			element.className = "inputNoBorder";
		else if (element.type == "TEXTAREA")
			element.className = "textarea";
		else if (element.className == "inputWhite")
			element.className = "inputWhite";
		else
			element.className = "";

	}
	else
	{
		validated = false;

		if (element.tagName == "TEXTAREA")
		element.className = "textareaError";

		if (element.tagName == "SELECT")
		element.className = "selectError";

		if (element.tagName == "INPUT")
		element.className = "inputError";

		if (element.type == "checkbox")
		element.className = "inputError";

		if (element.type == "radio")
		element.className = "inputError";

	}
}


function validateText(strText, minLength, maxLength)
{
	var re = new RegExp('^.{' + minLength + ',' + maxLength + '}$');

	var invalidChar
	invalidChar=false
	if (strText.indexOf("'") == -1 && strText.indexOf("\"") == -1 && strText.indexOf("\\") == -1)
	{
		invalidChar = true;
	}
	
	if ((re.test(strText) && invalidChar) || strText == "")
	return true;
	else
	return false;
}

function validateTextArea(strText)
{
	var invalidChar
	invalidChar=false
	if (strText.indexOf("'") == -1 && strText.indexOf("\"") == -1 && strText.indexOf("\\") == -1)
	{
		invalidChar = true;
	}
	
	if (invalidChar || strText == "")
	return true;
	else
	return false;
}


function validateText2(strText, minLength, maxLength)
{
	var invalidChar
	invalidChar=false
	if (strText.indexOf("'") == -1 && strText.indexOf("\"") == -1 && strText.indexOf("\\") == -1)
	{
		invalidChar = true;
	}
	var re = new RegExp('^.{' + minLength + ',' + maxLength + '}$');
	if (re.test(strText) && invalidChar)
	return true;
	else
	return false;
}

function validateText3(strText, minLength, maxLength)
{
	var re = new RegExp('^.{' + minLength + ',' + maxLength + '}$');

	var invalidChar
	invalidChar=false
	if (strText.indexOf("'") == -1 && strText.indexOf("\"") == -1 && strText.indexOf("\\") == -1)
	{
		invalidChar = true;
	}
	
	if ((re.test(strText) && invalidChar && (strText != "[Egen artikelbenämning]")) || strText == "")
//	if (strText != "[Egen artikelbenämning]")
	return true;
	else
	return false;
}


function validateTextSelect(strText, minLength, maxLength)
{
	var re = new RegExp('^.{' + minLength + ',' + maxLength + '}$');
	if (re.test(strText) && strText != 0)
	return true;
	else
	return false;
}

function validateNameRow(strText, minLength, maxLength)
{
	var re = new RegExp('^.{' + minLength + ',' + maxLength + '}$');

	var invalidChar
	invalidChar=false
	if (strText.indexOf("'") == -1 && strText.indexOf("\"") == -1 && strText.indexOf("\\") == -1)
	{
		invalidChar = true;
	}
	
	if ((re.test(strText) && invalidChar))
	return true;
	else
	return false;
}

function validateAddress(strText, minLength, maxLength)
{
	var invalidChar
	invalidChar=false
	if (strText.indexOf("'") == -1 && strText.indexOf("\"") == -1 && strText.indexOf("\\") == -1 && strText.indexOf("\;") == -1)
	{
		invalidChar = true;
	}
	
	var re = new RegExp('^[ _.,:;´`"#¤*&)(/0-9A-Za-zÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÑÒÓÔÕÖÙÚÛÜÝŸßŠŒŽàáâãäåæçèéêëìíîïðñòóôõöùúûüýÿšž-]{' + minLength + ',' + maxLength + '}$');
	if ((re.test(strText) && invalidChar) || strText == "")
	return true;
	else
	return false;
}


function validateZipCode(strZipCode)
{
	var myValidator = strZipCode.match(/^(\d)(\d)(\d) (\d)(\d)$/);
	if (myValidator != null || strZipCode == "")
	return true;
	else
	return false;
}


function validateGiro(strGiro)
{
	var invalidChar
	invalidChar=false
	if (strGiro.indexOf("'") == -1 && strGiro.indexOf("\"") == -1 && strGiro.indexOf("\\") == -1 && strGiro.indexOf("\;") == -1)
	{
		invalidChar = true;
	}
	
	var re= /^[ ._\- 0-9]{1,15}$/;

	if ((re.test(strGiro) && invalidChar) || strGiro == "")
	return true;
	else
	return false;
}


function validatePhoneNo2(strPhoneNo)
{
	var re= /^\d{2,4}[ -]\d{5,9}$/;
	var re2= /^[+ 0-9][() 0-9]{2,9}[- ]\d{5,9}$/;

	if (re.test(strPhoneNo) || re2.test(strPhoneNo) || strPhoneNo == "")
	return true;
	else
	return false;
}

function validatePhoneNo(strPhoneNo)
{

	var re = new RegExp('^[ .,#+*()0-9 -]{1,20}$');
//	var re2 = /^\d{1,20}[ -]\d{3,20}$/;


	if (re.test(strPhoneNo) || strPhoneNo == "")
	return true;
	else
	return false;
}


function validateEmail(strEmail)
{	
	var invalidChar
	invalidChar=false
	if (strEmail.indexOf("'") == -1 && strEmail.indexOf("\"") == -1 && strEmail.indexOf("\\") == -1 && strEmail.indexOf("\;") == -1)
	{
		invalidChar = true;
	}
	
	var re= /^[^\x0d]+\@([-A-Za-z0-9ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÑÒÓÔÕÖÙÚÛÜÝŸßŠŒŽàáâãäåæçèéêëìíîïðñòóôõöùúûüýÿšž]+\.)+[A-Za-z]{2,4}$/;
	if ((re.test(strEmail) && invalidChar) || strEmail == "")
	return true;
	else
	return false;
}

function validateWww(strUrl)
{
	var invalidChar
	invalidChar=false
	if (strUrl.indexOf("'") == -1 && strUrl.indexOf("\"") == -1 && strUrl.indexOf("\\") == -1 && strUrl.indexOf("\;") == -1)
	{
		invalidChar = true;
	}
	
	var re= /^[^\x0d]([\_\.\~\^\-\/\&\%\?\^\+0-9A-Za-zÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÑÒÓÔÕÖÙÚÛÜÝŸßŠŒŽàáâãäåæçèéêëìíîïðñòóôõöùúûüýÿšž]+\.)+[\_\.\~\^\-\/\&\%\?\^0-9A-Za-zÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÑÒÓÔÕÖÙÚÛÜÝŸßŠŒŽàáâãäåæçèéêëìíîïðñòóôõöùúûüýÿšž]{2,148}$/;
	if ((re.test(strUrl) && invalidChar) || strUrl == "")
	return true;
	else
	return false;
}

// function ValidateNumber(strNumber)
// {
// 	var re= /^[0-9,]{1,8}[/][0-9,]{1,8}$/;
// 	if (re.test(strNumber) || strNumber == "")
// 	return true;
// 	else
// 	return false;
// }

function validateInt(strInt, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	if (re.test(strInt) || strInt == "")
	return true;
	else
	return false;
}


function validateInt2(strInt, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	if (re.test(strInt) && strInt != "")
	return true;
	else
	return false;
}

function validateInt3(strInt, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	if (strInt == "")
	return true;
	else
	return false;
}

function validateInt4(strInt, minLength, maxLength)
{
	if (strInt == "max")
	{
		return true;
	}
	else
	{
		var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');
	
		if (re.test(strInt) && strInt != "")
		return true;
		else
		return false;
	}
}

function validatePosNo(strInt, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');
	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,2}$');
	
	if (re.test(strInt) || re2.test(strInt) || strInt == "" || strInt == "Pos Nr")
		return true;
	else
		return false;
}

//Fungerar fint, men det är någon sorts konvertering vid spara och editerar tal så blir det "0"
function validateNoItems(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');
	var re2 = new RegExp('^[-]{1,1}[0-9]{' + minLength + ',' + maxLength + '}$');
	var re3 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,2}$');
	var re4 = new RegExp('^[-]{1,1}[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,2}$');

	if (re.test(strDouble) || re2.test(strDouble) || re3.test(strDouble) || re4.test(strDouble) || strDouble == "")
	return true;
	else
	return false;
}


function validateDouble(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');
	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,2}$');

	if (re.test(strDouble) || re2.test(strDouble) || strDouble == "")
	return true;
	else
	return false;
}


function validateDouble2(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');
	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.0-9]{1,3}$');

	if (re.test(strDouble) || re2.test(strDouble) && strDouble != "")
	return true;
	else
	return false;
}

function validateDoublePrice(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[-]{0,1}[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[-]{0,1}[0-9]{' + minLength + ',' + maxLength + '}[.0-9]{1,3}$');

	if (re.test(strDouble) || re2.test(strDouble) && strDouble != "")
	return true;
	else
	return false;
}

function validateDoublePriceEmptyOk(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[-]{0,1}[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[-]{0,1}[0-9]{' + minLength + ',' + maxLength + '}[.0-9]{1,3}$');

	if (re.test(strDouble) || re2.test(strDouble))
	return true;
	else
	return false;
}

function validateDoubleCurrency(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[-]{0,1}[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[-]{0,1}[0-9]{' + minLength + ',' + maxLength + '}[.]{1,1}[0-9]{1,4}$');

	if (re.test(strDouble) || re2.test(strDouble) && strDouble != "")
	return true;
	else
	return false;
}

function validateDoubleNoItems(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,4}$');

	if ((re.test(strDouble) || re2.test(strDouble)) && strDouble != "")
	return true;
	else
	return false;
}

function validateDouble3(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.,0-9]{1,3}$');

	if (re.test(strDouble) || re2.test(strDouble) && strDouble != "")
	return true;
	else
	return false;
}

function validateDouble4(strDouble, minLength, maxLength)
{
	var re = new RegExp('^-[0-9]{' + minLength + ',' + maxLength + '}$');
	var re2 = new RegExp('^-[0-9]{' + minLength + ',' + maxLength + '}[.,0-9]{1,3}$');
	
	if (re.test(strDouble) || re2.test(strDouble) && strDouble != "")
	return true;
	else
	return false;
}

function validateDouble5(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,4}$');

	if (re.test(strDouble) || re2.test(strDouble) || strDouble == "")
	return true;
	else
	return false;
}

//Används för att tillåta fler variabler !
function validateDouble6(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');
	var re2 = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}[.][0-9]{1,10}$');

	if (re.test(strDouble) || re2.test(strDouble) || strDouble == "")
	return true;
	else
	return false;
}

function validateDoubleNeg(strDouble, minLength, maxLength)
{
	var re = new RegExp('^[0-9]{' + minLength + ',' + maxLength + '}$');

	var re2 = new RegExp('^[-0-9]{' + minLength + ',' + maxLength + '}[.,0-9]{1,3}$');

	if (re.test(strDouble) || re2.test(strDouble) && strDouble != "")
	return true;
	else
	return false;
}

function validateOrgNo(nr)
{
	if (nr != "")
	{
		this.valid=false; 
		if(!nr.match(/^(\d{1})(\d{5})\-(\d{4})$/)){ return false; } 
		this.group=RegExp.$1; 
		this.controldigits=RegExp.$3; 
		this.alldigits=this.group+RegExp.$2+this.controldigits; 
		if(this.alldigits.substring(2,3)<2){ return false } 
		var nn=""; 
		for(var n=0;n<this.alldigits.length;n++){ nn+=((((n+1)%2)+1)*this.alldigits.substring(n,n+1)); } 
		this.checksum=0; 
		for(var n=0;n<nn.length;n++){ this.checksum+=nn.substring(n,n+1)*1; } 
		this.valid=(this.checksum%10==0)?true:false; 
	}
	else
		return this.valid=true
}


function validateDate(element) //Enbart ÅÅÅÅ-MM-DD
{
	var validformat2=/^\d{4}-\d{2}-\d{2}$/ //Kollar så formatet är ÅÅÅÅ-MM-DD

	var returnval=false

	if (element.getAttribute("forceDate") != "1" && element.value == "")
	{
		returnval = true
	}
	else
	{
		if (!validformat2.test(element.value))
		{
			returnval = false;
		}
		else // Om formatet stämmer, kolla om datumet är korrekt.
		{
			if (element.value != "")
			{
				var yearfield=element.value.split("-")[0]
				var monthfield=element.value.split("-")[1]
				var dayfield=element.value.split("-")[2]
			
				var dayobj = new Date(yearfield, monthfield-1, dayfield)
				if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield))
				{
					returnval = false;
				}
				else
					returnval = true
			}
			else
				returnval = true			
		} 
	}
	return returnval;
}


function validateSelect(myValue)
{
	if (myValue != "")
	return true;
	else
	return false;
}

function validateName(strName, minLength, maxLength)
{
	var re = new RegExp('^[ .,´`0-9A-Za-zÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÑÒÓÔÕÖÙÚÛÜÝŸßŠŒŽàáâãäåæçèéêëìíîïðñòóôõöùúûüýÿšž&/@øæÆØ -_]{' + minLength + ',' + maxLength + '}$');
	if (re.test(strName) || strName == "")
	return true
	else
	return false;
}

function validateNameAllowEmpty(strName, minLength, maxLength)
{
	var re = new RegExp('^[ .,´`0-9A-Za-zÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÑÒÓÔÕÖÙÚÛÜÝŸßŠŒŽàáâãäåæçèéêëìíîïðñòóôõöùúûüýÿšž&/@øæÆØ -_]{' + minLength + ',' + maxLength + '}$');
	
	if (re.test(strName) || strName == "")
	return true;
	else
	return false;
}

function displayElement(elementName) 
{
		var elem = document.getElementById(elementName);
		var indicatorElement = document.getElementById(elementName + "Indicator" );
		
		//elem.style.display = ((elem.style.display=='none')?'inline':'none');
		
		if ( elem.style.display == 'none')
		{
			indicatorElement.value = "1";
			elem.style.display = 'inline';
		}
		else
		{
			indicatorElement.value = "0";
			elem.style.display = 'none';
		}
}



function personnummer(nr){ 

// Ska läggas till vid kallning av objektet
// if(!new personnummer(this.value).valid){ alert('Ogiltigt personnummer.'); this.value=''; }

	this.valid=false; 
	if(!nr.match(/^(\d{2})(\d{2})(\d{2})\-(\d{4})$/)){ return false; } 
	this.now=new Date(); this.nowFullYear=this.now.getFullYear()+""; this.nowCentury=this.nowFullYear.substring(0,2); this.nowShortYear=this.nowFullYear.substring(2,4); 
	this.year=RegExp.$1; this.month=RegExp.$2; this.day=RegExp.$3; this.controldigits=RegExp.$4; 
	this.fullYear=(this.year*1<=this.nowShortYear*1)?(this.nowCentury+this.year)*1:((this.nowCentury*1-1)+this.year)*1; 
	var months = new Array(31,28,31,30,31,30,31,31,30,31,30,31); 
	if(this.fullYear%400==0||this.fullYear%4==0&&this.fullYear%100!=0){ months[1]=29; } 
	if(this.month*1>12||this.day*1>months[this.month*1-1]){ return false; } 
	this.alldigits=this.year+this.month+this.day+this.controldigits; 
	var nn=""; 
	for(var n=0;n<this.alldigits.length;n++){ nn+=((((n+1)%2)+1)*this.alldigits.substring(n,n+1)); } 
	this.checksum=0; 
	for(var n=0;n<nn.length;n++){ this.checksum+=nn.substring(n,n+1)*1; } 
	this.valid=(this.checksum%10==0)?true:false; 
	this.sex=parseInt(this.controldigits.substring(2,3))%2; 
} 

function validatePnbr(strNumber)
{
	var result = true;
	
	if (strNumber.length != 11)
	{
		result = false;
	}
	else
	{
	
		var arrNumbers = strNumber.match(/^(\d)(\d)(\d)(\d)(\d)(\d)-(\d)(\d)(\d)(\d)$/);
		var nCheckSum = 0;
		
		if (arrNumbers == null)
		{
		//bool = false;
			
			return false;
		}
	
		for (var nCnt = 1; nCnt <= 9; nCnt++)
		{
			var nTemp = arrNumbers[nCnt] * (nCnt % 2 ? 2 : 1);
			nCheckSum += nTemp >= 10 ? 1 + nTemp % 10 : nTemp;
		}
		nCheckSum = (10 - (nCheckSum % 10)) % 10;
		
		if(nCheckSum != arrNumbers[10])
		{
			result = false;
		}
	}
	
	return  result;
}

function disableButton(val,myObj) 
{

// Denna rad "disableButton(true,this.form);" ska läggas till på onclick på de knappar som inte är submit.

	if(val==true) 
	{
		//Här disablas submitknappen
		//alert("Nu ska den vara osynlig")
		var pageForm = document.getElementById(myObj.id);
		var i = 0;
		for (i = 0; i < pageForm.elements.length; i++ )
		{
			if(pageForm.elements.item(i).type == 'submit' || pageForm.elements.item(i).type == 'button')
			{
				pageForm.elements.item(i).disabled = true
			}
		}
	}
	else
	{
		//Här enablas submitknappen
		//alert("Den ska vara synlig")
		var pageForm = document.getElementById(myObj.id);
		var i = 0;
		for (i = 0; i < pageForm.elements.length; i++ )
		{
			if(pageForm.elements.item(i).type == 'submit' || pageForm.elements.item(i).type == 'button')
			{
				pageForm.elements.item(i).disabled = false
			}
		}
	}
}

function mySubmitForm(objForm)
{
	disableButton(true,objForm)
	validated = true;
	valuesEntered = true;
	errors = "";
	invalidMandatoryFields = 0
	var mandatoryFields = ""
	var pageForm = document.getElementById(objForm.id);
	var i = 0;

	for (i = 0; i < pageForm.elements.length -1; i++ )
	{
		if(pageForm.elements.item(i).type != 'button' && pageForm.elements.item(i).type != 'submit')
		validate(pageForm.elements.item(i));
	}

	if(invalidMandatoryFields == 1)
		mandatoryFields = " obligatoriskt fält är ej ifyllt\n\n"
	else if(invalidMandatoryFields > 1)
		mandatoryFields = " obligatoriska fält är ej ifyllda\n\n"	
	
	if ((! validated ) || (! valuesEntered ))
	{
		disableButton(false,objForm)
		alert("Ett eller flera fält är inte korrekt angivna:\n\n" + textNummer[invalidMandatoryFields] + mandatoryFields + errors);
		return false;
	}
	else
	{
		return true;
	}  
}
