Your IP : 216.73.217.79


Current Path : /var/www/cesa.co.za/echasl23/
Upload File :
Current File : /var/www/cesa.co.za/echasl23/Booksview.php

<?php
session_start(); // Initialize Session data
ob_start(); // Turn on output buffering
?>
<?php include "ewcfg7.php" ?>
<?php include "ewmysql7.php" ?>
<?php include "phpfn7.php" ?>
<?php include "Booksinfo.php" ?>
<?php include "adminusersinfo.php" ?>
<?php include "userfn7.php" ?>
<?php
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // Always modified
header("Cache-Control: private, no-store, no-cache, must-revalidate"); // HTTP/1.1 
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); // HTTP/1.0
?>
<?php

// Create page object
$Books_view = new cBooks_view();
$Page =& $Books_view;

// Page init
$Books_view->Page_Init();

// Page main
$Books_view->Page_Main();
?>
<?php include "header.php" ?>
<?php if ($Books->Export == "") { ?>
<script type="text/javascript">
<!--

// Create page object
var Books_view = new ew_Page("Books_view");

// page properties
Books_view.PageID = "view"; // page ID
Books_view.FormID = "fBooksview"; // form ID
var EW_PAGE_ID = Books_view.PageID; // for backward compatibility

// extend page with Form_CustomValidate function
Books_view.Form_CustomValidate =  
 function(fobj) { // DO NOT CHANGE THIS LINE!

 	// Your custom validation code here, return false if invalid. 
 	return true;
 }
<?php if (EW_CLIENT_VALIDATE) { ?>
Books_view.ValidateRequired = true; // uses JavaScript validation
<?php } else { ?>
Books_view.ValidateRequired = false; // no JavaScript validation
<?php } ?>

//-->
</script>
<script language="JavaScript" type="text/javascript">
<!--

// Write your client script here, no need to add script tags.
// To include another .js script, use:
// ew_ClientScriptInclude("my_javascript.js"); 
//-->

</script>
<?php } ?>
<p><span class="phpmaker"><?php echo $Language->Phrase("View") ?>&nbsp;<?php echo $Language->Phrase("TblTypeTABLE") ?><?php echo $Books->TableCaption() ?>
<?php if ($Books->Export == "") { ?>
&nbsp;&nbsp;<a href="<?php echo $Books_view->ExportPrintUrl ?>"><img src="images/print.gif" alt="<?php echo ew_HtmlEncode($Language->Phrase("PrinterFriendly")) ?>" title="<?php echo ew_HtmlEncode($Language->Phrase("PrinterFriendly")) ?>" width="16" height="16" border="0"></a>
&nbsp;&nbsp;<a href="<?php echo $Books_view->ExportExcelUrl ?>"><img src='images/exportxls.gif' alt='<?php echo ew_HtmlEncode($Language->Phrase("ExportToExcel")) ?>' title='<?php echo ew_HtmlEncode($Language->Phrase("ExportToExcel")) ?>' width='16' height='16' border='0'></a>
&nbsp;&nbsp;<a href="<?php echo $Books_view->ExportWordUrl ?>"><img src='images/exportdoc.gif' alt='<?php echo ew_HtmlEncode($Language->Phrase("ExportToWord")) ?>' title='<?php echo ew_HtmlEncode($Language->Phrase("ExportToWord")) ?>' width='16' height='16' border='0'></a>
&nbsp;&nbsp;<a name="emf_Books" id="emf_Books" href="javascript:void(0);" onclick="ew_EmailDialogShow({lnk:'emf_Books',hdr:ewLanguage.Phrase('ExportToEmail'),key:<?php echo ew_ArrayToJsonAttr($Books_view->arRecKey) ?>,sel:false});"><img src='images/exportemail.gif' alt='<?php echo ew_HtmlEncode($Language->Phrase("ExportToEmail")) ?>' title='<?php echo ew_HtmlEncode($Language->Phrase("ExportToEmail")) ?>' width='16' height='16' border='0'></a>
<?php } ?>
<br><br>
<?php if ($Books->Export == "") { ?>
<a href="<?php echo $Books_view->ListUrl ?>"><?php echo $Language->Phrase("BackToList") ?></a>&nbsp;
<?php if ($Security->CanAdd()) { ?>
<a href="<?php echo $Books_view->AddUrl ?>"><?php echo $Language->Phrase("ViewPageAddLink") ?></a>&nbsp;
<?php } ?>
<?php if ($Security->CanEdit()) { ?>
<a href="<?php echo $Books_view->EditUrl ?>"><?php echo $Language->Phrase("ViewPageEditLink") ?></a>&nbsp;
<?php } ?>
<?php if ($Security->CanDelete()) { ?>
<a href="<?php echo $Books_view->DeleteUrl ?>"><?php echo $Language->Phrase("ViewPageDeleteLink") ?></a>&nbsp;
<?php } ?>
<?php } ?>
</span></p>
<?php
if (EW_DEBUG_ENABLED)
	echo ew_DebugMsg();
