misuzu/views/mio/user/view.twig

150 lines
6.6 KiB
Twig

{% extends '@mio/user/master.twig' %}
{% from '@mio/macros.twig' import navigation, link %}
{% set image = '/profile.php?u=' ~ profile.user_id ~ '&m=avatar' %}
{% set canonical_url = '/profile.php?u=' ~ profile.user_id %}
{% set title = 'Profile of ' ~ profile.username %}
{% set manage_link = '/manage/users.php?v=view&u=' ~ profile.user_id %}
{% set youtube_is_channel_id = profile.user_youtube|slice(0, 2) == 'UC' and profile.user_youtube|length == 24 %}
{% set profile_fields = {
"twitter": {
"title": "Twitter",
"value": profile.user_twitter,
"link": "https://twitter.com/%s",
"format": "@%s",
},
"osu": {
"title": "osu!",
"value": profile.user_osu,
"link": "https://osu.ppy.sh/users/%s",
},
"website": {
"title": "Website",
"value": profile.user_website,
"link": "%s",
},
"youtube": {
"title": "Youtube",
"value": profile.user_youtube,
"link": "https://youtube.com/" ~ (youtube_is_channel_id ? "channel/" : '') ~ "%s",
"format": youtube_is_channel_id ? "Channel" : "%s",
},
"steam": {
"title": "Steam",
"value": profile.user_steam,
"link": "https://steamcommunity.com/id/%s",
},
"twitchtv": {
"title": "Twitch.tv",
"value": profile.user_twitchtv,
"link": "https://twitch.tv/%s",
},
"lastfm": {
"title": "Last.fm",
"value": profile.user_lastfm,
"link": "http://last.fm/user/%s",
},
"github": {
"title": "Github",
"value": profile.user_github,
"link": "https://github.com/%s",
},
"skype": {
"title": "Skype",
"value": profile.user_skype,
"link": "skype:%s?userinfo",
},
"discord": {
"title": "Discord",
"value": profile.user_discord,
},
} %}
{% block content %}
{{ navigation(mio_navigation, false, true) }}
<div class="profile">
<div class="container profile__header">
<div class="container__title">Profile of {{ profile.username }}</div>
<div class="container__content profile__header__content">
<div class="profile__info">
<div class="profile__info__section">
<div class="profile__info__block">
{% if profile.userTitle is not empty %}
<div class="profile__info__row">
<div class="profile__info__column profile__info__column--user-title"{% if not profile.displayColour.inherit %} style="color:{{ profile.displayColour }}"{% endif %}>
{{ profile.userTitle }}
</div>
</div>
{% endif %}
<div class="profile__info__row">
<div class="profile__info__column profile__info__column--icons">
<img class="profile__icon" src="https://static.flash.moe/flags/fff/{{ profile.user_country|lower }}.png" alt="{{ profile.user_country }}">
</div>
<div class="profile__info__column profile__info__column--country">
{{ profile.user_country|country_name }}
</div>
</div>
</div>
<div class="profile__info__block">
<div class="profile__info__row" title="{{ profile.created_at.format('r') }}">
<div class="profile__info__column profile__info__column--heading">
Joined
</div>
<div class="profile__info__column">
{{ profile.created_at.diffForHumans }}
</div>
</div>
{% if profile.last_seen.timestamp > 0 %}
<div class="profile__info__row" title="{{ profile.last_seen.format('r') }}">
<div class="profile__info__column profile__info__column--heading">
Last Seen
</div>
<div class="profile__info__column">
{% if profile.last_seen.addMinute.timestamp >= ''|date('U') %}
Online now
{% else %}
{{ profile.last_seen.diffForHumans }}
{% endif %}
</div>
</div>
{% endif %}
</div>
</div>
{% if app.session != null %}
{% spaceless %}
<div class="profile__info__section">
<div class="profile__info__block profile__info__block--links">
{% for name, data in profile_fields %}
{% if (data.display is defined ? data.display : true) and data.value|length > 0 %}
<div class="profile__info__row profile__info__row--field-{{ name }}">
<div class="profile__info__column profile__info__column--heading">
{{ data.title }}
</div>
<div class="profile__info__column">
{% set profile_field_value = (data.format is defined ? data.format : '%s')|format(data.value) %}
{% if data.link is defined %}
{{ link(data.link|format(data.value), profile_field_value, 'profile__account-link') }}
{% else %}
{{ profile_field_value }}
{% endif %}
</div>
</div>
{% endif %}
{% endfor %}
</div>
</div>
{% endspaceless %}
{% endif %}
</div>
<div class="avatar profile__avatar" style="background-image:url('{{ image }}')"></div>
</div>
</div>
</div>
{% endblock %}