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/Facilitiesedit.asp
<%@ CodePage="65001" %>
<%
Response.Buffer = EW_RESPONSE_BUFFER
%>
<!--#include file="ewcfg.asp"-->
<!--#include file="Facilitiesinfo.asp"-->
<!--#include file="aspfn.asp"-->
<!--#include file="userfn.asp"-->
<% Call ew_Header(False, EW_CHARSET, False) %>
<%

' Define page object
Dim Facilities_edit
Set Facilities_edit = New cFacilities_edit
Set Page = Facilities_edit

' Page init processing
Call Facilities_edit.Page_Init

' Page main
Call Facilities_edit.Page_Main

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

' Page Render event
Facilities_edit.Page_Render()
%>
<!--#include file="header.asp"-->
<script type="text/javascript">
// Form object
var CurrentPageID = EW_PAGE_ID = "edit";
var CurrentForm = fFacilitiesedit = new ew_Form("fFacilitiesedit", "edit");
// Validate form
fFacilitiesedit.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(Facilities.Page_Name.ReqErrMsg, "%s", Facilities.Page_Name.FldCaption)) %>");
			elm = this.GetElements("x" + infix + "_Description");
			if (elm && !ew_IsHidden(elm) && !ew_HasValue(elm))
				return this.OnError(elm, "<%= ew_JsEncode2(Replace(Facilities.Description.ReqErrMsg, "%s", Facilities.Description.FldCaption)) %>");
			elm = this.GetElements("x" + infix + "_Enable");
			if (elm && !ew_IsHidden(elm) && !ew_HasValue(elm))
				return this.OnError(elm, "<%= ew_JsEncode2(Replace(Facilities.Enable.ReqErrMsg, "%s", Facilities.Enable.FldCaption)) %>");
			elm = this.GetElements("x" + infix + "_Sequence");
			if (elm && !ew_CheckInteger(elm.value))
				return this.OnError(elm, "<%= ew_JsEncode2(Facilities.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
fFacilitiesedit.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 %>
fFacilitiesedit.ValidateRequired = true; // Use JavaScript validation
<% Else %>
fFacilitiesedit.ValidateRequired = false; // No JavaScript validation
<% End If %>
// Dynamic selection lists
fFacilitiesedit.Lists["x_Enable"] = {"LinkField":"","Ajax":null,"AutoFill":false,"DisplayFields":["","","",""],"ParentFields":[],"ChildFields":[],"FilterFields":[],"Options":[],"Template":""};
fFacilitiesedit.Lists["x_Enable"].Options = <%= ew_ArrayToJson(Facilities.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 Facilities_edit.ShowPageHeader %>
<% Call Facilities_edit.ShowMessage %>
<form name="fFacilitiesedit" id="fFacilitiesedit" class="<%= Facilities_edit.FormClassName %>" action="<%= ew_CurrentPage %>" method="post">
<% If Facilities_edit.CheckToken Then %>
<input type="hidden" name="<%= EW_TOKEN_NAME %>" value="<%= Facilities_edit.Token %>">
<% End If %>
<input type="hidden" name="a_table" id="a_table" value="Facilities">
<input type="hidden" name="a_edit" id="a_edit" value="U">
<input type="hidden" name="modal" value="<%= ew_IIf(Facilities_edit.IsModal, "1", "0") %>">
<div class="ewEditDiv"><!-- page* -->
<% If Facilities.ID.Visible Then ' ID %>
	<div id="r_ID" class="form-group">
		<label id="elh_Facilities_ID" class="<%= Facilities.LeftColumnClass %>"><%= Facilities.ID.FldCaption %></label>
		<div class="<%= Facilities.RightColumnClass %>"><div<%= Facilities.ID.CellAttributes %>>
<span id="el_Facilities_ID">
<span<%= Facilities.ID.ViewAttributes %>>
<p class="form-control-static"><%= Facilities.ID.EditValue %></p>
</span>
</span>
<input type="hidden" data-table="Facilities" data-field="x_ID" name="x_ID" id="x_ID" value="<%= ew_HtmlEncode(Facilities.ID.CurrentValue&"") %>">
<%= Facilities.ID.CustomMsg %></div></div>
	</div>
<% End If %>
<% If Facilities.Page_Name.Visible Then ' Page_Name %>
	<div id="r_Page_Name" class="form-group">
		<label id="elh_Facilities_Page_Name" for="x_Page_Name" class="<%= Facilities.LeftColumnClass %>"><%= Facilities.Page_Name.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label>
		<div class="<%= Facilities.RightColumnClass %>"><div<%= Facilities.Page_Name.CellAttributes %>>
<span id="el_Facilities_Page_Name">
<input type="text" data-table="Facilities" data-field="x_Page_Name" name="x_Page_Name" id="x_Page_Name" size="30" maxlength="255" placeholder="<%= Facilities.Page_Name.PlaceHolder %>" value="<%= Facilities.Page_Name.EditValue %>"<%= Facilities.Page_Name.EditAttributes %>>
</span>
<%= Facilities.Page_Name.CustomMsg %></div></div>
	</div>
<% End If %>
<% If Facilities.Title.Visible Then ' Title %>
	<div id="r_Title" class="form-group">
		<label id="elh_Facilities_Title" for="x_Title" class="<%= Facilities.LeftColumnClass %>"><%= Facilities.Title.FldCaption %></label>
		<div class="<%= Facilities.RightColumnClass %>"><div<%= Facilities.Title.CellAttributes %>>
<span id="el_Facilities_Title">
<input type="text" data-table="Facilities" data-field="x_Title" name="x_Title" id="x_Title" size="30" maxlength="255" placeholder="<%= Facilities.Title.PlaceHolder %>" value="<%= Facilities.Title.EditValue %>"<%= Facilities.Title.EditAttributes %>>
</span>
<%= Facilities.Title.CustomMsg %></div></div>
	</div>
<% End If %>
<% If Facilities.Description.Visible Then ' Description %>
	<div id="r_Description" class="form-group">
		<label id="elh_Facilities_Description" for="x_Description" class="<%= Facilities.LeftColumnClass %>"><%= Facilities.Description.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label>
		<div class="<%= Facilities.RightColumnClass %>"><div<%= Facilities.Description.CellAttributes %>>
<span id="el_Facilities_Description">
<textarea data-table="Facilities" data-field="x_Description" name="x_Description" id="x_Description" cols="35" rows="4" placeholder="<%= Facilities.Description.PlaceHolder %>"<%= Facilities.Description.EditAttributes %>><%= Facilities.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>
<%= Facilities.Description.CustomMsg %></div></div>
	</div>
<% End If %>
<% If Facilities.Enable.Visible Then ' Enable %>
	<div id="r_Enable" class="form-group">
		<label id="elh_Facilities_Enable" class="<%= Facilities.LeftColumnClass %>"><%= Facilities.Enable.FldCaption %><%= Language.Phrase("FieldRequiredIndicator") %></label>
		<div class="<%= Facilities.RightColumnClass %>"><div<%= Facilities.Enable.CellAttributes %>>
<span id="el_Facilities_Enable">
<div id="tp_x_Enable" class="ewTemplate"><input type="radio" data-table="Facilities" data-field="x_Enable" data-value-separator="<%= Facilities.Enable.DisplayValueSeparatorAttribute %>" name="x_Enable" id="x_Enable" value="{value}"<%= Facilities.Enable.EditAttributes %>></div>
<div id="dsl_x_Enable" data-repeatcolumn="5" class="ewItemList" style="display: none;"><div>
<%= Facilities.Enable.RadioButtonListHtml(False, "x_Enable", -1, Facilities) %>
</div></div>
</span>
<%= Facilities.Enable.CustomMsg %></div></div>
	</div>
<% End If %>
<% If Facilities.Sequence.Visible Then ' Sequence %>
	<div id="r_Sequence" class="form-group">
		<label id="elh_Facilities_Sequence" for="x_Sequence" class="<%= Facilities.LeftColumnClass %>"><%= Facilities.Sequence.FldCaption %></label>
		<div class="<%= Facilities.RightColumnClass %>"><div<%= Facilities.Sequence.CellAttributes %>>
<span id="el_Facilities_Sequence">
<input type="text" data-table="Facilities" data-field="x_Sequence" name="x_Sequence" id="x_Sequence" size="30" placeholder="<%= Facilities.Sequence.PlaceHolder %>" value="<%= Facilities.Sequence.EditValue %>"<%= Facilities.Sequence.EditAttributes %>>
</span>
<%= Facilities.Sequence.CustomMsg %></div></div>
	</div>
<% End If %>
</div><!-- /page* -->
<% If Not Facilities_edit.IsModal Then %>
<div class="form-group"><!-- buttons .form-group -->
	<div class="<%= Facilities.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="<%= Facilities.ReturnUrl %>"><%= Language.Phrase("CancelBtn") %></button>
	</div><!-- /buttons offset -->
</div><!-- /buttons .form-group -->
<% End If %>
</form>
<script type="text/javascript">
fFacilitiesedit.Init();
</script>
<%
Call Facilities_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 Facilities_edit.Page_Terminate("")
Set Facilities_edit = Nothing
%>
<%

'
' Page Class
'
Class cFacilities_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 = "Facilities"
	End Property

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

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

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

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

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

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

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

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

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

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

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

		' 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 = "Facilities"

		' Debug message
		Call ew_LoadDebugMsg

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

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

		' 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 = Facilities.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(Facilities) Then
			If Facilities.Export <> "" And Request.Form("data").Count > 0 Then
				Dim sContent
				sContent = Request.Form("data")
				gsExportFile = Request.Form("filename")
				If gsExportFile = "" Then gsExportFile = Facilities.TableVar
				If Facilities.Export = "pdf" Then
					Call ExportPdf(sContent)
				ElseIf Facilities.Export = "email" Then
					Response.Write ExportEmail(sContent)
				ElseIf Facilities.Export = "excel" Then
					Call ExportExcel(sContent)
				ElseIf Facilities.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 <> Facilities.ListUrl Then ' Not List page
						Call row.Add("caption", Facilities.GetModalCaption(pageName))
						If pageName = "Facilitiesview.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 Facilities = 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
			Facilities.CurrentAction = ObjForm.GetValue("a_edit")&"" ' Get action code
			If Facilities.CurrentAction <> "I" Then ' Not reload record, handle as postback
				postBack = True
			End If

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

			' Load key from QueryString
			Dim loadByQuery
			loadByQuery = False
			If Request.QueryString("ID").Count > 0 Then
				Facilities.ID.QueryStringValue = Request.QueryString("ID")
				loadByQuery = True
			Else
				Facilities.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
				Facilities.CurrentAction = "" ' Form error, reset action
				FailureMessage = gsFormError
				Facilities.EventCancelled = True ' Event cancelled
				LoadRow() ' Restore row
				Call RestoreFormValues ' Restore form values if validate failed
			End If
		End If

		' Perform current action
		Select Case Facilities.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("Facilitieslist.asp") ' No matching record, return to list
				End If
			Case "U" ' Update
				sReturnUrl = Facilities.ReturnUrl
				If ew_GetPageName(sReturnUrl) = "Facilitieslist.asp" Then
					sReturnUrl = Facilities.AddMasterUrl(sReturnUrl) ' List page, return to List page with correct master key if necessary
				End If
				Facilities.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
					Facilities.EventCancelled = True ' Event cancelled
					LoadRow() ' Restore row
					Call RestoreFormValues ' Restore form values if update failed
				End If
		End Select

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

		' Set up Breadcrumb
		Call SetupBreadcrumb

		' Render row
		Call Facilities.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)
				Facilities.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
					Facilities.StartRecordNumber = StartRec
				End If
			End If
		End If
		StartRec = Facilities.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
			Facilities.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
			Facilities.StartRecordNumber = StartRec
		ElseIf (StartRec-1) Mod DisplayRecs <> 0 Then
			StartRec = ((StartRec-1)\DisplayRecs)*DisplayRecs+1 ' Point to page boundary
			Facilities.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 Facilities.ID.FldIsDetailKey Then Facilities.ID.FormValue = ObjForm.GetValue("x_ID")
		If Not Facilities.Page_Name.FldIsDetailKey Then Facilities.Page_Name.FormValue = ObjForm.GetValue("x_Page_Name")
		If Not Facilities.Title.FldIsDetailKey Then Facilities.Title.FormValue = ObjForm.GetValue("x_Title")
		If Not Facilities.Description.FldIsDetailKey Then Facilities.Description.FormValue = ObjForm.GetValue("x_Description")
		If Not Facilities.Enable.FldIsDetailKey Then Facilities.Enable.FormValue = ObjForm.GetValue("x_Enable")
		If Not Facilities.Sequence.FldIsDetailKey Then Facilities.Sequence.FormValue = ObjForm.GetValue("x_Sequence")
		If Not Facilities.IP.FldIsDetailKey Then Facilities.IP.FormValue = ObjForm.GetValue("x_IP")
		If Not Facilities.zDate.FldIsDetailKey Then Facilities.zDate.FormValue = ObjForm.GetValue("x_zDate")
		If Not Facilities.zDate.FldIsDetailKey Then Facilities.zDate.CurrentValue = ew_UnFormatDateTime(Facilities.zDate.CurrentValue, 0)
		If Not Facilities.Username.FldIsDetailKey Then Facilities.Username.FormValue = ObjForm.GetValue("x_Username")
	End Sub

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

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

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

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

	' Load old record
	Function LoadOldRecord()

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

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

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

		If Facilities.RowType = EW_ROWTYPE_VIEW Then ' View row

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

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

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

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

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

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

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

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

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

			' View refer script
			' ID

			Facilities.ID.LinkCustomAttributes = ""
			Facilities.ID.HrefValue = ""
			Facilities.ID.TooltipValue = ""

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

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

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

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

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

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

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

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

		'
		' Edit Row
		'

		ElseIf Facilities.RowType = EW_ROWTYPE_EDIT Then ' Edit row

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

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

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

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

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

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

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

			Facilities.ID.LinkCustomAttributes = ""
			Facilities.ID.HrefValue = ""

			' Page_Name
			Facilities.Page_Name.LinkCustomAttributes = ""
			Facilities.Page_Name.HrefValue = ""

			' Title
			Facilities.Title.LinkCustomAttributes = ""
			Facilities.Title.HrefValue = ""

			' Description
			Facilities.Description.LinkCustomAttributes = ""
			Facilities.Description.HrefValue = ""

			' Enable
			Facilities.Enable.LinkCustomAttributes = ""
			Facilities.Enable.HrefValue = ""

			' Sequence
			Facilities.Sequence.LinkCustomAttributes = ""
			Facilities.Sequence.HrefValue = ""

			' IP
			Facilities.IP.LinkCustomAttributes = ""
			Facilities.IP.HrefValue = ""

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

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

		' Call Row Rendered event
		If Facilities.RowType <> EW_ROWTYPE_AGGREGATEINIT Then
			Call Facilities.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 Facilities.Page_Name.FldIsDetailKey And Not IsNull(Facilities.Page_Name.FormValue) And Facilities.Page_Name.FormValue&"" = "" Then
			Call ew_AddMessage(gsFormError, Replace(Facilities.Page_Name.ReqErrMsg, "%s", Facilities.Page_Name.FldCaption))
		End If
		If Not Facilities.Description.FldIsDetailKey And Not IsNull(Facilities.Description.FormValue) And Facilities.Description.FormValue&"" = "" Then
			Call ew_AddMessage(gsFormError, Replace(Facilities.Description.ReqErrMsg, "%s", Facilities.Description.FldCaption))
		End If
		If Facilities.Enable.FormValue&"" = "" Then
			Call ew_AddMessage(gsFormError, Replace(Facilities.Enable.ReqErrMsg, "%s", Facilities.Enable.FldCaption))
		End If
		If Not ew_CheckInteger(Facilities.Sequence.FormValue) Then
			Call ew_AddMessage(gsFormError, Facilities.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 = Facilities.KeyFilter
		Set cnn = Facilities.TableConnection
		Facilities.CurrentFilter = sFilter
		sSql = Facilities.UpdateTableSQL
		Set Rs = Server.CreateObject("ADODB.Recordset")
		Rs.CursorLocation = Facilities.TableCursorLocation
		Call ew_SetDebugMsg("EditRow: " & sSql) ' Show SQL for debugging
		Rs.Open sSql, cnn, 1, Facilities.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 Facilities.Page_Name.SetDbValue(Rs, Facilities.Page_Name.CurrentValue, Null, Facilities.Page_Name.ReadOnly)

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

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

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

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

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

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

			' Field Username
			Call Facilities.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 = Facilities.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 Facilities.CancelMessage <> "" Then
					FailureMessage = Facilities.CancelMessage
					Facilities.CancelMessage = ""
				Else
					FailureMessage = Language.Phrase("UpdateCancelled")
				End If
				EditRow = False
			End If
		End If

		' Call Row_Updated event
		If EditRow Then
			Call Facilities.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", Facilities.TableVar, Facilities.AddMasterUrl("Facilitieslist.asp"), "", Facilities.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), Facilities_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), Facilities_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