// JavaScript code for Inmagic's Web Query
// Copyright � 1998-2004 Inmagic, Inc., Woburn, MA, USA. All rights reserved.

var   bUseISAPI      = true;

var   dbtw_root      = 'ics-wpd';
var   dbtw_xsl       = '/ics-wpd/xsl/';
var   dbtw_help      = '/ics-wpd/help/';
var   dbtw_action    = '/ics-wpd/exec/icswppro.dll';

//    state variables
			var   gsb_setFocusToFirstTabBox   = true;
			var   gsb_browserIsIE             = (navigator.appName == "Microsoft Internet Explorer");
			var   gsb_cookieNameIsFormName    = false;

//    box specific variables
			var   gbox_styleBordeStyle       = '';
			var   gbox_styleBorderWidth      = '';
			var   gbox_styleHeight           = "";

			var   gbox_bAutoResize           = false;
			var   gbox_bMaxResize            = false;

			var   gbox_inputIx                  = '';
			var   gbox_choicesListType          = 1;
			var   gbox_choicesListURL           = '';
			var   gbox_inputFieldNameListXML    = '';
			var   gbox_inputFieldNameListNonXML = '';
			var   gbox_inputFieldNameSelected   = 0;
			var   gbox_maxListLength            = 0;
			var   gbox_includeNonPreferredTerms = 1;

//    global form variables
			var   gform_TN                   = '';
			var   gform_BG                   = '';
			var   gform_FG                   = '';
			var   gform_ES                   = '';
			var   gform_MF                   = '';
			var   gform_QS                   = '';
			var   gform_CookieNamePrefix     = '';
			var   gform_Password             = '';

			var   gform_cAlternateEntryChar      = '|';
			var   gform_bBoxHighlighting         = true;
			var   gform_bBoxHighlightingEnabled  = (true && gsb_browserIsIE);

			var   gform_nFirstTabOrderBox    = -1;
			var   gform_nFirstPwBox          = -1;

//    word wheel
			var   appletCount = 0;
			var   inputObjects = new Array(), inputNames = new Array();
			var   appletObjects = new Array(), appletNames = new Array();
			var   timerID = null;
			var   dbtw_applet = "\"BrowserApplet.class\"";
			var   dbtw_applet_base;
			var   dbtw_ww_width = 80;
			var   dbtw_ww_height = 30;
			var   dbtw_ww_label = "Word Wheel";

//    ichoices form colors
			var   ichoices_bgColor           = '';
			var   ichoices_fgColor           = '';

//    other
			var   dbtw_server = window.location.protocol + "//" + window.location.host + dbtw_action;
			var   wp_server   = window.location.protocol + "//" + window.location.host;
			var   dbtw_noquery_msg = "No query criteria specified.";

if ( parseInt(navigator.appVersion, 10) < 4 )
	 dbtw_applet_base = "\"http://nexia.gestiondocumental.info/" + dbtw_root + "/applets/ww25\"";
else if ( (navigator.appName.indexOf("Netscape") >= 0) &&
						(parseInt(navigator.appVersion, 10) == 4) &&
						(navigator.appVersion.substring(2,3) == "0") &&
						(parseInt(navigator.appVersion.substring(2,5), 10) <= 6) )
	 dbtw_applet_base = "\"http://nexia.gestiondocumental.info/" + dbtw_root + "/applets/ww25\"";
else
	 dbtw_applet_base = "\"http://nexia.gestiondocumental.info/" + dbtw_root + "/applets/ww30\"";


function dbtw_q_submit(form_obj)
	 {
	 qbeFormSetData();

	 if ((navigator.appName == "Microsoft Internet Explorer") && (navigator.appVersion.indexOf("3.0") >= 0))
			return true;

	 var el_count = form_obj.elements.length;
	 for ( var i=0; i<el_count; i++ )
			{
			if (form_obj.elements[i].type)
				 {
				 if (form_obj.elements[i].name.substring(0,2).toUpperCase() == "QI")
						{
						if (form_obj.elements[i].type.toUpperCase() == "CHECKBOX")
							 {
							 if (form_obj.elements[i].checked)
									return true;
							 }
						else if (form_obj.elements[i].type.toUpperCase() == "RADIO")
							 {
							 if (form_obj.elements[i].checked)
									return true;
							 }
						else if (form_obj.elements[i].type.substring(0,6) == "select")
							 {
							 if ( form_obj.elements[i].options[form_obj.elements[i].selectedIndex].text != "" )
									return true;
							 }
						else
							 {
							 if (form_obj.elements[i].value != "")
									return true;
							 }
						}
				 if (form_obj.elements[i].name.substring(0,2).toUpperCase() == "QY")
						if (form_obj.elements[i].value != "")
							 return true;
				 }
			}
	 alert(dbtw_noquery_msg);
	 return false;
	 }

