41 lines
1.2 KiB
Plaintext
41 lines
1.2 KiB
Plaintext
component Avatar(user *arn.User)
|
|
CustomAvatar(user, user.Link(), user.Nick)
|
|
|
|
component CustomAvatar(user *arn.User, link string, title string)
|
|
a.user.tip(href=link, aria-label=title)
|
|
AvatarNoLink(user)
|
|
|
|
if user.IsPro()
|
|
.user-pro-icon
|
|
RawIcon("star")
|
|
|
|
component AvatarNoLink(user *arn.User)
|
|
if user.HasAvatar()
|
|
img.user-image.lazy(data-src=user.AvatarLink("small"), data-webp="true", alt=user.Nick)
|
|
else
|
|
SVGAvatar(user)
|
|
|
|
component AvatarNoTip(user *arn.User)
|
|
a.user(href=user.Link(), title=user.Nick)
|
|
AvatarNoLink(user)
|
|
|
|
component ProfileImage(user *arn.User)
|
|
if user.HasAvatar()
|
|
img.profile-image.lazy(data-src=user.AvatarLink("large"), data-webp="true", alt="Profile image", importance="high")
|
|
else
|
|
SVGProfileImage(user)
|
|
|
|
component SVGAvatar(user *arn.User)
|
|
svg.user-image(viewBox="0 0 50 50")
|
|
circle.head(cx="25", cy="19", r="10")
|
|
circle.body(cx="25", cy="50", r="20")
|
|
|
|
if len(user.Nick) <= 6
|
|
text.svg-nick(x="25", y="44", text-anchor="middle")= user.Nick
|
|
else
|
|
text.svg-nick(x="25", y="44", text-anchor="middle")= user.Nick[:6]
|
|
|
|
component SVGProfileImage(user *arn.User)
|
|
svg.profile-image(viewBox="0 0 50 50", alt="Profile image")
|
|
circle.head(cx="25", cy="19", r="10")
|
|
circle.body(cx="25", cy="50", r="20") |