Spaces:
Sleeping
Sleeping
Commit
·
e261f72
1
Parent(s):
33e17d9
ui
Browse files- README.md +2 -2
- app.py +17 -16
- els_cache.db +1 -1
README.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
---
|
2 |
-
title: Daily Psalm
|
3 |
emoji: 🌍
|
4 |
colorFrom: blue
|
5 |
colorTo: gray
|
@@ -9,4 +9,4 @@ app_file: app.py
|
|
9 |
pinned: false
|
10 |
---
|
11 |
|
12 |
-
|
|
|
1 |
---
|
2 |
+
title: Daily Psalm Finder
|
3 |
emoji: 🌍
|
4 |
colorFrom: blue
|
5 |
colorTo: gray
|
|
|
9 |
pinned: false
|
10 |
---
|
11 |
|
12 |
+
This application finds daily Psalms based by date and name (optional).
|
app.py
CHANGED
@@ -5,9 +5,9 @@ import re
|
|
5 |
from datetime import datetime
|
6 |
import hashlib
|
7 |
import json
|
|
|
8 |
|
9 |
import gradio as gr
|
10 |
-
from deep_translator import GoogleTranslator
|
11 |
|
12 |
import torah # Assuming you have your torah module
|
13 |
from utils import date_to_words, custom_normalize
|
@@ -24,11 +24,7 @@ logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %
|
|
24 |
DATABASE_FILE = 'gematria.db'
|
25 |
ELS_CACHE_DB = 'els_cache.db'
|
26 |
DATABASE_TIMEOUT = 60
|
27 |
-
|
28 |
-
# --- Translator Initialization ---
|
29 |
-
translator = GoogleTranslator(source='auto', target='en')
|
30 |
-
LANGUAGES_SUPPORTED = translator.get_supported_languages(as_dict=True)
|
31 |
-
LANGUAGE_CODE_MAP = LANGUAGES_SUPPORTED
|
32 |
|
33 |
|
34 |
# --- Helper Functions ---
|
@@ -184,21 +180,20 @@ def create_biblegateway_iframe(book_name, chapter, verse):
|
|
184 |
# --- Gradio Interface ---
|
185 |
|
186 |
with gr.Blocks() as app:
|
187 |
-
gr.Markdown("# Psalm Finder
|
188 |
with gr.Row():
|
189 |
-
name_input = gr.Textbox(label="Name")
|
190 |
date_input = Calendar(label="Date", type="date")
|
|
|
|
|
191 |
with gr.Row():
|
192 |
run_button = gr.Button("Find Psalm")
|
193 |
with gr.Row():
|
194 |
iframe_output = gr.HTML(label="Psalm Display")
|
195 |
|
196 |
-
def main_function(name, date):
|
197 |
-
logger.debug(f"Entering main_function with name: '{name}', date: '{date}'")
|
198 |
|
199 |
-
if not name or not date:
|
200 |
-
logger.debug("Name or date missing. Returning error message.")
|
201 |
-
return "Please enter both a name and a date."
|
202 |
if isinstance(date, str):
|
203 |
date = datetime.strptime(date, "%Y-%m-%d")
|
204 |
logger.debug(f"Converted date string to datetime: {date}")
|
@@ -208,7 +203,6 @@ with gr.Blocks() as app:
|
|
208 |
date_words = date_to_words(date_str)
|
209 |
logger.debug(f"Date words: {date_words}")
|
210 |
|
211 |
-
|
212 |
initial_gematria_sum = calculate_gematria_sum(name, date_words)
|
213 |
logger.debug(f"Initial Gematria Sum: {initial_gematria_sum}")
|
214 |
|
@@ -216,7 +210,14 @@ with gr.Blocks() as app:
|
|
216 |
logger.debug("Initial Gematria sum is None. Returning error message.")
|
217 |
return "Could not calculate initial Gematria sum."
|
218 |
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
if not els_result:
|
221 |
logger.debug("No ELS result. Returning error message.")
|
222 |
return "No ELS result found in Genesis."
|
@@ -238,7 +239,7 @@ with gr.Blocks() as app:
|
|
238 |
|
239 |
run_button.click(
|
240 |
main_function,
|
241 |
-
inputs=[name_input, date_input],
|
242 |
outputs=[iframe_output]
|
243 |
)
|
244 |
|
|
|
5 |
from datetime import datetime
|
6 |
import hashlib
|
7 |
import json
|
8 |
+
import math
|
9 |
|
10 |
import gradio as gr
|
|
|
11 |
|
12 |
import torah # Assuming you have your torah module
|
13 |
from utils import date_to_words, custom_normalize
|
|
|
24 |
DATABASE_FILE = 'gematria.db'
|
25 |
ELS_CACHE_DB = 'els_cache.db'
|
26 |
DATABASE_TIMEOUT = 60
|
27 |
+
ADJUSTMENT_CONSTANT = 137.035999177 # Use the more precise constant
|
|
|
|
|
|
|
|
|
28 |
|
29 |
|
30 |
# --- Helper Functions ---
|
|
|
180 |
# --- Gradio Interface ---
|
181 |
|
182 |
with gr.Blocks() as app:
|
183 |
+
gr.Markdown("# Daily Psalm Finder")
|
184 |
with gr.Row():
|
185 |
+
name_input = gr.Textbox(label="Name (optional)")
|
186 |
date_input = Calendar(label="Date", type="date")
|
187 |
+
with gr.Row():
|
188 |
+
adjusted_sum_check = gr.Checkbox(label="Journal Sum + (Journal Sum / 137)", value=False)
|
189 |
with gr.Row():
|
190 |
run_button = gr.Button("Find Psalm")
|
191 |
with gr.Row():
|
192 |
iframe_output = gr.HTML(label="Psalm Display")
|
193 |
|
194 |
+
def main_function(name, date, adjusted_sum_check):
|
195 |
+
logger.debug(f"Entering main_function with name: '{name}', date: '{date}', adjusted_sum: {adjusted_sum_check}")
|
196 |
|
|
|
|
|
|
|
197 |
if isinstance(date, str):
|
198 |
date = datetime.strptime(date, "%Y-%m-%d")
|
199 |
logger.debug(f"Converted date string to datetime: {date}")
|
|
|
203 |
date_words = date_to_words(date_str)
|
204 |
logger.debug(f"Date words: {date_words}")
|
205 |
|
|
|
206 |
initial_gematria_sum = calculate_gematria_sum(name, date_words)
|
207 |
logger.debug(f"Initial Gematria Sum: {initial_gematria_sum}")
|
208 |
|
|
|
210 |
logger.debug("Initial Gematria sum is None. Returning error message.")
|
211 |
return "Could not calculate initial Gematria sum."
|
212 |
|
213 |
+
# Adjust gematria sum if checkbox is checked
|
214 |
+
if adjusted_sum_check:
|
215 |
+
adjusted_sum = initial_gematria_sum + (initial_gematria_sum / ADJUSTMENT_CONSTANT)
|
216 |
+
initial_gematria_sum = math.ceil(adjusted_sum) # Use the adjusted sum
|
217 |
+
logger.debug(f"Adjusted Gematria Sum (using formula): {initial_gematria_sum}")
|
218 |
+
|
219 |
+
|
220 |
+
els_result = get_first_els_result_genesis(initial_gematria_sum, tlang='en') # Use adjusted sum here, and set target language to en
|
221 |
if not els_result:
|
222 |
logger.debug("No ELS result. Returning error message.")
|
223 |
return "No ELS result found in Genesis."
|
|
|
239 |
|
240 |
run_button.click(
|
241 |
main_function,
|
242 |
+
inputs=[name_input, date_input, adjusted_sum_check],
|
243 |
outputs=[iframe_output]
|
244 |
)
|
245 |
|
els_cache.db
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
size 12288
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:808e67a00d62be6d22c9b86b3137434c4fdd53a86f58aa94e44a4b5aac4b9a9f
|
3 |
size 12288
|