function dbtw_q_form()
	 {
	document.write("\r\n<form action=\"" + dbtw_action + "\" method=\"post\" name=\"qbe_form\" onSubmit=\"return dbtw_q_submit(this)\" onReset=\"qbeFormGetData()\">\r\n");
	document.write("<input type=\"hidden\" NAME=\"XC\" VALUE=\"" + dbtw_action + "\">\r\n");
	document.write("<input type=\"hidden\" NAME=\"BU\" VALUE=\"" + window.location + "\">\r\n");
	 }

function dbtw_q_applet(input_name, bIncludeTD)
	 {
	var applet_html = "";
	 //var bIncludeTD = true;
	 var bIncludeTD = false;
	 var sTD = "<td>";

	 if (arguments.length > 1)
			if (! bIncludeTD)
				 sTD = "";

	 applet_html = "\r\n" + sTD + "<APPLET CODE=" + dbtw_applet +
								 " CODEBASE=" + dbtw_applet_base +
						" WIDTH=" + dbtw_ww_width + " HEIGHT=" + dbtw_ww_height + " ALIGN=TOP VSPACE=0" +
						" NAME=\"app_" + input_name + "\" MAYSCRIPT>\r\n";
	document.write( applet_html );

	 var btnName_html = "\r\n<PARAM NAME=\"btnName\" VALUE=\"" + dbtw_ww_label + "\">";
	document.write( btnName_html );

	inputNames[appletCount] = input_name;
	appletNames[appletCount] = "app_" + input_name;
	appletCount++;
	 }

function checkApplets()
	 {
	 var i = 0;
	 var pasteStr = "";
	 var currApplet = null;
	 var currBox = null;
	 var boxText = "";

	for (i = 0; i < appletCount; i++ )
	{
		currApplet = appletObjects[i];
		pasteStr = currApplet.m_PasteStr;
		if (pasteStr != "")
		{
			currBox = inputObjects[i];
			if (currBox.value == "")
				boxText = pasteStr;
			else
				boxText = currBox.value + " / " + pasteStr;
			currBox.value = boxText;
			currApplet.m_PasteStr = "";
		}
	}
	timerID = setTimeout("checkApplets()", 200);
	 }

function initApplet(currApplet)
	 {
	 currApplet.ServerAddress = dbtw_server;

	 var tmp, r, g, b;
	 tmp = document.bgColor;
/*
	 r = "0x" + tmp.substring(1, 3);
	 g = "0x" + tmp.substring(3, 5);
	 b = "0x" + tmp.substring(5, 7);
*/
	 r = "0xFF";
	 g = "0xFF";
	 b = "0xFF";

	 currApplet.SetButtonBkColor(parseInt(r), parseInt(g), parseInt(b));
	 }

function dbtw_init_page()
	 {
	var appletIndex;
	var appletObject;

	 qbeFormGetVariables();
	 qbeFormGetPassword();
	 qbeFormGetText();
	 setFocusToFirstTabBox();

	 setCookieEx('rsST','');

	for (appletIndex = 0; appletIndex < appletCount; appletIndex++ )
		 {
		inputObjects[appletIndex] = eval( "document.qbe_form." + inputNames[appletIndex] );

		if ((navigator.appName == "Microsoft Internet Explorer") &&
					(navigator.appVersion.indexOf("3.0") >= 0))
			appletObject = document.qbe_form.elements[appletNames[appletIndex]];
		else
			appletObject = document.applets[appletNames[appletIndex]];

		appletObjects[appletIndex] = appletObject;
		initApplet( appletObject );
		 }
	timerID = setTimeout("checkApplets()", 500);
	 }

function dbtw_terminate_page()
	 {
	 qbeFormSetPassword();
	clearTimeout(timerID);
	 }

