🌴 Profiles on the island

PHOTOSHOOT on SAMUI
I am sure that your vacation in Samui was unforgettable, let’s leave it not only in memory, but also in photos. Write to me to book a photo shoot👌🏼
Catch the VibeI am sure that your vacation in Samui was unforgettable, let’s leave it not only in memory, but also in photos. Write to me to book a photo shoot👌🏼
Catch the VibeVersion 1.0 - Initial Release - MVP сайта знакомств на Koh Samui - Добавление и отображение профилей с фото - Ссылки на Telegram - Авторизация через Telegram ... Version 1.1 - Добавлено поле Instagram - Возможность указывать даты приезда/отъезда - Фильтрация по полу ... Version 1.2 - VIP-профили - Сортировка по дате и популярности - Панель администратора ... Version 1.3 - Закреплённые профили (pinned) - Удаление скрытых анкет с истёкшей датой отъезда - Улучшения в верстке карточек ... Version 1.4 - Фильтр "Drinking Buddy" - Изменения в дизайне страницы профиля при включенной Drinking Buddy - Анимация бокала на карточке - SEO-теги и Open Graph разметка - Кнопка контакта с админом ... Version 1.5 - Добавлены Анонсы под фильтрами - Интеграция с Google Ads - Генерация CSV с ключевыми словами и объявлениями ... Version 1.6 - Добавлены интересы: Йога, Тусовки, Пляж, Медитация, Фитнес - Настроена сортировка - Пагинация - Добавлен блок New People (3х3) - Улучшения в Анонсах. (Теперь их сразу несколько с весом и автоматической датой удаления) - Добавлена функция Report, позволяющая пожаловаться на профиль ... Version 1.7 - Добавлено поле "Neighborhood" - Фильтр по району - Поддержка HEIC и конвертация в JPG при загрузке - Поддержка .ics (в анонсе при нажатии на дату, открывается добавление в календарь iOs) - Улучшено горизонтальное отображение на широких экранах ... Version 1.8 - Улучшенная сортировка: pinned > vip > updated > created - Возможность скрытия профиля - Улучшения в админке ... Version 1.9 - Улучшена панель фильтров - Мобильные улучшения - Настроен вывод отображения Вип и Бокал в профиле ... Version 2.0 - Сжатие JPG через ImageMagick из админки - Улучшено удаление фото вместе с анкетой (раньше фото могло остаться) - Добавлена голубая галочка верификации - Скорректирован вывод значков бокала и вип. (при совместном использовании, накладывались друг на друга) ... Version 2.1 - Отображение интересов прямо в карточке - Теги интересов с цветным стилем - Обработка редких символов и очистка HTML в полях - Улучшено отображение варификации. Придали стиль галочке - Поднятие анкеты при авторизации из профиля - При фильтрации теперь скрывается блок новых людей ... Version 2.2 - Оформление блока описания в стиле "цитаты" - Уменьшенная иконка книги - Улучшено визуальное разделение описания, интересов и кнопок ... Version 2.3 - Добавлена поддержка version.txt - Автоматическое отображение версии в футере - Страница changelog.php - Отображение интересов в индексе. ... Version 2.4 - Поле Instagram сделано обязательным для заполнения - Автоматическая очистка Instagram от лишних символов (пробелы, символ @ и т.д.) - Кнопка «⬅ Back» теперь использует JavaScript (history.back()), чтобы возвращаться на предыдущую страницу, а не всегда на главную ... Version 2.4.1 - Улучшения в админке: отображение количества активных и всех анкет - Автоматическое именование бэкапов с текущей версией из version.txt - Поддержка восстановления из последнего .zip и .sql - Логирование восстановлений в restore.log ... Version 2.4.2 - При клике на интерес в анкете происходит фильтрация по этому интересу - Убрано подчёркивание у интересов в карточке ... Version 2.4.3 — добавлена кнопка радио с иконкой Radio Samui в правом нижнем углу — Иконка ведёт на radiosamui.online в новой вкладке — Удалён экспериментальный mini-player (player.html) — Уменьшена яркость свечения иконки ... Version 2.4.4 - Добавлена кнопка “Share this Profile” в профиле - Поддержка navigator.share для мобильных устройств и копирование ссылки в буфер на десктопах - Новый текст шеринга: “Check out this profile – perfect for friends, fun & good company in Samui!” - Оформление кнопки в фирменном стиле, уменьшен размер, улучшена читаемость - Подпись к кнопке “Copy link or send to a friend visiting Samui” размещена ближе - Добавлено подтверждение перед запуском восстановления в админке (Run Restore) ... Version 2.4.5 - Добавлена дата создания профиля (отображается под кнопкой «⬅ Back») - Улучшения вёрстки и выравнивания блока Share Profile ... Version 2.4.6 - Исправлено: кнопка “Contact Admin” снова отображается как обычная серая ссылка - Исправлено: после входа больше не появляется кнопка Telegram, если в анкете нет контактов - Улучшено: если контакт (Telegram или WhatsApp) отсутствует — соответствующая кнопка полностью скрывается - Добавлено: отображение даты создания профиля внизу анкеты - Устранена проблема с обязательным полем “Neighborhood” на странице редактирования - Подправлено отображение ссылки “Share this Profile” — теперь подпись ближе к кнопке ... Version 2.5 - Добавлен свайп-блок 3x3 “New People” - Загружается до 27 новых анкет, разбитых на страницы по 9 - Возможность листать влево для просмотра следующих - Добавлены статические индикаторы • • • - Убрана логика смены активной точки ... Version 2.6 Добавлена метка “Top 10 Most Viewed” на страницу профиля для самых популярных анкет - Улучшено отображение бейджей VIP и “Drinking Buddy” в анкете - Актуализирован стиль профиля: подчёркнуты топовые участники - Обновлён CSS для адаптации под яркие элементы (свечения, анимации) - Мелкие визуальные правки и оптимизация интерфейса под мобильные устройства ... Version 2.6.1 - Исключены уехавшие пользователи из блока “New People” на главной странице. - Незначительная оптимизация SQL-запроса для новых анкет. ... Version 2.6.2 - Админка: добавлено визуальное выделение профилей с истекшей датой отъезда (✈️ рядом с ID + красная подсветка). - Улучшена читаемость админ-панели для “улетевших” и скрытых анкет. - Мелкие исправления интерфейса. ... Version 2.6.3 - Блокировка IP: теперь можно ограничить доступ к просмотру анкет по IP - Улучшенная проверка профиля – исправлена ошибка отображения пустых данных - Новая стилизация для блока "Profile Blocked" с кнопкой "Back to Home" - Добавлена защита от спама авторизаций через Telegram - Оптимизация кода и небольшие улучшения в админке ... Version 2.6.4 - В админке теперь отображается IP, с которого была создана анкета - Исправлено: команда сжатия изображений больше не создаёт дубликаты файлов (.jpg~, .jpg~~) ... Version 2.6.5 - Добавлена проверка поля Instagram на стороне клиента: - Поле обязательно для заполнения. - Допускаются только латиница, цифры и подчёркивания. - При вводе русских букв или других недопустимых символов показывается ошибка. - Улучшено UX: поле подсвечивается красным при ошибке, а кнопка Submit блокируется. - Обновлена серверная валидация поля Instagram — исключены некорректные значения. ... Version 2.6.6 - Добавлена возможность убирать верификацию (Unverify) профиля через админку. - Улучшена логика отображения значка “галочка” (verified badge) — теперь он корректно выводится и не дублируется. - Исправлена ошибка отображения таблицы в админке: значок верификации отображался некорректно из-за лишней ячейки в строке (таблица “плыла”). - Обновлены стили и логика отображения для корректной работы админки на всех разрешениях. ... Version 2.6.7 - Исправлена проблема с повторным появлением страницы авторизации при возвращении из профиля: - теперь $_SESSION['telegram_user'] также устанавливается при входе через Telegram, чтобы telegram-login.php корректно выполнял редирект. - Добавлена явная установка telegram_user после успешной авторизации (telegram-auth.php). - Проведена чистка логики редиректа и авторизации для согласованности. ... Version 2.6.8 - Изменено поведение после редактирования профиля: теперь после сохранения/удаления анкеты пользователь возвращается на главную страницу, а не в анкету (чтобы избежать “зацикливания”). - Добавлена кнопка возврата на главную на странице редактирования профиля. - Оптимизирована навигация между edit.php, index.php и profile.php. ... Version 2.6.9 - Обновлено основное SEO-описание сайта: акцент теперь не на знакомства, а на “чекин” — лёгкие встречи, активности и общение. - Обновлены meta description, keywords, og:title, og:description, twitter:title, twitter:description, чтобы сайт выглядел нейтральнее в Instagram и мессенджерах (меньше упора на слово “dating”). - Подготовка под дальнейшее смещение акцента от “знакомств” к формату “встреч и лайтового общения”. ... Version 2.7 - Chat invite под анкетой: добавлен блок «Join island chat» с иконкой Telegram и ссылкой @whosonsamuinow под каждой анкетой. - Фон и стиль VIP+Drinking Buddy: доработано визуальное отображение — больше свечения, оптимизирована читаемость текста и блоков. - Адаптивность блока чата: убрано выделение/полоса в index.php, чтобы не выбивалось из сетки главной. - Интеграция стилей: чат-инвайт и блок New People теперь в едином фирменном стиле (Telegram-иконка, ярко-оранжевый текст). - Улучшен hover-эффект интересов: теперь тег-интерес мягко меняет фон и цвет при наведении. - Мелкие визуальные правки: тени, расстояния, кнопки — всё ближе к островному вайбу. - Подготовка под ленту сообщений: разметка и стили готовы к добавлению упрощённого чата (анонсы/заметки). - Оптимизация фильтров: фильтры отображаются в одну строку с плавной адаптацией под мобильные. ... Version 2.7.1 – Добавлена поддержка точки (.) в Instagram-именах – Улучшена валидация Instagram на клиенте и сервере – Мелкие визуальные улучшения и корректировки ... Version 2.8 Добавлено: - Speed Dating Events: возможность добавления анкет в конкретное мероприятие - Собственная страница голосования с поддержкой токенов и защитой от голосования за себя - Публичная страница матчей — отображаются пары с взаимными лайками - Автоматическое исключение дубликатов при подсчёте матчей - Кнопка на странице успеха для перехода к голосованию за участников своего ивента Улучшено: - Улучшено отображение анкет в голосовании (фото, имя, лайк-кнопка) - Проверка корректности токена и защита от повторных голосов Исправлено: - Проблемы с SQL-запросами при only_full_group_by - Ошибка с отсутствующим токеном при голосовании - Ошибка при повторной загрузке страницы после голосования ... Version 2.8.1 - Добавлена возможность назначать анкету на ивент прямо из админки - Исправлено отображение выбранного мероприятия (select сохраняется корректно) - Улучшена визуализация выпадающего списка ивентов - Небольшие правки в стилях для улучшения отображения на мобильных - Подготовка к внедрению новых функций speed dating ... Version 2.8.3 - Добавлена форма создания мероприятий - Возможность удалять эвенты прямо со страницы - Обновлён список событий - Передача токена голосующего при переходе к эвенту - Совместимость с mysqli, улучшена обработка ошибок ... Version 2.8.3 Мэтчи: - Исправлен кривой вывод профилей в блоке матчей (иконка сердечка теперь по центру). - Обновлён стиль: крупные аватарки, адаптивный макет для мобил. Голосование в эвентах: - Увеличен размер фото и текста. - Кнопка Like стала более заметной и адаптированной под палец. Профиль: - Блок “Login via Telegram” стал визуально мягче, без лишнего визуального давления. - Общий визуальный стиль профиля стал более сбалансированным на мобильных устройствах. Админка: - Обновлён цвет ссылок-действий (Delete, Pin, Verify…) для лучшей читаемости. - Добавлены стили .admin-action для единообразного вида всех команд. ... Version 2.8.4 Speed Voting: - Добавлена кнопка участия в голосовании прямо в анкете (edit.php), если пользователь был добавлен в спид-эвент. - Убран длинный текст описания из карточек участников в голосовании для компактности и фокуса на лайке. Улучшения UI: - Обновлён стиль карточек в голосовании: больше акцента на фото и имя, адаптивно для мобильных. - Упрощено взаимодействие с интерфейсом для участников speed dating. Исправления: - Устранена ошибка, при которой добавленные участники не отображались в голосовании. - Повышена стабильность загрузки и отображения фото. ... Version 2.8.5 - Добавлена админ-панель для организаторов мероприятий Теперь для каждого Speed Dating события автоматически создаётся уникальная ссылка для организатора с доступом к списку участников. - Генерация индивидуальных ссылок на голосование У каждого участника можно скопировать персональную ссылку на страницу голосования, если он потерял свою. Ссылка сразу открывает нужный ивент и авторизует участника по токену. - Автоматическая генерация edit_token Если у профиля отсутствует токен редактирования, он автоматически создаётся при открытии панели организатора. Это гарантирует доступность голосования для всех участников. - Оптимизация отображения карточек участников в админке Упрощено и улучшено визуальное представление анкет для удобства организаторов. ... Version 2.8.6 Организаторский контроль и улучшения - Добавлена кнопка “Удалить из эвента” для анкет Speed Dating, без удаления самой анкеты (анкету можно исключить из конкретного мероприятия, не удаляя её с сайта). В админке организатора теперь: - Кнопка “Посмотреть мэтчи” — мгновенный переход. - Генерируется и копируется ссылка для добавления новых участников - Исправлена генерация токенов для анкет. - Все голосовательные ссылки корректно формируются ... Version 2.9 Добавлен Telegram-виджет “Кто сейчас на Самуи?” на главную страницу: - Автоматически отображаются последние 3 сообщения из группы @whosonsamuinow; - Стилизовано под Telegram: имя, сообщение, время — всё прижато к левому краю, время в правом нижнем; - Адаптировано под мобильные экраны, занимает компактное пространство и не перегружает страницу. Улучшено: - Удалена дублирующая кнопка перехода в Telegram (оставлена только одна строка-ссылка сверху блока); - Минифицирован размер блока сообщений; - Повышена визуальная читаемость сообщений и вёрстка приближена к нативному Telegram-стилю; - Отступы, тени и цвета унифицированы для лучшего соответствия фирменному стилю сайта. ... Version 3.0 UI & Design - Новый блок с 5 круглыми аватарками под заголовком “Who is on Samui” - Улучшена визуальная компоновка главной страницы: меньше отступов, оптимизирована вертикаль - Блок фильтров визуально отделён и стал компактнее - Улучшен стиль блока Telegram-сообщений — выравнивание, шрифт, позиционирование времени Логика отображения - Блок New People теперь показывается только при отсутствии фильтров - Блок анонсов и Telegram также скрываются при активных фильтрах - Убран лишний визуальный шум при использовании фильтров: максимум фокус на анкетах Фильтрация и функциональность - Добавлены переменные для правильного отображения “анонсов” и “телеги” только при отсутствии фильтров - В коде исправлены дублирующие объявления переменных - Повышена стабильность обработки фильтрации по интересам, району, полу и “Drinking buddy” Разное - Обновлены SEO-теги и Open Graph-теги - Улучшено fallback-отображение при отсутствии анкет ... Version 3.1 - Над именем “Who is on Samui now?” добавлен горизонтальный блок с 5 случайными анкетами: - Показываются аватарки с жёлтой рамкой. - Над каждой аватаркой теперь отображается имя (с обрезкой, если длинное). - Улучшено отображение фильтров — блок стал визуально ближе к заголовку. - Незначительные улучшения стилей: уменьшены отступы, усилена контрастность и читаемость. - Поддержка отображения имени авторизованного пользователя в голосовании за анкеты Speed Dating. - Кнопка “Обновить” в списке эвентов переименована для ясности. ... Version 4.0 - Новая система рекламы: - Добавлена страница для управления рекламными карточками. - Возможность добавлять, редактировать и удалять объявления. - Поддержка загрузки изображений и автоматического сжатия. - Появление рекламных карточек в общем потоке анкет каждые 10 анкет с учётом пагинации. - Автоматический рандомный порядок показа. - Автоповорот фото при загрузке: - Реализована поддержка EXIF-ориентации для JPEG (автоматический поворот вертикальных фото с iPhone). - Улучшенный внешний вид рекламы: - Новый стиль отображения карточек рекламы: обложка, заголовок, текст, кнопка “Learn more”. - Адаптация под мобильные устройства. - Фиксы и улучшения: - Исправлен баг с некорректным порядком показа рекламы при переходе по страницам. - Обновлена логика вставки рекламы без влияния на фильтрацию анкет. - Повышена стабильность загрузки изображений и работы формы редактирования. ... Version 4.1 — Ads & Insights - Ротация рекламы: Теперь объявления выводятся с учетом приоритета (priority) и случайности. - Счетчик просмотров: Каждое рекламное объявление отслеживает количество показов — можно следить за эффективностью. - Улучшения формы: Текст описания теперь сохраняется корректно без \r\n символов. - Тонкая настройка отображения: Поддержка красивых переносов строк в описаниях (nl2br). - Оптимизация структуры кода и мелкие правки. ... Version 4.2 Новая система модерации объявлений: - Все новые объявления получают статус ⏳ Pending. - После редактирования ранее одобренного объявления оно снова требует модерации. - Админ может вручную одобрить каждое объявление кнопкой ✅ Approve. Интерфейс администратора: - Статус ✅ Approved или ⏳ Pending отображается рядом с каждым объявлением. - Добавлено отображение названия объявления под токеном. - Возможность редактировать приоритет показа (1–10). - Панель генерации токенов для рекламодателей с прямой ссылкой. Обновления в личном кабинете рекламодателя: - Убрана возможность задавать приоритет — теперь только админ. - После добавления или редактирования объявления оно скрыто до модерации. - Интерфейс остался простым и минималистичным. Технические детали: - Добавлено поле approved в таблицу. - Отображение на сайте происходит только для approved = 1. ... Version 5.0 Новое: - Добавлено модальное окно видео с дизайном в стиле Stories: - Компактное окно с прогресс-баром. - Поддержка свайпа для закрытия. - Видео загружается только при открытии — не нагружает страницу. - Включён звук по умолчанию, с возможностью отключения по нажатию. - Кнопка запуска видео размещена в нижнем левом углу — аналогично Radio Samui справа. - Оптимизирована структура DOM и CSS для отображения видео с соотношением 9:16 на всех экранах. Улучшения: - Исправлена ошибка, из-за которой прогресс-бар видео перекрывался браузером на iOS. - Видео полностью выгружается при закрытии, чтобы избежать фоновой загрузки на других страницах. - Удалены дублирующие стили и неиспользуемые элементы. Оптимизация: - Видео теперь не загружается при загрузке страницы, что снижает общий вес и повышает скорость рендеринга. - Повышена стабильность и кроссбраузерная совместимость модального блока. ... Version 5.1 Добавлена нижняя навигационная панель (в стиле LINE) на всех страницах: - Video — модальное окно с видео. - Add — переход к добавлению анкеты. - Radio — ссылка на Radio Samui в новом окне. - Home — возвращение на главную страницу. - Все иконки на панели выровнены по высоте и размещены плотно и аккуратно. - Отдельная стилизация и уменьшение логотипа Radio Samui. - Обновлена иконка “домик” для кнопки Home. - Реализовано единое позиционирование нижней панели и в карточках профилей. - Добавлена адаптивность и улучшена совместимость с iPhone Safari. - Восстановлена стандартная высота нижней полосы для UX-согласованности. ... Version 5.2 - Добавлено поле show_until (до какой даты крутится реклама) с возможностью: - редактирования даты прямо в админке; - автоматического скрытия объявлений по этой дате (в основном интерфейсе); - Расширен админ-интерфейс: - поле даты отображается в каждой карточке; - форма редактирования даты отправляется без перезагрузки всей страницы; - Исправлены баги с обновлением priority, views и show_until: - теперь при сохранении любых параметров сохраняется корректно и без конфликта между полями; - Добавлена форма генерации нового токена рекламодателя; - Поддержка отображения и редактирования show_until также добавлена в adv; - Проведена оптимизация SQL-запросов; - Улучшено оформление административного интерфейса (цвета, границы, компактность). ... Version 5.3 Новое: - Добавлен режим Breakfast events: - Отдельные страницы администрирования, добавления и просмотра анкет. - Возможность создавать и управлять утренними мероприятиями независимо от speed dating. - В анкетах теперь корректно разделяются sd = 1 (Speed Dating) и sd = 0 (Breakfast). - Генерация ссылок на голосование учитывает тип события (/speed/ или /breakfast/). - Визуальное отображение участников стало чище: аватар, имя, ID, кнопка удаления, метки. - Добавлен вывод даты окончания показа рекламы (show_until) в рекламном кабинете. Улучшения: - Повышена стабильность загрузки и обработки изображений (EXIF-автоповорот, ресайз до 600px). - В админке speed/breakfast добавлена авто-генерация edit_token, если он отсутствует. - Инпуты в админке теперь auto-select при клике (для быстрой копии ссылок). Фиксы: - Исправлена ошибка отображения анкет breakfast-ивентов в speed-интерфейсе. - Устранены дублирующие действия при создании ивента. - Удалены лишние ссылки на мэтчи в интерфейсе breakfast. - Исправлена ошибка Undefined array key "sd" при рендере карточек профилей. - Вставка данных в ads теперь корректно учитывает все поля и их порядок. ... Version 5.4 Добавлена страница загрузки видео - Реализовано автоматическое сжатие и конвертация в MP4 - Добавлено превью и модальное воспроизведение в стиле Instagram Stories - Защита паролем для доступа к загрузке ... Version 6.0 Главные изменения: - Личный кабинет пользователя После регистрации участник попадает в персональный кабинет со ссылками на: - свою анкету и возможность редактировать её; - участие в событиях (Speed Dating / Breakfast); - управление рекламой; - доступ в островной чат Telegram. - Поддержка двух типов ивентов: - Speed Dating - Breakfast Meetups - Профили могут быть привязаны к разным типам событий, с автоматической маршрутизацией в нужную систему. Расширенная админка: - Назначение профилей на события и переключение между типами (sd=1/0). - Управление VIP-статусом, Drinking Buddy, закреплением, скрытием, жалобами. - Авторизация по IP и защита от несанкционированного доступа. Система рекламы: - Рекламодатель получает уникальный токен и может добавлять, редактировать и удалять свои объявления. - Объявления проходят модерацию, можно выставлять приоритет, просмотры и срок показа (show_until). - Панель администратора для контроля всех токенов и объявлений. Улучшена регистрация: - После отправки формы — моментальный редирект в кабинет. - Обязательная валидация Instagram, публичного соглашения и корректная ориентация фотографий. Прочее: - Улучшена работа с изображениями (автоповорот, сжатие, удаление при удалении профиля). - Добавлены логирование авторизаций и защита от спама по жалобам. - Визуальные доработки интерфейса. ... Version 6.1 New: - Добавлены бейджи в личном кабинете: - ⭐ Top 10 Most Viewed — для самых просматриваемых анкет - 💎 VIP Member — для VIP-профилей - 🍷 Looking for a Drinking Buddy — для тех, кто ищет компанию - Кнопка «Вернуться в кабинет» теперь доступна на странице управления рекламой Fixes & Improvements: - Улучшена обработка текстов в объявлениях: символ \n теперь корректно преобразуется в переносы строк. - Мелкие визуальные правки и улучшения интерфейса. ... Version 7.0 Island Starter Pack & Visual Upgrade - Добавлен Island Starter Pack – гайд по лучшим местам Самуи: еда, пляжи, клубы, спорт, магазины, спа, дети, госпитали и т. д. - Все локации оформлены в виде карточек с описанием и ссылкой на карту. - Переработана цветовая схема заголовков рубрик – теперь фирменный оранжевый цвет. - Обновлено отображение логотипа и заголовка в личном кабинете: логотип теперь рядом с Hello. - Удалена подпись “by Radio Samui Check-in” для более чистого интерфейса. - Исправлено отображение галочки (verified badge) в личном кабинете. - Мелкие улучшения в верстке, цветах и тенях. ... Version 8.0 — “Завтраки и фотостена” - Добавлены женские завтраки (Breakfast Events) с анкетами, аналогично Speed Dating: — форма добавления анкет, — публичная страница мероприятия, - Добавлена возможность загружать фотографии с завтраков — фото привязываются к мероприятию, — отображаются на event, — возможность загружать без авторизации, — реализовано сжатие и конвертация HEIC в JPEG. - Реализована админка для мероприятий: — управление участниками, — удаление анкет из события, — редактирование анонса следующего события. - Добавлен анонс следующего события с эффектным блоком на event. - Фото с мероприятий теперь можно листать свайпом (мобильная галерея). - Добавлена подсказка для свайпа при наличии более 1 фото. - Обновлены стили: — блок анонса стал компактнее и заметнее, — улучшена вёрстка и читаемость на мобильных. ... Version 8.2 — “Фото, свайпы и вайбы” - Улучшена галерея событий: - Добавлена возможность свайпа фотографий влево и вправо при просмотре. - Реализован просмотр фото в модальном окне с затемнением и адаптивным размером. - Загрузка фото: - Установлено ограничение: до 20 фото на мероприятие. - Фото теперь загружается автоматически сразу после выбора. - Добавлен визуальный счётчик количества загруженных фото. - Анкеты участников: - Карточки участников отображаются в две колонки, компактнее и аккуратнее. - Увеличен размер круглых аватаров — ещё больше стиля и вайба. - Мелкие доработки: - Улучшено сообщение “No profiles found” — теперь по центру и заметно. - Подписи и подписи к галерее обновлены, чтобы дать подсказку: “Tap a photo to view full size — then swipe left or right.” ... Version 8.2 Новая функция: добавлен переключатель видимости анкеты в личном кабинете (🙈 / ✅). - Улучшено: скрытые анкеты теперь отображаются на страницах мероприятий (breakfast), даже если они скрыты из общей ленты. - UI-обновление: кнопка переключения видимости стилизована в едином дизайне с остальными элементами. - Мелкие исправления: улучшена верстка и визуальные акценты в личном кабинете. ... Version 8.3 - В личном кабинете теперь можно выбрать следующее мероприятие (завтрак) для участия. - Пользователь может сам выбрать из будущих событий (по дате) и присоединиться. - После выбора анкета привязывается к выбранному событию. - При отображении списка событий в кабинете: - Показаны названия и даты событий - События сортируются по дате, начиная с ближайших - В интерфейсе создания событий добавлено поле дата мероприятия, которое сохраняется в базу. - На странице списка событий реализовано редактирование названия и удаление. - Обновлены проверки и fallback’и в event: при удалённом событии теперь выводится понятная ошибка, а не PHP-ошибки. ... Version 8.4 - Улучшено поведение при удалении события: теперь при попытке зайти на страницу несуществующего мероприятия отображается стильная страница с логотипом, сообщением и автоматическим редиректом. - Та же логика реализована в админке мероприятия — больше никаких “Invalid link”, только красивое и понятное сообщение. - Добавлена иконка Dating (logom.jpg) в интерфейс ошибок. - Обновлены стили и выравнивание для страницы отсутствующего события. - Проведена чистка и оптимизация кода страниц event и admin. ... Version 8.5 - Добавлено запоминание входа в личный кабинет: теперь после авторизации по токену, он сохраняется в куки, и пользователь может вернуться без повторного ввода ссылки. - В раздел More добавлена новая ссылка: Request a Song — теперь можно заказать любимую песню на Radio Samui прямо из личного кабинета. - Незначительные правки и улучшения интерфейса. ... Version 8.6 - Добавлена автоматическая установка токена (edit_token) в куки при входе в кабинет - Главная страница теперь показывает приветствие и кнопку “My Profile” вместо “Add Profile”, если токен найден в куки - Кнопка “My Cabinet” переименована в более атмосферную “🌴 My Profile 🌴” - Улучшена совместимость логики токена между index и cabinet - Добавлен автоматический выход из кабинета через ?logout=1 с очисткой куки ... Version 8.7 - Новая кнопка “Bump Profile” в личном кабинете — теперь участники могут поднять свою анкету наверх ленты раз в 24 часа прямо из кабинета. - Обработка Bump через токен — если пользователь заходит по токену (а не через Telegram), функция bump работает без сессии Telegram. - Улучшен UX после нажатия на Bump — выводится сообщение: успешно или рано. - Исправлено: кнопка “🙈 Hidden from List / ✅ Visible in List” вернулась в кабинет. - Технически: добавлена поддержка редиректа с &from=cabinet для точного возврата и сохранения UX. ... Version 9.0 – Inbox & Messaging Overhaul - Новая система личных сообщений: - Пользователь теперь может просматривать входящие сообщения в виде списка отправителей. - Клик по имени раскрывает сообщение, дату, аватар и форму ответа. - Возможность ответить напрямую из личного кабинета. - Возможность удалить сообщение (доступна только получателю). - UI/UX-обновления: - Минималистичный список сообщений с компактным отображением. - Плавное раскрытие по клику: avatar + текст + кнопки. - Фирменный стиль: жёлтые рамки, круглые аватарки, кнопки в стиле Radio Samui. - Безопасность и защита: - Все действия проверяются через edit_token. - Удаление доступно только получателю. - Очистка и экранирование данных при выводе. - Подготовка к следующим шагам: - Система реакции на сообщения (в разработке). - Возможность просмотра всей переписки с одним пользователем (в планах). ... Version 9.1 - Новый формат Inbox: - Теперь переписки отображаются в виде диалогов — каждый с отдельным пользователем. Сообщения сгруппированы по собеседнику, как в мессенджерах. - Удаление диалогов: - Можно удалить всю переписку с конкретным пользователем, нажав × в верхнем углу блока чата. - Форма ответа прямо в диалоге: - Теперь вы можете отвечать сразу в блоке, не переходя на отдельную страницу. - Автообновление токена: - Если токен передан через ссылку, он автоматически сохраняется в cookie на 30 дней. - Фиксы отображения сообщений: - Устранена ошибка, из-за которой собственные сообщения не отображались в ленте сообщений. - Улучшена адаптивность блоков сообщений: - Больше не вылезают за пределы экрана, даже при длинных сообщениях. ... Version 9.2 - Inbox улучшен: - Исправлена проблема с обрезанным текстовым полем ответа. - Кнопка “✖” для удаления диалога теперь корректно отображается и работает. - Упрощён JavaScript для открытия и закрытия сообщений. - UI/UX доработки: - Повышена читаемость в темной теме (цвета, отступы). - Улучшено отображение на iOS Safari и маленьких экранах. - Стабильность и защита: - Обновлён механизм обработки токена. - Повышена безопасность cookies (HttpOnly, SameSite). ... Version 9.3 - Добавлена доска сообщений на странице мероприятия — участники могут оставить короткое сообщение, вопрос или предложение. - Сообщения сохраняются в базу и отображаются публично под анкетами мероприятия. - Поддержка имени, текста, времени публикации. - Простая форма отправки без авторизации. - Уведомление об ошибках и автоматическое обновление страницы после отправки. - Поддержка ограниченного количества сообщений (в будущем — удаление, модерация). - Устранено предупреждение об ошибке headers already sent. - Улучшены визуальные стили и выравнивание чекбоксов для админки мероприятий. ... Version 9.4 — “Спикеры и доска сообщений” - Добавлена возможность выбрать спикера мероприятия в админке Breakfast-ивентов. - На странице события спикер отображается отдельно, с аватаркой и подписью. - Анкета спикера исключается из общего списка участников, чтобы избежать дублирования. - Реализована общая доска сообщений для каждого мероприятия: - Любой участник может оставить заметку, вопрос или предложение. - Сообщения отображаются публично внизу страницы ивента. - Доступна форма отправки без авторизации. - Устранена ошибка headers already sent при добавлении сообщений. - Улучшено отображение страницы event — выравнивание сетки, анимация модальных окон. ... Version 9.5 Добавлена логика “умной регистрации”: - Если у пользователя есть кука с edit_token, отображается кнопка “Присоединиться к мероприятию” — анкета автоматически добавляется к текущему ивенту. - Если куки нет — отображается кнопка “Зарегистрироваться”, ведущая на форму. - Улучшена обработка ошибок и оптимизация запросов на странице ивента. ... Version 10.0 — “Event Counter & Upload Control” - Подсчёт уникальных посещений мероприятий (Breakfast) для каждой анкеты - Отображение: “🌴 Been to 6 events” на странице профиля и в личном кабинете - Новая таблица event_participants для хранения истории участий - Автоматическое добавление в счётчик при регистрации или присоединении к событию - Мелкие багфиксы и улучшения интерфейса ... Version 10.1 - Блок сообщений (Inbox) теперь всегда отображается в личном кабинете — даже если пользователь отключил приём сообщений. - Добавлен переключатель в правом верхнем углу блока Inbox: можно в любой момент включить или выключить приём входящих. - Улучшено UX взаимодействие с диалогами: быстрее, удобнее, стабильнее. - Оптимизация загрузки кабинета: быстрее открытие, меньше запросов. ... Version 10.2 – “Create Your Own” - Добавлена возможность самостоятельного создания мероприятий через личный кабинет (если включено администратором). - Упрощена форма создания: только название и дата, без лишних опций. - Заголовок блока сменён на “Create Your Event” для универсальности. - Улучшено отображение полей на мобильных устройствах — больше никаких вылетов за границы. - Подготовлена инфраструктура для масштабируемого управления мероприятиями от пользователей. ... Version 10.3 — “Создатели рулят” - Создание мероприятий из личного кабинета: пользователи с правами can_create_event теперь могут создавать ивенты прямо из ЛК. - Автосвязь с анкетой: при создании мероприятия сохраняется creator_id, что позволяет связать ивент с его организатором. ...