var valid = new Boolean();

function checkForm(maxStep, nextStep, wizStep)
{
	var f = document.forms["stdForm"];
	var errMsg = "";
	var step = parseInt(wizStep+nextStep,10);

	valid = true;

	switch (step)
	{
		case 1:
		{
			if (!f.main.value)
			{
				valid = false;
				errMsg += '> Main selection';
				f.main.focus();
			}
			break;
		}
		case 2:
		{
			if (!f.group.value)
			{
				valid = false;
				errMsg += '> Anntenna group';
				f.group.focus();
			}
			break;
		}
		case 3:
		{
			if (!f.catgy.value)
			{
				valid = false;
				errMsg += '> Antenna family';
				f.catgy.focus();
			}
			break;
		}
	}

	if (valid == false)
	{
		// show error message
		alert("Please provide following information:\n\n" + errMsg);
	}
	else
	{
		// submit the form
		if (step < maxStep)
		{
			f.action = '';
		}

		if (step == maxStep)
		{
			f.applied.value = 1;
			f.selected.value = 1;
		}

		if (f.area && nextStep < 0)
		{
			f.area.value = null;
		}

		f.wizard.value = parseInt(f.wizard.value,10) + parseInt(nextStep,10);
		f.wizardNav.value = parseInt(nextStep,10);

		f.submit();
	}

}

function keyHandler(evt)
{
    if (parseInt(navigator.appVersion) >= 4)
	{
        if (navigator.appName == 'Netscape')
		{
            if (evt.which == 13)
			{
				return checkForm('');
			}
		}
		else
		{
            if (window.event.keyCode == 13)
			{
				return checkForm('');
			}
		}
	}
}

/* check for digits within input elements */
function checkDigitFields(actField, errMsg)
{
	var err_digit = "Only digits allowed\n";
	var checkDigits = /^[0-9\.]{1,}$/i;

	if (actField.value.length > 0 && !checkDigits.test(actField.value))
	{
		valid = false; 
		actField.value = '';
		actField.focus();
		return '> ' + errMsg + ': ' + err_digit;
	}
	else
	{
		return '';
	}
}

/* Closes the popup window if opened */
function closePopUpWindow()
{
	if (popUpWin)
	{
		popUpWin.close();
	}

	return true;
}

/* Build compare 'catch' area */

$j(document).ready(function() {

	var enableBsk	= new Boolean(true && false);

	var scrEpdb;
	var bskForm;
	var bskItem;

	var winWidth	= $j(window).width();
	var newWidth	= winWidth;
	var itmList		= [];
	var intStatus	= parseInt("0",10);
	var blnDetail	= new Boolean(parseInt("0",10));
	var blnCompare	= new Boolean(parseInt("0",10));
	var blnSmall	= new Boolean(winWidth < HuSu.maxWidthSmall);
	var imgClass	= "wrpImg";
	var tocTitle	= ("Items to compare").unescapeHTML();
	var lstNodes	= new Array();
	var bskAction	= new Array();
	var objLink		= new Object();
	var objReg		= new RegExp("^lst", "gi");

	var lstId		= "content_pdb";
	var wrpId		= "content_pdb_bsk";
	var bskId		= "content_pdb_basket";
	var actId		= "content_pdb_action";
	var cntId		= "content_pdb_cnt";
	var cmpId		= "content_pdb_cmp";
	var delId		= "content_pdb_del";
	var itmId		= "content_pdb_item";
	var epyId		= "content_pdb_empty";

	var wrpClsSmall	= wrpId+"_small";
	var bskClsSmall	= bskId+"_small";

	try
	{
		scrEpdb = new libEpdb();
		scrEpdb.setUsr("");
		scrEpdb.setOrgClsId("");
		scrEpdb.setUrlPage("");

		if (enableBsk == true && intStatus > 0 && tocEnabled == true)
		{
			if (!itmList || itmList.length == 0)
			{
				//basket is empty
				bskForm = Builder.node("div", {id:wrpId,className:"itemBskStd"+((blnSmall == true) ? " "+wrpClsSmall : "")},
								[
									Builder.node("p", {id:bskId,className:((HotSpot.isTocVisible == true) ? "toc_visible" : "toc_hidden")+((blnSmall == true) ? " "+bskClsSmall : "")},
										Builder.node("strong", tocTitle)
									),
									Builder.node("div", {id:cntId,className:"itemBskStd"},
										[
											Builder.node("ul", {id:lstId,className:((HotSpot.isTocVisible == true) ? "toc_visible" : "toc_hidden")},
												Builder.node("li", {id:epyId}, Builder.node("p", ("Your list is empty.").unescapeHTML()))
											)
										]
									)
								]
							);
			}
			else
			{
				//some items in basket available
				for (var i=0; i<itmList.length; i++)
				{
					lstNodes.push(Builder.node("li", {id:"bsk"+itmList[i].compId,className:itmId+" bsk clearfix"},
										[
											Builder.node("a", {id:"lst"+itmList[i].compId, name:itmList[i].desc, title:"Item number: "+itmList[i].desc, href:scrEpdb.urlPage+"?applied=&selected=&search=&display=&unit=&step=&col=&sort=&vt=&p_Query="+itmList[i].desc+"&cls=&list=d&listed=2&prm="+itmList[i].compId}, itmList[i].desc+((itmList[i].item==true) ? scrEpdb.selfSign : "")),
											Builder.node("span", {id:"evt"+itmList[i].compId,title:("Click to remove from List").unescapeHTML(),className:"del"})
										]
									)
					);
				}

				switch(itmList.length)
				{
					case 1:
						bskAction.push(Builder.node("span", {id:delId,className:"float-right"}, ("Empty list").unescapeHTML()));
						break;

					default:
						bskAction.push(Builder.node("span", {id:delId,className:"float-right"}, ("Empty list").unescapeHTML()));
						bskAction.push(Builder.node("span", {id:cmpId,className:"float-left"}, ("Compare!").unescapeHTML()));
						break;
				}

				bskItem = Builder.node("div", {id:wrpId,className:"itemBskStd"+((blnSmall == true) ? " "+wrpClsSmall : "")},
								[
									Builder.node("p",{id:bskId,className:((HotSpot.isTocVisible == true) ? "toc_visible" : "toc_hidden")+((blnSmall == true) ? " "+bskClsSmall : "")},
										Builder.node("strong", tocTitle)
									),
									Builder.node("div", {id:cntId,className:"itemBskStd"},
										[
											Builder.node("ul", {id:lstId,className:((HotSpot.isTocVisible == true) ? "toc_visible" : "toc_hidden")}, lstNodes),
											Builder.node("div", {id:actId,className:"clearfix "+((HotSpot.isTocVisible == true) ? "toc_visible" : "toc_hidden")}, bskAction)
										]
									)
								]
							);

				bskForm = ePDB.getCompareForm({actionUrlPage:scrEpdb.urlPage}, bskItem, Builder.node("input", {type:"hidden",name:"persistence",value:"0"}));
			}

			$j("#content_1st_toc").append(bskForm);

			// Show or hide list/basket
			$j("#"+bskId).click( function() {
				if ($j(this).hasClass("toc_visible"))
				{
					$j("#"+cntId).slideUp(ePDB.evntSpeed/2);
				}
				else
				{
					$j("#"+cntId).slideDown(ePDB.evntSpeed/2);
				}
				$j(this).toggleClass("toc_visible").toggleClass("toc_hidden");
				
			} );

			// Drag / drop handler
			$j("div."+imgClass).draggable(
				{
					start:			function(event, ui) { if(scrEpdb){ return scrEpdb.startDragPict(event, ui); } return false; },
					stop:			function(event, ui) { if(scrEpdb){ return scrEpdb.stopDragPict(event, ui); } return false; },
					drag:			function(event, ui) { if(scrEpdb){ return scrEpdb.dragPict(event, ui); } return false; },
					helper:			"clone",
					disabled:		false,
					revert:			true,
					revertDuration: 500,
					opacity:		0.7,
					distance:		4,
					zIndex:			1001
				}
			);
			$j("#"+bskId).parent().droppable(
				{
					drop:			function(event, ui) { if(scrEpdb){ return scrEpdb.dropPict(event, ui, true); } return false; },
					over:			function(event, ui) { if(scrEpdb){ return scrEpdb.dropOverPict(event, ui); } return false; },
					out:			function(event, ui) { if(scrEpdb){ return scrEpdb.dropOutPict(event, ui); } return false; },
					accept:			"."+imgClass,
					activeClass:	"itemBskAct",
					hoverClass:		"bgBskAct",
					tolerance:		"touch"
				}
			);
			$j("div.itemCompare").droppable(
				{
					drop:			function(event, ui) { if(scrEpdb){ return scrEpdb.dropPict(event, ui, false); } return false; },
					accept:			"."+imgClass,
					activeClass:	"itemBskAct",
					hoverClass:		"bgBskAct",
					tolerance:		"touch"
				}
			);

			// Other (click) handler
			$j("input.compare").click( function(event) { if(scrEpdb){ scrEpdb.clickToElement(event, true); } } );
			$j(".itemCompare").click( function(event) { if(scrEpdb){ scrEpdb.clickToElement(event, (blnDetail!=true)); } } );
			$j(".del").click( function(event) { if(scrEpdb){ return scrEpdb.evRemoveItemFromBasket(event.currentTarget.id, false, {usr:"x", cls:"x"}, (blnDetail!=true)); } return false; } );
			$j("#"+cmpId).click( function(event) { $j("form[name="+ePDB.frmName+"]").submit(); } );
			$j("#"+delId).click( function(event) { if(scrEpdb){ return scrEpdb.evRemoveItemFromBasket(event.currentTarget.id, true, {usr:"x", cls:"x"}, (blnDetail!=true)); } return false; } );

			$j(window).resize( function(event) {
				var useSmall = new Boolean();

				newWidth = $j(this).width();
				blnSmall = new Boolean(newWidth < HuSu.maxWidthSmall);
				useSmall = new Boolean(winWidth >= newWidth && blnSmall == true);

				if (scrEpdb)
				{
					scrEpdb.checkDesignClass(useSmall);
					scrEpdb.checkBasketVisibility(useSmall, [bskId, lstId, actId]);
				}
				winWidth = newWidth;
			} );
		}

		return false;
	}
	catch(e){alert(e.toSource())}
} );
/* Invoke filter / wizard */
$j(document).ready(function() {

	var fltEpdb;

	try
	{
		fltEpdb = new libEpdb();
		fltEpdb.addHndToFilterLinks(ePDB.wizardId);
	}
	catch(e){alert(e.toSource())}

	return false;
} );