function dbtw_initialize(tb_name, bUsePassword, msg_file)
	 {
	 if (true)
			window.onerror=function(){return false;}
	 else
			alert('debug mode: error trapping disabled');

	 // tb_name, bUsePassword are unused, and are present to be compatible with generated HTML
	 // msg_file, if present and not empty, supplies a message file
	 var actMsgFile = "";
	 if ((arguments.length >= 3) && (msg_file.length > 0))
			actMsgFile = "&MF=" + msg_file;

	 // Support setting localized strings
	 document.write("\r\n<SCRIPT LANGUAGE=\"JavaScript\" SRC=\"" + dbtw_action +
									"?AC=APPLET_STRINGS" + actMsgFile + "\"></" + "SCRIPT>");
	 }

/////
//
// UTIL CODE
//

function strRemoveLeadingTrailingSpaces(s)
	 {
	s = s.replace(/^(\s)+/, "");
	s = s.replace(/(\s)+$/, "");
	return s;
	 }

function escapeEx(sz)
	 {
	return ('z' + sz.replace(/[{$,%,',`,@,{,},~,!,#,(,),&,^,+,\,,=,\[,\], ]/g,"_"));
	 }

function getCookie(sCookieName, defaultValue)
	 {
	 if (!navigator.cookieEnabled)
			{
			if (arguments.length > 1)
				 return defaultValue;
			else
				 return '';
			}

	 var sDocumentCookie = document.cookie;
	 sCookieName = escape(sCookieName);
	 if (sDocumentCookie.length > 0)
			{
			sCookieNameToFind = sCookieName + "=";
			cStart = sDocumentCookie.indexOf(sCookieNameToFind);
			if (cStart != -1)
				 {
				 cStart += sCookieNameToFind.length;
				 cEnd   = sDocumentCookie.indexOf(";", cStart);
				 if (cEnd == -1)
						cEnd = sDocumentCookie.length;
				 return unescape(sDocumentCookie.substring(cStart, cEnd));
				 }
			else
				 {
				 if (arguments.length > 1)
						return defaultValue;
				 else
						return '';
				 }
			}
	 else
			{
			if (arguments.length > 1)
				 return defaultValue;
			else
				 return '';
			}
	 }

function getCookieEx(sCookieName)
	 {
	 if (!navigator.cookieEnabled)
			return '';

	 if (!gsb_browserIsIE)
			return getCookie(sCookieName);
	 else if (!document.all.uData)
			return getCookie(sCookieName);
	 else
			{
			var sValue = '';
			sCookieName = escapeEx(sCookieName);
			uData.load("uData");
			sValue = uData.getAttribute(sCookieName);
			if (sValue == null || sValue == "null" || sValue == "" || sValue.indexOf("undefined") >= 0 || sValue.lastIndexOf("=") == sValue.length - 1)
				 sValue = "";
			else
				 sValue = unescape(sValue);
			// alert('Qgetting "' + sCookieName + '" with "' + sValue + '"');
			return sValue;
			}
	 }

function setCookie(sCookieName, sValue, iMinutesToSave)
	 {
	 if (!navigator.cookieEnabled)
			return;

	 sCookieName = escape(sCookieName);
	 sValue = escape(sValue);

	 var sExpires = "";
	 var sCookie  = "";

	 if (iMinutesToSave == -1)
			return;
	 else if (iMinutesToSave > 0)
			{
			var exp = new Date();
			var newExpTime = exp.getTime() + ( iMinutesToSave * 60 * 1000 );
			exp.setTime(newExpTime);
			sExpires = "; expires=" + exp.toGMTString();
			}
	 else if (iMinutesToSave == -2)
			{
			var nextYear = new Date();
			nextYear.setFullYear(nextYear.getFullYear() + 1);
			sExpires = "; expires=" + nextYear.toGMTString();
			}
	 sNewCookie = sCookieName + "=" + sValue + sExpires + "; path=/";
	 document.cookie = sNewCookie;
	 }

function setCookieEx(sCookieName, sValue)
	 {
	 if (!navigator.cookieEnabled)
			return;
	 if (!gsb_browserIsIE)
			setCookie(sCookieName, sValue, 0)
	 else if (!document.all.uData)
			setCookie(sCookieName, sValue, 0)
	 else
			{
			sValue = escape(sValue);
			if (sValue.length > 65000)
				 return;
			sCookieName = escapeEx(sCookieName);
		uData.setAttribute(sCookieName,sValue);
		uData.save("uData");
			}
	 }

/////
//
// FORM INIT CODE
//
function setFocusToFirstTabBox()
	 { // FF
	 if (!gsb_setFocusToFirstTabBox)
			return;

	 var formObj     = document.qbe_form;  if (!formObj) return
	 var formLength  = formObj.elements.length;
	 var tabIndex    = -1;

	 // set the focus to the first box in the tab order
	 if (gform_nFirstTabOrderBox > -1)
			tabIndex = gform_nFirstTabOrderBox;

	 if (tabIndex > -1)
			{
			formObj.elements[tabIndex].focus();
			gsb_setFocusToFirstTabBox = false;
			}
	 }

/////
//
// FORM SET CODE
//
function qbeFormSetPassword()
	 {
	 if (!navigator.cookieEnabled)
			return;

	 var sPassword     = '';
	 var sPwCookieName = '';

	 sPwCookieName = gform_CookieNamePrefix + 'pw';

	 // does the form have a INPUT type=PASSWORD box?
	 // if so, save it; if not, create a fake PW for the form to save
	 // which is a flag for qbeFormGetText()
	 if (gform_nFirstPwBox > -1)
			{
			var formObj       = document.qbe_form;  if (!formObj) return
			var formLength    = formObj.elements.length;
			sPassword         = formObj.elements[gform_nFirstPwBox].value;
			}

	 // to know whether or not we should restore the text we must ALWAYS save a password
	 // so if the user didn't enter one, or there is none on the form, save a fake one
	 if (sPassword == '')
			sPassword = 'mvilyf'; // pw cannot be ''

	 // always store PW in real cookie (not .SetAttribute)
	 // this will ensure that PW expires when browser session ends
	 setCookie(sPwCookieName, sPassword, 0);
	 }

function qbeFormSetText()
	 {
	 if (!navigator.cookieEnabled)
			return;

	 var formObj     = document.qbe_form;  if (!formObj) return
	 var formLength  = formObj.elements.length;
	 var sText = '';
	 var sTxCookieName = '';

	 for (var i=0; i<formLength; i++)
			if (formObj.elements[i].type)
				 if (formObj.elements[i].type.substring(0,4) == "text")
						if (formObj.elements[i].name.toUpperCase().substring(0,2) == "QI")
							 sText += formObj.elements[i].name.toUpperCase() + 'r&m:[' + formObj.elements[i].value + ']:r&m';

	 sTxCookieName = gform_CookieNamePrefix + 'txq';
	 setCookieEx(sTxCookieName, sText);
	 }

function qbeFormSetData()
	 { // FF
	 qbeFormSetPassword();
	 qbeFormSetText();
	 }

/////
//
// FORM GET CODE
//
function qbeFormGetVariables()
	 {
	 var   formObj    = document.qbe_form;  if (!formObj) return
	 var   formLength = formObj.elements.length;

	 var   bFoundBoxHighlighting  = false;

	 // helps find the first pw box
	 var   sPassword             = '';
	 var   firstPasswordBox      = -1;
	 var   bFoundPassword        = false;
	 var   bFoundHiddenPassword  = false;

	 // helps find the first box in tab order
	 var   tabIndex             = -1; // help the find the lowest formObj.elements[i].tabIndex
	 var   firstTabOrderBox     = -1; // once the loop if complete, the lowest formObj.elements[i].tabIndex

	 // local variables
	 var   sElementName      = '';
	 var   sElementValule    = '';
	 var   sElementValuleEx  = '';
	 var   sElementType      = '';

	 // this is what we hope to find by looping through this form
	 //    the first box in the tab order
	 //    the name of the cookie to read (in the "QS" name/value pair)
	 //    the location of the password input, and it's value (in the "ID" name/value pair)
	 //
	 for (var i=0; i<formLength; i++)
			{
			if (formObj.elements[i].type)
				 {
				 sElementName    = formObj.elements[i].name.toUpperCase();
				 sElementNameEx  = formObj.elements[i].name.toUpperCase().substring(0,2);
				 sElementValue   = formObj.elements[i].value;
				 sElementType    = formObj.elements[i].type.toLowerCase().substring(0,4);

				 if (sElementType == "text")
						{
						if (sElementNameEx == "QI")
							 {
							 if (formObj.elements[i].tabIndex > 0)
									if ((formObj.elements[i].tabIndex < tabIndex) || (tabIndex == -1))
										 {
										 tabIndex = formObj.elements[i].tabIndex;
										 firstTabOrderBox = i;
										 }
							 }
						} // if (sElementType == "text")
				 else if (sElementType == "hidd")
						{
						if ((sElementName == "TN") && (gform_TN == ''))
							 gform_TN = sElementValue.toUpperCase();

						else if (sElementName == "BG")
							 gform_BG = sElementValue;
						else if (sElementName == "FG")
							 gform_FG = sElementValue;

						else if ((sElementName == "ES") && (gform_ES == ''))
							 gform_ES = sElementValue;
						else if ((sElementName == "MF") && (gform_MF == ''))
							 gform_MF = sElementValue;

						if ((gform_CookieNamePrefix == '') && (sElementName == "QS"))
							 gform_CookieNamePrefix = escapeEx(sElementValue.toLowerCase());

						else if ((sElementName == "ID") && (!(bFoundPassword || bFoundHiddenPassword)))
							 {
							 sPassword = sElementValue;
							 bFoundHiddenPassword = true;
							 }

						else if ((sElementName == "BHL") && (!bFoundBoxHighlighting))
							 {
							 gform_bBoxHighlighting = (sElementValue == '1');
							 bFoundBoxHighlighting  = true;
							 }
						} // if (sElementType == "hidd")
				 else if ((sElementType == "pass") && (!(bFoundPassword || bFoundHiddenPassword)))
						{
						if (firstPasswordBox == -1)
							 if (sElementName == "ID")
									{
									sPassword = sElementValue;
									firstPasswordBox = i;
									bFoundPassword = true;

									if (formObj.elements[i].tabIndex > 0)
										 if ((formObj.elements[i].tabIndex < tabIndex) || (tabIndex == -1))
												{
												tabIndex = formObj.elements[i].tabIndex;
												firstTabOrderBox = i;
												}
									}
						} // if (sElementType == "pass")
				 } // if (formObj.elements[i].type)
			} // for (var i=0; i<formLength; i++)


	 // the values for the pw box
	 if (bFoundPassword || bFoundHiddenPassword)
			{
			gform_Password = sPassword;
			if (firstPasswordBox > -1)
				 gform_nFirstPwBox = firstPasswordBox;
			}

	 // the first box in the tab order
	 if (firstTabOrderBox > -1)
			gform_nFirstTabOrderBox = firstTabOrderBox;

	 // if "QS" is not found, use the name of the form
	 if (gform_CookieNamePrefix == '')
			{
			gform_CookieNamePrefix = escapeEx(formObj.name.toLowerCase());
			gsb_cookieNameIsFormName = true;
			}
	 }

function qbeFormGetPassword()
	 {
	 var formObj     = document.qbe_form;  if (!formObj) return
	 var formLength  = formObj.elements.length;

	 // if the form already has a password set then no need to read the cookie
	 if (gform_Password.length > 0)
			return;

	 if (!navigator.cookieEnabled)
			{
			sTxCookieName = gform_CookieNamePrefix + 'txq';
			setCookieEx(sTxCookieName, '');
			return;
			}

	 var sPwCookieName = '';
	 var sTxCookieName = '';
	 var sPassword     = '';

	 // note that it's possible that we are going to read the a fake PW here
	 sPwCookieName  = gform_CookieNamePrefix + 'pw';
	 sPassword      = getCookie(sPwCookieName);


	 // if there's a PW on the form and we are not reading the fake pw then set
	 if (gform_nFirstPwBox > -1)
			if (sPassword != 'mvilyf')
				 formObj.elements[gform_nFirstPwBox].value = sPassword;

	 // if the pw has expired then the saved text should expire too
	 if (sPassword == '')
			{
			sTxCookieName = gform_CookieNamePrefix + 'txq';
			setCookieEx(sTxCookieName, '');
			}
	 }

function qbeFormGetText()
	 {
	 if (!navigator.cookieEnabled)
			return;

	 if (gsb_cookieNameIsFormName)
			return;

	 var   formObj    = document.qbe_form;  if (!formObj) return
	 var   formLength = formObj.elements.length;
	 var   fm_EIx     = new Array();

	 for (var i=0; i<formLength; i++)
			if (formObj.elements[i].type)
				 if (formObj.elements[i].type.substring(0,4) == "text")
						if (formObj.elements[i].name.toUpperCase().substring(0,2) == "QI")
							 fm_EIx[fm_EIx.length] = formObj.elements[i].name.toUpperCase() + '|' + i;

	 var sTxCookieName = '';
	 var sText         = '';
	 var sName         = '';
	 var sValue        = '';
	 var nBoxIndex     = 0;
	 sTxCookieName  = gform_CookieNamePrefix + 'txq';
	 sText = getCookieEx(sTxCookieName);
	 aNameValuePairs = sText.split(']:r&m');
	 for (var i=0; i<aNameValuePairs.length; i++)
			{
			aNameValuePair = aNameValuePairs[i].split('r&m:[');
			sName = aNameValuePair[0];
			if (aNameValuePair[1])
				 sValue = aNameValuePair[1];
			else
				 sValue = '';
			if (sName > '')
				 {
				 for (var j=0; j<fm_EIx.length; j++)
						{
						if (fm_EIx[j].indexOf(sName+'|') == 0)
							 {
							 nBoxIndex = Number(fm_EIx[j].split('|')[1]);
							 formObj.elements[nBoxIndex].value = sValue;
							 }
						}
				 }
			}
	 }

function qbeFormGetData()
	 {
	 var sTxCookieName = '';

	 qbeFormGetPassword();

	 sTxCookieName = gform_CookieNamePrefix + 'txq';
	 setCookieEx(sTxCookieName, '');
	 }

/////
//
// BOX CONTENT CODE
//
// onFocus
function bf(element, boxMinLines, boxMaxLines)
	 {
	 var bDefaultGrowSettings = false;

	 gbox_bMaxResize = false;
	 gbox_nMinLines  = boxMinLines;
	 gbox_nMaxLines  = boxMaxLines;

	 element.style.zIndex = 1;
	 if (gform_bBoxHighlighting && gform_bBoxHighlightingEnabled)
			{
			gbox_styleBordeStyle = element.style.borderStyle;
			gbox_styleBorderWidth = element.style.borderWidth;
			element.style.borderStyle = "solid"; // "solid double"
			if (gbox_styleBorderWidth == "0px")
				 element.style.borderWidth = "1px";
			else
				 element.style.borderWidth = "2px";
			}

	 if (!gsb_browserIsIE)
			return;

	 if (gbox_nMaxLines == 0)
			bDefaultGrowSettings = true;
	 else if (gbox_nMaxLines > 0)
			{
			gbox_bMaxResize = true;
			gbox_styleHeight = element.style.height;
			}

	 if (bDefaultGrowSettings == true)
			{
			gbox_bAutoResize = true;
			gbox_styleHeight = element.style.height;
			element.style.posHeight = 0;
			}
	 }

// onBlur
function bb(element)
	 {
	 element.style.zIndex = 0;

	 if (!gsb_browserIsIE)
			return;

	 if (gform_bBoxHighlighting && gform_bBoxHighlightingEnabled)
			{
			element.style.borderStyle = gbox_styleBordeStyle;
			element.style.borderWidth = gbox_styleBorderWidth;
			}
	 if (gbox_bAutoResize || gbox_bMaxResize)
			element.style.height = gbox_styleHeight;
	 }

// pick up additional parameters from query form for "new record link"
function nrl(sNewRecordParams)
	 {
	 if (gform_nFirstPwBox > -1)
			{
			var formObj       = document.qbe_form;  if (!formObj) return
			formObj.elements[gform_nFirstPwBox].value = strRemoveLeadingTrailingSpaces(formObj.elements[gform_nFirstPwBox].value);
			gform_Password = formObj.elements[gform_nFirstPwBox].value;
			}

	 sNewURI = dbtw_server + '?AC=NEW_RECORD' + "&XC=" + dbtw_action + sNewRecordParams + "&ID=" + gform_Password + "&MF=" + gform_MF;
	 if (sNewRecordParams.toUpperCase().indexOf("&BG=") < 0)
			sNewURI += "&BG=" + gform_BG;
	 if (sNewRecordParams.toUpperCase().indexOf("&FG=") < 0)
			sNewURI += "&FG=" + gform_FG;

	 window.location.href = sNewURI;
	 return true;
	 }

// choices list
function ibc(inputBoxIx, fieldNameXML, fieldNameNonXML, listType, maxListLength, bINPF, sFormBgColor, sFormFgColor)
	 {
	 var sAC  = '';
	 var sIC  = '';

	// bINPF not used, retained in parameter list for backwards compatibility

	 if ((arguments.length > 4) && (maxListLength > 0))
			sIC = '&IC=' + maxListLength;
	 if (arguments.length > 6)
			ichoices_bgColor = sFormBgColor;
	 if (arguments.length > 7)
			ichoices_fgColor = sFormFgColor;

	 window.status = '';

	 // get pw from non-hidden pw input on form
	 if (gform_nFirstPwBox > -1)
			{
			var formObj       = document.qbe_form;   if (!formObj) return
			formObj.elements[gform_nFirstPwBox].value = strRemoveLeadingTrailingSpaces(formObj.elements[gform_nFirstPwBox].value);
			gform_Password = formObj.elements[gform_nFirstPwBox].value;
			}

	 if (listType == 0)
			sAC = 'WORD_INDEX';
	 else if (listType == 1)
			sAC = 'TERM_INDEX';

	 var sColors = '';

	 if (gform_BG > '')
			sColors += '&BG=' + gform_BG;
	 if (gform_FG > '')
			sColors += '&FG=' + gform_FG;

	 var sURL = dbtw_action +
									'?TN=' + gform_TN +
									'&ID=' + gform_Password +
									'&FN=' + fieldNameXML.split('|')[0] +
									'&XM=1&ES=1&SV=1' + // '&ES=1&SV=1' needed if there's a WP error
									//'&XS=' + wp_server + dbtw_xsl + 'ichoices.xsl' + sIC +
									'&XS=ichoices' + sIC +
									'&AC=' + sAC +
									sColors;

	 gbox_inputIx         = inputBoxIx;
	 gbox_choicesListType = listType;
	 gbox_choicesListURL  = sURL;
	 gbox_inputFieldNameSelected   = 0;
	 gbox_maxListLength            = maxListLength;
	 gbox_inputFieldNameListXML    = fieldNameXML;
	 gbox_inputFieldNameListNonXML = fieldNameNonXML;

	 var   screenWidth    = window.screen.availWidth;
	 var   screenHeight   = window.screen.availHeight;
	 var   placementX     = (screenWidth/2)-((400)/2);
	 var   placementY     = (screenHeight/2)-((350)/2);

	 icWindow = window.open(sURL,'ichoices', 'resizable,width=400,height=370,left='+placementX+',top='+placementY);
	 icWindow.focus();
	 }

// Obsolete as of V5.0; retained for backwards compatibility
function dbtw_body( bg_color, bg_image )
	 {
	var body_html = "\r\n\<BODY";
	if ( bg_color != "" )
		body_html += ( " BGCOLOR=#" + bg_color );
	if ( bg_image != "" )
		 if ( bg_image.indexOf("/") != -1 )
			 body_html += ( " BACKGROUND=\"" + bg_image + "\"" );
		else
			 body_html += ( " BACKGROUND=\"http://nexia.gestiondocumental.info/" + dbtw_root + "/images/" + bg_image + "\"" );
	body_html += " onLoad=\"dbtw_init_page()\" onUnload=\"dbtw_terminate_page()\">\r\n";
	document.write( body_html );
	 }

// Obsolete as of V5.1; retained for backwards compatibility
function dbtw_logo( logo_image )
	 {
	 var logo_html;
	 if ( logo_image.indexOf("/") != -1 )
		 logo_html = "\r\n\<IMG SRC=\"" + logo_image + "\">\r\n";
	else
		 logo_html = "\r\n\<IMG SRC=\"http://nexia.gestiondocumental.info/" + dbtw_root + "/images/" + logo_image + "\">\r\n";
	document.write( logo_html );
	 }

// Obsolete; retained for backwards compatibility
function dbtw_image_inline_extref( image )
	 {
	var image_html = "\r\n\<IMG SRC=\"" + image + "\">\r\n";
	document.write( image_html );
	 }

// Obsolete; retained for backwards compatibility
function dbtw_image_link_extref( image )
	 {
	var image_html = "\r\n\<A HREF=\"" + image + "\">" + image + "</A>\r\n";
	document.write( image_html );
	 }

// Obsolete
function displayHelp()
	 {
	 window.open("http://nexia.gestiondocumental.info/" + dbtw_root + "/help/dws_ww.htm", "help", "scrollbars=1,resizable=1,width=600,height=300");
	 }