# ✅ jChat - Добавлены аватарки пользователей

## 🎨 Что было сделано:

### 1. Модифицирован PHP код (jchat.php)

- ✅ Добавлена загрузка аватарок из БД для зарегистрированных пользователей
- ✅ Поддержка стандартного аватара `noavatar.gif` для гостей
- ✅ Использование встроенной системы аватарок NGCMS

### 2. Обновлен JavaScript (jchat.script.header.js)

- ✅ Аватарка отображается слева от сообщения
- ✅ Круглая форма аватара (border-radius: 50%)
- ✅ Размер 32x32 пикселя
- ✅ Рамка вокруг аватара

### 3. Улучшены стили (jchat.tpl, jchat.main.tpl)

- ✅ Добавлен padding для ячеек (8-10px)
- ✅ Цвет имени пользователя (#2c3e50)
- ✅ Вертикальное выравнивание изображений
- ✅ Улучшенная читаемость сообщений

---

## 🖼️ Как выглядит теперь:

```
┌──────────────────────────────────────┐
│ [👤]  Иван Петров       14:30       │
│       Привет всем!                  │
├──────────────────────────────────────┤
│ [👤]  Гость123          14:31       │
│       Здравствуйте, можно вопрос?   │
└──────────────────────────────────────┘
```

**Где:**

- `[👤]` - круглый аватар пользователя 32x32px
- Имя пользователя жирным шрифтом
- Время справа
- Сообщение с отступом

---

## 📋 Технические детали:

### Откуда берутся аватарки:

1. **Зарегистрированные пользователи:**

   - Из таблицы `_users` поле `avatar`
   - Путь: `avatars_url/имя_файла.jpg`

2. **Гости:**

   - Стандартный аватар: `avatars_url/noavatar.gif`

3. **Fallback:**
   - Если у пользователя нет аватара → `noavatar.gif`

### Где хранятся аватарки:

По умолчанию: `/uploads/avatars/`
Настройка в админке: **Настройки → Пользователи → Аватары**

---

## 🎨 Настройка внешнего вида:

### Изменить размер аватара:

Откройте `jchat.script.header.js`, строка ~152:

```javascript
'<img src="' +
  rec["avatar"] +
  '" width="32" height="32" style="border-radius: 50%; border: 1px solid #ddd;"/>';
```

Измените `width` и `height` на нужный размер (например, 40x40 или 48x48).

### Сделать квадратные аватарки:

Уберите `border-radius: 50%;`:

```javascript
style = "border: 1px solid #ddd;";
```

### Изменить рамку:

```javascript
border: 2px solid #3498db;  // Синяя рамка 2px
border: none;               // Без рамки
```

### Изменить цвет имени:

Откройте `jchat.tpl` или `jchat.main.tpl`, найдите:

```css
.jchat_userName {
  font-weight: bold;
  cursor: pointer;
  color: #2c3e50; /* Измените этот цвет */
}
```

---

## 🔄 Совместимость:

- ✅ NGCMS версии с поддержкой аватарок
- ✅ Работает с плагином `uprofile`
- ✅ Работает с jchat_tgnotify (Telegram уведомления)
- ✅ Обратная совместимость с существующими сообщениями

---

## 🛠️ Если аватарки не отображаются:

### 1. Проверьте настройки NGCMS:

Админка → **Настройки → Пользователи**:

- ✅ "Использовать аватары" = Да
- ✅ "Папка аватаров (URL)" = `/uploads/avatars`
- ✅ "Папка аватаров (путь)" = `/полный/путь/uploads/avatars/`

### 2. Проверьте наличие noavatar.gif:

```bash
ls /uploads/avatars/noavatar.gif
```

Если нет - создайте или скопируйте стандартный.

### 3. Права доступа:

```bash
chmod 755 /uploads/avatars/
```

---

## 📊 Производительность:

**Дополнительные запросы:** 1 SQL запрос на сообщение (для получения avatar)

**Оптимизация (опционально):**
Можно оптимизировать, загружая все аватарки одним запросом с JOIN:

```php
$query = "select j.id, j.postdate, j.author, j.author_id, j.text, u.avatar
          from " . prefix . "_jchat j
          LEFT JOIN " . prefix . "_users u ON j.author_id = u.id
          where j.id > " . intval($maxLoadedID) . "
          order by j.id desc limit " . $limit;
```

---

## 🎉 Готово!

Теперь в jChat отображаются аватарки пользователей, что делает чат более живым и понятным!

**Обновите страницу и проверьте работу чата.** 🚀
