// JScript source code

function validate(obj, funct) {
	if (obj.value.length > 6) {
		alert('Only numbers below 1,000,000 are allowed!');
		obj.value = obj.value.substr(0, 8);
	}

	if (isNaN(obj.value)) {
		var str = new String(obj.value);
		var i = new Number(0);
		
		alert('This form accept only numeric values!');
		obj.value = '';

		for (i=0; i<str.length; i++) {
			if ((str.charAt(i) >= '0' && str.charAt(i) <= '9') || str.charAt(i) == '.') obj.value += str.charAt(i);
		}
	} else {
		if (funct.length > 0) eval(funct);
	}
}

function test_max_length(obj, max_len) {
	if (obj.value.length > Number(max_len)) {
		alert('In this text box are allowed only ' + max_len + ' characters!');
		obj.value = obj.value.substr(0, max_len);
	}
}


function extract_number(str) {
	var i = new Number();
	var buffer = new String("");
	var str_value = new String(str);
	
	for (i=0; i<str_value.length; i++) {
		if ((str_value.charAt(i) >='0' && str_value.charAt(i) <= '9') || str_value.charAt(i) == '.') buffer+=str_value.charAt(i);
	}
	
	return (buffer.length>0)?Number(buffer):0;
}

function format(input) {
    var result, len;
    var start_offset = new Number(0);
    
    input += "";
    // test if that string starts with sm bogus characters ... 
    while ((input.charAt(start_offset) < '0' || input.charAt(start_offset) > '9') && start_offset < input.length){start_offset++;}
    
    len = input.indexOf(".");
    if(len == -1) {
        len = input.length;
        result = "";
    }
    else {
        result = input.substring(len, input.length);
    }
    
    while(len > 3 + start_offset) {
        result = input.substring(len-3, len) + result;
        result = "," + result;
        len -= 3;
    }

	result = input.substring(0, len) + result;

    return result;
}		

function get_number(str) {
	//return Number(document.getElementById(str).value);
	//alert('get_number');
	return Number( eval("document.edit_data." + str + ".value"));
}

function get_calculated_number(str) {
//	return extract_number(document.getElementById(str).value);
	var buff = new String("");
	//var field_val = new String(document.getElementById(str).innerText);
	var field_val = new String(eval("document.all." + str + ".innerText"));
	var i = new Number(0);
	
	if (field_val.length > 0) {
		for (i=0; i<field_val.length; i++)
			if ((field_val.charAt(i)>='0' && field_val.charAt(i)<='9') || field_val.charAt(i)=='.') buff += field_val.charAt(i);
	}

	//alert(buff);

	return (buff.length>0)?Number(buff):0;
}

function get_combo_value(str) {
	return eval("document.getElementById(\"" + str + "\").options[document.getElementById(\"" + str + "\").selectedIndex].value");
}

function set_currency(number_value) {
	var new_number = new String(number_value);
	var dot_pos = new_number.indexOf('.', 0);
	
	if (dot_pos != 0) {
	}
}

function get_hidden(obj) {
	return eval("document.getElementById('h_" + obj.id + "')");
}

function min(a, b) {
	if (a <= b) {
				return Number(a)
			 }
	else	 {
				return Number(b)
			 }
}
function max(a, b) {
	if (a >= b) {
				return Number(a)
			 }
	else	 {
				return Number(b)
			 }
}

function cut_decimals(number, decimals) {
	var dot_pos = new Number(0);
	var str_number = new String(number);
	var str_ret = new String();
	
	if (!isNaN(number)) {
		dot_pos = str_number.indexOf(".", 0);
		
		str_ret = str_number.substr(0, dot_pos) + "." + str_number.substr(dot_pos + 1, decimals) ;
	} else
		str_ret = "0";
	return Number(str_ret);		
}


/*

function table_calculator() {
	this.text = new Array();
	this.type = new Array();
	this.name = new Array();
	this.defaults = new Array();
	
	this.description = new Array();
	this.ok_keyup_events = new Array();
	this.form_title = new String("");
	this.clear = new Boolean(true);
	this.help = new Boolean(true);

	this.set_title = function(title) {
		this.form_title = title;
	}
	
	this.clear = function() {
		var i = new Number();
		
		for (i=0; i<this.text.length; i++) {
			switch (this.type[i]) {
				case "text":
					document.getElementById(this.name[i]).value = this.defaults[i];
					break;
				case "dots":
					document.getElementById(this.name[i]).innerText = "................";
					break;
			}	// switch
		}
	}

	this.add_item = function(item_text, item_type, item_name, item_description, item_update, default_value) {
		this.text.push(item_text);
		this.type.push(item_type);
		this.name.push(item_name);
		this.description.push(item_description);
		this.ok_keyup_events.push(item_update);
		
		if (default_value)
			this.defaults.push(default_value);
		else
			this.defaults.push("");
	}
	
	this.draw_stuff = function() {
		var i = new Number(0);
	
		document.write("<table width='100%' border='0' cellpadding='0' cellspacing='0'>");
//		document.write("<tr bgcolor='yellow'><td align='center' colspan='2'><B>" + this.form_title + "</B></td></tr>");
		
		for (i=0; i<this.text.length; i++) {
			document.write("<tr><td width='6px'></td><td>");
			document.write("<font face=\"arial\" size=\"-1\">" + this.text[i] + "</font>");
			document.write("</td><td align='right'>");
			switch (this.type[i]) {
				case "title":
				case "spacer":
					document.write("&nbsp;");
					break;
				case "text":
					document.write("<input type='text' style='width:70px' name='" + this.name[i] + "' onkeyup='validate(this, ");
					if (this.ok_keyup_events[i]!=null) {
						document.write ("\"" + this.ok_keyup_events[i] + "\"");
						}
					else {
						document.write ("\"\"");
						}
						
					document.write(")' ");
					
					if (this.defaults[i]) {
						document.write(" value='" + this.defaults[i] + "' ");
					}
					
					document.write(">");
					break;
				case "dots":
					document.write("<font face='arial' size='-1'><div id='" + this.name[i] + "' align='right' style='font-weight:bold'>................</div></font>");
					break;
			}
			
			document.write("</td></tr>");
		}
		
		if (this.clear || this.help) {
			document.write("<tr><td colspan='3' align='center'>");
			if (this.clear) document.write("<input type='button' name='reset' value='Clear' onclick='calc.clear()'>");
			if (this.clear || this.help) document.write("&nbsp;&nbsp;&nbsp;");
			if (this.help) document.write("<input type='button' name='help' value='Help' onclick='alert(\"need sm help?\")'>");
			document.write("</td></tr>");
		}
		
		document.write("</table>");
//		document.write("<script language=\"javascript\">");
//		document.write("document.getElementById(\"reset\").onclick = calc.clear();");
//		document.write("</script>");
	}
}


var calc = new table_calculator();
*/
