Ani14 commited on
Commit
4dfa219
·
verified ·
1 Parent(s): afadb32

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -3
app.py CHANGED
@@ -135,10 +135,20 @@ def check_plagiarism(text, topic):
135
  return hits
136
 
137
  def generate_apa_citation(title, url, source, year=None):
138
- year = year or datetime.datetime.now().year
139
- label = {"arxiv": "*arXiv*", "semantic": "*Semantic Scholar*", "web": "*Web Source*"}.get(source, "*Web*")
 
 
 
 
 
 
 
 
 
140
  return f"{title}. ({year}). {label}. {url}"
141
 
 
142
  def merge_duplicates(entries):
143
  unique = []
144
  seen_titles = []
@@ -264,7 +274,7 @@ if research_button and topic:
264
  st.info("ℹ️ No image previews available.")
265
 
266
  # 🔹 Generate report
267
- citations = [generate_apa_citation(m['title'], m['url'], m['source'], m.get('year')) for m in merged]
268
  combined_text = "\n\n".join([
269
  f"- [{m['title']}]({m['url']}) ({m.get('year', 'n.d.')})\n> {m.get('snippet', m.get('summary', ''))[:300]}..."
270
  for m in merged
 
135
  return hits
136
 
137
  def generate_apa_citation(title, url, source, year=None):
138
+ title = title or "Untitled Source"
139
+ url = url or "Unavailable URL"
140
+ year = year if isinstance(year, int) and 1900 <= year <= datetime.datetime.now().year else "n.d."
141
+
142
+ source_map = {
143
+ "arxiv": "*arXiv*",
144
+ "semantic": "*Semantic Scholar*",
145
+ "web": "*Web Source*"
146
+ }
147
+ label = source_map.get(source, "*External Source*")
148
+
149
  return f"{title}. ({year}). {label}. {url}"
150
 
151
+
152
  def merge_duplicates(entries):
153
  unique = []
154
  seen_titles = []
 
274
  st.info("ℹ️ No image previews available.")
275
 
276
  # 🔹 Generate report
277
+ citations = [generate_apa_citation(m.get('title'), m.get('url'), m.get('source'), m.get('year')) for m in merged]
278
  combined_text = "\n\n".join([
279
  f"- [{m['title']}]({m['url']}) ({m.get('year', 'n.d.')})\n> {m.get('snippet', m.get('summary', ''))[:300]}..."
280
  for m in merged