
currentFontSize=12;

function zoomIn() {
	el=document.getElementById('padder');
	currentFontSize++;
	el.style.fontSize=''+currentFontSize+'px';
}

function zoomOut() {
	el=document.getElementById('padder');
	if (currentFontSize>8){
		currentFontSize--;
		el.style.fontSize=''+currentFontSize+'px';
	}
}

function openWindow() {
    // params should be (in order)
	// url, width, height, window name, resizable (true or false), show_menu (true or false)

    var url;
    var width=600;
    var name='pop_up';
    var height=400;
    var resizable=true;
    var show_menu=false;
    if (arguments.length>0) url=arguments[0];
    if (arguments.length>1) width=arguments[1];
    if (arguments.length>2) height=arguments[2];
    if (arguments.length>3) name=arguments[3];
    if (arguments.length>4) resizable=arguments[4];
    if (arguments.length>5) show_menu=arguments[5];

    var win;
    var arg='width='+width+',height='+height+',toolbar='+(show_menu?'yes':'no')+',locationbar=no,statusbar=no,menubar=no,scrollbars=yes,dependent=yes,alwaysRaised=yes,resizable='+(resizable?'yes':'no');
    win=window.open(url,name,arg)
    return win;
}

function parseFixed(val,no_dec) {
    var allow_empty=true;
    if (arguments.length==3) allow_empty=arguments[2];
    var new_val=val.replace(/,/,'');
    new_val=parseFloat(new_val);
    if (isNaN(new_val)) {
	if (allow_empty) return 'n/a';
	else new_val=0;
    }
    return new_val.toFixed(no_dec);
}

function check_date(form,datename) {
	d=parseInt(form.elements[datename+'[day]'].value,10);
	m=parseInt(form.elements[datename+'[mon]'].value,10)-1;
	y=parseInt(form.elements[datename+'[year]'].value,10);
	datanoua = new Date(y,m,d,12,0,0);  
	if (datanoua) ret=true;
		else ret=false;

	if (ret) {
		if ( (d==datanoua.getDate()) &&
			(m==datanoua.getMonth()) &&
			(y==datanoua.getFullYear()) ) 
					ret=true; else ret=false;
		timestamp=datanoua.getTime()/1000;
		if ( (arguments.length>2) && (timestamp<arguments[2]) ) ret=false;
		if ( (arguments.length>3) && (timestamp>arguments[3]) ) ret=false;
	}


	return(ret);
}

function populatedate(frm,datename,ts) {
    val=new Date();
    val.setTime(ts*1000);
    frm.elements[datename+'[year]'].value=val.getFullYear();
    frm.elements[datename+'[mon]'].value=val.getMonth()+1;
    if (frm.elements[datename+'[mon]'].value.length==1) frm.elements[datename+'[mon]'].value='0'+frm.elements[datename+'[mon]'].value;
    frm.elements[datename+'[day]'].value=val.getDate();
    if (frm.elements[datename+'[day]'].value.length==1) frm.elements[datename+'[day]'].value='0'+frm.elements[datename+'[day]'].value;
}

function parsedate(form,datename) {
	d=parseInt(form.elements[datename+'[day]'].value,10);
	m=parseInt(form.elements[datename+'[mon]'].value,10)-1;
	y=parseInt(form.elements[datename+'[year]'].value,10);
	el=form.elements[datename+'[hour]'];
	if (el) h=parseInt(el.value,10);
	else h=0;
	el=form.elements[datename+'[min]'];
	if (el) i=parseInt(el.value,10);
	else i=0;

	data = new Date(y,m,d,h,i,1);
	return(data.getTime()/1000);
}

function getUtcDate(form,date_name) {
    var day=form.elements[date_name+'[day]'].value;
    var month=form.elements[date_name+'[mon]'].value;
    var year=form.elements[date_name+'[year]'].value;
    var utc_date=Date.UTC(year,month-1,day);
    return utc_date;
}
function setDate(form,days,utc_date,date_name) {
    utc_date+=days*3600*24*1000;
    date=new Date(utc_date);
    form.elements[date_name+'[day]'].value=date.getDate(date);
    form.elements[date_name+'[mon]'].value=date.getMonth(date)+1;
    form.elements[date_name+'[year]'].value=date.getFullYear(date);
}


str_empty = "\\s*";

str_host = "[-0-9a-zA-Z]+(\\.[-0-9a-zA-Z]+)+";

str_path = "\\/?[-/.0-9a-zA-Z&?%=_#]*";

str_email = "[-_.0-9a-zA-Z]+([+][-_.0-9a-zA-Z]+)*@"+str_host;

str_url = "((http:\\/\\/)|(ftp:\\/\\/)|(www[.])|(ftp[.]))"+str_host+"(\\/"+str_path+")?";

str_tel = "(([(][+]?[0-9]{2,3}[)])|([+]?[0-9]{2,3}))?[-. 0-9]{2,30}";           

str_int = "[+-]?[0-9]+";

str_pc = "[0-9]{4,5}";

str_float = "[-+]?[0-9]*(\\.[0-9]*)?";

str_pass = ".{4,}";

str_year = "((19)|(20))[0-9]{2}";

pcre_empty = new RegExp("^"+str_empty+"$");

pcre_host = new RegExp("^"+str_host+"$");

pcre_path = new RegExp("^"+str_path+"$");

pcre_email = new RegExp("^"+str_email+"$");

pcre_url = new RegExp("^"+str_url+"$");

pcre_tel = new RegExp("^"+str_tel+"$");

pcre_int = new RegExp("^"+str_int+"$");

pcre_pc = new RegExp("^"+str_pc+"$");

pcre_float = new RegExp("^"+str_float+"$");

pcre_pass = new RegExp("^"+str_pass+"$");

pcre_year = new RegExp("^"+str_year+"$");


function array2str(arr) {
    msg="";
    for(i=0;i<arr.length;i++) {
	msg+=(i+1)+". "+arr[i]+"\n";
    }
    return msg;
}
