mirror of
https://github.com/IT4Change/Ocelot-Social.git
synced 2025-12-13 07:45:56 +00:00
Fulfill the suggestions of Ulf
This commit is contained in:
parent
531f7316fa
commit
e15a071991
@ -1,44 +1,4 @@
|
|||||||
function noStringDefined(string) {
|
import { PageParams } from '~/components/utils/PageParams.js'
|
||||||
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
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export const defaultPageParamsPages = {
|
export const defaultPageParamsPages = {
|
||||||
ORGANIZATION: new PageParams({
|
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