From 1310e543bdb86137a666c8e2c9c395939d528590 Mon Sep 17 00:00:00 2001
From: felixwelter <felixwelter@gmail.com>
Date: Mon, 12 Oct 2020 13:46:08 +0200
Subject: [PATCH] Fix return value when no slide is found

---
 app.py | 26 ++++++++++++--------------
 1 file changed, 12 insertions(+), 14 deletions(-)

diff --git a/app.py b/app.py
index 72ad559..27d1ebd 100644
--- a/app.py
+++ b/app.py
@@ -2,7 +2,6 @@ import glob
 import os
 from pathlib import Path
 
-import pandas as pd
 from flask import Flask, render_template, request, redirect, send_file, jsonify, flash
 from werkzeug.utils import secure_filename
 
@@ -55,22 +54,21 @@ def upload():
 
 @app.route("/search", methods=['POST'])
 def query():
-    try:
-        index = Index(index_dir=INDEX_DIR)
-        query = request.form.get("term")
-        context = request.form.get("context")
-        amount = int(request.form.get("amount"))
-        results = index.search(query, context)[:amount]
-        full_path = lambda res: os.getenv('EXTERNAL_HOST', '<PLEASE_SET_EXTERNAL_HOST_ENV_VAR>') + \
-                                "/slide/" + res["file_name"] + "_" + str(res["page"]) + ".jpg"
-        return jsonify({
-            "type": "image",
-            "paths": [{"path": full_path(res), "url": full_path(res)} for res in results]
-        })
-    except IndexError:
+    index = Index(index_dir=INDEX_DIR)
+    query = request.form.get("term")
+    context = request.form.get("context")
+    amount = int(request.form.get("amount"))
+    results = index.search(query, context)[:amount]
+    if len(results) == 0:
         return jsonify({
             "type": "miss"
         })
+    full_path = lambda res: os.getenv('EXTERNAL_HOST', '<PLEASE_SET_EXTERNAL_HOST_ENV_VAR>') + \
+                            "/slide/" + res["file_name"] + "_" + str(res["page"]) + ".jpg"
+    return jsonify({
+        "type": "image",
+        "paths": [{"path": full_path(res), "url": full_path(res)} for res in results]
+    })
 
 
 @app.route("/reset_index", methods=['POST'])
-- 
GitLab