<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
    <title>Submit an Issue - Preparation</title>
  </head>
  <body>
    <h1>Submit an Issue</h1>
    <p>Thank you for taking the time to submit an issue! We really appreciate your help in constantly improving
    OpenOffice!<br/>
    <span style="font-style: italic; font-weight: bold;" >Before</span> you <a href="submission_gateway.html">proceed</a>,
    please consider the following</p>

    <h4><a name="login"></a>Are you registered and logged in?</h4>
    <p>For submitting an issue, you need to <a href="https://issues.apache.org/ooo/index.cgi?GoAheadAndLogIn=1">log in</a>. If you do
    not yet have an OpenOffice Bugzilla account, please <a href="https://issues.apache.org/ooo/createaccount.cgi">apply</a>. This is
    necessary, as issues are bound to their submitter, which, for example, enables other people who work on the reported
    problem to ask you back in case of uncertainties.</p>

    <h4><a name="duplicates"></a>Did you check if your problem is already reported?</h4>

    <p></p>Unfortunately, too many issues get reported twice (or much more often).
    You, as the submitter who exactly knows the problem, often are much
    faster in finding the duplicates than other people. So please take some
    minutes to see if your problem is already reported</a>. If so, you can add yourself to
    the cc-list of the issue, to be notified whenever something in this
    issue changes (e.g. when it's fixed):</p>

    <p>Enter one or more of the main words having to do with your issue. For example:
    'LDAP', 'crash toolbar' or 'copy paste Writer':</p>
<form action="http://issues.apache.org/ooo/buglist.cgi" method="get">
      <table>
        <tbody>
          <tr>
            <td>Summary or Description contains:</td>
            <td><input size="30" name="quicksearch" type="text" class="inputtext"/></td>
            <td><input value="Search" type="submit"></td>
            <td>(<a href="http://issues.apache.org/ooo/query.cgi?format=advanced">advanced search</a>)</td>
          </tr>
        </tbody>
      </table>
    </form>

    <h4><a name="read_the_rules"></a>Do you know the rules?</h4>
    <p>If this is the first issue you submit, please take a moment to read the
    <a href="basic_rules.html">the basic rules</a>. They take you very
    little time to follow, but potentially, they save a lot of other people
    a lot of time. Short and simple, these are:<br>
    <ul>
      <li><a href="basic_rules.html#one_per_issue">One problem - one issue</a></li>
      <li><a href="basic_rules.html#summary">Provide a meaningful summary</a></li>
      <li><a href="basic_rules.html#reproducibility">Provide step-by-step descriptions</a></li>
      <li><a href="basic_rules.html#bugdoc">Provide sample documents, if possible</a></li>
      <li><a href="basic_rules.html#attachments">Use Attachments where possible</a></li>
      <li><a href="basic_rules.html#complete">Put all relevant information into the issue</a></li>
    </ul>

    <h4><a name="help"></a>Do you need help with Bugzilla?</h4>
    <p>In case you need help for the control fields in the submission form: Besides most fields, there's
        a link to a help text - make use of it! Or, read the detailed <a href="bug_writing_guidelines.html">Issue
        Writing Guidelines</a> first.</p>

    <p>Also note that native language projects provide help for issue tracker Bugzilla too.</p>

    <div style="text-align: center;"><a style="font-weight: bold;"
     href="submission_gateway.html"><font size="+1">Go on - submit the issue</font>
    </a></div>
  </body>
</html>
