mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
Fulfill the suggestions of Ulf
This commit is contained in:
parent
531f7316fa
commit
e15a071991
@ -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({
|
||||
|
||||
41
webapp/components/utils/PageParams.js
Normal file
41
webapp/components/utils/PageParams.js
Normal 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
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user