Compare commits

..

No commits in common. "603d178d033bbad2de8ad0985c170bde0f8f5668" and "dbb1eb7b1713582e81fc32c82804109649a5f006" have entirely different histories.

11 changed files with 19 additions and 76 deletions

24
.vscode/launch.json vendored
View File

@ -1,25 +1,17 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: Flask",
"name": "Python Debugger: Current File",
"type": "debugpy",
"request": "launch",
"module": "flask",
"env": {
"FLASK_APP": "app.py",
"FLASK_ENV": "development"
},
"args": [
"run",
"--no-debugger",
"--port",
"5005",
"--host",
"0.0.0.0"
],
"jinja": true,
"justMyCode": true
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": false,
"args": ["--host=0.0.0.0"]
}
]
}

View File

@ -1 +0,0 @@
1.0.6

13
app.py
View File

@ -9,26 +9,23 @@ from flask import send_from_directory
import requests
import base64
from flask import Flask
from config import DevelopmentConfig, ProductionConfig
from config import DevelopmentConfig
from paddleocr import PaddleOCR
from PIL import Image
import numpy as np
os.environ["OMP_NUM_THREADS"] = "1"
os.environ["MKL_NUM_THREADS"] = "1"
app = Flask(__name__)
if os.environ.get("FLASK_ENV") == "production":
app.config.from_object(ProductionConfig)
else:
app.config.from_object(DevelopmentConfig)
app.config.from_object(
DevelopmentConfig
)
cache = Cache(app, config={"CACHE_TYPE": "SimpleCache"})
ocr = PaddleOCR(use_angle_cls=True, lang='en') # Adjust language if needed
app.config["SESSION_COOKIE_SECURE"] = not app.config["DEBUG"]
app.config['SESSION_COOKIE_SECURE'] = True # Only send cookie over HTTPS
app.config['SESSION_COOKIE_HTTPONLY'] = True # Prevent JavaScript access
app.config['SESSION_COOKIE_SAMESITE'] = 'Lax' # Adjust for cross-site requests
app.config['PERMANENT_SESSION_LIFETIME'] = 60 * 60 * 24 * 365 # 1 year in seconds

View File

@ -17,12 +17,9 @@ RUN pip install --no-cache-dir -r requirements.txt
COPY . .
RUN chmod +x run.sh
ARG VERSION
RUN echo $VERSION > VERSION
EXPOSE 5000
EXPOSE 8089
ENV FLASK_ENV production
CMD ["./run.sh"]
CMD ["python", "app.py"]

View File

@ -1,10 +0,0 @@
import os
# Set the environment to production
os.environ['FLASK_ENV'] = 'production'
# Gunicorn config variables
loglevel = "info"
workers = 2
bind = "0.0.0.0:5000"
timeout = 120

View File

@ -118,12 +118,6 @@ def get_stream_names(base_url: str, auth: str) -> List[str]:
List[str]: A list of stream names.
"""
url = f"{base_url}/getStreamNames"
payload = {}
headers = {"Authorization": f"Basic {auth}"}
response = requests.request("GET", url, headers=headers, data=payload)
if response.status_code == 200 and response.text:
try:
response = requests.get(url, headers=headers)
return json.loads(response.text)
except json.JSONDecodeError:
return []
return []

View File

@ -1,8 +0,0 @@
[tool.bump-my-version]
current_version = "1.0.6"
commit = true
tag = true
message = "bump version to {new_version}"
[[tool.bump-my-version.files]]
filename = "VERSION"

Binary file not shown.

12
run.sh
View File

@ -1,12 +0,0 @@
#!/bin/bash
# Default to development environment
FLASK_ENV=${FLASK_ENV:-development}
if [ "$FLASK_ENV" = "production" ]; then
echo "Starting in production mode..."
gunicorn --config gunicorn.conf.py app:app
else
echo "Starting in development mode..."
python3 app.py
fi

View File

@ -28,9 +28,3 @@ footer {
text-align: center;
padding: 1em;
}
/* Awesomplete and Bootstrap integration fix */
div.awesomplete {
display: block;
width: 100%;
}

View File

@ -75,7 +75,7 @@
</button>
</form>
<hr>
<h2>Load Details Via OCR</h2>
<h4>Load Details Via OCR</h2>
<form action="/OCRupload" method="POST" enctype="multipart/form-data" onsubmit="showLoadingOCR()">
<div class="form-group">
<label for="image">Select Image</label>
@ -110,7 +110,7 @@
.then(response => response.json())
.then(data => {
new Awesomplete(streamInput, {
list: data
list: data.map(item => item.streamName)
});
});
});