# README для плагина "Погодный информер" для NGCMS

## Описание плагина
Плагин отображает текущую погоду для выбранного города, используя данные API OpenWeatherMap. Реализован как TWIG-виджет, что позволяет гибко встраивать его в любые шаблоны сайта.

## Установка
1. Скопируйте папку `weather` в директорию `/engine/plugins/`
2. Зайдите в панель администратора NGCMS
3. Перейдите в раздел "Плагины"
4. Найдите плагин "Погодный информер" и нажмите "Установить"
5. После установки перейдите в настройки плагина

## Настройка
1. **API ключ OpenWeatherMap** - необходимо получить на сайте [openweathermap.org](https://openweathermap.org/)
2. **Время кеширования** (по умолчанию 3600 секунд - 1 час) - определяет как часто обновляются данные о погоде
3. Сохраните настройки

## Использование

### Базовый вызов
Для вывода погоды добавьте в TWIG-шаблон:
```twig
{{ callPlugin("weather.show", {city: "Moscow", units: "metric"}) }}
```

### Параметры вызова:
- `city` - город для отображения погоды (по умолчанию "Moscow")
- `units` - единицы измерения:
  - `metric` - градусы Цельсия (по умолчанию)
  - `imperial` - градусы Фаренгейта
- `template` - имя шаблона (по умолчанию "weather")

### Примеры использования:
1. Погода в Москве в Цельсиях:
```twig
{{ callPlugin("weather.show", {city: "Moscow"}) }}
```

2. Погода в Лондоне в Фаренгейтах:
```twig
{{ callPlugin("weather.show", {city: "London", units: "imperial"}) }}
```

3. Использование альтернативного шаблона:
```twig
{{ callPlugin("weather.show", {template: "weather_compact"}) }}
```

## Создание собственных шаблонов
1. Создайте файл с расширением `.tpl` в папке плагина `tpl/`
2. В шаблоне доступны следующие переменные:
   - `weather.city` - название города
   - `weather.temp` - температура
   - `weather.units` - единицы измерения (°C или °F)
   - `weather.icon` - URL иконки погоды
   - `weather.description` - текстовое описание погоды
   - `weather.humidity` - влажность в процентах
   - `weather.wind` - скорость ветра в м/с
   - `tpl_url` - URL текущего шаблона сайта

3. Пример простого шаблона (`weather_compact.tpl`):
```html
<div class="weather-compact">
    <img src="{{ weather.icon }}" alt="{{ weather.description }}">
    <span>{{ weather.temp }}{{ weather.units }}</span>
</div>
```

## Обновление данных
Плагин автоматически обновляет данные о погоде согласно настроенному времени кеширования. Для принудительного обновления:
1. Очистите кеш в админ-панели NGCMS
2. Или временно установите время кеширования = 0 в настройках плагина

## Требования
1. NGCMS версии с поддержкой TWIG
2. PHP с поддержкой file_get_contents для внешних URL
3. Доступ к API openweathermap.org

## Лицензия
Плагин распространяется по лицензии MIT. Использование API OpenWeatherMap регулируется их условиями обслуживания.

## Поддержка
При возникновении проблем создавайте issue в репозитории плагина или обращайтесь на форум поддержки NGCMS.