logo

searx

Unnamed repository; edit this file 'description' to name the repository.
commit: 44d3af9fb2482cd0df1a8ababbe2fdf27ab33172
parent: d2f89f044624d21027741ada796580bbcea70922
Author: Adam Tauber <asciimoo@gmail.com>
Date:   Tue,  8 Apr 2014 17:51:30 +0200

Merge pull request #61 from matejc/optional_search_get

Optional search get

Diffstat:

searx/templates/preferences.html | 9+++++++++
searx/templates/results.html | 8++++----
searx/templates/search.html | 2+-
searx/webapp.py | 7+++++++
versions.cfg | 10+++++++++-
5 files changed, 30 insertions(+), 6 deletions(-)

diff --git a/searx/templates/preferences.html b/searx/templates/preferences.html @@ -44,6 +44,15 @@ </p> </fieldset> <fieldset> + <legend>{{ _('Method') }}</legend> + <p> + <select name='method'> + <option value="POST" {% if method == 'POST' %}selected="selected"{% endif %}>POST</option> + <option value="GET" {% if method == 'GET' %}selected="selected"{% endif %}>GET</option> + </select> + </p> + </fieldset> + <fieldset> <legend>{{ _('Currently used search engines') }}</legend> <table> diff --git a/searx/templates/results.html b/searx/templates/results.html @@ -10,7 +10,7 @@ {% if suggestions %} <div id="suggestions"><span>{{ _('Suggestions') }}</span> {% for suggestion in suggestions %} - <form method="post" action="{{ url_for('index') }}"> + <form method="{{ method or 'POST' }}" action="{{ url_for('index') }}"> <input type="hidden" name="q" value="{{ suggestion }}"> <input type="submit" value="{{ suggestion }}" /> </form> @@ -25,7 +25,7 @@ <div id="apis"> {{ _('Download results') }} {% for output_type in ('csv', 'json', 'rss') %} - <form method="post" action="{{ url_for('index') }}"> + <form method="{{ method or 'POST' }}" action="{{ url_for('index') }}"> <div class="left"> <input type="hidden" name="q" value="{{ q }}" /> <input type="hidden" name="format" value="{{ output_type }}" /> @@ -52,7 +52,7 @@ {% if paging %} <div id="pagination"> {% if pageno > 1 %} - <form method="post" action="{{ url_for('index') }}"> + <form method="{{ method or 'POST' }}" action="{{ url_for('index') }}"> <div class="left"> <input type="hidden" name="q" value="{{ q }}" /> {% for category in selected_categories %} @@ -63,7 +63,7 @@ </div> </form> {% endif %} - <form method="post" action="{{ url_for('index') }}"> + <form method="{{ method or 'POST' }}" action="{{ url_for('index') }}"> <div class="left"> {% for category in selected_categories %} <input type="hidden" name="category_{{ category }}" value="1"/> diff --git a/searx/templates/search.html b/searx/templates/search.html @@ -1,4 +1,4 @@ -<form method="post" action="{{ url_for('index') }}" id="search_form"> +<form method="{{ method or 'POST' }}" action="{{ url_for('index') }}" id="search_form"> <div id="search_wrapper"> <input type="text" placeholder="{{ _('Search for...') }}" id="q" class="q" name="q" tabindex="1" autocomplete="off" {% if q %}value="{{ q }}"{% endif %}/> <input type="submit" value="search" id="search_submit" /> diff --git a/searx/webapp.py b/searx/webapp.py @@ -123,6 +123,8 @@ def render(template_name, **kwargs): if not 'autocomplete' in kwargs: kwargs['autocomplete'] = autocomplete + kwargs['method'] = request.cookies.get('method', 'POST') + return render_template(template_name, **kwargs) @@ -291,6 +293,7 @@ def preferences(): selected_categories = [] locale = None autocomplete = '' + method = 'POST' for pd_name, pd in request.form.items(): if pd_name.startswith('category_'): category = pd_name[9:] @@ -305,6 +308,8 @@ def preferences(): pd in (x[0] for x in language_codes)): lang = pd + elif pd_name == 'method': + method = pd elif pd_name.startswith('engine_'): engine_name = pd_name.replace('engine_', '', 1) if engine_name in engines: @@ -344,6 +349,8 @@ def preferences(): max_age=cookie_max_age ) + resp.set_cookie('method', method, max_age=cookie_max_age) + return resp return render('preferences.html', locales=settings['locales'], diff --git a/versions.cfg b/versions.cfg @@ -1,4 +1,5 @@ [versions] +Babel = 1.3 Flask = 0.10.1 Flask-Babel = 0.9 Jinja2 = 2.7.2 @@ -14,9 +15,11 @@ docutils = 0.11 flake8 = 2.1.0 itsdangerous = 0.23 mccabe = 0.2.1 +mock = 1.0.1 pep8 = 1.4.6 plone.testing = 4.0.8 pyflakes = 0.7.3 +pytz = 2013b pyyaml = 3.10 requests = 2.2.0 robotframework-debuglibrary = 0.3 @@ -24,6 +27,7 @@ robotframework-httplibrary = 0.4.2 robotframework-selenium2library = 1.5.0 robotsuite = 1.4.2 selenium = 2.39.0 +speaklater = 1.3 unittest2 = 0.5.1 waitress = 0.8.8 zc.recipe.testrunner = 2.0.0 @@ -72,7 +76,7 @@ setuptools = 2.1 # Required by: # zope.testrunner==4.4.1 -six = 1.5.2 +six = 1.6.1 # Required by: # collective.recipe.omelette==0.16 @@ -93,3 +97,7 @@ zope.testing = 4.1.2 # Required by: # zc.recipe.testrunner==2.0.0 zope.testrunner = 4.4.1 + +# Required by: +# searx==0.3.0 +python-dateutil = 2.2