awacke1 commited on
Commit
d9bb822
1 Parent(s): 8d7aa73

Update backup4.QuerryParamsFixed..app.py

Browse files
Files changed (1) hide show
  1. backup4.QuerryParamsFixed..app.py +56 -26
backup4.QuerryParamsFixed..app.py CHANGED
@@ -3,6 +3,7 @@ import os
3
  import glob
4
  import re
5
  import base64
 
6
  from urllib.parse import quote
7
  from gradio_client import Client
8
  from datetime import datetime
@@ -82,23 +83,39 @@ Multiplayer_Custom_Hosting_Game_Servers_For_Simulated_Worlds = """
82
  """
83
 
84
  def sanitize_filename(text):
85
- """Create a safe filename from text."""
86
- # Remove or replace unsafe characters
87
- safe_text = re.sub(r'[^\w\s-]', '_', text)
88
- safe_text = re.sub(r'\s+', '_', safe_text)
 
 
 
89
  return safe_text[:50] # Limit length to 50 chars
90
 
91
- def save_ai_interaction(query, ai_result):
92
- """Save AI interaction to a markdown file."""
93
- timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
 
 
 
 
 
 
 
 
94
  safe_query = sanitize_filename(query)
95
- filename = f"ai_interaction_{timestamp}_{safe_query}.md"
96
 
97
- # Format the content
98
- content = f"""# AI Interaction - {datetime.now().strftime("%Y-%m-%d %H:%M:%S")}
 
 
99
 
100
- ## Query
101
- {query}
 
 
 
 
102
 
103
  ## AI Response
104
  {ai_result}
@@ -254,23 +271,14 @@ def file_management_sidebar():
254
  def main():
255
  st.title("Markdown Content with AI Lookup and File Management")
256
 
257
- # Display the original markdown content
258
- st.markdown("## Original Markdown Content")
259
- st.markdown(Boxing_and_MMA_Commentary_and_Knowledge)
260
- st.markdown(Multiplayer_Custom_Hosting_Game_Servers_For_Simulated_Worlds)
261
-
262
- # Parse and display terms with links
263
- st.markdown("## Terms with Links")
264
- terms1 = extract_terms(Boxing_and_MMA_Commentary_and_Knowledge)
265
- terms2 = extract_terms(Multiplayer_Custom_Hosting_Game_Servers_For_Simulated_Worlds)
266
- all_terms = terms1 + terms2
267
- display_terms_with_links(all_terms)
268
-
269
- # Process query parameters and AI lookup
270
  query_params = st.query_params
271
  query = query_params.get('q', '')
 
272
 
 
273
  if query:
 
274
  st.write(f"### Search query received: {query}")
275
  try:
276
  ai_result = perform_ai_lookup(query)
@@ -287,10 +295,32 @@ def main():
287
  # File management sidebar
288
  file_management_sidebar()
289
 
290
- # Display selected file
291
  if st.session_state.selected_file:
 
292
  st.markdown(f"### Current File: {st.session_state.selected_file}")
293
  display_file_content(st.session_state.selected_file)
294
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
295
  if __name__ == "__main__":
296
  main()
 
3
  import glob
4
  import re
5
  import base64
6
+ import pytz
7
  from urllib.parse import quote
8
  from gradio_client import Client
9
  from datetime import datetime
 
83
  """
84
 
85
  def sanitize_filename(text):
86
+ """Create a safe filename from text while preserving spaces."""
87
+ # First replace unsafe characters with spaces
88
+ safe_text = re.sub(r'[^\w\s-]', ' ', text)
89
+ # Remove any multiple spaces
90
+ safe_text = re.sub(r'\s+', ' ', safe_text)
91
+ # Trim leading/trailing spaces
92
+ safe_text = safe_text.strip()
93
  return safe_text[:50] # Limit length to 50 chars
94
 
95
+ def generate_timestamp_filename(query):
96
+ """Generate filename with format: 1103AM 11032024 (Query).md"""
97
+ # Get current time in Central timezone
98
+ central = pytz.timezone('US/Central')
99
+ current_time = datetime.now(central)
100
+
101
+ # Format the timestamp parts
102
+ time_str = current_time.strftime("%I%M%p") # 1103AM format
103
+ date_str = current_time.strftime("%m%d%Y") # 11032024 format
104
+
105
+ # Clean up the query for filename - now preserving spaces
106
  safe_query = sanitize_filename(query)
 
107
 
108
+ # Construct filename: "1103AM 11032024 (Input with spaces).md"
109
+ filename = f"{time_str} {date_str} ({safe_query}).md"
110
+
111
+ return filename
112
 
113
+ def save_ai_interaction(query, ai_result):
114
+ """Save AI interaction to a markdown file with new filename format."""
115
+ filename = generate_timestamp_filename(query)
116
+
117
+ # Format the content
118
+ content = f"""# Query: {query}
119
 
120
  ## AI Response
121
  {ai_result}
 
271
  def main():
272
  st.title("Markdown Content with AI Lookup and File Management")
273
 
274
+ # Process query parameters and AI lookup first
 
 
 
 
 
 
 
 
 
 
 
 
275
  query_params = st.query_params
276
  query = query_params.get('q', '')
277
+ show_initial_content = True # Flag to control initial content display
278
 
279
+ # First priority: Handle active query
280
  if query:
281
+ show_initial_content = False # Hide initial content when showing query results
282
  st.write(f"### Search query received: {query}")
283
  try:
284
  ai_result = perform_ai_lookup(query)
 
295
  # File management sidebar
296
  file_management_sidebar()
297
 
298
+ # Second priority: Display selected file content if any
299
  if st.session_state.selected_file:
300
+ show_initial_content = False # Hide initial content when showing file content
301
  st.markdown(f"### Current File: {st.session_state.selected_file}")
302
  display_file_content(st.session_state.selected_file)
303
 
304
+ # Show initial content: Either when first landing or when no interactive elements are active
305
+ if show_initial_content:
306
+ # First show the clickable terms with links
307
+ terms1 = extract_terms(Boxing_and_MMA_Commentary_and_Knowledge)
308
+ terms2 = extract_terms(Multiplayer_Custom_Hosting_Game_Servers_For_Simulated_Worlds)
309
+ all_terms = terms1 + terms2
310
+
311
+ col1, col2 = st.columns(2)
312
+
313
+ with col1:
314
+ st.markdown("### Boxing & MMA")
315
+ st.markdown(Boxing_and_MMA_Commentary_and_Knowledge)
316
+ st.markdown("#### Related Links")
317
+ display_terms_with_links(terms1)
318
+
319
+ with col2:
320
+ st.markdown("### Multiplayer Games")
321
+ st.markdown(Multiplayer_Custom_Hosting_Game_Servers_For_Simulated_Worlds)
322
+ st.markdown("#### Related Links")
323
+ display_terms_with_links(terms2)
324
+
325
  if __name__ == "__main__":
326
  main()