#from kojiweb import util
#from urllib.parse import quote

#include "includes/header.chtml"


  <h4>Search</h4>
  <form action="search">
    <table>
      <tr>
        #if $error
        <tr><td colspan="5" class="error">$error</td></tr>
        #end if
        <th>Search</th>
        #try
            #set $old_terms = util.escapeHTML($terms)
        #except
            #set $old_terms = ""
        #end try
        <td><input type="text" name="terms" value="$old_terms"/></td>
        <td>
          <select name="type">
            <option $util.toggleSelected($self, $type, "package") value="package">Packages</option>
            <option $util.toggleSelected($self, $type, "build") value="build">Builds</option>
            <option $util.toggleSelected($self, $type, "tag") value="tag">Tags</option>
            <option $util.toggleSelected($self, $type, "target") value="target">Build Targets</option>
            <option $util.toggleSelected($self, $type, "user") value="user">Users</option>
            <option $util.toggleSelected($self, $type, "host") value="host">Hosts</option>
            <option $util.toggleSelected($self, $type, "rpm") value="rpm">RPMs</option>
            #if $mavenEnabled
            <option $util.toggleSelected($self, $type, "maven") value="maven">Maven Artifacts</option>
            #end if
            #if $winEnabled
            <option $util.toggleSelected($self, $type, "win") value="win">Windows Artifacts</option>
            #end if
          </select>
        </td>
        <td>
          #if not $varExists('match')
             #set $match='glob'
          #end if
          <input type="radio" name="match" value="glob" $util.toggleSelected($self, $match, "glob", True) id="radioglob"/><abbr title="? will match any single character, * will match any sequence of zero or more characters" id="abbrglob">glob</abbr>
          <input type="radio" name="match" value="regexp" $util.toggleSelected($self, $match, "regexp", True) id="radioregexp"/><abbr title="full POSIX regular expressions" id="abbrregexp">regexp</abbr>
          <input type="radio" name="match" value="exact" $util.toggleSelected($self, $match, "exact", True) id="radioexact"/><abbr title="exact matches only" id="abbrexact">exact</abbr>
        </td>
        <td colspan="2"><input type="submit" value="Search"/></td>
      </tr>
      <tr>
        <td>&nbsp;</td>
      </tr>
    </table>
  </form>


#if $varExists('results')

  <table class="data-list">
    <tr>
      <td class="paginate" colspan="2">
        #if $len($resultPages) > 1
        <form class="pageJump" action="">
          Page:
          <select onchange="javascript: window.location = 'search?start=' + this.value * $resultRange + '$util.passthrough($self, 'order', 'terms', 'type', 'match')';">
            #for $pageNum in $resultPages
            <option value="$pageNum"#if $pageNum == $resultCurrentPage then ' selected="selected"' else ''#>#echo $pageNum + 1#</option>
            #end for
          </select>
        </form>
        #end if
        #if $resultStart > 0
        <a href="search?start=#echo $resultStart - $resultRange #$util.passthrough($self, 'order', 'terms', 'type', 'match')">&lt;&lt;&lt;</a>
        #end if
        #if $totalResults != 0
        <strong>Results #echo $resultStart + 1 # through #echo $resultStart + $resultCount # of $totalResults</strong>
        #end if
        #if $resultStart + $resultCount < $totalResults
        <a href="search?start=#echo $resultStart + $resultRange#$util.passthrough($self, 'order', 'terms', 'type', 'match')">&gt;&gt;&gt;</a>
        #end if
      </td>
    </tr>
    <tr class="list-header">
      <th><a href="search?order=$util.toggleOrder($self, 'id')$util.passthrough($self, 'terms', 'type', 'match')">ID</a> $util.sortImage($self, 'id')</th>
      <th><a href="search?order=$util.toggleOrder($self, 'name')$util.passthrough($self, 'terms', 'type', 'match')">Name</a> $util.sortImage($self, 'name')</th>
    </tr>
    #if $len($results) > 0
    #for $result in $results
    <tr class="$util.rowToggle($self)">
      <td>$result.id</td>
      <td><a href="${infoURL % $result}">$result.name</a></td>
    </tr>
    #end for
    #else
    <tr class="row-odd">
      <td colspan="2">No search results</td>
    </tr>
    #end if
    <tr>
      <td class="paginate" colspan="2">
        #if $len($resultPages) > 1
        <form class="pageJump" action="">
          Page:
          <select onchange="javascript: window.location = 'search?start=' + this.value * $resultRange + '$util.passthrough($self, 'order', 'terms', 'type', 'match')';">
            #for $pageNum in $resultPages
            <option value="$pageNum"#if $pageNum == $resultCurrentPage then ' selected="selected"' else ''#>#echo $pageNum + 1#</option>
            #end for
          </select>
        </form>
        #end if
        #if $resultStart > 0
        <a href="search?start=#echo $resultStart - $resultRange #$util.passthrough($self, 'order', 'terms', 'type', 'match')">&lt;&lt;&lt;</a>
        #end if
        #if $totalResults != 0
        <strong>Results #echo $resultStart + 1 # through #echo $resultStart + $resultCount # of $totalResults</strong>
        #end if
        #if $resultStart + $resultCount < $totalResults
        <a href="search?start=#echo $resultStart + $resultRange#$util.passthrough($self, 'order', 'terms', 'type', 'match')">&gt;&gt;&gt;</a>
        #end if
      </td>
    </tr>
  </table>
#end if

#include "includes/footer.chtml"
