<% ' Form Designer : admin/formdesignerfields.asp ' ' Manages form fields for a given form. ' ' 1.0.0 (12/16/2002) ' Carlos A. Madrigal ' ' Copyright © 1999-2003 Infolink Aplicaciones, S.A. de C.V. ' All rights reserved ' Derechos de Autor © 1999-2003 Infolink Aplicaciones, S.A. de C.V. ' Derechos Reservados. ' '**Start Encode** sDBExtraPath = "../" %> <% Const FBT_TEXT = 0 Const FBT_MEMO = 1 Const FBT_MAIL = 2 Const FBT_INT = 3 Const FBT_NUMBER = 4 Const FBT_CBO = 5 Const FBT_RADIOS = 6 Const FBT_CHECKBOXES = 7 ' Initialize variables sCmd = Request("cmd") sFormName = Request("form") sShadeColor = "#d9d9d9" sSublimeColor = "#d0d0d0" sStrongColor = "#555555" sContrast1Color = "#505050" sContrast2Color = "#f0f0f0" sContrast3Color = "black" sEmphasizeColor = "#777fab" sBackgroundColor = "white" %> Infolink Form Builder Editor topmargin=0 leftmargin=0 marginwidth= marginheight=0 link=<%=sContrast1Color%> alink=<%=sContrast3Color%> vlink=<%=sContrast1Color%>> <%If Len(Request("err")) > 0 Then%>

<%=Request("err")%>

Press here to edit your field.

