From: lpsolit%gmail.com <> Date: Sun, 26 Feb 2006 07:40:23 +0000 (+0000) Subject: Bug 225162: We need a UI for viewing the profiles_activity table - Patch by GavinS... X-Git-Tag: bugzilla-2.23.1~129 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=315ca19d2b96f7a0516fe7f0b611a48edae75824;p=thirdparty%2Fbugzilla.git Bug 225162: We need a UI for viewing the profiles_activity table - Patch by GavinS r=LpSolit a=justdave --- diff --git a/editusers.cgi b/editusers.cgi index 47b51c4cbf..6e56a38478 100755 --- a/editusers.cgi +++ b/editusers.cgi @@ -17,6 +17,8 @@ # Lance Larsh # Frédéric Buclin # David Lawrence +# Vlad Dascalu +# Gavin Shelley use strict; use lib "."; @@ -730,6 +732,29 @@ if ($action eq 'search') { Bugzilla::BugMail::Send($_); } +########################################################################### +} elsif ($action eq 'activity') { + my $otherUser = check_user($otherUserID, $otherUserLogin); + + $vars->{'profile_changes'} = $dbh->selectall_arrayref( + "SELECT profiles.login_name AS who, " . + $dbh->sql_date_format('profiles_activity.profiles_when') . " AS activity_when, + fielddefs.description AS what, + profiles_activity.oldvalue AS removed, + profiles_activity.newvalue AS added + FROM profiles_activity + INNER JOIN profiles ON profiles_activity.who = profiles.userid + INNER JOIN fielddefs ON fielddefs.fieldid = profiles_activity.fieldid + WHERE profiles_activity.userid = ? + ORDER BY profiles_activity.profiles_when", + {'Slice' => {}}, + $otherUser->id); + + $vars->{'otheruser'} = $otherUser; + + $template->process("account/profile-activity.html.tmpl", $vars) + || ThrowTemplateError($template->error()); + ########################################################################### } else { $vars->{'action'} = $action; diff --git a/template/en/default/account/profile-activity.html.tmpl b/template/en/default/account/profile-activity.html.tmpl new file mode 100644 index 0000000000..af2d00f5b3 --- /dev/null +++ b/template/en/default/account/profile-activity.html.tmpl @@ -0,0 +1,88 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Vlad Dascalu + # Gavin Shelley + #%] + +[%# INTERFACE: + # otheruser: Bugzilla User Object; The user whose profile activity + # we are viewing. + # + # listselectionvalues: selection values to recreate the current user list. + # + # profile_changes: An array of hashes containing the following fields: + # + # who: string; login name of who made the change + # activity_when: string; when the change was made + # what: string; the description of the field which was changed + # removed: string; the removed value (maybe empty string) + # added: string; the added value (maybe empty string) + #%] + +[% title = BLOCK %] + View User Account Log for '[% otheruser.login FILTER html %]' +[% END %] + + +[% PROCESS global/header.html.tmpl + title = title +%] + +[% PROCESS admin/users/listselectvars.html.tmpl + listselectionvalues = listselectionvalues +%] + +

+ +[% columns = + [{name => 'who' + heading => 'Who' + } + {name => 'activity_when' + heading => 'When' + } + {name => 'what' + heading => 'What' + } + {name => 'removed' + heading => 'Removed' + } + {name => 'added' + heading => 'Added' + } + ] +%] + +[% PROCESS admin/table.html.tmpl + columns = columns + data = profile_changes +%] + +

Edit this user or + find other accounts + [% IF listselectionvalues.matchtype != 'exact' %] + or go back + to the user list + [% END %] +

+ +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/users/edit.html.tmpl b/template/en/default/admin/users/edit.html.tmpl index ce593ee65b..dee1284066 100644 --- a/template/en/default/admin/users/edit.html.tmpl +++ b/template/en/default/admin/users/edit.html.tmpl @@ -105,6 +105,10 @@ [% INCLUDE listselectionhiddenfields %] + + or View this user's account log

diff --git a/template/en/default/admin/users/list.html.tmpl b/template/en/default/admin/users/list.html.tmpl index 9cbd7530db..4b483e33d8 100644 --- a/template/en/default/admin/users/list.html.tmpl +++ b/template/en/default/admin/users/list.html.tmpl @@ -44,6 +44,12 @@ heading => 'Real name' allow_html_content => 1 } + {heading => 'User Account Log' + content => 'View' + contentlink => 'editusers.cgi?action=activity' _ + '&userid=%%userid%%' _ + listselectionurlparams + } ] %]