From 5aa463bd4ff591c26353ac61e1c83ae76363d113 Mon Sep 17 00:00:00 2001 From: Robert Sesek Date: Mon, 17 Jul 2006 00:29:19 +0000 Subject: [PATCH] r892: Adding and implementing ResolutionAPI --- admin/resolution.php | 38 ++++++++++++++------- includes/api_resolution.php | 67 +++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+), 12 deletions(-) create mode 100644 includes/api_resolution.php diff --git a/admin/resolution.php b/admin/resolution.php index aac8f4a..f615031 100755 --- a/admin/resolution.php +++ b/admin/resolution.php @@ -21,6 +21,7 @@ require_once('./global.php'); require_once('./includes/functions_datastore.php'); +require_once('./includes/api_resolution.php'); if (!can_perform('canadminfields')) { @@ -38,7 +39,11 @@ if (empty($_REQUEST['do'])) if ($_REQUEST['do'] == 'kill') { - $db->query("DELETE FROM " . TABLE_PREFIX . "resolution WHERE resolutionid = " . $bugsys->input_clean('resolutionid', TYPE_UINT)); + $resolution = new ResolutionAPI($bugsys); + $resolution->set('resolutionid', $bugsys->in['resolutionid']); + $resolution->set_condition(); + $resolution->delete(); + build_resolutions(); $admin->redirect('resolution.php?do=modify'); } @@ -54,7 +59,11 @@ if ($_REQUEST['do'] == 'delete') if ($_POST['do'] == 'insert') { - $db->query("INSERT INTO " . TABLE_PREFIX . "resolution (resolution, displayorder) VALUES ('" . $bugsys->in['resolution'] . "', " . $bugsys->input_clean('displayorder', TYPE_UINT) . ")"); + $resolution = new ResolutionAPI($bugsys); + $resolution->set('resolution', $bugsys->in['resolution']); + $resolution->set('displayorder', $bugsys->in['displayorder']); + $resolution->insert(); + build_resolutions(); $admin->redirect('resolution.php?do=modify'); } @@ -81,7 +90,13 @@ if ($_REQUEST['do'] == 'add') if ($_POST['do'] == 'update') { - $db->query("UPDATE " . TABLE_PREFIX . "resolution SET resolution = '" . $bugsys->in['resolution'] . "', displayorder = " . $bugsys->input_clean('displayorder']) . " WHERE resolutionid = " . intval1($bugsys->in['resolutionid', TYPE_UINT)); + $resolution = new ResolutionAPI($bugsys); + $resolution->set('resolutionid', $bugsys->in['resolutionid']); + $resolution->set_condition(); + $resolution->set('resolution', $bugsys->in['resolution']); + $resolution->set('displayorder', $bugsys->in['displayorder']); + $resolution->update(); + build_resolutions(); $admin->redirect('resolution.php?do=modify'); } @@ -90,20 +105,19 @@ if ($_POST['do'] == 'update') if ($_REQUEST['do'] == 'edit') { - $resolution = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "resolution WHERE resolutionid = " . $bugsys->input_clean('resolutionid', TYPE_UINT)); - if (!is_array($resolution)) - { - $admin->error($lang->getlex('error_invalid_id')); - } + $resolution = new ResolutionAPI($bugsys); + $resolution->set('resolutionid', $bugsys->in['resolutionid']); + $resolution->set_condition(); + $resolution->fetch(); $admin->page_start($lang->string('Edit Resolution'), 2, 'standard_bug_fields'); $admin->form_start('resolution.php', 'update'); - $admin->form_hidden_field('resolutionid', $resolution['resolutionid']); + $admin->form_hidden_field('resolutionid', $resolution->objdata['resolutionid']); $admin->table_start(); - $admin->table_head(sprintf($lang->string('Edit Resolution - %1$s (id: %2$s)'), $resolution['resolution'], $resolution['resolutionid'])); - $admin->row_input($lang->string('Resolution Title
The title of this resolution flag (eg: `Fixed` or `Bogus`)
'), 'resolution', $resolution['resolution']); - $admin->row_input($lang->string('Display Order
The order in which the resolutions are displayed. The higher the number, the lower down in the list it is.
'), 'displayorder', $resolution['displayorder']); + $admin->table_head(sprintf($lang->string('Edit Resolution - %1$s (id: %2$s)'), $resolution->objdata['resolution'], $resolution->objdata['resolutionid'])); + $admin->row_input($lang->string('Resolution Title
The title of this resolution flag (eg: `Fixed` or `Bogus`)
'), 'resolution', $resolution->objdata['resolution']); + $admin->row_input($lang->string('Display Order
The order in which the resolutions are displayed. The higher the number, the lower down in the list it is.
'), 'displayorder', $resolution->objdata['displayorder']); $admin->row_submit(); $admin->table_end(); $admin->form_end(); diff --git a/includes/api_resolution.php b/includes/api_resolution.php new file mode 100644 index 0000000..79599a9 --- /dev/null +++ b/includes/api_resolution.php @@ -0,0 +1,67 @@ +load('api', null); + +/** +* API: Resolution +* +* @author Iris Studios, Inc. +* @copyright Copyright ©2002 - [#]year[#], Iris Studios, Inc. +* @version $Revision$ +* @package Bugdar +* +*/ +class ResolutionAPI extends API +{ + /** + * Fields + * @var array + * @access private + */ + var $fields = array( + 'resolutionid' => array(TYPE_UINT, REQ_AUTO, 'verify_nozero'), + 'resolution' => array(TYPE_STR, REQ_YES, 'verify_noempty'), + 'displayorder' => array(TYPE_INT, REQ_NO) + ); + + /** + * Database table + * @var string + * @access private + */ + var $table = 'resolution'; + + /** + * Table prefix + * @var string + * @access private + */ + var $prefix = TABLE_PREFIX; +} + +/*=====================================================================*\ +|| ################################################################### +|| # $HeadURL$ +|| # $Id$ +|| ################################################################### +\*=====================================================================*/ +?> \ No newline at end of file -- 2.22.5