$Books_view->ShowMessage();
?>
<p>
<?php if ($Books->Export == "") { ?>
<form name="ewpagerform" id="ewpagerform" class="ewForm" action="<?php echo ew_CurrentPage() ?>">
<table border="0" cellspacing="0" cellpadding="0" class="ewPager">
	<tr>
		<td nowrap>
<?php if (!isset($Books_view->Pager)) $Books_view->Pager = new cPrevNextPager($Books_view->lStartRec, $Books_view->lDisplayRecs, $Books_view->lTotalRecs) ?>
<?php if ($Books_view->Pager->RecordCount > 0) { ?>
	<table border="0" cellspacing="0" cellpadding="0"><tr><td><span class="phpmaker"><?php echo $Language->Phrase("Page") ?>&nbsp;</span></td>
<!--first page button-->
	<?php if ($Books_view->Pager->FirstButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->FirstButton->Start ?>"><img src="images/first.gif" alt="<?php echo $Language->Phrase("PagerFirst") ?>" width="16" height="16" border="0"></a></td>
	<?php } else { ?>
	<td><img src="images/firstdisab.gif" alt="<?php echo $Language->Phrase("PagerFirst") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
<!--previous page button-->
	<?php if ($Books_view->Pager->PrevButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->PrevButton->Start ?>"><img src="images/prev.gif" alt="<?php echo $Language->Phrase("PagerPrevious") ?>" width="16" height="16" border="0"></a></td>
	<?php } else { ?>
	<td><img src="images/prevdisab.gif" alt="<?php echo $Language->Phrase("PagerPrevious") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
<!--current page number-->
	<td><input type="text" name="<?php echo EW_TABLE_PAGE_NO ?>" id="<?php echo EW_TABLE_PAGE_NO ?>" value="<?php echo $Books_view->Pager->CurrentPage ?>" size="4"></td>
<!--next page button-->
	<?php if ($Books_view->Pager->NextButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->NextButton->Start ?>"><img src="images/next.gif" alt="<?php echo $Language->Phrase("PagerNext") ?>" width="16" height="16" border="0"></a></td>	
	<?php } else { ?>
	<td><img src="images/nextdisab.gif" alt="<?php echo $Language->Phrase("PagerNext") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
<!--last page button-->
	<?php if ($Books_view->Pager->LastButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->LastButton->Start ?>"><img src="images/last.gif" alt="<?php echo $Language->Phrase("PagerLast") ?>" width="16" height="16" border="0"></a></td>	
	<?php } else { ?>
	<td><img src="images/lastdisab.gif" alt="<?php echo $Language->Phrase("PagerLast") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
	<td><span class="phpmaker">&nbsp;<?php echo $Language->Phrase("of") ?>&nbsp;<?php echo $Books_view->Pager->PageCount ?></span></td>
	</tr></table>
<?php } else { ?>
	<?php if ($Security->CanList()) { ?>
	<?php if ($Books_view->sSrchWhere == "0=101") { ?>
	<span class="phpmaker"><?php echo $Language->Phrase("EnterSearchCriteria") ?></span>
	<?php } else { ?>
	<span class="phpmaker"><?php echo $Language->Phrase("NoRecord") ?></span>
	<?php } ?>
	<?php } else { ?>
	<span class="phpmaker"><?php echo $Language->Phrase("NoPermission") ?></span>
	<?php } ?>
<?php } ?>
		</td>
	</tr>
</table>
</form>
<br>
<?php } ?>
<table cellspacing="0" class="ewGrid"><tr><td class="ewGridContent">
<div class="ewGridMiddlePanel">
<table cellspacing="0" class="ewTable">
<?php if ($Books->BookID->Visible) { // BookID ?>
	<tr<?php echo $Books->BookID->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookID->FldCaption() ?></td>
		<td<?php echo $Books->BookID->CellAttributes() ?>>
<div<?php echo $Books->BookID->ViewAttributes() ?>><?php echo $Books->BookID->ViewValue ?></div></td>
	</tr>
<?php } ?>
<?php if ($Books->BookName->Visible) { // BookName ?>
	<tr<?php echo $Books->BookName->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookName->FldCaption() ?></td>
		<td<?php echo $Books->BookName->CellAttributes() ?>>
<div<?php echo $Books->BookName->ViewAttributes() ?>><?php echo $Books->BookName->ViewValue ?></div></td>
	</tr>
<?php } ?>
<?php if ($Books->BookThumb->Visible) { // BookThumb ?>
	<tr<?php echo $Books->BookThumb->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookThumb->FldCaption() ?></td>
		<td<?php echo $Books->BookThumb->CellAttributes() ?>>
<?php if ($Books->BookThumb->HrefValue <> "" || $Books->BookThumb->TooltipValue <> "") { ?>
<?php if (!empty($Books->BookThumb->Upload->DbValue)) { ?>
<img src="<?php echo ew_UploadPathEx(FALSE, $Books->BookThumb->UploadPath) . $Books->BookThumb->Upload->DbValue ?>" border=0<?php echo $Books->BookThumb->ViewAttributes() ?>>
<?php } elseif (!in_array($Books->CurrentAction, array("I", "edit", "gridedit"))) { ?>	
&nbsp;
<?php } ?>
<?php } else { ?>
<?php if (!empty($Books->BookThumb->Upload->DbValue)) { ?>
<img src="<?php echo ew_UploadPathEx(FALSE, $Books->BookThumb->UploadPath) . $Books->BookThumb->Upload->DbValue ?>" border=0<?php echo $Books->BookThumb->ViewAttributes() ?>>
<?php } elseif (!in_array($Books->CurrentAction, array("I", "edit", "gridedit"))) { ?>	
&nbsp;
<?php } ?>
<?php } ?>
</td>
	</tr>
<?php } ?>
<?php if ($Books->BookPhoto->Visible) { // BookPhoto ?>
	<tr<?php echo $Books->BookPhoto->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookPhoto->FldCaption() ?></td>
		<td<?php echo $Books->BookPhoto->CellAttributes() ?>>
<?php if ($Books->BookPhoto->HrefValue <> "" || $Books->BookPhoto->TooltipValue <> "") { ?>
<?php if (!empty($Books->BookPhoto->Upload->DbValue)) { ?>
<img src="<?php echo ew_UploadPathEx(FALSE, $Books->BookPhoto->UploadPath) . $Books->BookPhoto->Upload->DbValue ?>" border=0<?php echo $Books->BookPhoto->ViewAttributes() ?>>
<?php } elseif (!in_array($Books->CurrentAction, array("I", "edit", "gridedit"))) { ?>	
&nbsp;
<?php } ?>
<?php } else { ?>
<?php if (!empty($Books->BookPhoto->Upload->DbValue)) { ?>
<img src="<?php echo ew_UploadPathEx(FALSE, $Books->BookPhoto->UploadPath) . $Books->BookPhoto->Upload->DbValue ?>" border=0<?php echo $Books->BookPhoto->ViewAttributes() ?>>
<?php } elseif (!in_array($Books->CurrentAction, array("I", "edit", "gridedit"))) { ?>	
&nbsp;
<?php } ?>
<?php } ?>
</td>
	</tr>
<?php } ?>
<?php if ($Books->BookCategory->Visible) { // BookCategory ?>
	<tr<?php echo $Books->BookCategory->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookCategory->FldCaption() ?></td>
		<td<?php echo $Books->BookCategory->CellAttributes() ?>>
<div<?php echo $Books->BookCategory->ViewAttributes() ?>><?php echo $Books->BookCategory->ViewValue ?></div></td>
	</tr>
<?php } ?>
<?php if ($Books->BookDescription->Visible) { // BookDescription ?>
	<tr<?php echo $Books->BookDescription->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookDescription->FldCaption() ?></td>
		<td<?php echo $Books->BookDescription->CellAttributes() ?>>
<div<?php echo $Books->BookDescription->ViewAttributes() ?>><?php echo $Books->BookDescription->ViewValue ?></div></td>
	</tr>
<?php } ?>
<?php if ($Books->BookPrice->Visible) { // BookPrice ?>
	<tr<?php echo $Books->BookPrice->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->BookPrice->FldCaption() ?></td>
		<td<?php echo $Books->BookPrice->CellAttributes() ?>>
<div<?php echo $Books->BookPrice->ViewAttributes() ?>><?php echo $Books->BookPrice->ViewValue ?></div></td>
	</tr>
<?php } ?>
<?php if ($Books->StockCode->Visible) { // StockCode ?>
	<tr<?php echo $Books->StockCode->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->StockCode->FldCaption() ?></td>
		<td<?php echo $Books->StockCode->CellAttributes() ?>>
<div<?php echo $Books->StockCode->ViewAttributes() ?>><?php echo $Books->StockCode->ViewValue ?></div></td>
	</tr>
<?php } ?>
<?php if ($Books->ISBN->Visible) { // ISBN ?>
	<tr<?php echo $Books->ISBN->RowAttributes ?>>
		<td class="ewTableHeader"><?php echo $Books->ISBN->FldCaption() ?></td>
		<td<?php echo $Books->ISBN->CellAttributes() ?>>
<div<?php echo $Books->ISBN->ViewAttributes() ?>><?php echo $Books->ISBN->ViewValue ?></div></td>
	</tr>
<?php } ?>
</table>
</div>
</td></tr></table>
<?php if ($Books->Export == "") { ?>
<br>
<form name="ewpagerform" id="ewpagerform" class="ewForm" action="<?php echo ew_CurrentPage() ?>">
<table border="0" cellspacing="0" cellpadding="0" class="ewPager">
	<tr>
		<td nowrap>
<?php if (!isset($Books_view->Pager)) $Books_view->Pager = new cPrevNextPager($Books_view->lStartRec, $Books_view->lDisplayRecs, $Books_view->lTotalRecs) ?>
<?php if ($Books_view->Pager->RecordCount > 0) { ?>
	<table border="0" cellspacing="0" cellpadding="0"><tr><td><span class="phpmaker"><?php echo $Language->Phrase("Page") ?>&nbsp;</span></td>
<!--first page button-->
	<?php if ($Books_view->Pager->FirstButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->FirstButton->Start ?>"><img src="images/first.gif" alt="<?php echo $Language->Phrase("PagerFirst") ?>" width="16" height="16" border="0"></a></td>
	<?php } else { ?>
	<td><img src="images/firstdisab.gif" alt="<?php echo $Language->Phrase("PagerFirst") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
<!--previous page button-->
	<?php if ($Books_view->Pager->PrevButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->PrevButton->Start ?>"><img src="images/prev.gif" alt="<?php echo $Language->Phrase("PagerPrevious") ?>" width="16" height="16" border="0"></a></td>
	<?php } else { ?>
	<td><img src="images/prevdisab.gif" alt="<?php echo $Language->Phrase("PagerPrevious") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
<!--current page number-->
	<td><input type="text" name="<?php echo EW_TABLE_PAGE_NO ?>" id="<?php echo EW_TABLE_PAGE_NO ?>" value="<?php echo $Books_view->Pager->CurrentPage ?>" size="4"></td>
<!--next page button-->
	<?php if ($Books_view->Pager->NextButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->NextButton->Start ?>"><img src="images/next.gif" alt="<?php echo $Language->Phrase("PagerNext") ?>" width="16" height="16" border="0"></a></td>	
	<?php } else { ?>
	<td><img src="images/nextdisab.gif" alt="<?php echo $Language->Phrase("PagerNext") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
<!--last page button-->
	<?php if ($Books_view->Pager->LastButton->Enabled) { ?>
	<td><a href="<?php echo $Books_view->PageUrl() ?>start=<?php echo $Books_view->Pager->LastButton->Start ?>"><img src="images/last.gif" alt="<?php echo $Language->Phrase("PagerLast") ?>" width="16" height="16" border="0"></a></td>	
	<?php } else { ?>
	<td><img src="images/lastdisab.gif" alt="<?php echo $Language->Phrase("PagerLast") ?>" width="16" height="16" border="0"></td>
	<?php } ?>
	<td><span class="phpmaker">&nbsp;<?php echo $Language->Phrase("of") ?>&nbsp;<?php echo $Books_view->Pager->PageCount ?></span></td>
	</tr></table>
<?php } else { ?>
	<?php if ($Security->CanList()) { ?>
	<?php if ($Books_view->sSrchWhere == "0=101") { ?>
	<span class="phpmaker"><?php echo $Language->Phrase("EnterSearchCriteria") ?></span>
	<?php } else { ?>
	<span class="phpmaker"><?php echo $Language->Phrase("NoRecord") ?></span>
	<?php } ?>
	<?php } else { ?>
	<span class="phpmaker"><?php echo $Language->Phrase("NoPermission") ?></span>
	<?php } ?>
<?php } ?>
		</td>
	</tr>
</table>
</form>
<?php } ?>
<p>
<?php if ($Books->Export == "") { ?>
<script language="JavaScript" type="text/javascript">
<!--

// Write your table-specific startup script here
// document.write("page loaded");
//-->

</script>
<?php } ?>
<?php include "footer.php" ?>
<?php
$Books_view->Page_Terminate();
?>
<?php

//
// Page class
//
class cBooks_view {

	// Page ID
	var $PageID = 'view';

	// Table name
	var $TableName = 'Books';

	// Page object name
	var $PageObjName = 'Books_view';

	// Page name
	function PageName() {
		return ew_CurrentPage();
	}

	// Page URL
	function PageUrl() {
		$PageUrl = ew_CurrentPage() . "?";
		global $Books;
		if ($Books->UseTokenInUrl) $PageUrl .= "t=" . $Books->TableVar . "&"; // Add page token
		return $PageUrl;
	}

	// Page URLs
	var $AddUrl;
	var $EditUrl;
	var $CopyUrl;
	var $DeleteUrl;
	var $ViewUrl;
	var $ListUrl;

	// Export URLs
	var $ExportPrintUrl;
	var $ExportHtmlUrl;
	var $ExportExcelUrl;
	var $ExportWordUrl;
	var $ExportXmlUrl;
	var $ExportCsvUrl;

	// Update URLs
	var $InlineAddUrl;
	var $InlineCopyUrl;
	var $InlineEditUrl;
	var $GridAddUrl;
	var $GridEditUrl;
	var $MultiDeleteUrl;
	var $MultiUpdateUrl;

	// Message
	function getMessage() {
		return @$_SESSION[EW_SESSION_MESSAGE];
	}

	function setMessage($v) {
		if (@$_SESSION[EW_SESSION_MESSAGE] <> "") { // Append
			$_SESSION[EW_SESSION_MESSAGE] .= "<br>" . $v;
		} else {
			$_SESSION[EW_SESSION_MESSAGE] = $v;
		}
	}

	// Show message
	function ShowMessage() {
		$sMessage = $this->getMessage();
		$this->Message_Showing($sMessage);
		if ($sMessage <> "") { // Message in Session, display
			echo "<p><span class=\"ewMessage\">" . $sMessage . "</span></p>";
			$_SESSION[EW_SESSION_MESSAGE] = ""; // Clear message in Session
		}
	}

	// Validate page request
	function IsPageRequest() {
		global $objForm, $Books;
		if ($Books->UseTokenInUrl) {
			if ($objForm)
				return ($Books->TableVar == $objForm->GetValue("t"));
			if (@$_GET["t"] <> "")
				return ($Books->TableVar == $_GET["t"]);
		} else {
			return TRUE;
		}
	}

	//
	// Page class constructor
	//
	function __construct() {
		global $conn, $Language;

		// Language object
		$Language = new cLanguage();

		// Table object (Books)
		$GLOBALS["Books"] = new cBooks();

		// Table object (adminusers)
		$GLOBALS['adminusers'] = new cadminusers();

		// Page ID
		if (!defined("EW_PAGE_ID"))
			define("EW_PAGE_ID", 'view', TRUE);

		// Table name (for backward compatibility)
		if (!defined("EW_TABLE_NAME"))
			define("EW_TABLE_NAME", 'Books', TRUE);

		// Start timer
		$GLOBALS["gsTimer"] = new cTimer();

		// Open connection
		$conn = ew_Connect();
	}

	// 
	//  Page_Init
	//
	function Page_Init() {
		global $gsExport, $gsExportFile, $UserProfile, $Language, $Security, $objForm;
		global $Books;

		// Security
		$Security = new cAdvancedSecurity();
		if (!$Security->IsLoggedIn()) $Security->AutoLogin();
		if (!$Security->IsLoggedIn()) {
			$Security->SaveLastUrl();
			$this->Page_Terminate("login.php");
		}
		$Security->TablePermission_Loading();
		$Security->LoadCurrentUserLevel($this->TableName);
		$Security->TablePermission_Loaded();
		if (!$Security->IsLoggedIn()) {
			$Security->SaveLastUrl();
			$this->Page_Terminate("login.php");
		}
		if (!$Security->CanView()) {
			$Security->SaveLastUrl();
			$this->Page_Terminate("Bookslist.php");
		}
		$Security->UserID_Loading();
		if ($Security->IsLoggedIn()) $Security->LoadUserID();
		$Security->UserID_Loaded();

		// Get export parameters
		if (@$_GET["export"] <> "") {
			$Books->Export = $_GET["export"];
		} elseif (ew_IsHttpPost()) {
			if (@$_POST["exporttype"] <> "")
				$Books->Export = $_POST["exporttype"];
		} else {
			$Books->setExportReturnUrl(ew_CurrentUrl());
		}
		$gsExport = $Books->Export; // Get export parameter, used in header
		$gsExportFile = $Books->TableVar; // Get export file, used in header
		if (@$_GET["BookID"] <> "") {
			if ($gsExportFile <> "") $gsExportFile .= "_";
			$gsExportFile .= ew_StripSlashes($_GET["BookID"]);
		}
		if ($Books->Export == "excel") {
			header('Content-Type: application/vnd.ms-excel');
			header('Content-Disposition: attachment; filename=' . $gsExportFile .'.xls');
		}
		if ($Books->Export == "word") {
			header('Content-Type: application/vnd.ms-word');
			header('Content-Disposition: attachment; filename=' . $gsExportFile .'.doc');
		}

		// Global Page Loading event (in userfn*.php)
		Page_Loading();

		// Page Load event
		$this->Page_Load();
	}

	//
	// Page_Terminate
	//
	function Page_Terminate($url = "") {
		global $conn;

		// Page Unload event
		$this->Page_Unload();

		// Global Page Unloaded event (in userfn*.php)
		Page_Unloaded();

		 // Close connection
		$conn->Close();

		// Go to URL if specified
		$this->Page_Redirecting($url);
		if ($url <> "") {
			if (!EW_DEBUG_ENABLED && ob_get_length())
				ob_end_clean();
			header("Location: " . $url);
		}
		exit();
	}
	var $lDisplayRecs = 1;
	var $lStartRec;
	var $lStopRec;
	var $lTotalRecs = 0;
	var $lRecRange = 10;
	var $lRecCnt;
	var $arRecKey = array();

	//
	// Page main
	//
	function Page_Main() {
		global $Language, $Books;

		// Load current record
		$bLoadCurrentRecord = FALSE;
		$sReturnUrl = "";
		$bMatchRecord = FALSE;
		if ($this->IsPageRequest()) { // Validate request
			if (@$_GET["BookID"] <> "") {
				$Books->BookID->setQueryStringValue($_GET["BookID"]);
				$this->arRecKey["BookID"] = $Books->BookID->QueryStringValue;
			} else {
				$bLoadCurrentRecord = TRUE;
			}

			// Get action
			$Books->CurrentAction = "I"; // Display form
			switch ($Books->CurrentAction) {
				case "I": // Get a record to display
					$this->lStartRec = 1; // Initialize start position
					if ($rs = $this->LoadRecordset()) // Load records
						$this->lTotalRecs = $rs->RecordCount(); // Get record count
					if ($this->lTotalRecs <= 0) { // No record found
						$this->setMessage($Language->Phrase("NoRecord")); // Set no record message
						$this->Page_Terminate("Bookslist.php"); // Return to list page
					} elseif ($bLoadCurrentRecord) { // Load current record position
						$this->SetUpStartRec(); // Set up start record position

						// Point to current record
						if (intval($this->lStartRec) <= intval($this->lTotalRecs)) {
							$bMatchRecord = TRUE;
							$rs->Move($this->lStartRec-1);
						}
					} else { // Match key values
						while (!$rs->EOF) {
							if (strval($Books->BookID->CurrentValue) == strval($rs->fields('BookID'))) {
								$Books->setStartRecordNumber($this->lStartRec); // Save record position
								$bMatchRecord = TRUE;
								break;
							} else {
								$this->lStartRec++;
								$rs->MoveNext();
							}
						}
					}
					if (!$bMatchRecord) {
						$this->setMessage($Language->Phrase("NoRecord")); // Set no record message
						$sReturnUrl = "Bookslist.php"; // No matching record, return to list
					} else {
						$this->LoadRowValues($rs); // Load row values
					}
			}

			// Export data only
			if (in_array($Books->Export, array("html","word","excel","xml","csv","email"))) {
				$this->ExportData();
				if ($Books->Export <> "email")
					$this->Page_Terminate(); // Terminate response
				exit();
			}
		} else {
			$sReturnUrl = "Bookslist.php"; // Not page request, return to list
		}
		if ($sReturnUrl <> "")
			$this->Page_Terminate($sReturnUrl);

		// Render row
		$Books->RowType = EW_ROWTYPE_VIEW;
		$this->RenderRow();
	}

	// Set up starting record parameters
	function SetUpStartRec() {
		global $Books;
		if ($this->lDisplayRecs == 0)
			return;
		if ($this->IsPageRequest()) { // Validate request
			if (@$_GET[EW_TABLE_START_REC] <> "") { // Check for "start" parameter
				$this->lStartRec = $_GET[EW_TABLE_START_REC];
				$Books->setStartRecordNumber($this->lStartRec);
			} elseif (@$_GET[EW_TABLE_PAGE_NO] <> "") {
				$this->nPageNo = $_GET[EW_TABLE_PAGE_NO];
				if (is_numeric($this->nPageNo)) {
					$this->lStartRec = ($this->nPageNo-1)*$this->lDisplayRecs+1;
					if ($this->lStartRec <= 0) {
						$this->lStartRec = 1;
					} elseif ($this->lStartRec >= intval(($this->lTotalRecs-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1) {
						$this->lStartRec = intval(($this->lTotalRecs-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1;
					}
					$Books->setStartRecordNumber($this->lStartRec);
				}
			}
		}
		$this->lStartRec = $Books->getStartRecordNumber();

		// Check if correct start record counter
		if (!is_numeric($this->lStartRec) || $this->lStartRec == "") { // Avoid invalid start record counter
			$this->lStartRec = 1; // Reset start record counter
			$Books->setStartRecordNumber($this->lStartRec);
		} elseif (intval($this->lStartRec) > intval($this->lTotalRecs)) { // Avoid starting record > total records
			$this->lStartRec = intval(($this->lTotalRecs-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1; // Point to last page first record
			$Books->setStartRecordNumber($this->lStartRec);
		} elseif (($this->lStartRec-1) % $this->lDisplayRecs <> 0) {
			$this->lStartRec = intval(($this->lStartRec-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1; // Point to page boundary
			$Books->setStartRecordNumber($this->lStartRec);
		}
	}

	// Load recordset
	function LoadRecordset($offset = -1, $rowcnt = -1) {
		global $conn, $Books;

		// Call Recordset Selecting event
		$Books->Recordset_Selecting($Books->CurrentFilter);

		// Load List page SQL
		$sSql = $Books->SelectSQL();
		if ($offset > -1 && $rowcnt > -1)
			$sSql .= " LIMIT $offset, $rowcnt";

		// Load recordset
		$rs = ew_LoadRecordset($sSql);

		// Call Recordset Selected event
		$Books->Recordset_Selected($rs);
		return $rs;
	}

	// Load row based on key values
	function LoadRow() {
		global $conn, $Security, $Books;
		$sFilter = $Books->KeyFilter();

		// Call Row Selecting event
		$Books->Row_Selecting($sFilter);

		// Load SQL based on filter
		$Books->CurrentFilter = $sFilter;
		$sSql = $Books->SQL();
		$res = FALSE;
		$rs = ew_LoadRecordset($sSql);
		if ($rs && !$rs->EOF) {
			$res = TRUE;
			$this->LoadRowValues($rs); // Load row values

			// Call Row Selected event
			$Books->Row_Selected($rs);
			$rs->Close();
		}
		return $res;
	}

	// Load row values from recordset
	function LoadRowValues(&$rs) {
		global $conn, $Books;
		$Books->BookID->setDbValue($rs->fields('BookID'));
		$Books->BookName->setDbValue($rs->fields('BookName'));
		$Books->BookThumb->Upload->DbValue = $rs->fields('BookThumb');
		$Books->BookPhoto->Upload->DbValue = $rs->fields('BookPhoto');
		$Books->BookCategory->setDbValue($rs->fields('BookCategory'));
		$Books->BookDescription->setDbValue($rs->fields('BookDescription'));
		$Books->BookPrice->setDbValue($rs->fields('BookPrice'));
		$Books->StockCode->setDbValue($rs->fields('StockCode'));
		$Books->ISBN->setDbValue($rs->fields('ISBN'));
	}

	// Render row values based on field settings
	function RenderRow() {
		global $conn, $Security, $Language, $Books;

		// Initialize URLs
		$this->ExportPrintUrl = $this->PageUrl() . "export=print&" . "BookID=" . urlencode($Books->BookID->CurrentValue);
		$this->ExportHtmlUrl = $this->PageUrl() . "export=html&" . "BookID=" . urlencode($Books->BookID->CurrentValue);
		$this->ExportExcelUrl = $this->PageUrl() . "export=excel&" . "BookID=" . urlencode($Books->BookID->CurrentValue);
		$this->ExportWordUrl = $this->PageUrl() . "export=word&" . "BookID=" . urlencode($Books->BookID->CurrentValue);
		$this->ExportXmlUrl = $this->PageUrl() . "export=xml&" . "BookID=" . urlencode($Books->BookID->CurrentValue);
		$this->ExportCsvUrl = $this->PageUrl() . "export=csv&" . "BookID=" . urlencode($Books->BookID->CurrentValue);
		$this->AddUrl = $Books->AddUrl();
		$this->EditUrl = $Books->EditUrl();
		$this->CopyUrl = $Books->CopyUrl();
		$this->DeleteUrl = $Books->DeleteUrl();
		$this->ListUrl = $Books->ListUrl();

		// Call Row_Rendering event
		$Books->Row_Rendering();

		// Common render codes for all row types
		// BookID

		$Books->BookID->CellCssStyle = ""; $Books->BookID->CellCssClass = "";
		$Books->BookID->CellAttrs = array(); $Books->BookID->ViewAttrs = array(); $Books->BookID->EditAttrs = array();

		// BookName
		$Books->BookName->CellCssStyle = ""; $Books->BookName->CellCssClass = "";
		$Books->BookName->CellAttrs = array(); $Books->BookName->ViewAttrs = array(); $Books->BookName->EditAttrs = array();

		// BookThumb
		$Books->BookThumb->CellCssStyle = ""; $Books->BookThumb->CellCssClass = "";
		$Books->BookThumb->CellAttrs = array(); $Books->BookThumb->ViewAttrs = array(); $Books->BookThumb->EditAttrs = array();

		// BookPhoto
		$Books->BookPhoto->CellCssStyle = ""; $Books->BookPhoto->CellCssClass = "";
		$Books->BookPhoto->CellAttrs = array(); $Books->BookPhoto->ViewAttrs = array(); $Books->BookPhoto->EditAttrs = array();

		// BookCategory
		$Books->BookCategory->CellCssStyle = ""; $Books->BookCategory->CellCssClass = "";
		$Books->BookCategory->CellAttrs = array(); $Books->BookCategory->ViewAttrs = array(); $Books->BookCategory->EditAttrs = array();

		// BookDescription
		$Books->BookDescription->CellCssStyle = ""; $Books->BookDescription->CellCssClass = "";
		$Books->BookDescription->CellAttrs = array(); $Books->BookDescription->ViewAttrs = array(); $Books->BookDescription->EditAttrs = array();

		// BookPrice
		$Books->BookPrice->CellCssStyle = ""; $Books->BookPrice->CellCssClass = "";
		$Books->BookPrice->CellAttrs = array(); $Books->BookPrice->ViewAttrs = array(); $Books->BookPrice->EditAttrs = array();

		// StockCode
		$Books->StockCode->CellCssStyle = ""; $Books->StockCode->CellCssClass = "";
		$Books->StockCode->CellAttrs = array(); $Books->StockCode->ViewAttrs = array(); $Books->StockCode->EditAttrs = array();

		// ISBN
		$Books->ISBN->CellCssStyle = ""; $Books->ISBN->CellCssClass = "";
		$Books->ISBN->CellAttrs = array(); $Books->ISBN->ViewAttrs = array(); $Books->ISBN->EditAttrs = array();
		if ($Books->RowType == EW_ROWTYPE_VIEW) { // View row

			// BookID
			$Books->BookID->ViewValue = $Books->BookID->CurrentValue;
			$Books->BookID->CssStyle = "";
			$Books->BookID->CssClass = "";
			$Books->BookID->ViewCustomAttributes = "";

			// BookName
			$Books->BookName->ViewValue = $Books->BookName->CurrentValue;
			$Books->BookName->CssStyle = "";
			$Books->BookName->CssClass = "";
			$Books->BookName->ViewCustomAttributes = "";

			// BookThumb
			if (!ew_Empty($Books->BookThumb->Upload->DbValue)) {
				$Books->BookThumb->ViewValue = $Books->BookThumb->Upload->DbValue;
				$Books->BookThumb->ImageAlt = $Books->BookThumb->FldAlt();
			} else {
				$Books->BookThumb->ViewValue = "";
			}
			$Books->BookThumb->CssStyle = "";
			$Books->BookThumb->CssClass = "";
			$Books->BookThumb->ViewCustomAttributes = "";

			// BookPhoto
			if (!ew_Empty($Books->BookPhoto->Upload->DbValue)) {
				$Books->BookPhoto->ViewValue = $Books->BookPhoto->Upload->DbValue;
				$Books->BookPhoto->ImageAlt = $Books->BookPhoto->FldAlt();
			} else {
				$Books->BookPhoto->ViewValue = "";
			}
			$Books->BookPhoto->CssStyle = "";
			$Books->BookPhoto->CssClass = "";
			$Books->BookPhoto->ViewCustomAttributes = "";

			// BookCategory
			$Books->BookCategory->ViewValue = $Books->BookCategory->CurrentValue;
			$Books->BookCategory->CssStyle = "";
			$Books->BookCategory->CssClass = "";
			$Books->BookCategory->ViewCustomAttributes = "";

			// BookDescription
			$Books->BookDescription->ViewValue = $Books->BookDescription->CurrentValue;
			$Books->BookDescription->CssStyle = "";
			$Books->BookDescription->CssClass = "";
			$Books->BookDescription->ViewCustomAttributes = "";

			// BookPrice
			$Books->BookPrice->ViewValue = $Books->BookPrice->CurrentValue;
			$Books->BookPrice->CssStyle = "";
			$Books->BookPrice->CssClass = "";
			$Books->BookPrice->ViewCustomAttributes = "";

			// StockCode
			$Books->StockCode->ViewValue = $Books->StockCode->CurrentValue;
			$Books->StockCode->CssStyle = "";
			$Books->StockCode->CssClass = "";
			$Books->StockCode->ViewCustomAttributes = "";

			// ISBN
			$Books->ISBN->ViewValue = $Books->ISBN->CurrentValue;
			$Books->ISBN->CssStyle = "";
			$Books->ISBN->CssClass = "";
			$Books->ISBN->ViewCustomAttributes = "";

			// BookID
			$Books->BookID->HrefValue = "";
			$Books->BookID->TooltipValue = "";

			// BookName
			$Books->BookName->HrefValue = "";
			$Books->BookName->TooltipValue = "";

			// BookThumb
			$Books->BookThumb->HrefValue = "";
			$Books->BookThumb->TooltipValue = "";

			// BookPhoto
			$Books->BookPhoto->HrefValue = "";
			$Books->BookPhoto->TooltipValue = "";

			// BookCategory
			$Books->BookCategory->HrefValue = "";
			$Books->BookCategory->TooltipValue = "";

			// BookDescription
			$Books->BookDescription->HrefValue = "";
			$Books->BookDescription->TooltipValue = "";

			// BookPrice
			$Books->BookPrice->HrefValue = "";
			$Books->BookPrice->TooltipValue = "";

			// StockCode
			$Books->StockCode->HrefValue = "";
			$Books->StockCode->TooltipValue = "";

			// ISBN
			$Books->ISBN->HrefValue = "";
			$Books->ISBN->TooltipValue = "";
		}

		// Call Row Rendered event
		if ($Books->RowType <> EW_ROWTYPE_AGGREGATEINIT)
			$Books->Row_Rendered();
	}

	// Export data in HTML/CSV/Word/Excel/XML/Email format
	function ExportData() {
		global $Books;
		$utf8 = FALSE;
		$bSelectLimit = FALSE;

		// Load recordset
		if ($bSelectLimit) {
			$this->lTotalRecs = $Books->SelectRecordCount();
		} else {
			if ($rs = $this->LoadRecordset())
				$this->lTotalRecs = $rs->RecordCount();
		}
		$this->lStartRec = 1;
		$this->SetUpStartRec(); // Set up start record position

		// Set the last record to display
		if ($this->lDisplayRecs < 0) {
			$this->lStopRec = $this->lTotalRecs;
		} else {
			$this->lStopRec = $this->lStartRec + $this->lDisplayRecs - 1;
		}
		if (!$rs) {
			header("Content-Type:"); // Remove header
			header("Content-Disposition:");
			$this->ShowMessage();
			return;
		}
		if ($Books->Export == "xml") {
			$XmlDoc = new cXMLDocument(EW_XML_ENCODING);
			$XmlDoc->AddRoot();
		} else {
			$ExportDoc = new cExportDocument($Books, "v");
			$ExportDoc->ExportHeader();
			if ($ExportDoc->Horizontal) { // Horizontal format, write header
				$ExportDoc->BeginExportRow();
				$ExportDoc->ExportCaption($Books->BookID);
				$ExportDoc->ExportCaption($Books->BookName);
				$ExportDoc->ExportCaption($Books->BookThumb);
				$ExportDoc->ExportCaption($Books->BookPhoto);
				$ExportDoc->ExportCaption($Books->BookCategory);
				$ExportDoc->ExportCaption($Books->BookPrice);
				$ExportDoc->ExportCaption($Books->StockCode);
				$ExportDoc->ExportCaption($Books->ISBN);
				$ExportDoc->EndExportRow();
			}
		}

		// Move to first record
		$this->lRecCnt = $this->lStartRec - 1;
		if (!$rs->EOF) {
			$rs->MoveFirst();
			if (!$bSelectLimit && $this->lStartRec > 1)
				$rs->Move($this->lStartRec - 1);
		}
		while (!$rs->EOF && $this->lRecCnt < $this->lStopRec) {
			$this->lRecCnt++;
			if (intval($this->lRecCnt) >= intval($this->lStartRec)) {
				$this->LoadRowValues($rs);

				// Render row
				$Books->CssClass = "";
				$Books->CssStyle = "";
				$Books->RowType = EW_ROWTYPE_VIEW; // Render view
				$this->RenderRow();
				if ($Books->Export == "xml") {
					$XmlDoc->AddRow();
					$XmlDoc->AddField('BookID', $Books->BookID->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('BookName', $Books->BookName->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('BookThumb', $Books->BookThumb->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('BookPhoto', $Books->BookPhoto->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('BookCategory', $Books->BookCategory->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('BookPrice', $Books->BookPrice->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('StockCode', $Books->StockCode->ExportValue($Books->Export, $Books->ExportOriginalValue));
					$XmlDoc->AddField('ISBN', $Books->ISBN->ExportValue($Books->Export, $Books->ExportOriginalValue));
				} else {
					$ExportDoc->BeginExportRow(TRUE); // Allow CSS styles if enabled
					$ExportDoc->ExportField($Books->BookID);
					$ExportDoc->ExportField($Books->BookName);
					$ExportDoc->ExportField($Books->BookThumb);
					$ExportDoc->ExportField($Books->BookPhoto);
					$ExportDoc->ExportField($Books->BookCategory);
					$ExportDoc->ExportField($Books->BookPrice);
					$ExportDoc->ExportField($Books->StockCode);
					$ExportDoc->ExportField($Books->ISBN);
					$ExportDoc->EndExportRow();
				}
			}
			$rs->MoveNext();
		}
		if ($Books->Export <> "xml")
			$ExportDoc->ExportFooter();

		// Close recordset
		$rs->Close();

		// Clean output buffer
		if (!EW_DEBUG_ENABLED && ob_get_length())
			ob_end_clean();

		// Write BOM if utf-8
		if ($utf8 && !in_array($Books->Export, array("email", "xml")))
			echo "\xEF\xBB\xBF";

		// Write debug message if enabled
		if (EW_DEBUG_ENABLED)
			echo ew_DebugMsg();

		// Output data
		if ($Books->Export == "xml") {
			header("Content-Type: text/xml");
			echo $XmlDoc->XML();
		} elseif ($Books->Export == "email") {
			$this->ExportEmail($ExportDoc->Text);
			$this->Page_Terminate($Books->ExportReturnUrl());
		} else {
			echo $ExportDoc->Text;
		}
	}

	// Export email
	function ExportEmail($EmailContent) {
		global $Language, $Books;
		$sSender = @$_GET["sender"];
		$sRecipient = @$_GET["recipient"];
		$sCc = @$_GET["cc"];
		$sBcc = @$_GET["bcc"];
		$sContentType = @$_GET["contenttype"];

		// Subject
		$sSubject = ew_StripSlashes(@$_GET["subject"]);
		$sEmailSubject = $sSubject;

		// Message
		$sContent = ew_StripSlashes(@$_GET["message"]);
		$sEmailMessage = $sContent;

		// Check sender
		if ($sSender == "") {
			$this->setMessage($Language->Phrase("EnterSenderEmail"));
			return;
		}
		if (!ew_CheckEmail($sSender)) {
			$this->setMessage($Language->Phrase("EnterProperSenderEmail"));
			return;
		}

		// Check recipient
		if (!ew_CheckEmailList($sRecipient, EW_MAX_EMAIL_RECIPIENT)) {
			$this->setMessage($Language->Phrase("EnterProperRecipientEmail"));
			return;
		}

		// Check cc
		if (!ew_CheckEmailList($sCc, EW_MAX_EMAIL_RECIPIENT)) {
			$this->setMessage($Language->Phrase("EnterProperCcEmail"));
			return;
		}

		// Check bcc
		if (!ew_CheckEmailList($sBcc, EW_MAX_EMAIL_RECIPIENT)) {
			$this->setMessage($Language->Phrase("EnterProperBccEmail"));
			return;
		}

		// Check email sent count
		if (!isset($_SESSION[EW_EXPORT_EMAIL_COUNTER]))
			$_SESSION[EW_EXPORT_EMAIL_COUNTER] = 0;
		if (intval($_SESSION[EW_EXPORT_EMAIL_COUNTER]) > EW_MAX_EMAIL_SENT_COUNT) {
			$this->setMessage($Language->Phrase("ExceedMaxEmailExport"));
			return;
		}
		if ($sEmailMessage <> "") {
			$sEmailMessage = ew_RemoveXSS($sEmailMessage);
			$sEmailMessage .= ($sContentType == "url") ? "\r\n\r\n" : "<br><br>";
		}
		if ($sContentType == "url") {
			$sUrl = ew_ConvertFullUrl(ew_CurrentPage() . "?" . $this->ExportQueryString());
			$sEmailMessage .= $sUrl; // send URL only
		} else {
			$sEmailMessage .= $EmailContent; // send HTML
		}

		// Send email
		$Email = new cEmail();
		$Email->Sender = $sSender; // Sender
		$Email->Recipient = $sRecipient; // Recipient
		$Email->Cc = $sCc; // Cc
		$Email->Bcc = $sBcc; // Bcc
		$Email->Subject = $sEmailSubject; // Subject
		$Email->Content = $sEmailMessage; // Content
		$Email->Format = ($sContentType == "url") ? "text" : "html";
		$Email->Charset = EW_EMAIL_CHARSET;
		$EventArgs = array();
		$bEmailSent = FALSE;
		if ($Books->Email_Sending($Email, $EventArgs))
			$bEmailSent = $Email->Send();

		// Check email sent status
		if ($bEmailSent) {

			// Update email sent count
			$_SESSION[EW_EXPORT_EMAIL_COUNTER]++;

			// Sent email success
			$this->setMessage($Language->Phrase("SendEmailSuccess"));
		} else {

			// Sent email failure
			$this->setMessage($Email->SendErrDescription);
		}
	}

	// Export QueryString
	function ExportQueryString() {
		global $Books;

		// Initialize
		$sQry = "export=html";

		// Add record key QueryString
		$sQry .= "&" . substr($Books->KeyUrl("", ""), 1);
		return $sQry;
	}

	// Page Load event
	function Page_Load() {

		//echo "Page Load";
	}

	// Page Unload event
	function Page_Unload() {

		//echo "Page Unload";
	}

	// Page Redirecting event
	function Page_Redirecting(&$url) {

		// Example:
		//$url = "your URL";

	}

	// Message Showing event
	function Message_Showing(&$msg) {

		// Example:
		//$msg = "your new message";

	}
}
?>