aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlpsolit%gmail.com <>2007-01-18 06:27:09 +0000
committerlpsolit%gmail.com <>2007-01-18 06:27:09 +0000
commit7c0b9e7f84e5f10adc9df3a2590eef6d266b673a (patch)
treeb23a3d1cd6e922afebd6b16bff6f8c7fd6d1562a
parent8a33252e3ac8d46230f3bf63eaef2b717900a878 (diff)
downloadbugs-7c0b9e7f84e5f10adc9df3a2590eef6d266b673a.tar
bugs-7c0b9e7f84e5f10adc9df3a2590eef6d266b673a.tar.gz
bugs-7c0b9e7f84e5f10adc9df3a2590eef6d266b673a.tar.bz2
bugs-7c0b9e7f84e5f10adc9df3a2590eef6d266b673a.tar.xz
bugs-7c0b9e7f84e5f10adc9df3a2590eef6d266b673a.zip
Bug 299405: Attachments don't work if you need to log in again [ Undefined subroutine @ Fh::slice ] - Patch by Frédéric Buclin <LpSolit@gmail.com> r/a=justdave
-rw-r--r--skins/standard/global.css8
-rw-r--r--template/en/default/account/auth/login.html.tmpl5
-rw-r--r--template/en/default/bug/create/confirm-create-dupe.html.tmpl5
-rw-r--r--template/en/default/global/confirm-user-match.html.tmpl5
-rw-r--r--template/en/default/global/hidden-fields.html.tmpl22
5 files changed, 41 insertions, 4 deletions
diff --git a/skins/standard/global.css b/skins/standard/global.css
index b85a9e277..7504cb0fb 100644
--- a/skins/standard/global.css
+++ b/skins/standard/global.css
@@ -281,6 +281,14 @@ dl dl > dt {
border-top: none;
}
+.box {
+ border: 1px solid black;
+ color: black;
+ background-color: #ffc;
+ margin: 1em;
+ padding: 0.5em 1em;
+}
+
/* Rules specific for printing */
@media print {
#header, #footer {
diff --git a/template/en/default/account/auth/login.html.tmpl b/template/en/default/account/auth/login.html.tmpl
index 15ec4a477..f57efc113 100644
--- a/template/en/default/account/auth/login.html.tmpl
+++ b/template/en/default/account/auth/login.html.tmpl
@@ -31,11 +31,14 @@
onload = "document.forms['login'].Bugzilla_login.focus()"
%]
+[% USE Bugzilla %]
+
<p>
I need a legitimate login and password to continue.
</p>
-<form name="login" action="[% target FILTER html %]" method="POST">
+<form name="login" action="[% target FILTER html %]" method="POST"
+[%- IF Bugzilla.cgi.param("data") %] enctype="multipart/form-data"[% END %]>
<table>
<tr>
<th align="right"><label for="Bugzilla_login">Login:</label></th>
diff --git a/template/en/default/bug/create/confirm-create-dupe.html.tmpl b/template/en/default/bug/create/confirm-create-dupe.html.tmpl
index 47d2ae916..9c2b3dbc2 100644
--- a/template/en/default/bug/create/confirm-create-dupe.html.tmpl
+++ b/template/en/default/bug/create/confirm-create-dupe.html.tmpl
@@ -27,6 +27,8 @@
title = "Already filed $terms.bug"
%]
+[% USE Bugzilla %]
+
<table cellpadding="20">
<tr>
<td bgcolor="#ff0000">
@@ -44,7 +46,8 @@ FILTER bug_link(bugid) FILTER none %].</font></p>
<p>If you are sure you used the same form to submit a new [% terms.bug %],
click 'File [% terms.bug %] again'.<p>
- <form name="create" id="create" method="post" action="post_bug.cgi">
+ <form name="create" id="create" method="post" action="post_bug.cgi"
+ [%- IF Bugzilla.cgi.param("data") %] enctype="multipart/form-data"[% END %]>
[% PROCESS "global/hidden-fields.html.tmpl"
exclude="^(Bugzilla_login|Bugzilla_password|ignore_token)$" %]
<input type="hidden" name="ignore_token" value="[% bugid FILTER html %]">
diff --git a/template/en/default/global/confirm-user-match.html.tmpl b/template/en/default/global/confirm-user-match.html.tmpl
index 8fb20e070..35ec93f74 100644
--- a/template/en/default/global/confirm-user-match.html.tmpl
+++ b/template/en/default/global/confirm-user-match.html.tmpl
@@ -42,10 +42,15 @@
[% IF matchsuccess == 1 %]
[% PROCESS global/header.html.tmpl title="Confirm Match" %]
+[% USE Bugzilla %]
+
<form method="post"
[% IF script -%]
action="[% script %]"
[%- END -%]
+ [% IF Bugzilla.cgi.param("data") %]
+ enctype="multipart/form-data"
+ [% END %]
>
<p>
diff --git a/template/en/default/global/hidden-fields.html.tmpl b/template/en/default/global/hidden-fields.html.tmpl
index 7327e43cf..063cdd33b 100644
--- a/template/en/default/global/hidden-fields.html.tmpl
+++ b/template/en/default/global/hidden-fields.html.tmpl
@@ -34,8 +34,26 @@
[%# The '.slice(0)' bit is here to force the 'param(field)' to be evaluated
in a list context, so we can avoid extra code checking for single valued or
empty fields %]
- [% FOREACH mvalue = cgi.param(field).slice(0) %]
- <input type="hidden" name="[% field FILTER html %]"
+ [% IF field == "data" && cgi.param("data") %]
+ <div class="box">
+ <p>
+ We were unable to store the file you uploaded because of incomplete information
+ in the form you just submitted. Because we are unable to retain the file between
+ form submissions, you must re-attach the file in addition to completing the
+ remaining missing information above.
+ </p>
+ <p>
+ Please re-attach the file <b>[% cgi.param(field) FILTER html %]</b> in
+ the field below:
+ </p>
+ <p>
+ <input type="file" id="data" name="data" size="50">
+ </p>
+ </div>
+ [% ELSE %]
+ [% FOREACH mvalue = cgi.param(field).slice(0) %]
+ <input type="hidden" name="[% field FILTER html %]"
value="[% mvalue FILTER html FILTER html_linebreak %]">
[% END %]
+ [% END %]
[% END %]