Fulfill the suggestions of Ulf

This commit is contained in:
Wolfgang Huß 2021-08-10 18:48:02 +02:00
parent 531f7316fa
commit e15a071991
2 changed files with 42 additions and 41 deletions

View File

@ -1,44 +1,4 @@
function noStringDefined(string) {
return !string || string === 0
}
class PageParams {
constructor(pageParams) {
this.name = pageParams.name
this.externalLink = pageParams.externalLink
this.internalPage = pageParams.internalPage
}
overwrite(assignPageParams) {
const pageParams = this
if (assignPageParams.name !== undefined) {
pageParams.name = assignPageParams.name
}
if (assignPageParams.externalLink !== undefined) {
pageParams.externalLink = assignPageParams.externalLink
}
if (assignPageParams.internalPage !== undefined) {
pageParams.internalPage = { ...pageParams.internalPage, ...assignPageParams.internalPage }
}
return pageParams
}
get isInternalPage() {
return noStringDefined(this.externalLink)
}
get link() {
return this.isInternalPage ? this.internalPage.pageRoute : this.externalLink
}
redirectToPage(thisComponent) {
if (this.isInternalPage) {
thisComponent.$router.push(this.internalPage.pageRoute)
} else if (typeof window !== 'undefined') {
window.location.href = this.externalLink
}
}
}
import { PageParams } from '~/components/utils/PageParams.js'
export const defaultPageParamsPages = {
ORGANIZATION: new PageParams({

View File

@ -0,0 +1,41 @@
export class PageParams {
constructor(pageParams) {
this.name = pageParams.name
this.externalLink = pageParams.externalLink
this.internalPage = pageParams.internalPage
}
overwrite(assignPageParams) {
const pageParams = this
if (assignPageParams.name !== undefined) {
pageParams.name = assignPageParams.name
}
if (assignPageParams.externalLink !== undefined) {
pageParams.externalLink = assignPageParams.externalLink
}
if (assignPageParams.internalPage !== undefined) {
pageParams.internalPage = { ...pageParams.internalPage, ...assignPageParams.internalPage }
}
return pageParams
}
noStringDefined(string) {
return !string || string.length === 0
}
get isInternalPage() {
return this.noStringDefined(this.externalLink)
}
get link() {
return this.isInternalPage ? this.internalPage.pageRoute : this.externalLink
}
redirectToPage(thisComponent) {
if (this.isInternalPage) {
thisComponent.$router.push(this.internalPage.pageRoute)
} else if (typeof window !== 'undefined') {
window.location.href = this.externalLink
}
}
}