Commit bc43a991 authored by lpsolit%gmail.com's avatar lpsolit%gmail.com

Bug 76507: Replace "owner" by "assignee" (and "initial" by "default") - Patch by…

Bug 76507: Replace "owner" by "assignee" (and "initial" by "default") - Patch by Tiago R. Mello <timello@async.com.br> r=LpSolit a=myk
parent e4a5f712
...@@ -193,7 +193,7 @@ ...@@ -193,7 +193,7 @@
<listitem> <listitem>
<para> <para>
This allows you to define an email address for each component, This allows you to define an email address for each component,
in addition to that of the default owner, who will be sent in addition to that of the default assignee, who will be sent
carbon copies of incoming bugs. carbon copies of incoming bugs.
</para> </para>
</listitem> </listitem>
...@@ -580,12 +580,12 @@ ...@@ -580,12 +580,12 @@
company.</para> company.</para>
<para> <para>
Each component has a owner and (if you turned it on in the parameters), Each component has a default assignee and (if you turned it on in the parameters),
a QA Contact. The owner should be the primary person who fixes bugs in a QA Contact. The default assignee should be the primary person who fixes bugs in
that component. The QA Contact should be the person who will ensure that component. The QA Contact should be the person who will ensure
these bugs are completely fixed. The Owner, QA Contact, and Reporter these bugs are completely fixed. The Assignee, QA Contact, and Reporter
will get email when new bugs are created in this Component and when will get email when new bugs are created in this Component and when
these bugs change. Default Owner and Default QA Contact fields only these bugs change. Default Assignee and Default QA Contact fields only
dictate the dictate the
<emphasis>default assignments</emphasis>; <emphasis>default assignments</emphasis>;
these can be changed on bug submission, or at any later point in these can be changed on bug submission, or at any later point in
...@@ -605,9 +605,9 @@ ...@@ -605,9 +605,9 @@
<listitem> <listitem>
<para>Fill out the "Component" field, a short "Description", <para>Fill out the "Component" field, a short "Description",
the "Initial Owner" and "Initial QA Contact" (if enabled.) the "Default Assignee" and "Default QA Contact" (if enabled.)
The Component and Description fields may contain HTML; The Component and Description fields may contain HTML;
the "Initial Owner" field must be a login name the "Default Assignee" field must be a login name
already existing in the database. already existing in the database.
</para> </para>
</listitem> </listitem>
...@@ -672,7 +672,7 @@ ...@@ -672,7 +672,7 @@
<listitem> <listitem>
<para>Enter the name of the Milestone in the "Milestone" field. You <para>Enter the name of the Milestone in the "Milestone" field. You
can optionally set the "sortkey", which is a positive or negative can optionally set the "sortkey", which is a positive or negative
number (-255 to 255) that defines where in the list this particular number (-32768 to 32767) that defines where in the list this particular
milestone appears. This is because milestones often do not milestone appears. This is because milestones often do not
occur in alphanumeric order For example, "Future" might be occur in alphanumeric order For example, "Future" might be
after "Release 1.2". Select "Add".</para> after "Release 1.2". Select "Add".</para>
...@@ -874,7 +874,7 @@ ...@@ -874,7 +874,7 @@
</para> </para>
<para> <para>
Only users with the ability to edit the bug may Only users with the ability to edit the bug may
set flags on bugs. This includes the owner, reporter, and set flags on bugs. This includes the assignee, reporter, and
any user with the <computeroutput>editbugs</computeroutput> any user with the <computeroutput>editbugs</computeroutput>
permission. permission.
</para> </para>
...@@ -1354,7 +1354,7 @@ ...@@ -1354,7 +1354,7 @@
</orderedlist> </orderedlist>
<para>These controls are often described in this order, so a <para>These controls are often described in this order, so a
product that requires a user to be a member of group "foo" product that requires a user to be a member of group "foo"
to enter a bug and then requires that the bug stay resticted to enter a bug and then requires that the bug stay restricted
to group "foo" at all times and that only members of group "foo" to group "foo" at all times and that only members of group "foo"
can edit the bug even if they otherwise could see the bug would can edit the bug even if they otherwise could see the bug would
have its controls summarized by...</para> have its controls summarized by...</para>
...@@ -1628,7 +1628,7 @@ P template/en/default/list/quips.html.tmpl ...@@ -1628,7 +1628,7 @@ P template/en/default/list/quips.html.tmpl
<para> <para>
If you are unable (or unwilling) to use CVS, another option that's If you are unable (or unwilling) to use CVS, another option that's
always available is to obtain the latest tarball from the <ulink always available is to obtain the latest tarball from the <ulink
href="http://www.bugzilla.org/download/">Download Page</ulink> and url="http://www.bugzilla.org/download/">Download Page</ulink> and
create a new Bugzilla installation from that. create a new Bugzilla installation from that.
</para> </para>
...@@ -1688,9 +1688,9 @@ bash$ <command>mv bugzilla-2.18.1 bugzilla</command> ...@@ -1688,9 +1688,9 @@ bash$ <command>mv bugzilla-2.18.1 bugzilla</command>
last number of the revision changes, such as from 2.16.6 to 2.16.7 last number of the revision changes, such as from 2.16.6 to 2.16.7
-- then you have the option of obtaining and applying a patch file -- then you have the option of obtaining and applying a patch file
from the <ulink from the <ulink
href="http://www.bugzilla.org/download/">Download Page</ulink>. url="http://www.bugzilla.org/download/">Download Page</ulink>.
This file is made available by the <ulink This file is made available by the <ulink
href="http://www.bugzilla.org/developers/profiles.html">Bugzilla url="http://www.bugzilla.org/developers/profiles.html">Bugzilla
Development Team</ulink>, and is a collection of all the bug fixes Development Team</ulink>, and is a collection of all the bug fixes
and security patches that have been made since the last bugfix and security patches that have been made since the last bugfix
release. If you are planning to upgrade via patches, it is safer release. If you are planning to upgrade via patches, it is safer
......
...@@ -18,45 +18,78 @@ ...@@ -18,45 +18,78 @@
<xref linkend="template-http-accept"/>. <xref linkend="template-http-accept"/>.
</para> </para>
<section> <section id="template-directory">
<title>What to Edit</title> <title>Template Directory Structure</title>
<para> <para>
The template directory structure is that there's a top level directory, The template directory structure starts with top level directory
<filename>template</filename>, which contains a directory for named <filename>template</filename>, which contains a directory
each installed localization. The default English templates are for each installed localization. The next level defines the
therefore in <filename>en</filename>. Underneath that, there language used in the templates. Bugzilla comes with English
is the <filename>default</filename> directory and optionally the templates, so the directory name is <filename>en</filename>,
<filename>custom</filename> directory. The <filename>default</filename> and we will discuss <filename>template/en</filename> throughout
directory contains all the templates shipped with Bugzilla, whereas the documentation. Below <filename>template/en</filename> is the
the <filename>custom</filename> directory does not exist at first and <filename>default</filename> directory, which contains all the
must be created if you want to use it. standard templates shipped with Bugzilla.
</para> </para>
<warning>
<para>
A directory <filename>data/templates</filename> also exists;
this is where Template Toolkit puts the compiled versions of
the templates from either the default or custom directories.
<emphasis>Do not</emphasis> directly edit the files in this
directory, or all your changes will be lost the next time
Template Toolkit recompiles the templates.
</para>
</warning>
</section>
<section id="template-method">
<title>Choosing a Customization Method</title>
<para>
If you want to edit Bugzilla's templates, the first decision
you must make is how you want to go about doing so. There are two
choices, and which you use depends mainly on the scope of your
modifications, and the method you plan to use to upgrade Bugzilla.
</para>
<para> <para>
There are two different ways of editing Bugzilla's templates,
and which you use depends mainly on the method you plan to use to
upgrade Bugzilla.
The first method of making customizations is to directly edit the The first method of making customizations is to directly edit the
templates in <filename>template/en/default</filename>. This is templates found in <filename>template/en/default</filename>.
probably the best method for small changes if you are going to use This is probably the best way to go about it if you are going to
the CVS method of upgrading, because if you then execute a be upgrading Bugzilla through CVS, because if you then execute
<command>cvs update</command>, any template fixes will get a <command>cvs update</command>, any changes you have made will
automagically merged into your modified versions. be merged automagically with the updated versions.
</para> </para>
<note>
<para>
If you use this method, and CVS conflicts occur during an
update, the conflicted templates (and possibly other parts
of your installation) will not work until they are resolved.
</para>
</note>
<para> <para>
If you use this method, your installation will break if CVS conflicts The second method is to copy the templates to be modified
occur. into a mirrored directory structure under
<filename>template/en/custom</filename>. Templates in this
directory structure automatically override any identically-named
and identically-located templates in the
<filename>default</filename> directory.
</para> </para>
<note>
<para>
The <filename>custom</filename> directory does not exist
at first and must be created if you want to use it.
</para>
</note>
<para> <para>
The other method is to copy the templates to be modified into a The second method of customization should be used if you
mirrored directory use the overwriting method of upgrade, because otherwise
structure under <filename>template/en/custom</filename>. The templates your changes will be lost. This method may also be better if
in this directory automatically override those in default.
This is the technique you
need to use if you use the overwriting method of upgrade, because
otherwise your changes will be lost. This method is also better if
you are using the CVS method of upgrading and are going to make major you are using the CVS method of upgrading and are going to make major
changes, because it is guaranteed that the contents of this directory changes, because it is guaranteed that the contents of this directory
will not be touched during an upgrade, and you can then decide whether will not be touched during an upgrade, and you can then decide whether
...@@ -65,9 +98,9 @@ ...@@ -65,9 +98,9 @@
</para> </para>
<para> <para>
If you use this method, your installation may break if incompatible Using this method, your installation may break if incompatible
changes are made to the template interface. If such changes are made changes are made to the template interface. Such changes should
they will be documented in the release notes, provided you are using a be documented in the release notes, provided you are using a
stable release of Bugzilla. If you use using unstable code, you will stable release of Bugzilla. If you use using unstable code, you will
need to deal with this one yourself, although if possible the changes need to deal with this one yourself, although if possible the changes
will be mentioned before they occur in the deprecations section of the will be mentioned before they occur in the deprecations section of the
...@@ -76,21 +109,25 @@ ...@@ -76,21 +109,25 @@
<note> <note>
<para> <para>
Don't directly edit the compiled templates in Regardless of which method you choose, it is recommended that
<filename class="directory">data/template/*</filename> - your you run <command>./checksetup.pl</command> after creating or
changes will be lost when Template Toolkit recompiles them. editing any templates in the <filename>template/en/default</filename>
directory, and after editing any templates in the
<filename>custom</filename> directory.
</para> </para>
</note> </note>
<note> <warning>
<para>It is recommended that you run <command>./checksetup.pl</command> <para>
after any template edits, especially if you've created a new file in It is <emphasis>required</emphasis> that you run
the <filename class="directory">custom</filename> directory. <command>./checksetup.pl</command> after creating a new
template in the <filename>custom</filename> directory. Failure
to do so will raise an incomprehensible error message.
</para> </para>
</note> </warning>
</section> </section>
<section> <section id="template-edit">
<title>How To Edit Templates</title> <title>How To Edit Templates</title>
<note> <note>
...@@ -98,7 +135,7 @@ ...@@ -98,7 +135,7 @@
If you are making template changes that you intend on submitting back If you are making template changes that you intend on submitting back
for inclusion in standard Bugzilla, you should read the relevant for inclusion in standard Bugzilla, you should read the relevant
sections of the sections of the
<ulink url="http://www.bugzilla.org/developerguide.html">Developers' <ulink url="http://www.bugzilla.org/docs/developer.html">Developers'
Guide</ulink>. Guide</ulink>.
</para> </para>
</note> </note>
...@@ -132,9 +169,11 @@ ...@@ -132,9 +169,11 @@
</para> </para>
<para> <para>
Editing templates is a good way of doing a "poor man's custom fields". Editing templates is a good way of doing a <quote>poor man's custom
fields</quote>.
For example, if you don't use the Status Whiteboard, but want to have For example, if you don't use the Status Whiteboard, but want to have
a free-form text entry box for "Build Identifier", then you can just a free-form text entry box for <quote>Build Identifier</quote>,
then you can just
edit the templates to change the field labels. It's still be called edit the templates to change the field labels. It's still be called
status_whiteboard internally, but your users don't need to know that. status_whiteboard internally, but your users don't need to know that.
</para> </para>
...@@ -142,22 +181,29 @@ ...@@ -142,22 +181,29 @@
</section> </section>
<section> <section id="template-formats">
<title>Template Formats</title> <title>Template Formats and Types</title>
<para> <para>
Some CGIs have the ability to use more than one template. For Some CGI's have the ability to use more than one template. For example,
example, buglist.cgi can output bug lists as RDF or two <filename>buglist.cgi</filename> can output itself as RDF, or as two
different forms of HTML (complex and simple). (Try this out formats of HTML (complex and simple). The mechanism that provides this
by appending <filename>&amp;format=simple</filename> to a buglist.cgi feature is extensible.
URL on your Bugzilla installation.) This </para>
mechanism, called template 'formats', is extensible.
<para>
Bugzilla can support different types of output, which again can have
multiple formats. In order to request a certain type, you can append
the &amp;ctype=&lt;contenttype&gt; (such as rdf or html) to the
<filename>&lt;cginame&gt;.cgi</filename> URL. If you would like to
retrieve a certain format, you can use the &amp;format=&lt;format&gt;
(such as simple or complex) in the URL.
</para> </para>
<para> <para>
To see if a CGI supports multiple output formats, grep the To see if a CGI supports multiple output formats and types, grep the
CGI for "GetFormat". If it's not present, adding CGI for <quote>GetFormat</quote>. If it's not present, adding
multiple format support isn't too hard - see how it's done in multiple format/type support isn't too hard - see how it's done in
other CGIs, e.g. config.cgi. other CGIs, e.g. config.cgi.
</para> </para>
...@@ -176,22 +222,32 @@ ...@@ -176,22 +222,32 @@
<para> <para>
You now need to decide what content type you want your template You now need to decide what content type you want your template
served as. Open up the <filename>localconfig</filename> file and find the served as. The content types are defined in the
<filename>$contenttypes</filename> <filename>Bugzilla/Constants.pm</filename> file in the
variable. If your content type is not there, add it. Remember <filename>contenttypes</filename>
the three- or four-letter tag assigned to you content type. constant. If your content type is not there, add it. Remember
the three- or four-letter tag assigned to your content type.
This tag will be part of the template filename. This tag will be part of the template filename.
</para> </para>
<note>
<para>
After adding or changing a content type, it's suitable to edit
<filename>Bugzilla/Constants.pm</filename> in order to reflect
the changes. Also, the file should be kept up to date after an
upgrade if content types have been customized in the past.
</para>
</note>
<para> <para>
Save the template as <filename>&lt;stubname&gt;-&lt;formatname&gt;.&lt;contenttypetag&gt;.tmpl</filename>. Save the template as <filename>&lt;stubname&gt;-&lt;formatname&gt;.&lt;contenttypetag&gt;.tmpl</filename>.
Try out the template by calling the CGI as Try out the template by calling the CGI as
<filename>&lt;cginame&gt;.cgi?format=&lt;formatname&gt;</filename> . <filename>&lt;cginame&gt;.cgi?format=&lt;formatname&gt;&amp;ctype=&lt;type&gt;</filename> .
</para> </para>
</section> </section>
<section> <section id="template-specific">
<title>Particular Templates</title> <title>Particular Templates</title>
<para> <para>
...@@ -215,7 +271,8 @@ ...@@ -215,7 +271,8 @@
<para> <para>
<command>global/banner.html.tmpl</command>: <command>global/banner.html.tmpl</command>:
This contains the "banner", the part of the header that appears This contains the <quote>banner</quote>, the part of the header
that appears
at the top of all Bugzilla pages. The default banner is reasonably at the top of all Bugzilla pages. The default banner is reasonably
barren, so you'll probably want to customize this to give your barren, so you'll probably want to customize this to give your
installation a distinctive look and feel. It is recommended you installation a distinctive look and feel. It is recommended you
...@@ -231,6 +288,26 @@ ...@@ -231,6 +288,26 @@
</para> </para>
<para> <para>
<command>global/variables.none.tmpl</command>:
This defines a list of terms that may be changed in order to
<quote>brand</quote> the Bugzilla instance In this way, terms
like <quote>bugs</quote> can be replaced with <quote>issues</quote>
across the whole Bugzilla installation. The name
<quote>Bugzilla</quote> and other words can be customized as well.
</para>
<para>
<command>list/table.html.tmpl</command>:
This template controls the appearance of the bug lists created
by Bugzilla. Editing this template allows per-column control of
the width and title of a column, the maximum display length of
each entry, and the wrap behaviour of long entries.
For long bug lists, Bugzilla inserts a 'break' every 100 bugs by
default; this behaviour is also controlled by this template, and
that value can be modified here.
</para>
<para>
<command>bug/create/user-message.html.tmpl</command>: <command>bug/create/user-message.html.tmpl</command>:
This is a message that appears near the top of the bug reporting page. This is a message that appears near the top of the bug reporting page.
By modifying this, you can tell your users how they should report By modifying this, you can tell your users how they should report
...@@ -238,50 +315,78 @@ ...@@ -238,50 +315,78 @@
</para> </para>
<para> <para>
<command>bug/process/midair.html.tmpl</command>:
This is the page used if two people submit simultaneous changes to the
same bug. The second person to submit their changes will get this page
to tell them what the first person did, and ask if they wish to
overwrite those changes or go back and revisit the bug. The default
title and header on this page read "Mid-air collision detected!" If
you work in the aviation industry, or other environment where this
might be found offensive (yes, we have true stories of this happening)
you'll want to change this to something more appropriate for your
environment.
</para>
<para>
<command>bug/create/create.html.tmpl</command> and <command>bug/create/create.html.tmpl</command> and
<command>bug/create/comment.txt.tmpl</command>: <command>bug/create/comment.txt.tmpl</command>:
You may wish to get bug submitters to give certain bits of structured You may not wish to go to the effort of creating custom fields in
information, each in a separate input widget, for which there is not a Bugzilla, yet you want to make sure that each bug report contains
field in the database. The bug entry system has been designed in an a number of pieces of important information for which there is not
extensible fashion to enable you to define arbitrary fields and widgets, a special field. The bug entry system has been designed in an
and have their values appear formatted in the initial extensible fashion to enable you to add arbitrary HTML widgets,
Description, rather than in database fields. An example of this such as drop-down lists or textboxes, to the bug entry page
is the mozilla.org and have their values appear formatted in the initial comment.
<ulink url="http://bugzilla.mozilla.org/enter_bug.cgi?format=guided">guided A hidden field that indicates the format should be added inside
bug submission form</ulink>. the form in order to make the template functional. Its value should
</para> be the suffix of the template filename. For example, if the file
is called <filename>create-cust.html.tmpl</filename>, then
<para> <programlisting>&lt;input type="hidden" name="format" value="cust"&gt;</programlisting>
To make this work, create a custom template for should be used inside the form.
<filename>enter_bug.cgi</filename> (the default template, on which you </para>
could base it, is <filename>create.html.tmpl</filename>),
and either call it <filename>create.html.tmpl</filename> or use a format and <para>
call it <filename>create-&lt;formatname&gt;.html.tmpl</filename>. An example of this is the mozilla.org
Put it in the <filename class="directory">custom/bug/create</filename> <ulink url="http://landfill.bugzilla.org/bugzilla-tip/enter_bug.cgi?product=WorldControl&amp;format=guided">guided
directory. In it, add widgets for each piece of information you'd like bug submission form</ulink>. The code for this comes with the Bugzilla
distribution as an example for you to copy. It can be found in the
files
<filename>create-guided.html.tmpl</filename> and
<filename>comment-guided.html.tmpl</filename>.
</para>
<para>
So to use this feature, create a custom template for
<filename>enter_bug.cgi</filename>. The default template, on which you
could base it, is
<filename>custom/bug/create/create.html.tmpl</filename>.
Call it <filename>create-&lt;formatname&gt;.html.tmpl</filename>, and
in it, add widgets for each piece of information you'd like
collected - such as a build number, or set of steps to reproduce. collected - such as a build number, or set of steps to reproduce.
</para> </para>
<para> <para>
Then, create a template like Then, create a template like
<filename>custom/bug/create/comment.txt.tmpl</filename>, also named <filename>custom/bug/create/comment.txt.tmpl</filename>, and call it
after your format if you are using one, which <filename>comment-&lt;formatname&gt;.txt.tmpl</filename>. This
references the form fields you have created. When a bug report is template should reference the form fields you have created using
the syntax <filename>[% form.&lt;fieldname&gt; %]</filename>. When a
bug report is
submitted, the initial comment attached to the bug report will be submitted, the initial comment attached to the bug report will be
formatted according to the layout of this template. formatted according to the layout of this template.
</para> </para>
<para> <para>
For example, if your enter_bug template had a field For example, if your custom enter_bug template had a field
<programlisting>&lt;input type="text" name="buildid" size="30"&gt;</programlisting> <programlisting>&lt;input type="text" name="buildid" size="30"&gt;</programlisting>
and then your comment.txt.tmpl had and then your comment.txt.tmpl had
<programlisting>BuildID: [% form.buildid %]</programlisting> <programlisting>BuildID: [% form.buildid %]</programlisting>
then then something like
<programlisting>BuildID: 20020303</programlisting> <programlisting>BuildID: 20020303</programlisting>
would appear in the initial checkin comment. would appear in the initial comment.
</para> </para>
</section> </section>
<section id="template-http-accept"> <section id="template-http-accept">
<title>Configuring Bugzilla to Detect the User's Language</title> <title>Configuring Bugzilla to Detect the User's Language</title>
...@@ -308,6 +413,15 @@ ...@@ -308,6 +413,15 @@
<section id="cust-hooks"> <section id="cust-hooks">
<title>Template Hooks</title> <title>Template Hooks</title>
<warning>
<para>
Template Hooks require Template Toolkit version 2.12 or
above, or the application of a patch. See <ulink
url="http://bugzilla.mozilla.org/show_bug.cgi?id=239112">bug
239112</ulink> for details.
</para>
</warning>
<para> <para>
Template hooks are a way for extensions to Bugzilla to insert code Template hooks are a way for extensions to Bugzilla to insert code
into the standard Bugzilla templates without modifying the template files into the standard Bugzilla templates without modifying the template files
...@@ -541,17 +655,17 @@ ...@@ -541,17 +655,17 @@
allowed to do what. The relevant function is called allowed to do what. The relevant function is called
<filename>CheckCanChangeField()</filename>, <filename>CheckCanChangeField()</filename>,
and is found in <filename>process_bug.cgi</filename> in your and is found in <filename>process_bug.cgi</filename> in your
Bugzilla directory. If you open that file and grep for Bugzilla directory. If you open that file and search for
"sub CheckCanChangeField", you'll find it. <quote>sub CheckCanChangeField</quote>, you'll find it.
</para> </para>
<para> <para>
This function has been carefully commented to allow you to see exactly This function has been carefully commented to allow you to see exactly
how it works, and give you an idea of how to make changes to it. Certain how it works, and give you an idea of how to make changes to it.
marked sections should not be changed - these are the "plumbing" which Certain marked sections should not be changed - these are
makes the rest of the function work. In between those sections, you'll the <quote>plumbing</quote> which makes the rest of the function work.
find snippets of code like: In between those sections, you'll find snippets of code like:
<programlisting> # Allow the owner to change anything. <programlisting> # Allow the assignee to change anything.
if ($ownerid eq $whoid) { if ($ownerid eq $whoid) {
return 1; return 1;
}</programlisting> }</programlisting>
...@@ -560,11 +674,11 @@ ...@@ -560,11 +674,11 @@
<para> <para>
So, how does one go about changing this function? Well, simple changes So, how does one go about changing this function? Well, simple changes
can be made just be removing pieces - for example, if you wanted to can be made just by removing pieces - for example, if you wanted to
prevent any user adding a comment to a bug, just remove the lines marked prevent any user adding a comment to a bug, just remove the lines marked
"Allow anyone to change comments." And if you want the reporter to have <quote>Allow anyone to change comments.</quote> If you don't want the
no special rights on bugs they have filed, just remove the entire section Reporter to have any special rights on bugs they have filed, just
which refers to him. remove the entire section that deals with the Reporter.
</para> </para>
<para> <para>
...@@ -583,8 +697,12 @@ ...@@ -583,8 +697,12 @@
} }
}</programlisting> }</programlisting>
This says that only users in the group "quality_assurance" can change This says that only users in the group "quality_assurance" can change
the QA Contact field of a bug. Getting more weird: the QA Contact field of a bug.
<programlisting> if (($field eq "priority") && </para>
<para>
Getting more weird:
<programlisting><![CDATA[ if (($field eq "priority") &&
(Bugzilla->user->email =~ /.*\@example\.com$/)) (Bugzilla->user->email =~ /.*\@example\.com$/))
{ {
if ($oldvalue eq "P1") { if ($oldvalue eq "P1") {
...@@ -593,11 +711,20 @@ ...@@ -593,11 +711,20 @@
else { else {
return 0; return 0;
} }
}</programlisting> }]]></programlisting>
This says that if the user is trying to change the priority field, This says that if the user is trying to change the priority field,
and their email address is @example.com, they can only do so if the and their email address is @example.com, they can only do so if the
old value of the field was "P1". Not very useful, but illustrative. old value of the field was "P1". Not very useful, but illustrative.
</para> </para>
<warning>
<para>
If you are modifying <filename>process_bug.cgi</filename> in any
way, do not change the code that is bounded by DO_NOT_CHANGE blocks.
Doing so could compromise security, or cause your installation to
stop working entirely.
</para>
</warning>
<para> <para>
For a list of possible field names, look in For a list of possible field names, look in
...@@ -608,29 +735,29 @@ ...@@ -608,29 +735,29 @@
</section> </section>
<section id="dbmodify"> <section id="dbmodify">
<title>Modifying Your Running System</title> <title>Modifying Your Running System</title>
<para>Bugzilla optimizes database lookups by storing all relatively <para>
static information in the Bugzilla optimizes database lookups by storing all relatively
<filename>versioncache</filename> file, located in the static information in the <filename>versioncache</filename>
<filename class="directory">data/</filename> file, located in the <filename class="directory">data/</filename>
subdirectory under your installation directory.</para> subdirectory under your installation directory.
</para>
<para>If you make a change to the structural data in your database (the
versions table for example), or to the
<quote>constants</quote>
encoded in <filename>defparams.pl</filename>, you will need to remove
the cached content from the data directory (by doing a
<quote>rm data/versioncache</quote>
), or your changes won't show up.</para> <para>
If you make a change to the structural data in your database (the
versions table for example), or to the <quote>constants</quote>
encoded in <filename>defparams.pl</filename>, you will need to remove
the cached content from the data directory (by doing a
<command>rm data/versioncache</command>), or your changes won't show up.
</para>
<para> <filename>versioncache</filename> <para>
gets automatically regenerated whenever it's more than <filename>versioncache</filename> gets regenerated automatically
an hour old, so Bugzilla will eventually notice your changes by itself, whenever it's more than an hour old, so Bugzilla will eventually
but generally you want it to notice right away, so that you can test notice your changes by itself, but generally you want it to notice
things.</para> right away, so that you can test things.
</para>
</section> </section>
<section id="dbdoc"> <section id="dbdoc">
......
...@@ -487,12 +487,12 @@ ...@@ -487,12 +487,12 @@
If your account is sufficiently empowered, you can make the same If your account is sufficiently empowered, you can make the same
change to all the bugs in the list - for example, changing their change to all the bugs in the list - for example, changing their
owner.</member> assignee.</member>
<member> <member>
<emphasis>Send mail to bug owners:</emphasis> <emphasis>Send mail to bug assignees:</emphasis>
Sends mail to the owners of all bugs on the list.</member> Sends mail to the assignees of all bugs on the list.</member>
<member> <member>
<emphasis>Edit Search:</emphasis> <emphasis>Edit Search:</emphasis>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment