# Changelog for ng-helpers

## [0.2.2] - 2026-01-29

### Added

- **csrf_field()** - генерация скрытого поля с CSRF токеном для защиты форм
- **csrf_token()** - получение CSRF токена из сессии
- **validate_csrf()** - проверка CSRF токена из POST запроса с использованием hash_equals
- **logger()** - запись сообщений в лог-файлы с уровнями важности (info, warning, error, debug)
  - Автоматическое создание директории engine/logs
  - Формат: [дата время] [уровень] сообщение
- **is_post()** - проверка метода запроса POST
- **is_get()** - проверка метода запроса GET
- **is_ajax()** - определение AJAX запросов через заголовок X-Requested-With
- **validate_phone()** - валидация номеров телефонов (10-15 цифр)

### Compatibility

- Добавлена полная поддержка для плагина feedback с модернизацией по CHANGELOG_NGHELPERS.md
- Все функции используют пространство имён Plugins\ для избежания конфликтов

### Security

- 🔒 CSRF защита - предотвращение подделки межсайтовых запросов
- 📝 Логирование попыток взлома и подозрительной активности
- 🛡️ Безопасное сравнение токенов через hash_equals

---

## [0.2.1] - 2026-01-16

### Added

- **formatMoney()** - функция для форматирования денежных сумм
  - Поддержка настраиваемых разделителей целой и дробной части
  - Поддержка настраиваемого разделителя тысяч
  - По умолчанию: 2 знака после запятой, пробел между тысячами
  - Примеры: `formatMoney(1234.56)` => `"1 234.56"`

### Fixed

- Интеграция с плагином basket - устранена ошибка `Call to undefined function formatMoney()`

### Documentation

- Добавлена документация по функции formatMoney() в README.md
- Обновлен список доступных функций

---

## [0.2.0] - 2026-01-11

### Added

- 60+ новых вспомогательных функций для разработки плагинов
- Валидация данных (email, URL, телефон, даты)
- Расширенная работа с массивами (pluck, flatten, only, except)
- Преобразования строк (camelCase, snake_case, before/after)
- Работа с датами ("5 минут назад", форматирование)
- HTTP хелперы (AJAX, mobile detection)
- Debug инструменты (dump, logger, benchmark)
- Безопасность (хеширование, шифрование)
- HTML хелперы (link_to, image_tag, mailto)
- Работа с числами (проценты, локализация, ограничения)
