init
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
<li
|
||||
id="{{ contact.id|slugify|cleanupId }}-chat-item"
|
||||
data-jid="{{ contact.id }}"
|
||||
class="{% if contact.in_roster %}roster{% if not contact.presence %} faded{% endif %}{% endif %}"
|
||||
title="{{ contact.id }}{% if message %} • {{ message.date_full }}{% endif %}">
|
||||
|
||||
<span class="primary icon bubble {% if contact.presence %}status {{ contact.presence }}{% endif %} {% if composing %}composing{% endif %}"
|
||||
{% if count > 0 %}data-counter="{{ count }}"{% endif %}>
|
||||
<a href="#" onclick="listIconClick(event);" title="{{ contact.truename }}">
|
||||
<img alt="" src="{{ contact.picture }}">
|
||||
</a>
|
||||
</span>
|
||||
|
||||
<div>
|
||||
<p class="line">
|
||||
{% if message %}
|
||||
<span class="info">
|
||||
{{ message.date }}
|
||||
</span>
|
||||
<span class="info" title="{{ message.date_full }}">
|
||||
{% if message.mine %}
|
||||
{% if message.displayed %}
|
||||
<span class="material-symbols">done_all</span>
|
||||
{% elif message.delivered %}
|
||||
<span class="material-symbols">check</span>
|
||||
{% endif %}
|
||||
|
||||
{% endif %}
|
||||
</span>
|
||||
{% endif %}
|
||||
{% if resource %}
|
||||
{{ resource }}
|
||||
<span class="second" title="{{ bare }}">
|
||||
{{ bare }}
|
||||
</span>
|
||||
{% else %}
|
||||
{{ contact.truename }}
|
||||
{% endif %}
|
||||
</p>
|
||||
{% if message %}
|
||||
<p class="line">
|
||||
{% if in_call %}
|
||||
<i class="material-symbols icon green blink">phone_in_talk</i>
|
||||
{{ __('visio.in_call') }} •
|
||||
{% endif %}
|
||||
{% if message.encrypted %}
|
||||
<i class="material-symbols fill">lock</i> {% if message.retracted %}{{ __('message.retracted') }}{% else %}{{ __('message.encrypted') }}{% endif %}
|
||||
{% elif message.retracted %}
|
||||
<i class="material-symbols">delete</i> {{ __('message.retracted') }}
|
||||
{% elif message.type == 'invitation' %}
|
||||
<i class="material-symbols icon gray">outgoing_mail</i> {{ __('message.invitation') }}
|
||||
{% elif message.type == 'jingle_incoming' %}
|
||||
<i class="material-symbols icon green">call</i> {{ __('chat.jingle_incoming') }}
|
||||
{% elif message.type == 'jingle_retract' %}
|
||||
<i class="material-symbols icon gray">phone_missed</i> {{ __('chat.jingle_retract') }}
|
||||
{% elif message.type == 'jingle_reject' %}
|
||||
<i class="material-symbols icon orange">phone_missed</i> {{ __('chat.jingle_reject') }}
|
||||
{% elif message.type == 'jingle_finish' %}
|
||||
<i class="material-symbols icon red">phone_disabled</i> {{ __('chat.jingle_end') }}
|
||||
{% elif message.type == 'jingle_outgoing' %}
|
||||
<i class="material-symbols icon blue">call</i> {{ __('chat.jingle_outgoing') }}
|
||||
{% elif message.type == 'jingle_end' %}
|
||||
<i class="material-symbols icon red">call_end</i> {{ __('chat.jingle_end') }}
|
||||
{% elif message.file %}
|
||||
{% if message.mine %}
|
||||
<span class="moderator">{{ __('chats.me') }}:</span>
|
||||
{% endif %}
|
||||
{% if message.file.isPicture %}
|
||||
{% if message.file.thumbnail_type == 'image/thumbhash' and message.file.thumbnail_url %}
|
||||
<img class="tinythumb" data-thumbhash="{{ message.file.thumbnail_url }}">
|
||||
{% else %}
|
||||
<i class="material-symbols">image</i>
|
||||
{% endif %}
|
||||
{{ __('chats.picture') }}
|
||||
{% elif message.file.isAudio %}
|
||||
<i class="material-symbols">equalizer</i> {{ __('chats.audio') }}
|
||||
{% elif message.file.isVideo %}
|
||||
<i class="material-symbols">local_movies</i> {{ __('chats.video') }}
|
||||
{% else %}
|
||||
<i class="material-symbols">insert_drive_file</i> {{ __('avatar.file') }}
|
||||
{% endif %}
|
||||
{% elif message.body %}
|
||||
{% if message.mine %}
|
||||
<span class="moderator">{{ __('chats.me') }}:</span>
|
||||
{% endif %}
|
||||
{{ message.body_html|safe }}
|
||||
{% endif %}
|
||||
</p>
|
||||
{% elif contact.status %}
|
||||
<p class="line">{{ contact.status }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
</li>
|
||||
@@ -0,0 +1,19 @@
|
||||
<ul id="chats_widget_header" class="list" data-filter="{{ filter }}">
|
||||
<li class="subheader">
|
||||
<div>
|
||||
<p>
|
||||
{{ __('page.chats') }}
|
||||
</p>
|
||||
</div>
|
||||
{% for value in filters %}
|
||||
<span class="chip active" data-filter="{{ value }}" onclick="Chats.setFilter(this.dataset.filter)">{{ __('chats_filter.' ~ value) }}</span>
|
||||
{% endfor %}
|
||||
</li>
|
||||
</ul>
|
||||
<ul id="chats" class="list middle active divided spaced"></ul>
|
||||
|
||||
<div class="placeholder">
|
||||
<i class="material-symbols fill">chat_dashed</i>
|
||||
<h1>{{ __('chats.empty_title') }}</h1>
|
||||
<h4>{{ addplaceholder|safe }}</h4>
|
||||
</div>
|
||||
Reference in New Issue
Block a user