Navigation
- Replace "Donate" with a "Support MSOS ❤️" CTA site-wide
- Remove dead nav links (Gallery, Press releases)
- Turn the one-item News dropdown into a direct link
Homepage
- Replace the non-functional "Become part" contact form with a
"Find your people in Slovenia" join CTA (blue/white gradient band,
orange button, photo collage), in all three languages
- Fix the placeholder Activities subtitle
- Redesign Activities into card-style tabs with icons; move per-tab
content into HTML panels and switch by index so the tabs work in
every language (MK/SI tabs were previously dead)
Newsletter (MailerLite)
- Add the subscribe block to the News hub, news articles, and every
events/projects page and hub, in all three languages
- Resize/rebalance the block, shrink the privacy line, add top spacing
- Standardise on honest copy (drop the "2,000+ subscribers" claim)
- Load main.js on the News hub pages (they shipped without it, so the
form and header dropdowns didn't work there)
- Fix a dead privacy-policy link on the makedonska-vecer page
- Document the signup convention in docs/newsletter-signup.md
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The "Get Involved" dropdown (Become a member / Support MSOS) had dead href="#"
links and only duplicated the two top-right buttons (Become a member, Donate).
Removed it site-wide (desktop + mobile, en/si/mk) - 390 blocks across 195 pages,
including the privacy-policy header the generators slice from, so regeneration
stays clean. Nav is now Who We Are / What We Do / For Students / News + the two
pill buttons.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Update the residence-permit "sufficient means" figure to 507,43 EUR/month
(Slovenian basic minimum income from 1 April 2026, source gov.si) across the
guide, FAQ, budget note, sample parent statement and my-route tip; replaces
the old 484,88 everywhere.
- New standalone news announcement page /<lang>/news/proof-of-means-updated-2026/
(trilingual), published 1 August 2026, with a clickable gov.si source box and a
hero image (Pixabay, credited). news.js now supports announcement items
(slug + body) and shows them newest-first on the homepage and News hub; the
image doubles as the card thumbnail. Optimised 6.98MB to 255KB.
- Switch English EUR amounts to European format (comma decimal, dot thousands):
507,43 / 9.600 / 1.000 etc. Only euro-prefixed amounts are touched, so SI/MK
(which use a euro suffix) are unaffected. New generator eurofmt.js.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Mobile fixes (article, guide, get-to-know, projects pages):
- Remove duplicate main.js include site-wide. footer.js emitted a
<script src=main.js> inside the footer block while pages also load one
before </body>, so DOMContentLoaded ran twice and every tap toggled the
mobile menu / article TOC twice (net no-op). Menu and TOC only worked on
the homepage. Now exactly one main.js per page, before </body>.
- Kill horizontal overflow: add overflow-x: clip to html/body (clips the
off-canvas mobile nav panel without breaking position: sticky, unlike
overflow-x: hidden).
- Reset align-items to stretch in the mobile .article-layout-container
rule; the desktop flex-start made .article-container size to max-content
width in a column flexbox and overflow the viewport.
Membership form hardening (Become a Member):
- Honeypot field + localStorage cooldown (30s gap, max 3/24h) + stronger
email regex; trilingual cooldown alert message.
- Apps Script (setup doc): per-email auto-reply dedupe + daily send cap;
applicant reply is a plain thank-you that never echoes submitted answers.
- Draft HTML welcome email (email-welcome-preview.html) for later use.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
New trilingual /<lang>/become-a-member/ conversion page: hero with real-photo collage, why-join benefits, animated MSOS-in-numbers, ways to participate, membership-in-real-life and projects showcase (real project photos), testimonials, who-can-join, an adaptive multi-step form (student + supporter flows, conditional fields, progress, personalised messages, validation, success screen), FAQ and final CTA. Site-wide 'Become a member' buttons now link here. Form posts to a Google Form once wired; metrics/testimonials are placeholders to confirm.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
New /<lang>/news/ hub aggregates real projects (title+image read from their pages), placeholder news announcements, and blog items, newest-first with type badges and a type filter. Homepage Latest news now shows the newest dated items as badged cards with a working See all to the hub; the News menu link points there too. Dates in news.js are placeholders to replace with real publish dates.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Remove 'Mentorship Programme' and 'Open calls' from the menus, rename 'Announcements' to 'News and Announcements', and wire the Blog link. Add a trilingual /<lang>/blog/ page with a distinct look: featured strip, client-side topic filters, and a masonry card wall with colour-coded tags (placeholder posts for now).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
New /<lang>/faq/ page (en/si/mk) with categorised accordion Q&A that link into the Student Welcome Guide, plus a contact/Viber block. Nav 'FAQs' links and 'See all FAQs' buttons across the site now point to it.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Flags: replace flag-icons CDN with local SVGs (images/flags/{gb,si,mk}.svg) referenced as CSS backgrounds, so no external dependency and no per-page path issues. Partners: replace the static home-page logo row with a seamless auto-scrolling, hover-pausing marquee (CSS-only, reduced-motion aware, edge fade).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Desktop dropdown and mobile modal now show circular country flags (flag-icons) with clean language names and an active-language highlight, driven by the page lang via main.js.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add legal name, real social links (FB/IG/LinkedIn/YouTube), clickable email, guide and section navigation, and 2026 copyright. All links depth-correct per page and translated per language.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Voting now locks the widget for the page view (buttons disabled, chosen one highlighted, thank-you shown); reload to vote again. Fixes the CSS bug where display:flex overrode the hidden attribute so buttons stayed clickable. On No, an optional comment box posts to a separate Comment field. Adds a guarded [hidden] rule and selected/disabled/comment styles.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Every guide page and the landing now end with a help section: an Email us contact, a prominent Viber community join button, and a Was this page helpful Yes/No widget. guide-feedback.js records the vote in localStorage and on No invites emailing MSOS or asking in Viber; it exposes a sendVote hook for later central collection.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrites the six living/arrival/benefits pages (student-accommodation,
prepare-to-move, arrival-checklist, administrative-basics, student-meals,
student-transport) to the deeper v3 English master, trilingual, with
hero placeholders and Sources sections. Transport states subsidy applies
regardless of distance (old 2 km rule explicitly retired); meals keep the
current €5.19; dorm eligibility distinction and scam/lease checklists added.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrites the six residence/health pages (visa-and-residence-explained,
student-residence-permit, where-to-apply-for-residence,
means-accommodation-address, rm-si-3-health-insurance,
healthcare-in-slovenia) to the deeper v3 English master, trilingual.
Adds backward-compatible generator support for per-page hero-image
placeholders and a "Sources and further information" section, plus
.guide-last-checked styling. Owner decisions applied (student work on
the study permit vs employment permit; sufficient means shown as
"check current"). SI/MK bodies are MSOS working translations pending
native proofread.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Completes the 30-page guide: adds programme choice, recognition,
documents, admission, tuition, residence, health, accommodation,
arrival, admin basics, meals, transport, student work, academic
life, study cities, budget, wellbeing, renewal, and official
sources, each in EN/SI/MK. Landing quicklinks now list all 29
topics; adds guide-linklist styling and a links block renderer.
SI/MK bodies of dense administrative content still need a native
proofread before publishing.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>