<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en" dir="ltr">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>OpenOffice.org Issue Helper</title>
  <script type="text/javascript" src="bugreport.js">
  </script>
</head>

<body onload="PrefillIssueInfoForm();">
<h1>OpenOffice.org Issue Helper<br>
<small>A tool to help you submit a OpenOffice.org issue report in 5 core
steps.</small></h1>
<hr>

<div>
<h2>How does this form help you submit an OpenOffice.org issue report?</h2>

<p>Did you find something that does not work in OpenOffice.org?<br>
Do you have a great new suggestion for a feature or enhancement to
OpenOffice.org?</p>

<p>Filing an issue is the first step to letting the OpenOffice.org <abbr
title="Quality Assurance">QA</abbr> team and developers know about your ideas
and experiences.</p>

<p>The OpenOffice.org <abbr title="Quality Assurance">QA</abbr> team and
developers must be able to reproduce the problem and have enough information
to analyze why the problem is occurring. This form helps you provide
information that is needed by OpenOffice.org <abbr
title="Quality Assurance">QA</abbr> team and developers.  They need this
information to understand and reproduce the issue. Being able to understand
and reproduce issues is the first step towards getting the issue resolved.</p>

<p><strong>Please do not report bugs in other places.</strong> This includes
the mailing lists, news groups, and <abbr
title="Internet Relay Chat">IRC</abbr> channels.</p>

