/osj-osj2dcategoriesadd.php
PHP | 508 lines | 382 code | 60 blank | 66 comment | 59 complexity | 8afdd67243de60b637141fe1f15fe541 MD5 | raw file
Possible License(s): LGPL-2.1, AGPL-1.0
- <?php
- define("EW_PAGE_ID", "add", TRUE); // Page ID
- define("EW_TABLE_NAME", 'osj-categories', TRUE);
- ?>
- <?php
- session_start(); // Initialize session data
- ob_start(); // Turn on output buffering
- ?>
- <?php include "osj-ewcfg50.php" ?>
- <?php include "osj-ewmysql50.php" ?>
- <?php include "osj-phpfn50.php" ?>
- <?php include "osj-osj2dcategoriesinfo.php" ?>
- <?php include "osj-userfn50.php" ?>
- <?php include "osj-osj2dusersinfo.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
-
- // Open connection to the database
- $conn = ew_Connect();
- ?>
- <?php
- $Security = new cAdvancedSecurity();
- ?>
- <?php
- if (!$Security->IsLoggedIn()) $Security->AutoLogin();
- $Security->LoadCurrentUserLevel('osj-categories');
- if (!$Security->IsLoggedIn()) {
- $Security->SaveLastUrl();
- Page_Terminate("osj-login.php");
- }
- if (!$Security->CanAdd()) {
- $Security->SaveLastUrl();
- Page_Terminate("osj-osj2dcategorieslist.php");
- }
- ?>
- <?php
-
- // Common page loading event (in userfn*.php)
- Page_Loading();
- ?>
- <?php
-
- // Page load event, used in current page
- Page_Load();
- ?>
- <?php
- $osj2Dcategories->Export = @$_GET["export"]; // Get export parameter
- $sExport = $osj2Dcategories->Export; // Get export parameter, used in header
- $sExportFile = $osj2Dcategories->TableVar; // Get export file, used in header
- ?>
- <?php
-
- // Load key values from QueryString
- $bCopy = TRUE;
- if (@$_GET["category_id"] != "") {
- $osj2Dcategories->category_id->setQueryStringValue($_GET["category_id"]);
- } else {
- $bCopy = FALSE;
- }
-
- // Create form object
- $objForm = new cFormObj();
-
- // Process form if post back
- if (@$_POST["a_add"] <> "") {
- $osj2Dcategories->CurrentAction = $_POST["a_add"]; // Get form action
- LoadFormValues(); // Load form values
- } else { // Not post back
- if ($bCopy) {
- $osj2Dcategories->CurrentAction = "C"; // Copy Record
- } else {
- $osj2Dcategories->CurrentAction = "I"; // Display Blank Record
- LoadDefaultValues(); // Load default values
- }
- }
-
- // Perform action based on action code
- switch ($osj2Dcategories->CurrentAction) {
- case "I": // Blank record, no action required
- break;
- case "C": // Copy an existing record
- if (!LoadRow()) { // Load record based on key
- $_SESSION[EW_SESSION_MESSAGE] = "No records found"; // No record found
- Page_Terminate($osj2Dcategories->getReturnUrl()); // Clean up and return
- }
- break;
- case "A": // ' Add new record
- $osj2Dcategories->SendEmail = TRUE; // Send email on add success
- if (AddRow()) { // Add successful
- $_SESSION[EW_SESSION_MESSAGE] = "Add New Record Successful"; // Set up success message
- Page_Terminate($osj2Dcategories->KeyUrl($osj2Dcategories->getReturnUrl())); // Clean up and return
- } else {
- RestoreFormValues(); // Add failed, restore form values
- }
- }
-
- // Render row based on row type
- $osj2Dcategories->RowType = EW_ROWTYPE_ADD; // Render add type
- RenderRow();
- ?>
- <?php include "osj-header.php" ?>
- <script type="text/javascript">
- <!--
- var EW_PAGE_ID = "add"; // Page id
- var EW_SHOW_HIGHLIGHT = "Show highlight";
- var EW_HIDE_HIGHLIGHT = "Hide highlight";
-
- //-->
- </script>
- <script type="text/javascript">
- <!--
-
- function ew_ValidateForm(fobj) {
- 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 + "_category_id"];
- if (elm && !ew_HasValue(elm)) {
- if (!ew_OnError(elm, "Please enter required field - category id"))
- return false;
- }
- elm = fobj.elements["x" + infix + "_category_id"];
- if (elm && !ew_CheckInteger(elm.value)) {
- if (!ew_OnError(elm, "Incorrect integer - category id"))
- return false;
- }
- elm = fobj.elements["x" + infix + "_category_name"];
- if (elm && !ew_HasValue(elm)) {
- if (!ew_OnError(elm, "Please enter required field - Category Name"))
- return false;
- }
- }
- return true;
- }
-
- //-->
- </script>
- <script type="text/javascript">
- <!--
- var ew_DHTMLEditors = [];
-
- //-->
- </script>
- <script type="text/javascript">
- <!--
-
- // js for Popup Calendar
- //-->
-
- </script>
- <script type="text/javascript">
- <!--
- var ew_MultiPagePage = "Page"; // multi-page Page Text
- var ew_MultiPageOf = "of"; // multi-page Of Text
- var ew_MultiPagePrev = "Prev"; // multi-page Prev Text
- var ew_MultiPageNext = "Next"; // multi-page Next Text
-
- //-->
- </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">Add to TABLE: Categories<br><br><a href="<?php echo $osj2Dcategories->getReturnUrl() ?>">Go Back</a></span></p>
- <?php
- if (@$_SESSION[EW_SESSION_MESSAGE] <> "") { // Mesasge in Session, display
- ?>
- <p><span class="ewmsg"><?php echo $_SESSION[EW_SESSION_MESSAGE] ?></span></p>
- <?php
- $_SESSION[EW_SESSION_MESSAGE] = ""; // Clear message in Session
- }
- ?>
- <form name="fosj2Dcategoriesadd" id="fosj2Dcategoriesadd" action="osj-osj2dcategoriesadd.php" method="post" onSubmit="return ew_ValidateForm(this);">
- <p>
- <input type="hidden" name="a_add" id="a_add" value="A">
- <table class="ewTable">
- <tr class="ewTableRow">
- <td class="ewTableHeader">category id<span class='ewmsg'> *</span></td>
- <td<?php echo $osj2Dcategories->category_id->CellAttributes() ?>><span id="cb_x_category_id"></span></td>
- </tr>
- <tr class="ewTableAltRow">
- <td class="ewTableHeader">parent id<span class='ewmsg'> *</span></td>
- <td<?php echo $osj2Dcategories->parent_id->CellAttributes() ?>><span id="cb_x_parent_id">
- <select id="x_parent_id" name="x_parent_id"<?php echo $osj2Dcategories->parent_id->EditAttributes() ?>>
- <!--option value="">Please Select</option-->
- <?php
- if (is_array($osj2Dcategories->parent_id->EditValue)) {
- $arwrk = $osj2Dcategories->parent_id->EditValue;
- $rowswrk = count($arwrk);
- for ($rowcntwrk = 0; $rowcntwrk < $rowswrk; $rowcntwrk++) {
- $selwrk = (strval($osj2Dcategories->parent_id->CurrentValue) == strval($arwrk[$rowcntwrk][0])) ? " selected" : "";
- ?>
- <option value="<?php echo ew_HtmlEncode($arwrk[$rowcntwrk][0]) ?>"<?php echo $selwrk ?>>
- <?php echo $arwrk[$rowcntwrk][1] ?>
- </option>
- <?php
- }
- }
- ?>
- </select>
- </span></td>
- </tr>
- <tr class="ewTableRow">
- <td class="ewTableHeader">Category Name<span class='ewmsg'> *</span></td>
- <td<?php echo $osj2Dcategories->category_name->CellAttributes() ?>><span id="cb_x_category_name">
- <input type="text" name="x_category_name" id="x_category_name" title="Category Name" size="30" maxlength="255" value="<?php echo $osj2Dcategories->category_name->EditValue ?>"<?php echo $osj2Dcategories->category_name->EditAttributes() ?>>
- </span></td>
- </tr>
- </table>
- <p>
- <input type="submit" name="btnAction" id="btnAction" value=" Add ">
- </form>
- <script language="JavaScript" type="text/javascript">
- <!--
-
- // Write your table-specific startup script here
- // document.write("page loaded");
- //-->
-
- </script>
- <?php include "osj-footer.php" ?>
- <?php
-
- // If control is passed here, simply terminate the page without redirect
- Page_Terminate();
-
- // -----------------------------------------------------------------
- // Subroutine Page_Terminate
- // - called when exit page
- // - clean up connection and objects
- // - if url specified, redirect to url, otherwise end response
- function Page_Terminate($url = "") {
- global $conn;
-
- // Page unload event, used in current page
- Page_Unload();
-
- // Global page unloaded event (in userfn*.php)
- Page_Unloaded();
-
- // Close Connection
- $conn->Close();
-
- // Go to url if specified
- if ($url <> "") {
- ob_end_clean();
- header("Location: $url");
- }
- exit();
- }
- ?>
- <?php
-
- // Load default values
- function LoadDefaultValues() {
- global $osj2Dcategories;
- $osj2Dcategories->parent_id->CurrentValue = 0;
- }
- ?>
- <?php
-
- // Load form values
- function LoadFormValues() {
-
- // Load from form
- global $objForm, $osj2Dcategories;
- $osj2Dcategories->category_id->setFormValue($objForm->GetValue("x_category_id"));
- $osj2Dcategories->parent_id->setFormValue($objForm->GetValue("x_parent_id"));
- $osj2Dcategories->category_name->setFormValue($objForm->GetValue("x_category_name"));
- }
-
- // Restore form values
- function RestoreFormValues() {
- global $osj2Dcategories;
- $osj2Dcategories->category_id->CurrentValue = $osj2Dcategories->category_id->FormValue;
- $osj2Dcategories->parent_id->CurrentValue = $osj2Dcategories->parent_id->FormValue;
- $osj2Dcategories->category_name->CurrentValue = $osj2Dcategories->category_name->FormValue;
- }
- ?>
- <?php
-
- // Load row based on key values
- function LoadRow() {
- global $conn, $Security, $osj2Dcategories;
- $sFilter = $osj2Dcategories->SqlKeyFilter();
- if (!is_numeric($osj2Dcategories->category_id->CurrentValue)) {
- return FALSE; // Invalid key, exit
- }
- $sFilter = str_replace("@category_id@", ew_AdjustSql($osj2Dcategories->category_id->CurrentValue), $sFilter); // Replace key value
-
- // Call Row Selecting event
- $osj2Dcategories->Row_Selecting($sFilter);
-
- // Load sql based on filter
- $osj2Dcategories->CurrentFilter = $sFilter;
- $sSql = $osj2Dcategories->SQL();
- if ($rs = $conn->Execute($sSql)) {
- if ($rs->EOF) {
- $LoadRow = FALSE;
- } else {
- $LoadRow = TRUE;
- $rs->MoveFirst();
- LoadRowValues($rs); // Load row values
-
- // Call Row Selected event
- $osj2Dcategories->Row_Selected($rs);
- }
- $rs->Close();
- } else {
- $LoadRow = FALSE;
- }
- return $LoadRow;
- }
-
- // Load row values from recordset
- function LoadRowValues(&$rs) {
- global $osj2Dcategories;
- $osj2Dcategories->category_id->setDbValue($rs->fields('category_id'));
- $osj2Dcategories->parent_id->setDbValue($rs->fields('parent_id'));
- $osj2Dcategories->category_name->setDbValue($rs->fields('category_name'));
- }
- ?>
- <?php
-
- // Render row values based on field settings
- function RenderRow() {
- global $conn, $Security, $osj2Dcategories;
-
- // Call Row Rendering event
- $osj2Dcategories->Row_Rendering();
-
- // Common render codes for all row types
- // category_id
-
- $osj2Dcategories->category_id->CellCssStyle = "";
- $osj2Dcategories->category_id->CellCssClass = "";
-
- // parent_id
- $osj2Dcategories->parent_id->CellCssStyle = "";
- $osj2Dcategories->parent_id->CellCssClass = "";
-
- // category_name
- $osj2Dcategories->category_name->CellCssStyle = "";
- $osj2Dcategories->category_name->CellCssClass = "";
- if ($osj2Dcategories->RowType == EW_ROWTYPE_VIEW) { // View row
- } elseif ($osj2Dcategories->RowType == EW_ROWTYPE_ADD) { // Add row
-
- // category_id
- $osj2Dcategories->category_id->EditCustomAttributes = "";
- $osj2Dcategories->category_id->EditValue = ew_HtmlEncode($osj2Dcategories->category_id->CurrentValue);
-
- // parent_id
- $osj2Dcategories->parent_id->EditCustomAttributes = "";
- $sSqlWrk = "SELECT `category_id`, `category_name` FROM `osj-categories`";
- $sSqlWrk .= " WHERE (" . "`parent_id` = 0 OR `parent_id` = -1" . ")";
- $sSqlWrk .= " ORDER BY `category_name` ";
- $rswrk = $conn->Execute($sSqlWrk);
- $arwrk = ($rswrk) ? $rswrk->GetRows() : array();
- if ($rswrk) $rswrk->Close();
- array_unshift($arwrk, array("", "Please Select"));
- $osj2Dcategories->parent_id->EditValue = $arwrk;
-
- // category_name
- $osj2Dcategories->category_name->EditCustomAttributes = "";
- $osj2Dcategories->category_name->EditValue = ew_HtmlEncode($osj2Dcategories->category_name->CurrentValue);
- } elseif ($osj2Dcategories->RowType == EW_ROWTYPE_EDIT) { // Edit row
- } elseif ($osj2Dcategories->RowType == EW_ROWTYPE_SEARCH) { // Search row
- }
-
- // Call Row Rendered event
- $osj2Dcategories->Row_Rendered();
- }
- ?>
- <?php
-
- // Add record
- function AddRow() {
- global $conn, $Security, $osj2Dcategories;
-
- // Check for duplicate key
- $bCheckKey = TRUE;
- $sFilter = $osj2Dcategories->SqlKeyFilter();
- if (trim(strval($osj2Dcategories->category_id->CurrentValue)) == "") {
- $bCheckKey = FALSE;
- } else {
- $sFilter = str_replace("@category_id@", ew_AdjustSql($osj2Dcategories->category_id->CurrentValue), $sFilter); // Replace key value
- }
- if (!is_numeric($osj2Dcategories->category_id->CurrentValue)) {
- $bCheckKey = FALSE;
- }
- if ($bCheckKey) {
- $rsChk = $osj2Dcategories->LoadRs($sFilter);
- if ($rsChk && !$rsChk->EOF) {
- $_SESSION[EW_SESSION_MESSAGE] = "Duplicate value for primary key";
- $rsChk->Close();
- return FALSE;
- }
- }
- $rsnew = array();
-
- // Field category_id
- // Field parent_id
-
- $osj2Dcategories->parent_id->SetDbValueDef($osj2Dcategories->parent_id->CurrentValue, 0);
- $rsnew['parent_id'] =& $osj2Dcategories->parent_id->DbValue;
-
- // Field category_name
- $osj2Dcategories->category_name->SetDbValueDef($osj2Dcategories->category_name->CurrentValue, "");
- $rsnew['category_name'] =& $osj2Dcategories->category_name->DbValue;
-
- // Call Row Inserting event
- $bInsertRow = $osj2Dcategories->Row_Inserting($rsnew);
- if ($bInsertRow) {
- $conn->raiseErrorFn = 'ew_ErrorFn';
- $AddRow = $conn->Execute($osj2Dcategories->InsertSQL($rsnew));
- $conn->raiseErrorFn = '';
- } else {
- if ($osj2Dcategories->CancelMessage <> "") {
- $_SESSION[EW_SESSION_MESSAGE] = $osj2Dcategories->CancelMessage;
- $osj2Dcategories->CancelMessage = "";
- } else {
- $_SESSION[EW_SESSION_MESSAGE] = "Insert cancelled";
- }
- $AddRow = FALSE;
- }
- if ($AddRow) {
- $osj2Dcategories->category_id->setDbValue($conn->Insert_ID());
- $rsnew['category_id'] =& $osj2Dcategories->category_id->DbValue;
-
- // Call Row Inserted event
- $osj2Dcategories->Row_Inserted($rsnew);
- WriteAuditTrailOnAdd($rsnew);
- }
- return $AddRow;
- }
- ?>
- <?php
-
- // Write Audit Trail start/end for grid update
- function WriteAuditTrailDummy($typ) {
- $table = 'osj-categories';
-
- // Write Audit Trail
- $filePfx = "log";
- $curDate = date("Y/m/d");
- $curTime = date("H:i:s");
- $id = ew_ScriptName();
- $user = CurrentUserID();
- $action = $typ;
- ew_WriteAuditTrail($filePfx, $curDate, $curTime, $id, $user, $action, $table, "", "", "", "");
- }
- ?>
- <?php
-
- // Write Audit Trail (add page)
- function WriteAuditTrailOnAdd(&$rs) {
- global $osj2Dcategories;
- $table = 'osj-categories';
-
- // Get key value
- $key = "";
- if ($key <> "") $key .= EW_COMPOSITE_KEY_SEPARATOR;
- $key .= $rs['category_id'];
-
- // Write Audit Trail
- $filePfx = "log";
- $curDate = date("Y/m/d");
- $curTime = date("H:i:s");
- $id = ew_ScriptName();
- $user = CurrentUserID();
- $action = "A";
- $oldvalue = "";
- foreach (array_keys($rs) as $fldname) {
- if ($osj2Dcategories->fields[$fldname]->FldDataType <> EW_DATATYPE_BLOB) { // Ignore Blob Field
- $newvalue = ($osj2Dcategories->fields[$fldname]->FldDataType == EW_DATATYPE_MEMO) ? "<MEMO>" : $rs[$fldname]; // Memo Field
- ew_WriteAuditTrail($filePfx, $curDate, $curTime, $id, $user, $action, $table, $fldname, $key, $oldvalue, $newvalue);
- }
- }
- }
- ?>
- <?php
-
- // Page Load event
- function Page_Load() {
-
- //echo "Page Load";
- }
-
- // Page Unload event
- function Page_Unload() {
-
- //echo "Page Unload";
- }
- ?>