From 5f058e57253b440bb6888832688266776f34eafd Mon Sep 17 00:00:00 2001 From: Robert Sesek Date: Wed, 12 Jul 2006 22:48:02 +0000 Subject: [PATCH] r886: Navigation added for the "Fields" tab --- admin/product.php | 31 +++++++++++++++++++++----- includes/class_admin_navigation.php | 34 +++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 5 deletions(-) diff --git a/admin/product.php b/admin/product.php index 82ac47c..5d7a860 100755 --- a/admin/product.php +++ b/admin/product.php @@ -22,6 +22,9 @@ require_once('./global.php'); require_once('./includes/functions_datastore.php'); +NavLinks::productsAdd(); +$navigator->set_focus('tab', 'products', null); + if (!can_perform('canadminversions')) { admin_login(); @@ -104,11 +107,14 @@ if ($_REQUEST['do'] == 'insertversion') if ($_REQUEST['do'] == 'addversion') { + NavLinks::productsEdit($bugsys->input_clean('productid', TYPE_UINT)); + $navigator->set_focus('link', 'products-edit-version', 'products-edit'); + $admin->page_start($lang->string('Add Version')); if ($bugsys->in['productid'] != -1) { - $product = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "product WHERE productid = " . intval($bugsys->in['productid'])); + $product = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "product WHERE productid = " . $bugsys->in['productid']); if (!is_array($product)) { $admin->error($lang->getlex('error_invalid_id')); @@ -120,7 +126,7 @@ if ($_REQUEST['do'] == 'addversion') } $admin->form_start('product.php', 'insertversion'); - $admin->form_hidden_field('productid', intval($bugsys->in['productid'])); + $admin->form_hidden_field('productid', $bugsys->in['productid']); $admin->table_start(); $admin->table_head($lang->string('Add New Version'), 2, 'products_and_versions'); $admin->row_input($lang->string('Version Number
This is the version string for this product.
'), 'version'); @@ -224,10 +230,20 @@ if ($_REQUEST['do'] == 'insertproduct') if ($_REQUEST['do'] == 'addproduct') { + if ($bugsys->input_clean('productid', TYPE_UINT)) + { + NavLinks::productsEdit($bugsys->in['productid']); + } + else + { + NavLinks::productsAdd(); + } + $navigator->set_focus('link', 'products-add', 'products'); + $admin->page_start($lang->string('Add New Product')); $admin->form_start('product.php', 'insertproduct'); - $admin->form_hidden_field('componentmother', intval($bugsys->in['productid'])); + $admin->form_hidden_field('componentmother', $bugsys->in['productid']); $admin->table_start(); $admin->table_head($lang->string('Add Product'), 2, 'products_and_versions'); $admin->row_input($lang->string('Title'), 'title'); @@ -264,9 +280,12 @@ if ($_REQUEST['do'] == 'updateproduct') if ($_REQUEST['do'] == 'editproduct') { + NavLinks::productsEdit($bugsys->input_clean('productid', TYPE_UINT)); + $navigator->set_focus('link', 'products-edit', 'products-edit'); + $admin->page_start($lang->string('Edit Product')); - $product = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "product WHERE productid = " . intval($bugsys->in['productid'])); + $product = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "product WHERE productid = " . $bugsys->in['productid']); if (!is_array($product)) { $admin->error($lang->getlex('error_invalid_id')); @@ -309,6 +328,8 @@ if ($_POST['do'] == 'displayorder') if ($_REQUEST['do'] == 'modify') { + $navigator->set_focus('link', 'products-manage', 'products'); + $admin->page_start($lang->string('Products and Versions')); $javascript = <<row_submit('[' . $lang->string('Add New Product') . ']', $lang->string('Save Display Order'), null); + $admin->row_submit(null, $lang->string('Save Display Order'), null); $admin->table_end(); diff --git a/includes/class_admin_navigation.php b/includes/class_admin_navigation.php index 73d222d..a44425b 100644 --- a/includes/class_admin_navigation.php +++ b/includes/class_admin_navigation.php @@ -95,6 +95,40 @@ class NavLinks $navigator->add_component('section', 'options-userhelp', 'options', $lang->string('User Help Items'), null); $navigator->add_component('link', 'options-userhelp-add', 'options-userhelp', $lang->string('Add New Item'), 'userhelp.php?do=add'); } + + // ################################################################### + /** + * Adding a new product + * + * @access public + */ + function productsAdd() + { + global $navigator, $lang; + + $navigator->add_component('section', 'products', 'products', $lang->string('Products'), null); + $navigator->add_component('link', 'products-manage', 'products', $lang->string('Manage Products'), 'product.php'); + $navigator->add_component('link', 'products-add', 'products', $lang->string('Add New Product'), 'product.php?do=addproduct'); + } + + // ################################################################### + /** + * Editing a product + * + * @access public + * + * @param integer Product ID + */ + function productsEdit($id) + { + global $navigator, $lang; + + NavLinks::productsAdd(); + $navigator->add_component('section', 'products-edit', 'products', $lang->string('Edit Product'), null); + $navigator->add_component('link', 'products-edit', 'products-edit', $lang->string('Edit Product'), 'product.php?do=editproduct&productid=' . $id); + $navigator->add_component('link', 'products-edit-version', 'products-edit', $lang->string('Add New Version'), 'product.php?do=addversion&productid=' . $id); + $navigator->add_component('link', 'products-edit-delete', 'products-edit', $lang->string('Delete Product'), 'product.php?do=deleteproduct&productid=' . $id); + } } /*=====================================================================*\ -- 2.22.5