//**  TILPASSEDE VERSJONER FOR PRODUKTKATALOGEN **//

function modifyStatePK(sURL,nAreaID,sTargetArea,nParamIX,sValue) {
	if (sURL==null) {
		sURL=window.location.href;
		if (sURL.indexOf("?")==-1) { sURL+="?"; }
	}
	if (sStateSeparator==null || sStateSeparator=="") {	sStateSeparator=":"; }
	sURL=setURLParamPK(sURL,"trg",sTargetArea);
	var sState=getURLParam(sURL,sTargetArea);
	var aState=sState.split(sStateSeparator);
	if (aState.length<nParamIX) { for (var i=aState.length;i<nParamIX;i++) { aState[i]=''; } }
	aState[nParamIX]=sValue;
	var sNewParam=aState.join(sStateSeparator);
	sURL=setURLParamPK(sURL,sTargetArea,sNewParam);
	return sURL;
}

function setURLParamPK(sURL, sParamName, sNewValue) {
	var sReplace, sReplaceWith, sSep, sFind;
	//if (sMainSeparator==null || sMainSeparator=="" || sMainSeparator=="&amp;") sMainSeparator="&"; 
	if (sMainSeparator==null || sMainSeparator=="") sMainSeparator="&"; 

	var bHasQm=sURL.indexOf("?")>-1; var bHasSep=sURL.indexOf(sMainSeparator)>-1;

	if (!bHasQm && !bHasSep) {
		sURL+="?" + sParamName + "=" + sNewValue;
	} else {
		var sOldParam=getURLParam(sURL,sParamName,sSep);

		sSep="?";
		sFind=sSep + sParamName + "=";
		if (sURL.indexOf(sFind)>-1) {
			sReplace=sSep + sParamName + "=" + sOldParam;
			sReplaceWith=sSep + sParamName + "=" + sNewValue;
			sURL=sURL.replace(sReplace, sReplaceWith);
		} else {
			sSep=sMainSeparator;
			sReplace=sSep + sParamName + "=" + sOldParam;
			sReplaceWith=sSep + sParamName + "=" + sNewValue;
			sFind=sSep + sParamName + "=";
			if (sURL.indexOf(sFind)>-1) {
				sURL=sURL.replace(sReplace, sReplaceWith);
			} else {
				sURL+=sReplaceWith;
			}
		}
	}
	return sURL;
}


function replaceIt(sString, sReplaceThis, sWithThis) { 
	if (sReplaceThis != "" && sReplaceThis != sWithThis) { 
		var counter = 0; 
		var start = 0; 
		var before = ""; 
		var after = ""; 
		
		while (counter<sString.length) { 
			start = sString.indexOf(sReplaceThis, counter); 
			if (start == -1) { 
				break; 
			} else { 
				before = sString.substr(0, start); 
				after = sString.substr(start + sReplaceThis.length, sString.length); 
				sString = before + sWithThis + after; 
				counter = before.length + sWithThis.length; 
			} 
		} 
	} 
	return sString; 
} 

function getURLParamPK(sURL,sKey,sParamDiv) {
	var ptr1, ptr2, sOut;

	if (sMainSeparator==null || sMainSeparator=="" || sMainSeparator=="&amp;") sMainSeparator="&"; 
	//if (sMainSeparator==null || sMainSeparator=="") sMainSeparator="&"; 
	if (sParamDiv==null) sParamDiv=sMainSeparatorReq;

	var sFind=sMainSeparator + sKey + "=";
	ptr1 = sURL.indexOf(sFind);
	if (ptr1==-1) {
		sFind="?" + sKey + "=";
		ptr1 = sURL.indexOf(sFind);
	}

	if (ptr1!=-1) {
		ptr1+=sFind.length;
		ptr2=sURL.indexOf(sParamDiv,ptr1);
		if (ptr2==-1) {
			sOut = sURL.substr(ptr1); }
		else {
			sOut = sURL.substr(ptr1,ptr2-ptr1); }
	} else {
		sOut="";
	}
	return sOut;
}



function launchRelPickerCst(nObjectID, sRelObjTypes, sDefRelRoles, bLockOT, bLockRole) {
	var sRelParams="";
	var oNewRel=docAll("efmnewrl");
	var oDelRel=docAll("efmdelrl");
	var oObjectTypeID=docAll("efmobjecttypeid");
	if (oNewRel!=null && oDelRel!=null) {
		sRelParams="&newrel=" + oNewRel.value + "&delrel=" + oDelRel.value;
		sRelParams+="&objectid=" + nObjectID + "&objtypes=" + oObjectTypeID.value + "&typeids=" + sRelObjTypes + "&param2=" + sRelObjTypes;
		sRelParams+="&lock=" + bLockOT + "&defrole=" + sDefRelRoles + "&lockrole=" + bLockRole;
		var sReturn=openDialog(
			"/eway/library/pickerCnt.asp?tree=objpickeradv&mode=2" + sRelParams,null,465,640);
		if (sReturn>"") {
			oDelRel.value=sReturn.split("%")[0];
			oNewRel.value=sReturn.split("%")[1];
			return true;
		}
	} else {
		alert("Error: Required form field missing.");
	}
	return false;
}

function launchRelPickerCstPK(nObjectID, sRelObjTypes, sDefRelRoles, bLockOT, bLockRole, nNoNew) {
	var sRelParams="";
	var oNewRel=docAll("efmnewrl");
	var oDelRel=docAll("efmdelrl");
	var oObjectTypeID=docAll("efmobjecttypeid");
	if (oNewRel!=null && oDelRel!=null) {
		sRelParams="&newrel=" + oNewRel.value + "&delrel=" + oDelRel.value;
		sRelParams+="&objectid=" + nObjectID + "&objtypes=" + oObjectTypeID.value + "&typeids=" + sRelObjTypes + "&param2=" + sRelObjTypes;
		sRelParams+="&lock=" + bLockOT + "&defrole=" + sDefRelRoles + "&lockrole=" + bLockRole + "&nonew=" + nNoNew;
		var sReturn=openDialog(
			"/eway/library/pickerCnt.asp?tree=objpickeradv&mode=2" + sRelParams,null,465,640);
		if (sReturn>"") {
			oDelRel.value=sReturn.split("%")[0];
			oNewRel.value=sReturn.split("%")[1];
			return true;
		}
	} else {
		alert("Error: Required form field missing.");
	}
	return false;
}


