aboutsummaryrefslogtreecommitdiff
path: root/CGI.pl
diff options
context:
space:
mode:
Diffstat (limited to 'CGI.pl')
-rw-r--r--CGI.pl109
1 files changed, 0 insertions, 109 deletions
diff --git a/CGI.pl b/CGI.pl
index 27e9fab26..73df77695 100644
--- a/CGI.pl
+++ b/CGI.pl
@@ -232,115 +232,6 @@ sub LogActivityEntry {
}
}
-sub GetBugActivity {
- my ($id, $starttime) = (@_);
- my $datepart = "";
- my $dbh = Bugzilla->dbh;
-
- die "Invalid id: $id" unless $id=~/^\s*\d+\s*$/;
-
- if (defined $starttime) {
- $datepart = "AND bugs_activity.bug_when > " . SqlQuote($starttime);
- }
- my $suppjoins = "";
- my $suppwhere = "";
- if (Param("insidergroup") && !UserInGroup(Param('insidergroup'))) {
- $suppjoins = "LEFT JOIN attachments
- ON attachments.attach_id = bugs_activity.attach_id";
- $suppwhere = "AND COALESCE(attachments.isprivate, 0) = 0";
- }
- my $query = "
- SELECT COALESCE(fielddefs.description, "
- # This is a hack - PostgreSQL requires both COALESCE
- # arguments to be of the same type, and this is the only
- # way supported by both MySQL 3 and PostgreSQL to convert
- # an integer to a string. MySQL 4 supports CAST.
- . $dbh->sql_string_concat('bugs_activity.fieldid', q{''}) .
- "), fielddefs.name, bugs_activity.attach_id, " .
- $dbh->sql_date_format('bugs_activity.bug_when', '%Y.%m.%d %H:%i:%s') .
- ", bugs_activity.removed, bugs_activity.added, profiles.login_name
- FROM bugs_activity
- $suppjoins
- LEFT JOIN fielddefs
- ON bugs_activity.fieldid = fielddefs.fieldid
- INNER JOIN profiles
- ON profiles.userid = bugs_activity.who
- WHERE bugs_activity.bug_id = $id
- $datepart
- $suppwhere
- ORDER BY bugs_activity.bug_when";
-
- SendSQL($query);
-
- my @operations;
- my $operation = {};
- my $changes = [];
- my $incomplete_data = 0;
-
- while (my ($field, $fieldname, $attachid, $when, $removed, $added, $who)
- = FetchSQLData())
- {
- my %change;
- my $activity_visible = 1;
-
- # check if the user should see this field's activity
- if ($fieldname eq 'remaining_time' ||
- $fieldname eq 'estimated_time' ||
- $fieldname eq 'work_time' ||
- $fieldname eq 'deadline') {
-
- if (!UserInGroup(Param('timetrackinggroup'))) {
- $activity_visible = 0;
- } else {
- $activity_visible = 1;
- }
- } else {
- $activity_visible = 1;
- }
-
- if ($activity_visible) {
- # This gets replaced with a hyperlink in the template.
- $field =~ s/^Attachment// if $attachid;
-
- # Check for the results of an old Bugzilla data corruption bug
- $incomplete_data = 1 if ($added =~ /^\?/ || $removed =~ /^\?/);
-
- # An operation, done by 'who' at time 'when', has a number of
- # 'changes' associated with it.
- # If this is the start of a new operation, store the data from the
- # previous one, and set up the new one.
- if ($operation->{'who'}
- && ($who ne $operation->{'who'}
- || $when ne $operation->{'when'}))
- {
- $operation->{'changes'} = $changes;
- push (@operations, $operation);
-
- # Create new empty anonymous data structures.
- $operation = {};
- $changes = [];
- }
-
- $operation->{'who'} = $who;
- $operation->{'when'} = $when;
-
- $change{'field'} = $field;
- $change{'fieldname'} = $fieldname;
- $change{'attachid'} = $attachid;
- $change{'removed'} = $removed;
- $change{'added'} = $added;
- push (@$changes, \%change);
- }
- }
-
- if ($operation->{'who'}) {
- $operation->{'changes'} = $changes;
- push (@operations, $operation);
- }
-
- return(\@operations, $incomplete_data);
-}
-
############# Live code below here (that is, not subroutine defs) #############
use Bugzilla;