From 5c377e30d41de59b2c00beaea45710445e70f2c9 Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Tue, 8 Aug 2006 05:13:59 +0000 Subject: [PATCH] =?utf8?q?Bug=20347521:=20flagtypes.id=20should=20be=20an?= =?utf8?q?=20auto-increment=20field=20-=20Patch=20by=20Fr=C3=A9d=C3=A9ric?= =?utf8?q?=20Buclin=20=20r=3Dbkor=20a=3Dmyk?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- Bugzilla/DB/Schema.pm | 2 +- Bugzilla/Install/DB.pm | 4 ++++ editflagtypes.cgi | 12 ++++++------ 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/Bugzilla/DB/Schema.pm b/Bugzilla/DB/Schema.pm index 5e5b23bab8..e997e41873 100644 --- a/Bugzilla/DB/Schema.pm +++ b/Bugzilla/DB/Schema.pm @@ -397,7 +397,7 @@ use constant ABSTRACT_SCHEMA => { # "flagtypes" defines the types of flags that can be set. flagtypes => { FIELDS => [ - id => {TYPE => 'INT2', NOTNULL => 1, + id => {TYPE => 'SMALLSERIAL', NOTNULL => 1, PRIMARYKEY => 1}, name => {TYPE => 'varchar(50)', NOTNULL => 1}, description => {TYPE => 'TEXT'}, diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm index 5fe84a4f45..dfe7f957a7 100644 --- a/Bugzilla/Install/DB.pm +++ b/Bugzilla/Install/DB.pm @@ -464,6 +464,10 @@ sub update_table_definitions { $dbh->bz_drop_column('profiles', 'refreshed_when'); $dbh->bz_drop_column('groups', 'last_changed'); + # 2006-08-06 LpSolit@gmail.com - Bug 347521 + $dbh->bz_alter_column('flagtypes', 'id', + {TYPE => 'SMALLSERIAL', NOTNULL => 1, PRIMARYKEY => 1}); + ################################################################ # New --TABLE-- changes should go *** A B O V E *** this point # ################################################################ diff --git a/editflagtypes.cgi b/editflagtypes.cgi index 3c71d5bdbe..622cfcb051 100755 --- a/editflagtypes.cgi +++ b/editflagtypes.cgi @@ -306,22 +306,22 @@ sub insert { 'components READ', 'flaginclusions WRITE', 'flagexclusions WRITE'); - # Determine the new flag type's unique identifier. - my $id = $dbh->selectrow_array('SELECT MAX(id) FROM flagtypes') + 1; - # Insert a record for the new flag type into the database. $dbh->do('INSERT INTO flagtypes - (id, name, description, cc_list, target_type, + (name, description, cc_list, target_type, sortkey, is_active, is_requestable, is_requesteeble, is_multiplicable, grant_group_id, request_group_id) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)', - undef, ($id, $name, $description, $cc_list, $target_type, + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)', + undef, ($name, $description, $cc_list, $target_type, $cgi->param('sortkey'), $cgi->param('is_active'), $cgi->param('is_requestable'), $cgi->param('is_requesteeble'), $cgi->param('is_multiplicable'), scalar($cgi->param('grant_gid')), scalar($cgi->param('request_gid')))); + # Get the ID of the new flag type. + my $id = $dbh->bz_last_key('flagtypes', 'id'); + # Populate the list of inclusions/exclusions for this flag type. validateAndSubmit($id); -- 2.47.2