$vars->{'show_quips'} = 1;
}
+if ($action eq "edit") {
+ if (!UserInGroup('admin')) {
+ ThrowUserError("quips_edit_denied");
+ }
+ # Read in the entire quip list
+ SendSQL("SELECT quipid,userid,quip FROM quips");
+
+ my $quips;
+ my @quipids;
+ while (MoreSQLData()) {
+ my ($quipid, $userid, $quip) = FetchSQLData();
+ $quips->{$quipid} = {'userid' => $userid, 'quip' => $quip};
+ push(@quipids, $quipid);
+ }
+
+ my $users;
+ foreach my $quipid (@quipids) {
+ if (not defined $users->{$userid}) {
+ SendSQL("SELECT login_name FROM profiles WHERE userid = $userid");
+ $users->{$userid} = FetchSQLData();
+ }
+ }
+ $vars->{'quipids'} = \@quipids;
+ $vars->{'quips'} = $quips;
+ $vars->{'users'} = $users;
+ $vars->{'edit_quips'} = 1;
+}
+
if ($action eq "add") {
(Param('enablequips') eq "on") || ThrowUserError("no_new_quips");
$vars->{'added_quip'} = $comment;
}
+if ($action eq "delete") {
+ if (!UserInGroup('admin')) {
+ ThrowUserError("quips_edit_denied");
+ }
+ my $quipid = $::FORM{"quipid"};
+ ThrowCodeError("need_quipid") unless $quipid =~ /(\d+)/;
+ $quipid = $1;
+
+ SendSQL("SELECT quip FROM quips WHERE quipid = $quipid");
+ $vars->{'deleted_quip'} = FetchSQLData();
+ SendSQL("DELETE FROM quips WHERE quipid = $quipid");
+}
+
print "Content-type: text/html\n\n";
$template->process("list/quips.html.tmpl", $vars)
|| ThrowTemplateError($template->error());
[% ELSIF error == "need_quip" %]
[% title = "Quip Required" %]
Please enter a quip in the text field.
-
+
[% ELSIF error == "new_password_missing" %]
[% title = "New Password Missing" %]
You must enter a new password.
[% title = "Quips Disabled" %]
Quips are disabled.
+ [% ELSIF error == "quips_edit_denied" %]
+ [% title = "Permission Denied" %]
+ You do not have permission to edit quips.
+
[% ELSIF error == "reassign_to_empty" %]
[% title = "Illegal Reassignment" %]
You cannot reassign to a bug to nobody. Unless you
</p>
[% END %]
+[% IF deleted_quip %]
+ <p>
+ <font color="red">
+ The quip '<tt>[% deleted_quip FILTER html %]</tt>' has been deleted.
+ </font>
+ </p>
+[% END %]
+
<p>
Bugzilla will pick a random quip for the headline on each bug list, and
you can extend the quip list. Type in something clever or funny or boring
<li>[% quip FILTER html %]</li>
[% END %]
</ul>
+[% ELSIF edit_quips %]
+ <h2>Edit existing quips:</h2>
+ <table border="1">
+ <thead><tr>
+ <th>Action</th>
+ <th>User</th>
+ <th>Quip</th>
+ </tr></thead><tbody>
+ [% FOREACH quipid = quipids %]
+ <tr>
+ <td>
+ <a href="quips.cgi?action=delete&quipid=[% quipid FILTER uri%]">
+ Delete
+ </a>
+ </td>
+ <td>
+ [% userid = quips.$quipid.userid %]
+ [% users.$userid FILTER html %]
+ [% "Unknown" IF NOT users.$userid %]
+ </td>
+ <td>[% quips.$quipid.quip FILTER html %]</td>
+ </tr>
+ [% END %]
+ </tbody></table>
[% ELSE %]
<p>
Those who like their wisdom in large doses can
<a href="quips.cgi?action=show">view the whole quip list</a>.
</p>
+ [% IF UserInGroup('admin') %]
+ <p><a href="quips.cgi?action=edit">Edit</a> the quip list.</p>
+ [% END %]
[% END %]
[% PROCESS global/footer.html.tmpl %]