﻿var bHasRunOpdate = false;
function confirmdatakildedelete(sDataOwner, sDataFlowId, sDataAction, sDataSamePage, sDataActionItem, sDataTarget)	
{
	/* HENT CONFIRM STRING */
	var oObject = document.getElementById(sDataFlowId + '_delete');
	if (oObject)
	{
		var strDelete = oObject.innerHTML;
		if (confirm(strDelete))
		{
			/* LAV DELETE */
			var strAddParam = '&dataowner=' + sDataOwner + '&dataflowid=' + sDataFlowId + '&dataaction=confirmdelete&datasamepage=' + sDataSamePage + '&dataactionitem=' + sDataActionItem;
			if (sDataTarget != '')
			{
				strAddParam += '&datatarget=' + sDataTarget;
			}
			document.location.href = 'page.asp?objectid='+currentShowPageID+'&zcs=' + strPageContentSection + strAddParam;
		}
	}
	return;
}

function zitemanPrintPage()
{
	window.print();
	setTimeout('window.close()', 100);
	return;
}

function zitemanCheckContext()
{
    if (contentFrameLayoutType == 'FRAMES')
    {
        var bCheckContent = false;
        /* ekstra check på ziteman variable */
        if (typeof(window.opener) != "undefined")
        {
            try{
            if (typeof(window.opener.contentFrame) == 'string')
	            bCheckContent = true;
            } catch(e) {
            }
        }
        var oFrames = window.parent.frames;
        if( oFrames.length == 0 && (!bCheckContent))
        {
        
            document.location.replace('page.asp?init=true&objectid=' + currentShowPageID + '&zcs=' + currentZCS);
        }
    }
}
                
function zitemanUpdateMenuParams()
{
	/* Find nuværende framebody */
	var oFrameset = window.parent.top.document.getElementsByTagName("FRAMESET")[0];
	
	/* GEM OPLYSNINGER OM MENUENS STATUS */
	var strAdd = '';
	if (!oFrameset)
	{
		if (eval('typeof(zitemanMenuGlobalListID)') != 'undefined')
		{
			var oList = eval('zitemanMenuGlobalListID');
			strAddbase = '?paramUpdateList=';
			for (var run=0; run<oList.length; run++)
			{
				var strFoundMenuID = oList[run];
				var strCurrentList = eval("menuBehaviour" + strFoundMenuID + "['currentshow'];");
				var strCurrentObj = eval("menuBehaviour" + strFoundMenuID + "['currentSplitID'];");
				var strCurrentMenuPoint = eval("menuBehaviour" + strFoundMenuID + "['currentmenupoint'];");
				eval("menuBehaviour" + strFoundMenuID + "['currentSplitID'] = 'undefined';");
				if (typeof(strFoundMenuID) != 'undefined' && typeof(strCurrentList) != 'undefined' && typeof(strCurrentObj) != 'undefined' )
				{
				    strAdd += strFoundMenuID + '//' + strCurrentObj + '//' + strCurrentList + '//' + strCurrentMenuPoint + '//';
				}
			}
		}
	} else {
		var strAdd = '';
		if (eval('typeof(window.parent.' + contentFrame + '.zitemanMenuGlobalListID)') != 'undefined')
		{
			var oList = eval('window.parent.' + contentFrame + '.zitemanMenuGlobalListID');
			strAddbase = '?paramUpdateList=';
			for (var run=0; run<oList.length; run++)
			{
				var strFoundMenuID = oList[run];
				var strCurrentList = eval("window.parent." + contentFrame + ".menuBehaviour" + strFoundMenuID + "['currentshow'];");
				var strCurrentObj = eval("window.parent." + contentFrame + ".menuBehaviour" + strFoundMenuID + "['currentSplitID'];");
				var strCurrentMenuPoint = eval("window.parent." + contentFrame + ".menuBehaviour" + strFoundMenuID + "['currentmenupoint'];");
				
				eval("window.parent." + contentFrame + ".menuBehaviour" + strFoundMenuID + "['currentSplitID'] = 'undefined';");
				if (typeof(strFoundMenuID) != 'undefined' && typeof(strCurrentList) != 'undefined' && typeof(strCurrentObj) != 'undefined' )
				{
				    strAdd += strFoundMenuID + '//' + strCurrentObj + '//' + strCurrentList + '//' + strCurrentMenuPoint + '//';
				}
			}
		}
	}

	var xmlhttpMethod = "POST";
	var xmlhttp=false;
	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	// JScript gives us Conditional compilation, we can cope with old IE versions.
	// and security blocked creation of the objects.

	 try {
	  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {

	  try {
	   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	  } catch (E) {
	   xmlhttp = false;
	  }

	 }
	@end @*/
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttpMethod = "GET";
		xmlhttp = new XMLHttpRequest();
	}
	
	if (xmlhttp)
	{
		xmlhttp.open(xmlhttpMethod, "postmenuparams.asp" + strAddbase + strAdd,false);
		xmlhttp.send(null);
	}
	
	if (!bHasRunOpdate)
	{
		bHasRunOpdate = true;
		currentParamList = strAdd;
		opdater();
	}
	return;
}

