mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-12 23:35:58 +00:00
Refactor pageParams, second step
This commit is contained in:
parent
97fdb7cd5c
commit
e8a0a5d13c
@ -77,7 +77,9 @@ describe('PageFooter.vue', () => {
|
||||
})
|
||||
|
||||
it('renders TERMS_AND_CONDITIONS as nuxt-link', () => {
|
||||
expect(wrapper.find('span[data-test="terms-and-conditions-nuxt-link"]').exists()).toBeTruthy()
|
||||
expect(
|
||||
wrapper.find('span[data-test="terms-and-conditions-nuxt-link"]').exists(),
|
||||
).toBeTruthy()
|
||||
})
|
||||
|
||||
it('renders CODE_OF_CONDUCT as nuxt-link', () => {
|
||||
@ -99,9 +101,18 @@ describe('PageFooter.vue', () => {
|
||||
...linksDefault,
|
||||
ORGANIZATION: { ...linksDefault.ORGANIZATION, externalLink: 'https://ocelot.social' },
|
||||
IMPRINT: { ...linksDefault.IMPRINT, externalLink: 'https://ocelot.social/IMPRINT' },
|
||||
TERMS_AND_CONDITIONS: { ...linksDefault.TERMS_AND_CONDITIONS, externalLink: 'https://ocelot.social/TERMS_AND_CONDITIONS' },
|
||||
CODE_OF_CONDUCT: { ...linksDefault.CODE_OF_CONDUCT, externalLink: 'https://ocelot.social/CODE_OF_CONDUCT' },
|
||||
DATA_PRIVACY: { ...linksDefault.DATA_PRIVACY, externalLink: 'https://ocelot.social/DATA_PRIVACY' },
|
||||
TERMS_AND_CONDITIONS: {
|
||||
...linksDefault.TERMS_AND_CONDITIONS,
|
||||
externalLink: 'https://ocelot.social/TERMS_AND_CONDITIONS',
|
||||
},
|
||||
CODE_OF_CONDUCT: {
|
||||
...linksDefault.CODE_OF_CONDUCT,
|
||||
externalLink: 'https://ocelot.social/CODE_OF_CONDUCT',
|
||||
},
|
||||
DATA_PRIVACY: {
|
||||
...linksDefault.DATA_PRIVACY,
|
||||
externalLink: 'https://ocelot.social/DATA_PRIVACY',
|
||||
},
|
||||
FAQ: { ...linksDefault.FAQ, externalLink: 'https://ocelot.social/FAQ' },
|
||||
}
|
||||
wrapper = Wrapper()
|
||||
|
||||
@ -7,11 +7,14 @@
|
||||
:to="pageParams.internalLink"
|
||||
:data-test="pageParams.name + '-nuxt-link'"
|
||||
>
|
||||
{{ pageParams.link }}
|
||||
{{ $t(pageParams.internalPage.footerIdent) }}
|
||||
</nuxt-link>
|
||||
<a v-else :href="pageParams.externalLink" target="_blank" :data-test="pageParams.name + '-link'">
|
||||
{{ pageParams.link }}
|
||||
<a
|
||||
v-else
|
||||
:href="pageParams.externalLink"
|
||||
target="_blank"
|
||||
:data-test="pageParams.name + '-link'"
|
||||
>
|
||||
{{ $t(pageParams.internalPage.footerIdent) }}
|
||||
</a>
|
||||
<span class="division-line">-</span>
|
||||
|
||||
@ -1,37 +1,36 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<!-- Wolle <ds-heading v-if="pageParams.internalPage.headlineIdent !== null" tag="h2">{{ $t(pageParams.internalPage.headlineIdent === '' ? pageValues.defaultHeadlineIdent : pageParams.internalPage.headlineIdent) }}</ds-heading> -->
|
||||
<ds-heading v-if="pageParams.internalPage.headlineIdent !== null" tag="h2">{{ $t(pageParams.internalPage.headlineIdent === '' ? pageParams.internalPage.defaultHeadlineIdent : pageParams.internalPage.headlineIdent) }}</ds-heading>
|
||||
<ds-heading v-if="pageParams.internalPage.headlineIdent !== null" tag="h2">
|
||||
{{
|
||||
$t(
|
||||
pageParams.internalPage.headlineIdent === ''
|
||||
? pageParams.internalPage.defaultHeadlineIdent
|
||||
: pageParams.internalPage.headlineIdent,
|
||||
)
|
||||
}}
|
||||
</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container v-if="pageParams.internalPage.hasContainer">
|
||||
<div v-if="!pageParams.internalPage.hasBaseCard">
|
||||
<br>
|
||||
<!-- Wolle <div v-html="$t(pageValues.htmlIdent)" /> -->
|
||||
<br />
|
||||
<div v-html="$t(pageParams.internalPage.htmlIdent)" />
|
||||
</div>
|
||||
<base-card v-else>
|
||||
<!-- Wolle <div v-html="$t(pageValues.htmlIdent)" /> -->
|
||||
<div v-html="$t(pageParams.internalPage.htmlIdent)" />
|
||||
</base-card>
|
||||
</ds-container>
|
||||
<div v-else-if="!pageParams.internalPage.hasBaseCard">
|
||||
<br>
|
||||
<!-- Wolle <div v-html="$t(pageValues.htmlIdent)" /> -->
|
||||
<br />
|
||||
<div v-html="$t(pageParams.internalPage.htmlIdent)" />
|
||||
</div>
|
||||
<base-card v-else>
|
||||
<!-- Wolle <div v-html="$t(pageValues.htmlIdent)" /> -->
|
||||
<div v-html="$t(pageParams.internalPage.htmlIdent)" />
|
||||
</base-card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
// Wolle import links from '~/constants/links.js'
|
||||
// import { pageLink } from '~/components/utils/InternalPages.js'
|
||||
// import Logo from '~/components/Logo/Logo'
|
||||
|
||||
export default {
|
||||
name: 'InternalPage',
|
||||
head() {
|
||||
@ -39,50 +38,8 @@ export default {
|
||||
title: this.$t(this.pageParams.internalPage.headTitleIdent),
|
||||
}
|
||||
},
|
||||
// Wolle components: {
|
||||
// Logo,
|
||||
// },
|
||||
props: {
|
||||
pageParams: { type: Object, required: true },
|
||||
},
|
||||
// Wolle data() {
|
||||
// return { links, pageLink }
|
||||
// },
|
||||
// computed: {
|
||||
// pageValues() {
|
||||
// let values = {}
|
||||
// switch (this.pageParams.name) {
|
||||
// case 'organization':
|
||||
// values.defaultHeadlineIdent = 'site.made'
|
||||
// values.htmlIdent = 'html.organization'
|
||||
// break;
|
||||
// case 'donate':
|
||||
// values.defaultHeadlineIdent = 'site.donate'
|
||||
// values.htmlIdent = 'html.donate'
|
||||
// break;
|
||||
// case 'imprint':
|
||||
// values.defaultHeadlineIdent = 'site.imprint'
|
||||
// values.htmlIdent = 'html.imprint'
|
||||
// break;
|
||||
// case 'terms-and-conditions':
|
||||
// values.defaultHeadlineIdent = 'site.termsAndConditions'
|
||||
// values.htmlIdent = 'html.termsAndConditions'
|
||||
// break;
|
||||
// case 'code-of-conduct':
|
||||
// values.defaultHeadlineIdent = 'site.code-of-conduct'
|
||||
// values.htmlIdent = 'html.codeOfConduct'
|
||||
// break;
|
||||
// case 'data-privacy':
|
||||
// values.defaultHeadlineIdent = 'site.data-privacy'
|
||||
// values.htmlIdent = 'html.dataPrivacy'
|
||||
// break;
|
||||
// case 'faq':
|
||||
// values.defaultHeadlineIdent = 'site.faq'
|
||||
// values.htmlIdent = 'html.faq'
|
||||
// break;
|
||||
// }
|
||||
// return values
|
||||
// },
|
||||
// },
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -2,16 +2,39 @@ export function isInternalPage(pageParams) {
|
||||
return noStringDefined(pageParams.externalLink)
|
||||
}
|
||||
|
||||
export function noStringDefined(string) {
|
||||
function noStringDefined(string) {
|
||||
return !string || string === 0
|
||||
}
|
||||
|
||||
export function pageLink(pageParams) {
|
||||
function pageLink(pageParams) {
|
||||
return isInternalPage(pageParams) ? pageParams.internalLink : pageParams.externalLink
|
||||
}
|
||||
|
||||
export const defaultInternalPagesSettings = {
|
||||
ORGANIZATION: {
|
||||
class PageParams {
|
||||
constructor(pageParams) {
|
||||
this.name = pageParams.name
|
||||
this.externalLink = pageParams.externalLink
|
||||
this.internalLink = pageParams.internalLink
|
||||
this.internalPage = pageParams.internalPage
|
||||
}
|
||||
|
||||
assign(assignPageParams) {
|
||||
let pageParams = this
|
||||
pageParams = {
|
||||
...pageParams,
|
||||
...assignPageParams,
|
||||
internalPage: { ...pageParams.internalPage, ...assignPageParams.internalPage },
|
||||
}
|
||||
return pageParams
|
||||
}
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
}
|
||||
}
|
||||
|
||||
export const defaultPageParamsPages = {
|
||||
ORGANIZATION: new PageParams({
|
||||
name: 'organization',
|
||||
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
@ -29,12 +52,8 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.made',
|
||||
htmlIdent: 'html.organization',
|
||||
},
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
},
|
||||
},
|
||||
DONATE: {
|
||||
}),
|
||||
DONATE: new PageParams({
|
||||
name: 'donate',
|
||||
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
@ -52,12 +71,8 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.donate',
|
||||
htmlIdent: 'html.donate',
|
||||
},
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
},
|
||||
},
|
||||
IMPRINT: {
|
||||
}),
|
||||
IMPRINT: new PageParams({
|
||||
name: 'imprint',
|
||||
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
@ -75,12 +90,8 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.imprint',
|
||||
htmlIdent: 'html.imprint',
|
||||
},
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
},
|
||||
},
|
||||
TERMS_AND_CONDITIONS: {
|
||||
}),
|
||||
TERMS_AND_CONDITIONS: new PageParams({
|
||||
name: 'terms-and-conditions',
|
||||
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
@ -98,12 +109,8 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.termsAndConditions',
|
||||
htmlIdent: 'html.termsAndConditions',
|
||||
},
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
},
|
||||
},
|
||||
CODE_OF_CONDUCT: {
|
||||
}),
|
||||
CODE_OF_CONDUCT: new PageParams({
|
||||
name: 'code-of-conduct',
|
||||
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
@ -121,12 +128,8 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.code-of-conduct',
|
||||
htmlIdent: 'html.codeOfConduct',
|
||||
},
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
},
|
||||
},
|
||||
DATA_PRIVACY: {
|
||||
}),
|
||||
DATA_PRIVACY: new PageParams({
|
||||
name: 'data-privacy',
|
||||
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
@ -144,15 +147,10 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.data-privacy',
|
||||
htmlIdent: 'html.dataPrivacy',
|
||||
},
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
},
|
||||
},
|
||||
FAQ: {
|
||||
}),
|
||||
FAQ: new PageParams({
|
||||
name: 'faq',
|
||||
|
||||
// Wolle externalLink: 'https://ocelot.social',
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
@ -168,9 +166,26 @@ export const defaultInternalPagesSettings = {
|
||||
defaultHeadlineIdent: 'site.faq',
|
||||
htmlIdent: 'html.faq',
|
||||
},
|
||||
}),
|
||||
SUPPORT: new PageParams({
|
||||
name: 'support',
|
||||
|
||||
get link() {
|
||||
return pageLink(this)
|
||||
// ATTENTION: has to be defined even for internal page with full URL as example like 'https://staging.ocelot.social/support', because it is used in e-mails as well!
|
||||
externalLink: 'https://ocelot.social',
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// ATTENTION: example for internal support page: 'https://staging.ocelot.social/support'. set a full URL please, because it is used in e-mails as well!
|
||||
internalLink: '/support', // static, don't change '*/support'! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.support', // localized string identifier
|
||||
headTitleIdent: 'site.support', // localized string identifier
|
||||
headlineIdent: 'site.support', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
|
||||
defaultHeadlineIdent: 'site.support',
|
||||
htmlIdent: 'html.support',
|
||||
},
|
||||
},
|
||||
}),
|
||||
}
|
||||
|
||||
@ -1,129 +1,121 @@
|
||||
// this file is duplicated in `backend/src/config/links.js` and `webapp/constants/links.js` and replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/constants/
|
||||
|
||||
import { defaultInternalPagesSettings } from '~/components/utils/InternalPages.js'
|
||||
import { defaultPageParamsPages } from '~/components/utils/InternalPages.js'
|
||||
|
||||
const ORGANIZATION = {
|
||||
...defaultInternalPagesSettings.ORGANIZATION,
|
||||
// Wolle name: 'organization',
|
||||
|
||||
// Wolle
|
||||
externalLink: 'https://ocelot.social',
|
||||
// externalLink: null, // if string is defined and not empty it's dominating
|
||||
const ORGANIZATION = defaultPageParamsPages.ORGANIZATION.assign({
|
||||
// Wolle externalLink: 'https://ocelot.social',
|
||||
//
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/organization', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
...defaultInternalPagesSettings.ORGANIZATION.internalPage,
|
||||
|
||||
footerIdent: 'site.made', // localized string identifier
|
||||
headTitleIdent: 'site.made', // localized string identifier
|
||||
// Wolle headlineIdent: 'site.made', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
// Wolle headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
const DONATE = {
|
||||
...defaultInternalPagesSettings.DONATE,
|
||||
// Wolle name: 'donate',
|
||||
|
||||
})
|
||||
const DONATE = defaultPageParamsPages.DONATE.assign({
|
||||
// Wolle externalLink: 'https://ocelot-social.herokuapp.com/donations', // we use 'ocelot-social.herokuapp.com' at the moment, because redirections of 'ocelot.social' subpages are not working correctly
|
||||
externalLink: '', // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/donate', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.donate', // localized string identifier
|
||||
headTitleIdent: 'site.donate', // localized string identifier
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
const IMPRINT = {
|
||||
...defaultInternalPagesSettings.IMPRINT,
|
||||
// Wolle name: 'imprint',
|
||||
|
||||
})
|
||||
const IMPRINT = defaultPageParamsPages.IMPRINT.assign({
|
||||
// Wolle externalLink: 'https://ocelot-social.herokuapp.com/imprint', // we use 'ocelot-social.herokuapp.com' at the moment, because redirections of 'ocelot.social' subpages are not working correctly
|
||||
externalLink: '', // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/imprint', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.imprint', // localized string identifier
|
||||
headTitleIdent: 'site.imprint', // localized string identifier
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
const TERMS_AND_CONDITIONS = {
|
||||
...defaultInternalPagesSettings.TERMS_AND_CONDITIONS,
|
||||
// Wolle name: 'terms-and-conditions',
|
||||
|
||||
})
|
||||
const TERMS_AND_CONDITIONS = defaultPageParamsPages.TERMS_AND_CONDITIONS.assign({
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/terms-and-conditions', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.termsAndConditions', // localized string identifier
|
||||
headTitleIdent: 'site.termsAndConditions', // localized string identifier
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
const CODE_OF_CONDUCT = {
|
||||
...defaultInternalPagesSettings.CODE_OF_CONDUCT,
|
||||
// Wolle name: 'code-of-conduct',
|
||||
|
||||
})
|
||||
const CODE_OF_CONDUCT = defaultPageParamsPages.CODE_OF_CONDUCT.assign({
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/code-of-conduct', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.code-of-conduct', // localized string identifier
|
||||
headTitleIdent: 'site.code-of-conduct', // localized string identifier
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
const DATA_PRIVACY = {
|
||||
...defaultInternalPagesSettings.DATA_PRIVACY,
|
||||
// Wolle name: 'data-privacy',
|
||||
|
||||
})
|
||||
const DATA_PRIVACY = defaultPageParamsPages.DATA_PRIVACY.assign({
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/data-privacy', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.data-privacy', // localized string identifier
|
||||
headTitleIdent: 'site.data-privacy', // localized string identifier
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
const FAQ = {
|
||||
...defaultInternalPagesSettings.FAQ,
|
||||
// Wolle name: 'faq',
|
||||
|
||||
})
|
||||
const FAQ = defaultPageParamsPages.FAQ.assign({
|
||||
// Wolle externalLink: 'https://ocelot.social',
|
||||
externalLink: null, // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
// Wolle internalLink: '/faq', // static, don't change! internal page in case no external is defined
|
||||
internalPage: {
|
||||
footerIdent: 'site.faq', // localized string identifier
|
||||
headTitleIdent: 'site.faq', // localized string identifier
|
||||
// Wolle headlineIdent: null, // on null default is used, on empty string it's hidden
|
||||
headlineIdent: null, // localized string identifier. on null it's hidden, on empty string default is used
|
||||
// Wolle headlineIdent: '', // on null default is used, on empty string it's hidden
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
}
|
||||
})
|
||||
const SUPPORT = defaultPageParamsPages.SUPPORT.assign({
|
||||
// ATTENTION: has to be defined even for internal page with full URL as example like 'https://staging.ocelot.social/support', because it is used in e-mails as well!
|
||||
// Wolle externalLink: 'https://ocelot.social',
|
||||
externalLink: 'http://localhost:3000/support', // if string is defined and not empty it's dominating
|
||||
|
||||
// in case internal page content is here 'webapp/locales/html/'
|
||||
internalPage: {
|
||||
footerIdent: 'site.support', // localized string identifier
|
||||
headTitleIdent: 'site.support', // localized string identifier
|
||||
// Wolle headlineIdent: '', // on null default is used, on empty string it's hidden
|
||||
headlineIdent: '', // localized string identifier. on null it's hidden, on empty string default is used
|
||||
hasContainer: true,
|
||||
hasBaseCard: true,
|
||||
hasLoginInHeader: true,
|
||||
},
|
||||
})
|
||||
|
||||
export default {
|
||||
// Wolle LANDING_PAGE: '/login', // examples: '/login', '/registration', '/organization', or external 'https://ocelot.social'
|
||||
@ -131,8 +123,6 @@ export default {
|
||||
|
||||
// you can find and store templates for 👇🏼 at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/
|
||||
|
||||
SUPPORT: 'https://ocelot.social', // example for internal support page: 'https://staging.ocelot.social/support'. set a full URL please, because it is used in e-mails as well!
|
||||
|
||||
ORGANIZATION,
|
||||
DONATE,
|
||||
IMPRINT,
|
||||
@ -140,6 +130,7 @@ export default {
|
||||
CODE_OF_CONDUCT,
|
||||
DATA_PRIVACY,
|
||||
FAQ,
|
||||
SUPPORT,
|
||||
|
||||
FOOTER_LINK_LIST: [
|
||||
ORGANIZATION,
|
||||
@ -147,9 +138,8 @@ export default {
|
||||
CODE_OF_CONDUCT,
|
||||
DATA_PRIVACY,
|
||||
FAQ,
|
||||
// DONATE,
|
||||
// Wolle
|
||||
DONATE,
|
||||
IMPRINT,
|
||||
// SUPPORT,
|
||||
],
|
||||
}
|
||||
|
||||
@ -10,10 +10,7 @@
|
||||
</a>
|
||||
</ds-flex-item>
|
||||
<ds-flex-item width="20%" style="flex-grow: 0">
|
||||
<div
|
||||
class="main-navigation-right"
|
||||
style="flex-basis: auto"
|
||||
>
|
||||
<div class="main-navigation-right" style="flex-basis: auto">
|
||||
<locale-switch class="topbar-locale-switch" placement="top" offset="8" />
|
||||
<template v-if="!isLoggedIn">
|
||||
<client-only>
|
||||
@ -65,26 +62,6 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
// Wolle .topbar-locale-switch {
|
||||
// display: flex;
|
||||
// margin-right: $space-xx-small;
|
||||
// align-self: center;
|
||||
// display: inline-flex;
|
||||
// }
|
||||
// .main-container {
|
||||
// padding-top: 6rem;
|
||||
// padding-bottom: 5rem;
|
||||
// }
|
||||
|
||||
// .main-navigation-flex {
|
||||
// align-items: center;
|
||||
// }
|
||||
|
||||
// .main-navigation {
|
||||
// a {
|
||||
// color: $text-color-soft;
|
||||
// }
|
||||
// }
|
||||
.main-navigation-right {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
@ -92,22 +69,4 @@ export default {
|
||||
.main-navigation-right .desktop-view {
|
||||
float: right;
|
||||
}
|
||||
// Wolle .ds-flex-item.mobile-hamburger-menu {
|
||||
// margin-left: auto;
|
||||
// text-align: right;
|
||||
// }
|
||||
// @media only screen and (min-width: 730px) {
|
||||
// .mobile-hamburger-menu {
|
||||
// display: none;
|
||||
// }
|
||||
// }
|
||||
// @media only screen and (max-width: 730px) {
|
||||
// #nav-search-box,
|
||||
// .main-navigation-right {
|
||||
// margin: 10px 0px;
|
||||
// }
|
||||
// .hide-mobile-menu {
|
||||
// display: none;
|
||||
// }
|
||||
// }
|
||||
</style>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Ich bin der Inhalt vom Verhaltenskodex.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Das hier wäre der Inhalt der Datenschutzbestimmungen.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Hier steht was zu den Spenden.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Hier stehen die FAQs.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Ich bin das Impressum.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Ich bin der Inhalt vom Support.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Ich bin der Inhalt der Seite "Nutzungsbedingungen".</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>I am the content of the code of conduct.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>This would be our data privacy section.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Here's what it says about donations.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>Here are the FAQs.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>I am the imprint.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>I am the content of the support.</p>
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
<!-- this file is replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/locales/html/ -->
|
||||
<!-- you can find and store templates at https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/templates/ -->
|
||||
|
||||
<br>
|
||||
<p>I am the content of the page "Terms And Conditions".<p>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.code-of-conduct') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.codeOfConduct')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.CODE_OF_CONDUCT" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.code-of-conduct'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.data-privacy') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.dataPrivacy')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.DATA_PRIVACY" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.data-privacy'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.donate') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.donate')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.DONATE" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.donate'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.faq') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.faq')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.FAQ" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.faq'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.imprint') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.imprint')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.IMPRINT" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.imprint'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,15 +1,5 @@
|
||||
<template>
|
||||
<internal-page
|
||||
:pageParams="links.ORGANIZATION"
|
||||
/>
|
||||
<!-- Wolle <div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.made') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.organization')" />
|
||||
</ds-container>
|
||||
</div> -->
|
||||
<internal-page :pageParams="links.ORGANIZATION" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@ -22,13 +12,7 @@ export default {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
// Wolle console.log(links.ORGANIZATION)
|
||||
return { links }
|
||||
},
|
||||
// Wolle head() {
|
||||
// return {
|
||||
// title: this.$t('site.made'),
|
||||
// }
|
||||
// },
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.support') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.support')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.SUPPORT" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.support'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -1,21 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ds-space margin="small">
|
||||
<ds-heading tag="h2">{{ $t('site.termsAndConditions') }}</ds-heading>
|
||||
</ds-space>
|
||||
<ds-container>
|
||||
<div v-html="$t('html.termsAndConditions')" />
|
||||
</ds-container>
|
||||
</div>
|
||||
<internal-page :pageParams="links.TERMS_AND_CONDITIONS" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import links from '~/constants/links.js'
|
||||
import InternalPage from '~/components/_new/features/InternalPage/InternalPage.vue'
|
||||
|
||||
export default {
|
||||
layout: 'basic',
|
||||
head() {
|
||||
return {
|
||||
title: this.$t('site.termsAndConditions'),
|
||||
}
|
||||
components: {
|
||||
InternalPage,
|
||||
},
|
||||
data() {
|
||||
return { links }
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user