#50 pronouns cards - handle not found

This commit is contained in:
Andrea Vos 2020-10-23 20:24:43 +02:00
parent 224342166d
commit 128f50be59
4 changed files with 73 additions and 72 deletions

View File

@ -41,6 +41,7 @@
</div> </div>
<Loading :value="profiles"><template v-if="profiles !== undefined"> <Loading :value="profiles"><template v-if="profiles !== undefined">
<h3 class="h4"><T>profile.list</T>:</h3>
<ul class="list-group mb-3"> <ul class="list-group mb-3">
<li v-for="(options, locale) in locales" :key="locale" :class="['list-group-item', locale === config.locale ? 'profile-current' : '']"> <li v-for="(options, locale) in locales" :key="locale" :class="['list-group-item', locale === config.locale ? 'profile-current' : '']">
<ProfileOverview :profile="profiles[locale]" :locale="locale"/> <ProfileOverview :profile="profiles[locale]" :locale="locale"/>

View File

@ -686,6 +686,7 @@ profile:
names: 'Imiona' names: 'Imiona'
pronouns: 'Zaimki' pronouns: 'Zaimki'
words: 'Słowa' words: 'Słowa'
list: 'Twoje wizytówki'
init: 'Stwórz wizytówkę' init: 'Stwórz wizytówkę'
show: 'Pokaż' show: 'Pokaż'
edit: 'Edytuj' edit: 'Edytuj'

View File

@ -1,84 +1,83 @@
<template> <template>
<div class="container"> <NotFound v-if="!profile"/>
<template v-if="profile"> <div v-else class="container">
<div class="mb-3 d-flex justify-content-between align-items-center flex-column flex-md-row"> <div class="mb-3 d-flex justify-content-between align-items-center flex-column flex-md-row">
<h2 class="text-nowrap"> <h2 class="text-nowrap">
<Avatar :user="profile"/> <Avatar :user="profile"/>
@{{username}} @{{username}}
</h2> </h2>
<div class="list-group"> <div class="list-group" v-if="Object.keys(profiles).length > 1">
<LocaleLink v-for="(options, locale) in locales" :key="locale" v-if="profiles[locale] !== undefined" <LocaleLink v-for="(options, locale) in locales" :key="locale" v-if="profiles[locale] !== undefined"
:locale="locale" :link="`/@${username}`" :locale="locale" :link="`/@${username}`"
:class="['list-group-item list-group-item-action small px-3 py-2 text-center', locale === config.locale ? 'active disabled' : '']"> :class="['list-group-item list-group-item-action small px-3 py-2 text-center', locale === config.locale ? 'active disabled' : '']">
{{options.name}} {{options.name}}
</LocaleLink> </LocaleLink>
</div>
</div> </div>
</div>
<section v-if="profile.description.trim().length"> <section v-if="profile.description.trim().length">
<p v-for="line in profile.description.split('\n')" class="mb-1"> <p v-for="line in profile.description.split('\n')" class="mb-1">
{{ line }} {{ line }}
</p> </p>
</section> </section>
<section v-if="profile.age || Object.keys(profile.links).length"> <section v-if="profile.age || Object.keys(profile.links).length">
<ul class="list-inline"> <ul class="list-inline">
<li v-if="profile.age" class="list-inline-item"> <li v-if="profile.age" class="list-inline-item">
<Icon v="birthday-cake"/> <Icon v="birthday-cake"/>
{{ profile.age }} {{ profile.age }}
</li> </li>
<li v-for="link in profile.links" class="list-inline-item pr-2"> <li v-for="link in profile.links" class="list-inline-item pr-2">
<ProfileLink :link="link"/> <ProfileLink :link="link"/>
</li> </li>
</ul> </ul>
</section> </section>
<section v-if="Object.keys(profile.flags).length"> <section v-if="Object.keys(profile.flags).length">
<ul class="list-inline"> <ul class="list-inline">
<li v-for="(name, flag) in profile.flags" class="list-inline-item pr-2"> <li v-for="(name, flag) in profile.flags" class="list-inline-item pr-2">
<Flag :name="name" :src="`/flags/${flag}.png`"/> <Flag :name="name" :src="`/flags/${flag}.png`"/>
</li> </li>
</ul> </ul>
</section> </section>
<section class="d-flex"> <section class="d-flex">
<div class="w-50" v-if="Object.keys(profile.names).length"> <div class="w-50" v-if="Object.keys(profile.names).length">
<h3>
<Icon v="signature"/>
<T>profile.names</T>
</h3>
<ul class="list-unstyled">
<li v-for="(opinion, name) in profile.names"><Opinion :word="name" :opinion="opinion"/></li>
</ul>
</div>
<div class="w-50" v-if="Object.keys(profile.pronouns).length">
<h3>
<Icon v="tags"/>
<T>profile.pronouns</T>
</h3>
<ul class="list-unstyled">
<li v-for="(opinion, pronoun) in profile.pronouns"><Opinion :word="buildTemplate(pronoun).name('')" :opinion="opinion" :link="`/${pronoun}`"/></li>
</ul>
</div>
</section>
<section>
<h3> <h3>
<Icon v="scroll-old"/> <Icon v="signature"/>
<T>profile.words</T> <T>profile.names</T>
</h3> </h3>
<div class="d-flex"> <ul class="list-unstyled">
<div v-for="group in profile.words" v-if="Object.keys(profile.words).length" class="w-25"> <li v-for="(opinion, name) in profile.names"><Opinion :word="name" :opinion="opinion"/></li>
<ul class="list-unstyled"> </ul>
<li v-for="(opinion, word) in group"><Opinion :word="word" :opinion="opinion"/></li> </div>
</ul> <div class="w-50" v-if="Object.keys(profile.pronouns).length">
</div> <h3>
<Icon v="tags"/>
<T>profile.pronouns</T>
</h3>
<ul class="list-unstyled">
<li v-for="(opinion, pronoun) in profile.pronouns"><Opinion :word="buildTemplate(pronoun).name('')" :opinion="opinion" :link="`/${pronoun}`"/></li>
</ul>
</div>
</section>
<section>
<h3>
<Icon v="scroll-old"/>
<T>profile.words</T>
</h3>
<div class="d-flex">
<div v-for="group in profile.words" v-if="Object.keys(profile.words).length" class="w-25">
<ul class="list-unstyled">
<li v-for="(opinion, word) in group"><Opinion :word="word" :opinion="opinion"/></li>
</ul>
</div> </div>
</section> </div>
</template> </section>
</div> </div>
</template> </template>

View File

@ -1,6 +1,6 @@
<template> <template>
<NotFound v-if="!selectedTemplate"/> <NotFound v-if="!selectedTemplate"/>
<div class="container" v-else> <div v-else class="container">
<h2> <h2>
<Icon v="tag"/> <Icon v="tag"/>
<T>template.intro</T>: <T>template.intro</T>: