Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
bugzilla
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
bugzilla
Commits
d9548f66
Commit
d9548f66
authored
Jun 16, 2006
by
lpsolit%gmail.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 328438: Eliminate @::log_columns - Patch by Max Kanat-Alexander…
Bug 328438: Eliminate @::log_columns - Patch by Max Kanat-Alexander <mkanat@bugzilla.org> r=LpSolit a=myk
parent
f35e18b5
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
27 additions
and
24 deletions
+27
-24
Bug.pm
Bugzilla/Bug.pm
+14
-0
BugMail.pm
Bugzilla/BugMail.pm
+1
-1
customization.xml
docs/xml/customization.xml
+3
-4
globals.pl
globals.pl
+0
-12
process_bug.cgi
process_bug.cgi
+7
-5
query.cgi
query.cgi
+2
-2
No files found.
Bugzilla/Bug.pm
View file @
d9548f66
...
...
@@ -54,6 +54,7 @@ use base qw(Exporter);
RemoveVotes CheckIfVotedConfirmed
LogActivityEntry
is_open_state
editable_bug_fields
)
;
#####################################################################
...
...
@@ -731,6 +732,19 @@ sub AppendComment {
$dbh
->
do
(
"UPDATE bugs SET delta_ts = ? WHERE bug_id = ?"
,
undef
,
$timestamp
,
$bugid
);
}
# Represents which fields from the bugs table are handled by process_bug.cgi.
sub
editable_bug_fields
{
my
@fields
=
Bugzilla
->
dbh
->
bz_table_columns
(
'bugs'
);
foreach
my
$remove
(
"bug_id"
,
"creation_ts"
,
"delta_ts"
,
"lastdiffed"
)
{
my
$location
=
lsearch
(
\
@fields
,
$remove
);
splice
(
@fields
,
$location
,
1
);
}
# Sorted because the old @::log_columns variable, which this replaces,
# was sorted.
return
sort
(
@fields
);
}
# This method is private and is not to be used outside of the Bug class.
sub
EmitDependList
{
my
(
$myfield
,
$targetfield
,
$bug_id
)
=
(
@_
);
...
...
Bugzilla/BugMail.pm
View file @
d9548f66
...
...
@@ -131,7 +131,7 @@ sub ProcessOneBug {
}
my
%
values
=
%
{
$dbh
->
selectrow_hashref
(
'SELECT '
.
join
(
','
,
@::log_columns
)
.
',
'SELECT '
.
join
(
','
,
editable_bug_fields
()
)
.
',
lastdiffed AS start, LOCALTIMESTAMP(0) AS end
FROM bugs WHERE bug_id = ?'
,
undef
,
$id
)};
...
...
docs/xml/customization.xml
View file @
d9548f66
...
...
@@ -748,10 +748,9 @@
</warning>
<para>
For a list of possible field names, look in
<filename>
data/versioncache
</filename>
for the list called
<filename>
@::log_columns
</filename>
. If you need help writing custom
rules for your organization, ask in the newsgroup.
For a list of possible field names, look at the bugs table in the
database. If you need help writing custom rules for your organization,
ask in the newsgroup.
</para>
</section>
...
...
globals.pl
View file @
d9548f66
...
...
@@ -72,16 +72,6 @@ use File::Spec;
sub
GenerateVersionTable
{
my
$dbh
=
Bugzilla
->
dbh
;
@::log_columns
=
$dbh
->
bz_table_columns
(
'bugs'
);
foreach
my
$i
(
"bug_id"
,
"creation_ts"
,
"delta_ts"
,
"lastdiffed"
)
{
my
$w
=
lsearch
(
\
@::log_columns
,
$i
);
if
(
$w
>=
0
)
{
splice
(
@::log_columns
,
$w
,
1
);
}
}
@::log_columns
=
(
sort
(
@::log_columns
));
@::legal_priority
=
get_legal_field_values
(
"priority"
);
@::legal_severity
=
get_legal_field_values
(
"bug_severity"
);
@::legal_platform
=
get_legal_field_values
(
"rep_platform"
);
...
...
@@ -116,8 +106,6 @@ sub GenerateVersionTable {
print
$fh
"#\n"
;
require
Data::
Dumper
;
print
$fh
(
Data::
Dumper
->
Dump
([
\
@::log_columns
],
[
'*::log_columns'
]));
print
$fh
(
Data::
Dumper
->
Dump
([
\
@::legal_priority
,
\
@::legal_severity
,
\
@::legal_platform
,
\
@::legal_opsys
,
...
...
process_bug.cgi
View file @
d9548f66
...
...
@@ -83,6 +83,8 @@ my $template = Bugzilla->template;
my
$vars
=
{};
$vars
->
{
'use_keywords'
}
=
1
if
Bugzilla::Keyword::
keyword_count
();
my
@editable_bug_fields
=
editable_bug_fields
();
my
$requiremilestone
=
0
;
######################################################################
...
...
@@ -1380,7 +1382,7 @@ my $delta_ts;
sub
SnapShotBug
{
my
(
$id
)
=
(
@_
);
my
@row
=
$dbh
->
selectrow_array
(
q{SELECT delta_ts, }
.
join
(
','
,
@
::log_column
s
)
.
q{ FROM bugs WHERE bug_id = ?}
,
join
(
','
,
@
editable_bug_field
s
)
.
q{ FROM bugs WHERE bug_id = ?}
,
undef
,
$id
);
$delta_ts
=
shift
@row
;
...
...
@@ -1544,7 +1546,7 @@ foreach my $id (@idlist) {
my
@oldvalues
=
SnapShotBug
(
$id
);
my
%
oldhash
;
my
%
formhash
;
foreach
my
$col
(
@
::log_column
s
)
{
foreach
my
$col
(
@
editable_bug_field
s
)
{
# Consider NULL db entries to be equivalent to the empty string
$oldvalues
[
$i
]
=
defined
(
$oldvalues
[
$i
])
?
$oldvalues
[
$i
]
:
''
;
# Convert the deadline taken from the DB into the YYYY-MM-DD format
...
...
@@ -1570,7 +1572,7 @@ foreach my $id (@idlist) {
$formhash
{
'bug_status'
}
=
$oldhash
{
'bug_status'
};
}
}
foreach
my
$col
(
@
::log_column
s
)
{
foreach
my
$col
(
@
editable_bug_field
s
)
{
# The 'resolution' field is checked by ChangeResolution(),
# i.e. only if we effectively use it.
next
if
(
$col
eq
'resolution'
);
...
...
@@ -2046,7 +2048,7 @@ foreach my $id (@idlist) {
my
@newvalues
=
SnapShotBug
(
$id
);
my
%
newhash
;
$i
=
0
;
foreach
my
$col
(
@
::log_column
s
)
{
foreach
my
$col
(
@
editable_bug_field
s
)
{
# Consider NULL db entries to be equivalent to the empty string
$newvalues
[
$i
]
=
defined
(
$newvalues
[
$i
])
?
$newvalues
[
$i
]
:
''
;
# Convert the deadline to the YYYY-MM-DD format.
...
...
@@ -2065,7 +2067,7 @@ foreach my $id (@idlist) {
# $msgs will store emails which have to be sent to voters, if any.
my
$msgs
;
foreach
my
$c
(
@
::log_column
s
)
{
foreach
my
$c
(
@
editable_bug_field
s
)
{
my
$col
=
$c
;
# We modify it, don't want to modify array
# values in place.
my
$old
=
shift
@oldvalues
;
...
...
query.cgi
View file @
d9548f66
...
...
@@ -30,6 +30,7 @@ use lib ".";
require
"globals.pl"
;
use
Bugzilla::
Bug
;
use
Bugzilla::
Constants
;
use
Bugzilla::
Search
;
use
Bugzilla::
User
;
...
...
@@ -44,7 +45,6 @@ use vars qw(
@legal_platform
@legal_priority
@legal_severity
@log_columns
)
;
my
$cgi
=
Bugzilla
->
cgi
;
...
...
@@ -253,7 +253,7 @@ push @chfields, "[Bug creation]";
# This is what happens when you have variables whose definition depends
# on the DB schema, and then the underlying schema changes...
foreach
my
$val
(
@::log_columns
)
{
foreach
my
$val
(
editable_bug_fields
()
)
{
if
(
$val
eq
'classification_id'
)
{
$val
=
'classification'
;
}
elsif
(
$val
eq
'product_id'
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment