Spaces:
Running
Running
Fix: prioritize posts with slides when searching by URL, og:image from slides
Browse files- app_v2_entry.py +27 -14
app_v2_entry.py
CHANGED
|
@@ -641,23 +641,36 @@ async def _sh(url:str='',title:str='',img:str='',post_id:str=''):
|
|
| 641 |
safe_img = _clean(img) if img else ''
|
| 642 |
safe_url = _clean(url) if url else '/'
|
| 643 |
|
| 644 |
-
# Try to find wall post by post_id or URL
|
| 645 |
post = None
|
| 646 |
try:
|
| 647 |
posts = _load_wall_posts()
|
| 648 |
-
|
| 649 |
-
|
| 650 |
-
|
| 651 |
-
|
| 652 |
-
|
| 653 |
-
|
| 654 |
-
|
| 655 |
-
|
| 656 |
-
|
| 657 |
-
|
| 658 |
-
|
| 659 |
-
|
| 660 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 661 |
except:
|
| 662 |
pass
|
| 663 |
|
|
|
|
| 641 |
safe_img = _clean(img) if img else ''
|
| 642 |
safe_url = _clean(url) if url else '/'
|
| 643 |
|
| 644 |
+
# Try to find wall post by post_id or URL (prioritize posts with slides/video)
|
| 645 |
post = None
|
| 646 |
try:
|
| 647 |
posts = _load_wall_posts()
|
| 648 |
+
if post_id:
|
| 649 |
+
for p in posts:
|
| 650 |
+
if p.get('id') == post_id:
|
| 651 |
+
post = p
|
| 652 |
+
safe_title = p.get('title', safe_title) or safe_title
|
| 653 |
+
safe_img = p.get('img', safe_img) or safe_img
|
| 654 |
+
safe_url = p.get('url', safe_url) or safe_url
|
| 655 |
+
break
|
| 656 |
+
elif url:
|
| 657 |
+
# Find matching URL - prioritize posts with slides or video
|
| 658 |
+
for p in posts:
|
| 659 |
+
if p.get('url') == url and p.get('slides'):
|
| 660 |
+
post = p
|
| 661 |
+
safe_title = p.get('title', safe_title) or safe_title
|
| 662 |
+
safe_img = p.get('img', safe_img) or safe_img
|
| 663 |
+
safe_url = p.get('url', safe_url) or safe_url
|
| 664 |
+
break
|
| 665 |
+
if not post:
|
| 666 |
+
# Fallback: find any matching URL
|
| 667 |
+
for p in posts:
|
| 668 |
+
if p.get('url') == url:
|
| 669 |
+
post = p
|
| 670 |
+
safe_title = p.get('title', safe_title) or safe_title
|
| 671 |
+
safe_img = p.get('img', safe_img) or safe_img
|
| 672 |
+
safe_url = p.get('url', safe_url) or safe_url
|
| 673 |
+
break
|
| 674 |
except:
|
| 675 |
pass
|
| 676 |
|