Default /find to rich text response, as we assume human interaction.
This commit is contained in:
@@ -203,6 +203,12 @@ def ref_parse_book(ref):
|
||||
@app.get("/find")
|
||||
def parse_query(query_override:str = None):
|
||||
query = request.args.get("kw", None)
|
||||
# /find should always return human readable (rich) but some users may try
|
||||
# to use it with other view arguments, we can try to support that.
|
||||
if not request.args.get("view", False):
|
||||
human_readable = True
|
||||
else:
|
||||
human_readable = False
|
||||
if query_override:
|
||||
query = query_override
|
||||
if query:
|
||||
@@ -212,7 +218,7 @@ def parse_query(query_override:str = None):
|
||||
return send_file("html/find.html")
|
||||
if query.endswith(","):
|
||||
query = query[:-1]
|
||||
result = show(kw=query)
|
||||
result = show(kw=query, human_readable=human_readable)
|
||||
if not hasattr(result, "__len__"):
|
||||
logging.debug(f"parse_query.show = '{result}'")
|
||||
return result
|
||||
@@ -292,7 +298,7 @@ def return_dict_rich(ref, defs, simple):
|
||||
+ css
|
||||
)
|
||||
@app.get("/show")
|
||||
def show(kw=None, get_start_verse_id=False):
|
||||
def show(kw=None, get_start_verse_id=False, human_readable=False):
|
||||
ref = request.args.get("kw", None)
|
||||
get_chapter: bool = request.args.get("all", False)
|
||||
if ref.endswith(","):
|
||||
@@ -352,11 +358,11 @@ def show(kw=None, get_start_verse_id=False):
|
||||
logging.debug(f"show.results({results})")
|
||||
for result in results:
|
||||
verse_results.append(result)
|
||||
response_list = scripture_response(verse_results)
|
||||
response_list = scripture_response(verse_results, human_readable)
|
||||
arg_view = request.args.get("view", None)
|
||||
if arg_view == "plain":
|
||||
response = "<br>".join(response_list)
|
||||
elif arg_view == "rich":
|
||||
elif arg_view == "rich" or human_readable:
|
||||
response = "<br>".join(response_list)
|
||||
else:
|
||||
response = jsonify(response_list)
|
||||
@@ -386,14 +392,14 @@ def response_rich(scripture):
|
||||
return cached["html_response"].format(
|
||||
chapter=passage.split(":")[0], passage=passage, text=text
|
||||
)
|
||||
def scripture_response(scriptures):
|
||||
def scripture_response(scriptures, human_readable=False):
|
||||
response = []
|
||||
arg_view = request.args.get("view", "json")
|
||||
logging.debug(f"search ->requested_format = {arg_view}")
|
||||
if arg_view == "plain":
|
||||
for scripture in scriptures:
|
||||
response.append(response_text(scripture))
|
||||
elif arg_view == "rich":
|
||||
elif arg_view == "rich" or human_readable:
|
||||
l_r_nav = get_next_prev_chapter(
|
||||
str(scriptures[0][0])
|
||||
) # get the first scripture, the id thereof
|
||||
@@ -406,6 +412,7 @@ def scripture_response(scriptures):
|
||||
next_chapter_link=l_r_nav["next_chapter_link"],
|
||||
prev_chapter_name=l_r_nav["prev_chapter_name"],
|
||||
prev_chapter_link=l_r_nav["prev_chapter_link"],
|
||||
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user