	function FormatNumber(num,decimalNum,bolLeadingZero,bolParens,bolCommas)
	/**********************************************************************
		IN:
			NUM - the number to format
			decimalNum - the number of decimal places to format the number to
			bolLeadingZero - true / false - display a leading zero for
											numbers between -1 and 1
			bolParens - true / false - use parenthesis around negative numbers
			bolCommas - put commas as number separators.
	 
		RETVAL:
			The formatted number!
			
		EXAMPLE:
			FormatNumber(Expression, NumDigitsAfterDecimal, IncludeLeadingDigit,
	             UseParensForNegativeNumbers, GroupDigits)
	 **********************************************************************/
	{ 
		
	        if (isNaN(parseInt(num))) return "NaN";
	
		var tmpNum = num;
		var iSign = num < 0 ? -1 : 1;		// Get sign of number
		
		// Adjust number so only the specified number of numbers after
		// the decimal point are shown.
		tmpNum *= Math.pow(10,decimalNum);
		tmpNum = Math.round(Math.abs(tmpNum))
		tmpNum /= Math.pow(10,decimalNum);
		tmpNum *= iSign;					// Readjust for sign
		
		
		// Create a string object to do our formatting on
		var tmpNumStr = new String(tmpNum);
	
		// See if we need to strip out the leading zero or not.
		if (!bolLeadingZero && num < 1 && num > -1 && num != 0)
			if (num > 0)
				tmpNumStr = tmpNumStr.substring(1,tmpNumStr.length);
			else
				tmpNumStr = "-" + tmpNumStr.substring(2,tmpNumStr.length);
			
		// See if we need to put in the commas
		if (bolCommas && (num >= 1000 || num <= -1000)) {
			var iStart = tmpNumStr.indexOf(".");
			if (iStart < 0)
				iStart = tmpNumStr.length;
	
			iStart -= 3;
			while (iStart >= 1) {
				tmpNumStr = tmpNumStr.substring(0,iStart) + "," + tmpNumStr.substring(iStart,tmpNumStr.length)
				iStart -= 3;
			}		
		}
	
		// See if we need to use parenthesis
		if (bolParens && num < 0)
			tmpNumStr = "(" + tmpNumStr.substring(1,tmpNumStr.length) + ")";
	
		return tmpNumStr;		// Return our formatted string!
	}

	
	
	function checkDate(dateStr){
		//Declaration
		var dateValue = new String(dateStr);
		var dateObj = new Date();
		var dateStr = new String();
		var monthStr = new String();
		var yearStr = new String();
		var dateInt = 0;
		var monthInt = 0;

		
		arr_date = 	dateValue.split('.');		
		dateStr = arr_date[0];		
		monthStr = arr_date[1];
		yearStr = arr_date[2];
		
		
		currDate = dateObj.getDate();
		currMonth = dateObj.getMonth() + 1;
		currYear = dateObj.getFullYear();
		
		//Add single chars zero 
		//Example: 1 -> 01
		if (currDate < 10) currDate = '0' + currDate;
		if (currMonth < 10) currMonth = '0' + currMonth;
		
		var today =  currDate + '.' +  currMonth + '.' + currYear;
		
		dateInt = dateStr;
		monthInt = monthStr;
		
		
		//Check Year
		if (yearStr == null){
			alert('Неправилен формат на датата (дд.мм.гггг)!');
			return today;
		}
		
		
		//Check Date
		if (dateInt > 31) {
			alert('Невалидна дата!');
			return today;
		}
		
		//Check Month
		if (monthInt > 12) {
			alert('Невалидна дата!');
			return today;
		}
		
	
		
		//Check DateString Length
		if (dateValue.length != 10){
			alert('Неправилен формат на датата (дд.мм.гггг)!');
			return today;
		}
	
		return dateValue;
		
	
	
	}
	
		function checkEmail(email_address, file) {
			if (file == ""){
				if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email_address)){
					return (true)
				} else {
					alert("Invalid E-mail Address! Please re-enter.");
					return (false)
				}
			}
		}

		function checkUserForm(email_address, username, name) {
			if (username == ""){
				alert("Invalid username! Please re-enter.");
				return (false)
			}

			if (name == ""){
				alert("Invalid name! Please re-enter.");
				return (false)
			}

			if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email_address)){
				//return (true)
			} else {
				alert("Invalid E-mail Address! Please re-enter.");
				return (false)
			}
		}
	
		function changeLanguage() {
			document.form_lang.submit();
		}

		function relative_message() {
			if (f.member_relative_id.value > 0)
				if (confirm("Искате ли да заместя данните с данните на свързания човек?")) {
					f.member_image_url.disabled=true;
					f.relative.value='yes';
					submitForm();
					f.submit();
				} else f.relative.value='no';
		}
		
		var i = 1;
		var i1 = 1;
		
		function br_onclick() {
			if (i<30) {
				j=i;
				i++;
				//alert (i);
				//eval("document.f.elements.userfile"+j).insertAdjacentHTML("AfterEnd","<br id=\"brid"+i+"\"><input type=\"file\" name=\"userfile"+i+"\" size=\"40\" class=\"inputtext\">");
				if (document.body&&document.body.insertAdjacentHTML) {
					//alert ("have to work");
					eval("document.f.elements.userfile"+j).insertAdjacentHTML("AfterEnd","<br id=\"brid"+i+"\"><input type=\"file\" name=\"userfile"+i+"\" size=\"40\" class=\"inputtext\">");
				} else {
					//alert ("haven't work");
				     if(document.createElement
				        && document.documentElement
				        && (window.opera||navigator.userAgent.indexOf('MSIE 5.0')==-1)) {
				         var file=document.createElement("input");
				         file.setAttribute('id','userfile'+i);
				         file.setAttribute('name','userfile'+i);
				         file.setAttribute('type','file');
				         file.setAttribute('class','inputtext');
				         file.setAttribute('size','40');
				         //file.style.position='absolute';
				         //file.style.width=ifr.style.height=ifr.borderWidth='0px';
				         txt = document.getElementById('userfile1');
				         //prn=document.getElementById("exmpl");
				         prn = txt.parentNode;
				         prn.appendChild(file);
				         //prn.insertAfter(txt, file); 
				         //document.getElementById('f').insertBefore(btn, file);
				         //iframe=document.getElementById('f').insertBefore(btn, file);
				         //iframe=document.getElementById('f').appendChild('<br>');
				         
					}
				}
				document.f.elements.urlcount.value=i;
				cf.innerHTML=document.f.elements.urlcount.value=i;

				//document.f.elements.urlcount.value=i;
				//alert (document.f.elements.urlcount.value);
			}
		}
		
		function bl_onclick() {
			if (i>1) {
				j=i;
				i--;
				cf.innerHTML=i;
				document.f.elements.urlcount.value=i;
			if (document.body&&document.body.insertAdjacentHTML) {
					eval("document.f.elements.userfile"+j+".outerHTML=\"\"");
					//alert (i);
					eval("brid"+j+".outerHTML=\"\"");
			} else {
				//alert(document.getElementById('userfile' + j));
				elem = document.getElementById('userfile' + j);
				prn = elem.parentNode;
				prn.removeChild(elem);
			}
			
			}
		}

		function img_br_onclick() {
			if (i1<30) {
				j=i1;
				i1++;
				if (document.body&&document.body.insertAdjacentHTML) {
					eval("document.f.elements.imgfile"+j).insertAdjacentHTML("AfterEnd","<br id=\"brid"+i1+"\"><input type=\"file\" name=\"imgfile"+i1+"\" size=\"40\" class=\"inputtext\">");
				} else {
				     if(document.createElement
				        && document.documentElement
				        && (window.opera||navigator.userAgent.indexOf('MSIE 5.0')==-1)) {
				         var file=document.createElement("input");
				         file.setAttribute('id','imgfile'+i1);
				         file.setAttribute('name','imgfile'+i1);
				         file.setAttribute('type','file');
				         file.setAttribute('class','inputtext');
				         file.setAttribute('size','40');
				         //file.style.position='absolute';
				         //file.style.width=ifr.style.height=ifr.borderWidth='0px';
				         txt = document.getElementById('imgfile1');
				         //prn=document.getElementById("exmpl");
				         prn = txt.parentNode;
				         prn.appendChild(file);
				         //prn.insertAfter(txt, file); 
				         //document.getElementById('f').insertBefore(btn, file);
				         //iframe=document.getElementById('f').insertBefore(btn, file);
				         //iframe=document.getElementById('f').appendChild('<br>');
				         
					}					
				}
				document.f.elements.imgcount.value=i1;
				cf2.innerHTML=document.f.elements.imgcount.value;
				//alert (i);
			}
		}
		function img_bl_onclick() {
			if (i1>1) {
				j=i1;
				i1--;
				cf2.innerHTML=i1;
				document.f.elements.imgcount.value=i1;
			if (document.body&&document.body.insertAdjacentHTML) {
				eval("document.f.elements.imgfile"+j+".outerHTML=\"\"");
				//alert (i);
				eval("brid"+j+".outerHTML=\"\"");
			} else {
				//alert(document.getElementById('imgfile' + j) + j);
				elem = document.getElementById('imgfile' + j);
				prn = elem.parentNode;
				prn.removeChild(elem);
			}
			
		}
		}
		
		function addFileEvent(lang_array, names) {
			//alert (lang_array);
			var ni = document.getElementById('myDiv');
			var numi = document.getElementById('theValue');
			//alert (numi);
			var num = (document.getElementById("theValue").value -1)+ 2;
			numi.value = num;
			var divIdName = "my"+num+"Div";
			var newdiv = document.createElement('div');
			newdiv.setAttribute("id",divIdName);
			var htmlText = "";//" + names[i]: + " 
			var i;
			for (i in lang_array) {
				htmlText = htmlText + "<br>" + names[i] + ":<input type=text name=divl_"+num+"_" + lang_array[i] + " class=inputtext>";
			}
			newdiv.innerHTML = "Description:" + htmlText + "&nbsp;&nbsp;&nbsp;image:<input type=file class=inputtext id=divr_"+num+" name=divr_"+num+"> <a href=\"javascript:;\" onclick=\"removeEvent(\'"+divIdName+"\')\">Remove item;</a><hr>";
			ni.appendChild(newdiv);
		}
		
		function addEvent(lang_array, names) {
			//alert (lang_array);
			var ni = document.getElementById('myDiv');
			var numi = document.getElementById('theValue');
			//alert (numi);
			var num = (document.getElementById("theValue").value -1)+ 2;
			numi.value = num;
			var divIdName = "my"+num+"Div";
			var newdiv = document.createElement('div');
			newdiv.setAttribute("id",divIdName);
			var htmlText = "";//" + names[i]: + " 
			var i;
			for (i in lang_array) {
				htmlText = htmlText + "<br>" + names[i] + ":<input type=text name=divl_"+num+"_" + lang_array[i] + " class=inputtext>";
				htmlText = htmlText + "<input type=hidden id=h1sum_" + num + " value=0>";
			}
			newdiv.innerHTML = "item:" + htmlText + "&nbsp;&nbsp;&nbsp;sum:<input type=text class=inputtext id=divr_"+num+" name=divr_"+num+" onchange='calculate(this, \"\h1sum_" + num + "\")'> <a href=\"javascript:;\" onclick=\"removeEvent(\'"+divIdName+"\')\">Remove item;</a><hr>";
			ni.appendChild(newdiv);
		}
			
		function removeEvent(divNum){
			var d = document.getElementById('myDiv');
			var olddiv = document.getElementById(divNum);
			d.removeChild(olddiv);
		}
		
		function calculate(el, id) {
			if (digitvalidation(el, 1, 9, "Please enter a digit", "")) {
				var numi = document.getElementById('theValue');
				var msum = 0; 
				if (id != "") {
					msum = document.getElementById(id).value;
					//alert (msum);
					document.getElementById(id).value = el.value;
				}
				//alert(numi.value);
				var total=document.getElementById('total');	
				//alert (total.value); 
				//alert ("element valu=" + el.value);
				total.value=Number(total.value) - Number(msum) + Number(el.value);	
			}
			else el.value = "0";
			el.focus();
		}

		function digitvalidation(entered, min, max, alertbox, datatype){
			// Digit Validation by Henrik Petersen / NetKontoret
			// Explained at www.echoecho.com/jsforms.htm
			// Please do not remove this line and the two lines above.
			with (entered){
				checkvalue=parseFloat(value);
				if (datatype){
					smalldatatype=datatype.toLowerCase();
					if (smalldatatype.charAt(0)=="i") {
						checkvalue=parseInt(value); 
						if (value.indexOf(".")!=-1) {
							checkvalue=checkvalue+1
						}
					};
				}
				if ((parseFloat(min)==min && value.length<min) || (parseFloat(max)==max && value.length>max) || value!=checkvalue){
					if (alertbox!="") {
						alert(alertbox);
					} return false;}
				else {return true;}
			}
		} 
