<?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 "typesinfo.php" ?>
<?php include "useraccountsinfo.php" ?>
<?php include "userfn7.php" ?>
<?php
// Create page object
$types_add = new ctypes_add();
$Page =& $types_add;
// Page init
$types_add->Page_Init();
// Page main
$types_add->Page_Main();
?>
<?php include "header.php" ?>
<script type="text/javascript">
<!--
// Create page object
var types_add = new ew_Page("types_add");
// page properties
types_add.PageID = "add"; // page ID
types_add.FormID = "ftypesadd"; // form ID
var EW_PAGE_ID = types_add.PageID; // for backward compatibility
// extend page with ValidateForm function
types_add.ValidateForm = function(fobj) {
ew_PostAutoSuggest(fobj);
if (!this.ValidateRequired)
return true; // ignore validation
if (fobj.a_confirm && fobj.a_confirm.value == "F")
return true;
var i, elm, aelm, infix;
var rowcnt = (fobj.key_count) ? Number(fobj.key_count.value) : 1;
for (i=0; i<rowcnt; i++) {
infix = (fobj.key_count) ? String(i+1) : "";
elm = fobj.elements["x" + infix + "_name"];
if (elm && !ew_HasValue(elm))
return ew_OnError(this, elm, ewLanguage.Phrase("EnterRequiredField") + " - <?php echo ew_JsEncode2($types->name->FldCaption()) ?>");
// Call Form Custom Validate event
if (!this.Form_CustomValidate(fobj)) return false;
}
return true;
}
// extend page with Form_CustomValidate function
types_add.Form_CustomValidate =
function(fobj) { // DO NOT CHANGE THIS LINE!
// Your custom validation code here, return false if invalid.
return true;
}
types_add.SelectAllKey = function(elem) {
ew_SelectAll(elem);
ew_ClickAll(elem);
}
<?php if (EW_CLIENT_VALIDATE) { ?>
types_add.ValidateRequired = true; // uses JavaScript validation
<?php } else { ?>
types_add.ValidateRequired = false; // no JavaScript validation
<?php } ?>
//-->
</script>
<script type="text/javascript">
<!--
var ew_DHTMLEditors = [];
//-->
</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>
<p><span class="phpmaker"><?php echo $Language->Phrase("Add") ?> <?php echo $Language->Phrase("TblTypeTABLE") ?><?php echo $types->TableCaption() ?><br><br>
<a href="<?php echo $types->getReturnUrl() ?>"><?php echo $Language->Phrase("GoBack") ?></a></span></p>
<?php
if (EW_DEBUG_ENABLED)
echo ew_DebugMsg();
$types_add->ShowMessage();
?>
<form name="ftypesadd" id="ftypesadd" action="<?php echo ew_CurrentPage() ?>" method="post" onsubmit="return types_add.ValidateForm(this);">
<p>
<input type="hidden" name="t" id="t" value="types">
<input type="hidden" name="a_add" id="a_add" value="A">
<table cellspacing="0" class="ewGrid"><tr><td class="ewGridContent">
<div class="ewGridMiddlePanel">
<table cellspacing="0" class="ewTable">
<?php if ($types->name->Visible) { // name ?>
<tr<?php echo $types->name->RowAttributes ?>>
<td class="ewTableHeader"><?php echo $types->name->FldCaption() ?><?php echo $Language->Phrase("FieldRequiredIndicator") ?></td>
<td<?php echo $types->name->CellAttributes() ?>><span id="el_name">
<input type="text" name="x_name" id="x_name" title="<?php echo $types->name->FldTitle() ?>" size="30" maxlength="45" value="<?php echo $types->name->EditValue ?>"<?php echo $types->name->EditAttributes() ?>>
</span><?php echo $types->name->CustomMsg ?></td>
</tr>
<?php } ?>
</table>
</div>
</td></tr></table>
<p>
<input type="submit" name="btnAction" id="btnAction" value="<?php echo ew_BtnCaption($Language->Phrase("AddBtn")) ?>">
</form>
<script language="JavaScript" type="text/javascript">
<!--
// Write your table-specific startup script here
// document.write("page loaded");
//-->
</script>
<?php include "footer.php" ?>
<?php
$types_add->Page_Terminate();
?>
<?php
//
// Page class
//
class ctypes_add {
// Page ID
var $PageID = 'add';
// Table name
var $TableName = 'types';
// Page object name
var $PageObjName = 'types_add';
// Page name
function PageName() {
return ew_CurrentPage();
}
// Page URL
function PageUrl() {
$PageUrl = ew_CurrentPage() . "?";
global $types;
if ($types->UseTokenInUrl) $PageUrl .= "t=" . $types->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, $types;
if ($types->UseTokenInUrl) {
if ($objForm)
return ($types->TableVar == $objForm->GetValue("t"));
if (@$_GET["t"] <> "")
return ($types->TableVar == $_GET["t"]);
} else {
return TRUE;
}
}
//
// Page class constructor
//
function ctypes_add() {
global $conn, $Language;
// Language object
$Language = new cLanguage();
// Table object (types)
$GLOBALS["types"] = new ctypes();
// Table object (useraccounts)
$GLOBALS['useraccounts'] = new cuseraccounts();
// Page ID
if (!defined("EW_PAGE_ID"))
define("EW_PAGE_ID", 'add', TRUE);
// Table name (for backward compatibility)
if (!defined("EW_TABLE_NAME"))
define("EW_TABLE_NAME", 'types', 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 $types;
// 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->CanAdd()) {
$Security->SaveLastUrl();
$this->Page_Terminate("typeslist.php");
}
$Security->UserID_Loading();
if ($Security->IsLoggedIn()) $Security->LoadUserID();
$Security->UserID_Loaded();
// Create form object
$objForm = new cFormObj();
// 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 $sDbMasterFilter = "";
var $sDbDetailFilter = "";
var $lPriv = 0;
//
// Page main
//
function Page_Main() {
global $objForm, $Language, $gsFormError, $types;
// Load key values from QueryString
$bCopy = TRUE;
if (@$_GET["id"] != "") {
$types->id->setQueryStringValue($_GET["id"]);
} else {
$bCopy = FALSE;
}
// Process form if post back
if (@$_POST["a_add"] <> "") {
$types->CurrentAction = $_POST["a_add"]; // Get form action
$this->LoadFormValues(); // Load form values
// Validate form
if (!$this->ValidateForm()) {
$types->CurrentAction = "I"; // Form error, reset action
$this->setMessage($gsFormError);
}
} else { // Not post back
if ($bCopy) {
$types->CurrentAction = "C"; // Copy record
} else {
$types->CurrentAction = "I"; // Display blank record
$this->LoadDefaultValues(); // Load default values
}
}
// Perform action based on action code
switch ($types->CurrentAction) {
case "I": // Blank record, no action required
break;
case "C": // Copy an existing record
if (!$this->LoadRow()) { // Load record based on key
$this->setMessage($Language->Phrase("NoRecord")); // No record found
$this->Page_Terminate("typeslist.php"); // No matching record, return to list
}
break;
case "A": // ' Add new record
$types->SendEmail = TRUE; // Send email on add success
if ($this->AddRow()) { // Add successful
$this->setMessage($Language->Phrase("AddSuccess")); // Set up success message
$sReturnUrl = $types->getReturnUrl();
if (ew_GetPageName($sReturnUrl) == "typesview.php")
$sReturnUrl = $types->ViewUrl(); // View paging, return to view page with keyurl directly
$this->Page_Terminate($sReturnUrl); // Clean up and return
} else {
$this->RestoreFormValues(); // Add failed, restore form values
}
}
// Render row based on row type
$types->RowType = EW_ROWTYPE_ADD; // Render add type
// Render row
$this->RenderRow();
}
// Get upload files
function GetUploadFiles() {
global $objForm, $types;
// Get upload data
}
// Load default values
function LoadDefaultValues() {
global $types;
}
// Load form values
function LoadFormValues() {
// Load from form
global $objForm, $types;
$types->name->setFormValue($objForm->GetValue("x_name"));
$types->id->setFormValue($objForm->GetValue("x_id"));
}
// Restore form values
function RestoreFormValues() {
global $objForm, $types;
$types->id->CurrentValue = $types->id->FormValue;
$types->name->CurrentValue = $types->name->FormValue;
}
// Load row based on key values
function LoadRow() {
global $conn, $Security, $types;
$sFilter = $types->KeyFilter();
// Call Row Selecting event
$types->Row_Selecting($sFilter);
// Load SQL based on filter
$types->CurrentFilter = $sFilter;
$sSql = $types->SQL();
$res = FALSE;
$rs = ew_LoadRecordset($sSql);
if ($rs && !$rs->EOF) {
$res = TRUE;
$this->LoadRowValues($rs); // Load row values
// Call Row Selected event
$types->Row_Selected($rs);
$rs->Close();
}
return $res;
}
// Load row values from recordset
function LoadRowValues(&$rs) {
global $conn, $types;
$types->id->setDbValue($rs->fields('id'));
$types->name->setDbValue($rs->fields('name'));
}
// Render row values based on field settings
function RenderRow() {
global $conn, $Security, $Language, $types;
// Initialize URLs
// Call Row_Rendering event
$types->Row_Rendering();
// Common render codes for all row types
// name
$types->name->CellCssStyle = ""; $types->name->CellCssClass = "";
$types->name->CellAttrs = array(); $types->name->ViewAttrs = array(); $types->name->EditAttrs = array();
if ($types->RowType == EW_ROWTYPE_VIEW) { // View row
// id
$types->id->ViewValue = $types->id->CurrentValue;
$types->id->CssStyle = "";
$types->id->CssClass = "";
$types->id->ViewCustomAttributes = "";
// name
$types->name->ViewValue = $types->name->CurrentValue;
$types->name->CssStyle = "";
$types->name->CssClass = "";
$types->name->ViewCustomAttributes = "";
// name
$types->name->HrefValue = "";
$types->name->TooltipValue = "";
} elseif ($types->RowType == EW_ROWTYPE_ADD) { // Add row
// name
$types->name->EditCustomAttributes = "";
$types->name->EditValue = ew_HtmlEncode($types->name->CurrentValue);
}
// Call Row Rendered event
if ($types->RowType <> EW_ROWTYPE_AGGREGATEINIT)
$types->Row_Rendered();
}
// Validate form
function ValidateForm() {
global $Language, $gsFormError, $types;
// Initialize form error message
$gsFormError = "";
// Check if validation required
if (!EW_SERVER_VALIDATE)
return ($gsFormError == "");
if (!is_null($types->name->FormValue) && $types->name->FormValue == "") {
$gsFormError .= ($gsFormError <> "") ? "<br>" : "";
$gsFormError .= $Language->Phrase("EnterRequiredField") . " - " . $types->name->FldCaption();
}
// Return validate result
$ValidateForm = ($gsFormError == "");
// Call Form_CustomValidate event
$sFormCustomError = "";
$ValidateForm = $ValidateForm && $this->Form_CustomValidate($sFormCustomError);
if ($sFormCustomError <> "") {
$gsFormError .= ($gsFormError <> "") ? "<br>" : "";
$gsFormError .= $sFormCustomError;
}
return $ValidateForm;
}
// Add record
function AddRow() {
global $conn, $Language, $Security, $types;
$rsnew = array();
// name
$types->name->SetDbValueDef($rsnew, $types->name->CurrentValue, "", FALSE);
// Call Row Inserting event
$bInsertRow = $types->Row_Inserting($rsnew);
if ($bInsertRow) {
$conn->raiseErrorFn = 'ew_ErrorFn';
$AddRow = $conn->Execute($types->InsertSQL($rsnew));
$conn->raiseErrorFn = '';
} else {
if ($types->CancelMessage <> "") {
$this->setMessage($types->CancelMessage);
$types->CancelMessage = "";
} else {
$this->setMessage($Language->Phrase("InsertCancelled"));
}
$AddRow = FALSE;
}
if ($AddRow) {
$types->id->setDbValue($conn->Insert_ID());
$rsnew['id'] = $types->id->DbValue;
// Call Row Inserted event
$types->Row_Inserted($rsnew);
}
return $AddRow;
}
// 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";
}
// Form Custom Validate event
function Form_CustomValidate(&$CustomError) {
// Return error message in CustomError
return TRUE;
}
}
?>