<!-- User avatar widgets -->

<!-- Parameter: .User -->
{{define "avatar-24x24"}}
<figure class="image is-24x24 is-inline-block">
    <a href="/u/{{.Username}}" class="has-text-dark">
        {{if .ProfilePhoto.ID}}
            {{if and (eq .ProfilePhoto.Visibility "private") (not .UserRelationship.IsPrivateGranted) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-private.png" class="is-rounded">
            {{else if and (eq .ProfilePhoto.Visibility "friends") (not .UserRelationship.IsFriend) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-friends.png" class="is-rounded">
            {{else if and (eq .ProfilePhoto.Visibility "circle") (not .UserRelationship.IsInnerCirclePeer) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-secret.png">
            {{else}}
                <img src="{{PhotoURL .ProfilePhoto.CroppedFilename}}" class="is-rounded">
            {{end}}
        {{else}}
        <img src="/static/img/shy.png" class="is-rounded">
        {{end}}
    </a>
</figure>
{{end}}

<!-- Parameter: .User -->
{{define "avatar-48x48"}}
<figure class="image is-48x48 is-inline-block">
    <a href="/u/{{.Username}}" class="has-text-dark">
        {{if .ProfilePhoto.ID}}
            {{if and (eq .ProfilePhoto.Visibility "private") (not .UserRelationship.IsPrivateGranted) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-private.png">
            {{else if and (eq .ProfilePhoto.Visibility "friends") (not .UserRelationship.IsFriend) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-friends.png">
            {{else if and (eq .ProfilePhoto.Visibility "circle") (not .UserRelationship.IsInnerCirclePeer) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-secret.png">
            {{else}}
                <img src="{{PhotoURL .ProfilePhoto.CroppedFilename}}">
            {{end}}
        {{else}}
        <img src="/static/img/shy.png">
        {{end}}
    </a>
</figure>
{{end}}

<!-- Parameter: .User -->
{{define "avatar-64x64"}}
<figure class="image is-64x64 is-inline-block">
    <a href="/u/{{.Username}}" class="has-text-dark">
        {{if .ProfilePhoto.ID}}
            {{if and (eq .ProfilePhoto.Visibility "private") (not .UserRelationship.IsPrivateGranted) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-private.png">
            {{else if and (eq .ProfilePhoto.Visibility "friends") (not .UserRelationship.IsFriend) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-friends.png">
            {{else if and (eq .ProfilePhoto.Visibility "circle") (not .UserRelationship.IsInnerCirclePeer) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-secret.png">
            {{else}}
                <img src="{{PhotoURL .ProfilePhoto.CroppedFilename}}">
            {{end}}
        {{else}}
        <img src="/static/img/shy.png">
        {{end}}
    </a>
</figure>
{{end}}

<!-- Parameter: .User -->
{{define "avatar-96x96"}}
<figure class="image is-96x96 is-inline-block">
    <a href="/u/{{.Username}}" class="has-text-dark">
        {{if .ProfilePhoto.ID}}
            {{if and (eq .ProfilePhoto.Visibility "private") (not .UserRelationship.IsPrivateGranted) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-private.png">
            {{else if and (eq .ProfilePhoto.Visibility "friends") (not .UserRelationship.IsFriend) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-friends.png">
            {{else if and (eq .ProfilePhoto.Visibility "circle") (not .UserRelationship.IsInnerCirclePeer) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-secret.png">
            {{else}}
                <img src="{{PhotoURL .ProfilePhoto.CroppedFilename}}">
            {{end}}
        {{else}}
        <img src="/static/img/shy.png">
        {{end}}
    </a>
</figure>
{{end}}

<!-- Parameter: .User -->
{{define "avatar-32x32"}}
<figure class="image is-32x32 is-inline-block">
    <a href="/u/{{.Username}}" class="has-text-dark">
        {{if .ProfilePhoto.ID}}
            {{if and (eq .ProfilePhoto.Visibility "private") (not .UserRelationship.IsPrivateGranted) (not .UserRelationship.PublicAvatarConsent)}}
                <img class="is-rounded" src="/static/img/shy-private.png">
            {{else if and (eq .ProfilePhoto.Visibility "friends") (not .UserRelationship.IsFriend) (not .UserRelationship.PublicAvatarConsent)}}
                <img class="is-rounded" src="/static/img/shy-friends.png">
            {{else if and (eq .ProfilePhoto.Visibility "circle") (not .UserRelationship.IsInnerCirclePeer) (not .UserRelationship.PublicAvatarConsent)}}
                <img src="/static/img/shy-secret.png">
            {{else}}
                <img class="is-rounded" src="{{PhotoURL .ProfilePhoto.CroppedFilename}}">
            {{end}}
        {{else}}
        <img class="is-rounded" src="/static/img/shy.png">
        {{end}}
    </a>
</figure>
{{end}}