summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjustdave%syndicomm.com <>2002-10-24 12:52:35 +0200
committerjustdave%syndicomm.com <>2002-10-24 12:52:35 +0200
commit71f8b9628aaacba889d0c70f68b7cb800e74f39a (patch)
treecb07dde85237c7c207de5702cbe2432162b171cd
parentdffe77c8a6200f5f4f39dd3849d95843366d45e7 (diff)
downloadbugzilla-71f8b9628aaacba889d0c70f68b7cb800e74f39a.tar.gz
bugzilla-71f8b9628aaacba889d0c70f68b7cb800e74f39a.tar.xz
Backing out checking for bug 172874 because it broke the tree.
-rw-r--r--template/en/default/attachment/content-types.html.tmpl27
-rw-r--r--template/en/default/attachment/create.html.tmpl162
-rw-r--r--template/en/default/attachment/created.html.tmpl66
-rw-r--r--template/en/default/attachment/edit.html.tmpl234
-rw-r--r--template/en/default/attachment/list.html.tmpl96
-rw-r--r--template/en/default/attachment/show-multiple.html.tmpl96
-rw-r--r--template/en/default/attachment/updated.html.tmpl52
7 files changed, 733 insertions, 0 deletions
diff --git a/template/en/default/attachment/content-types.html.tmpl b/template/en/default/attachment/content-types.html.tmpl
new file mode 100644
index 000000000..4e7cafc47
--- /dev/null
+++ b/template/en/default/attachment/content-types.html.tmpl
@@ -0,0 +1,27 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+ <option value="text/plain">plain text (text/plain)</option>
+ <option value="text/html">HTML source (text/html)</option>
+ <option value="image/gif">GIF image (image/gif)</option>
+ <option value="image/jpeg">JPEG image (image/jpeg)</option>
+ <option value="image/png">PNG image (image/png)</option>
+ <option value="application/octet-stream">binary file (application/octet-stream)</option>
diff --git a/template/en/default/attachment/create.html.tmpl b/template/en/default/attachment/create.html.tmpl
new file mode 100644
index 000000000..1c00146e5
--- /dev/null
+++ b/template/en/default/attachment/create.html.tmpl
@@ -0,0 +1,162 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+[%# Define strings that will serve as the title and header of this page %]
+[% title = BLOCK %]Create New Attachment for Bug #[% bugid %][% END %]
+[% h1 = BLOCK %]Create New Attachment for <a href="show_bug.cgi?id=[% bugid %]">Bug #[% bugid %]</a>[% END %]
+[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
+
+[% PROCESS global/header.html.tmpl
+ title = title
+ h1 = h1
+ h2 = h2
+ style = "
+ table.attachment_entry th {
+ text-align: right;
+ vertical-align: baseline;
+ white-space: nowrap;
+ }
+
+ table.attachment_entry td {
+ text-align: left;
+ vertical-align: baseline;
+ padding-bottom: 5px;
+ }
+ "
+ onload="setContentTypeDisabledState();"
+%]
+
+<form name="entryform" method="post" action="attachment.cgi" enctype="multipart/form-data">
+ <input type="hidden" name="bugid" value="[% bugid %]">
+ <input type="hidden" name="action" value="insert">
+
+ <table class="attachment_entry">
+ <tr>
+ <th>File:</th>
+ <td>
+ <em>Enter the path to the file on your computer.</em><br>
+ <input type="file" name="data" size="50">
+ </td>
+ </tr>
+ <tr>
+ <th>Description:</th>
+ <td>
+ <em>Describe the attachment briefly.</em><br>
+ <input type="text" name="description" size="60" maxlength="200">
+ </td>
+ </tr>
+ <tr>
+ <th></th>
+ <td>
+ </td>
+ </tr>
+ <tr>
+ <th>Content Type:</th>
+ <td>
+ <em>If the attachment is a patch, check the box below.</em><br>
+ <input type="checkbox" id="ispatch" name="ispatch" value="1"
+ onchange="setContentTypeDisabledState();">
+ <label for="ispatch">patch</label><br><br>
+
+ <em>Otherwise, choose a method for determining the content type.</em><br>
+ <input type="radio" id="autodetect"
+ name="contenttypemethod" value="autodetect">
+ <label for="autodetect">auto-detect</label><br>
+ <input type="radio" id="list"
+ name="contenttypemethod" value="list">
+ <label for="list">select from list:</label>
+ <select name="contenttypeselection"
+ onchange="this.form.contenttypemethod[1].checked = true;">
+ [% PROCESS "attachment/content-types.html.tmpl" %]
+ </select><br>
+ <input type="radio" id="manual"
+ name="contenttypemethod" value="manual">
+ <label for="manual">enter manually:</label>
+ <input type="text" name="contenttypeentry" size="30" maxlength="200"
+ onchange="if (this.value) this.form.contenttypemethod[2].checked = true;">
+ </td>
+ </tr>
+ [% IF (Param("insidergroup") && UserInGroup(Param("insidergroup"))) %]
+ <tr>
+ <th>Privacy:</th>
+ <td>
+ <em>If the attachment is private, check the box below.</em><br>
+ <input type="checkbox" name="isprivate" id="isprivate" value="1">
+ <label for="isprivate">Private</label>
+ </td>
+ </tr>
+ [% END %]
+ <tr>
+ <th>Obsoletes:</th>
+ <td>
+ <em>(optional) Check each existing attachment made obsolete by your new attachment.</em><br>
+ [% IF attachments.size %]
+ [% FOREACH attachment = attachments %]
+ [% IF ((attachment.isprivate == 0) || (Param("insidergroup")
+ && UserInGroup(Param("insidergroup")))) %]
+ <input type="checkbox" id="[% attachment.id %]"
+ name="obsolete" value="[% attachment.id %]">
+ <a href="attachment.cgi?id=[% attachment.id %]&amp;action=edit">[% attachment.id %]: [% attachment.description FILTER html %]</a><br>
+ [% END %]
+ [% END %]
+ [% ELSE %]
+ [no attachments can be made obsolete]
+ [% END %]
+ </td>
+ </tr>
+ <tr>
+ <th>Comment:</th>
+ <td>
+ <em>(optional) Add a comment about this attachment to the bug.</em><br>
+ <textarea wrap="soft" name="comment" rows="6" cols="80"></textarea>
+ </td>
+ </tr>
+ <tr>
+ <th>&nbsp;</th>
+ <td><input type="submit" value="Submit"></td>
+ </tr>
+ </table>
+
+</form>
+
+<script language="JavaScript" type="text/javascript">
+ <!--
+ function setContentTypeDisabledState()
+ {
+ var entryform = document.entryform;
+
+ var isdisabled = false;
+ if (entryform.ispatch.checked)
+ isdisabled = true;
+
+ for (var i=0 ; i<entryform.contenttypemethod.length ; i++)
+ entryform.contenttypemethod[i].disabled = isdisabled;
+
+ entryform.contenttypeselection.disabled = isdisabled;
+ entryform.contenttypeentry.disabled = isdisabled;
+ }
+ //-->
+</script>
+
+[% PROCESS global/footer.html.tmpl %]
+
+
+
diff --git a/template/en/default/attachment/created.html.tmpl b/template/en/default/attachment/created.html.tmpl
new file mode 100644
index 000000000..56e71ccba
--- /dev/null
+++ b/template/en/default/attachment/created.html.tmpl
@@ -0,0 +1,66 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+[%# INTERFACE:
+ # bugid: integer. ID of the bug we just attached an attachment to.
+ # attachid: integer. ID of the attachment just created.
+ # description: string. Description of the attachment just created.
+ # contenttype: string. The Content Type we attached it as.
+ # contenttypemethod: string. How we got the content type of the attachment.
+ # Possible values: autodetect, list, manual.
+ # mailresults: string. who was mailed, and who wasn't.
+ #%]
+
+[% PROCESS global/header.html.tmpl
+ title = "Changes Submitted"
+ style = "th { text-align: left; }"
+%]
+
+<table border="1">
+ <tr>
+ <td>
+ <h2>
+ <a title="[% description FILTER html %]" href="attachment.cgi?id=[% attachid %]&amp;action=edit">Attachment #[% attachid %]</a>
+ to <a href="show_bug.cgi?id=[% bugid %]">Bug #[% bugid %]</a> Created
+ </h2>
+
+ [% mailresults %]
+
+ [% IF contenttypemethod == 'autodetect' %]
+ <p>
+ <b>Note:</b> Bugzilla automatically detected the content type
+ <em>[% contenttype %]</em> for this attachment. If this is
+ incorrect, correct the value by
+ <a href="attachment.cgi?id=[% attachid %]&amp;action=edit">editing the attachment</a>.
+ </p>
+ [% END %]
+ </td>
+ <td>
+ <a href="show_bug.cgi?id=[% bugid %]">Go back to bug #[% bugid %]</a>
+ </td>
+ </tr>
+</table>
+
+<p>
+<a href="attachment.cgi?bugid=[% bugid %]&amp;action=enter">Create Another Attachment to Bug #[% bugid %]</a>
+</p>
+
+[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/attachment/edit.html.tmpl b/template/en/default/attachment/edit.html.tmpl
new file mode 100644
index 000000000..32449f041
--- /dev/null
+++ b/template/en/default/attachment/edit.html.tmpl
@@ -0,0 +1,234 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+[%# Define strings that will serve as the title and header of this page %]
+[% title = BLOCK %]Edit Attachment #[% attachid %] for Bug #[% bugid %][% END %]
+[% h1 = BLOCK %]Edit Attachment #[% attachid %] for <a href="show_bug.cgi?id=[% bugid %]">Bug #[% bugid %]</a>[% END %]
+[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
+
+[% PROCESS global/header.html.tmpl
+ title = title
+ h1 = h1
+ h2 = h2
+ style = "
+ table.attachment_info th { text-align: right; vertical-align: top; }
+ table.attachment_info td { text-align: left; vertical-align: top; }
+ #noview { text-align: left; vertical-align: center; }
+
+ table#flags th, table#flags td { font-size: small; vertical-align: baseline; }
+ "
+%]
+
+<script type="application/x-javascript" language="JavaScript">
+ <!--
+ function editAsComment()
+ {
+ // Get the content of the document as a string.
+ var viewFrame = document.getElementById('viewFrame');
+ var aSerializer = new XMLSerializer();
+ var contentDocument = viewFrame.contentDocument;
+ var theContent = aSerializer.serializeToString(contentDocument);
+
+ // If this is a plaintext document, remove cruft that Mozilla adds
+ // because it treats it as an HTML document with a big PRE section.
+ // http://bugzilla.mozilla.org/show_bug.cgi?id=86012
+ var contentType = '[% contenttype %]';
+ if ( contentType == 'text/plain' )
+ {
+ theContent = theContent.replace( /^<html><head\/?><body><pre>/i , "" );
+ theContent = theContent.replace( /<\/pre><\/body><\/html>$/i , "" );
+ theContent = theContent.replace( /&lt;/gi , "<" );
+ theContent = theContent.replace( /&gt;/gi , ">" );
+ theContent = theContent.replace( /&amp;/gi , "&" );
+ }
+
+ // Add mail-style quote indicators (>) to the beginning of each line.
+ // ".*\n" matches lines that end with a newline, while ".+" matches
+ // the rare situation in which the last line of a file does not end
+ // with a newline.
+ theContent = theContent.replace( /(.*\n|.+)/g , ">$1" );
+
+ hideElementById('viewFrame');
+ hideElementById('editButton');
+ hideElementById('smallCommentFrame');
+
+ showElementById('undoEditButton');
+
+ // Show the TEXTAREA that will contain the editable attachment
+ // and copy the content of the attachment into it.
+ showElementById('editFrame');
+
+ var editFrame = document.getElementById('editFrame');
+ editFrame.value = theContent;
+ editFrame.value += "\n\n";
+ }
+ function undoEditAsComment()
+ {
+ // Hide the "edit attachment as comment" TEXTAREA and the "undo" button.
+ hideElementById('undoEditButton');
+ hideElementById('editFrame');
+
+ // Show the "view attachment" IFRAME, the "redo" button that allows the user
+ // to go back to editing the attachment as a comment, and the small comment field.
+ showElementById('viewFrame');
+ showElementById('redoEditButton');
+ showElementById('smallCommentFrame');
+
+ }
+ function redoEditAsComment()
+ {
+ // Hide the "view attachment" IFRAME, the "redo" button that allows the user
+ // to go back to editing the attachment as a comment, and the small comment field.
+ hideElementById('viewFrame');
+ hideElementById('redoEditButton');
+ hideElementById('smallCommentFrame');
+
+ // Show the "edit attachment as comment" TEXTAREA and the "undo" button.
+ showElementById('undoEditButton');
+ showElementById('editFrame');
+ }
+
+ function hideElementById(id)
+ {
+ var elm = document.getElementById(id);
+ if (elm) {
+ elm.style.display = 'none';
+ }
+ }
+
+ function showElementById(id, val)
+ {
+ var elm = document.getElementById(id);
+ if (elm) {
+ if (!val) val = 'inline';
+ elm.style.display = val;
+ }
+ }
+
+ function normalizeComments()
+ {
+ // Remove the unused comment field from the document so its contents
+ // do not get transmitted back to the server.
+
+ var small = document.getElementById('smallCommentFrame');
+ var big = document.getElementById('editFrame');
+ if ( small.style.display == 'none' )
+ {
+ small.parentNode.removeChild(small);
+ }
+ if ( big.style.display == 'none' )
+ {
+ big.parentNode.removeChild(big);
+ }
+ }
+ //-->
+</script>
+
+<form method="post" action="attachment.cgi" onsubmit="normalizeComments();">
+ <input type="hidden" name="id" value="[% attachid %]">
+ <input type="hidden" name="action" value="update">
+ <input type="hidden" name="contenttypemethod" value="manual">
+
+ <table class="attachment_info" width="100%">
+
+ <tr>
+ <td width="25%">
+ <small>
+ <b>Description:</b><br>
+ <textarea rows="3" cols="25" name="description" wrap="soft">[% description FILTER html %]</textarea><br>
+
+ <b>Filename:</b><br>
+ <input type="text" size="20" name="filename" value="[% filename FILTER html %]"><br>
+
+ <b>MIME Type:</b><br>
+ <input type="text" size="20" name="contenttypeentry" value="[% contenttype FILTER html %]"><br>
+
+ <input type="checkbox" id="ispatch" name="ispatch" value="1"
+ [% 'checked="checked"' IF ispatch %]>
+ <label for="ispatch">patch</label>
+ <input type="checkbox" id="isobsolete" name="isobsolete" value="1"
+ [% 'checked="checked"' IF isobsolete %]>
+ <label for="isobsolete">obsolete</label><br>
+ [% IF (Param("insidergroup") && UserInGroup(Param("insidergroup"))) %]
+ <input type="checkbox" name="isprivate" value="1"[% " checked" IF isprivate %]> private<br><br>
+ [% ELSE %]<br>
+ [% END %]
+
+ [% IF flag_types.size > 0 %]
+ <b>Flags:</b><br>
+ [% PROCESS "flag/list.html.tmpl" bug_id=bugid attach_id=attachid %]<br>
+ [% END %]
+
+ <div id="smallCommentFrame">
+ <b>Comment (on the bug):</b><br>
+ <textarea name="comment" rows="5" cols="25" wrap="soft"></textarea><br>
+ </div>
+
+ <input type="submit" value="Submit">
+
+ </small>
+ </td>
+
+ [% IF isviewable %]
+ <td width="75%">
+ <textarea id="editFrame" name="comment" style="height: 400px; width: 100%; display: none;" cols="80" wrap="soft"></textarea>
+ <iframe id="viewFrame" src="attachment.cgi?id=[% attachid %]&amp;action=view" style="height: 400px; width: 100%;">
+ <b>You cannot view the attachment while editing it because your browser does not support IFRAMEs.
+ <a href="attachment.cgi?id=[% attachid %]&amp;action=view">View the attachment on a separate page</a>.</b>
+ </iframe>
+ <script type="application/x-javascript" language="JavaScript">
+ <!--
+ if (typeof document.getElementById == "function") {
+ document.write('<button type="button" id="editButton" onclick="editAsComment();">Edit Attachment As Comment</button>');
+ document.write('<button type="button" id="undoEditButton" onclick="undoEditAsComment();" style="display: none;">Undo Edit As Comment</button>');
+ document.write('<button type="button" id="redoEditButton" onclick="redoEditAsComment();" style="display: none;">Redo Edit As Comment</button>');
+ }
+ //-->
+ </script>
+ </td>
+ [% ELSE %]
+ <td id="noview" width="50%">
+ <p><b>
+ Attachment cannot be viewed because its MIME type is not either text/*, image/*, or application/vnd.mozilla.*.
+ <a href="attachment.cgi?id=[% attachid %]&amp;action=view">Download the attachment instead</a>.
+ </b></p>
+ </td>
+ [% END %]
+
+ </tr>
+
+ </table>
+
+ Attachments on this Bug:
+ [% FOREACH a = attachments %]
+ [% IF a == attachid %]
+ #[% a %]
+ [% ELSE %]
+ <a href="attachment.cgi?id=[% a %]&amp;action=edit">#[% a %]</a>
+ [% END %]
+ [% " |" UNLESS loop.last() %]
+ [% END %]
+
+</form>
+
+<br>
+
+[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/attachment/list.html.tmpl b/template/en/default/attachment/list.html.tmpl
new file mode 100644
index 000000000..59f749695
--- /dev/null
+++ b/template/en/default/attachment/list.html.tmpl
@@ -0,0 +1,96 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+[%# Whether or not to include flags. %]
+[% display_flags = num_attachment_flag_types > 0 %]
+
+<br>
+<table cellspacing="0" cellpadding="4" border="1">
+ <tr>
+ <th bgcolor="#cccccc" align="left">Attachment</th>
+ <th bgcolor="#cccccc" align="left">Type</th>
+ <th bgcolor="#cccccc" align="left">Created</th>
+ [% IF display_flags %]
+ <th bgcolor="#cccccc" align="left">Flags</th>
+ [% END %]
+ <th bgcolor="#cccccc" align="left">Actions</th>
+ </tr>
+ [% canseeprivate = !Param("insidergroup") || UserInGroup(Param("insidergroup")) %]
+ [% FOREACH attachment = attachments %]
+ [% IF !attachment.isprivate || canseeprivate %]
+ <tr [% "class=\"bz_private\"" IF attachment.isprivate %]>
+ <td valign="top">
+ [% IF attachment.isobsolete %]
+ <strike><a href="attachment.cgi?id=[% attachment.attachid %]&amp;action=view">[% attachment.description FILTER html %]</a></strike>
+ [% ELSE %]
+ <a href="attachment.cgi?id=[% attachment.attachid %]&amp;action=view">[% attachment.description FILTER html %]</a>
+ [% END %]
+ </td>
+
+ <td valign="top">
+ [% IF attachment.ispatch %]
+ <i>patch</i>
+ [% ELSE %]
+ [% attachment.contenttype FILTER html %]
+ [% END %]
+ </td>
+
+ <td valign="top">[% attachment.date %]</td>
+
+ [% IF display_flags %]
+ <td valign="top">
+ [% IF attachment.flags.size == 0 %]
+ <i>none</i>
+ [% ELSE %]
+ [% FOR flag = attachment.flags %]
+ [% IF flag.setter %]
+ [% flag.setter.nick FILTER html %]:
+ [% END %]
+ [%+ flag.type.name %][% flag.status %]
+ [%+ IF flag.status == "?" && flag.requestee %]
+ ([% flag.requestee.nick %])
+ [% END %]<br>
+ [% END %]
+ [% END %]
+ </td>
+ [% END %]
+
+ <td valign="top">
+ [% IF attachment.canedit %]
+ <a href="attachment.cgi?id=[% attachment.attachid %]&amp;action=edit">Edit</a>
+ [% ELSE %]
+ None
+ [% END %]
+ </td>
+ </tr>
+ [% END %]
+ [% END %]
+
+ <tr>
+ <td colspan="[% display_flags ? 4 : 3 %]">
+ <a href="attachment.cgi?bugid=[% bugid %]&amp;action=enter">Create a New Attachment</a> (proposed patch, testcase, etc.)
+ </td>
+ <td colspan="1">
+ <a href="attachment.cgi?bugid=[% bugid %]&amp;action=viewall">View All</a>
+ </td>
+ </tr>
+</table>
+<br>
diff --git a/template/en/default/attachment/show-multiple.html.tmpl b/template/en/default/attachment/show-multiple.html.tmpl
new file mode 100644
index 000000000..5e12f622e
--- /dev/null
+++ b/template/en/default/attachment/show-multiple.html.tmpl
@@ -0,0 +1,96 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+[% filtered_summary = bugsummary FILTER html %]
+[% PROCESS global/header.html.tmpl
+ title = "View All Attachments for Bug #$bugid"
+ h1 = "View All Attachments for <a href=\"show_bug.cgi?id=$bugid\">Bug #$bugid</a>"
+ h2 = filtered_summary
+ style = "
+ table.attachment_info th { text-align: right; vertical-align: top; }
+ table.attachment_info td { text-align: left; vertical-align: top; }
+ "
+%]
+
+<br>
+
+[% FOREACH a = attachments %]
+
+ <div align="center">
+ <table class="attachment_info" cellspacing="0" cellpadding="4" border="1" width="75%">
+ <tr>
+ <td valign="top" bgcolor="#cccccc" colspan="5">
+ <big><b>Attachment #[% a.attachid %]</b></big>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top">
+ [% IF a.isobsolete %]
+ <strike>[% a.description FILTER html %]</strike>
+ [% ELSE %]
+ [% a.description FILTER html %]
+ [% END %]
+ </td>
+
+ <td valign="top">
+ [% IF a.ispatch %]
+ <i>patch</i>
+ [% ELSE %]
+ [% a.contenttype FILTER html %]
+ [% END %]
+ </td>
+
+ <td valign="top">[% a.date %]</td>
+
+ <td valign="top">
+ [% IF a.statuses.size == 0 %]
+ <i>none</i>
+ [% ELSE %]
+ [% FOREACH s = a.statuses %]
+ [% s FILTER html FILTER replace('\s', '&nbsp;') %]<br>
+ [% END %]
+ [% END %]
+ </td>
+
+ <td valign="top">
+ <a href="attachment.cgi?id=[% a.attachid %]&amp;action=edit">Edit</a>
+ </td>
+ </tr>
+ </table>
+
+ [% IF a.isviewable %]
+ <iframe src="attachment.cgi?id=[% a.attachid %]&amp;action=view" width="75%" height="350">
+ <b>You cannot view the attachment on this page because your browser does not support IFRAMEs.
+ <a href="attachment.cgi?id=[% a.attachid %]&amp;action=view">View the attachment on a separate page</a>.</b>
+ </iframe>
+ [% ELSE %]
+ <p><b>
+ Attachment cannot be viewed because its MIME type is not text/*, image/*, or application/vnd.mozilla.*.
+ <a href="attachment.cgi?id=[% a.attachid %]&amp;action=view">Download the attachment instead</a>.
+ </b></p>
+ [% END %]
+ </div>
+
+ <br><br>
+
+[% END %]
+
+[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/attachment/updated.html.tmpl b/template/en/default/attachment/updated.html.tmpl
new file mode 100644
index 000000000..2c7ceb24d
--- /dev/null
+++ b/template/en/default/attachment/updated.html.tmpl
@@ -0,0 +1,52 @@
+<!-- 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): Myk Melez <myk@mozilla.org>
+ # Gervase Markham <gerv@gerv.net>
+ #%]
+
+[%# INTERFACE:
+ # bugid: integer. ID of the bug we are updating.
+ # attachid: integer. ID of the attachment we just attached.
+ # mailresults: string. Who was mailed and who wasn't.
+ #%]
+
+[% PROCESS global/header.html.tmpl
+ title = "Changes Submitted"
+ style = "th { text-align: left; }"
+%]
+
+<hr>
+
+<table border="1">
+ <tr>
+ <td>
+ <h2>Changes to
+ <a href="attachment.cgi?id=[% attachid %]&amp;action=edit">attachment [% attachid %]</a>
+ of bug [% bugid %] submitted
+ </h2>
+ [% mailresults %]
+ </td>
+
+ <td>
+ <a href="show_bug.cgi?id=[% bugid %]">Back to Bug #[% bugid %]</a>
+ </td>
+ </tr>
+</table>
+
+[% PROCESS global/footer.html.tmpl %]