<%Else Select Case sCmd Case "deletefield" ' Delete field sSQL = "DELETE FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'" conDB.Execute sSQL Response.Redirect "formdesignerfields.asp?form=" & Server.URLEncode(sFormName) Case "createfield" ' Check if a field with same code name exists sSQL = "SELECT COUNT(FieldCodeName) FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Replace(Request("codename"), "$", "") & "'" If conDB.Execute(sSQL)(0) > 0 Then sErrorMsg = "A field with same code name already exists, please choose another." Response.Redirect Request("HTTP_REFERER") & "&err=" & Server.URLEncode(sErrorMsg) End If ' Get last field sSQL = "SELECT MAX(OrderShown) FROM fbFormFields WHERE FormName='" & sFormName & "'" Set rsTemp = conDB.Execute(sSQL) If Not IsRSEmpty(rsTemp) Then iOrder = rsTemp(0)+1 Else iOrder = 0 If Not IsNumeric(iOrder) Then iOrder = 0 rsTemp.Close ' Open field sSQL = "fbFormFields" rsData.Open sSQL, , adOpenKeyset, adLockOptimistic, adCmdTable rsData.AddNew rsData("FormName") = sFormName rsData("FieldName") = Request("name") rsData("FieldCodeName") = Replace(Request("codename"), "$", "") rsData("FieldType") = Request("type") rsData("FieldSource") = ToDB(Request("source")) If Len(Request("length")) = 0 Then rsData("FieldLength") = 0 Else rsData("FieldLength") = Request("length") If Len(Request("height")) = 0 Then rsData("FieldHeight") = 0 Else rsData("FieldHeight") = Request("height") rsData("IsRequired") = Request("required") = "1" rsData("OrderShown") = iOrder rsData.Update Response.Redirect "formdesignerfields.asp?form=" & Server.URLEncode(sFormName) Case "savefield" ' Check if a field with same code name exists If Request("field") <> Replace(Request("codename"), "$", "") Then sSQL = "SELECT COUNT(FieldCodeName) FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Replace(Request("codename"), "$", "") & "'" If conDB.Execute(sSQL)(0) > 0 Then sErrorMsg = "A field with same code name already exists, please choose another." Response.Redirect Request("HTTP_REFERER") & "&err=" & Server.URLEncode(sErrorMsg) End If End If ' Open field sSQL = "SELECT * FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'" rsData.Open sSQL, , adOpenKeyset, adLockOptimistic, adCmdText Die IsRSEmpty(rsData), "Field does not longer exists. SQL:" & sSQL rsData("FieldName") = Request("name") rsData("FieldCodeName") = Replace(Request("codename"), "$", "") rsData("FieldType") = Request("type") rsData("FieldSource") = ToDB(Request("source")) If Len(Request("length")) = 0 Then rsData("FieldLength") = 0 Else rsData("FieldLength") = Request("length") If Len(Request("height")) = 0 Then rsData("FieldHeight") = 0 Else rsData("FieldHeight") = Request("height") rsData("IsRequired") = Request("required") = "1" rsData.Update Response.Redirect "formdesignerfields.asp?form=" & Server.URLEncode(sFormName) Case "newfield" %>
>> >
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_SETTINGS", "BackEndMessages", iInterfaceLang)%>
size=2><%=langMgr.GetContent("FORM_DESG_NEWFIELD_NAME", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_CODE", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_TYPE", "BackEndMessages", iInterfaceLang)%>  
<%=langMgr.GetContent("FORM_DESG_TYPE_TEXT", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_TYPE_MEMO", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_TYPE_EMAIL", "BackEndMessages", iInterfaceLang)%>
<%=langMgr.GetContent("FORM_DESG_TYPE_INTEGER", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_TYPE_NUMERIC", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_TYPE_COMBO", "BackEndMessages", iInterfaceLang)%>
<%=langMgr.GetContent("FORM_DESG_TYPE_RADIO", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_TYPE_CHECKBOX", "BackEndMessages", iInterfaceLang)%>
size=2><%=langMgr.GetContent("FORM_DESG_DATA_SOURCE", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_LENGTH", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_HEIGHT", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_REQUIRED", "BackEndMessages", iInterfaceLang)%>   <%=langMgr.GetContent("FORM_DESG_YES", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_NO", "BackEndMessages", iInterfaceLang)%>
size=2>"> ">
<% Case "editfield" ' Open field sSQL = "SELECT * FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'" rsData.Open sSQL Die IsRSEmpty(rsData), "Field does not longer exists." %>
>> >
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_SETTINGS", "BackEndMessages", iInterfaceLang)%>
size=2><%=langMgr.GetContent("FORM_DESG_NEWFIELD_NAME", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_CODE", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_TYPE", "BackEndMessages", iInterfaceLang)%>  
> <%=langMgr.GetContent("FORM_DESG_TYPE_TEXT", "BackEndMessages", iInterfaceLang)%> > <%=langMgr.GetContent("FORM_DESG_TYPE_MEMO", "BackEndMessages", iInterfaceLang)%> > <%=langMgr.GetContent("FORM_DESG_TYPE_EMAIL", "BackEndMessages", iInterfaceLang)%>
> <%=langMgr.GetContent("FORM_DESG_TYPE_INTEGER", "BackEndMessages", iInterfaceLang)%> > <%=langMgr.GetContent("FORM_DESG_TYPE_NUMERIC", "BackEndMessages", iInterfaceLang)%> > <%=langMgr.GetContent("FORM_DESG_TYPE_COMBO", "BackEndMessages", iInterfaceLang)%>
> <%=langMgr.GetContent("FORM_DESG_TYPE_RADIO", "BackEndMessages", iInterfaceLang)%> > <%=langMgr.GetContent("FORM_DESG_TYPE_CHECKBOX", "BackEndMessages", iInterfaceLang)%>
size=2><%=langMgr.GetContent("FORM_DESG_DATA_SOURCE", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_LENGTH", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_HEIGHT", "BackEndMessages", iInterfaceLang)%>  
size=2><%=langMgr.GetContent("FORM_DESG_REQUIRED", "BackEndMessages", iInterfaceLang)%>   > Yes > No
size=2>"> ">
<% Case "movefieldup" ' Get field order iCurrOrder = conDB.Execute("SELECT OrderShown FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'")(0) iPrevOrder = iCurrOrder - 1 If iPrevOrder > 0 Then ' Make previous item go to current order held by this item sSQL = "UPDATE fbFormFields SET OrderShown=" & iCurrOrder & " WHERE OrderShown=" & iPrevOrder & " AND FormName='" & sFormName & "'" conDB.Execute sSQL ' Make prev order current one for this item sSQL = "UPDATE fbFormFields SET OrderShown=" & iPrevOrder & " WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'" conDB.Execute sSQL End If Response.Redirect "formdesignerfields.asp?form=" & Server.URLEncode(sFormName) Case "movefielddown" ' Get field order iCurrOrder = conDB.Execute("SELECT OrderShown FROM fbFormFields WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'")(0) iNextOrder = iCurrOrder + 1 ' Make previous item go to current order held by this item sSQL = "UPDATE fbFormFields SET OrderShown=" & iCurrOrder & " WHERE OrderShown=" & iNextOrder & " AND FormName='" & sFormName & "'" conDB.Execute sSQL ' Make prev order current one for this item sSQL = "UPDATE fbFormFields SET OrderShown=" & iNextOrder & " WHERE FormName='" & sFormName & "' AND FieldCodeName='" & Request("field") & "'" conDB.Execute sSQL Response.Redirect "formdesignerfields.asp?form=" & Server.URLEncode(sFormName) Case Else %> >> > <% ' Get fields for this form iCurrField = 1 iTotalFields = conDB.Execute("SELECT COUNT(*) FROM fbFormFields WHERE FormName='" & sFormName & "'")(0) sSQL = "SELECT FieldName, FieldCodeName, FieldType, IsRequired FROM fbFormFields WHERE FormName='" & sFormName & "' ORDER BY OrderShown" Set rsFields = conDB.Execute(sSQL) While Not rsFields.EOF bFirstOne = (rsFields.RecordCount = 1) %> <% rsFields.MoveNext iCurrField = iCurrField + 1 Wend %>
size=2><%=langMgr.GetContent("FORM_DESG_FIELD_NAME", "BackEndMessages", iInterfaceLang)%> size=2>  size=2><%=langMgr.GetContent("FORM_DESG_CODE_NAME", "BackEndMessages", iInterfaceLang)%> size=2>  size=2><%=langMgr.GetContent("FORM_DESG_TYPE", "BackEndMessages", iInterfaceLang)%> size=2>  size=2> 
<%=IIf(rsFields("IsRequired"), "• ", "  ")%><%=rsFields("FieldName")%>   $<%=rsFields("FieldCodeName")%>   <% Select Case rsFields("FieldType") Case FBT_TEXT : Response.Write langMgr.GetContent("FORM_DESG_TYPE_TEXT", "BackEndMessages", iInterfaceLang) Case FBT_MEMO : Response.Write langMgr.GetContent("FORM_DESG_TYPE_MEMO", "BackEndMessages", iInterfaceLang) Case FBT_MAIL : Response.Write langMgr.GetContent("FORM_DESG_TYPE_EMAIL", "BackEndMessages", iInterfaceLang) Case FBT_INT : Response.Write langMgr.GetContent("FORM_DESG_TYPE_INTEGER", "BackEndMessages", iInterfaceLang) Case FBT_NUMBER : Response.Write langMgr.GetContent("FORM_DESG_TYPE_NUMERIC", "BackEndMessages", iInterfaceLang) Case FBT_CBO : Response.Write langMgr.GetContent("FORM_DESG_TYPE_COMBO", "BackEndMessages", iInterfaceLang) Case FBT_RADIOS : Response.Write langMgr.GetContent("FORM_DESG_TYPE_RADIO", "BackEndMessages", iInterfaceLang) Case FBT_CHECKBOXES : Response.Write langMgr.GetContent("FORM_DESG_TYPE_CHECKBOX", "BackEndMessages", iInterfaceLang) Case Else : Response.Write "(" & rsFields("FieldType") & ")" End Select %>   <%If iCurrField > 1 Then%><%=langMgr.GetContent("FORM_DESG_MOVE_UP", "BackEndMessages", iInterfaceLang)%> <%End If%> <%If iCurrField <> iTotalFields Then%><%=langMgr.GetContent("FORM_DESG_MOVE_DOWN", "BackEndMessages", iInterfaceLang)%> <%End If%> <%=langMgr.GetContent("FORM_DESG_EDIT_FIELD", "BackEndMessages", iInterfaceLang)%> ');"><%=langMgr.GetContent("FORM_DESG_DELETE_FIELD", "BackEndMessages", iInterfaceLang)%>
">
<%=langMgr.GetContent("FORM_DESG_LEGEND", "BackEndMessages", iInterfaceLang)%>:    
  <%=langMgr.GetContent("FORM_DESG_MOVE_UP", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_MOVE_UP", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_MOVE_DOWN", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_MOVE_DOWN", "BackEndMessages", iInterfaceLang)%>
  <%=langMgr.GetContent("FORM_DESG_EDIT_FIELD", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_EDIT_FIELD", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_DELETE_FIELD", "BackEndMessages", iInterfaceLang)%> <%=langMgr.GetContent("FORM_DESG_DELETE_FIELD", "BackEndMessages", iInterfaceLang)%>
<% End Select End If %>