home *** CD-ROM | disk | FTP | other *** search
/ ftp.tcs3.com / ftp.tcs3.com.tar / ftp.tcs3.com / DRIVERS / Audio / Office2010 / ProPlus.WW / ProPsWW.cab / FORMSPREVIEWTEMPLATERTL.HTML5 < prev    next >
Text File  |  2007-07-31  |  18KB  |  742 lines

  1. <!-- /*********************************************************************
  2.                                  Notice
  3.  
  4. You may not modify, use, copy or distribute this file or its contents. 
  5. Internal interfaces referenced in this file are nonpublic, unsupported 
  6. and subject to change without notice. These interfaces may not be 
  7. utilized in other software applications or components.
  8.  
  9.  
  10. *********************************************************************/ -->
  11.  
  12. <!-- saved from url=(0025)http://www.microsoft.com/ -->
  13.  
  14. <HTML DIR="rtl">
  15. <HEAD>
  16.     <META HTTP-EQUIV="MSThemeCompatible" CONTENT="Yes">
  17.     <STYLE TYPE="text/css">
  18.     .activeTab, .inactiveTab
  19.     {
  20.         cursor:                hand;
  21.         height:                18px;
  22.         border-right:        1px solid black;
  23.     }
  24.  
  25.     .activeTab
  26.     {
  27.         background-color:    #DEDEDE;
  28.     }
  29.  
  30.     .inactiveTab
  31.     {
  32.         background-color:    #797979;
  33.         color:                #FFFFFF;
  34.     }
  35.  
  36.     .tabContents
  37.     {
  38.         background-color:    #DEDEDE;
  39.     }
  40.  
  41.     .highlightField, .hoverField
  42.     {
  43.         background-color:    highlight;
  44.         color:                highlighttext;
  45.     }
  46.  
  47.     .commandbar
  48.     {
  49.         background-color:    menu;
  50.         border:                1px solid buttonshadow;
  51.         border-bottom-width:0px;
  52.     }
  53.  
  54.     .command, .commandHover, .commandDown
  55.     {
  56.         width:                16px;
  57.         height:                16px;
  58.         padding:            3px;
  59.         border:                1px solid buttonface;
  60.     }
  61.  
  62.     .commandSep
  63.     {
  64.         width:                0px;
  65.         margin:                0px 2px 0px 2px;
  66.         border-left:        1px solid buttonshadow;
  67.         border-right:        1px solid buttonhighlight;
  68.     }
  69.  
  70.     .commandHover
  71.     {
  72.         border-top-color:    buttonhighlight;
  73.         border-right-color:    buttonshadow;
  74.         border-bottom-color:buttonshadow;
  75.         border-left-color:    buttonhighlight;
  76.     }
  77.  
  78.     .commandDown
  79.     {
  80.         border-top-color:    buttonshadow;
  81.         border-right-color:    buttonhighlight;
  82.         border-bottom-color:buttonhighlight;
  83.         border-left-color:    buttonshadow;
  84.     }
  85.  
  86.     .noFieldsText
  87.     {
  88.         font-family:        tahoma,verdana,sans-serif;
  89.         color:                #BFBFBF;
  90.     }
  91.  
  92.     #divHeadingFieldsContainer, #divFieldsContainer
  93.     {
  94.         display:            none;
  95.     }
  96.     </STYLE>
  97.     <SCRIPT LANGUAGE="JavaScript" SRC="PublicFunctions.js"></SCRIPT>
  98.     <SCRIPT LANGUAGE="JavaScript" SRC="utilityfunctions.js"></SCRIPT>
  99.     <SCRIPT LANGUAGE="JavaScript" SRC="submit.js"></SCRIPT>
  100.     <SCRIPT LANGUAGE="JavaScript" SRC="validation.js"></SCRIPT>
  101.     <SCRIPT LANGUAGE="JavaScript" SRC="form.js"></SCRIPT>
  102.     <SCRIPT LANGUAGE="JavaScript">
  103.     // Put the variables from the querystring into globals.
  104.     getQueryStringVariables();
  105.  
  106.     // Only include form_edit.js if you are actually previewing the form.
  107.     if (!g_IsViewSource)
  108.         document.write("<SCRIPT LANGUAGE=\"JavaScript\" SRC=\"form_edit.js\"></" + "SCRIPT>");
  109.  
  110.     var g_FormHTML = "";
  111.     var g_ShowBorder = false;
  112.     var g_ScriptDispatch = window.external.GetScriptDispatch();
  113.  
  114.     if (g_FormID)
  115.     {
  116.         try
  117.         {
  118.             var Transaction = g_ScriptDispatch.OpenTransaction();
  119.  
  120.             if (!g_IsViewSource)
  121.                 document.write(g_ScriptDispatch.GetFormStyle(g_FormID));
  122.             g_FormHTML = g_ScriptDispatch.GetFormHTML(g_FormID)
  123.             g_ShowBorder = g_ScriptDispatch.GetShowBorder();
  124.  
  125.             Transaction.Commit();
  126.         }
  127.         catch (error)
  128.         {
  129.             Transaction.Abort();
  130.         }
  131.     }
  132.  
  133.     // ============================================== //
  134.     // ===         Begin document methods         === //
  135.     // ============================================== //
  136.  
  137.     function setPreviewDocument()
  138.     {
  139.         if (g_IsViewSource)
  140.             return;
  141.  
  142.         g_ScriptDispatch.SetPreviewDocument(document, getFieldInstances(), getFieldGroupInstances(), getTabGroupInstances());
  143.     }
  144.  
  145.     function clearPreviewDocument()
  146.     {
  147.         if (g_IsViewSource)
  148.             return;
  149.  
  150.         g_ScriptDispatch.ClearPreviewDocument();
  151.     }
  152.  
  153.     function setCurrentField(i_bCallback)
  154.     {
  155.         if (g_IsViewSource)
  156.             return;
  157.  
  158.         g_ScriptDispatch.SetCurrentField(g_CurrentFormObject, i_bCallback);
  159.     }
  160.  
  161.     function clearCurrentField()
  162.     {
  163.         if (g_IsViewSource)
  164.             return;
  165.  
  166.         g_ScriptDispatch.ClearCurrentField();
  167.     }
  168.  
  169.     // ============================================== //
  170.     // ===          Begin layout methods          === //
  171.     // ============================================== //
  172.  
  173.     var g_CurrentFormObject;
  174.     var g_HoverFormObject;
  175.  
  176.     function hoverField(i_Field)
  177.     {
  178.         if (g_IsViewSource)
  179.             return;
  180.  
  181.         if (window.event != null)
  182.             window.event.cancelBubble = true;
  183.  
  184.         if (g_HoverFormObject != null)
  185.             disableHover();
  186.  
  187.         g_HoverFormObject = i_Field;
  188.  
  189.         if (i_Field != null)
  190.         {
  191.             var objLabel = document.getElementById(i_Field.Name + "_label");
  192.             var objField = document.getElementById(i_Field.Name + "_field");
  193.             if (objLabel != null)
  194.                 objLabel.className = "hoverField " + objLabel.className;
  195.             if (objField != null)
  196.                 objField.className = "hoverField " + objField.className;
  197.         }
  198.     }
  199.  
  200.     function hoverTab(i_Tab, i_TabGroup)
  201.     {
  202.         if (window.event != null)
  203.             window.event.cancelBubble = true;
  204.  
  205.         if (g_HoverFormObject != null)
  206.             disableHover();
  207.  
  208.         g_HoverFormObject = i_Tab;
  209.  
  210.         if (i_Tab != null)
  211.         {
  212.             var objTab = window.event.srcElement;
  213.             var objTabContents = document.getElementById(objTab.id + "Contents");
  214.             if (objTab != null)
  215.                 objTab.className = "hoverField " + objTab.className;
  216.             if (objTabContents != null)
  217.                 objTabContents.className = "hoverField " + objTabContents.className;
  218.         }
  219.     }
  220.  
  221.     function selectFieldByName(i_FieldName)
  222.     {
  223.         if (g_IsViewSource)
  224.             return;
  225.  
  226.         if (eval("typeof obj" + i_FieldName) != "undefined")
  227.             selectFieldNoHover(eval("obj" + i_FieldName));
  228.         else if (g_CurrentFormObject != null)
  229.             disableCurrent();
  230.     }
  231.  
  232.     function selectField(i_Field)
  233.     {
  234.         if (g_IsViewSource)
  235.             return;
  236.  
  237.         if (window.event != null)
  238.             window.event.cancelBubble = true;
  239.  
  240.         if (g_CurrentFormObject != null)
  241.             disableCurrent();
  242.  
  243.         g_CurrentFormObject = i_Field;
  244.  
  245.         if (i_Field != null)
  246.             setCurrentField(true);
  247.     }
  248.  
  249.     function selectFieldNoHover(i_Field)
  250.     {
  251.         if (window.event != null)
  252.             window.event.cancelBubble = true;
  253.  
  254.         if (g_CurrentFormObject != null)
  255.             disableCurrent();
  256.  
  257.         g_CurrentFormObject = i_Field;
  258.  
  259.         if (i_Field != null)
  260.         {
  261.             var objLabel = document.getElementById(i_Field.Name + "_label");
  262.             var objField = document.getElementById(i_Field.Name + "_field");
  263.             if (objLabel != null)
  264.                 objLabel.className = "highlightField " + objLabel.className;
  265.             if (objField != null)
  266.                 objField.className = "highlightField " + objField.className;
  267.  
  268.             setCurrentField(false);
  269.             scrollToField();
  270.         }
  271.     }
  272.  
  273.     function selectTab(i_Tab, i_TabGroup)
  274.     {
  275.         if (window.event != null)
  276.             window.event.cancelBubble = true;
  277.  
  278.         if (g_CurrentFormObject != null)
  279.             disableCurrent();
  280.  
  281.         g_CurrentFormObject = i_Tab;
  282.  
  283.         if (i_Tab != null)
  284.         {
  285.             var objTab = document.getElementById(i_Tab.Name);
  286.             if (objTab != null)
  287.                 tabClick(objTab, i_TabGroup);
  288.  
  289.             var objTab = window.event.srcElement;
  290.             if (objTab != null)
  291.                 objTab.className = "hoverField " + objTab.className;
  292.  
  293.             setCurrentField(true);
  294.         }
  295.     }
  296.  
  297.     function disableCurrent()
  298.     {
  299.         if (g_CurrentFormObject.Type == FormObjectType_Tab)
  300.             disableCurrentHelper(g_CurrentFormObject.Name, "", "Contents")
  301.         else
  302.             disableCurrentHelper(g_CurrentFormObject.Name, "_label", "_field")
  303.     }
  304.  
  305.     function disableCurrentHelper(i_Name, i_LabelPostfix, i_FieldPostfix)
  306.     {
  307.         var objCurrentLabel = document.getElementById(i_Name + i_LabelPostfix);
  308.         var objCurrentField = document.getElementById(i_Name + i_FieldPostfix);
  309.         if (objCurrentLabel != null)
  310.             objCurrentLabel.className = objCurrentLabel.className.replace(/(hoverField|highlightField) /g, "");
  311.         if (objCurrentField != null)
  312.             objCurrentField.className = objCurrentField.className.replace(/(hoverField|highlightField) /g, "");
  313.     }
  314.  
  315.     function disableHover()
  316.     {
  317.         if (g_HoverFormObject.Type == FormObjectType_Tab)
  318.             disableHoverHelper(g_HoverFormObject.Name, "", "Contents");
  319.         else
  320.             disableHoverHelper(g_HoverFormObject.Name, "_label", "_field");
  321.     }
  322.  
  323.     function disableHoverHelper(i_Name, i_LabelPostfix, i_FieldPostfix)
  324.     {
  325.         var objHoverLabel = document.getElementById(i_Name + i_LabelPostfix);
  326.         var objHoverField = document.getElementById(i_Name + i_FieldPostfix);
  327.         if (objHoverLabel != null)
  328.             objHoverLabel.className = objHoverLabel.className.replace(/(hoverField|highlightField) /g, "");
  329.         if (objHoverField != null)
  330.             objHoverField.className = objHoverField.className.replace(/(hoverField|highlightField) /g, "");
  331.  
  332.         if (g_CurrentFormObject != null && g_CurrentFormObject.Name == i_Name)
  333.         {
  334.             var objCurrentLabel = document.getElementById(i_Name + i_LabelPostfix);
  335.             var objCurrentField = document.getElementById(i_Name + i_FieldPostfix);
  336.             if (objCurrentLabel != null)
  337.                 objCurrentLabel.className = "highlightField " + objCurrentLabel.className;
  338.             if (objCurrentField != null)
  339.                 objCurrentField.className = "highlightField " + objCurrentField.className;
  340.         }
  341.     }
  342.  
  343.     function moveLeft()
  344.     {
  345.         int_moveLeft(g_CurrentFormObject);
  346.         selectFieldNoHover(g_CurrentFormObject);
  347.  
  348.         scrollToField();
  349.     }
  350.  
  351.     function int_moveLeft(i_FormObject)
  352.     {
  353.         if (i_FormObject != null)
  354.         {
  355.             var arrFields = getProperFields(i_FormObject);
  356.             for (var i = 0; i < arrFields.length; i++)
  357.             {
  358.                 if (arrFields[i].Name == i_FormObject.Name)
  359.                 {
  360.                     // Can't move up  if it is the first field.
  361.                     if (i == 0)
  362.                         break;
  363.  
  364.                     var PreArray = new Array();
  365.                     if (i >= 2)
  366.                         PreArray = arrFields.slice(0, i - 1);
  367.  
  368.                     var PostArray = new Array();
  369.                     if (arrFields.length > i)
  370.                         PostArray = arrFields.slice(i + 1, arrFields.length);
  371.  
  372.                     var FieldsArray = PreArray.concat(arrFields[i], arrFields[i-1], PostArray);;
  373.                     if (i_FormObject.Tab != null)
  374.                         i_FormObject.Tab.Fields = FieldsArray;
  375.                     else if (i_FormObject.FieldGroup != null)
  376.                         i_FormObject.FieldGroup.Fields = FieldsArray;
  377.                     else
  378.                         Fields.FormObjects = FieldsArray;
  379.                     refreshLayout();
  380.  
  381.                     break;
  382.                 }
  383.             }
  384.  
  385.             setPreviewDocument();
  386.         }
  387.     }
  388.  
  389.     function moveRight()
  390.     {
  391.         if (g_CurrentFormObject != null)
  392.         {
  393.             var arrFields = getProperFields(g_CurrentFormObject);
  394.             for (var i = 0; i < arrFields.length; i++)
  395.             {
  396.                 if (arrFields[i].Name == g_CurrentFormObject.Name)
  397.                 {
  398.                     int_moveLeft(arrFields[i+1]);
  399.                     break;
  400.                 }
  401.             }
  402.  
  403.             selectFieldNoHover(g_CurrentFormObject);
  404.             setPreviewDocument();
  405.         }
  406.  
  407.         scrollToField();
  408.     }
  409.  
  410.     function scrollToField()
  411.     {
  412.         var objLabel = document.getElementById(g_CurrentFormObject.Name + "_label");
  413.         var objField = document.getElementById(g_CurrentFormObject.Name + "_field");
  414.         if (objLabel != null || objField != null)
  415.         {
  416.             var objInput = objLabel;
  417.             if (objInput == null)
  418.                 objInput = objField;
  419.  
  420.             var intTop = getOffset(objInput, "top");
  421.             var intHeight = objInput.offsetHeight;
  422.             if (intTop < document.body.scrollTop)
  423.             {
  424.                 document.body.scrollTop = intTop - 10;
  425.             }
  426.             else if ((intTop + intHeight) > (document.body.scrollTop + document.body.offsetHeight))
  427.             {
  428.                 document.body.scrollTop = (intTop - document.body.offsetHeight) + intHeight + 10;
  429.             }
  430.         }
  431.     }
  432.  
  433.     function changeColumns(i_Columns)
  434.     {
  435.         var Columns = parseInt(i_Columns);
  436.         if (!isNaN(Columns))
  437.         {
  438.             Fields.NumberOfColumns = Columns;
  439.             refreshLayout();
  440.         }
  441.  
  442.         selectFieldNoHover(g_CurrentFormObject);
  443.         setPreviewDocument();
  444.     }
  445.  
  446.     function changeColumnSpan(i_ColumnSpan)
  447.     {
  448.         if (g_CurrentFormObject != null)
  449.         {
  450.             var ColumnSpan = parseInt(i_ColumnSpan);
  451.             if (!isNaN(ColumnSpan))
  452.             {
  453.                 g_CurrentFormObject.ColumnSpan = ColumnSpan;
  454.                 refreshLayout();
  455.             }
  456.         }
  457.  
  458.         selectFieldNoHover(g_CurrentFormObject);
  459.         setPreviewDocument();
  460.     }
  461.  
  462.     function changeRowSpan(i_RowSpan)
  463.     {
  464.         if (g_CurrentFormObject != null)
  465.         {
  466.             var RowSpan = parseInt(i_RowSpan);
  467.             if (!isNaN(RowSpan))
  468.             {
  469.                 g_CurrentFormObject.RowSpan = RowSpan;
  470.                 refreshLayout();
  471.             }
  472.         }
  473.  
  474.         selectFieldNoHover(g_CurrentFormObject);
  475.         setPreviewDocument();
  476.     }
  477.  
  478.     function changeClassName(i_ClassName)
  479.     {
  480.         if (g_CurrentFormObject != null)
  481.         {
  482.             g_CurrentFormObject.ClassName = i_ClassName;
  483.             refreshLayout();
  484.         }
  485.  
  486.         selectFieldNoHover(g_CurrentFormObject);
  487.         setPreviewDocument();
  488.     }
  489.  
  490.     function changeInheritFrom(i_InheritFrom)
  491.     {
  492.         if (g_CurrentFormObject != null)
  493.             g_CurrentFormObject.InheritFrom = i_InheritFrom;
  494.     }
  495.  
  496.     function changeIsHidden()
  497.     {
  498.         if (g_CurrentFormObject != null)
  499.         {
  500.             if (g_CurrentFormObject.IsHidden)
  501.                 g_CurrentFormObject.IsHidden = false;
  502.             else
  503.                 g_CurrentFormObject.IsHidden = true;
  504.             refreshLayout();
  505.         }
  506.  
  507.         selectFieldNoHover(g_CurrentFormObject);
  508.         setPreviewDocument();
  509.     }
  510.  
  511.     function changeIsReadOnly()
  512.     {
  513.         if (g_CurrentFormObject != null)
  514.         {
  515.             if (g_CurrentFormObject.IsReadOnly)
  516.                 g_CurrentFormObject.IsReadOnly = false;
  517.             else
  518.                 g_CurrentFormObject.IsReadOnly = true;
  519.         }
  520.     }
  521.  
  522.     function changeIsRequired()
  523.     {
  524.         if (g_CurrentFormObject != null)
  525.         {
  526.             if (g_CurrentFormObject.IsRequired)
  527.                 g_CurrentFormObject.IsRequired = false;
  528.             else
  529.                 g_CurrentFormObject.IsRequired = true;
  530.             refreshLayout();
  531.         }
  532.  
  533.         selectFieldNoHover(g_CurrentFormObject);
  534.         setPreviewDocument();
  535.     }
  536.  
  537.     function changePropagateUpdates()
  538.     {
  539.         if (g_CurrentFormObject != null)
  540.         {
  541.             if (g_CurrentFormObject.PropagateUpdates)
  542.                 g_CurrentFormObject.PropagateUpdates = false;
  543.             else
  544.                 g_CurrentFormObject.PropagateUpdates = true;
  545.         }
  546.     }
  547.  
  548.     function changeTabColumns(i_Columns)
  549.     {
  550.         if (g_CurrentFormObject != null)
  551.         {
  552.             var TabColumns = parseInt(i_Columns);
  553.             if (!isNaN(TabColumns))
  554.             {
  555.                 g_CurrentFormObject.NumberOfColumns = TabColumns;
  556.                 refreshLayout();
  557.             }
  558.         }
  559.  
  560.         selectFieldNoHover(g_CurrentFormObject);
  561.         setPreviewDocument();
  562.     }
  563.  
  564.     function changeShowBorder(i_ShowBorder)
  565.     {
  566.         g_ShowBorder = i_ShowBorder;
  567.         refreshLayout();
  568.  
  569.         selectFieldNoHover(g_CurrentFormObject);
  570.         setPreviewDocument();
  571.     }
  572.  
  573.     function refreshLayout()
  574.     {
  575.         HeadingFields.displayFields();
  576.         Fields.displayFields();
  577.         initFormPage();
  578.     }
  579.  
  580.     // ============================================== //
  581.     // ===         Begin callback methods         === //
  582.     // ============================================== //
  583.  
  584.     function canMoveLeft()
  585.     {
  586.         if (g_CurrentFormObject != null)
  587.         {
  588.             var arrFields = getProperFields(g_CurrentFormObject);
  589.             for (var i = 0; i < arrFields.length; i++)
  590.             {
  591.                 if (arrFields[i].Name == g_CurrentFormObject.Name && i >= 1)
  592.                         return true;
  593.             }
  594.         }
  595.  
  596.         return false;
  597.     }
  598.  
  599.     function canMoveRight()
  600.     {
  601.         if (g_CurrentFormObject != null)
  602.         {
  603.             var arrFields = getProperFields(g_CurrentFormObject);
  604.             for (var i = 0; i < arrFields.length; i++)
  605.             {
  606.                 if (arrFields[i].Name == g_CurrentFormObject.Name && i < arrFields.length-1)
  607.                         return true;
  608.             }
  609.         }
  610.  
  611.         return false;
  612.     }
  613.     
  614.     function getProperFields(i_Field)
  615.     {
  616.         var arrFields;
  617.         if (g_CurrentFormObject.Tab != null)
  618.             arrFields = g_CurrentFormObject.Tab.Fields;
  619.         else if (g_CurrentFormObject.FieldGroup != null)
  620.             arrFields = g_CurrentFormObject.FieldGroup.Fields;
  621.         else
  622.             arrFields = Fields.FormObjects;
  623.         return arrFields;
  624.     }
  625.  
  626.     function getFieldInstances()
  627.     {
  628.         var arrFields = new Array();
  629.         var arrFormObjects = HeadingFields.FormObjects.concat(Fields.FormObjects)
  630.         for (var i = 0; i < arrFormObjects.length; i++)
  631.         {
  632.             var FormObject = arrFormObjects[i];
  633.             if (FormObject.Type == FormObjectType_TabGroup)
  634.             {
  635.                 for (var j = 0; j < FormObject.Tabs.length; j++)
  636.                 {
  637.                     for (var k = 0; k < FormObject.Tabs[j].Fields.length; k++)
  638.                     {
  639.                         if (FormObject.Tabs[j].Fields[k].Type != FormObjectType_FieldGroup)
  640.                             arrFields.push(FormObject.Tabs[j].Fields[k]);
  641.                         else
  642.                         {
  643.                             // If it is a field group within a tab group, add the fields.
  644.                             var FieldGroup = FormObject.Tabs[j].Fields[k];
  645.                             for (var l = 0; l < FieldGroup.Fields.length; l++)
  646.                             {
  647.                                 arrFields.push(FieldGroup.Fields[l]);
  648.                             }
  649.                         }
  650.                     }
  651.                 }
  652.             }
  653.             else if (FormObject.Type == FormObjectType_FieldGroup)
  654.             {
  655.                 for (var j = 0; j < FormObject.Fields.length; j++)
  656.                 {
  657.                     arrFields.push(FormObject.Fields[j]);
  658.                 }
  659.             }
  660.             else
  661.             {
  662.                 arrFields.push(FormObject);
  663.             }
  664.         }
  665.         return arrFields;
  666.     }
  667.  
  668.     function getFieldGroupInstances()
  669.     {
  670.         return Fields.FieldGroups;
  671.     }
  672.  
  673.     function getTabGroupInstances()
  674.     {
  675.         return Fields.TabGroups;
  676.     }
  677.  
  678.     function getScriptHostQI(i_Interface)
  679.     {
  680.         try
  681.         {
  682.             return window.external.GetScriptDispatch();
  683.         }
  684.         catch (error)
  685.         {
  686.             if (!g_AlertShown)
  687.             {
  688.                 alert("This web page should only be opened from within Groove. Please close the window.");
  689.                 g_AlertShown = true;
  690.             }
  691.             return null;
  692.         }
  693.     }
  694.     </SCRIPT>
  695. </HEAD>
  696. <BODY ONLOAD="setPreviewDocument(); initFormPage();" ONBEFOREUNLOAD="clearPreviewDocument(); clearCurrentField(); terminateFormPage();" ONCLICK="selectField(null); clearCurrentField();" ONMOUSEOVER="hoverField(null);">
  697.  
  698. <TABLE ID="tableNoFieldsInfo" CELLPADDING="0" CELLSPACING="0" BORDER="0" WIDTH="100%" HEIGHT="90%">
  699. <TR>
  700.     <TD VALIGN="middle" ALIGN="center" CLASS="noFieldsText">
  701.         <FONT STYLE="font-size:14pt;">
  702.             <SCRIPT LANGUAGE="JavaScript">
  703.             // IDS_FORMS_TOOL_JS_SELECT_FIELDS
  704.             document.write(getScriptHostQI("IGrooveFormsToolUIDelegatePrivate").GetResourcedString(IDS_FORMS_TOOL_JS_SELECT_FIELDS));
  705.             </SCRIPT>
  706.         </FONT>
  707.     </TD>
  708. </TR>
  709. </TABLE>
  710.  
  711. <FORM NAME="GrooveFormBase" ONSUBMIT="return false;">
  712.  
  713.     <DIV ID="divHeadingFieldsContainer"></DIV>
  714.     <DIV ID="divFieldsContainer"></DIV>
  715.  
  716.     <SCRIPT LANGUAGE="javascript">
  717.     if (g_IsViewSource)
  718.     {
  719.         document.write("<DIV STYLE=\"font-family:courier; font-size:10pt;\" NOWRAP>");
  720.  
  721.         document.write("<HTML><br>");
  722.         document.write("<BODY><br><br>");
  723.         document.write("<FORM NAME=\"GrooveFormBase\"><br><br>");
  724.     }
  725.  
  726.     document.write(g_FormHTML);
  727.     //document.write("<textarea rows=25 cols=100>" + g_FormHTML + "</textarea>");
  728.  
  729.     if (g_IsViewSource)
  730.     {
  731.         document.write("<br></FORM><br><br>");
  732.         document.write("</BODY><br>");
  733.         document.write("</HTML><br>");
  734.  
  735.         document.write("</DIV>");
  736.     }
  737.     </SCRIPT>
  738.  
  739. </FORM>
  740.  
  741. </BODY>
  742. </HTML>