<!--
/* reload the page */
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

/* search the dom for the job named */
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document;
  if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
  }
  if(!(x=d[n])&&d.all) {
    x=d.all[n];
  }
  for (i=0;!x&&i<d.forms.length;i++) {
    x=d.forms[i][n];
  }
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) {
    x=MM_findObj(n,d.layers[i].document);
  }
  if(!x && d.getElementById) {
    x=d.getElementById(n);
  }
  // alert('object ' + n + ' is ' + x);
  return x;
}

/* find then set a layers visibility */
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) {

        if ((obj=MM_findObj(args[i]))!=null) {
            v=args[i+2];
            if (obj.style) {
                obj=obj.style;
                v=(v=='show')? 'visible' : (v=='hide')? 'hidden':v;
            }
            obj.visibility=v;
	    }
  }
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function XM_images(n,o,d,l) { //v1.0
	this.obj=MM_findObj(n);this.n=n;this.u=this.obj.src;this.s=1;this.o=o;this.d=d;
	this.swap=function() {if(this.s==1){this.obj.src=this.o;this.s=2}}
	this.stick=function() {this.obj.src=this.d;this.s=3;XM_unStick(this.n)}
	this.restore=function(){if(this.s==2){this.obj.src=this.u;this.s=1}}
	if (document.location.href.indexOf(l)!=-1) this.stick()
}
function XM_unStick(n){ //v1.0
	for (var i=0;i<document.XM_img.length;i++)if (document.XM_img[i].n!=n)
	{document.XM_img[i].s=2;document.XM_img[i].restore()}
}
function XM_initImages() { //v1.0
	var a=XM_initImages.arguments;document.XM_img=new Array();for(i=0;i<a.length;i=i+4){
	document.XM_img[document.XM_img.length]=new XM_images(a[i],a[i+1],a[i+2],a[i+3])}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_swapImgRestoreSpecific() {
  var i,j=0,x,a=MM_swapImgRestoreSpecific.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.src) x.src=xoSrc; x.src=a[i+2];}
}

// display popup info div at the position of the mouse pointer
function positionDivMinusXY(div_id, state, e, x, y) {
    var iebody=(document.compatMode && document.compatMode != "BackCompat")? document.documentElement : document.body

    // find the div to move
    element = MM_findObj(div_id);
    if (document.all) {
        // the window.event is a mouse move
        element.style.left = (iebody.scrollLeft + window.event.x) - (x-0);
        element.style.top = (iebody.scrollTop + window.event.y) - (y-0);
    }
    else {
        // e = mouse move event
        element.style.left = e.pageX - (x-0);
        element.style.top = e.pageY - (y-0);
    }


    if (state == "show") {
      // now that the div has been moved into position show it.
      element.style.visibility = "visible";
      element.style.zIndex= 9;
    }else{
      element.style.visibility = "hidden";
      element.style.zIndex= -1;
    }
}

function validateSearchForm() {
	var err = 0;
	var errors='';
	var email = /^.+\@.+\..+$/;

	if (!trim(document.form.q_search.value)) {
		errors += ' - you must enter the full name or the surname\n of either the bride or groom\n';
		err += 1;
	}

	if (err > 0) {
		alert('The following error(s) occurred:\n'+errors);
	}

	return (err == 0);
}

function submitSearchForm(){
	if (validateSearchForm()) {
          document.form.fa.value = 's_bl';
		document.form.submit();
	}
	return false;
}

function getSearch(div_name, fa){
   if(div_name == ''){
      div_name = 'list_results';
   }
   if(fa == ''){
      fa = 's_bl_aj';
   }

   url = '/webajax.html?fa=' + fa 
   url = url + "&q_search=" + document.form.q_search.value;
   url = url + '&page=0';
   makeRequest(url,div_name,false);
}

function submitHiddenFormAdvanced(page_count, fa, div_id){
    document.form.page.value = page_count;
    var url = '/webajax.html?fa=' + fa 
    url = url + "&q_search=" + document.form.q_search.value;
    url = url + "&page=" + document.form.page.value;
    return makeRequest(url, div_id, false);
}

function closeForm(){
    document.form.fa.value = 'v_bl';
    document.form.submit();
}

