templates/components/chat.html.twig line 1

Open in your IDE?
  1. <div class="chat-box chat-open">
  2.     <div class="chat-header">
  3.         <div class="chat-header-left">
  4.             <span>
  5.                 <svg width="20.000000" height="20.000000" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
  6.                     <defs>
  7.                         <pattern id="pattern_93_88670" patternContentUnits="objectBoundingBox" width="1.000000" height="1.000000">
  8.                             <use xlink:href="#image93_8867_0" transform="matrix(0.001953,0,0,0.001953,0,0)"></use>
  9.                         </pattern>
  10.                         <image id="image93_8867_0" width="512.000000" height="512.000000" xlink:href="data:image/png;base64,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"></image>
  11.                     </defs>
  12.                     <mask id="mask93_8867" mask-type="alpha" maskUnits="userSpaceOnUse" x="1.429413" y="1.428572" width="17.142853" height="17.142855">
  13.                         <rect id="image 21" x="1.429413" y="1.428572" width="17.142857" height="17.142857" fill="url(#pattern_93_88670)" fill-opacity="1.000000"></rect>
  14.                     </mask>
  15.                     <g mask="url(#mask93_8867)">
  16.                         <rect id="image 22" x="1.429413" y="1.428572" width="17.142857" height="17.142857" fill="#383E4F" fill-opacity="1.000000"></rect>
  17.                     </g>
  18.                 </svg>
  19.             </span>
  20.             <p>Чат</p>
  21.         </div>
  22.         <div class="chat-header-right">
  23.             <div class="online-count">
  24.                 <span class="online-outer">
  25.                     <span class="online-inner"> </span>
  26.                 </span>
  27.                 <p class="online">0</p>
  28.             </div>
  29.             <button class="chat-header-btn alert-btn">
  30.                 <svg class="icon">
  31.                     <use href="./assets/icons/icons.svg#alert-icon"></use>
  32.                 </svg>
  33.             </button>
  34.         </div>
  35.     </div>
  36.     <div class="chat-wrapper">
  37.         {% if user is defined and user is not null and user.admin in [1, 2] %}
  38.         <button style="margin-top:-15px;color: #39bf4c;font-size: 18px;font-weight: 500;line-height: 145.2%;width: 152px;height: 100%;border-radius: 8px;background: #183a28;display: flex;align-items: center;justify-content: center;gap: 8px;cursor: pointer;transition: all 0.3s ease-in-out;" id="clearChatBtn" title="Очистить чат">
  39.             Очистить чат
  40.         </button> <br>
  41.         {% endif %}
  42.         <div class="promo-timer">
  43.             <p>Новый <br /> промокод</p>
  44.             <div>
  45.                 <span class="time" id="promo-hours">00</span><span class="timer-separator">:</span>
  46.                 <span class="time" id="promo-minutes">00</span><span class="timer-separator">:</span>
  47.                 <span class="time" id="promo-seconds">00</span>
  48.             </div>
  49.         </div>
  50.         <div class="chat-body">
  51.             {% for m in chat_history %}
  52.             <div class="chat-item" data-id="{{ m.message_id|default('') }}">
  53.                 <img class="chat-profile-avatar"
  54.                      src="{{ m.avatar }}" height="44px" width="44px"
  55.                      alt="profile">
  56.                 <div class="message-body">
  57.                     <div class="message-header">
  58.                         <p class="chat-username
  59.                                   {{ m.role == 'admin'      ? 'role1' :
  60.                                   m.role == 'moderator'  ? 'role2' :
  61.                                   m.role == 'yt'         ? 'role3' :
  62.                                   m.role == 'system'     ? 'role4' :
  63.                                   'simple-user' }}">
  64.                             {{ m.username }}
  65.                             {% if m.role == 'admin' %}
  66.                             <img src="/assets/icons/star-icon.svg" alt="">
  67.                             {% elseif m.role == 'moderator' %}
  68.                             <img src="/assets/icons/lightning-icon.svg" alt="">
  69.                             {% endif %}
  70.                         </p>
  71.                         <span class="message-time">{{ m.time }}</span>
  72.                         {% if user is defined and user is not null and user.admin in [1, 2] %}
  73.                         <span class="chat-controls">
  74.                             <button class="chat-delete-btn" data-id="{{ m.message_id|default('') }}" title="Удалить">✖</button>
  75.                             <button class="chat-ban-btn" data-user="{{ m.user_id }}" title="Забанить">🚫</button>
  76.                         </span>
  77.                         {% endif %}
  78.                     </div>
  79.                     <div class="message-value">{{ m.text|raw }}</div>
  80.                 </div>
  81.             </div>
  82.             {% else %}
  83.             <p class="text-center text-gray-400 py-4">Сообщений пока нет.</p>
  84.             {% endfor %}
  85.         </div>
  86.         <div class="chat-input">
  87.             <input placeholder="Сообщение..." type="text" />
  88.             <button>
  89.                 <svg class="icon">
  90.                     <use href="./assets/icons/icons.svg#tg-icon"></use>
  91.                 </svg>
  92.             </button>
  93.         </div>
  94.     </div>
  95. </div>