function zitemanInitJSmenu()
{
	/* FIX FLASH */
	var objects = document.getElementsByTagName("object");
	for (var i = 0; i < objects.length; i++)
	{
		var oDiv = objects[i].parentNode;
		if (oDiv.getAttribute("id").indexOf('_flash') != -1)
		{
		    /* SAVE FLASHVARS */
		    if(navigator.appName == "Microsoft Internet Explorer")
		    {
		        var sEmbedTag = objects[i].outerHTML;
    		    
		        sEmbedTag = sEmbedTag.split('embed')[1].split('flashvars')[1].split('"')[1];
    		    var sNewTag = '<object ';
    		    for (var runAtt=0; runAtt<objects[i].attributes.length; runAtt++)
    		    {
    		        if (objects[i].attributes[runAtt].nodeValue)
    		        {
    		            sNewTag += objects[i].attributes[runAtt].nodeName + '="' + objects[i].attributes[runAtt].nodeValue + '" ';
    		        }
    		    }
    		    sNewTag += '>';
		        for (var x=0; x<objects[i].childNodes.length; x++)
		        {
		            if (objects[i].childNodes[x].getAttribute("name") == "FlashVars")
		            {
		                objects[i].childNodes[x].setAttribute("value", sEmbedTag);
		            }
		            sNewTag += '<param name="' + objects[i].childNodes[x].getAttribute("name") + '" VALUE="' + objects[i].childNodes[x].getAttribute("value") + '" >';
		        }
		         sNewTag += '</objects>';
		    }
		    if(navigator.appName == "Microsoft Internet Explorer")
		    {
		        var sResult = sNewTag;
		    } else {
		        var oDiv = objects[i].parentNode;
		        var sResult = oDiv.innerHTML
		    }
			oDiv.parentNode.innerHTML = sResult;
		}
	}
	/* FIX FLASH SLUT*/
	
	if (strPageInit.indexOf(",") > 0)
	{
		var aInit = strPageInit.split(',');
		for (var x=0; x<aInit.length-1; x++)
		{
			/* get menu DIV */
			var oMenuDiv = document.getElementById("zitemanshowmenudiv" + aInit[x]);
			if (oMenuDiv)
			{
				oMenuDiv.parentNode.innerHTML = eval("menuDIV" + aInit[x]) + oMenuDiv.parentNode.innerHTML;
			}
		}
	}
	return;
}

function zitemanFixWindowSize()
{
    /* GET BODY SIZE */
    var iAddHeight = document.body.scrollHeight - document.body.clientHeight;
    var iAddWidth = document.body.scrollWidth - document.body.clientWidth;
    window.resizeBy(iAddWidth, iAddHeight);
    return;
}

function zitemanBuildBrowserSettings(fullscreen, width, height, horiplacement, vertplacement, strBrowsersettings)
{
	var toolbars = strBrowsersettings.split(",");			
	var newBrowserString = "";
	for( var i = 0; i < toolbars.length; i++ )
	{
		var toolbarItem = toolbars[i].split("=");
		if( toolbarItem.length > 1 )
		{
			var newTxt = (  (toolbarItem[1].toLowerCase()) == "false" ? 0 : 1  );
			newBrowserString += toolbarItem[0] + "=" +  (  (toolbarItem[1].toLowerCase()) == "false" ? 0 : 1  ) + ",";
		}
	}
	var left = '';
	var top = '';
	if( (width.length == 0) || fullscreen == "true" )
		width = screen.width;
	if( (height.length == 0)  || fullscreen == "true" )
		height = screen.height;
							
	if( fullscreen == "false" )
	{	
		if( (horiplacement.lengh == 0) || (width == 0) || (horiplacement == "left") )
		{
			left = '0';
		}
		else
		{
			var theWidth = screen.width - 20;
			if( horiplacement == "middle" )
			{
				var rest = theWidth - parseInt(width);
				left = parseInt( rest/2 );
			}
			if( horiplacement == "right" )
				left = theWidth - parseInt(width);					
		}
		if( (vertplacement.lengh == 0) || (height == 0) || (vertplacement == "top") )
		{
			top = '0';
		}
		else
		{
			var theHeight = screen.height - 20;
			if( vertplacement == "middle" )
			{
				var rest = theHeight - parseInt(height);
				top = parseInt( rest/2 );
			}
			if( vertplacement == "bottom" )
				top = theHeight - parseInt(height);					
		}
	}
	else
	{
		left = '0'; 
		top = '0';
	}
	
	var strReturnBrowserString = "'top="+top+",left="+left+",width="+width+",height="+height+","+newBrowserString+"'";
	return strReturnBrowserString;
}

function popIntervalWindow(strLink, fullscreen, width, height, horiplacement, vertplacement, strBrowsersettings, strWindowName)
{	
    var strBrowserString = zitemanBuildBrowserSettings(fullscreen, width, height, horiplacement, vertplacement, strBrowsersettings);
    
	/* check for printerside */
	if (strLink.indexOf('printLink=true') > -1)
	{
	    /* BYG PRINT STRENG */
		if (strExtraParamString != '')
		{
			if (strExtraParamString.indexOf('ordre_from_shopcart') != -1)
			{
				strLink += '&printobjectid=' + currentShowPageID;
				if (strPageObjectID != '')
				{
					strLink += '&pageobjectid=' + strPageObjectID;
				}
			} else {
				var aString = strExtraParamString.split('&');
				for (var x=0; x<aString.length; x++)
				{
					strLink += '&' + aString[x];
				}
			}
		}
	}
	
	var strNewWindowName = 'intervalwindow';
	if (typeof(strWindowName) != 'undefined')
	{
		strNewWindowName = strWindowName;
	}
	var tmpString = "window.open('" + strLink.replace("'", "&rsquo;") + "', '" + strNewWindowName + "', " + strBrowserString + ")"; 
	var oWindow = eval(tmpString);
	if (oWindow)
	{
		oWindow.focus();
	}
}

function popWindow(strLink, fullscreen, width, height, horiplacement, vertplacement, strBrowsersettings, strWindowName)
{	
    var strBrowserString = zitemanBuildBrowserSettings(fullscreen, width, height, horiplacement, vertplacement, strBrowsersettings);
    
	/* check for printerside */
	if (strLink.indexOf('printLink=true') > -1)
	{
	    /* BYG PRINT STRENG */
		if (strExtraParamString != '')
		{
			if (strExtraParamString.indexOf('ordre_from_shopcart') != -1)
			{
				strLink += '&printobjectid=' + currentShowPageID;
				if (strPageObjectID != '')
				{
					strLink += '&pageobjectid=' + strPageObjectID;
				}
			} else {
				var aString = strExtraParamString.split('&');
				for (var x=0; x<aString.length; x++)
				{
					strLink += '&' + aString[x];
				}
			}
		} else {
		    strLink += '&printobjectid=' + currentShowPageID;
		}
		if (transact != '')
		{
		    strLink += '&transact=' + transact;
		}
	}
	
	var strNewWindowName = '_blank';
	if (typeof(strWindowName) != 'undefined')
	{
		strNewWindowName = strWindowName;
	}
	var tmpString = "window.open('" + strLink.replace("'", "&rsquo;") + "', '" + strNewWindowName + "', " + strBrowserString + ")"; 
	var oWindow = eval(tmpString);
	if (oWindow)
	{
		oWindow.focus();
	}
}
		
function opdater(relativePath)
{
	if (currentParamList != '')
	{
		var aList = currentParamList.split('//');
		var runList = 0;
		var strMasterList = '';
		var strDummyID = '';

		while (runList < aList.length-1)
		{
			strDummyID = aList[runList];
			var strCurrentObjectID = aList[runList+1];
			var strCurrentList = aList[runList+2];
			var strCurrentMenuPoint = aList[runList+3];
			strMasterList += strCurrentList + ',';
			runList += 4;
			if (strCurrentObjectID != 'undefined')
			{
			    if (eval("typeof(menuBehaviour" + strDummyID + ")") != 'undefined')
			    {
    			    eval("menuBehaviour" + strDummyID + "['currentmenupoint'] = '" + strCurrentMenuPoint + "'");
	    	    }
	    	    zitemanMenuShowAllSplit(strDummyID, strCurrentObjectID);
			}
		}
		
		/* ryd op i list */
		var aTmp = new Array();
		var aList = strMasterList.split(',');
		for (var x=0; x<aList.length - 1; x++)
		{
			var strCheck = aList[x];
			if (strCheck.length > 32)
			{
				strCheck = strCheck.substr(strCheck.length - 32, 32);
			}
			var bFound = false;
			for (var y=0; y<aTmp.length; y++)
			{
				if (aTmp[y] == strCheck)
					bFound = true;
			}
						
			if (!bFound)
			{
				aTmp[aTmp.length] = strCheck;
			}
		}
		
		/* opdater alle menuer */
		if (eval("typeof(zitemanMenuGlobalListID)") != 'undefined')
		{
			var aZitemanGlobalList = eval("zitemanMenuGlobalListID");
			for (var runMenu=0; runMenu<aZitemanGlobalList.length; runMenu++)
			{
				if (eval("typeof(menuBehaviour" + aZitemanGlobalList[runMenu] + ")") != 'undefined')
				{
					runList = 0;
					var aList = currentParamList.split('//');
					while (runList < aList.length-1)
					{
						var strDummyID = aList[runList];
						if (strDummyID == aZitemanGlobalList[runMenu])
						{
							var currentStrObjectID = aList[runList+1];
						}
						runList += 3;
					}
					var strMenuType = eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['menutype']");
					
					/* byg nyt array */
					var strMasterList = '';
					for (var runList=0; runList<aTmp.length; runList++)
					{
						/* check id */
						if (document.getElementById(aZitemanGlobalList[runMenu] + aTmp[runList] + '_child'))
						{
							strMasterList += aZitemanGlobalList[runMenu] + aTmp[runList];
							if (runList < aTmp.length - 1)
								strMasterList += ',';
						}
										
					}
					if (strMasterList.substr(strMasterList.length-1, 1) != ',' && strMasterList != '')
						strMasterList += ',';

					var strCurrentMenu = eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['currentshow']");
					eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['currentshow'] = '" + strMasterList + "';");
					if (strMenuType == 'ASP')
					{
						zitemanMenuSelectItem(aZitemanGlobalList[runMenu], currentStrObjectID, "down");
						zitemanMenuSetOpenStatus(aZitemanGlobalList[runMenu]);
						zitemanMenuRunMenu(aZitemanGlobalList[runMenu], eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['currentshow'];"), 'block', true);
						/* MENUPOINT */
			            if (eval("typeof(menuBehaviour" + aZitemanGlobalList[runMenu] + ")") != 'undefined')
			            {
						    if (eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['menuusestartlevel']") == 'true')
						    {
    						    if (eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['currentmenupoint']") != 'undefined')
	    					    {
    	    			            zitemanMenuUpdateMenuPointShow(aZitemanGlobalList[runMenu], eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['currentmenupoint']"), '');
			    			    }
			    	        }
			    	    }
					} else {
						/* Hent retning på menuen */
						var strBaseDir = "down";
						var baseDirection = eval("menuBehaviour" + aZitemanGlobalList[runMenu] + "['subdirection1'];");
						if (baseDirection == "down" || baseDirection == "up")
						{
							strBaseDir = "right";
						}
						/* I hvilket niveau er vores selection */
						var oObject = zitemanMenuGetObject(aZitemanGlobalList[runMenu], aZitemanGlobalList[runMenu] + currentStrObjectID);
						if (oObject)
						{
							try{
								var strSplit = "" + oObject.getAttribute("onmouseout");
								var aSplit = strSplit.split("'");
								var strBaseDir = aSplit[aSplit.length-2];
							} catch(e) {
								
							}
						}
						zitemanMenuSelectItem(aZitemanGlobalList[runMenu], currentStrObjectID, strBaseDir);
					}
				}
			}
		}

	}
	
	if (strJsRunMenu != '')
	{
		zitemanMenuEmulateClick(strJsRunMenu);
	}
	if (strJsExternalLink != '')
	{
		if (strJsExternalLink.indexOf('##') > 0)
		{
			var aPop = strJsExternalLink.split('##');
			popWindow(aPop[0], aPop[1], aPop[2], aPop[3], aPop[4], aPop[5], aPop[6]);
		} else {
			document.location = strJsExternalLink;
		}
	}
	/* INIT FORMS */
	var oForms = document.forms;
	for (var x=0; x<oForms.length; x++)
	{
		var strFormId = oForms[x].getAttribute("name");
		var strFieldName = '';
		for (var y=0; y<oForms[x].length; y++)
		{
			if (oForms[x][y].type == 'checkbox')
			{
				var strOnclick = '' + oForms[x][y].getAttribute("onclick");
				if (strOnclick.indexOf('ziteman_changewebshop') != -1)
				{
					strFieldName = oForms[x][y].getAttribute("name");
				}
			}
		}
		
		if (strFieldName != '')
		{
			ziteman_changewebshoplevering(strFormId, strFieldName);
		}
	}
	return;
}

// STANDARD FUNKTIONER TIL FORUM

function editorExecuteAction(oElement, openTag, closeTag)
{
	if (document.selection)
	{
		var oRange = document.selection.createRange();
		if (oRange.parentElement().tagName == 'TEXTAREA')
		{
			oRange.text = openTag + oRange.text + closeTag;
		} else {
			oElement.value = oElement.value + openTag + closeTag;
		}
	} else if (oElement.selectionStart || oElement.selectionStart == '0')
	{
		oElement.focus();
		var startPos = oElement.selectionStart;
		var endPos = oElement.selectionEnd;
		strSelection = oElement.value.substring(startPos, endPos)
		oElement.value = oElement.value.substring(0, startPos) + openTag + strSelection + closeTag + oElement.value.substring(endPos, oElement.value.length);
	} else {
		/* Append data */
		oElement.value = oElement.value + openTag + closeTag;
	}
	if (document.selection)
	{
		document.selection.empty();
	}
	oElement.focus();

	return;
}

function generatePostRenderHTML(oElement)
{
	//Hent textindhold
	var strText = oElement.value;

	// udskift indtastede HTML tags
	var regX = /</gi;
	strText = strText.replace(regX, '&lt;');
	var regX = />/gi;
	strText = strText.replace(regX, '&gt;');

	//udskift tags til visning
	var regX = /\n/gi;
	strText = strText.replace(regX, '<br />');

	var regX = /\r/gi;
	strText = strText.replace(regX, '');


	/* STANDARD ACTIONS UDSKIFTES  (bold, italic, underline) */
	var regX = /\[B\]/gi;
	strText = strText.replace(regX, '<b>');

	var regX = /\[\/B\]/gi;
	strText = strText.replace(regX, '</b>');

	var regX = /\[I\]/gi;
	strText = strText.replace(regX, '<i>');

	var regX = /\[\/I\]/gi;
	strText = strText.replace(regX, '</i>');

	var regX = /\[U\]/gi;
	strText = strText.replace(regX, '<u>');

	var regX = /\[\/U\]/gi;
	strText = strText.replace(regX, '</u>');
	
	/* SPECEILLE ACTIONS UDSKIFTES (img, url) */ 
	var newText = strText;
	
	var regX = /\[URL\][^\[]*\[\/URL\]/gi;
	if (strText.match(regX))
	{
		var aMatch = strText.match(regX);
		for (var x=0; x<aMatch.length; x++)
		{
			var strMatch = aMatch[x];
			var strOldMatch = strMatch;
			strMatch = strMatch.replace("[URL]", "");
			strMatch = strMatch.replace("[/URL]", "");
			
			var regLink = /<br\s\/>/gi;
			var strLink = strMatch.replace(regLink, '');
			
			if (strMatch.toLowerCase().indexOf('http://') != 0 && strMatch.toLowerCase().indexOf('mailto://') != 0 && strMatch.toLowerCase().indexOf('ftp://') != 0)
			{
				// Præfix med HTTP://
				strLink = 'HTTP://' + strLink;
			}
			newText = newText.replace(strOldMatch, '<a href="' + strLink + '" target="_blank">' + strMatch + '</a>');
		}
	}	
	strText = newText;
	
	var regX = /\[IMG\][^\[]*\[\/IMG\]/gi;
	if (strText.match(regX))
	{
		var aMatch = strText.match(regX);
		for (var x=0; x<aMatch.length; x++)
		{
			var strMatch = aMatch[x];
			var strOldMatch = strMatch;
			strMatch = strMatch.replace("[IMG]", "");
			strMatch = strMatch.replace("[/IMG]", "");
			
			var regLink = /<br\s\/>/gi;
			var strLink = strMatch.replace(regLink, '');
			newText = newText.replace(strOldMatch, '<img src="' + strLink + '" border="0"></img>');
		}
	}
	
	strText = newText;
	
	return strText;
}

function generatePreview(oElement)
{
	var strResult = generatePostRenderHTML(oElement);
	/* Her skal preview kaldes */

	var tmpString = "window.open('', 'ZitemanForumPreview', 'top=0,left=0,width=500,height=300, location=no, menubar=no, status=no, toolbar=no, scrollbars=yes, resizable=yes ')"; 
	var wHandler = eval(tmpString);
	wHandler.document.write(strResult);
	wHandler.focus();
	return;
}


function zitemanDecryptEmail(strEmail)
{
	var strNewEmail = '';
	if (strEmail != '')
	{
		var aEmail = strEmail.split(':');
		for (var x=0; x<aEmail.length; x++)
		{
			var iChar = parseInt(aEmail[x]) - 2;
			strNewEmail += unescape('%' + iChar.toString(16) );
		}
	}
	
	if (strNewEmail != '')
	{
		var tmpString = "window.open('mailto:' + strNewEmail, 'ZitemanEmail', 'top=0,left=0,width=500,height=300, location=no, menubar=no, status=no, toolbar=no, scrollbars=yes, resizable=yes ')"; 
		var wHandler = eval(tmpString);
	}
	return;
}

// ****** robert test ****** //

function shopcart_checkInterVal(strOldValue, strValue, iDecimaler, iInterval, strError)
{
	var bValid = true;
	if (strValue.indexOf('.') != -1)
	{
		var sDec = strValue.split('.')[1];
		if (sDec.length < iDecimaler)
		{
			for (var x=sDec.length; x<iDecimaler; x++)
			{
				sDec += '0';
			}
		}
		if (sDec.length > iDecimaler)
		{
			for (var x=sDec.length; x>iDecimaler; x--)
			{
				sDec = '' + parseInt(parseInt(sDec)/10);
			}
		}
		var sIntervalCheck = '' + parseFloat(parseInt(sDec)/iInterval);
		if (sIntervalCheck.indexOf('.') != -1)
		{
			/* BYG INTERVAL FEJL */
			var sBase = '1';
			for (var x=0; x<iDecimaler; x++)
			{
				sBase += '0';
			}
			var sDelimitor = '.';
			if (strOldValue.indexOf(',') != -1)
			{
				sDelimitor = ',';
			}
			var sInterval = '0' + sDelimitor;
			var sMyInterval = '' + iInterval;
			for (var x=sMyInterval.length;x<iDecimaler;x++)
			{
				sInterval += '0';
			}
			sInterval += sMyInterval;
			
			var iCount = parseInt(sBase) / iInterval;
			var aError = strError.split('//ziteman_error_split//');
			alert(aError[1] + ' ' + aError[0] + '\n' + aError[2] + ' ' + sInterval + ' ' + aError[3]);
			bValid = false;
		}
	}
	return bValid;
}

function shopcart_validateRule(strObjectValue, strElementRules, strType)
{
	var aRules = strElementRules.split('//');
	var aRuleType = aZitemanFieldRules[strType].split('//');
	var bValidate = true;
	/* Validate each rule */
	for (var zitemanRuleCount=0; zitemanRuleCount<aRuleType.length; zitemanRuleCount++)
	{
		if (bValidate)
		{
			if (!ziteman_validaterule(strObjectValue, aRules[zitemanRuleCount], aRuleType[zitemanRuleCount], strElementRules, aZitemanFieldRules[strType]))
			{
				/* errorvalidating rule */
				bValidate = false;
				var strErrorMsg = ziteman_validateGetSpecifiedType(strElementRules, aZitemanFieldRules[strType], 'error_msg');
				alert(strErrorMsg);
			}
		}
	}
	return bValidate
}
function shopcart_addtocart(vareid, varenr, sprog, vareowner, currentbox, iDecimaler, iInterval, iTilbud, sTilbudObjekt, sTilbudRabat)
{
	var oNow = new Date();
	var strObjID = 'add_to_shopcart';

	var strCurrentVareId = vareid;
	var strCurrentVareNr = varenr;
	
	/*
	    CHECK FOR PRODUCTLINESKIFT
	*/
	var sProduct = zitemanFindProductLineVareID('webshopvare_productline_variant_' + currentbox + '_' + vareid);
	if (sProduct != '')
	{
	    var aProduct = sProduct.split(':**:');
	    strCurrentVareId = aProduct[0];
	    strCurrentVareNr = aProduct[1];
	}
	/*
	    webshop_freevariant_textarea_
	    webshop_freevariant_inputfield_
	    ziteman_validatefield(oForm nothing, oField, strType (text|textarea))
	*/
	var aFreeVariant = new Array();
	var aFreeCount = new Array();
	
	var bValidEkstra = true;
	var oElements = document.getElementsByName('webshop_freevariant_inputfield_' + currentbox + '_' + vareid);
	var oElementsHidden = document.getElementsByName('webshop_freevariant_inputfield_' + currentbox + '_' + vareid + '_hidden');
	var oElementsHiddenVariant = document.getElementsByName('webshop_freevariant_inputfield_' + currentbox + '_' + vareid + '_hiddenvariant');
	for (var x=0; x<oElements.length; x++)
	{
	    if (bValidEkstra)
	    {
	        if (oElements[x].tagName == 'TEXTAREA')
	        {
		        var strType = 'textarea';
	        } else {
			    var strType = oElements[x].type;
		    }
    		
		    var strObjectValue = oElements[x].value;
		    var strElementRules = oElementsHidden[x].value;
		    if (shopcart_validateRule(strObjectValue, strElementRules, strType))
		    {
	            var strValue = oElements[x].value;
	            var strVariantId = oElementsHiddenVariant[x].value;
				if (typeof(aFreeVariant[strVariantId]) == 'undefined')
				{
					aFreeCount[aFreeCount.length] = strVariantId;
					aFreeVariant[strVariantId] = strValue;
				}
	        } else {
	    	    oElements[x].focus();
	            bValidEkstra = false;
	        }
	    }
	}
	var oElements = document.getElementsByName('webshop_freevariant_textarea_' + currentbox + '_' + vareid);
	var oElementsHidden = document.getElementsByName('webshop_freevariant_textarea_' + currentbox + '_' + vareid + '_hidden');
	var oElementsHiddenVariant = document.getElementsByName('webshop_freevariant_textarea_' + currentbox + '_' + vareid + '_hiddenvariant');
	for (var x=0; x<oElements.length; x++)
	{
	    if (bValidEkstra)
	    {
	        if (oElements[x].tagName == 'TEXTAREA')
	        {
		        var strType = 'textarea';
	        } else {
			    var strType = oElements[x].type;
		    }
    		
		    var strObjectValue = oElements[x].value;
		    var strElementRules = oElementsHidden[x].value;

		    if (shopcart_validateRule(strObjectValue, strElementRules, strType))
		    {
	            var strValue = oElements[x].value;
	            var strVariantId = oElementsHiddenVariant[x].value;
				if (typeof(aFreeVariant[strVariantId]) == 'undefined')
				{
					aFreeCount[aFreeCount.length] = strVariantId;
					aFreeVariant[strVariantId] = strValue;
				}
	        } else {
	    	    oElements[x].focus();
	            bValidEkstra = false;
	        }
	    }
	}
	var strFreeVariants = '';
	for (var x=0; x<aFreeCount.length; x++)
	{
		if (strFreeVariants != '')
		{
			strFreeVariants += '**';
		}
		strFreeVariants += aFreeCount[x] + '//' + aFreeVariant[aFreeCount[x]];
	}
	
	/* CHECK FOR VARIANTER */
	var aVariant = new Array();
	var aCount = new Array();
	var oElements = document.getElementsByName('webshopvare_variant_' + currentbox + '_' + vareid);
	for (var x=0; x<oElements.length; x++)
	{
		for (var i=0; i<oElements[x].length; i++)
		{
			if (oElements[x][i].selected == true)
			{
				var strId = oElements[x].id;
				strId = strId.split('_')[strId.split('_').length-1];
				var strValue = oElements[x][i].value;
				
				/* CHECK FOR VARENR - VARIANT */
				var aValue = strValue.split('##');
				if (aValue[0] == 'variant')
				{
					if (typeof(aVariant[strId]) == 'undefined')
					{
						aCount[aCount.length] = strId;
						aVariant[strId] = aValue[1];
					}
				} else {
					/* SKIFT VARENR */
					strCurrentVareNr = aValue[1];
				}
			}
		}
	}
	
	/* BYG VARIANT STRENG */
	var strVariants = '';
	for (var x=0; x<aCount.length; x++)
	{
		if (strVariants != '')
		{
			strVariants += '**';
		}
		strVariants += aCount[x] + '//' + aVariant[aCount[x]];
	}
	
	/* HENT ANTAL */
	var bValid = true;
	var iAntal = 1;
	var oElements = document.getElementsByName('webshopvare_antal_' + currentbox + '_' + vareid);
	if (oElements.length > 0)
	{
		var oElement = oElements[0];
		var strValue = '' + oElement.value;
		bValid = false;
		var bValidDec = true;
		if (strValue != '')
		{
			if (parseInt(strValue))
			{
				if (strValue != '0' && iDecimaler > 0)
				{
					var re = /,/g;
					var strOldValue = strValue;
					strValue = strValue.replace(re, '.');
					strValue = parseFloat(strValue);
					var oError = document.getElementsByName('webshopvare_antal_' + currentbox + '_' + vareid + '_decimalintervalerror');
					bValidDec = shopcart_checkInterVal(strOldValue, ''+ strValue, iDecimaler, iInterval, oError[0].value);
				} else {
					strValue = parseInt(strValue);
				}
				if (strValue > 0 && bValidDec)
				{
					bValid = true;
				}
			}
		}
		
		if (bValid)
		{
			/* OPDATER ANTAL MED NY VÆRDI */
			iAntal = strValue;
		} else {
			/* VIS FEJL BESKED */
			if (bValidDec)
			{
				var oHiddenElements = document.getElementsByName('webshopvare_antal_' + currentbox + '_' + vareid + '_hidden');
				if (oHiddenElements.length > 0)
				{
					var oHiddenElement = oHiddenElements[0];
					if (oHiddenElement)
					{
						alert(oHiddenElement.value);
					}
				}
			}
			oElement.focus();
			oElement.select();
		}
	}
	
	
//			alert('nu skulle det ske noget?');
	if (bValid && bValidEkstra)
	{
	    /* Byg submit form */
	    var sForm = '<form name="shop_addtocart" action="page.asp?objectid=' + strObjID+'&vareid=' + strCurrentVareId + '&varenr=' + strCurrentVareNr + '&sprog=' + sprog + '&vareowner=' + vareowner + '&vareantal=' + iAntal + '&varedecimaler=' + iDecimaler + '&vareinterval=' + iInterval + '&varetilbud=' + iTilbud + '&varetilbudobjekt=' + sTilbudObjekt + '&varetilbudrabat=' + sTilbudRabat + '&goto=' + currentShowPageID + '&runcount=' + Number(oNow) + '" method="post" >'
	    + '<input type="hidden" name="variants" value="' + strVariants + '" />'
	    + '<input type="hidden" name="freevariants" value="' + strFreeVariants + '" />'
	    + '</form>';
	    //document.write(sForm);
	    document.body.innerHTML = sForm;
	    document.forms['shop_addtocart'].submit();
		//document.location = 'page.asp?objectid=' + strObjID+'&vareid=' + strCurrentVareId + '&varenr=' + strCurrentVareNr + '&sprog=' + sprog + '&vareowner=' + vareowner + '&vareantal=' + iAntal + '&varedecimaler=' + iDecimaler + '&vareinterval=' + iInterval + '&varetilbud=' + iTilbud + '&varetilbudobjekt=' + sTilbudObjekt + '&varetilbudrabat=' + sTilbudRabat + '&variants=' + strVariants + '&goto=' + currentShowPageID + '&runcount=' + Number(oNow);
	}
	return;
}

function shopcart_removefromcart(id)
{
	var oNow = new Date();
	var strObjID = 'remove_from_shopcart';
	
	document.location = 'page.asp?objectid=' + strObjID+'&id=' + id + '&goto=' + currentShowPageID + '&nonupdate=true&runcount=' + Number(oNow);
	return;
}

function shopcart_ordrefromcart(sSprog, sValuta, sGoto, sGateWayRunning, strBoxId)
{
	var oNow = new Date();
	var strObjID = 'ordre_from_shopcart';
	var bValid = true;
	var sGotoPage = currentShowPageID;
	// CHECK FOR "bekræft"
	var oCheckBoxs = document.getElementsByName('webshop_accept_ordre');
	if (oCheckBoxs.length > 0)
	{
		var oCheckBox = oCheckBoxs[0];
		var strValue = oCheckBox.checked;
		var oHiddens = document.getElementsByName(oCheckBox.getAttribute("name") + "_hidden");
		if (oHiddens.length > 0)
		{
			var oHidden = oHiddens[0];
			var strHiddenValue = oHidden.value;
			var aInfo = strHiddenValue.split('//');
			if (aInfo[0] == "true" && strValue == false)
			{
				alert(aInfo[1]);
				bValid = false;
			}
		}
		
	}
	
	// HENT VALG AF BETALING
	if (bValid)
	{
		var strPayment = '';
		var oElements = document.getElementsByName('webshopvare_payment_' + strBoxId);
		if (oElements.length > 0 )
		{
			for (var i=0; i<oElements[0].length; i++)
			{
				if (oElements[0][i].selected == true)
				{
					strPayment = oElements[0][i].value;
				}
			}
		}
	}
	
	// GENNEMFØR ORDER
	if (sGoto != '')
	{
		sGotoPage = sGoto;
	}
	if (bValid)
	{
		if (strPayment.indexOf('DIBS') > -1 || strPayment.indexOf('ePay') > -1)
		{
			var oPopWindowPayment = window.open('', 'paywin', 'scrollbars,status,width=550,height=600');
			self.name = 'webshop_window';
			if (!oPopWindowPayment.opener) { oPopWindowPayment.opener = self; }
		}
	}
	if (bValid)
	{
		document.location = 'page.asp?objectid=' + strObjID + '&sprog=' + sSprog + '&valuta=' + sValuta + '&payment=' + strPayment + '&goto=' + sGotoPage + '&oldpage=' + currentShowPageID + '&gateway=' + sGateWayRunning + '&betalingstype=&runcount=' + Number(oNow);
	}

	return;
}

function shopcart_updatecart(strBoxId)
{
	var aInputParam = strBoxId.split('//');
	
	// Find alle "antal" felter i boksen
	var oDiv = document.getElementById(aInputParam[0]);
	var oFields = oDiv.getElementsByTagName('INPUT');

	var aValues = new Array();
	var aHidden = new Array();
	var aDecimal = new Array();
	var aError = new Array();
	var aCount = new Array();

	for (var x=0; x<oFields.length; x++)
	{
		/* FIND PARVIS ANTAL (text og hidden felt med samme id */
		var strType = oFields[x].type;
		if (strType == 'text' || strType == 'hidden')
		{
			var strValue = oFields[x].value;
			var strTmpId = oFields[x].name;
			if (strTmpId.indexOf(aInputParam[0]) != -1)
			{
			var strId = strTmpId.split(aInputParam[0] + '_')[1].split('_')[0];
			
			var iIndex = 0;
			/* FIND MACTH I aCount listen */
			var bFound = false;
			for (var i=0; i<aCount.length; i++)
			{
				if (aCount[i] == strId)
				{
					bFound = true;
					iIndex = i;
				}
			}
			if (!bFound)
			{
				iIndex = aCount.length;
				aCount[iIndex] = strId;
			}
			
			/* INDSÆT FELT I RETTE ARRAY */
			if (strType == 'text')
			{
				aValues[strId] = oFields[x].value;
			} else {
				var sName = oFields[x].name;
				if (sName.indexOf('_decimalintervalerror') != -1)
				{
					aError[strId] = oFields[x].value;
				} else if (sName.indexOf('_decimalinterval') != -1)
				{
					aDecimal[strId] = oFields[x].value;
				} else {
					aHidden[strId] = oFields[x].value;
				}
			}
			}
		}
	}
	
	/* GENNEMLØB RESULTAT, OG VALIDER */
	var bSubmitValid = true;
	var strSubmit = '';
	for (var x=0; x<aCount.length; x++)
	{
		var strId = aCount[x];
		var strCount = aValues[strId];
		var strError = aHidden[strId];
		var strDecimal = aDecimal[strId];
		var bValid = false;
		var bValidDec = true;
		if (strCount != '')
		{
			if (parseInt(strCount))
			{
				if (strCount != '0')
				{
					var re = /,/g;
					var strOldValue = strCount;
					strCount = strCount.replace(re, '.');
					strCount = parseFloat(strCount);
					bValidDec = shopcart_checkInterVal(strOldValue, ''+ strCount, parseInt(strDecimal.split('//')[0]), parseInt(strDecimal.split('//')[1]), aError[strId]);
				} else {
					strCount = parseInt(strCount);
				}
				if (strCount > 0 && bValidDec)
				{
					bValid = true;
				}
			}
		}
		
		if (!bValid)
		{
			bSubmitValid = false;
			if (bValidDec)
			{
				alert(strError);
			}
			var oElements = document.getElementsByName('webshopvare_editantal_' + aInputParam[0] + '_' + strId);
			if (oElements.length > 0)
			{
				var oElement = oElements[0];
				oElement.focus();
				oElement.select();
			}
		} else {
			if (strSubmit != '')
			{
				strSubmit += '**'
			}
			strSubmit += strId + '//' + strCount;
		}
	}
	
	// CHECK FOR BEMÆRKNING
	var oTextAreas = oDiv.getElementsByTagName('TEXTAREA');
	var strComments = '';
	if (oTextAreas.length > 0)
	{
		strComments = oTextAreas[0].value;
		var regX	= /&/g;
		strComments	= strComments.replace(regX, "ZITEMAN_AND");
		var regX	= /\n/g;
		strComments	= strComments.replace(regX, "ZITEMAN_BREAK");
	}
	if (bSubmitValid)
	{
		var oNow = new Date();
		var strObjID = 'update_shopcart';
		document.location = 'page.asp?objectid=' + strObjID+'&updatelist=' + strSubmit + '&sprog=' + aInputParam[1] + '&goto=' + currentShowPageID + '&nonupdate=true&runcount=' + Number(oNow) + '&comment=' + strComments;

	}
	return;
}

function shopcart_submitpayment()
{
	var oForm = document.forms['webshop_payform'];
	oForm.submit();
	return;
}

function webshopChangeValuta(strCurrentBox)
{
	var strObjID = 'webshop_changevaluta';
	var oNow = new Date();
	
	var oElements = document.getElementsByName('webshopvare_valuta_' + strCurrentBox);
	if (oElements.length > 0)
	{
		var oElement = oElements[0];
		var strNewValuta = '';
		for (var i=0; i<oElements[0].length; i++)
		{
			if (oElements[0][i].selected == true)
			{
				strNewValuta = oElements[0][i].value;
			}
		}
		
		if (strNewValuta != '')
		{
			document.location = 'page.asp?objectid=' + strObjID + '&newvaluta=' + strNewValuta + '&goto=' + currentShowPageID + '&runcount=' + Number(oNow);
		}
	}
	return;
}
// ****** robert test ****** //
