// currency format

function resize(image_seq) {
  var i=0;
  var add_size = 50;
  if (navigator.appName == 'Netscape') i=40;
	//if(document.images[1].width < 270) add_size=300;
  if (document.images[image_seq]) window.resizeTo(document.images[image_seq].width +add_size, document.images[image_seq].height+add_size);
  self.focus();
}

function formatCurrency(prefix, suffix, k_sep, c_sep, num) {
/*
	var prefix = '';
	var suffix = '&nbsp;&euro;';
	var k_sep = ',';
	var c_sep = '.';
*/
	var num = num.toString().replace(/\$|\,/g,'');

	if(isNaN(num))
		num = "0";

	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num * 100 + 0.50000000001);
	cents = num % 100;
	num = Math.floor(num / 100).toString();

	if(cents < 10)
		cents = "0" + cents;

	for (var i = 0; i < Math.floor((num.length - ( 1 + i )) / 3); i++)
		num = num.substring(0, num.length - (4 * i + 3)) + k_sep + num.substring(num.length - (4 * i + 3));

	return (((sign)? '' : '-') + prefix + num + c_sep + cents + suffix);
}

// redirect to a given url -- Chee Leong 20/09/2004
function go_to(url) {
	document.location.href = url;
}

// form validation functions -- Chee Leong 21/09/2004
function is_empty(value) {
	if(value == '')
		return true;
	else
		return false;
}

// form validation functions -- yploo 23/09/2004
// Required Field
// - td id for showing the errormsg should be <element's name>_err
// - the element only considered as required field while <element's name>_err appear in that form
//  Confirmation
// - the function will validate the confirmation field while 'confirm' word appear in the element name and 
//   the remaining word for that element name is an another element's name in the form.
//   eg. if confirmemail and email is two element's name in the form, then function will check the confirmation
// Email
// - if the element's name content the 'email' word, then function will validate the email format
// Tel
// - if the element's name content the 'tel' word, then function will validate the tel format

/*
 function validateform(docform,docall) {
	var d = docform;
	var pass =true;
	var i=0;
	var errorColor = '#E1CCE1';
 
	for(i=0; i<d.elements.length; i++) {
		//check if it have td which id is <inputname>_err
		if(docall[d.elements[i].name+'_err']){
			if(d.elements[i].value==''){
				docall[d.elements[i].name+'_err'].style.display = 'inline';
				docall[d.elements[i].name].style.background = errorColor;
				pass =  false;
			}
			else{
				docall[d.elements[i].name+'_err'].style.display = 'none';
				docall[d.elements[i].name].style.background = '#FFFFFF';
				//check confirmation
				if(d.elements[i].name.search(/confirm/gi)!=-1){
					if((d[d.elements[i].name.replace(/confirm/gi,'')])&&d[d.elements[i].name.replace(/confirm/gi,'')].value!=''){
						if(d[d.elements[i].name.replace(/confirm/gi,'')].value!=d.elements[i].value){
							docall[d.elements[i].name+'_err'].style.display = 'inline';
							docall[d.elements[i].name].style.background = errorColor;
							pass = false;
						}
					}
				}
				//validate for tel input
				if(d.elements[i].name.search(/tel/gi)!=-1){
					
					//alert('tel');
				}
				
				//validate numeric input
				
				if(d.elements[i].name.search(/postcode/gi)!=-1){
					
					if(!is_number(d.elements[i].value)){
						docall[d.elements[i].name+'_err'].style.display = 'inline';
						docall[d.elements[i].name].style.background = errorColor;
						pass = false;
						
					}
				}
				
				//validate email input
				if(d.elements[i].name.search(/email/gi)!=-1){
					if(!is_email(d.elements[i].value)){
						docall[d.elements[i].name+'_err'].style.display = 'inline';
						docall[d.elements[i].name].style.background = errorColor;
						pass = false;
						
					}
				}
			}
			
		}
		
	}
	return pass;
	
}  */

function is_email(email) {
	var pattern = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/;
	var flag = pattern.test(email);
	if(!flag)
		return false;
	else
		return true;
}

// check numeric
function is_number(value){
	var checkOK = "0123456789";
	var i;
	var j;
	
	for (i = 0 ; value.length > i ; i++) {
		ch = value.charAt(i);
		for (j = 0 ; checkOK.length > j ; j++)
			if (ch == checkOK.charAt(j))
				break;
		if (j == checkOK.length)				
			return false;
	}
	return true;
}

//--open a new popup window
function NewWindow(mypage, myname, w, h, scroll) {

	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;

	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',noresize'
	win = window.open(mypage, myname, winprops);

	if (parseInt(navigator.appVersion) >= 4) {
		win.focus();
	}
}


function validate_form(d,docall){
	var pass =true;
	var i=0;
	
	for(i=0; i<d.elements.length; i++) {
		//check if it have td which id is inputname>_err
		if(docall[d.elements[i].name+'_err']){
			if(d.elements[i].value==''){
				docall[d.elements[i].name+'_err'].style.color = '#FFFF00';
				pass =  false;
			}
			else{
				docall[d.elements[i].name+'_err'].style.color = '#FFFFFF';

				//check confirmation
				if(d.elements[i].name.search(/confirm/gi)!=-1){
					if((d[d.elements[i].name.replace(/confirm/gi,'')])&&d[d.elements[i].name.replace(/confirm/gi,'')].value!=''){
						if(d[d.elements[i].name.replace(/confirm/gi,'')].value!=d.elements[i].value){
							docall[d.elements[i].name+'_err'].style.color = '#FFFF00';
							pass = false;
						}
					}
				}
				//validate for tel input
				if(d.elements[i].name.search(/tel/gi)!=-1){
					if(!is_number(d.elements[i].value)){
						docall[d.elements[i].name+'_err'].style.color = '#FFFF00';
						pass = false;
					}
					//alert('tel');
				}
				
				//validate date of birth				
				if(d.elements[i].name.search(/DOB/gi)!=-1){
					if(checkDate(d.elements[i].value)==false){
						docall[d.elements[i].name+'_err'].style.color = '#FFFF00';
						pass = false;
					}
				}
				
				//validate numeric input
				
				if(d.elements[i].name.search(/postcode/gi)!=-1){
					if(!is_number(d.elements[i].value)){
						docall[d.elements[i].name+'_err'].style.color = '#FFFF00';
						pass = false;
					}
				}
				
				//validate email input
				if(d.elements[i].name.search(/email/gi)!=-1){
					if(!is_email(d.elements[i].value)){
						docall[d.elements[i].name+'_err'].style.color = '#FFFF00';
						pass = false;
					}
				}
			}
		}
	}
	
	return pass;
	
} 