@@ -60,12 +60,13 @@ def render(template_name, **kwargs):
60def index():
60def index():
61 global categories
61 global categories
62 if request.method=='POST':
62 if request.method=='POST':
63− if not request.form.get('q'):
63+ request_data = request.form
64− flash('Wrong post data')
64+ else:
65− return render('index.html')
65+ request_data = request.args
66+ if request_data.get('q'):
66 selected_engines = []
67 selected_engines = []
67 selected_categories = []
68 selected_categories = []
68− for pd_name,pd in request.form.items():
69+ for pd_name,pd in request_data.items():
69 if pd_name.startswith('category_'):
70 if pd_name.startswith('category_'):
70 category = pd_name[9:]
71 category = pd_name[9:]
71 if not category in categories:
72 if not category in categories:
@@ -81,9 +82,9 @@ def index():
81 if not len(selected_engines):
82 if not len(selected_engines):
82 selected_categories.append('general')
83 selected_categories.append('general')
83 selected_engines.extend(x.name for x in categories['general'])
84 selected_engines.extend(x.name for x in categories['general'])
84− query = request.form['q'].encode('utf-8')
85+ query = request_data['q'].encode('utf-8')
85 results = search(query, request, selected_engines)
86 results = search(query, request, selected_engines)
86− if request.form.get('format') == 'json':
87+ if request_data.get('format') == 'json':
87 # TODO HTTP headers
88 # TODO HTTP headers
88 return json.dumps({'query': query, 'results': results})
89 return json.dumps({'query': query, 'results': results})
89 template = render('results.html'
90 template = render('results.html'