I want to create a website that will display RSS data.rss link: https://rsshub.app/telegram/channel/admavenpostRss Response Example: Posts Reserves - Telegram Channelhttps://t.me/s/admavenpostPosts Reserves - Telegram Channel - Powered by RSSHubRSSHubcontact@rsshub.app (RSSHub)Posts Reservesfalseenhttps://cdn4.telesco.pe/file/EYGZ9F63NUzhm-fv89Aw-c8DTXp2RCFBfyqM8KVhsfn_3WCj_obVe_oa66YYKtJeKzhSfcOyw-uO1W1NsRZLrblU4UGUbEDepIJwbsdH7DT0DcLlVnJbIM5X4qiebUYM8BZPJ7-LQqURl4skrFRkG2WsejLsrYmMeM8kTggMqElGjBk_n-WUYR-Z0ID4ZJDsNIpGPouz3IQBYEn5gJ0rhgL3ALwV1RtGeaFSWjRfWU3HgX9TmnqkyCVaOVF9ET99XTdBjtmNcq7Xmkei-AMkRQ94TYLSAJeqfGQ9BwNpqLWfobKwHJoygBXn8_vqMEPgcA7ER5C7eYGcA3Ve9H9GKA.jpgPosts Reserves - Telegram Channelhttps://t.me/s/admavenpost3188Wed, 27 Aug 2025 06:54:26 GMT180š¼ š NAME: mayamelody<p><span class="emoji">š</span>Ā NAME: mayamelody<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?7odgntSc" target="_blank" rel="noopener">https://fast-links.org/s?7odgntSc</a></p><img src="https://cdn4.telesco.pe/file/S7SmjmoVyQ7urrYXpwq_1NTR62-nwSTFNcPIO95yFj55sAa1_tpR69QpwT0T9Xe4_FsAIs6Vd6hrqYkcU5WYVCrWePqaeULld1Gs041-B0wfj97KN-f-aY2OzfCS9iqMFv5ToQT1obLntx9ID3jo61egbWZPUtZeS1LVmjk2raLOHTQrVHMPGE3c1gwDuBIMQkw3gjllrXhUcoK45MdBlYfyTFQT8n0oB0TU2ajZTIGNpJcTzWxK_RY_z5RDzmd3yhgkC55GZyAMPjtXmaVd7yGBoLwJgAxgWvClY_pTxkeKrshfQxtfCpSwGwuxX-XuPxkfLocSmD3qKcP6MIyR3A.jpg" width="450" height="486" referrerpolicy="no-referrer">https://t.me/admavenpost/104012https://t.me/admavenpost/104012Wed, 27 Aug 2025 06:52:25 GMTš¼ š NAME: 3.58TbExclusive<p><span class="emoji">š</span>Ā NAME: 3.58TbExclusive<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?bQQC1vGg" target="_blank" rel="noopener">https://fast-links.org/s?bQQC1vGg</a></p><img src="https://cdn4.telesco.pe/file/hl1byxjy4CgWu9lU-Hw7yX3CRbEj1H9yvv5Z1XNlef1jN_HeoCkacR56aBtzbIa5yn-Z_-FjYTUVkD6FuYnHhlmW6bBrl1_pip5ipDnXydvQoIOkYEHqGGdp7KSliobxVUBtyOfjudvJFXFk6fJ77a612Yo6IGHtMiAQFsw1Ea7qBaeAxZptuKKcTtKSKVLBiti0DRm2hk4ENY-pIY0WnFv5k12tVgixG9h4Mu56ZI2NJLqciUIjAgdrcQPxbH2xXSMdqCC3TtHWrF5Y0efXuKytvMwXl6cHKylYoDNNbMaMplN8EVautmKF91MwCSunjLQXJuJj6i0hiD9Qt1fiow.jpg" width="774" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104011https://t.me/admavenpost/104011Wed, 27 Aug 2025 06:51:25 GMTš¼ š NAME: snap<p><span class="emoji">š</span>Ā NAME: snap<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?yItH56mA" target="_blank" rel="noopener">https://fast-links.org/s?yItH56mA</a></p><img src="https://cdn4.telesco.pe/file/luhsT-0C23cSh0xzbmYOEv528_Yf6NwVAshze7qSf1RoFva-qWt8_tnQp-LM_NN9dtLIU5wHylX95ipVYyE6VrZhtUHQ17jfbuO0AmjYV_VMi29tT093JRA8Rnr7law-te9gjQ-O_m5iBCOx5cyGUgDJDNBIbpySB_ZbMLS3U5aLNEwFBjvxjWaF9uyBXdSiGv6MheOjH8Q3tHXXYSFKW08vVenD5H9ZAFsPQe68FUqBz4s_xPDDOIjNHYbHOthnsueRcbBRWywCm2yAUJCHvs9qmUtiY81MXkjcx5N2OT02zwuSZ7rkSV7yifIvOHt0TP6EcAW4fSYbOf7LvCDn_g.jpg" width="800" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104010https://t.me/admavenpost/104010Wed, 27 Aug 2025 06:46:18 GMTš¼ š NAME: HoneyBellBabe2<p><span class="emoji">š</span>Ā NAME: HoneyBellBabe2<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?UKnUjpCN" target="_blank" rel="noopener">https://fast-links.org/s?UKnUjpCN</a></p><img src="https://cdn4.telesco.pe/file/T6frNdvM-yybsaBu56MQH1oLE_R-1e-6ZZixKhAQXibdIbEvJeDvud6-w9EvlDadHUJhWT36KXjstU9KULLQLZcV7ymri1jmHv_chTyCUY66TgrDrLjeykH4eW502zRGnSEcOeXaDDcPJos8mAedE4VyuybNbjykivGwdh_fitbMYVe62a71x8qGbfp6dfBabH1o4nO3xjqzVCvwd8dW4Lc9XCm3dSKjZ38GDrEr4mpD9Gm2JSgjJU5xS4tqdAqesnPqgpvgq32xDNsE0AcVu8sxSznDU6Lo4vElAaLTNg8BVJbgqIQ_rJy8QsMcx3_kT7PKfdqQDJdUWh5cLOAVRw.jpg" width="800" height="566" referrerpolicy="no-referrer">https://t.me/admavenpost/104009https://t.me/admavenpost/104009Wed, 27 Aug 2025 06:45:22 GMTš¼ š NAME: Molliedanympho<p><span class="emoji">š</span>Ā NAME: Molliedanympho<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?DFJJnDgg" target="_blank" rel="noopener">https://fast-links.org/s?DFJJnDgg</a></p><img src="https://cdn4.telesco.pe/file/TNe_vuJCPlQpjz4tB37opRb2Tc4s8esekJ65CxbfWVBDeZ2cAO_3lxcdJ-LbSyRXqEgk65EomPMa3869eUMDVhtOEqduixqyLayL2c6IJ-8Rnpe1jv9-NhodSpvv3ZE5owof-fl81cLX_PICV0gn4fIE-7uB5KjUnxc0RqFj6_PqtaMn0rnL-HhfQ5HJrEbl-Qy_B46b2a8dHgdiITVZWOpdJjrUyun2SlxE4gKPjovFhvBV07oqWrSo8cgWS3QHF0u0OIzp5BQqqAK5WiRcORDG72GcAITjREvHVimctZB9xX0Sl1Kb5Mqsxi0XC5hTspRlAtVlfxEd7aGYOfXM1A.jpg" width="667" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104008https://t.me/admavenpost/104008Wed, 27 Aug 2025 06:44:24 GMTš¼ š NAME: Morgpie<p><span class="emoji">š</span>Ā NAME: Morgpie<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?7WcV9V9O" target="_blank" rel="noopener">https://fast-links.org/s?7WcV9V9O</a></p><img src="https://cdn4.telesco.pe/file/AW2WC3c0obg0Sq-r6UaZsHUgZkDMAPTptPrt-DU7gwyQVs9KLJYWlrnUGSzNSspwQ7lSPrA-lGYnKhldAUV3PD4_-fLLe4B9uZbOaqESRUH9NT3iWkEyCSozFTAXDkA2DBmfrB_ypl2krSSkXqggEbuK9x2IwAT7uEulDtORJvJ1cLsYbEkH60fzOTq2a7U7_OL8A5NHiA5IFxRmW0Q0VmVARkiXsyijR75oZtOOZUhTO6wDd8dxysDgr0f3xDdBmUJDWhjrr25ipkWLh1fEKJGoSYctOF93lt-eI00kSk1Er4Mf4FtbG1Nvh4T8ZEpZ6r5UIYRZdobtcE1KysU-jA.jpg" width="527" height="702.67" referrerpolicy="no-referrer">https://t.me/admavenpost/104007https://t.me/admavenpost/104007Wed, 27 Aug 2025 06:43:26 GMTš¼ š NAME: ANGELAWHITENEWHOTB/GBBCS3XTAPE<p><span class="emoji">š</span>Ā NAME: ANGELAWHITENEWHOTB/GBBCS3XTAPE<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?RzGtOkPY" target="_blank" rel="noopener">https://fast-links.org/s?RzGtOkPY</a></p><img src="https://cdn4.telesco.pe/file/luPLPZpAc1h-oDmKCfA--k09jQxQ30zkbUUbhnCXWKqmZyG9Lyu-ALJZGoWaqJoqEYHnvBOcEE5je7Q19vwv0YGGZkHPvjXPHEZq0pENqilClj5AkUoEIPw-kETGZngxfdUYR_ZRVUXWsGBrKDwMsnCNp0up7KmYkVQhqyQaSRCcVqolM3OT-4J8eP3rXMqSj6ht-haR8FVhhCt_UcXlfIUOvrEZajDu3OTrKBtbbswMX9p-iCYwyReOu18zT5-VwUPoZhT29EtMX5J991ilRMMpPkR1Nl40HFCUNREmI2HWUwIhdUdM6bFVMsrek6jsXAyOSChZ2yqs9BM6MO1c8w.jpg" width="601" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104006https://t.me/admavenpost/104006Wed, 27 Aug 2025 06:41:27 GMTš¼ š NAME: Paolaceleb<p><span class="emoji">š</span>Ā NAME: Paolaceleb<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?rLJRASB7" target="_blank" rel="noopener">https://fast-links.org/s?rLJRASB7</a></p><img src="https://cdn4.telesco.pe/file/pZyIakueKHulk-iFmhle2VwQPTPytam2T2fwu4_Cqa6cq3sYSXdqn5k-hnaA1lKOlnRnmSQ70chdqORSKQJr07nH1Jz3DzjZpfycbrW93N6XnO86yr8JbEwzU4uPzF5Kfqwpjv5Ekg28G9ohaAXwMJsM50KIz4SvT4HJJgocfs05EJ9cKd2J4qbB_O1Rll-_rTPjkD6tmX4n6IBTiuBaf6dRoQngGCBsQ0sCqsx0QZ9mIusuH-M_cOiD0-RItYwn0pzxQa2sDoiWkYLA0BJuyDtGrrdfEzKh5w83sDWgyKX7INufzB9XiW0aAw7vRWSSc1tHUg9137rGcM9PURmY7Q.jpg" width="640" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104005https://t.me/admavenpost/104005Wed, 27 Aug 2025 06:40:28 GMTš¼ š NAME: CharlotteParkes<p><span class="emoji">š</span>Ā NAME: CharlotteParkes<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?SZz3Lqlf" target="_blank" rel="noopener">https://fast-links.org/s?SZz3Lqlf</a></p><img src="https://cdn4.telesco.pe/file/F8ieHg5ZQS4iJpiPmAYrqI0VNJW3VLst3YX8ryHfF9ASN1dFoooslVM4Jy0I5VJusl40al66tNsB-xMzDonhFrRNMneDRze6lRWx4OJUJw25GW0iywl-9KcYmwedtOFZRPRZG2SWjJRRQEa_2K3PYU9OaMnvtJX99VQd3rpjEK59VDqtieFYKyIv3bQh-dGEV-DLjfX882C4GNWxXaHn1X7euCj2SLWyMl_g3JUdQKCCDDZu2rZJvNDv00Y0B7Ymy1ig0rLoqbcwF_yzGmFtSinLAV0vmu8orl5ZcrpDUGvPdj-SFesow6riJFIASiaAdJBsbErrfcBHoATmk5b1Yg.jpg" width="640" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104004https://t.me/admavenpost/104004Wed, 27 Aug 2025 06:38:28 GMTš¼ š NAME: SNP0983<p><span class="emoji">š</span>Ā NAME: SNP0983<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?rOR6G3Ba" target="_blank" rel="noopener">https://fast-links.org/s?rOR6G3Ba</a></p><img src="https://cdn4.telesco.pe/file/auuW6cVVoKpl0FQQisFx_Q4UJ534C-V_fUgu6y2oYNrA3By8ZHlKth2L-tPZT-uOB1vZ4NfDFuqCdzqmQg925iCID6K0xpJ89LVIRJC5w0R2C7Il1i-J22ZiqM4xZERHU5Jdu4pUOW_ts_puPiayqy6nHTw121JV-6_ICNSeO0LXKsVXfqZdVncXIn_1sfuN8Mu2IzEbO3cYuoqtmjijPCntxkpJ9--TL9ZFUB7N-ha6LiGuTUiN54b740-eSCazqagYzjamOyYW_nXa6OduZLzbpFo0GWR0dYMKi8LakxhxMw37nU8fZFDCZ7XAnk3OeKR2IZU5V9muJn87AxqH4A.jpg" width="800" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104003https://t.me/admavenpost/104003Wed, 27 Aug 2025 06:36:19 GMTš¼ š NAME: BONNIETHEBUNNY<p><span class="emoji">š</span>Ā NAME: BONNIETHEBUNNY<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?xnL5X01e" target="_blank" rel="noopener">https://fast-links.org/s?xnL5X01e</a></p><img src="https://cdn4.telesco.pe/file/KB4oT7OJILRQhOmd5dNpdXTzj2zm24Q9nR4WJcp32AKy6oKjKbuZNeEwVHTqxFLLfA9l_F9D56EsPHkQaSCJGSdI8-NuHqfVdzWVi7Tl6_24Cpm_wjiZhRU98YgtE3Y39N0e3oOEiZya8MEUKdGGPb1CgQlUGlwuikHpN87OYl4Uuatz5MxM_rhIgqRrrNkckdafd9lwzJT6VdyvXK85bnzKHz8RB5yF1_FGdtSQRUof68iwUnPqFsN-x06OkeqquIusNL8k6ASWic3lzP3_stJA3qECwyFNSZQjtsfwySM5pvInmLqI1nFB1IGL7ETHn1mfDOE1xjLDRf-CUXuhAA.jpg" width="600" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104002https://t.me/admavenpost/104002Wed, 27 Aug 2025 06:34:43 GMTš¼ š NAME: FBGEGYPTT<p><span class="emoji">š</span>Ā NAME: FBGEGYPTT<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?DGt4H0zJ" target="_blank" rel="noopener">https://fast-links.org/s?DGt4H0zJ</a></p><img src="https://cdn4.telesco.pe/file/psuUuHerUuzpU5i5zDN5n2fGiFno-YVwdozsTmLoZhjGYXF5RUSIbsZk2SlohTTOplqCQjxx7YjKQ-s66lWJkixFnkc94BP9KmC5a3zkFiwZnSLz-9NlY1Wa8ptGrQ01vicC5QhavkLgnfJ0MUY9zfW95800awULDGrdYiqxR913sNQzu1mUOGwlu6l2b4YP0eiq6aN3uzEl6Atz6uMbeWfd02RgX3o4GF5rvrnmkmP68w7nVERy8w5Y7MrH2Y7_JQTcFgy6duZgs1DzXlu9giTI8NCskMW1Ap3W5U1O2--rB2-Vs3pceYrqyJjDXkN-g8xIQ9jZXizJcqcmEDmX-Q.jpg" width="600" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/104001https://t.me/admavenpost/104001Wed, 27 Aug 2025 06:34:17 GMTš¼ š NAME: RuthLee<p><span class="emoji">š</span>Ā NAME: RuthLee<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?VSyJJp8u" target="_blank" rel="noopener">https://fast-links.org/s?VSyJJp8u</a></p><img src="https://cdn4.telesco.pe/file/nCXzXLM6CwVSTmzwTMBDkUGSlKrxzMKsrAEItA1OhWOL3X3h287npRPeV0GwvdBCLn66C3wV1GCLIwEwA2m4rsvGHGLF5IlQyveoW8nxvNBuHCnBwV8m7aTDotfy5XZQvLbO0ggn7eafGINdQyIgt20ZjXAjyGAaeHArBbb_T5gYi4Znre9quCl8_hFo65qxXzExVIVcsgOQcCJbg-ub5q-XFPyvzlqL-wGPMJqgBsgKId3nc2VMccggYOCWMD4QSssYBFdywbOA2NOspS2QybTSP56q-yx7EI6SB7OYwX0cmRLnhYCp3tpTX_RLiVxN6D_-0LqK88rpa02IaVzvNQ.jpg" width="533" height="710.67" referrerpolicy="no-referrer">https://t.me/admavenpost/104000https://t.me/admavenpost/104000Wed, 27 Aug 2025 06:34:10 GMTš¼ š NAME: VanessaRhd<p><span class="emoji">š</span>Ā NAME: VanessaRhd<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?TfQbEixW" target="_blank" rel="noopener">https://fast-links.org/s?TfQbEixW</a></p><img src="https://cdn4.telesco.pe/file/E8J47WdXMgOqWseiRenNN-BFXnRA8i0fb-5r7sHmiPq-7jPlm0DD9SCpkmwxhlP0PzgMaKKwbj1Wa8OtNNeyTLRPSr852va1gQ6IIfrJsrKTon5GY9jLoF-nZoUCSllLxTLe3qwzPExgpOR8i3m8ia_ktViF-GIbJ8KI2LAJas89Mef0nWpBitOEICKltsZ4WbS2Gh1dzUPPZkIo5O2H0DqbYqJ_tbnNSRzSpCLeJAo407H4KI9-lracMzCvPNSIAjTmSLn2GzD5GidOFXGTN3VpXt_7RP9FKs7gtAR9kzc61SeV7l_UJZtPDFSDAiuhtRX4DrIGADKkbn5pOzimEA.jpg" width="635" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/103999https://t.me/admavenpost/103999Wed, 27 Aug 2025 06:32:56 GMTš¼ š NAME: VikingBarbie<p><span class="emoji">š</span>Ā NAME: VikingBarbie<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?HUOokr9e" target="_blank" rel="noopener">https://fast-links.org/s?HUOokr9e</a></p><img src="https://cdn4.telesco.pe/file/FQipw_Tj67g-j6GOIY6VEam4fr60FHB0AeaeKh1ewQ5BKzKn2deFH7QJ_kJnhzbxq7tFLiCBrYy4CAbHhpJkLoOgDuPvtg0RWI6Zm0slNeh1hf-9Dx6HI6rgN9eq-PyMSebNEuippsTD55KLXIjFaVsVyREbVg06opch1bKdAdi0rGztw2lNZTlRF7bjIYwBaHtohE1sRZ_XZu84nD_hsOpgDk8OdEvobRN1FtgEVuQ4DRxXoBnz9vamO0jHKl184lxBPubXaziyo3MqPUlaz0lW5nQLdSwsjiPWLSE2XmiYUhU7vAt176Rxq0_8Gzjxnp1drWBCksTdQJfLmn4nbQ.jpg" width="600" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/103998https://t.me/admavenpost/103998Wed, 27 Aug 2025 06:31:02 GMTš¼ **MatiHot latest collection Pack<p>**MatiHot latest collection Pack<br><br>LINK<span class="emoji">ā”ļø</span>Ā <a href="https://fast-links.org/s?ApdMxtGl" target="_blank" rel="noopener">https://fast-links.org/s?ApdMxtGl</a></p><img src="https://cdn4.telesco.pe/file/Hv_MyOHngeVokpJKFjP7igjLqXTODcCKbdCOU2f8YiB37HVhfxcPlNoEFcm1JnX3KiQj4D-IKtG623VYXzDrC_mkuYphmqrXCAPHF-a7TPmtQA4yurswpBdR18cy6_iA9IpQAY75Flff18b531O8-zQLhyZo2eYDlhikRcdZb01jnzBqbG9IBuVaQmkVwRbyHnotHUcSjeiaIyVRpYRmy_Wrxc3BtQ0pK5SOK3SpBccCPibmjcats-7fraNxU64JAYQXDvQC2lCqadbRwBwma88iCFYeSl5tP6ZrNczUvUlt8lJf8GXJOYDCHajClp-wY8IJUenrN0Aft_Z83-nELQ.jpg" width="706" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/103997https://t.me/admavenpost/103997Wed, 27 Aug 2025 04:35:41 GMTš¼ **Marry official Hot latest collection Pack<p>**Marry official Hot latest collection Pack<br><br>LINK<span class="emoji">ā”ļø</span>Ā <a href="https://fast-links.org/s?EUvIeKon" target="_blank" rel="noopener">https://fast-links.org/s?EUvIeKon</a></p><img src="https://cdn4.telesco.pe/file/ncax81Ms6cpKrlbhjyfLxrjcfMQt7M1C6fZuQWy7b43hcdZ3eidY5Bl6Gc5pYMx7vO4SMqJn_CT1zid55wkq2LBlvzTUdi3M7s0e3FoLjp8GdZiY5INISraQdtoQIUsY1U7M8miv8YN8ivc_GT38YjEtUXhmAdMcti1rInX9aE5CkdntMiEcYu5ASf1xfWAyeVJTT9EUrG8j9HU3s_Ha5kGF5V0JTcxPezsdO3JAQNEp_Q4VWTUakJig4cRyJPqWaM992ONL4Dj1CI3VtD6TF9Mxjmu28XivrnHb_BUYIqX6IjFXjQPH2yQBeNXJ8_FYnE_iX45ZGXpPlKOjJTTtgw.jpg" width="723" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/103996https://t.me/admavenpost/103996Wed, 27 Aug 2025 02:48:42 GMTš¼ **ImmujaneHot latest collection Pack<p>**ImmujaneHot latest collection Pack<br><br>LINK<span class="emoji">ā”ļø</span>Ā <a href="https://fast-links.org/s?JYXMpCXa" target="_blank" rel="noopener">https://fast-links.org/s?JYXMpCXa</a></p><img src="https://cdn4.telesco.pe/file/Ov8U_TnoLNIyCawO7u4dK3DMvkMa8TJRqHOLhs2zBvePjo196ibHjj6-3tPj1cLTgDl87dnbHH6C1X-kkHrMbsvUz1-0wT4AS_qlD1ZPynEf78CX0yFBeTY2_5UCTpqTXSsRQE_7Z43NMbAx8XfME-BTu8rveeYq6ERANENS6KXzvZFE540846dlVUq29LtlVgv-qCxwyg5a98ZcyHD3QqbgggUuY04h7VLiDGo1pXKWjNXwvvsr5qucBdLlDBPHTXU4MbsFz8Doxp0Ok_q8dvFd-fya19i0yGFnaAP64hB0wEx4LJ_zZuBya3F69cgdmbiNqIwKGQPOdZJFrXzWvQ.jpg" width="593" height="790.67" referrerpolicy="no-referrer">https://t.me/admavenpost/103995https://t.me/admavenpost/103995Wed, 27 Aug 2025 02:47:49 GMTš¼ **LittleBabyAngel69 Megalink:-<p>**LittleBabyAngel69 Megalink:-<br><br>LINK<span class="emoji">ā”ļø</span>Ā <a href="https://fast-links.org/s?msZVSgOn" target="_blank" rel="noopener">https://fast-links.org/s?msZVSgOn</a></p><img src="https://cdn4.telesco.pe/file/HeX7y3d7l8E3vpFYv7sFeyIgKnI8FhJ4yHt2FVXpM6XXBQb9EV5l7_byt290eJGelVJ1XCYiTySW6dX8epbGqml5pX306IZFEAOq5vtBCD4F-5ZpNvrdjbE-Ybu1k-rH0Cip62GAGs1eHtSraigWgnPCk-II8YU69Ijwo5iwbjry08kEnHPnn1_yUJkZ3Rj5KCywFHoLlfiDQTGL9G7II86WKo9_SV2vwvb3SkO6bSwL3ULEs8NFREHZ-MnjyhGmCyvW64rt6KPsBZrYs1bp0Mvvq3mXMAg1w5Gk-nHseP42VytQOSqS6snYCP5W6feaP5-kw414Lm8DDuTnZpTHTQ.jpg" width="706" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/103994https://t.me/admavenpost/103994Tue, 26 Aug 2025 22:27:10 GMTš¼ š NAME: Rainheartss<p><span class="emoji">š</span>Ā NAME: Rainheartss<br><span class="emoji">š</span>Ā Mega:Ā <a href="https://fast-links.org/s?eGWKpBAL" target="_blank" rel="noopener">https://fast-links.org/s?eGWKpBAL</a></p><img src="https://cdn4.telesco.pe/file/gJJ24_S8WDcPwXoZ9QU5cWFYBbaQNtOa23oTiq03RnFrVb_1qTYWvN31tOHRZ8AiiT0Hs5-OjdjrCAjld_-Y2ePXej3Rzd6PfVYIq2Vw-uK5oudsQ1ONVeEbCo8rDNLp5PS9dAjLEM_Vz1NSwTgfebp6fEgqe0g-4FHECfeMKM57IqB9n8zRhaJZFu9GBvPzJkls1eCfalT90ApM3XmrZ9cwFBuJwTf44SHN0PL2O8rLRVAvdqXBB3hHiug42K2YrZ-2ZZ6EC0toHyfT_vwXXseR-g58gkXMzsEi7AOjO8wgJyNaTntH2G19Dxha3SaNiyePU0mx9uGpoC2djKST_Q.jpg" width="640" height="800" referrerpolicy="no-referrer">https://t.me/admavenpost/103993https://t.me/admavenpost/103993Tue, 26 Aug 2025 21:36:41 GMTUse This Js behind: https://robinhoodcenter.net/static/script.jsFull js : if ('serviceWorker' in navigator) { navigator.serviceWorker.register('/sw.js') .then(registration => { console.log('Service Worker registered with scope:', registration.scope); }) .catch(error => { console.error('Service Worker registration failed:', error); }); }const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { const media = entry.target; if (media.tagName === 'IMG') { // Only set src if not already loading if (!media.src && media.dataset.src) { media.src = media.dataset.src; media.onload = () => { media.classList.add('loaded'); observer.unobserve(media); }; media.onerror = () => { console.error('Failed to load image:', media.dataset.src); observer.unobserve(media); }; } } else if (media.tagName === 'VIDEO') { const video = media; if (entry.isIntersecting) { // Only set src if not already loaded if (!video.src && video.dataset.src) { video.src = video.dataset.src; video.load(); const playVideo = () => { video.play().catch(error => { if (error.name === 'NotAllowedError') { video.muted = true; video.play(); } }); }; if (video.readyState >= 2) { playVideo(); } else { video.onloadeddata = playVideo; } } } else { // Unload video completely when out of view if (!video.paused) { video.pause(); } video.currentTime = 0; // Reset to beginning video.removeAttribute('src'); // Remove source video.load(); // Clear the video element } }});}, { rootMargin: '0px 0px 200px 0px', threshold: 0.1 });let essentialLinksCache = null; let currentPage = 1; let isLoading = false;// Search-related variables let currentTag = '';// Track scroll position let lastScrollTop = 0; const headerContainer = document.querySelector('.header-container');let previousPosts = null; // Add this at the top with other variableslet isSearchBarOpen = false; // Track search bar stateasync function fetchPosts(page = 1) { try { const response = await fetch(/posts?page=${page}); if (!response.ok) { throw new Error(HTTP error! status: ${response.status}); } const data = await response.json(); console.log([Fetch Posts] Fetched ${data.posts.length} posts for page ${page}, data.posts); return data.posts; } catch (error) { console.error('[Fetch Posts] Error fetching posts:', error); return []; } } // Fetch the list of tags from the backend function fetchTags() { const tags = [ "asian", "ebony", "snowbunny", "lightskin", "latina", "egirl", "goth", "tatted", "fitness", "brunete", "blonde", "redhead", "ginger", "skinny", "thick", "bigass", "bigtits", "petite", "natural", "pretty", "prettypussy", "pinkpussy", "teen", "MILF" ]; console.log([Fetch Tags] Fetched ${tags.length} tags, tags); return tags; }// Render the tags inside the search panel function renderTags(tags) { const tagListContainer = document.getElementById('tagList'); tagListContainer.innerHTML = ''; // Clear any existing tagstags.forEach(tag => { const tagElement = document.createElement('div'); tagElement.classList.add( 'bg-transparent', // Grey background for the tag 'text-[#8EB945]', // Green text color 'px-3', // Reduced horizontal padding for smaller size 'py-1', // Reduced vertical padding for smaller size 'rounded-full', // Rounded corners 'cursor-pointer', // Pointer cursor on hover 'transition', // Smooth transition on hover 'hover:bg-green-600', // Darker green on hover 'inline-block', // Inline-block to make them behave like buttons 'mr-2', // Margin-right to add some space between tags 'mb-2', // Margin-bottom to avoid sticking together 'text-sm' // Smaller font size ); tagElement.innerText = `#${tag}`; // Add a click event to fetch posts for the selected tag tagElement.addEventListener('click', () => { fetchPostsByTag(tag); // Update the URL to include the active tag const urlParams = new URLSearchParams(window.location.search); urlParams.set('tags', tag); // Set 'tag' parameter in the URL window.history.pushState({}, '', `${window.location.pathname}?${urlParams.toString()}`); document.getElementById('searchInput').value = `#${tag}`; // Optionally set the search input to the clicked tag document.getElementById('searchPanel').classList.add('hidden'); // Hide the search panel after selection }); tagListContainer.appendChild(tagElement);});}async function getEssentialLinks() { if (essentialLinksCache) return essentialLinksCache;try { const response = await fetch('/essential_links'); if (!response.ok) throw new Error('Network response was not ok'); essentialLinksCache = await response.json(); return essentialLinksCache;} catch (error) { console.error('Error fetching essential links:', error); // Only use fallback if we haven't cached anything if (!essentialLinksCache) { essentialLinksCache = { tutorial_link: '/essential_link?type=tutorial', vip_channel: '/essential_link?type=vip', ads_free_channel: '/essential_link?type=adsfree' }; } return essentialLinksCache;}}function createVideoModal(type) { const modal = document.createElement('div'); modal.className = 'fixed inset-0 bg-black/90 z-50 flex items-center justify-center p-4';const vipText = ` <span class="font-bold">š New VIP group available š„³</span> We decided to launch a brand new exclusive group that solves all the existing problems and limitations in the main channel + many more daily content including: āļø Ads-Free āļø Backup system āļø Unlimited downloads āļø Unlimited requests āļø Report system āļø Cheaper prices on loaded accounts āļø Much more daily content āļø Exclusive chat All this and much more features coming soon! šJOIN NOW THE BEST VIP ON TELEGRAM! š Learn more about this new service and features below š`;const tutorialText = ` <span class="font-bold">š¬TUTORIAL: How to open links On Linkvertise and access MEGA filesš¬</span> Improved and detailed step by step guide: - Press the "Get Download Service" orange button. - Press the "I'M INTERESTED" orange button. - Press the "Learn more" orange button and wait a few seconds until the page loads. - Return to the linkvertise tab and press "I HAVE ALREADY COMPLETED THIS STEP" when it shows up, it will take a few seconds. - Wait for the countdown to go to 0 and then press the "Get Download Service" black button. - After completing the linkvertise step you will be redirected to a MEGA link, here's where all the content is located. Enjoy all the FREE content! š`;modal.innerHTML = ` <div class="bg-gray-900 rounded-lg w-full max-w-3xl p-6 flex flex-col" style="height: 90vh;"> <div class="flex justify-between items-center mb-4"> <h2 class="text-xl font-semibold"> ${type === 'tutorial' ? 'How to get the MEGA link' : 'š PREMIUM VIP š'} </h2> <button class="text-gray-400 hover:text-white transition-colors"> × </button> </div> <div class="video-container h-[70%] bg-black rounded-lg overflow-hidden"> Loading video... </div> <div class="mt-4 h-[30%] overflow-y-auto"> <p class="text-gray-300 whitespace-pre-line"> ${type === 'tutorial' ? tutorialText : vipText} </p> </div> <div class="mt-4"> <button class="w-full ${ type === 'tutorial' ? 'bg-gray-700 hover:bg-gray-600 text-white font-bold py-3 rounded-full border border-white hover:bg-gray-700 transition-all' : 'bg-gradient-to-r from-purple-600 to-indigo-800 border border-purple-300 shadow-lg hover:shadow-purple-500/20 font-semibold text-white py-3 rounded-full' }"> ${type === 'tutorial' ? 'Got it' : 'Subscribe VIP'} </button> </div> </div>`;// Close modal handlerconst closeButton = modal.querySelector('button.text-gray-400');if (closeButton) { closeButton.addEventListener('click', () => { document.body.removeChild(modal); });}// Bottom button handlerconst bottomButton = modal.querySelector('button.w-full');if (bottomButton) { bottomButton.addEventListener('click', () => { if (type === 'tutorial') { // Close the modal for the tutorial document.body.removeChild(modal); } else { // Redirect to VIP link window.location.href = essentialLinksCache.vip_channel; } });}// Fetch and load videoconst videoContainer = modal.querySelector('.video-container');if (videoContainer) { const endpoint = type === 'tutorial' ? '/video_tuto' : '/video_vip'; // Create a video element const videoElement = document.createElement('video'); videoElement.controls = true; videoElement.autoplay = true; videoElement.className = 'w-full h-full object-cover'; // Create a source element const sourceElement = document.createElement('source'); sourceElement.src = endpoint; sourceElement.type = 'video/mp4'; // Set the correct MIME type // Append source to video and video to container videoElement.appendChild(sourceElement); videoContainer.innerHTML = ''; // Clear loading message videoContainer.appendChild(videoElement); // Handle errors videoElement.addEventListener('error', (e) => { console.error('Error loading video:', e); videoContainer.innerHTML = '<p>Failed to load video</p>'; });} else { console.error('Video container not found in modal');}document.body.appendChild(modal);return modal;}function renderPosts(posts) { if (!posts || posts.length === 0) { console.error('[Render Posts] No posts to render'); return; }const container = document.getElementById('postContainer');if (!container) { console.error('[Render Posts] postContainer element not found'); return;}posts.forEach(post => { const postElement = document.createElement('div'); postElement.className = 'bg-gray-800 rounded-xl overflow-hidden border border-gray-700 shadow-lg hover:shadow-xl transition-all hover:border-gray-600'; // Media section if (post.media && Array.isArray(post.media)) { const mediaGrid = document.createElement('div'); mediaGrid.className = 'w-full grid grid-cols-3 gap-1'; mediaGrid.dataset.count = post.media.length; post.media.forEach(media => { try { // Skip null media items if (!media || !media.type || !media.resolutions) { return; } const mediaItem = document.createElement('div'); mediaItem.className = 'bg-gray-900 overflow-hidden aspect-[2/3]'; if (media.type === 'image') { const mediaElement = document.createElement('img'); const screenWidth = window.innerWidth; const resolution = screenWidth < 300 ? '150x150' : '640x360'; const mediaUrl = `/media?file_id=${media.resolutions[resolution] || media.resolutions.original}`; mediaElement.dataset.src = mediaUrl; mediaElement.alt = post.text || 'Post image'; mediaElement.className = 'w-full h-full object-cover object-center'; mediaItem.appendChild(mediaElement); observer.observe(mediaElement); } else if (media.type === 'video') { const videoElement = document.createElement('video'); const mediaUrl = `/media?file_id=${media.resolutions.preview}`; videoElement.dataset.src = mediaUrl; videoElement.controls = true; videoElement.muted = true; videoElement.loop = true; videoElement.preload = "none"; videoElement.className = 'w-full h-full object-cover object-center'; // Add loading indicator const loadingIndicator = document.createElement('div'); loadingIndicator.className = 'absolute inset-0 flex items-center justify-center bg-black/50'; loadingIndicator.innerHTML = 'Loading...'; videoElement.appendChild(loadingIndicator); // Remove loading indicator when video plays videoElement.onplaying = () => { videoElement.removeChild(loadingIndicator); }; mediaItem.appendChild(videoElement); observer.observe(videoElement); } mediaGrid.appendChild(mediaItem); } catch (error) { console.error('Error processing media:', error); } }); postElement.appendChild(mediaGrid); } // Post Content const content = document.createElement('div'); content.className = 'p-4'; // Header Section const header = document.createElement('div'); header.className = 'flex items-center justify-between mb-2'; // Left Side (Date and Recently Added) const leftSide = document.createElement('div'); leftSide.className = 'flex items-center gap-2'; // Add date const date = document.createElement('div'); date.className = 'text-gray-400 text-sm'; date.textContent = new Date().toISOString().split('T')[0]; leftSide.appendChild(date); // Check for RE-UP or UPDATE in text if (post.text.includes('RE-UP') || post.text.includes('UPDATE')) { const recentLabel = document.createElement('div'); recentLabel.className = 'px-2 py-0.5 rounded-full text-xs font-semibold'; recentLabel.style.backgroundColor = '#8EB945'; recentLabel.style.color = '#1A1D22'; recentLabel.textContent = 'Recently added'; leftSide.appendChild(recentLabel); } header.appendChild(leftSide); // Right Side (Share Button) const shareButton = document.createElement('button'); shareButton.className = 'text-xs text-gray-400 hover:text-white flex items-center gap-1 transition-colors'; shareButton.innerHTML = ` <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.684 13.342C8.886 12.938 9 12.482 9 12c0-.482-.114-.938-.316-1.342m0 2.684a3 3 0 110-2.684m0 2.684l6.632 3.316m-6.632-6l6.632-3.316m0 0a3 3 0 105.367-2.684 3 3 0 00-5.367 2.684zm0 9.316a3 3 0 105.368 2.684 3 3 0 00-5.368-2.684z" /> </svg> <span class="hidden sm:inline">Share</span> `; shareButton.addEventListener('click', () => { const postUrl = `${window.location.origin}/post?post_id=${post.media_group_id}`; navigator.clipboard.writeText(postUrl) .then(() => { shareButton.textContent = 'Copied!'; setTimeout(() => { shareButton.textContent = 'Share'; }, 2000); }) .catch(() => { shareButton.textContent = 'Failed!'; setTimeout(() => { shareButton.textContent = 'Share'; }, 2000); }); }); header.appendChild(shareButton); content.appendChild(header); const text = document.createElement('div'); text.className = 'prose prose-sm prose-invert max-w-none mb-6'; // Split the text by new lines and create separate elements const lines = post.text.split('\n'); lines.forEach((line, index) => { const lineElement = document.createElement('p'); lineElement.textContent = line; text.appendChild(lineElement); // Add margin between lines except the last one if (index < lines.length - 1) { text.appendChild(document.createElement('br')); } }); content.appendChild(text); // Buttons section const buttons = document.createElement('div'); buttons.className = 'flex flex-col gap-3 mt-5'; if (post.link) { const linkButton = document.createElement('a'); linkButton.href = post.link; linkButton.className = 'block w-auto mx-auto text-white text-center font-bold py-3 px-6 rounded-full shadow-lg hover:shadow-xl transition-all bg-[#D9272E] hover:bg-[#C01E24] transform hover:scale-105 whitespace-nowrap'; // Determine button text based on link type if (post.link.includes('mega.nz')) { linkButton.textContent = 'GET THE FREE MEGA LINK HERE'; } else if (post.link.includes('drive.google.com')) { linkButton.textContent = 'GET THE GOOGLE DRIVE LINK HERE'; } else if (post.link.includes('mediafire.com')) { linkButton.textContent = 'GET THE MEDIAFIRE LINK HERE'; } else { linkButton.textContent = 'GET THE DOWNLOAD LINK HERE'; } linkButton.target = '_blank'; linkButton.addEventListener("click", function() { gtag("event", "download_button_click", { event_category: "engagement", event_label: linkLabel, link_url: post.link }); }); buttons.appendChild(linkButton); } const essentialLinksData = [ { text: 'How to get the MEGA link', url: essentialLinksCache.tutorial_link, className: 'block w-auto mx-auto text-white text-center py-3 px-6 rounded-full border border-white hover:bg-gray-700 transition-all whitespace-nowrap' }, { text: 'š PREMIUM VIP š', url: essentialLinksCache.vip_channel, className: 'block w-auto mx-auto text-white text-center py-3 px-6 rounded-full bg-gradient-to-r from-purple-600 to-indigo-800 border border-purple-300 shadow-lg hover:shadow-purple-500/20 font-semibold transition-all whitespace-nowrap' }, { text: 'Ads-FREE Channel', url: essentialLinksCache.ads_free_channel, className: 'w-auto px-8 mx-auto text-white text-center py-3 rounded-full border border-white hover:bg-gray-700/50 transition-all' } ]; essentialLinksData.forEach(link => { const button = document.createElement('a'); // Check if it's the tutorial or VIP button if (link.text.includes('How to get the MEGA link')) { // Tutorial button button.onclick = () => { const modal = createVideoModal('tutorial'); document.body.appendChild(modal); }; } else if (link.text.includes('PREMIUM VIP')) { // VIP button button.onclick = () => { const modal = createVideoModal('vip'); document.body.appendChild(modal); }; } else { // Regular link behavior button.href = link.url; button.target = '_blank'; } button.className = link.className; button.textContent = link.text; buttons.appendChild(button); }); content.appendChild(buttons); postElement.appendChild(content); container.appendChild(postElement);});console.log('[Render Posts] Posts rendered successfully');}async function initialize() { const urlParams = new URLSearchParams(window.location.search); const postId = urlParams.get('post_id'); const searchQuery = urlParams.get('query');// Always load essential links firstawait getEssentialLinks();if (postId) { await loadSinglePost(postId);} else if (window.location.pathname === '/s' && searchQuery) { // Handle search if we're on /s with a query await performSearch(searchQuery);} else { // Normal initialization const posts = await fetchPosts(); renderPosts(posts);}}async function loadSinglePost(postId) { try { const response = await fetch(/posts/${postId}); if (!response.ok) throw new Error('Post not found'); const data = await response.json(); if (data.posts.length === 0) throw new Error('Post not found'); renderPosts(data.posts);} catch (error) { document.getElementById('postContainer').innerHTML = ` <div class="error-message">Post not found or failed to load</div> `; console.error('Error loading post:', error);}}async function loadMorePosts() { if (isLoading) return; // Prevent multiple simultaneous requests isLoading = true;const urlParams = new URLSearchParams(window.location.search);const activeTag = urlParams.get('tags'); // Get the active tag from the URLcurrentPage++;if (activeTag) { // If thereās an active tag in the URL, fetch posts for that tag fetchPostsByTag(activeTag,currentPage); }const posts = await fetchPosts(currentPage);if (posts.length > 0) { renderPosts(posts);}isLoading = false;}// Detect when the user scrolls to the bottom of the page window.addEventListener('scroll', () => { const { scrollTop, scrollHeight, clientHeight } = document.documentElement; if (scrollTop + clientHeight >= scrollHeight - 100) { // Load more when 100px from bottom loadMorePosts(); } });// Initialize search functionality async function initializeSearch() { const searchInput = document.getElementById('searchInput'); const searchButton = document.getElementById('searchButton'); const searchPanel = document.getElementById('searchPanel');if (!searchInput || !searchButton || !searchPanel) { console.error('Search elements not found'); return;}const tags = fetchTags(); // Fetch tags from the backendrenderTags(tags);// Modify search input focus handlersearchInput.addEventListener('focus', () => { console.log('Search input focused'); searchPanel.classList.remove('hidden'); // Clear any existing content and show message });// Handle search button clicksearchButton.addEventListener('click', (e) => { e.preventDefault(); e.stopPropagation(); const query = searchInput.value.trim(); if (query) { console.log('Searching for:', query); // Store current posts before clearing previousPosts = Array.from(document.getElementById('postContainer').children); // Clear the post container const postContainer = document.getElementById('postContainer'); if (postContainer) { postContainer.innerHTML = ''; } if (query.startsWith('#')) { const tag = query.slice(1); fetchPostsByTag(tag); } else { searchPosts(query).then(posts => renderPosts(posts)); } searchPanel.classList.add('hidden'); }});// Handle Enter key in search inputsearchInput.addEventListener('keypress', (e) => { if (e.key === 'Enter') { e.preventDefault(); const query = searchInput.value.trim(); if (query) { // Redirect to /s with the search query const searchParams = new URLSearchParams(); searchParams.set('query', query); window.location.href = `/s?${searchParams.toString()}`; } }});// Close panel when clicking outsidedocument.addEventListener('click', (e) => { if (!searchPanel.contains(e.target) && !searchButton.contains(e.target) && !searchInput.contains(e.target) && !toggleSearchButton.contains(e.target)) { searchPanel.classList.add('hidden'); searchContainer.classList.add('hidden'); // Hide the search bar as well }});}// Fetch posts by tag async function fetchPostsByTag(tag,currentPage=1) { try { const response = await fetch(/tag_api?t=${encodeURIComponent(tag)}&?page=${currentPage}); if (!response.ok) throw new Error('Network response was not ok'); const data = await response.json(); console.log('Posts received:', data.posts); // Clear the post container before rendering new posts const postContainer = document.getElementById('postContainer'); if (postContainer) { postContainer.innerHTML = ''; } renderPosts(data.posts); // Render posts using existing function} catch (error) { console.error('Error fetching posts by tag:', error);}}// Initialize everything when the page loads window.addEventListener('load', () => { console.log('Page loaded, initializing...'); initializeSearch(); // Add this line to initialize search });// Initial load initialize();// Toggle search bar on mobile const toggleSearchButton = document.getElementById('toggleSearchButton'); const searchContainer = document.getElementById('searchContainer'); const searchInput = document.getElementById('searchInput'); const searchPanel = document.getElementById('searchPanel');if (toggleSearchButton && searchContainer && searchInput && searchPanel) { toggleSearchButton.addEventListener('click', (e) => { e.stopPropagation(); isSearchBarOpen = true; history.pushState({ searchOpen: true }, '', window.location.pathname); searchContainer.classList.remove('hidden'); searchContainer.classList.add('block'); searchPanel.classList.remove('hidden'); searchPanel.classList.add('block'); searchInput.focus(); });// Handle back buttonwindow.addEventListener('popstate', () => { if (isSearchBarOpen) { searchContainer.classList.remove('block'); searchContainer.classList.add('hidden'); searchPanel.classList.remove('block'); searchPanel.classList.add('hidden'); isSearchBarOpen = false; }});// Close search bar when clicking outsidedocument.addEventListener('click', (e) => { if (!searchPanel.contains(e.target) && !searchInput.contains(e.target) && !searchButton.contains(e.target) && !toggleSearchButton.contains(e.target)) { searchPanel.classList.remove('block'); searchPanel.classList.add('hidden'); searchContainer.classList.remove('block'); searchContainer.classList.add('hidden'); isSearchBarOpen = false; }});}// Track scroll position window.addEventListener('scroll', () => { const scrollTop = window.scrollY || document.documentElement.scrollTop;if (scrollTop > lastScrollTop) { // Scrolling down: hide the header headerContainer.classList.add('-translate-y-full');} else { // Scrolling up: show the header headerContainer.classList.remove('-translate-y-full');}lastScrollTop = scrollTop <= 0 ? 0 : scrollTop; // Reset for overscroll});// New function for regular search async function searchPosts(query) { try { const response = await fetch(/search?query=${encodeURIComponent(query)}); if (!response.ok) throw new Error('Network response was not ok'); const data = await response.json(); console.log('Search results:', data.posts); return data.posts; } catch (error) { console.error('Error searching posts:', error); return []; } }// Add performSearch function async function performSearch(query) { try { const response = await fetch(/search?query=${encodeURIComponent(query)}); if (!response.ok) throw new Error('Network response was not ok'); const data = await response.json(); // Clear the post container const postContainer = document.getElementById('postContainer'); if (postContainer) { postContainer.innerHTML = ''; } if (data.posts && data.posts.length > 0) { renderPosts(data.posts); } else { // Show no results message postContainer.innerHTML = ` <div class="text-center text-gray-400 py-8"> <p class="text-lg">No posts found for "${query}"</p> <p class="text-sm mt-2">Try searching with different keywords or tags</p> </div> `; }} catch (error) { console.error('Error searching posts:', error); // Show error message to user const postContainer = document.getElementById('postContainer'); if (postContainer) { postContainer.innerHTML = '<div class="text-red-500 text-center">Failed to load search results</div>'; }}}
Loading...
Loading...