<p>OpenOffice.org <abbr title="Quality Assurance">QA</abbr> team and
developers only work on issues filed in our issues database.</p>
<hr>
<ol>
  <li><strong>Register as an OpenOffice.org user.</strong>
    <p><a href="http://www.openoffice.org/servlets/Join">Create an IssueTracker
    account</a> if you do not already have one.</p>
    <p>After you receive your password, <a
    href="http://www.openoffice.org/servlets/TLogin">log in to the
    OpenOffice.org Website</a>.<br>
    </p>
  </li>
  <li><strong>Find out if OpenOffice.org knows about your issue.</strong>
    <p>We receive thousands of issues from our enthusiastic users.  There is
    a chance that we may know about your issue already.</p>
    <p>If you do a quick check to see if your issue has already been
    reported, you help save the OpenOffice.org<abbr
    title="Quality Assurance">QA</abbr> team and developers time and effort
    by avoiding a repeat issue (or as we call them, "duplicates" ).  The
    OpenOffice.org <abbr title="Quality Assurance">QA</abbr> team and
    developers review all issues posted by users, so repeat issues creates
    extra work for them.</p>
    <p>You can check the list of <a
    href="http://www.openoffice.org/issues/buglist.cgi?resolution=FIXED&amp;resolution=INVALID&amp;resolution=WONTFIX&amp;resolution=LATER&amp;resolution=REMIND&amp;resolution=WORKSFORME&amp;resolution=MOVED&amp;resolution=---&amp;field0-0-0=longdesc&amp;type0-0-0=casesubstring&amp;value0-0-0=has+been+marked+as+a+duplicate+of+this+issue">duplicated
    issues</a>.</p>
    <p>If you do not find your issue here, then search IssueTracker here:</p>

    <form method="get" action="http://www.openoffice.org/issues/buglist.cgi">

      <div>
      <label for="short_desc" accesskey="k">Main words:</label><input
      type="text" size="20" name="short_desc" id="short_desc1"> 
      <input type="submit" value="Submit" name="Search" accesskey="s"></div>
    </form>
    <p>Enter two or three of the main words related to your bug. Try to keep
    them as generic as possible. For example: <tt>crash print</tt> or
    <tt>copy paste</tt>.</p>
    <p>Look through the search results. If you do not get any results, check
    for misspellings in your search words or try other search words.</p>
    <ul>
      <li>If you find an issue that looks the same as yours, you can add
        comments to that issue, but please do not open a new issue.</li>
      <li>If you find bugs similar to yours, read them.  Remember the
        component they were listed under; you will need to know the component
        later.</li>
    </ul>
  </li>
  <li><strong>Answer a few questions in 5 main areas.</strong>
    <p>The following are some questions for you to answer to help fill in
    your issue report to us:</p>

    <form method="get" id="helper" name="helper" action="http://www.openoffice.org/issues/post_bug.cgi">
      <fieldset>
        <legend><strong>Component and Version</strong></legend>
        <table border="0">
          <tbody>
            <tr>
              <td>Please choose the component and version of OpenOffice.org
                for your issue:</td>
            </tr>
          </tbody>
        </table>

        <table border="0">
          <tbody>
            <tr>
              <td><label for="component" accesskey="c">Component:</label></td>
              <td>
                <select name="component"
                onchange="UpdateVersionList(this.form);UpdateSubcomponentList(this.form);"
                id="component">
                  <option value="word processor" selected="selected">Word
                  Processor/Writer</option>
                  <option value="spreadsheet">Spreadsheet/Calc</option>
                  <option value="presentation">Presentation/Impress</option>
                  <option value="installation">Installation</option>
                  <option value="drawing">Drawing</option>
                  <option value="formula editor">Formula Editor</option>
                  <option value="database access">Database Access</option>
                  <option value="l10n">Internationalization</option>
                  <option value="www">OpenOffice.org Website</option>
                </select>
              </td>
            </tr>
            <tr>
              <td><label for="version" accesskey="v">Version:</label></td>
              <td>
                <select name="version" id="version">
                  <option value="1.0.1" selected="selected">1.0.1</option>
                  <option value="1.0.0">1.0.0</option>
                  <option value="643">643</option>
                </select>
              </td>
            </tr>
            <tr>
              <td><label accesskey="s"
                for="subcomponent">Subcomponent:</label></td>
              <td>
                <select name="subcomponent" id="subcomponent">
                  <option value="code" selected="selected">code</option>
                  <option value="definition">definition</option>
                  <option value="documentation">documentation</option>
                  <option value="www">www</option>
                </select>
              </td>
            </tr>
            <tr>
              <td><strong>Component:</strong></td>
              <td>The part of OpenOffice.org
                this issue occurred with, i.e. the Word Processor,
                SpreadSheet, etc.</td>
            </tr>
            <tr>
              <td><strong>Version:</strong></td>
              <td>The version of OpenOffice.org
                this issue occur with.</td>
            </tr>
            <tr>
              <td><strong>Subcomponent:</strong></td>
              <td>In most cases, this
                field can be left as is.</td>
            </tr>
            <tr>
              <td><strong>Hint:</strong></td>
              <td>Ideally you should be using the latest version of
                OpenOffice.org.</td>
            </tr>
          </tbody>
        </table>
      </fieldset>
      <fieldset>
        <legend><strong>Hardware and Operating System</strong></legend>
        <table border="0">
          <tbody>
            <tr>
              <td>Please choose the hardware and operating system on which
                OpenOffice.org was running for your issue:</td>
            </tr>
          </tbody>
        </table>

        <table border="0">
          <tbody>
            <tr>
              <td><label for="platform" accesskey="p">Hardware:</label></td>
              <td>
                <select name="platform" id="platform">
                  <option value="All" selected="selected">All</option>
                  <option value="PC">PC</option>
                  <option value="Sun">Sun</option>
                  <option value="Macintosh">Macintosh</option>
                  <option value="SGI">SGI</option>
                  <option value="DEC">DEC</option>
                  <option value="Other">Other</option>
                </select>
              </td>
            </tr>
            <tr>
              <td><label for="OS" accesskey="o">Operating System:</label></td>
              <td>
                <select name="OS" id="OS">
                  <option value="All" selected="selected">All </option>
                  <option value="Windows 2000">Windows 2000</option>
                  <option value="Windows XP">Windows XP</option>
                  <option value="Windows 98">Windows 98</option>
                  <option value="Windows NT">Windows NT</option>
                  <option value="Windows ME">Windows ME</option>
                  <option value="Windows 95">Windows 95</option>
                  <option value="Solaris">Solaris</option>
                  <option value="Linux">Linux</option>
                  <option value="MacOS X">MacOS X</option>
                  <option value="FreeBSD">FreeBSD</option>
                  <option value="NetBSD">NetBSD</option>
                  <option value="OpenBSD">OpenBSD</option>
                  <option value="IRIX">IRIX</option>
                  <option value="OSF/1">OSF/1</option>
                  <option value="BeOS">BeOS</option>
                  <option value="other">other</option>
                </select>
              </td>
            </tr>
            <tr>
              <td><strong>Hardware:</strong></td>
              <td><span id="hardwareDescription">The type of your computer
                hardware.  If you don't know, use <abbr
                title="Personal Computer">PC</abbr>.</span></td>
            </tr>
            <tr>
              <td><strong>Operating System:</strong></td>
              <td><span id="osDescription">The operating system your computer
                uses.</span></td>
            </tr>
            <tr>
              <td><strong>Hint:</strong></td>
              <td>You can provide us with more details about your <abbr
                title="Operating System">OS</abbr> in the instructions
                section<br>
                (patch level, drivers, library version, <abbr
                title="et cetera" lang="la">etc.</abbr>)</td>
            </tr>
          </tbody>
        </table>
      </fieldset>
      <fieldset>
        <legend><strong>Summary</strong></legend>
        <table border="0">
          <tbody>
            <tr>
              <td>Please enter a descriptive and unique summary for your
                issue:</td>
            </tr>
          </tbody>
        </table>

        <table border="0">
          <tbody>
            <tr>
              <td><label accesskey="s" for="short_desc">Summary:</label></td>
              <td><input type="text" size="84" name="short_desc"
              id="short_desc"></td>
            </tr>
            <tr>
              <td><strong>Hint:</strong></td>
              <td><span id="summaryDescription">The summary should be short,
                unique and descriptive.</span></td>
            </tr>
            <tr>
              <td></td>
              <td>"OpenOffice fails to export bullet symbols to Word 95
                files" is a good example.</td>
            </tr>
          </tbody>
        </table>
      </fieldset>
      <fieldset>
        <legend><strong>Instructions to Consistently Reproduce the
        Bug</strong></legend>
        <table border="0">
          <tbody>
            <tr>
              <td>You can attach a small, simple file that demonstrates the
                issue after you submit this issue.</td>
            </tr>
            <tr>
              <td>Please enter step by step instructions to reproduce your
                issue:</td>
            </tr>
          </tbody>
        </table>

        <table border="0">
          <tbody>
            <tr>
              <td><label for="comment"
              accesskey="d">Description:</label></td>
              <td><textarea cols="83" rows="8" id="comment"
                name="comment">Description of Problem:


