Restyled the accounts section accordingly with the new profile.
This commit is contained in:
parent
4648520533
commit
af222dfbd8
8 changed files with 179 additions and 211 deletions
|
@ -1,117 +0,0 @@
|
||||||
.profile {
|
|
||||||
&__avatar {
|
|
||||||
width: 200px;
|
|
||||||
height: 200px;
|
|
||||||
|
|
||||||
@media (max-width: @site-mobile-width) {
|
|
||||||
width: 100px;
|
|
||||||
height: 100px;
|
|
||||||
margin: 20px 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__account-link {
|
|
||||||
color: inherit;
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__icon {
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
&__info {
|
|
||||||
display: flex;
|
|
||||||
|
|
||||||
@media (max-width: @site-mobile-width) {
|
|
||||||
flex-direction: column;
|
|
||||||
background-color: var(--accent-colour);
|
|
||||||
width: 100%;
|
|
||||||
padding-top: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&__section {
|
|
||||||
margin-right: 2px;
|
|
||||||
|
|
||||||
@media (max-width: @site-mobile-width) {
|
|
||||||
margin: 0 1px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__block {
|
|
||||||
border: 1px solid var(--accent-colour);
|
|
||||||
padding: 2px 4px;
|
|
||||||
margin-bottom: 2px;
|
|
||||||
background-color: rgba(251, 238, 255, .9);
|
|
||||||
|
|
||||||
@media (max-width: @site-mobile-width) {
|
|
||||||
background-color: var(--background-colour);
|
|
||||||
}
|
|
||||||
|
|
||||||
&--links:empty {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__row {
|
|
||||||
display: flex;
|
|
||||||
|
|
||||||
&--link {
|
|
||||||
text-decoration: none;
|
|
||||||
color: inherit;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__column {
|
|
||||||
min-width: 80px;
|
|
||||||
max-width: 200px;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
|
|
||||||
@media (max-width: @site-mobile-width) {
|
|
||||||
min-width: auto;
|
|
||||||
flex-grow: 1;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
&--heading {
|
|
||||||
font-weight: bold;
|
|
||||||
|
|
||||||
@media (max-width: @site-mobile-width) {
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&--numeric {
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
&--user-title {
|
|
||||||
text-align: center;
|
|
||||||
width: 100%;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
|
|
||||||
&--icons {
|
|
||||||
text-align: center;
|
|
||||||
min-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
&--country {
|
|
||||||
font-size: .8em;
|
|
||||||
line-height: 1.4em;
|
|
||||||
width: 110px;
|
|
||||||
text-align: center;
|
|
||||||
align-self: flex-end;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
45
assets/less/mio/classes/profile/accounts.less
Normal file
45
assets/less/mio/classes/profile/accounts.less
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
.profile__accounts {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
padding: 2px 5px;
|
||||||
|
color: #fff;
|
||||||
|
text-shadow: 0 1px 4px #111;
|
||||||
|
box-shadow: 0 1px 4px #111;
|
||||||
|
background-color: #111;
|
||||||
|
|
||||||
|
&__item {
|
||||||
|
padding-bottom: 5px;
|
||||||
|
|
||||||
|
&:not(:last-child) {
|
||||||
|
border-bottom: 1px solid #222;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__notice {
|
||||||
|
font-size: 1.2em;
|
||||||
|
line-height: 1.5em;
|
||||||
|
text-align: center;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__title {
|
||||||
|
font-size: .9em;
|
||||||
|
line-height: 1.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__value {
|
||||||
|
font-size: 1.2em;
|
||||||
|
line-height: 1.2em;
|
||||||
|
color: inherit;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__link {
|
||||||
|
color: inherit;
|
||||||
|
text-decoration: underline dotted;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
28
assets/less/mio/classes/profile/container.less
Normal file
28
assets/less/mio/classes/profile/container.less
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
.profile__container {
|
||||||
|
display: flex;
|
||||||
|
|
||||||
|
&__main {
|
||||||
|
flex: 1 1 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__side {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
width: 100%;
|
||||||
|
max-width: 300px;
|
||||||
|
margin-right: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__placeholder {
|
||||||
|
background-image: repeating-linear-gradient(-45deg, yellow, yellow 10px, black 10px, black 20px);
|
||||||
|
box-shadow: 0 1px 4px #111;
|
||||||
|
margin: 2px 0;
|
||||||
|
padding: 2px;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
&__content {
|
||||||
|
background-color: rgba(17, 17, 17, .9);
|
||||||
|
padding: 2px 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -72,13 +72,14 @@ body {
|
||||||
// Specific styles
|
// Specific styles
|
||||||
@import "classes/footer";
|
@import "classes/footer";
|
||||||
@import "classes/header";
|
@import "classes/header";
|
||||||
@import "classes/profile";
|
|
||||||
@import "classes/index";
|
@import "classes/index";
|
||||||
@import "classes/permissions";
|
@import "classes/permissions";
|
||||||
|
|
||||||
// Profile
|
// Profile
|
||||||
@import "classes/profile/profile";
|
@import "classes/profile/profile";
|
||||||
@import "classes/profile/header";
|
@import "classes/profile/header";
|
||||||
|
@import "classes/profile/container";
|
||||||
|
@import "classes/profile/accounts";
|
||||||
|
|
||||||
// Changelog
|
// Changelog
|
||||||
@import "classes/changelog";
|
@import "classes/changelog";
|
||||||
|
|
|
@ -96,6 +96,7 @@ switch ($mode) {
|
||||||
|
|
||||||
tpl_vars([
|
tpl_vars([
|
||||||
'profile' => $profile,
|
'profile' => $profile,
|
||||||
|
'profile_fields' => $app->hasActiveSession() ? user_profile_fields_display($profile) : [],
|
||||||
'has_background' => is_file(build_path($app->getStoragePath(), 'backgrounds/original', "{$profile['user_id']}.msz")),
|
'has_background' => is_file(build_path($app->getStoragePath(), 'backgrounds/original', "{$profile['user_id']}.msz")),
|
||||||
]);
|
]);
|
||||||
echo tpl_render('user.profile');
|
echo tpl_render('user.profile');
|
||||||
|
|
|
@ -16,39 +16,57 @@ define('MSZ_USER_PROFILE_FIELDS', [
|
||||||
'twitter' => [
|
'twitter' => [
|
||||||
'name' => 'Twitter',
|
'name' => 'Twitter',
|
||||||
'regex' => '#^(?:https?://(?:www\.)?twitter.com/(?:\#!\/)?)?@?([A-Za-z0-9_]{1,20})/?$#u',
|
'regex' => '#^(?:https?://(?:www\.)?twitter.com/(?:\#!\/)?)?@?([A-Za-z0-9_]{1,20})/?$#u',
|
||||||
|
'link' => 'https://twitter.com/%s',
|
||||||
|
'format' => '@%s',
|
||||||
],
|
],
|
||||||
'osu' => [
|
'osu' => [
|
||||||
'name' => 'osu!',
|
'name' => 'osu!',
|
||||||
'regex' => '#^(?:https?://osu.ppy.sh/u(?:sers)?/)?([a-zA-Z0-9-\[\]_ ]{1,20})/?$#u',
|
'regex' => '#^(?:https?://osu.ppy.sh/u(?:sers)?/)?([a-zA-Z0-9-\[\]_ ]{1,20})/?$#u',
|
||||||
|
'link' => 'https://osu.ppy.sh/users/%s',
|
||||||
],
|
],
|
||||||
'website' => [
|
'website' => [
|
||||||
'name' => 'Website',
|
'name' => 'Website',
|
||||||
'type' => 'url',
|
'type' => 'url',
|
||||||
'regex' => '#^((?:https?)://.{1,240})$#u',
|
'regex' => '#^((?:https?)://.{1,240})$#u',
|
||||||
|
'link' => '%s',
|
||||||
|
'tooltip' => '%s',
|
||||||
],
|
],
|
||||||
'youtube' => [
|
'youtube' => [
|
||||||
'name' => 'Youtube',
|
'name' => 'Youtube',
|
||||||
'regex' => '#^(?:https?://(?:www.)?youtube.com/(?:(?:user|c|channel)/)?)?(UC[a-zA-Z0-9-_]{1,22}|[a-zA-Z0-9-_%]{1,100})/?$#u',
|
'regex' => '#^(?:https?://(?:www.)?youtube.com/(?:(?:user|c|channel)/)?)?(UC[a-zA-Z0-9-_]{1,22}|[a-zA-Z0-9-_%]{1,100})/?$#u',
|
||||||
|
'link' => [
|
||||||
|
'_' => 'https://youtube.com/%s',
|
||||||
|
'UC[a-zA-Z0-9-_]{1,22}' => 'https://youtube.com/channel/%s',
|
||||||
|
],
|
||||||
|
'format' => [
|
||||||
|
'_' => '%s',
|
||||||
|
'UC[a-zA-Z0-9-_]{1,22}' => 'Go to Channel',
|
||||||
|
],
|
||||||
],
|
],
|
||||||
'steam' => [
|
'steam' => [
|
||||||
'name' => 'Steam',
|
'name' => 'Steam',
|
||||||
'regex' => '#^(?:https?://(?:www.)?steamcommunity.com/(?:id|profiles)/)?([a-zA-Z0-9_-]{2,100})/?$#u',
|
'regex' => '#^(?:https?://(?:www.)?steamcommunity.com/(?:id|profiles)/)?([a-zA-Z0-9_-]{2,100})/?$#u',
|
||||||
|
'link' => 'https://steamcommunity.com/id/%s',
|
||||||
],
|
],
|
||||||
'twitchtv' => [
|
'twitchtv' => [
|
||||||
'name' => 'Twitch.tv',
|
'name' => 'Twitch.tv',
|
||||||
'regex' => '#^(?:https?://(?:www.)?twitch.tv/)?([0-9A-Za-z_]{3,25})/?$#u',
|
'regex' => '#^(?:https?://(?:www.)?twitch.tv/)?([0-9A-Za-z_]{3,25})/?$#u',
|
||||||
|
'link' => 'https://twitch.tv/%s',
|
||||||
],
|
],
|
||||||
'lastfm' => [
|
'lastfm' => [
|
||||||
'name' => 'Last.fm',
|
'name' => 'Last.fm',
|
||||||
'regex' => '#^(?:https?://(?:www.)?last.fm/user/)?([a-zA-Z]{1}[a-zA-Z0-9_-]{1,14})/?$#u',
|
'regex' => '#^(?:https?://(?:www.)?last.fm/user/)?([a-zA-Z]{1}[a-zA-Z0-9_-]{1,14})/?$#u',
|
||||||
|
'link' => 'https://www.last.fm/user/%s',
|
||||||
],
|
],
|
||||||
'github' => [
|
'github' => [
|
||||||
'name' => 'Github',
|
'name' => 'Github',
|
||||||
'regex' => '#^(?:https?://(?:www.)?github.com/?)?([a-zA-Z0-9](?:[a-zA-Z0-9]|-(?=[a-zA-Z0-9])){0,38})/?$#u',
|
'regex' => '#^(?:https?://(?:www.)?github.com/?)?([a-zA-Z0-9](?:[a-zA-Z0-9]|-(?=[a-zA-Z0-9])){0,38})/?$#u',
|
||||||
|
'link' => 'https://github.com/%s',
|
||||||
],
|
],
|
||||||
'skype' => [
|
'skype' => [
|
||||||
'name' => 'Skype',
|
'name' => 'Skype',
|
||||||
'regex' => '#^((?:live:)?[a-zA-Z][\w\.,\-_@]{1,100})$#u',
|
'regex' => '#^((?:live:)?[a-zA-Z][\w\.,\-_@]{1,100})$#u',
|
||||||
|
'link' => 'skype:%s?userinfo',
|
||||||
],
|
],
|
||||||
'discord' => [
|
'discord' => [
|
||||||
'name' => 'Discord',
|
'name' => 'Discord',
|
||||||
|
@ -66,6 +84,11 @@ function user_profile_field_get_display_name(string $name): string
|
||||||
return MSZ_USER_PROFILE_FIELDS[$name]['name'] ?? '';
|
return MSZ_USER_PROFILE_FIELDS[$name]['name'] ?? '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function user_profile_field_get_database_name(string $name): string
|
||||||
|
{
|
||||||
|
return sprintf(MSZ_USER_PROFILE_FIELD_FORMAT, $name);
|
||||||
|
}
|
||||||
|
|
||||||
function user_profile_fields_get(): array
|
function user_profile_fields_get(): array
|
||||||
{
|
{
|
||||||
return MSZ_USER_PROFILE_FIELDS;
|
return MSZ_USER_PROFILE_FIELDS;
|
||||||
|
@ -121,7 +144,7 @@ function user_profile_fields_set(int $userId, array $fields): array
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
$values[sprintf(MSZ_USER_PROFILE_FIELD_FORMAT, $name)] = $value;
|
$values[user_profile_field_get_database_name($name)] = $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (count($values) > 0) {
|
if (count($values) > 0) {
|
||||||
|
@ -139,3 +162,40 @@ function user_profile_fields_set(int $userId, array $fields): array
|
||||||
|
|
||||||
return $errors;
|
return $errors;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function user_profile_fields_display(array $user): array
|
||||||
|
{
|
||||||
|
$output = [];
|
||||||
|
|
||||||
|
foreach (MSZ_USER_PROFILE_FIELDS as $name => $field) {
|
||||||
|
$dbn = user_profile_field_get_database_name($name);
|
||||||
|
|
||||||
|
if (!array_key_exists($dbn, $user) || empty($user[$dbn])) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$output[$name] = $field;
|
||||||
|
$output[$name]['value'] = htmlentities($user[$dbn]);
|
||||||
|
|
||||||
|
foreach (['link', 'format'] as $multipath) {
|
||||||
|
if (empty($output[$name][$multipath]) || !is_array($output[$name][$multipath])) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (array_reverse($output[$name][$multipath], true) as $regex => $string) {
|
||||||
|
if ($regex === '_' || !preg_match("#{$regex}#", $user[$dbn])) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$output[$name][$multipath] = $string;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_array($output[$name][$multipath])) {
|
||||||
|
$output[$name][$multipath] = $output[$name][$multipath]['_'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $output;
|
||||||
|
}
|
||||||
|
|
|
@ -55,16 +55,15 @@ function comments_parse_for_display(string $text): string
|
||||||
return $matches[0];
|
return $matches[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
return '<a href="/profile.php?u='
|
return sprintf(
|
||||||
. $info['user_id']
|
'<a href="/profile.php?u=%d" class="comment__mention", style="%s">@%s</a>',
|
||||||
. '" class="comment__mention" style="'
|
$info['user_id'],
|
||||||
. html_colour($info['user_colour'], [
|
html_colour($info['user_colour'], [
|
||||||
'color' => '%s',
|
'color' => '%s',
|
||||||
'text-shadow' => '0 0 5px %s',
|
'text-shadow' => '0 0 5px %s',
|
||||||
])
|
]),
|
||||||
. '">@'
|
$info['username']
|
||||||
. $info['username']
|
);
|
||||||
. '</a>';
|
|
||||||
}, $text);
|
}, $text);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,67 +6,10 @@
|
||||||
{% set title = 'Profile of ' ~ profile.username %}
|
{% set title = 'Profile of ' ~ profile.username %}
|
||||||
{% set manage_link = '/manage/users.php?v=view&u=' ~ profile.user_id %}
|
{% 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 %}
|
|
||||||
|
|
||||||
{% if has_background %}
|
{% if has_background %}
|
||||||
{% set site_background_url = '/profile.php?m=background&u=' ~ profile.user_id %}
|
{% set site_background_url = '/profile.php?m=background&u=' ~ profile.user_id %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% set profile_fields = {
|
|
||||||
'twitter': {
|
|
||||||
'title': 'Twitter',
|
|
||||||
'value': profile.user_twitter|escape,
|
|
||||||
'link': 'https://twitter.com/%s',
|
|
||||||
'format': '@%s',
|
|
||||||
},
|
|
||||||
'osu': {
|
|
||||||
'title': 'osu!',
|
|
||||||
'value': profile.user_osu|escape,
|
|
||||||
'link': 'https://osu.ppy.sh/users/%s',
|
|
||||||
},
|
|
||||||
'website': {
|
|
||||||
'title': 'Website',
|
|
||||||
'value': profile.user_website|escape,
|
|
||||||
'link': '%s',
|
|
||||||
'tooltip': '%s',
|
|
||||||
},
|
|
||||||
'youtube': {
|
|
||||||
'title': 'Youtube',
|
|
||||||
'value': profile.user_youtube|escape,
|
|
||||||
'link': 'https://youtube.com/' ~ (youtube_is_channel_id ? 'channel/' : '') ~ '%s',
|
|
||||||
'format': youtube_is_channel_id ? 'Channel' : '%s',
|
|
||||||
},
|
|
||||||
'steam': {
|
|
||||||
'title': 'Steam',
|
|
||||||
'value': profile.user_steam|escape,
|
|
||||||
'link': 'https://steamcommunity.com/id/%s',
|
|
||||||
},
|
|
||||||
'twitchtv': {
|
|
||||||
'title': 'Twitch.tv',
|
|
||||||
'value': profile.user_twitchtv|escape,
|
|
||||||
'link': 'https://twitch.tv/%s',
|
|
||||||
},
|
|
||||||
'lastfm': {
|
|
||||||
'title': 'Last.fm',
|
|
||||||
'value': profile.user_lastfm|escape,
|
|
||||||
'link': 'http://last.fm/user/%s',
|
|
||||||
},
|
|
||||||
'github': {
|
|
||||||
'title': 'Github',
|
|
||||||
'value': profile.user_github|escape,
|
|
||||||
'link': 'https://github.com/%s',
|
|
||||||
},
|
|
||||||
'skype': {
|
|
||||||
'title': 'Skype',
|
|
||||||
'value': profile.user_skype|escape,
|
|
||||||
'link': 'skype:%s?userinfo',
|
|
||||||
},
|
|
||||||
'discord': {
|
|
||||||
'title': 'Discord',
|
|
||||||
'value': profile.user_discord|escape,
|
|
||||||
},
|
|
||||||
} %}
|
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="profile" id="profile">
|
<div class="profile" id="profile">
|
||||||
<div class="profile__header">
|
<div class="profile__header">
|
||||||
|
@ -178,36 +121,44 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="profile__container__placeholder">
|
||||||
<div class="profile__info">
|
<div class="profile__container__placeholder__content">
|
||||||
{% if current_user is defined %}
|
The profile pages are still under much construction, more things will eventually populate the area where this container current exists.
|
||||||
{% spaceless %}
|
|
||||||
<div class="profile__info__section">
|
|
||||||
<div class="profile__info__block profile__info__block--links">
|
|
||||||
{% autoescape false %}
|
|
||||||
{% 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>
|
||||||
<div class="profile__info__column"
|
</div>
|
||||||
|
|
||||||
|
<div class="profile__container">
|
||||||
|
<div class="profile__container__side">
|
||||||
|
{% if current_user is not defined %}
|
||||||
|
<div class="profile__accounts">
|
||||||
|
<div class="profile__accounts__notice">
|
||||||
|
You must <a href="/auth.php?m=login" class="profile__accounts__link">log in</a> to view full profiles!
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% elseif profile_fields|default([])|length > 0 %}
|
||||||
|
<div class="profile__accounts">
|
||||||
|
{% for name, data in profile_fields %}
|
||||||
|
<div class="profile__accounts__item">
|
||||||
|
<div class="profile__accounts__title">
|
||||||
|
{{ data.name }}
|
||||||
|
</div>
|
||||||
|
<div class="profile__accounts__value"
|
||||||
{% if data.tooltip is defined %}title="{{ data.tooltip|format(data.value)|raw }}"{% endif %}>
|
{% if data.tooltip is defined %}title="{{ data.tooltip|format(data.value)|raw }}"{% endif %}>
|
||||||
{% set profile_field_value = (data.format is defined ? data.format : '%s')|format(data.value) %}
|
{% set profile_field_value = (data.format is defined ? data.format : '%s')|format(data.value) %}
|
||||||
{% if data.link is defined %}
|
{% if data.link is defined %}
|
||||||
{{ data.link|format(data.value)|html_link(profile_field_value, 'profile__account-link') }}
|
{{ data.link|format(data.value)|html_link(profile_field_value, 'profile__accounts__link')|raw }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ profile_field_value }}
|
{{ profile_field_value }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endautoescape %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
{% endspaceless %}
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="profile__container__main">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
Loading…
Add table
Reference in a new issue