[%# This Source Code Form is subject to the terms of the Mozilla Public
  # License, v. 2.0. If a copy of the MPL was not distributed with this
  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
  #
  # This Source Code Form is "Incompatible With Secondary Licenses", as
  # defined by the Mozilla Public License, v. 2.0.
  #%]

[%# INTERFACE:
  # none
  #%]

[% PROCESS global/header.html.tmpl
  title = "Add keyword"
  subheader = "This page allows you to add a new keyword."
  style_urls = ['skins/standard/admin.css']
%]

<form method="post" action="editkeywords.cgi">
  <table id="admin_table_edit">
    <tr>
      <th>Name:</th>
      <td><input size="64" maxlength="64" name="name" value="" required></td>
    </tr>
    <tr>
      <th>Description:</th>
      <td>
        [% INCLUDE global/textarea.html.tmpl
          name    = 'description'
          minrows = 4
          cols    = 64
          wrap    = 'virtual'
          mandatory = 1
        %]
      </td>
    </tr>
  </table>

  <input type="hidden" name="id" value="-1">
  <input type="submit" id="create" value="Add">
  <input type="hidden" name="action" value="new">
  <input type="hidden" name="token" value="[% token FILTER html %]">
</form>

<hr>

<p><a href="editkeywords.cgi">Edit other keywords</a>.</p>

[% PROCESS global/footer.html.tmpl %]
