Skip to content

menazzu/8msite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

March 8 Master Site

Один сайт, два режима:

  • Админка (по умолчанию): index.html
  • Личная страница девушки: index.html?key=<уникальный_ключ>

Структура

  • index.html — разметка страниц и блоков.
  • assets/css/main.css — стили (включая витрину-карусель).
  • assets/js/app.js — логика приложения (админка, Supabase, карусель).
  • archive/ — старые концепты/черновики.

1) Вход в админку

  1. Откройте index.html
  2. Код доступа по умолчанию: M8
  3. После входа создавайте/редактируйте профили и копируйте персональные ссылки для QR.

Код меняется в assets/js/app.js в константе ADMIN_CODE.

2) Backend режимы

Сайт поддерживает 2 режима хранения:

  • localStorage (автоматически, если Supabase не настроен)
  • Supabase (если заполнены SUPABASE_URL и SUPABASE_ANON_KEY)

Константы в assets/js/app.js:

  • SUPABASE_URL
  • SUPABASE_ANON_KEY
  • SUPABASE_TABLE (по умолчанию march8_profiles)
  • SUPABASE_BUCKET (по умолчанию media)

3) Подготовка Supabase

  1. Создайте проект в Supabase.
  2. В SQL Editor выполните файл supabase_schema.sql.
  3. В Project Settings -> API скопируйте:
    • Project URL
    • anon public key
  4. Вставьте их в assets/js/app.js в SUPABASE_URL и SUPABASE_ANON_KEY.

4) GitHub Pages деплой

  1. Запушьте репозиторий на GitHub.
  2. В Settings -> Pages выберите source GitHub Actions.
  3. Дождитесь публикации.
  4. Проверьте:
    • главная ссылка открывает админку,
    • ссылка ?key=... открывает персональную страницу.

5) Важный момент по безопасности

Текущий вариант больше не frontend-only для админки.

  • Вход в мастер-панель идет через Supabase Auth.
  • Пароль админа не хранится во фронтенде.
  • Запись в профили, глобальные настройки и Storage разрешена только authenticated пользователям из таблицы admin_users.
  • Публичный пользователь (anon) может только читать данные, которые нужны для открытия персональной страницы.

Что все еще важно понимать:

  • Персональные страницы по-прежнему открываются на клиенте по ?key=....
  • Если нужна строгая модель доступа без риска чтения/перебора профилей на клиентской стороне, следующим шагом нужен backend-слой: Edge Function или API с server-side проверкой ключа.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors