Refactored BaseSearch/Result to use templates to render the title and content entries...
[philo.git] / philo / contrib / sobol / templates / sobol / search / _list.html
index f78d861..99db761 100644 (file)
@@ -1,21 +1,54 @@
 {% with node.view.enable_ajax_api as ajax %}
-{% if ajax %}<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script><script type="text/javascript" src="{{ STATIC_URL }}sobol/ajax_search.js"></script>{% endif %}
+{% if ajax %}
+       {% if not suppress_scripts %}<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script><script type="text/javascript" src="{{ STATIC_URL }}sobol/ajax_search.js"></script>{% endif %}
+       <script type="text/javascript">
+               (function($){
+                       var sobol = window.sobol;
+                       sobol.favoredResults = [{% for r in favored_results %}"{{ r }}"{% if not forloop.last %}, {% endif %}{% endfor %}];
+               }(jQuery));
+       </script>
+{% endif %}
+{% if favored_results %}
+       <article class="search favored{% if ajax %} loading{% endif %}">
+               <header>
+                       <h1>Favored results</h1>
+               </header>
+               {% if not ajax %}
+               <dl>
+                       {% for search in searches %}
+                       {% for result in search.results %}
+                               {% if result.get_actual_url in favored_results %}
+                               {{ result }}
+                               {% endif %}
+                       {% endfor %}
+                       {% endfor %}
+                       {% if search.get_actual_more_results_url in favored_results %}
+                               <dt><a href="{{ search.more_results_url }}">More results for {{ search }}</a></dt>
+                       {% endif %}
+               </dl>
+               {% endif %}
+       </article>
+{% endif %}
 {% for search in searches %}
-<article {% if ajax %}class="search loading {{ search.slug }}" data-url="{{ search.ajax_api_url }}" data-title="{{ search }}"{% else %}class="search {{ search.slug }}"{% endif %}>
+<article {% if ajax %}class="search loading {{ search.slug }}" data-url="{{ search.ajax_api_url }}"{% else %}class="search {{ search.slug }}{% if not search.results %} empty{% endif %}"{% endif %}>
        <header>
                <a name='{{ search.slug }}'></a>
                <h1>{{ search }}</h1>
        </header>
        {% if not ajax %}
-               <dl>
-               {% for result in search.results %}
-               {{ result }}
-               {% endfor %}
-               </dl>
-               {% if search.has_more_results and search.more_results_url %}
-               <footer>
-                       <p><a href="?{{ search.more_results_querydict.urlencode }}">See more results</a></p>
-               </footer>
+               {% if search.results %}
+                       <dl>
+                       {% for result in search.results %}
+                               {{ result }}
+                       {% endfor %}
+                       </dl>
+                       {% if search.has_more_results and search.more_results_url %}
+                       <footer>
+                               <p><a href="{{ search.more_results_url }}">See more results</a></p>
+                       </footer>
+                       {% endif %}
+               {% else %}
+                       <p>No results found.</p>
                {% endif %}
        {% endif %}
 </article>