__copyright__ = "Copyright (C) 2014-2024 PhiloSoft Design"
__license__ = "GNU GPL"
-import cgi
+from html import escape
+from urllib.parse import parse_qs
+import os
import sys
from lark import ParseError
-from html.response import redirect, response
+from html_output.response import redirect, response
from parser import parser
-form = cgi.FieldStorage()
-if 'q' not in form:
+qs_dict = parse_qs(os.environ['QUERY_STRING'], encoding='koi8-r')
+if 'q' not in qs_dict or len(qs_dict['q']) > 1:
status = "400 Bad request"
title = "Error!"
body = "Required parameter is missing!"
else:
- q = form['q'].value
+ q = qs_dict['q'][0]
try:
tree = parser.parse(q)
except ParseError:
from tags import find_tags
posts = find_tags(tree)
status = None
- title = "Записи, найденные для выражения " + cgi.escape(q)
+ title = "Записи, найденные для выражения " + escape(q)
if posts:
_posts = ["""\
<p class="head">