<header>
  <a href="/"
     class="logo"><h1><span><%= title() // loc('korap_desc') %></span></h1></a>
  <div class="button top">
<!--
    <a href="#"
       class="login"
       title="<%= loc 'login' %>"><span><%= loc 'login' %></span></a>
-->
  </div>
  <form autocomplete="off" action="<%= url_for 'index' %>">
    <div id="searchbar">
      %= search_field 'q', id => 'q-field', autofocus => 'autofocus', placeholder => loc('searchplaceholder'), spellcheck => 'false', autocomplete => 'off', autocorrect => 'off', autocapitalize => 'off'
      <button type="submit" title="<%= loc 'go' %>"><span><%= loc 'go' %></span></button>
    </div>
    <!-- Search in the following virtual collection -->
    <!--
    <div id="vc-view"></div>
    <%= loc 'in' %> <input type="hidden" id="vc-name" name="vc-name" value="Wikipedia" />
    <input type="text" name="vc" id="vc" value="corpusID = Wikipedia" />
    -->
    <%= loc 'with' %>
    <span class="select">
      %= select_field 'ql', [[Poliqarp => 'poliqarp'], ['Cosmas II' => 'cosmas2'], ['Annis' => 'annis'], ['CQL v1.2' => 'cql']], id => 'ql-field'
    </span>
    <div class="button right">
      % param(cutoff => 1) unless param 'q';
      %= check_box cutoff => 1, id => 'q-cutoff-field', class => 'checkbox'
      <label for="q-cutoff-field"><span></span><%= loc('glimpse') %></label>
<!--
      % unless (current_route 'tutorial') {
      <a href="/doc/faq"
	 title="<%= loc 'faq' %>"
	 class="question"
	 id="view-faq"><span><%= loc 'faq' %></span></a>
      % };
-->
      <a href="/doc"
	 title="<%= loc 'tutorial' %>"
	 class="tutorial"
	 id="view-tutorial"><span><%= loc 'tutorial' %></span></a>
    </div>
  </form>
</header>