function validateOrderForm() {
      var err = 0;
      var errors='';
      var email = /^.+\@.+\..+$/;

      if (!trim(document.form.name.value)) {
           errors += ' - you must enter a name\n';
           err += 1;
      }
  
      if (!trim(document.form.address_1.value)) {
           errors += ' - you must enter an Address Line 1\n';
           err += 1;
      }

      if (!trim(document.form.postcode.value)) {
           errors += ' - you must enter a Postcode\n';
           err += 1;
      }

      if (!trim(document.form.country.value)) {
           errors += ' - you must enter a Country\n';
           err += 1;
      }

      if (!trim(document.form.email.value)) {
          err += 1;
          errors += ' - the must enter an email\n';
      }
  
      if (document.form.email.value && email.test(document.form.email.value) == false) {
          err += 1;
          errors += ' - the email is in an invalid format\n';
      }
        
      if (err > 0) {
           alert('The following error(s) occurred:\n'+errors);
      }
  
	return (err == 0);
}

function submitOrderForm(){
	if (validateOrderForm()) {
          document.form.address.value = document.form.address_1.value +  ' ' + document.form.address_2.value +  ' ' + document.form.address_3.value +  ' ' + document.form.county.value ;
          document.form.tel.value = document.form.telephone.value;
          document.form.country2.value = document.form.country.options[document.form.country.selectedIndex].text;
		document.form.submit();
	}
	return false;
}

function validateCreateForm() {
      var err = 0;
      var errors='';
      var email = /^.+\@.+\..+$/;

      if (!trim(document.form.brides_name.value)) {
           errors += ' - you must enter your name\n';
           err += 1;
      }

      if (!trim(document.form.grooms_name.value)) {
           errors += ' - you must enter your partner\'s name\n';
           err += 1;
      }
  
      if (!trim(document.form.address.value)) {
           errors += ' - you must enter an Address\n';
           err += 1;
      }

      if (!trim(document.form.wedding_date.value)) {
          err += 1;
          errors += ' - you must enter the wedding date\n';
      }
 
      if (!isDate(document.form.wedding_date.value)) {
          err += 1;
          errors += ' - the wedding date must be in the format dd-mm-yyyy\n';
      }

      if (!trim(document.form.email.value)) {
          err += 1;
          errors += ' - you must enter an email\n';
      }
  
      if (document.form.email.value && email.test(document.form.email.value) == false) {
          err += 1;
          errors += ' - the email is in an invalid format\n';
      }

      if (!trim(document.form.telephone.value)&&!trim(document.form.mobile.value)) {
          err += 1;
          errors += ' - the must enter a contact number\n';
      }

      if (document.form.branch_id.value < 1) {
          err += 1;
          errors += ' - you must select a branch\n';
      }
        
      if (err > 0) {
           alert('The following error(s) occurred:\n'+errors);
      }
  
	return (err == 0);
}
function submitCreateForm(){
	if (validateCreateForm()) {
		document.form.submit();
	}
	return false;
}
function selectBridalList(id){
    if(id > 0){
      document.form.fa.value = 'v_bl';
      document.form.cp_id.value = id;
      document.form.submit();
    }
    return false;
}

function checkIfEnter(e,area){

    if (document.all) {
      if(window.event.keyCode == 13){
        if(area =="search"){
          submitSearchForm();
          return true;
        }
      }
      return false;
    } else {
      if(e.keyCode == 13){
        if(area =="search"){
          submitSearchForm();
          return true;
        }
      }
      return false;
    }
    return false;
}

function getFloatingBox() {
     var cart_group;
     var coordinates = ToolMan.coordinates() ;
     var cart_drag = ToolMan.drag() ;
     var cart_boxHandle = document.getElementById("cartLayer");
     cart_group = cart_drag.createSimpleGroup(cart_boxHandle, document.getElementById("cartHandle"));

}

function submitCartFunc(fa,id,bli_id,qty){
    if(qty != '' || fa == 'so_p_del_cart'){
      var url = "/webajax.html?fa=" + fa ;
      url = url + "&cp_id=" + id ;
      url = url + "&bli_id=" + bli_id ;
      url = url + "&qty=" + qty ;
      makeRequest(url,'viewCartLayer',false);
    }
     return false;
}

