Commit Graph

18 Commits

Author SHA1 Message Date
nineap 0fa87e2d9a Фолбэк на кэш при недоступности PocketBase (Pricing/FAQ)
Pricing: при полном отказе всех запросов пробует localStorage-кэш
последнего успешного ответа вместо пустого состояния, пишет туда же при
успехе. Faq: отличает "в кэше правда пусто" от "не смогли загрузить" —
раньше оба случая показывали один и тот же текст "0 protocols found",
что вводило в заблуждение при обычном сетевом сбое.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-09 16:37:06 +07:00
nineap 32b4460b66 Локализует лендинг на 10 языков + RTL для арабского и персидского
Добавляет zh-CN, fa, ar, tr, uk, be, vi, uz словари (170 ключей, идентичная
вложенная структура) к существующим en/ru. lib/locales.ts — единый источник
списка локалей/дефолтной локали/RTL-набора вместо захардкоженного ["en","ru"]
в proxy.ts. language-switcher.tsx: переключение языка резало только
двухбуквенные коды регэкспом (/^\/[a-z]{2}/), из-за чего zh-CN никогда не
матчился и путь задваивался — заменено на honest-поиск по списку locales.

app/[lang]/layout.tsx — dir="rtl"/"ltr" на <html> по локали (SSR, в отличие
от реактивного клиентского переключения в netrunner-app). Header.tsx/
Footer.tsx — разбитое на три <span> имя бренда визуально переворачивалось
Flexbox'ом под dir=rtl ("VPNrunnerNet"), исправлено через dir="ltr" на
самом враппере.

BlogPreview/Faq/Pricing и обе blog-страницы: fallback на *_en-коллекцию
PocketBase, если для языка ещё нет переведённого контента (FAQ-ответы,
детали тарифов, посты блога не тянутся автоматически — это отдельный от
статических словарей CMS-контент), плюс i18n-ключи period1m/period6m/
period1y вместо захардкоженных ru/en-подписей периодов в Pricing.tsx.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-08 22:53:37 +07:00
nineap 899c54e1fc Unify auth with backend cookie sessions; add dev-deploy pipeline
Auth: drop localStorage session token entirely, talk to netrunner-backend
via credentials:"include" HttpOnly cookies shared over the common parent
domain, and redirect to the account subdomain (ЛК) after login instead of
a dead local /profile route.

Config: NEXT_PUBLIC_* values used by client components (API_URL,
ACCOUNT_ORIGIN, BOT_USERNAME, PB_URL) get inlined into the JS bundle at
image build time and can't be overridden by docker-compose environment at
container start. Moved these reads into server components (page.tsx) and
thread them down as props, so one built image can genuinely serve both
prod and dev by config alone.

CI/CD: split the old single auto-deploy-to-prod workflow into build.yml
(build+push on every push to main) and deploy.yml with deploy-dev (auto,
same VPS as netrunner-backend's dev environment) and deploy-prod (manual
dispatch only) — mirrors netrunner-backend's pipeline shape. Added
docker-compose.dev-remote.yml pointing at the dev backend.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-04 15:26:28 +07:00
nineap c04194bb85 docs 2026-07-02 23:13:24 +07:00
nineap 31f354d9ca new cursor, speedtest at another page, remove rubbish 2026-05-11 20:22:27 +07:00
nineap 36f75eb454 localization updates, terminal errors, etc 2026-05-03 16:36:21 +07:00
nineap dc5a28d159 auth, login, new page 2026-04-25 14:57:50 +07:00
nineap b4f07a7b91 first load optimizations and terminal with comments 2026-04-24 14:33:06 +07:00
nineap 84f58220d2 rust gateway for cms and comments filter 2026-04-24 03:33:53 +07:00
nineap e8b9eb5c52 loading and seo optimization, big design update 2026-04-24 01:50:41 +07:00
nineap de5bf60e73 cms fix 2026-04-21 20:38:00 +07:00
nineap 4f74ee5e1d landing url to cms fixes 2026-04-21 20:32:09 +07:00
nineap 02100e4109 pb client 2026-04-20 13:43:43 +07:00
nineap b94d46c57b guest book 2026-04-19 14:05:24 +07:00
Трапезников Кирилл Иванович 7acc40ec46 design fixes, tables seperate by language, loading and 404 pages, downloads from cms 2026-04-19 16:05:05 +10:00
Трапезников Кирилл Иванович 4b11fec8cc base with cms integrated 2026-04-18 21:16:55 +10:00
nineap 6404495696 initial commit 2026-04-17 17:06:55 +07:00
nineap fab77ed970 feat: initial commit 2026-04-17 14:54:33 +07:00