Browse Source

[mod] Retain page numbers even when there are no results

obfuscated-loop 1 year ago
parent
commit
99fb565b39
2 changed files with 19 additions and 17 deletions
  1. 1 1
      searx/results.py
  2. 18 16
      searx/templates/simple/results.html

+ 1 - 1
searx/results.py

@@ -232,7 +232,7 @@ class ResultContainer:
         if engine_name in engines:
             histogram_observe(standard_result_count, 'engine', engine_name, 'result', 'count')
 
-        if not self.paging and standard_result_count > 0 and engine_name in engines and engines[engine_name].paging:
+        if not self.paging and engine_name in engines and engines[engine_name].paging:
             self.paging = True
 
     def _merge_infobox(self, infobox):

+ 18 - 16
searx/templates/simple/results.html

@@ -124,22 +124,24 @@
                 </div>
             </form>
         {% endif %}
-        <form method="{{ method or 'POST' }}" action="{{ url_for('search') }}" class="next_page">
-            <div class="{% if rtl %}left{% else %}right{% endif %}">
-              <input type="hidden" name="q" value="{{ q|e }}" >
-              {% for category in selected_categories %}
-              <input type="hidden" name="category_{{ category }}" value="1" >
-              {% endfor %}
-              <input type="hidden" name="pageno" value="{{ pageno+1 }}" >
-              <input type="hidden" name="language" value="{{ current_language }}" >
-              <input type="hidden" name="time_range" value="{{ time_range }}" >
-              <input type="hidden" name="safesearch" value="{{ safesearch }}" >
-              <input type="hidden" name="theme" value="{{ theme }}" >
-              {% if timeout_limit %}<input type="hidden" name="timeout_limit" value="{{ timeout_limit|e }}" >{% endif %}
-              {{- engine_data_form(engine_data) -}}
-              <button role="link"  type="submit">{{ _('Next page') }} {{ icon_small('chevron-right') }}</button>
-            </div>
-        </form>
+        {%- if results | count > 0 -%}
+          <form method="{{ method or 'POST' }}" action="{{ url_for('search') }}" class="next_page">
+              <div class="{% if rtl %}left{% else %}right{% endif %}">
+                <input type="hidden" name="q" value="{{ q|e }}" >
+                {% for category in selected_categories %}
+                <input type="hidden" name="category_{{ category }}" value="1" >
+                {% endfor %}
+                <input type="hidden" name="pageno" value="{{ pageno+1 }}" >
+                <input type="hidden" name="language" value="{{ current_language }}" >
+                <input type="hidden" name="time_range" value="{{ time_range }}" >
+                <input type="hidden" name="safesearch" value="{{ safesearch }}" >
+                <input type="hidden" name="theme" value="{{ theme }}" >
+                {% if timeout_limit %}<input type="hidden" name="timeout_limit" value="{{ timeout_limit|e }}" >{% endif %}
+                {{- engine_data_form(engine_data) -}}
+                <button role="link"  type="submit">{{ _('Next page') }} {{ icon_small('chevron-right') }}</button>
+              </div>
+          </form>
+        {%- endif -%}
         {% set pstart = 1 %}
         {% set pend = 11 %}
         {% if pageno > 5 %}