summaryrefslogtreecommitdiff
path: root/edit_stgrp_item.php
diff options
context:
space:
mode:
Diffstat (limited to 'edit_stgrp_item.php')
-rw-r--r--edit_stgrp_item.php57
1 files changed, 57 insertions, 0 deletions
diff --git a/edit_stgrp_item.php b/edit_stgrp_item.php
new file mode 100644
index 0000000..27066cc
--- /dev/null
+++ b/edit_stgrp_item.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * Edit the data (description) field of a stgrp liberty_xref_item entry.
+ * @package stock
+ */
+
+namespace Bitweaver\Stock;
+
+use Bitweaver\KernelTools;
+
+require_once '../kernel/includes/setup_inc.php';
+
+$gBitSystem->verifyPackage( 'stock' );
+$gBitSystem->verifyPermission( 'p_stock_admin' );
+
+global $gBitSystem, $gBitSmarty, $gBitDb;
+
+$item = trim( $_REQUEST['item'] ?? '' );
+if( !preg_match( '/^[A-Z0-9]{2,8}$/', $item ) ) {
+ $gBitSystem->fatalError( KernelTools::tra( 'Invalid item code.' ) );
+}
+
+$X = BIT_DB_PREFIX;
+
+$row = $gBitDb->getRow(
+ "SELECT `item`, `cross_ref_title`, `data`
+ FROM `{$X}liberty_xref_item`
+ WHERE `item` = ? AND `x_group` = 'stgrp' AND `content_type_guid` = 'stock'",
+ [ $item ]
+);
+if( !$row ) {
+ $gBitSystem->fatalError( KernelTools::tra( 'Stock group not found.' ) );
+}
+
+$errors = [];
+
+if( !empty( $_POST['fSave'] ) ) {
+ $data = trim( $_POST['data'] ?? '' ) ?: null;
+ $gBitDb->query(
+ "UPDATE `{$X}liberty_xref_item` SET `data` = ?
+ WHERE `item` = ? AND `x_group` = 'stgrp' AND `content_type_guid` = 'stock'",
+ [ $data, $item ]
+ );
+ header( 'Location: '.STOCK_PKG_URL.'view_kitlocker.php' );
+ die;
+}
+
+if( !empty( $_POST['fCancel'] ) ) {
+ header( 'Location: '.STOCK_PKG_URL.'view_kitlocker.php' );
+ die;
+}
+
+$gBitSmarty->assign( 'stgrpItem', $row );
+$gBitSmarty->assign( 'errors', $errors );
+
+$gBitSystem->setBrowserTitle( KernelTools::tra( 'Edit' ).': '.$row['cross_ref_title'] );
+$gBitSystem->display( 'bitpackage:stock/edit_stgrp_item.tpl', null, [ 'display_mode' => 'edit' ] );