2022-02-23 11:42:11 +00:00
|
|
|
<template>
|
2022-12-20 17:28:51 +00:00
|
|
|
<div :class="landingClass">
|
2023-10-17 11:34:50 +00:00
|
|
|
<AppNews />
|
2024-02-07 12:14:37 +00:00
|
|
|
<AppTopBar :showMenuButton="false" @darkswitch-click="onDarkModeToggle" />
|
2023-10-10 08:38:49 +00:00
|
|
|
<HeroSection />
|
2023-10-12 09:06:27 +00:00
|
|
|
<FeaturesSection />
|
2023-03-24 12:54:11 +00:00
|
|
|
<UsersSection />
|
2024-03-26 21:03:34 +00:00
|
|
|
<ThemeSection />
|
2022-12-20 17:28:51 +00:00
|
|
|
<BlockSection />
|
|
|
|
<TemplateSection />
|
|
|
|
<FooterSection />
|
|
|
|
</div>
|
2022-02-23 11:42:11 +00:00
|
|
|
</template>
|
|
|
|
|
2022-09-06 13:53:29 +00:00
|
|
|
<script>
|
2023-12-26 20:17:49 +00:00
|
|
|
import BlockSection from '@/components/landing/BlockSection.vue';
|
|
|
|
import FeaturesSection from '@/components/landing/FeaturesSection.vue';
|
|
|
|
import FooterSection from '@/components/landing/FooterSection.vue';
|
|
|
|
import HeroSection from '@/components/landing/HeroSection.vue';
|
|
|
|
import TemplateSection from '@/components/landing/TemplateSection.vue';
|
|
|
|
import ThemeSection from '@/components/landing/ThemeSection.vue';
|
|
|
|
import UsersSection from '@/components/landing/UsersSection.vue';
|
2023-10-10 08:38:49 +00:00
|
|
|
import AppNews from '@/layouts/AppNews';
|
|
|
|
import AppTopBar from '@/layouts/AppTopBar.vue';
|
2023-05-25 13:28:03 +00:00
|
|
|
|
2022-02-23 11:42:11 +00:00
|
|
|
export default {
|
2023-10-24 13:01:43 +00:00
|
|
|
setup() {
|
|
|
|
definePageMeta({
|
|
|
|
layout: 'custom'
|
|
|
|
});
|
|
|
|
},
|
2022-09-14 14:26:41 +00:00
|
|
|
props: {
|
|
|
|
theme: {
|
|
|
|
type: String,
|
|
|
|
default: null
|
|
|
|
}
|
|
|
|
},
|
|
|
|
mounted() {
|
|
|
|
let afId = this.$route.query['af_id'];
|
2022-12-09 20:47:50 +00:00
|
|
|
|
2022-09-14 14:26:41 +00:00
|
|
|
if (afId) {
|
|
|
|
let today = new Date();
|
|
|
|
let expire = new Date();
|
2022-12-09 20:47:50 +00:00
|
|
|
|
2022-09-14 14:26:41 +00:00
|
|
|
expire.setTime(today.getTime() + 3600000 * 24 * 7);
|
|
|
|
document.cookie = 'primeaffiliateid=' + afId + ';expires=' + expire.toUTCString() + ';path=/; domain:primefaces.org';
|
|
|
|
}
|
|
|
|
},
|
|
|
|
computed: {
|
|
|
|
landingClass() {
|
2023-10-10 16:58:35 +00:00
|
|
|
return ['landing', { 'layout-dark': this.$appState?.darkTheme, 'layout-light': !this.$appState?.darkTheme, 'layout-news-active': this.$appState?.newsActive }];
|
2022-09-14 14:26:41 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
components: {
|
2023-10-10 08:38:49 +00:00
|
|
|
AppNews,
|
|
|
|
AppTopBar,
|
|
|
|
HeroSection,
|
2022-09-14 14:26:41 +00:00
|
|
|
ThemeSection,
|
|
|
|
BlockSection,
|
|
|
|
TemplateSection,
|
|
|
|
UsersSection,
|
|
|
|
FeaturesSection,
|
2022-12-27 08:12:25 +00:00
|
|
|
FooterSection
|
2022-09-14 14:26:41 +00:00
|
|
|
}
|
|
|
|
};
|
|
|
|
</script>
|