/**
* check the date format
*/
function checkDateFormat(object,value){
	var selLength = value.length;

	if(selLength == 6){
	  var day = value.substring(0,2);
	  var month = value.substring(2,4);
	  var year = value.substring(4,6);
	  year = '20' + year;
	  object.value = day + '-' + month + '-' + year;
	}else if (selLength == 8 || selLength == 10){
	    var pos1 = 0;
		var pos2 = 0;
		pos1 = value.indexOf('/');
		if(pos1 > 0){
		  pos2 = value.indexOf('/',pos1+1);
		}else{
		  pos1 = value.indexOf('.');
		  if(pos1 > 0){
			pos2 = value.indexOf('.',pos1+1);
		  }else{
              pos1 = value.indexOf('-');
              if(pos1 > 0){
                 pos2 = value.indexOf('-',pos1+1);
              }
            }
		}

		if(pos1 == 2 && pos2 == 5){
		  var day = value.substring(0,2);
		  var month = value.substring(3,5);
		  if(selLength == 8){
			var year = value.substring(6,8);
               if(year < '20'){
                  year = '20' + year;
               }else{
                  year = '19' + year;
               }
		  }else{
			var year = value.substring(6,10);
		  }
		  object.value = day + '-' + month + '-' + year;
		}else if (selLength == 8){
		  var day = value.substring(0,2);
		  var month = value.substring(2,4);
		  var year = value.substring(4,8);
		  //year = '20' + year;
		  object.value = day + '-' + month + '-' + year;
		}
	}else if (selLength == 1 || selLength == 2){
	  if(selLength == 1){
		var day = '0' + value;
	  }else{
		var day = value;
	  }

	  var date = new Date();
//	  var strDate = date.toGMTString();

      // get the day month and years
      var month    = date.getMonth()+1;
	  if(month-0 < 10){
		month = '0' + month;
	  }
      var year     = date.getYear();

	  object.value = day + '-' + month + '-' + year;
	}
}


	var http_request = false;
	var ajax_display = false;
	var tmp_url;
	var tmp_resultStr;
	var tmp_show;

	function makeRequest(url,ResultStr,show) {
		http_request = false;
		if(show == true){
			ajax_display = true;
		}

		if (window.XMLHttpRequest) { // Mozilla, Safari,...
			http_request = new XMLHttpRequest();
			if (http_request.overrideMimeType) {
					http_request.overrideMimeType('text/xml');
					// See note below about this line
			}
		} else if (window.ActiveXObject) { // IE
			try {
					http_request = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
					try {
						http_request = new ActiveXObject("Microsoft.XMLHTTP");
					} catch (e) {http_request = false}
			}
		}
		//this line is need because of IE caching issue
		url = url + "&hash=" + Math.random();

		if (!http_request) {
			alert('Cannot create an XMLHTTP instance');
			return false;
		}

		document.result.resultStr.value = ResultStr;
		http_request.onreadystatechange = alertContents;
		http_request.open('GET', url, true);
		http_request.send(null);
//		alert('here');
//		http_request.send(null);
		return false;

	}

	function alertContents() {

/*		if (http_request.readyState == 0){
			document.view_premises_form.blah.value = 'UNINITIALIZED';
		}else if(http_request.readyState == 1){
			document.view_premises_form.blah.value = 'LOADING';
		}else if(http_request.readyState == 2){
				document.view_premises_form.blah.value = 'LOADED';
		}else if(http_request.readyState == 3){
			document.view_premises_form.blah.value = 'INTERACTIVE';
		}else	if (http_request.readyState == 4) {
			document.view_premises_form.blah.value = 'COMPLETED';
*/

		if (http_request.readyState == 4) {
			if (http_request.status == 200 ){ //|| http_request.status == 304) {
				result_div_id = document.result.resultStr.value;
				if(result_div_id && result_div_id != ''){
					obj = MM_findObj(result_div_id);
					if(obj){
						obj.innerHTML = http_request.responseText;
						if(ajax_display == true){
							obj.style.visibility = "visible";
						}
					}
					document.result.resultStr.value = '';
					ajax_display = false;
				}
			} else {
					alert('There was a problem with the request.');
			}
		}
		return;
	}

	function alertTwoContents() {

/*		if (http_request.readyState == 0){
			document.view_premises_form.blah.value = 'UNINITIALIZED';
		}else if(http_request.readyState == 1){
			document.view_premises_form.blah.value = 'LOADING';
		}else if(http_request.readyState == 2){
				document.view_premises_form.blah.value = 'LOADED';
		}else if(http_request.readyState == 3){
			document.view_premises_form.blah.value = 'INTERACTIVE';
		}else	if (http_request.readyState == 4) {
			document.view_premises_form.blah.value = 'COMPLETED';
*/

		if (http_request.readyState == 4) {
			if (http_request.status == 200 ){ //|| http_request.status == 304) {
				result_div_id = document.result.resultStr.value;
				if(result_div_id && result_div_id != ''){
					obj = MM_findObj(result_div_id);
					if(obj){
						obj.innerHTML = http_request.responseText;
						if(ajax_display == true){
							obj.style.visibility = "visible";
						}
						makeRequest(tmp_url,tmp_resultStr,tmp_show);
						return;
					}
					document.result.resultStr.value = '';
					ajax_display = false;
				}
			} else {
					alert('There was a problem with the request.');
			}
		}
		return;
	}
//-->
