{{- $profile := .Site.Params.home.profile -}}
<div class="home-profile">
    {{- $avatar := $profile.avatarURL -}}
    {{- with $profile.gravatarEmail -}}
        {{- $avatar = md5 . | printf "https://www.gravatar.com/avatar/%v?s=240&d=mp" -}}
    {{- end -}}
    {{- if $avatar -}}
        <div class="home-avatar">
            {{- $menus := $.Site.Menus.main | default slice -}}
            {{- with index $menus 0 -}}
                {{- $url := .URL | relLangURL -}}
                {{- with .Page -}}
                    {{- $url = .RelPermalink -}}
                {{- end -}}
                <a href="{{ $url }}"{{ with .Title | default .Name }} title="{{ . }}"{{ end }}{{ if (urls.Parse $url).Host }} rel="noopener noreffer" target="_blank"{{ end }}>
                    {{- dict "Src" $avatar | partial "plugin/image.html" -}}
                </a>
            {{- else -}}
                {{- dict "Src" $avatar | partial "plugin/image.html" -}}
            {{- end -}}
        </div>
    {{- end -}}

    {{- with $profile.title -}}
        <h1 class="home-title">
            {{- . | safeHTML -}}
        </h1>
    {{- end -}}

    {{- with $profile.subtitle -}}
        <div class="home-subtitle">
            {{- if $profile.typeit -}}
                {{- $id := dict "Content" . "Scratch" $.Scratch | partial "function/id.html" -}}
                <div id="{{ $id }}" class="typeit"></div>
                {{- dict $id (slice $id) | dict "typeitMap" | merge ($.Scratch.Get "this") | $.Scratch.Set "this" -}}
            {{- else -}}
                {{- . -}}
            {{- end -}}
        </div>
    {{- end -}}

    {{- if $profile.social -}}
        <div class="links">
            {{- $socialMap := resources.Get "data/social.yml" | transform.Unmarshal -}}
            {{- $socialArr := slice -}}
            {{- range $key, $value := .Site.Params.social -}}
                {{- $social := $key | lower | index $socialMap | default dict -}}
                {{- if $value -}}
                    {{- if reflect.IsMap $value -}}
                        {{- with $value.weight -}}
                            {{- $social = dict "Weight" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.prefix -}}
                            {{- $social = dict "Prefix" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.template -}}
                            {{- $social = dict "Template" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.id -}}
                            {{- $social = dict "Id" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.url -}}
                            {{- $social = dict "Url" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.title -}}
                            {{- $social = dict "Title" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.newtab -}}
                            {{- $social = dict "Newtab" . | merge $social -}}
                        {{- end -}}
                        {{- with $value.icon -}}
                            {{- $social = dict "Icon" . | merge $social -}}
                        {{- end -}}
                    {{- else if ne $value true -}}
                        {{- $social = dict "Id" $value | merge $social -}}
                    {{- end -}}
                    {{- if $social.Icon.Simpleicons -}}
                        {{- $prefix := ($.Scratch.Get "cdn" | default dict).simpleIconsPrefix -}}
                        {{- $social = dict "Prefix" $prefix | dict "Icon" | merge $social -}}
                    {{- end -}}
                    {{- $socialArr = $socialArr | append $social -}}
                {{- end -}}
            {{- end -}}
            {{- range sort $socialArr "Weight" -}}
                {{- partial "plugin/social.html" . -}}
            {{- end -}}
        </div>
    {{- end -}}

    {{- with $profile.disclaimer -}}
        <h3 class="home-disclaimer">
            {{- . | safeHTML -}}
        </h3>
    {{- end -}}
</div>
