| <!-- |
| 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> |
| <label for="qt" title="Request handler in solrconfig.xml."> |
| <a rel="help">Request-Handler (qt)</a> |
| </label> |
| <input type="text" ng-model="qt" id="qt" placeholder="/select" value="/select" title="Request handler in solrconfig.xml."> |
| |
| <fieldset class="common"> |
| <legend>common</legend> |
| <div class="fieldset"> |
| |
| <label for="q" title="The query string."> |
| q |
| </label> |
| <textarea name="q" ng-model="val['q']" id="q" title="The query string.">*:*</textarea> |
| |
| <label for="qOp" title="The query operator."> |
| q.op |
| </label> |
| <select ng-model="val['q.op']" id="qOp" name="q.op" title="The query operator."> |
| <option value="AND">AND</option> |
| <option value="OR">OR</option> |
| </select> |
| |
| <label for="fq" title="Filter query."> |
| <a rel="help">fq</a> |
| </label> |
| <div class="multiple" id="fq"> |
| <div class="row clearfix" ng-repeat="filter in filters"> |
| <input type="text" ng-model="filter.fq" name="fq" title="Filter query."> |
| <div class="buttons"> |
| <a class="rem" ng-click="removeFilter($index)"><span></span></a> |
| <a class="add" ng-click="addFilter($index)"><span></span></a> |
| </div> |
| </div> |
| </div> |
| |
| <label for="sort" title="Sort field or function with asc|desc."> |
| <a rel="help">sort</a> |
| </label> |
| <input type="text" ng-model="val['sort']" id="sort" name="sort" title="Sort field or function with asc|desc."> |
| |
| <label for="start" title="Number of leading documents to skip and number of documents to return after 'start'. (Integers)"> |
| <a rel="help">start</a>, |
| <a rel="help">rows</a> |
| </label> |
| <div class="clearfix"> |
| <input type="text" name="start" ng-model="val['start']" id="start" placeholder="0" pattern="[0-9]+" title="Number of leading documents to skip. (Integer)"> |
| <input type="text" name="rows" ng-model="val['rows']" id="rows" placeholder="10" pattern="[0-9]+" title="Number of documents to return after 'start'. (Integer)"> |
| </div> |
| |
| <label for="fl" title="Field list, comma separated."> |
| <a rel="help">fl</a> |
| </label> |
| <input type="text" ng-model="val['fl']" name="fl" id="fl" value="" title="Field list, comma separated."> |
| |
| <label for="df" title="Default search field"> |
| <a rel="help">df</a> |
| </label> |
| <input type="text" ng-model="val['df']" name="df" id="df" value="" title="Default search field"> |
| |
| <label for="wt" title="The writer type (response format)."> |
| <a rel="help">wt</a> |
| </label> |
| <select name="wt" ng-model="val['wt']" id="wt" title="The writer type (response format)."> |
| <option ng-selected="selected" value=''>------</option> |
| <option>json</option> |
| <option>xml</option> |
| <option>python</option> |
| <option>ruby</option> |
| <option>php</option> |
| <option>csv</option> |
| </select> |
| |
| <label for="indent" class="checkbox" title="Enable indenting of results."> |
| <input type="checkbox" ng-model="val['indent']" name="indent" id="indent" title="Enable indenting of results." ng-true-value="true" ng-false-value="false"> |
| indent on |
| </label> |
| |
| </div> |
| </fieldset> |
| |
| <fieldset class="debugQuery optional"> |
| <legend> |
| <label for="debugQuery" class="checkbox" title="Show timing and diagnostics."> |
| <input type="checkbox" ng-model="val['debugQuery']" name="debugQuery" id="debugQuery" value="true"> |
| debugQuery |
| </label> |
| </legend> |
| <div class="fieldset" ng-show="isDebugQuery"> |
| |
| <label for="debug_explain_structured" class="checkbox" title="Show Score explanations as nested structures."> |
| <input type="checkbox" ng-model="val['debug.explain.structured']" name="debug.explain.structured" id="debug_explain_structured" value="true"> |
| debug.explain.structured |
| </label> |
| |
| </div> |
| </fieldset> |
| |
| <fieldset class="dismax optional"> |
| <legend> |
| <label for="defType" class="checkbox" title="Choose defType"> |
| defType |
| <select ng-model="val['defType']" name="defType" id="defType"> |
| <option ng-selected="selected" value=''>lucene</option> |
| <option>dismax</option> |
| <option>edismax</option> |
| </select> |
| </label> |
| </legend> |
| |
| <div class="fieldset" ng-show="val['defType']!=''"> |
| <label for="q_alt" title="Alternate query when 'q' is absent.">q.alt</label> |
| <input type="text" ng-model="val['q.alt']" name="q.alt" id="q_alt" title="Alternate query when 'q' is absent."> |
| |
| <label for="qf" title="Query fields with optional boosts.">qf</label> |
| <input type="text" ng-model="val['qf']" name="qf" id="qf" title="Query fields with optional boosts."> |
| |
| <label for="mm" title="Min-should-match expression.">mm</label> |
| <input type="text" ng-model="val['mm']" name="mm" id="mm" title="Min-should-match expression."> |
| |
| <label for="pf" title="Phrase boosted fields.">pf</label> |
| <input type="text" ng-model="val['pf']" name="pf" id="pf" title="Phrase boosted fields."> |
| |
| <label for="ps" title="Phrase boost slop.">ps</label> |
| <input type="text" ng-model="val['ps']" name="ps" id="ps" title="Phrase boost slop."> |
| |
| <label for="qs" title="Query string phrase slop.">qs</label> |
| <input type="text" ng-model="val['qs']" name="qs" id="qs" title="Query string phrase slop."> |
| |
| <label for="tie" title="Score tie-breaker. Try 0.1.">tie</label> |
| <input type="text" ng-model="val['tie']" name="tie" id="tie" title="Score tie-breaker. Try 0.1."> |
| |
| <label for="bq" title="Boost query.">bq</label> |
| <input type="text" ng-model="val['bq']" name="bq" id="bq" title="Boost query."> |
| |
| <label for="bf" title="Boost function (added).">bf</label> |
| <input type="text" ng-model="val['bf']" name="bf" id="bf" title="Boost function (added)."> |
| <div ng-show="val['defType']=='edismax'"> |
| <label for="uf" title="User Fields">uf</label> |
| <input type="text" ng-model="val['uf']" name="uf" id="uf" title="User Fields"> |
| |
| <label for="pf2" title="bigram phrase boost fields">pf2</label> |
| <input type="text" ng-model="val['pf2']" name="pf2" id="pf2" title="bigram phrase boost fields"> |
| |
| <label for="pf3" title="trigram phrase boost fields">pf3</label> |
| <input type="text" ng-model="val['pf3']" name="pf3" id="pf3" title="trigram phrase boost fields"> |
| |
| <label for="ps2" title="phrase slop for bigram phrases">ps2</label> |
| <input type="text" ng-model="val['ps2']" name="ps2" id="ps2" title="phrase slop for bigram phrases"> |
| |
| <label for="ps3" title="phrase slop for trigram phrases">ps3</label> |
| <input type="text" ng-model="val['ps3']" name="ps3" id="ps3" title="phrase slop for trigram phrases"> |
| |
| <label for="boost" title="multiplicative boost function">boost</label> |
| <input type="text" ng-model="val['boost']" name="boost" id="boost" title="multiplicative boost function"> |
| |
| <label for="stopwords" class="checkbox" title="remove stopwords from mandatory 'matching' component"> |
| <input type="checkbox" ng-model="val['stopwords']" name="stopwords" id="stopwords"> |
| stopwords |
| </label> |
| |
| <label for="lowercaseOperators" class="checkbox" title="Enable lower-case 'and' and 'or' as operators"> |
| <input type="checkbox" ng-model="val['lowercaseOperators']" name="lowercaseOperators" id="lowercaseOperators"> |
| lowercaseOperators |
| </label> |
| </div> |
| </div> |
| </fieldset> |
| |
| <fieldset class="hl optional"> |
| <legend> |
| <label for="hl" class="checkbox" title="Enable highlighting."> |
| <input type="checkbox" ng-model="val['hl']" name="hl" id="hl" value="true"> |
| hl |
| </label> |
| </legend> |
| <div class="fieldset" ng-show="val['hl']"> |
| |
| <label for="hl_fl" title="Fields to highlight on.">hl.fl</label> |
| <input type="text" ng-model="val['hl.fl']" name="hl.fl" id="hl_fl" value="" title="Fields to highlight on."> |
| |
| <label for="hl_simple_pre">hl.simple.pre</label> |
| <input type="text" ng-model="val['hl.simple.pre']" name="hl.simple.pre" id="hl_simple_pre" value="<em>"> |
| |
| <label for="hl_simple_post">hl.simple.post</label> |
| <input type="text" ng-model="val['hl.simple.post']" name="hl.simple.post" id="hl_simple_post" value="</em>"> |
| |
| <label for="hl_requireFieldMatch" class="checkbox"> |
| <input type="checkbox" ng-model="val['hl.requireFieldMatch']" name="hl.requireFieldMatch" id="hl_requireFieldMatch" value="true"> |
| hl.requireFieldMatch |
| </label> |
| |
| <label for="hl_usePhraseHighlighter" class="checkbox"> |
| <input type="checkbox" ng-model="val['hl.usePhraseHighLighter']" name="hl.usePhraseHighlighter" id="hl_usePhraseHighlighter" value="true"> |
| hl.usePhraseHighlighter |
| </label> |
| |
| <label for="hl_highlightMultiTerm" class="checkbox"> |
| <input type="checkbox" ng-model="val['hl.highlightMultiTerm']" name="hl.highlightMultiTerm" id="hl_highlightMultiTerm" value="true"> |
| hl.highlightMultiTerm |
| </label> |
| |
| </div> |
| </fieldset> |
| |
| <fieldset class="facet optional"> |
| <legend> |
| <label for="facet" class="checkbox" title="Enable faceting."> |
| <input type="checkbox" ng-model="val['facet']" name="facet" id="facet"> |
| facet |
| </label> |
| </legend> |
| <div class="fieldset" ng-show="val['facet']"> |
| |
| <label for="facet_query">facet.query</label> |
| <textarea ng-model="val['facet.query']" name="facet.query" id="facet_query"></textarea> |
| |
| <label for="facet_field">facet.field</label> |
| <input type="text" ng-model="val['facet.field']" name="facet.field" id="facet_field"> |
| |
| <label for="facet_prefix">facet.prefix</label> |
| <input type="text" ng-model="val['facet.prefix']" name="facet.prefix" id="facet_prefix"> |
| |
| <label for="facet_contains">facet.contains</label> |
| <input type="text" ng-model="val['facet.contains']" name="facet.contains" id="facet_contains"> |
| |
| <label for="facet_contains_ignoreCase" class="checkbox"> |
| <input type="checkbox" ng-model="val['facet.contains.ignoreCase']" name="facet.contains.ignoreCase" id="facet_contains_ignoreCase"> |
| facet.contains.ignoreCase |
| </label> |
| |
| <label for="facet_limit">facet.limit</label> |
| <input type="text" ng-model="val['facet.limit']" name="facet.limit" id="facet_limit"> |
| |
| <label for="facet_matches">facet.matches</label> |
| <input type="text" ng-model="val['facet.matches']" name="facet.matches" id="facet_matches"> |
| |
| <label for="facet_sort">facet.sort</label> |
| <select ng-model="val['facet.sort']" id="facet_sort" name="facet.sort" title="Ordering of the facet field constraints"> |
| <option ng-selected="selected" value="">------</option> |
| <option value="count">count</option> |
| <option value="index">index</option> |
| </select> |
| |
| <label for="facet_mincount">facet.mincount</label> |
| <input type="text" ng-model="val['facet.mincount']" name="facet.mincount" id="facet_mincount"> |
| |
| <label for="facet_missing" class="checkbox"> |
| <input type="checkbox" ng-model="val['facet.missing']" name="facet.missing" id="facet_missing"> |
| facet.missing |
| </label> |
| </div> |
| </fieldset> |
| |
| <fieldset class="spatial optional"> |
| <legend> |
| <label for="spatial" class="checkbox" title="Show spatial options"> |
| <input type="checkbox" ng-model="val['spatial']" name="spatial" id="spatial"> |
| spatial |
| </label> |
| </legend> |
| <div class="fieldset" ng-show="val['spatial']"> |
| |
| <label for="pt">pt</label> |
| <input type="text" ng-model="val['spatial.pt']" name="pt" id="pt"> |
| |
| <label for="sfield">sfield</label> |
| <input type="text" ng-model="val['spatial.sfield']" name="sfield" id="sfield"> |
| |
| <label for="d">d</label> |
| <input type="text" ng-model="val['spatial.d']" name="d" id="d"> |
| |
| </div> |
| </fieldset> |
| |
| <fieldset class="spellcheck optional"> |
| <legend> |
| <label for="spellcheck" class="checkbox" title="Enable spellchecking."> |
| <input type="checkbox" ng-model="val['spellcheck']" name="spellcheck" id="spellcheck"> |
| spellcheck |
| </label> |
| </legend> |
| <div class="fieldset" ng-show="val['spellcheck']"> |
| |
| <label for="spellcheck_build" class="checkbox"> |
| <input type="checkbox" ng-model="val['spellcheck.build']" name="spellcheck.build" id="spellcheck_build" value="true"> |
| spellcheck.build |
| </label> |
| |
| <label for="spellcheck_reload" class="checkbox"> |
| <input type="checkbox" ng-model="val['spellcheck.reload']" name="spellcheck.reload" id="spellcheck_reload" value="true"> |
| spellcheck.reload |
| </label> |
| |
| <label for="spellcheck_q">spellcheck.q</label> |
| <input type="text" ng-model="val['spellcheck.q']" name="spellcheck.q" id="spellcheck_q"> |
| |
| <label for="spellcheck_dictionary">spellcheck.dictionary</label> |
| <input type="text" ng-model="val['spellcheck.dictionary']" name="spellcheck.dictionary" id="spellcheck_dictionary"> |
| |
| <label for="spellcheck_count">spellcheck.count</label> |
| <input type="text" ng-model="val['spellcheck.count']" name="spellcheck.count" id="spellcheck_count"> |
| |
| <label for="spellcheck_onlyMorePopular" class="checkbox"> |
| <input type="checkbox" ng-model="val['spellcheck.onlyMorePopular']" name="spellcheck.onlyMorePopular" id="spellcheck_onlyMorePopular" value="true"> |
| spellcheck.onlyMorePopular |
| </label> |
| |
| <label for="spellcheck_extendedResults" class="checkbox"> |
| <input type="checkbox" ng-model="val['spellcheck.extendedResults']" name="spellcheck.extendedResults" id="spellcheck_extendedResults" value="true"> |
| spellcheck.extendedResults |
| </label> |
| |
| <label for="spellcheck_collate" class="checkbox"> |
| <input type="checkbox" ng-model="val['spellcheck.collate']" name="spellcheck.collate" id="spellcheck_collate" value="true"> |
| spellcheck.collate |
| </label> |
| |
| <label for="spellcheck_maxCollations">spellcheck.maxCollations</label> |
| <input type="text" ng-model="val['spellcheck.maxCollations']" name="spellcheck.maxCollations" id="spellcheck_maxCollations"> |
| |
| <label for="spellcheck_maxCollationTries">spellcheck.maxCollationTries</label> |
| <input type="text" ng-model="val['spellcheck.maxCollationTries']" name="spellcheck.maxCollationTries" id="spellcheck_maxCollationTries"> |
| |
| <label for="spellcheck_accuracy">spellcheck.accuracy</label> |
| <input type="text" ng-model="val['spellcheck.accuracy']" name="spellcheck.accuracy" id="spellcheck_accuracy"> |
| </div> |
| </fieldset> |
| <fieldset class="additional optional"> |
| <label for="custom_parameters"> |
| <a rel="help">Raw Query Parameters</a> |
| </label> |
| <input type="text" ng-model="rawParams" id="custom_parameters" value="" placeholder="key1=val1&key2=val2"> |
| </fieldset> |
| |
| <button type="submit" ng-click="doQuery()">Execute Query</button> |
| </form> |
| </div> |
| |
| <div id="result"> |
| <div ng-show="response.data" id="response"> |
| <a id="url" class="address-bar" ng-href="{{url}}">{{hostPortContext}}{{url}}</a> |
| <pre class="syntax language-{{lang}}"><code ng-bind-html="response.data | highlight:lang | unsafe"></code></pre> |
| </div> |
| </div> |
| </div> |