67 lines
2.2 KiB
HTML
67 lines
2.2 KiB
HTML
<:Head>
|
||
<title>{{'Pinafore – ' + profileName}}</title>
|
||
</:Head>
|
||
|
||
<Layout page='tags'
|
||
virtual="true"
|
||
virtualRealm='account/{{params.accountId}}'
|
||
dynamicPage="{{profileName}}"
|
||
dynamicHref="/accounts/{{params.accountId}}"
|
||
dynamicLabel="{{shortProfileName}}"
|
||
dynamicIcon="#fa-user" >
|
||
{{#if $isUserLoggedIn}}
|
||
<DynamicPageBanner title="{{profileName}}" />
|
||
{{#if $currentAccountProfile}}
|
||
<AccountProfile profile="{{$currentAccountProfile}}"
|
||
relationship="{{$currentAccountRelationship}}"
|
||
verifyCredentials="{{$currentVerifyCredentials}}"
|
||
/>
|
||
{{/if}}
|
||
<LazyTimeline timeline='account/{{params.accountId}}' />
|
||
{{else}}
|
||
<HiddenFromSSR>
|
||
<FreeTextLayout>
|
||
<h1>Profile</h1>
|
||
|
||
<p>A user timeline will appear here when logged in.</p>
|
||
</FreeTextLayout>
|
||
</HiddenFromSSR>
|
||
{{/if}}
|
||
</Layout>
|
||
<script>
|
||
import Layout from '../_components/Layout.html'
|
||
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
||
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
||
import { store } from '../_store/store.js'
|
||
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
||
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
||
import { updateProfileAndRelationship } from './_actions/[accountId]'
|
||
import AccountProfile from '../_components/AccountProfile.html'
|
||
import { updateVerifyCredentialsForInstance } from '../settings/instances/_actions/[instanceName]'
|
||
|
||
export default {
|
||
oncreate() {
|
||
let accountId = this.get('params').accountId
|
||
let instanceName = this.store.get('currentInstance')
|
||
updateProfileAndRelationship(accountId)
|
||
updateVerifyCredentialsForInstance(instanceName)
|
||
},
|
||
store: () => store,
|
||
computed: {
|
||
profileName: ($currentAccountProfile) => {
|
||
return ($currentAccountProfile && ('@' + $currentAccountProfile.acct)) || ''
|
||
},
|
||
shortProfileName: ($currentAccountProfile) => {
|
||
return ($currentAccountProfile && ('@' + $currentAccountProfile.username)) || ''
|
||
}
|
||
},
|
||
components: {
|
||
Layout,
|
||
LazyTimeline,
|
||
FreeTextLayout,
|
||
HiddenFromSSR,
|
||
DynamicPageBanner,
|
||
AccountProfile
|
||
}
|
||
}
|
||
</script> |