/* Copyright NetCore 1997-2008. Licensed to Ash Alom. ashalom [AT] gmail [DOT-COM]
*********************************************************************************/


//window.onerror=stopError;
//function stopError(){return true;}

var bV=parseInt(navigator.appVersion);
var NS4=(document.layers)?true:false;
var IE4=((document.all)&&(bV>=4))?true:false;
var ver4=(NS4||IE4)?true:false;
var VerMinor=parseFloat(navigator.appVersion);	// ex. 3.01
var OS;
if (navigator.appVersion.toLowerCase().indexOf("win")!=-1) {OS = "Win";}
if (navigator.appVersion.toLowerCase().indexOf("mac")!=-1) {OS = "Mac";};

function ValidateeMail(DOM){
	var NetCore
	var filter=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})$/
	if (filter.test(DOM)){
		NetCore=true
	}else{
		NetCore=false
	}
	return (NetCore)
}

function ChangeImages(){
	//NetCore 2000
	document[ChangeImages.arguments[0]].src=eval(ChangeImages.arguments[1]+".src");
}

function GetCookie(byname){
	byname=byname+"=";
	nlen = byname.length;
	fromN = document.cookie.indexOf(byname)+0;
	if((fromN) != -1){
		fromN +=nlen
		  toN=document.cookie.indexOf(";",fromN)+0;
		if(toN == -1){toN=document.cookie.length;}
		return unescape(document.cookie.substring(fromN,toN));
	} return "";
}

function SetCookie(name,value,time){
	exp = new Date();
	if((name==null)||(value==null)) return false;
	if(time==null) time=365*86400000;
	exp.setTime(exp.getTime()+time);
	document.cookie =escape(name)+"="+escape(value)+"; expires="+exp.toGMTString()+"; path=/; domain=";
	return true;
}

function DeleteCookie(name){
	exp=new Date();
	exp.setTime (exp.getTime() - 1);
	var cval = GetCookie ("name");
	document.cookie = name + "=" + cval +"; expires=" + exp.toGMTString()+"; path=/; domain=";
}

function TrimLeadingAndTrailingChars(X,Y){
	while(X.value.charAt(X.value.length-1)==' '){
		X.value=X.value.substring(0,X.value.length-1);
	}
	while(X.value.charAt(0)==' '){
		X.value=X.value.substring(1,X.value.length);
	}
	if (Y != "DontStripHTML"){
		X.value=StripHTML(X.value);
	}
}

function StripHTML(string){
	 var strip = new RegExp();
	 strip = /[<][^>]*[>]/gi;
	 return string.replace(strip, "");
}

function ChangeSearchBoxState(){
	var SEARCHFORM = eval("document.SearchForm.Q");
	if(SEARCHFORM.value=="Product Search"){
		SEARCHFORM.value="";
		SEARCHFORM.style.color="Black";
		SEARCHFORM.style.fontStyle="Normal";
		return false;
	}
	if(SEARCHFORM.value==""){
		SEARCHFORM.style.color="#C0C0C0";
		SEARCHFORM.style.fontStyle="Italic";
		SEARCHFORM.value="Product Search";
	}
}

function Search(){
	var SEARCHFORM = eval("document.SearchForm");
	if(SEARCHFORM.Q.value!="Product Search"){
		SEARCHFORM.submit();
	}else{
		return false;
	}
}

function AddToFavorites(){
	if (window.external) {
		window.external.AddFavorite("http://www.healthyways.net/", "HealthyWays.net");
	}else{
		alert("Sorry! Your browser doesn't support this function.");
	}
}


function AddToCart(Item, Button){
	if(Item!=""){
		Product	= Item.substr(0, Item.indexOf(":"));
		Price	= Item.substr(Item.indexOf(":")+1, Item.length);
		document.getElementById('CartButton'+Button).innerHTML = "<img src='pic/throbber2.gif' width='16' height='16' style='padding:0 30px;' alt='Please Wait' />";
		setTimeout('SubmitToCart("'+Item+'", '+Button+')',700);
	}else{
		alert("ERROR: Item not selected.\n\nPlease select an item from the menu.");
	}
	self.focus();
}


function CenterWindow(URL,WindowName,Width,Height,ScrollBars,Resizable,MenuBar,ToolBar,Location,Directories,Status){
 if (!WindowName) {var WindowName='HealthyWays_NetCore_AshAlom'}
 if (!Width) {var Width=550}
 if (!Height) {var Height=350}
 if (!ScrollBars) {var ScrollBars=0}
 if (!Resizable) {var Resizable=0}
 if (!MenuBar) {var MenuBar=0}
 if (!ToolBar) {var ToolBar=0}
 if (!Location) {var Location=0}
 if (!Directories) {var Directories=0}
 if (!Status) {var Status=0}
  var winl = (screen.width - Width) / 2;
  var wint = (screen.height - Height) / 2;
  winprops = 'height='+Height+',width='+Width+',top='+wint+',left='+winl+',toolbar='+ToolBar+',location='+Location+',status='+Status+',menubar='+MenuBar+',scrollbars='+ScrollBars+',resizable='+Resizable+'';
  win = window.open(URL, WindowName, winprops);
  if(!win){alert("ERROR!\nUnable to launch browser window.\n\nYou need to disable your popup blocker to continue.");}
  if(parseInt(navigator.appVersion)>=4){win.window.focus();}
}



var KeyStr64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

function Encode64(input) {
   var output = "";
   var chr1, chr2, chr3;
   var enc1, enc2, enc3, enc4;
   var i = 0;

   do {
      chr1 = input.charCodeAt(i++);
      chr2 = input.charCodeAt(i++);
      chr3 = input.charCodeAt(i++);

      enc1 = chr1 >> 2;
      enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
      enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
      enc4 = chr3 & 63;

      if (isNaN(chr2)) {
         enc3 = enc4 = 64;
      } else if (isNaN(chr3)) {
         enc4 = 64;
      }

      output = output + KeyStr64.charAt(enc1) + KeyStr64.charAt(enc2) + 
         KeyStr64.charAt(enc3) + KeyStr64.charAt(enc4);
   } while (i < input.length);
   
   return output;
}


function Decode64(input) {
   var output = "";
   var chr1, chr2, chr3;
   var enc1, enc2, enc3, enc4;
   var i = 0;

   // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
   input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");

   do {
      enc1 = KeyStr64.indexOf(input.charAt(i++));
      enc2 = KeyStr64.indexOf(input.charAt(i++));
      enc3 = KeyStr64.indexOf(input.charAt(i++));
      enc4 = KeyStr64.indexOf(input.charAt(i++));

      chr1 = (enc1 << 2) | (enc2 >> 4);
      chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
      chr3 = ((enc3 & 3) << 6) | enc4;

      output = output + String.fromCharCode(chr1);

      if (enc3 != 64) {
         output = output + String.fromCharCode(chr2);
      }
      if (enc4 != 64) {
         output = output + String.fromCharCode(chr3);
      }
   } while (i < input.length);

   return output;
}
