<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(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.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div id="query" class="clearfix">

  <div id="form">

    <form action="#" method="get">

      <label for="qt">
        <a rel="help">Request-Handler (qt)</a>
      </label>
      <input type="text" id="qt" value="/select" title="Request handler in solrconfig.xml.">

      <fieldset class="common">
        <legend>common</legend>
        <div class="fieldset">

        <label for="q">
          q
        </label>
        <textarea name="q" id="q" title="The query string.">*:*</textarea>

        <label for="fq">
          <a rel="help">fq</a>
        </label>
        <div class="multiple">
          <div class="row clearfix">
            <input type="text" id="fq" name="fq" title="Filter query.">
            <div class="buttons">
              <a class="rem" data-action="0"><span>[-]</span></a>
              <a class="add" data-action="1"><span>[+]</span></a>
            </div>
          </div>
        </div>

        <label for="sort">
          <a rel="help">sort</a>
        </label>
        <input type="text" id="sort" name="sort" title="Sort field or function with asc|desc.">

        <label for="start">
          <a rel="help">start</a>,
          <a rel="help">rows</a>
        </label>
        <div class="clearfix">
          <input type="text" name="start" id="start" placeholder="0" pattern="[0-9]+" title="Number of leading documents to skip. (Integer)">
          <input type="text" name="rows" id="rows" placeholder="10" pattern="[0-9]+" title="Number of documents to return after 'start'. (Integer)">
        </div>

        <label for="fl">
          <a rel="help">fl</a>
        </label>
        <input type="text" name="fl" id="fl" value="" title="Field list, comma separated.">

        <label for="df">
          <a rel="help">df</a>
        </label>
        <input type="text" name="df" id="df" value="" title="Default search field">

        <label for="custom_parameters">
          <a rel="help">Raw Query Parameters</a>
        </label>
        <input type="text" id="custom_parameters" value="" placeholder="key1=val1&amp;key2=val2">

        <label for="wt">
          <a rel="help">wt</a>
        </label>
        <select name="wt" id="wt" title="The writer type (response format).">
          <option>json</option>
          <option>xml</option>
          <option>python</option>
          <option>ruby</option>
          <option>php</option>
          <option>csv</option>
        </select>

        <label for="indent" class="checkbox">
          <input type="checkbox" name="indent" id="indent" value="true" title="Indent results." checked="checked">
          <a rel="help">indent</a>
        </label>

        <label for="debugQuery" class="checkbox">
          <input type="checkbox" name="debugQuery" id="debugQuery" value="true" title="Show timing and diagnostics.">
          <a rel="help">debugQuery</a>
        </label>

        </div>
      </fieldset>

      <fieldset class="dismax optional">
        <legend>
          <label for="dismax" class="checkbox">
            <input type="checkbox" name="defType" id="dismax" value="dismax">
            dismax
          </label>
        </legend>
        <div class="fieldset">

        <label for="q_alt">q.alt</label>
        <input type="text" name="q.alt" id="q_alt" title="Alternate query when 'q' is absent.">

        <label for="qf">qf</label>
        <input type="text" name="qf" id="qf" title="Query fields with optional boosts.">

        <label for="mm">mm</label>
        <input type="text" name="mm" id="mm" title="Min-should-match expression.">

        <label for="pf">pf</label>
        <input type="text" name="pf" id="pf" title="Phrase boosted fields.">

        <label for="ps">ps</label>
        <input type="text" name="ps" id="ps" title="Phrase boost slop.">

        <label for="qs">qs</label>
        <input type="text" name="qs" id="qs" title="Query string phrase slop.">

        <label for="tie">tie</label>
        <input type="text" name="tie" id="tie" title="Score tie-breaker. Try 0.1.">

        <label for="bq">bq</label>
        <input type="text" name="bq" id="bq" title="Boost query.">

        <label for="bf">bf</label>
        <input type="text" name="bf" id="bf" title="Boost function (added).">
      
        </div>
      </fieldset>

      <fieldset class="edismax optional">
        <legend>
          <label for="edismax" class="checkbox">
            <input type="checkbox" name="defType" id="edismax" value="edismax">
            <strong>e</strong>dismax
          </label>
        </legend>
        <div class="fieldset">

        <label for="edismax_q_alt">q.alt</label>
        <input type="text" name="q.alt" id="edismax_q_alt"  title="Alternate query when 'q' is absent.">

        <label for="edismax_qf">qf</label>
        <input type="text" name="qf" id="edismax_qf" title="Query fields with optional boosts.">

        <label for="edismax_mm">mm</label>
        <input type="text" name="mm" id="edismax_mm" title="Min-should-match expression.">

        <label for="edismax_pf">pf</label>
        <input type="text" name="pf" id="edismax_pf" title="Phrase boosted fields.">

        <label for="edismax_ps">ps</label>
        <input type="text" name="ps" id="edismax_ps" title="Phrase boost slop.">

        <label for="edismax_qs">qs</label>
        <input type="text" name="qs" id="edismax_qs" title="Query string phrase slop.">

        <label for="edismax_tie">tie</label>
        <input type="text" name="tie" id="edismax_tie" title="Score tie-breaker. Try 0.1.">

        <label for="edismax_bq">bq</label>
        <input type="text" name="bq" id="edismax_bq" title="Boost query.">

        <label for="edismax_bf">bf</label>
        <input type="text" name="bf" id="edismax_bf" title="Boost function (added).">

        <label for="edismax_uf" title="User Fields">uf</label>
        <input type="text" name="uf" id="edismax_uf">

        <label for="edismax_pf2" title="bigram phrase boost fields">pf2</label>
        <input type="text" name="pf2" id="edismax_pf2">

        <label for="edismax_pf3" title="trigram phrase boost fields">pf3</label>
        <input type="text" name="pf3" id="edismax_pf3">

        <label for="edismax_ps2" title="phrase slop for bigram phrases">ps2</label>
        <input type="text" name="ps2" id="edismax_ps2">

        <label for="edismax_ps3" title="phrase slop for trigram phrases">ps3</label>
        <input type="text" name="ps3" id="edismax_ps3">

        <label for="edismax_boost" title="multiplicative boost function">boost</label>
        <input type="text" name="boost" id="edismax_boost">

        <label for="edismax_stopwords" class="checkbox" title="remove stopwords from mandatory 'matching' component">
          <input type="checkbox" name="stopwords" id="edismax_stopwords" value="true" checked="checked">
          stopwords
        </label>

        <label for="edismax_lowercaseOperators" class="checkbox" title="Enable lower-case 'and' and 'or' as operators">
          <input type="checkbox" name="lowercaseOperators" id="edismax_lowercaseOperators" value="true" checked="checked">
          lowercaseOperators
        </label>
      
        </div>
      </fieldset>

      <fieldset class="hl optional">
        <legend>
          <label for="hl" class="checkbox">
            <input type="checkbox" name="hl" id="hl" value="true" title="Enable highlighting.">
            hl
          </label>
        </legend>
        <div class="fieldset">

        <label for="hl_fl">hl.fl</label>
        <input type="text" name="hl.fl" id="hl_fl" value="" title="Fields to highlight on.">

        <label for="hl_simple_pre">hl.simple.pre</label>
        <input type="text" name="hl.simple.pre" id="hl_simple_pre" value="<em>">

        <label for="hl_simple_post">hl.simple.post</label>
        <input type="text" name="hl.simple.post" id="hl_simple_post" value="</em>">

        <label for="hl_requireFieldMatch" class="checkbox">
          <input type="checkbox" name="hl.requireFieldMatch" id="hl_requireFieldMatch" value="true">
          hl.requireFieldMatch
        </label>

        <label for="hl_usePhraseHighlighter" class="checkbox">
          <input type="checkbox" name="hl.usePhraseHighlighter" id="hl_usePhraseHighlighter" value="true">
          hl.usePhraseHighlighter
        </label>

        <label for="hl_highlightMultiTerm" class="checkbox">
          <input type="checkbox" name="hl.highlightMultiTerm" id="hl_highlightMultiTerm" value="true">
          hl.highlightMultiTerm
        </label>
      
        </div>
      </fieldset>

      <fieldset class="facet optional">
        <legend>
          <label for="facet" class="checkbox">
            <input type="checkbox" name="facet" id="facet" value="true">
            facet
          </label>
        </legend>
        <div class="fieldset">

        <label for="facet_query">facet.query</label>
        <textarea name="facet.query" id="facet_query"></textarea>

        <label for="facet_field">facet.field</label>
        <input type="text" name="facet.field" id="facet_field">

        <label for="facet_prefix">facet.prefix</label>
        <input type="text" name="facet.prefix" id="facet_prefix">

        </div>
      </fieldset>

      <fieldset class="spatial optional">
        <legend>
          <label for="spatial" class="checkbox">
            <input type="checkbox" name="spatial" id="spatial" value="true">
            spatial
          </label>
        </legend>
        <div class="fieldset">

        <label for="pt">pt</label>
        <input type="text" name="pt" id="pt">

        <label for="sfield">sfield</label>
        <input type="text" name="sfield" id="sfield">

        <label for="d">d</label>
        <input type="text" name="d" id="d">
        
        </div>
      </fieldset>

      <fieldset class="spellcheck optional">
        <legend>
          <label for="spellcheck" class="checkbox">
            <input type="checkbox" name="spellcheck" id="spellcheck" value="true">
            spellcheck
          </label>
        </legend>
        <div class="fieldset">

        <label for="spellcheck_build" class="checkbox">
          <input type="checkbox" name="spellcheck.build" id="spellcheck_build" value="true">
          spellcheck.build
        </label>

        <label for="spellcheck_reload" class="checkbox">
          <input type="checkbox" name="spellcheck.reload" id="spellcheck_reload" value="true">
          spellcheck.reload
        </label>

        <label for="spellcheck_q">spellcheck.q</label>
        <input type="text" name="spellcheck.q" id="spellcheck_q">

        <label for="spellcheck_dictionary">spellcheck.dictionary</label>
        <input type="text" name="spellcheck.dictionary" id="spellcheck_dictionary">

        <label for="spellcheck_count">spellcheck.count</label>
        <input type="text" name="spellcheck.count" id="spellcheck_count">

        <label for="spellcheck_onlyMorePopular" class="checkbox">
          <input type="checkbox" name="spellcheck.onlyMorePopular" id="spellcheck_onlyMorePopular" value="true">
          spellcheck.onlyMorePopular
        </label>

        <label for="spellcheck_extendedResults" class="checkbox">
          <input type="checkbox" name="spellcheck.extendedResults" id="spellcheck_extendedResults" value="true">
          spellcheck.extendedResults
        </label>

        <label for="spellcheck_collate" class="checkbox">
          <input type="checkbox" name="spellcheck.collate" id="spellcheck_collate" value="true">
          spellcheck.collate
        </label>

        <label for="spellcheck_maxCollations">spellcheck.maxCollations</label>
        <input type="text" name="spellcheck.maxCollations" id="spellcheck_maxCollations">

        <label for="spellcheck_maxCollationTries">spellcheck.maxCollationTries</label>
        <input type="text" name="spellcheck.maxCollationTries" id="spellcheck_maxCollationTries">

        <label for="spellcheck_accuracy">spellcheck.accuracy</label>
        <input type="text" name="spellcheck.accuracy" id="spellcheck_accuracy">
      
      </fieldset>


      <button type="submit">Execute Query</button>

    </form>

  </div>

  <div id="result">

    <a id="url" class="address-bar" href="#"></a>

    <div id="response">

      <iframe src="about:blank"></iframe>
    
    </div>

  </div>

</div>
