Security fixes: - JWT_SECRET/ADMIN_PASSWORD fail-fast on missing/weak values - Switch admin auth from localStorage to httpOnly cookie - Rate limiting on login (10/15min) and contact form (3/10min) - CORS whitelist via ALLOWED_ORIGINS env var - Helmet with CSP, frameguard - Escape HTML in contact email and admin panel innerHTML - Remove SVG from upload whitelist - err.message no longer leaked in API responses - MAIL_TO moved to env var - JWT expiry 7d → 24h Navbar: - Rename: رادار آینده → آیندهپژوهی و رصد هوشمند - Rename: مرز فناوری → فناوری و نوآوری - Rename: نبض صنعت → بازار و زنجیره فولاد - Add: پایداری و فولاد سبز (/sustainability) - Add: ژئوپلیتیک و اقتصاد جهانی (/geopolitics) - Remove: رویدادها Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| app.js | ||
| index.html | ||
| style.css | ||