content: -- ----------------------------------------------------------------------------
  
  {- |
    Module     : Hayoo.Search.Pages.Main
    Copyright  : Copyright (C) 2010 Timo B. Huebel
    License    : MIT
  
    Maintainer : Timo B. Huebel (tbh@holumbus.org)
    Stability  : experimental
    Portability: portable
    Version    : 0.1
  
    The main Hayoo! page.
   
  -}
  
  -- ----------------------------------------------------------------------------
  
  {-# LANGUAGE OverloadedStrings #-}
  s
  module Hayoo.Search.Pages.Main
  
  import Text.XHtmlCombinators
  import Text.XHtmlCombinators.Attributes
  
  template :: XHtml Page
  template = html True $ do
    head_ $ do
      meta [http-equiv "content-type", content "text/html; charset=UTF-8"]
  
  {-
  
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
  
    <meta name="keywords" content="Haskell, API, Search, Hackage, Functions, Types, Packages" />
    <meta name="description" lang="en" content="A Haskell API search engine with find-as-you-type and suggestions. Searches for function and type defintions in all Haskell packages from Hackage." />
  
    <link href="hayoo/favicon.ico" type="image/ico" rel="Shortcut icon"/>
    <link rel="stylesheet" type="text/css" href="hayoo/hayoo.css"/>
    <link rel="search" type="application/opensearchdescription+xml" title="Hayoo!" href="hayoo/opensearch.xml"/>
    
    <title>Hayoo! - Haskell API Search</title>  
  
    <script src="hayoo/prototype.js" type="text/javascript">&nbsp;</script>
    <script src="hayoo/hayoo.js" type="text/javascript">&nbsp;</script>
  
  </head>
  
  <body>
    <div id="container">	
      <div id="info">
        <a href="help.html">Help</a> |
        <a href="about.html">About</a> |
        <a href="api.html">API</a> |
        <a href="/blog">Blog</a> |
        <a href="http://hackage.haskell.org">Hackage</a> |
        <a href="http://www.haskell.org">Haskell</a>
      </div>
  
      <div id="query">
        <div id="logo">
          <a href="hayoo.html"><img class="logo" src="hayoo/hayoo.png" alt="Hayoo logo"/></a>
        </div>
  
        <form id="queryform" onsubmit="return forceProcessQuery()" method="get" action="hayoo.html">
          <div id="queryinterface">
            <input id="querytext" type="text" onkeyup="tryProcessQuery()" name="query" autocomplete="off" value=""/>
            <input id="querybutton" type="submit" value="Search"/>
            <img id="throbber" src="hayoo/loader.gif" alt="Throbber" style="display:none;"/>
            <div class="stats">
              Concurrently search <span id="no-of-packages">more than 2000</span> packages and <span id="no-of-functions">more than 150.00</span> functions!
            </div>
          </div>
        </form>
      </div>
  
      <div id="result">
        <div id="status">Enter some search terms above to start a search.</div>
        <div id="words">&nbsp;</div>
        <div id="documents">
          <div id="examples">
            Hayoo! will search all packages from <a href="http://hackage.haskell.org">Hackage</a>, including all function and type definitions. Here are some example queries:
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','map'); return false;" href="hayoo.html?query=map&start=0">map</a>
                searches for everything that contains a word starting with "map" (case insensitive) in the function name, module name or description.
              </p>
            </div>
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','name:map'); return false;" href="hayoo.html?query=name%3Amap&start=0">name:map</a>
                searches for everything where the function name starts with "map" (case insensitive).
              </p>
            </div>
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','map OR fold'); return false;" href="hayoo.html?query=map%20OR%20fold&start=0">map OR fold</a>
                searches for everything that contains a word starting with "map" or "fold" (case insensitive) in the function name, module name or description.
              </p>
            </div>
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','map package:containers'); return false;" href="hayoo.html?query=map%20package%3Acontainers&start=0">map package:containers</a>
                searches for everything from package "containers" that contains a word starting with "map" (case insensitive) in the function name, module name or description.
              </p>
            </div>
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','map hierarchy:Lazy'); return false;" href="hayoo.html?query=map%20hierarchy%3ALazy&start=0">map hierarchy:Lazy</a>
                searches for everything where "Lazy" appears somewhere in the full qualified module name and that contains a word starting with "map" (case insensitive) in the function name, module name or description.
              </p>
            </div>
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','(map OR fold) module:Data.Map'); return false;" href="hayoo.html?query=(map%20OR%20fold)%20module%3AData.Map&start=0">(map OR fold) module:Data.Map</a>
                searches for everything from module "Data.Map" that contains a word starting with "map" or "fold" (case insensitive) in the function name, module name or description.
              </p>
            </div>
            <div class="example">
              <p>
                <a onclick="replaceInQuery('','name:attr module:Text.XML'); return false;" href="hayoo.html?query=name%3Aattr%20module%3AText.XML&start=0">name:attr module:Text.XML</a>
                searches for everything from the whole module hierarchy "Text.XML" where the function name starts with "attr" (case insensitive).
              </p>
            </div>
          </div>
        </div>
      </div>
  
      <div id="credits">
        <div id="powered">
          <div id="libs">Powered by <a class="credits" href="http://www.haskell.org">Haskell</a>, 
            <a class="credits" href="http://www.fh-wedel.de/~si/HXmlToolbox/">HXT</a> and
          </div>
          <a href="http://holumbus.fh-wedel.de"><img class="logo" src="hayoo/holumbus.png" alt="Holumbus logo"/></a>
        </div>
  
        <div id="authors">
          <div id="feedback">
            Please send any feedback to <a href="mailto:hayoo@holumbus.org">hayoo@holumbus.org</a>
          </div>
          <div id="copyright">
            Hayoo! beta 2.0 © 2010 <span class="author">Timo B. Hübel</span>, <span class="author">Sebastian M. Gauck</span>  &amp; <span class="author">Uwe Schmidt</span>
          </div>
        </div>
      </div>
    </div>
  
    <!-- Piwik -->
    <script type="text/javascript">
      var pkBaseURL = (("https:" == document.location.protocol) ? "https://piwik.hayoo.info/" : "http://piwik.hayoo.info/");
      document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
    </script>
    <script type="text/javascript">
      try {
        var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 3);
        piwikTracker.trackPageView();
        piwikTracker.enableLinkTracking();
      } catch( err ) {}
    </script>
    <noscript>
      <p>
        <img src="http://piwik.hayoo.info/piwik.php?idsite=3" style="border:0" alt=""/>
      </p>
    </noscript>
    <!-- End Piwik Tag -->
  
    
  </body>
  
  </html>
  
  }- 
  