Steps to reproduce the problem:
1.
2.
3.

Actual Results:


Expected Results:


How often does this happen?


Additional Information (OS patch level, drivers, library
version, etc.)</textarea></td>
            </tr>
            <tr>
              <td><strong>Hint:</strong></td>
              <td><span id="summaryDescriptionFooter">One bug per issue
                please. Ideally, your bug should be reproducible 100% of the
                time using your instructions.</span></td>
            </tr>
          </tbody>
        </table>
      </fieldset>
      <fieldset>
        <legend><strong>Issue Type</strong></legend>
        <table border="0">
          <tbody>
            <tr>
              <td>Please choose which type of issue you want to report:</td>
            </tr>
          </tbody>
        </table>

        <table border="0">
          <tbody>
            <tr>
              <td><label accesskey="i" for="type">Issue Type:</label></td>
              <td>
                <select name="type" id="type">
                  <option value="defect" selected="selected">DEFECT</option>
                  <option value="enhancement">ENHANCEMENT</option>
                  <option value="feature">FEATURE</option>
                </select>
              </td>
              <td></td>
            </tr>
            <tr>
              <td><strong>Hint:</strong></td>
              <td><span id="typeDescription">Choose
                <strong>"Defect"</strong> if OpenOffice.org does not work as
                expected.</span></td>
              <td></td>
            </tr>
            <tr>
              <td></td>
              <td>Choose <strong>"Enhancement"</strong> for improvement
              ideas.</td>
              <td></td>
            </tr>
            <tr>
              <td></td>
              <td>Choose <strong>"Feature"</strong> for features that do not
                exist in the version you are using.</td>
              <td></td>
            </tr>
          </tbody>
        </table>
      </fieldset>
    </form>
  </li>
  <li><strong>Submit your bug to IssueTracker.</strong>
    <p>
    <input type="button" id="open" onclick="OpenEnterBugPage()" name="open"
    value="Submit my bug!"></p>
  </li>
</ol>
</div>
</body>
</html>
