﻿/*
	COMMON FUNCTIONS
*/


function GetControl(id)
{
	var objForm = document.forms[0];
	var ctrl = null;
	for (j = 0; j < objForm.elements.length; j++)
	{
		if (objForm.elements[j].type == "text" && objForm.elements[j].id.indexOf("_" + id) != -1)
		{ 
			ctrl = objForm.elements[j];
			break;
		}
		else if (objForm.elements[j].type == "select-one" && objForm.elements[j].id.indexOf("_" + id) != -1)
		{ 
			ctrl = objForm.elements[j];
			break;
		}
		else if (objForm.elements[j].type == "checkbox" && objForm.elements[j].id.indexOf("_" + id) != -1)
		{ 
			ctrl = objForm.elements[j];
			break;
		}
	}
		
	return ctrl;

}

function getQuerystring(key)
{
	var default_ = "";

  	key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  	var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
 	var qs = regex.exec(window.location.href);
  	if(qs == null)
    	return default_;
  	else
    	return qs[1];
}

/*function getCurrentUser()
{
var tags = document.getElementsByTagName('a');

for (var i=0; i < tags.length; i++)
{
if(tags[i].innerText.substr(0,7) == 'Welcome')
{
	 return tags[i].innerText.substr(8,tags[i].innerText.length);
}
}
}*/

var _MEMBERSHIP_PROVIDER = 'fbamembers:';
var _MEMBERSHIP_PROVIDER_2 = 'aspnetsqlmembershipprovider:';
var _HOST_NAME = 'www.kegocorp.com'

function checkUrlHostName()
{
	// ensure that the current site being viewed is the www.kegocorp.com
	var wlocation = window.location.toString().toLowerCase();
	var url = wlocation.replace('http://', '').replace('https://', '');
	var islash = url.indexOf('/');
	if(islash < 0) 
		islash = url.length;
	//alert(islash);	
	var host = url.substring(0, islash);
	var ihostname = wlocation.indexOf(_HOST_NAME);
	if(ihostname < 0)
	{	// need to redirect
		var newurl = wlocation.substring(0, wlocation.indexOf(host)) +
						_HOST_NAME + wlocation.substring(wlocation.indexOf(host) + host.length);
		// force the redirect.
		window.location = newurl;
	}

}

// call the function
checkUrlHostName();


function getCurrentUser()
{


	var welcome = $.trim($("#signin").text());
	if(welcome == null || welcome.indexOf("Welcome") < 0)
		return 'AnonUser';
		
	username = $.trim(welcome.replace("Welcome", ''));
	if(username.substring(0, 8).toLowerCase() == "anonuser")
		return "AnonUser";
	
	if(username == 'anonuser')
		username = 'AnonUser';
	return username;
}


/*
	END COMMON FUNCTIONS
*/

function BuildBreadCrumbPathByDir(divPath)
{
	var convert = getQuerystring('dir').replace(/%2f/gi, '/');
	
	while(convert.indexOf('+') > 0)
	{
		convert = convert.replace('+', ' ')
	}
	while(convert.indexOf('%2c') > 0)
	{
		convert = convert.replace('%2c', ',')
	}
	
	
	
	
	var dir =convert.split('/');

	if(dir.length > 2)
	{
	
		var dirurl = dir[0] + '/' + dir[1];
	
		var path = '';
		for( i = 2; i < dir.length; i++)
		{
			if(path != '')
				path += ' &gt; ';
		
			dirurl += '/' + dir[i];
			
			var name = dir[i].split(' - ');
			var str = '';
			
			if(isNaN(name[0]))
				str = dir[i];
			else if(name.length > 1)
			{
				for( j = 1; j < name.length; j++)
				{
					if(str != '')
						str += ' - ';
					str += name[j];
				}
			}
			else
				str = dir[i];
				
			var link = '';
			if(i > 2)
				link = '<a href="/products.aspx?dir=' + dirurl + '">';
			else
				link = '<a href="/' + str + '">';
				
			while(str.indexOf('-slash-') > 0)
			{
				str = str.replace('-slash-', '/')
			}
			while(str.indexOf('-and-') > 0)
			{
				str = str.replace('-and-', '&')
			}
	
				
			path += link + str + '</a>';

			
			
		}
		var div = document.getElementById(divPath);
		div.innerHTML = path;
	}

}



	function clearSearch()
	{
		var txtSearch = document.getElementById('txtSearch');
		if(txtSearch.value == 'eg. keyword, item #, UPC')
		{
			txtSearch.value = '';
			txtSearch.style.fontStyle = 'normal';
			txtSearch.style.color = '#000000';
		}
	}


function CategoryClick(subblock)
{
	var div = document.getElementById(subblock);
	if(div.style.display == "none") { div.style.display = ""; }
	else { div.style.display = "none"; }
}

function checkBox(chk)
{
	var txtid = chk.name.replace("chk", "txt");
	var txt = document.getElementById(txtid );

	// first search down and select all children
	var cntchild = parseInt(txt.value);
		
	for(var i=0; i < cntchild; i++)
	{
		var chkchild = document.getElementById(chk.name + "_" + i);
		chkchild.checked = chk.checked;
		checkBox_child(chkchild);		
	}
	
	
	// find current items parent
	if(chk.name.search("_") > 0 && chk.checked)
	{
		// this is a child... get parent
		var chkparent = document.getElementById(chk.name.substring(0, chk.name.search("_")));
		chkparent.checked = true;
	} 
		
}

function checkBox_child(chk)
{
	var txtid = chk.name.replace("chk", "txt");
	var txt = document.getElementById(txtid );

	// first search down and select all children
	var cntchild = parseInt(txt.value);
		
	for(var i=0; i < cntchild; i++)
	{
		var chkchild = document.getElementById(chk.name + "_" + i);
		chkchild.checked = checked;
		checkBox_child(chkchild);
		
	}
			
}

/* GLOBAL VARIABLES */
// Registration Messages
var _CONFIRMPASSWORD_ERROR = "Password confirmation is invalid";
var _PASSWORDLENGTH_ERROR = "Password character length is invalid. Must be greater than 4 characters";
var _USERNAMELENGTH_ERROR = "Username character length is invalid. Must be greater than 4 characters";
var _FIRSTNAMELENGTH_ERROR = "First name field is required";
var _LASTNAMELENGTH_ERROR = "Last name field is required";
var _ANSWERLENGTH_ERROR = "Security answer field is required";
var _EMAILINVALID_ERROR = "Invalid email address";
var _INPUTERROR_BGCOLOR = "#cc0000";
var _INPUTERROR_COLOR = "#ffffff";
var _INPUTERROR_BORDER = "2px #ffffff solid";
var _INPUTVALID_BGCOLOR = "#ffffff";
var _INPUTVALID_COLOR = "#000000";
var _INPUTVALID_BORDER = "1px #808080 solid";

// Order form messages
var _BILLINGLENGTH_ERROR = "Order form requires billing details";
var _SHIPPINGLENGTH_ERROR = "Order form requires shipping details";
var _CONTACTLENGTH_ERROR = "Order form requires contact / note details"

// OUTPUT MESSAGE
var lblMessage = "";

var txtConPassword = "";
var txtPassword = "";
var txtUsername = "";
var txtFirstName = "";
var txtLastName = "";
var txtEmail = "";
var txtAnwser = "";

function ValidateUserRegistration()
{
	var errormsg = "";

	if(document.getElementById(txtFirstName).value.length < 1)
	{
		//errormsg += "<div class='message-error-line'>" + _FIRSTNAMELENGTH_ERROR + "</div>";
		errormsg += "<div class='message-error-line'>" + _FIRSTNAMELENGTH_ERROR + "</div>";
		InvalidInputStyle(txtFirstName);
	}
	else
		ValidInputStyle(txtFirstName);
	

	if(document.getElementById(txtLastName).value.length < 1)
	{
		errormsg += "<div class='message-error-line'>" + _LASTNAMELENGTH_ERROR + "</div>";
		InvalidInputStyle(txtLastName);
	}
	else
		ValidInputStyle(txtLastName);

	if(document.getElementById(txtUsername).value.length < 5)
	{
		errormsg += "<div class='message-error-line'>" + _USERNAMELENGTH_ERROR + "</div>";
		InvalidInputStyle(txtUsername);
	}
	else
		ValidInputStyle(txtUsername);
		
	if(document.getElementById(txtPassword).value.length < 5)
	{
		errormsg += "<div class='message-error-line'>" + _PASSWORDLENGTH_ERROR + "</div>";
		InvalidInputStyle(txtPassword);
	}
	else
		ValidInputStyle(txtPassword);
	
	if(document.getElementById(txtConPassword).value != document.getElementById(txtPassword).value)
	{
		errormsg += "<div class='message-error-line'>" + _CONFIRMPASSWORD_ERROR + "</div>";
		InvalidInputStyle(txtConPassword);
	}
	else
		ValidInputStyle(txtConPassword);
		
	if(document.getElementById(txtAnswer).value.length < 1)
	{
		errormsg += "<div class='message-error-line'>" + _ANSWERLENGTH_ERROR + "</div>";
		InvalidInputStyle(txtAnswer);
	}
	else
		ValidInputStyle(txtAnswer);

	
	if(!echeck(document.getElementById(txtEmail).value))
	{
		errormsg += "<div class='message-error-line'>" + _EMAILINVALID_ERROR + "</div>";
		InvalidInputStyle(txtEmail);
	}
	else
		ValidInputStyle(txtEmail);

	
	if(errormsg != "")
	{
		//document.getElementById(lblMessage).attribute["class"]="message-error";
		//document.getElementById(lblMessage).style.display="";
		document.getElementById(lblMessage).innerHTML="<div class='message-error'>" + errormsg + "</div>";
		return false;
	}
		
	return true;
}

function InvalidInputStyle(controlId)
{
	document.getElementById(controlId).style.background=_INPUTERROR_BGCOLOR;
	document.getElementById(controlId).style.color=_INPUTERROR_COLOR;
	document.getElementById(controlId).style.border=_INPUTERROR_BORDER;
}

function ValidInputStyle(controlId)
{
	document.getElementById(controlId).style.background=_INPUTVALID_BGCOLOR;
	document.getElementById(controlId).style.color=_INPUTVALID_COLOR;
	document.getElementById(controlId).style.border=_INPUTVALID_BORDER;

}

function echeck(str) 
{
	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	if (str.indexOf(at)==-1){
	   return false;
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   return false;
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	   return false;
	}

	 if (str.indexOf(at,(lat+1))!=-1){
	   return false;
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	   return false;
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
	   return false;
	 }
	
	 if (str.indexOf(" ")!=-1){
	   return false;
	 }

	 return true;					
}

var prevfolder  = "";

function ShowHide(ID)
{

	var div = document.getElementById(ID);
	if(div.style.display == "none")
	{
		div.style.display = "";
	}
	else
	{	
		div.style.display = "none";	
	}
	
}


function NavigateBack()
{
	history.back();
}


