Server IP : 103.118.17.23 / Your IP : 216.73.216.169 Web Server : Microsoft-IIS/10.0 System : Windows NT RESELLERPLESK22 10.0 build 20348 (Windows Server 2016) AMD64 User : IWAM_plesk(default) ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : E:/Inetpub/vhosts/mesa.org.in/httpdocs/panel/ |
Upload File : |
<%@ CodePage="65001" %> <% Response.Buffer = EW_RESPONSE_BUFFER %> <!--#include file="ewcfg.asp"--> <!--#include file="polymenudetailsinfo.asp"--> <!--#include file="aspfn.asp"--> <!--#include file="userfn.asp"--> <% Call ew_Header(False, EW_CHARSET, False) %> <% ' Define page object Dim polymenudetails_add Set polymenudetails_add = New cpolymenudetails_add Set Page = polymenudetails_add ' Page init processing Call polymenudetails_add.Page_Init ' Page main Call polymenudetails_add.Page_Main ' Global Page Rendering event (in userfn*.asp) Page_Rendering() ' Page Render event polymenudetails_add.Page_Render() %> <!--#include file="header.asp"--> <script type="text/javascript"> // Form object var CurrentPageID = EW_PAGE_ID = "add"; var CurrentForm = fpolymenudetailsadd = new ew_Form("fpolymenudetailsadd", "add"); // Validate form fpolymenudetailsadd.Validate = function() { if (!this.ValidateRequired) return true; // Ignore validation var $ = jQuery, fobj = this.GetForm(), $fobj = $(fobj); if ($fobj.find("#a_confirm").val() == "F") return true; var elm, felm, uelm, addcnt = 0; var $k = $fobj.find("#" + this.FormKeyCountName); // Get key_count var rowcnt = ($k[0]) ? parseInt($k.val(), 10) : 1; var startcnt = (rowcnt == 0) ? 0 : 1; // Check rowcnt == 0 => Inline-Add var gridinsert = $fobj.find("#a_list").val() == "gridinsert"; for (var i = startcnt; i <= rowcnt; i++) { var infix = ($k[0]) ? String(i) : ""; $fobj.data("rowindex", infix); elm = this.GetElements("x" + infix + "_zMenu"); if (elm && !ew_IsHidden(elm) && !ew_HasValue(elm)) return this.OnError(elm, "<%= ew_JsEncode2(Replace(polymenudetails.zMenu.ReqErrMsg, "%s", polymenudetails.zMenu.FldCaption)) %>"); elm = this.GetElements("x" + infix + "_Parent_id"); if (elm && !ew_CheckInteger(elm.value)) return this.OnError(elm, "<%= ew_JsEncode2(polymenudetails.Parent_id.FldErrMsg) %>"); elm = this.GetElements("x" + infix + "_Sequence"); if (elm && !ew_CheckInteger(elm.value)) return this.OnError(elm, "<%= ew_JsEncode2(polymenudetails.Sequence.FldErrMsg) %>"); // Fire Form_CustomValidate event if (!this.Form_CustomValidate(fobj)) return false; } // Process detail forms var dfs = $fobj.find("input[name='detailpage']").get(); for (var i = 0; i < dfs.length; i++) { var df = dfs[i], val = df.value; if (val && ewForms[val]) if (!ewForms[val].Validate()) return false; } return true; } // Form_CustomValidate event fpolymenudetailsadd.Form_CustomValidate = function(fobj) { // DO NOT CHANGE THIS LINE! // Your custom validation code here, return false if invalid. return true; } // Use JavaScript validation or not <% If EW_CLIENT_VALIDATE Then %> fpolymenudetailsadd.ValidateRequired = true; // Use JavaScript validation <% Else %> fpolymenudetailsadd.ValidateRequired = false; // No JavaScript validation <% End If %> // Dynamic selection lists <% Set arAS = Nothing %> // Form object for search </script> <script type="text/javascript"> // Write your client script here, no need to add script tags. </script> <% Call polymenudetails_add.ShowPageHeader %> <% Call polymenudetails_add.ShowMessage %> <form name="fpolymenudetailsadd" id="fpolymenudetailsadd" class="<%= polymenudetails_add.FormClassName %>" action="<%= ew_CurrentPage() %>" method="post"> <% If polymenudetails_add.CheckToken Then %> <input type="hidden" name="<%= EW_TOKEN_NAME %>" value="<%= polymenudetails_add.Token %>"> <% End If %> <input type="hidden" name="t" value="polymenudetails"> <input type="hidden" name="a_add" id="a_add" value="A"> <input type="hidden" name="modal" value="<%= ew_IIf(polymenudetails_add.IsModal, "1", "0") %>"> <div class="ewAddDiv"><!-- page* --> <% If polymenudetails.zMenu.Visible Then ' Menu %> <div id="r_zMenu" class="form-group"> <label id="elh_polymenudetails_zMenu" for="x_zMenu" class="<%= polymenudetails.LeftColumnClass %>"><%= polymenudetails.zMenu.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label> <div class="<%= polymenudetails.RightColumnClass %>"><div<%= polymenudetails.zMenu.CellAttributes %>> <span id="el_polymenudetails_zMenu"> <input type="text" data-table="polymenudetails" data-field="x_zMenu" name="x_zMenu" id="x_zMenu" size="30" maxlength="255" placeholder="<%= polymenudetails.zMenu.PlaceHolder %>" value="<%= polymenudetails.zMenu.EditValue %>"<%= polymenudetails.zMenu.EditAttributes %>> </span> <%= polymenudetails.zMenu.CustomMsg %></div></div> </div> <% End If %> <% If polymenudetails.URL.Visible Then ' URL %> <div id="r_URL" class="form-group"> <label id="elh_polymenudetails_URL" for="x_URL" class="<%= polymenudetails.LeftColumnClass %>"><%= polymenudetails.URL.FldCaption %></label> <div class="<%= polymenudetails.RightColumnClass %>"><div<%= polymenudetails.URL.CellAttributes %>> <span id="el_polymenudetails_URL"> <input type="text" data-table="polymenudetails" data-field="x_URL" name="x_URL" id="x_URL" size="30" maxlength="255" placeholder="<%= polymenudetails.URL.PlaceHolder %>" value="<%= polymenudetails.URL.EditValue %>"<%= polymenudetails.URL.EditAttributes %>> </span> <%= polymenudetails.URL.CustomMsg %></div></div> </div> <% End If %> <% If polymenudetails.Parent_id.Visible Then ' Parent_id %> <div id="r_Parent_id" class="form-group"> <label id="elh_polymenudetails_Parent_id" for="x_Parent_id" class="<%= polymenudetails.LeftColumnClass %>"><%= polymenudetails.Parent_id.FldCaption %></label> <div class="<%= polymenudetails.RightColumnClass %>"><div<%= polymenudetails.Parent_id.CellAttributes %>> <span id="el_polymenudetails_Parent_id"> <input type="text" data-table="polymenudetails" data-field="x_Parent_id" name="x_Parent_id" id="x_Parent_id" size="30" placeholder="<%= polymenudetails.Parent_id.PlaceHolder %>" value="<%= polymenudetails.Parent_id.EditValue %>"<%= polymenudetails.Parent_id.EditAttributes %>> </span> <%= polymenudetails.Parent_id.CustomMsg %></div></div> </div> <% End If %> <% If polymenudetails.Sequence.Visible Then ' Sequence %> <div id="r_Sequence" class="form-group"> <label id="elh_polymenudetails_Sequence" for="x_Sequence" class="<%= polymenudetails.LeftColumnClass %>"><%= polymenudetails.Sequence.FldCaption %></label> <div class="<%= polymenudetails.RightColumnClass %>"><div<%= polymenudetails.Sequence.CellAttributes %>> <span id="el_polymenudetails_Sequence"> <input type="text" data-table="polymenudetails" data-field="x_Sequence" name="x_Sequence" id="x_Sequence" size="30" placeholder="<%= polymenudetails.Sequence.PlaceHolder %>" value="<%= polymenudetails.Sequence.EditValue %>"<%= polymenudetails.Sequence.EditAttributes %>> </span> <%= polymenudetails.Sequence.CustomMsg %></div></div> </div> <% End If %> </div><!-- /page* --> <% If Not polymenudetails_add.IsModal Then %> <div class="form-group"><!-- buttons .form-group --> <div class="<%= polymenudetails.OffsetColumnClass %>"><!-- buttons offset --> <button class="btn btn-primary ewButton" name="btnAction" id="btnAction" type="submit"><%= Language.Phrase("AddBtn") %></button> <button class="btn btn-default ewButton" name="btnCancel" id="btnCancel" type="button" data-href="<%= polymenudetails.ReturnUrl %>"><%= Language.Phrase("CancelBtn") %></button> </div><!-- /buttons offset --> </div><!-- /buttons .form-group --> <% End If %> </form> <script type="text/javascript"> fpolymenudetailsadd.Init(); </script> <% Call polymenudetails_add.ShowPageFooter If EW_DEBUG_ENABLED Then Response.Write ew_DebugMsg() %> <script type="text/javascript"> // Write your table-specific startup script here // document.write("page loaded"); </script> <!--#include file="footer.asp"--> <% ' Clean up and drop page object Call polymenudetails_add.Page_Terminate("") Set polymenudetails_add = Nothing %> <% ' ' Page Class ' Class cpolymenudetails_add ' Page ID Public Property Get PageID PageID = "add" End Property ' Project ID Public Property Get ProjectID ProjectID = "panel" End Property ' Table Name Public Property Get TableName TableName = "polymenudetails" End Property ' Page Object Name Public Property Get PageObjName PageObjName = "polymenudetails_add" End Property ' Field (ID) Public Property Get ID Set ID = polymenudetails.ID End Property ' Field (Menu) Public Property Get zMenu Set zMenu = polymenudetails.zMenu End Property ' Field (URL) Public Property Get URL Set URL = polymenudetails.URL End Property ' Field (Parent_id) Public Property Get Parent_id Set Parent_id = polymenudetails.Parent_id End Property ' Field (Sequence) Public Property Get Sequence Set Sequence = polymenudetails.Sequence End Property ' Get field object dictionary (ASP) Public Property Get Fields Set Fields = polymenudetails.Fields End Property ' Get field object by name (alias of Fields) (ASP) Public Function GetField(Name) Set GetField = Fields.Get(Name) End Function ' Get field object by parm (ASP) Public Function GetFieldByParm(Parm) Dim keys, key keys = Fields.Keys() For Each key In keys If Fields.Get(key).FldParm = Parm Then Set GetFieldByParm = Fields.Get(key) Exit Function End If Next Set GetFieldByParm = Nothing End Function ' Export document (ASP) Dim ExportDoc ' Page headings Dim Heading Dim Subheading ' Page heading Function PageHeading() PageHeading = "" If Heading <> "" Then PageHeading = Heading ElseIf ew_NotEmpty(polymenudetails) Then PageHeading = polymenudetails.TableCaption End If End Function ' Page subheading Function PageSubheading() If Subheading <> "" Then PageSubheading = Subheading Else PageSubheading = "" If TableName <> "" Then PageSubheading = Language.Phrase(PageID) End If End If End Function ' Page Name Public Property Get PageName PageName = ew_CurrentPage() End Property ' Page Url Public Property Get PageUrl PageUrl = ew_CurrentPage() & "?" If polymenudetails.UseTokenInUrl Then PageUrl = PageUrl & "t=" & polymenudetails.TableVar & "&" ' add page token End Property ' Message Public Property Get Message Message = Session(EW_SESSION_MESSAGE) End Property Public Property Let Message(v) Dim msg msg = Session(EW_SESSION_MESSAGE) Call ew_AddMessage(msg, v) Session(EW_SESSION_MESSAGE) = msg End Property Public Property Get FailureMessage FailureMessage = Session(EW_SESSION_FAILURE_MESSAGE) End Property Public Property Let FailureMessage(v) Dim msg msg = Session(EW_SESSION_FAILURE_MESSAGE) Call ew_AddMessage(msg, v) Session(EW_SESSION_FAILURE_MESSAGE) = msg End Property Public Property Get SuccessMessage SuccessMessage = Session(EW_SESSION_SUCCESS_MESSAGE) End Property Public Property Let SuccessMessage(v) Dim msg msg = Session(EW_SESSION_SUCCESS_MESSAGE) Call ew_AddMessage(msg, v) Session(EW_SESSION_SUCCESS_MESSAGE) = msg End Property Public Property Get WarningMessage WarningMessage = Session(EW_SESSION_WARNING_MESSAGE) End Property Public Property Let WarningMessage(v) Dim msg msg = Session(EW_SESSION_WARNING_MESSAGE) Call ew_AddMessage(msg, v) Session(EW_SESSION_WARNING_MESSAGE) = msg End Property ' Methods to clear message Public Sub ClearMessage() Session(EW_SESSION_MESSAGE) = "" End Sub Public Sub ClearFailureMessage() Session(EW_SESSION_FAILURE_MESSAGE) = "" End Sub Public Sub ClearSuccessMessage() Session(EW_SESSION_SUCCESS_MESSAGE) = "" End Sub Public Sub ClearWarningMessage() Session(EW_SESSION_WARNING_MESSAGE) = "" End Sub Public Sub ClearMessages() Session(EW_SESSION_MESSAGE) = "" Session(EW_SESSION_FAILURE_MESSAGE) = "" Session(EW_SESSION_SUCCESS_MESSAGE) = "" Session(EW_SESSION_WARNING_MESSAGE) = "" End Sub ' Show Message Public Sub ShowMessage() Dim hidden, html, sMessage hidden = False html = "" ' Message sMessage = Message Call Message_Showing(sMessage, "") If sMessage <> "" Then ' Message in Session, display If Not hidden Then sMessage = "<button type=""button"" class=""close"" data-dismiss=""alert"">×</button>" & sMessage html = html & "<div class=""alert alert-info ewInfo"">" & sMessage & "</div>" Session(EW_SESSION_MESSAGE) = "" ' Clear message in Session End If ' Warning message Dim sWarningMessage sWarningMessage = WarningMessage Call Message_Showing(sWarningMessage, "warning") If sWarningMessage <> "" Then ' Message in Session, display If Not hidden Then sWarningMessage = "<button type=""button"" class=""close"" data-dismiss=""alert"">×</button>" & sWarningMessage html = html & "<div class=""alert alert-warning ewWarning"">" & sWarningMessage & "</div>" Session(EW_SESSION_WARNING_MESSAGE) = "" ' Clear message in Session End If ' Success message Dim sSuccessMessage sSuccessMessage = SuccessMessage Call Message_Showing(sSuccessMessage, "success") If sSuccessMessage <> "" Then ' Message in Session, display If Not hidden Then sSuccessMessage = "<button type=""button"" class=""close"" data-dismiss=""alert"">×</button>" & sSuccessMessage html = html & "<div class=""alert alert-success ewSuccess"">" & sSuccessMessage & "</div>" Session(EW_SESSION_SUCCESS_MESSAGE) = "" ' Clear message in Session End If ' Failure message Dim sErrorMessage sErrorMessage = FailureMessage Call Message_Showing(sErrorMessage, "failure") If sErrorMessage <> "" Then ' Message in Session, display If Not hidden Then sErrorMessage = "<button type=""button"" class=""close"" data-dismiss=""alert"">×</button>" & sErrorMessage html = html & "<div class=""alert alert-danger ewError"">" & sErrorMessage & "</div>" Session(EW_SESSION_FAILURE_MESSAGE) = "" ' Clear message in Session End If Response.Write "<div class=""ewMessageDialog""" & ew_IIf(hidden, " style=""display: none;""", "") & ">" & html & "</div>" End Sub Dim PageHeader Dim PageFooter ' Show Page Header Public Sub ShowPageHeader() Dim sHeader sHeader = PageHeader Call Page_DataRendering(sHeader) If sHeader <> "" Then ' Header exists, display Response.Write "<p>" & sHeader & "</p>" End If End Sub ' Show Page Footer Public Sub ShowPageFooter() Dim sFooter sFooter = PageFooter Call Page_DataRendered(sFooter) If sFooter <> "" Then ' Footer exists, display Response.Write "<p>" & sFooter & "</p>" End If End Sub ' ' Validate Page request ' Public Function IsPageRequest() If polymenudetails.UseTokenInUrl Then IsPageRequest = False If ew_NotEmpty(ObjForm) Then IsPageRequest = (polymenudetails.TableVar = ObjForm.GetValue("t")) End If If Request.QueryString("t").Count > 0 Then IsPageRequest = (polymenudetails.TableVar = Request.QueryString("t")) End If Else IsPageRequest = True End If End Function Dim Token Dim CheckToken Dim TokenTimeout ' Valid Post Function ValidPost() If Not CheckToken Or Not ew_IsPost() Then ValidPost = True Exit Function End If If Request.Form(EW_TOKEN_NAME).Count = 0 Then ValidPost = False Exit Function End If ValidPost = ew_CheckToken(Request.Form(EW_TOKEN_NAME),TokenTimeout) End Function ' Create Token Sub CreateToken() If CheckToken And Token = "" Then Token = ew_CreateToken() gsToken = Token ' Save to global variable End If End Sub ' ' Class initialize ' Private Sub Class_Initialize() Session.LCID = 1033 ' Always use US locale id If IsEmpty(StartTimer) Then StartTimer = Timer ' Init start time ' Check Token Token = "" CheckToken = EW_CHECK_TOKEN TokenTimeout = 0 TokenTimeout = ew_SessionTimeoutTime() ' Initialize language object If IsEmpty(Language) Then Set Language = New cLanguage Call Language.LoadPhrases End If ' Initialize table object If IsEmpty(polymenudetails) Then Set polymenudetails = New cpolymenudetails Set Table = polymenudetails ' Initialize URLs ' Initialize form object Set ObjForm = Nothing ' Get resize object Call ew_GetResizeObj ' Intialize page id (for backward compatibility) EW_PAGE_ID = "add" ' Initialize table name (for backward compatibility) EW_TABLE_NAME = "polymenudetails" ' Debug message Call ew_LoadDebugMsg ' Open connection to the database If IsEmpty(Conn) Then Set Conn = ew_Connect(polymenudetails.TableDBID) End If End Sub ' ' Page_Init ' Sub Page_Init() ' Is modal IsModal = (Request.QueryString("modal") = "1" Or Request.Form("modal") = "1") ' User profile Set UserProfile = New cUserProfile ' Security Set Security = New cAdvancedSecurity If Not Security.IsLoggedIn() Then Security.AutoLogin() Call Security.LoadCurrentUserLevel(ProjectID & TableName) If Not Security.CanAdd Then Call Security.SaveLastUrl If Security.CanList Then Call Page_Terminate(ew_GetUrl("polymenudetailslist.asp")) Else Call Page_Terminate(ew_GetUrl("login.asp")) End If End If ' Create form object Set ObjForm = New cFormObj polymenudetails.CurrentAction = ew_IIf(Request.QueryString("a").Count > 0, Request.QueryString("a") & "", ObjForm.GetValue("a_list") & "") ' Set up current action Call polymenudetails.zMenu.SetVisibility(polymenudetails) Call polymenudetails.URL.SetVisibility(polymenudetails) Call polymenudetails.Parent_id.SetVisibility(polymenudetails) Call polymenudetails.Sequence.SetVisibility(polymenudetails) ' Global page loading event (in userfn*.asp) Call Page_Loading ' Page load event, used in current page Call Page_Load ' Check token If Not ValidPost() Then Response.Write Language.Phrase("InvalidPostRequest") Call Page_Terminate("") Response.End End If ' Process auto fill Dim results If Request.Form("ajax") = "autofill" Then results = polymenudetails.GetAutoFill(Request.Form("name"), Request.Form("q")) If results <> "" Then ' Clean output buffer If Response.Buffer Then Response.Clear Response.Write results Call Page_Terminate("") Response.End End If End If ' Create Token Call CreateToken End Sub ' ' Page_Terminate ' Sub Page_Terminate(url) If Request.Form("customexport")&"" = "" Then ' Page unload event, used in current page Call Page_Unload ' Global page unloaded event (in userfn*.asp) Call Page_Unloaded End If ' Export If ew_NotEmpty(polymenudetails) Then If polymenudetails.Export <> "" And Request.Form("data").Count > 0 Then Dim sContent sContent = Request.Form("data") gsExportFile = Request.Form("filename") If gsExportFile = "" Then gsExportFile = polymenudetails.TableVar If polymenudetails.Export = "pdf" Then Call ExportPdf(sContent) ElseIf polymenudetails.Export = "email" Then Response.Write ExportEmail(sContent) ElseIf polymenudetails.Export = "excel" Then Call ExportExcel(sContent) ElseIf polymenudetails.Export = "word" Then Call ExportWord(sContent) End If End If End If Dim sRedirectUrl sRedirectUrl = url Call Page_Redirecting(sRedirectUrl) Call ew_CloseConn ' Close Connection Set Security = Nothing Set ObjForm = Nothing Set gResizeObj = Nothing ' Go to URL if specified If gsExport & "" = "" Then If sRedirectUrl <> "" Then If Response.Buffer Then Response.Clear ' Handle modal response If IsModal Then ' Show as modal Dim row, pageName Set row = Dictionary() Call row.Add("url", sRedirectURL) Call row.Add("modal", "1") pageName = ew_GetPageName(sRedirectURL) If pageName <> polymenudetails.ListUrl Then ' Not List page Call row.Add("caption", polymenudetails.GetModalCaption(pageName)) If pageName = "polymenudetailsview.asp" Then Call row.Add("view", "1") End If Else 'List page should not be shown as modal => error Call row.Add("error", FailureMessage) Call ClearFailureMessage End If Call ResponseJson Response.Write "[" & row.ToJson() & "]" Set row = Nothing Response.End Else Call ew_SaveDebugMsg Response.Redirect sRedirectUrl End If End If End If Set polymenudetails = Nothing Call ew_CleanUp End Sub ' ' Page_Terminate (End) ' Dim FormClassName Dim IsModal Dim IsMobileOrModal Dim DbMasterFilter, DbDetailFilter Dim StartRec Dim Priv Dim OldRecordset Dim CopyRecord ' ' Page main ' Sub Page_Main() IsMobileOrModal = False If IsModal Then gbSkipHeaderFooter = True FormClassName = "ewForm ewAddForm form-horizontal" ' Set up current action If ObjForm.GetValue("a_add")&"" <> "" Then polymenudetails.CurrentAction = ObjForm.GetValue("a_add") ' Get form action ' Not post back Else ' Load key values from QueryString CopyRecord = True If Request.QueryString("ID").Count > 0 Then polymenudetails.ID.QueryStringValue = Request.QueryString("ID") Call polymenudetails.SetKey("ID", polymenudetails.ID.CurrentValue) ' Set up key Else Call polymenudetails.SetKey("ID", "") ' Clear key CopyRecord = False End If If CopyRecord Then polymenudetails.CurrentAction = "C" ' Copy Record Else polymenudetails.CurrentAction = "I" ' Display Blank Record End If End If Dim loaded loaded = LoadOldRecord() ' Load old recordset ' Load form values If ObjForm.GetValue("a_add")&"" <> "" Then Call LoadFormValues ' Load form values End If ' Validate form if post back If ObjForm.GetValue("a_add")&"" <> "" Then If Not ValidateForm() Then polymenudetails.CurrentAction = "I" ' Form error, reset action polymenudetails.EventCancelled = True ' Event cancelled Call RestoreFormValues ' Restore form values FailureMessage = gsFormError End If End If ' Perform current action Select Case polymenudetails.CurrentAction Case "I" ' Blank record Case "C" ' Copy an existing record If Not loaded Then ' Record not loaded If FailureMessage = "" Then FailureMessage = Language.Phrase("NoRecord") ' No record found Call Page_Terminate("polymenudetailslist.asp") ' No matching record, return to list End If Case "A" ' Add new record polymenudetails.SendEmail = True ' Send email on add success If AddRow(OldRecordset) Then ' Add successful If SuccessMessage = "" Then SuccessMessage = Language.Phrase("AddSuccess") ' Set up success message Dim sReturnUrl sReturnUrl = polymenudetails.ReturnUrl If ew_GetPageName(sReturnUrl) = "polymenudetailslist.asp" Then sReturnUrl = polymenudetails.AddMasterUrl(sReturnUrl) ' List page, return to List page with correct master key if necessary ElseIf ew_GetPageName(sReturnUrl) = "polymenudetailsview.asp" Then sReturnUrl = polymenudetails.ViewUrl("") ' View paging, return to View page with keyurl directly End If Call Page_Terminate(sReturnUrl) ' Clean up and return Else polymenudetails.EventCancelled = True ' Event cancelled Call RestoreFormValues ' Add failed, restore form values End If End Select ' Set up Breadcrumb Call SetupBreadcrumb ' Render row based on row type polymenudetails.RowType = EW_ROWTYPE_ADD ' Render add type ' Render row Call polymenudetails.ResetAttrs Call RenderRow End Sub ' ' Get upload files ' Sub GetUploadFiles() ' Get upload data End Sub ' ' Load default values ' Sub LoadDefaultValues() polymenudetails.ID.CurrentValue = Null polymenudetails.ID.OldValue = polymenudetails.ID.CurrentValue polymenudetails.zMenu.CurrentValue = Null polymenudetails.zMenu.OldValue = polymenudetails.zMenu.CurrentValue polymenudetails.URL.CurrentValue = Null polymenudetails.URL.OldValue = polymenudetails.URL.CurrentValue polymenudetails.Parent_id.CurrentValue = Null polymenudetails.Parent_id.OldValue = polymenudetails.Parent_id.CurrentValue polymenudetails.Sequence.CurrentValue = Null polymenudetails.Sequence.OldValue = polymenudetails.Sequence.CurrentValue End Sub ' ' Load form values ' Sub LoadFormValues() ' Load values from form If Not polymenudetails.zMenu.FldIsDetailKey Then polymenudetails.zMenu.FormValue = ObjForm.GetValue("x_zMenu") If Not polymenudetails.URL.FldIsDetailKey Then polymenudetails.URL.FormValue = ObjForm.GetValue("x_URL") If Not polymenudetails.Parent_id.FldIsDetailKey Then polymenudetails.Parent_id.FormValue = ObjForm.GetValue("x_Parent_id") If Not polymenudetails.Sequence.FldIsDetailKey Then polymenudetails.Sequence.FormValue = ObjForm.GetValue("x_Sequence") End Sub ' ' Restore form values ' Sub RestoreFormValues() polymenudetails.zMenu.CurrentValue = polymenudetails.zMenu.FormValue polymenudetails.URL.CurrentValue = polymenudetails.URL.FormValue polymenudetails.Parent_id.CurrentValue = polymenudetails.Parent_id.FormValue polymenudetails.Sequence.CurrentValue = polymenudetails.Sequence.FormValue End Sub ' ' Load row based on key values ' Function LoadRow() Dim RsRow, sSql, sFilter sFilter = polymenudetails.KeyFilter ' Call Row Selecting event Call polymenudetails.Row_Selecting(sFilter) ' Load SQL based on filter polymenudetails.CurrentFilter = sFilter sSql = polymenudetails.SQL Call ew_SetDebugMsg("LoadRow: " & sSql) ' Show SQL for debugging Set RsRow = ew_LoadRowByDbid(sSql, polymenudetails.TableDBID) If RsRow.EOF Then LoadRow = False Else LoadRow = True RsRow.MoveFirst Call LoadRowValues(RsRow) ' Load row values End If RsRow.Close Set RsRow = Nothing End Function ' ' Load row values from recordset ' Sub LoadRowValues(RsRow) Dim sDetailFilter If Not EW_DEBUG_ENABLED Then On Error Resume Next If IsNull(RsRow) Then Set RsRow = NewRow() End If ' Call Row Selected event Call polymenudetails.Row_Selected(RsRow) If ew_Empty(RsRow) Then Exit Sub If RsRow.EOF Then Exit Sub polymenudetails.ID.DbValue = RsRow("ID") polymenudetails.zMenu.DbValue = RsRow("Menu") polymenudetails.URL.DbValue = RsRow("URL") polymenudetails.Parent_id.DbValue = RsRow("Parent_id") polymenudetails.Sequence.DbValue = RsRow("Sequence") End Sub ' Return a row with default values Function NewRow Call LoadDefaultValues Dim cnn, rs, sSql, sFilter ' Clear any previous errors Err.Clear Set cnn = polymenudetails.TableConnection sFilter = polymenudetails.CurrentFilter polymenudetails.CurrentFilter = "(0 = 1)" sSql = polymenudetails.SQL polymenudetails.CurrentFilter = sFilter Set rs = Server.CreateObject("ADODB.Recordset") rs.CursorLocation = 3 ' adUseClient Call ew_SetDebugMsg("NewRow: " & sSql) ' Show SQL for debugging rs.Open sSql, cnn, 3, 4 ' adOpenStatic, adLockBatchOptimistic ' Disconnect the Recordset Set rs.ActiveConnection = Nothing ' Add new record rs.AddNew rs("Menu") = polymenudetails.zMenu.CurrentValue rs("URL") = polymenudetails.URL.CurrentValue rs("Parent_id") = polymenudetails.Parent_id.CurrentValue rs("Sequence") = polymenudetails.Sequence.CurrentValue ' Return the recordset If Err.Number = 0 Then Set NewRow = rs Else Set NewRow = Nothing End If End Function ' Load DbValue from recordset Sub LoadDbValues(Rs) If Not EW_DEBUG_ENABLED Then On Error Resume Next If ew_Empty(Rs) Then Exit Sub If Rs.EOF Then Exit Sub polymenudetails.ID.m_DbValue = Rs("ID") polymenudetails.zMenu.m_DbValue = Rs("Menu") polymenudetails.URL.m_DbValue = Rs("URL") polymenudetails.Parent_id.m_DbValue = Rs("Parent_id") polymenudetails.Sequence.m_DbValue = Rs("Sequence") End Sub ' Load old record Function LoadOldRecord() ' Load key values from Session Dim bValidKey bValidKey = True If polymenudetails.GetKey("ID")&"" <> "" Then polymenudetails.ID.CurrentValue = polymenudetails.GetKey("ID") ' ID Else bValidKey = False End If ' Load old record OldRecordset = Null If bValidKey Then polymenudetails.CurrentFilter = polymenudetails.KeyFilter Dim sSql sSql = polymenudetails.SQL Set OldRecordset = ew_LoadRecordsetByDbid(sSql, polymenudetails.TableDBID) End If Call LoadRowValues(OldRecordset) ' Load row values LoadOldRecord = bValidKey End Function ' ' Render row values based on field settings ' Sub RenderRow() ' Initialize URLs ' Call Row Rendering event Call polymenudetails.Row_Rendering ' ' Common render codes for all row types ' ' ID ' Menu ' URL ' Parent_id ' Sequence ' ' View Row ' If polymenudetails.RowType = EW_ROWTYPE_VIEW Then ' View row ' ID polymenudetails.ID.ViewValue = polymenudetails.ID.CurrentValue polymenudetails.ID.ViewCustomAttributes = "" ' Menu polymenudetails.zMenu.ViewValue = polymenudetails.zMenu.CurrentValue polymenudetails.zMenu.ViewCustomAttributes = "" ' URL polymenudetails.URL.ViewValue = polymenudetails.URL.CurrentValue polymenudetails.URL.ViewCustomAttributes = "" ' Parent_id polymenudetails.Parent_id.ViewValue = polymenudetails.Parent_id.CurrentValue polymenudetails.Parent_id.ViewCustomAttributes = "" ' Sequence polymenudetails.Sequence.ViewValue = polymenudetails.Sequence.CurrentValue polymenudetails.Sequence.ViewCustomAttributes = "" ' View refer script ' Menu polymenudetails.zMenu.LinkCustomAttributes = "" polymenudetails.zMenu.HrefValue = "" polymenudetails.zMenu.TooltipValue = "" ' URL polymenudetails.URL.LinkCustomAttributes = "" polymenudetails.URL.HrefValue = "" polymenudetails.URL.TooltipValue = "" ' Parent_id polymenudetails.Parent_id.LinkCustomAttributes = "" polymenudetails.Parent_id.HrefValue = "" polymenudetails.Parent_id.TooltipValue = "" ' Sequence polymenudetails.Sequence.LinkCustomAttributes = "" polymenudetails.Sequence.HrefValue = "" polymenudetails.Sequence.TooltipValue = "" ' ' Add Row ' ElseIf polymenudetails.RowType = EW_ROWTYPE_ADD Then ' Add row ' Menu Call polymenudetails.zMenu.EditAttrs.UpdateAttribute("class", "form-control") polymenudetails.zMenu.EditCustomAttributes = "" polymenudetails.zMenu.EditValue = ew_HtmlEncode(polymenudetails.zMenu.CurrentValue) polymenudetails.zMenu.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(polymenudetails.zMenu.FldCaption)) ' URL Call polymenudetails.URL.EditAttrs.UpdateAttribute("class", "form-control") polymenudetails.URL.EditCustomAttributes = "" polymenudetails.URL.EditValue = ew_HtmlEncode(polymenudetails.URL.CurrentValue) polymenudetails.URL.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(polymenudetails.URL.FldCaption)) ' Parent_id Call polymenudetails.Parent_id.EditAttrs.UpdateAttribute("class", "form-control") polymenudetails.Parent_id.EditCustomAttributes = "" polymenudetails.Parent_id.EditValue = ew_HtmlEncode(polymenudetails.Parent_id.CurrentValue) polymenudetails.Parent_id.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(polymenudetails.Parent_id.FldCaption)) ' Sequence Call polymenudetails.Sequence.EditAttrs.UpdateAttribute("class", "form-control") polymenudetails.Sequence.EditCustomAttributes = "" polymenudetails.Sequence.EditValue = ew_HtmlEncode(polymenudetails.Sequence.CurrentValue) polymenudetails.Sequence.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(polymenudetails.Sequence.FldCaption)) ' Add refer script ' Menu polymenudetails.zMenu.LinkCustomAttributes = "" polymenudetails.zMenu.HrefValue = "" ' URL polymenudetails.URL.LinkCustomAttributes = "" polymenudetails.URL.HrefValue = "" ' Parent_id polymenudetails.Parent_id.LinkCustomAttributes = "" polymenudetails.Parent_id.HrefValue = "" ' Sequence polymenudetails.Sequence.LinkCustomAttributes = "" polymenudetails.Sequence.HrefValue = "" End If If polymenudetails.RowType = EW_ROWTYPE_ADD Or polymenudetails.RowType = EW_ROWTYPE_EDIT Or polymenudetails.RowType = EW_ROWTYPE_SEARCH Then ' Add/Edit/Search row Call polymenudetails.SetupFieldTitles End If ' Call Row Rendered event If polymenudetails.RowType <> EW_ROWTYPE_AGGREGATEINIT Then Call polymenudetails.Row_Rendered End If End Sub ' ' Validate form ' Function ValidateForm() ' Initialize gsFormError = "" ' Check if validation required If Not EW_SERVER_VALIDATE Then ValidateForm = (gsFormError = "") Exit Function End If If Not polymenudetails.zMenu.FldIsDetailKey And Not IsNull(polymenudetails.zMenu.FormValue) And polymenudetails.zMenu.FormValue&"" = "" Then Call ew_AddMessage(gsFormError, Replace(polymenudetails.zMenu.ReqErrMsg, "%s", polymenudetails.zMenu.FldCaption)) End If If Not ew_CheckInteger(polymenudetails.Parent_id.FormValue) Then Call ew_AddMessage(gsFormError, polymenudetails.Parent_id.FldErrMsg) End If If Not ew_CheckInteger(polymenudetails.Sequence.FormValue) Then Call ew_AddMessage(gsFormError, polymenudetails.Sequence.FldErrMsg) End If ' Return validate result ValidateForm = (gsFormError = "") ' Call Form Custom Validate event Dim sFormCustomError sFormCustomError = "" ValidateForm = ValidateForm And Form_CustomValidate(sFormCustomError) If sFormCustomError <> "" Then Call ew_AddMessage(gsFormError, sFormCustomError) End If End Function ' ' Add record ' Function AddRow(RsOld) If Not EW_DEBUG_ENABLED Then On Error Resume Next Dim cnn, Rs, sSql, sFilter Dim RsNew Dim bInsertRow Dim RsChk Dim sIdxErrMsg ' Clear any previous errors Err.Clear Dim RsMaster, sMasterUserIdMsg, sMasterFilter, bCheckMasterRecord, bValidMasterKey Set cnn = polymenudetails.TableConnection ' Load db values from rsold Call LoadDbValues(RsOld) If Not IsNull(RsOld) Then End If ' Add new record sFilter = "(0 = 1)" polymenudetails.CurrentFilter = sFilter sSql = polymenudetails.UpdateTableSQL Set Rs = Server.CreateObject("ADODB.Recordset") Rs.CursorLocation = polymenudetails.TableCursorLocation Call ew_SetDebugMsg("AddRow: " & sSql) ' Show SQL for debugging Rs.Open sSql, cnn, 1, polymenudetails.TableRecordsetLockType Rs.AddNew If Err.Number <> 0 Then Message = Err.Description Rs.Close Set Rs = Nothing AddRow = False Exit Function End If ' Field Menu Call polymenudetails.zMenu.SetDbValue(Rs, polymenudetails.zMenu.CurrentValue, Null, False) ' Field URL Call polymenudetails.URL.SetDbValue(Rs, polymenudetails.URL.CurrentValue, Null, False) ' Field Parent_id Call polymenudetails.Parent_id.SetDbValue(Rs, polymenudetails.Parent_id.CurrentValue, Null, False) ' Field Sequence Call polymenudetails.Sequence.SetDbValue(Rs, polymenudetails.Sequence.CurrentValue, Null, False) ' Check recordset update error If Err.Number <> 0 Then FailureMessage = Err.Description Rs.Close Set Rs = Nothing AddRow = False Exit Function End If ' Call Row Inserting event bInsertRow = polymenudetails.Row_Inserting(RsOld, Rs) If bInsertRow Then ' Clone new recordset object Set RsNew = ew_CloneRs(Rs) Call ew_SetDebugMsg("Insert: " & ew_HtmlEncode(ew_RecordToJson(RsNew))) ' Show data for debugging Rs.Update If Err.Number <> 0 Then FailureMessage = Err.Description AddRow = False Else AddRow = True End If If AddRow Then polymenudetails.ID.DbValue = RsNew("ID") ' Get insert id if necessary End If Else Rs.CancelUpdate ' Set up error message If SuccessMessage <> "" Or FailureMessage <> "" Then ' Use the message, do nothing ElseIf polymenudetails.CancelMessage <> "" Then FailureMessage = polymenudetails.CancelMessage polymenudetails.CancelMessage = "" Else FailureMessage = Language.Phrase("InsertCancelled") End If AddRow = False End If Rs.Close Set Rs = Nothing If AddRow Then ' Call Row Inserted event Call polymenudetails.Row_Inserted(RsOld, RsNew) End If If ew_NotEmpty(RsNew) Then RsNew.Close Set RsNew = Nothing End If End Function ' Set up Breadcrumb Sub SetupBreadcrumb() Dim PageId, url Set Breadcrumb = New cBreadcrumb url = Mid(ew_CurrentUrl(), InStrRev(ew_CurrentUrl(), "/") + 1) Call Breadcrumb.Add("list", polymenudetails.TableVar, polymenudetails.AddMasterUrl("polymenudetailslist.asp"), "", polymenudetails.TableVar, True) PageId = ew_IIf(polymenudetails.CurrentAction = "C", "Copy", "Add") Call Breadcrumb.Add("add", PageId, url, "", "", False) End Sub ' Setup lookup filters of a field Sub SetupLookupFilters(fld, pageId) pageId = ew_IIf(ew_EmptyStr(pageId), polymenudetails_add.PageID, pageId) Select Case fld.FldVar End Select End Sub ' Setup AutoSuggest filters of a field Sub SetupAutoSuggestFilters(fld, pageId) pageId = ew_IIF(ew_EmptyStr(pageId), polymenudetails_add.PageID, pageId) Select Case fld.FldVar End Select End Sub ' Page Load event Sub Page_Load() 'Response.Write "Page Load" End Sub ' Page Unload event Sub Page_Unload() 'Response.Write "Page Unload" End Sub ' Page Redirecting event Sub Page_Redirecting(url) 'url = newurl End Sub ' Message Showing event ' typ = ""|"success"|"failure"|"warning" Sub Message_Showing(msg, typ) ' Example: 'If typ = "success" Then ' msg = "your success message" 'ElseIf typ = "failure" Then ' msg = "your failure message" 'ElseIf typ = "warning" Then ' msg = "your warning message" 'Else ' msg = "your message" 'End If End Sub ' Page Render event Sub Page_Render() 'Response.Write "Page Render" End Sub ' Page Data Rendering event Sub Page_DataRendering(header) ' Example: 'header = "your header" End Sub ' Page Data Rendered event Sub Page_DataRendered(footer) ' Example: 'footer = "your footer" End Sub ' Form Custom Validate event Function Form_CustomValidate(CustomError) 'Return error message in CustomError Form_CustomValidate = True End Function End Class %>