Working on page pre-rendering
This commit is contained in:
@@ -496,16 +496,18 @@
|
||||
<script>
|
||||
import { computed } from 'vue'
|
||||
import { useAuthStore } from '../stores/auth'
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
import SeoMeta from '../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: {OpenFormFooter},
|
||||
layout: 'default',
|
||||
mixins: [SeoMeta],
|
||||
|
||||
setup () {
|
||||
const authStore = useAuthStore()
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
|
||||
return {
|
||||
authenticated : computed(() => authStore.check),
|
||||
}
|
||||
|
||||
@@ -23,15 +23,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '../../../components/pages/OpenFormFooter.vue'
|
||||
import SeoMeta from '../../../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
OpenFormFooter
|
||||
},
|
||||
|
||||
mixins: [SeoMeta],
|
||||
middleware: 'guest',
|
||||
|
||||
data: () => ({
|
||||
|
||||
@@ -33,15 +33,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '../../../components/pages/OpenFormFooter.vue'
|
||||
import SeoMeta from '../../../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
OpenFormFooter
|
||||
},
|
||||
|
||||
mixins: [SeoMeta],
|
||||
middleware: 'guest',
|
||||
|
||||
data: () => ({
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="mt-6 flex flex-col">
|
||||
<div class="w-full md:max-w-3xl md:mx-auto px-4 md:pt-16 pb-10">
|
||||
<h1 class="sm:text-5xl mb-4">
|
||||
OpnForm Discount for Students, Academics and NGOs
|
||||
</h1>
|
||||
<notion-page page-id="c65a499d39834e0b8978556a8d7af867" />
|
||||
</div>
|
||||
</div>
|
||||
<open-form-footer />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '../../components/pages/OpenFormFooter.vue'
|
||||
|
||||
export default {
|
||||
components: { OpenFormFooter },
|
||||
layout: 'default',
|
||||
|
||||
props: {
|
||||
metaTitle: { type: String, default: 'OpnForm Discount for Students, Academics and NGOs' },
|
||||
metaDescription: { type: String, default: 'If you are a student, an academic of if you work for a NGO we are happy to offer you a 40% discount on your OpnForm Pro subscription.' }
|
||||
},
|
||||
|
||||
data: () => ({
|
||||
}),
|
||||
|
||||
computed: {},
|
||||
|
||||
mounted () {
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -31,7 +31,9 @@ import {initForm} from "~/composables/forms/initForm.js"
|
||||
import {loadAllTemplates} from "~/stores/templates.js";
|
||||
import {fetchAllWorkspaces} from "~/stores/workspaces.js";
|
||||
|
||||
// middleware: 'guest',
|
||||
definePageMeta({
|
||||
middleware: "auth"
|
||||
})
|
||||
|
||||
const templatesStore = useTemplatesStore()
|
||||
const workingFormStore = useWorkingFormStore()
|
||||
|
||||
@@ -26,6 +26,10 @@ import {initForm} from "~/composables/forms/initForm.js"
|
||||
import FormEditor from "~/components/open/forms/components/FormEditor.vue"
|
||||
import CreateFormBaseModal from '../../../components/pages/forms/create/CreateFormBaseModal.vue'
|
||||
|
||||
definePageMeta({
|
||||
middleware: "auth"
|
||||
})
|
||||
|
||||
// metaTitle: 'Create a new Form',
|
||||
|
||||
// beforeRouteLeave (to, from, next) {
|
||||
|
||||
@@ -118,7 +118,6 @@ import {useFormsStore} from '../stores/forms'
|
||||
import {useWorkspacesStore} from '../stores/workspaces'
|
||||
import Fuse from 'fuse.js'
|
||||
import TextInput from '../components/forms/TextInput.vue'
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
import ExtraMenu from '../components/pages/forms/show/ExtraMenu.vue'
|
||||
import {refDebounced} from "@vueuse/core"
|
||||
|
||||
|
||||
@@ -189,18 +189,21 @@ import Features from '~/components/pages/welcome/Features.vue'
|
||||
import MoreFeatures from '~/components/pages/welcome/MoreFeatures.vue'
|
||||
import PricingTable from '../components/pages/pricing/PricingTable.vue'
|
||||
import AiFeature from '~/components/pages/welcome/AiFeature.vue'
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
import Testimonials from '../components/pages/welcome/Testimonials.vue'
|
||||
import TemplatesSlider from '../components/pages/welcome/TemplatesSlider.vue'
|
||||
import SeoMeta from '../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: {Testimonials, OpenFormFooter, Features, MoreFeatures, PricingTable, AiFeature, TemplatesSlider},
|
||||
components: {Testimonials, Features, MoreFeatures, PricingTable, AiFeature, TemplatesSlider},
|
||||
mixins: [SeoMeta],
|
||||
layout: 'default',
|
||||
|
||||
setup() {
|
||||
const authStore = useAuthStore()
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
|
||||
return {
|
||||
authenticated: computed(() => authStore.check),
|
||||
config: useAppConfig()
|
||||
|
||||
@@ -13,10 +13,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
|
||||
export default {
|
||||
components: { OpenFormFooter },
|
||||
layout: 'default',
|
||||
|
||||
props: {
|
||||
|
||||
@@ -53,12 +53,10 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '~/components/pages/OpenFormFooter.vue'
|
||||
import LoginForm from "~/components/pages/auth/components/LoginForm.vue"
|
||||
|
||||
export default {
|
||||
components: {
|
||||
OpenFormFooter,
|
||||
LoginForm
|
||||
},
|
||||
|
||||
@@ -66,6 +64,9 @@ export default {
|
||||
definePageMeta({
|
||||
middleware: "guest"
|
||||
})
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
},
|
||||
|
||||
data: () => ({
|
||||
|
||||
@@ -238,27 +238,26 @@
|
||||
<script>
|
||||
import { computed } from 'vue'
|
||||
import { useAuthStore } from '../stores/auth';
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
import PricingTable from '../components/pages/pricing/PricingTable.vue'
|
||||
import SeoMeta from '../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: {OpenFormFooter, PricingTable},
|
||||
mixins: [SeoMeta],
|
||||
components: {PricingTable},
|
||||
layout: 'default',
|
||||
|
||||
props: {},
|
||||
|
||||
beforeRouteEnter(to, from, next) {
|
||||
if (!this.$config.paid_plans_enabled) { // If no paid plan so no need this page
|
||||
next({name: 'home'})
|
||||
return
|
||||
}
|
||||
next()
|
||||
},
|
||||
|
||||
setup () {
|
||||
definePageMeta({
|
||||
middleware: [
|
||||
function (to, from) {
|
||||
// Custom inline middleware
|
||||
if (!useAppConfig().paid_plans_enabled) { // If no paid plan so no need this page
|
||||
return navigateTo('/', { redirectCode: 301 })
|
||||
}
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
const authStore = useAuthStore()
|
||||
|
||||
return {
|
||||
user : computed(() => authStore.user),
|
||||
authenticated : computed(() => authStore.check)
|
||||
|
||||
@@ -13,13 +13,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
import SeoMeta from '../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: { OpenFormFooter},
|
||||
layout: 'default',
|
||||
mixins: [SeoMeta],
|
||||
|
||||
data: () => ({
|
||||
metaTitle: 'Privacy Policy',
|
||||
|
||||
@@ -54,17 +54,23 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '~/components/pages/OpenFormFooter.vue'
|
||||
import RegisterForm from "~/components/pages/auth/components/RegisterForm.vue"
|
||||
import AppSumoRegister from "~/components/vendor/appsumo/AppSumoRegister.vue"
|
||||
|
||||
export default {
|
||||
components: {
|
||||
AppSumoRegister,
|
||||
OpenFormFooter,
|
||||
RegisterForm
|
||||
},
|
||||
|
||||
setup() {
|
||||
definePageMeta({
|
||||
middleware: "guest"
|
||||
})
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
},
|
||||
|
||||
middleware: 'guest',
|
||||
|
||||
|
||||
@@ -18,12 +18,9 @@
|
||||
<script>
|
||||
import { computed } from 'vue'
|
||||
import { useAuthStore } from '../../stores/auth'
|
||||
import OpenFormFooter from '../../components/pages/OpenFormFooter.vue'
|
||||
import SeoMeta from '../../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: { OpenFormFooter },
|
||||
mixins: [SeoMeta],
|
||||
layout: 'default',
|
||||
middleware: 'auth',
|
||||
|
||||
|
||||
@@ -201,6 +201,10 @@ import Breadcrumb from '~/components/global/Breadcrumb.vue'
|
||||
import SingleTemplate from '../../components/pages/templates/SingleTemplate.vue'
|
||||
import {fetchTemplate} from "~/stores/templates.js";
|
||||
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
|
||||
const authStore = useAuthStore()
|
||||
const templatesStore = useTemplatesStore()
|
||||
|
||||
|
||||
@@ -22,6 +22,10 @@
|
||||
<script setup>
|
||||
import {loadAllTemplates} from "~/stores/templates.js";
|
||||
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
|
||||
// props: {
|
||||
// metaTitle: { type: String, default: 'Templates' },
|
||||
// metaDescription: { type: String, default: 'Our collection of beautiful templates to create your own forms!' }
|
||||
|
||||
@@ -42,10 +42,13 @@
|
||||
|
||||
<script setup>
|
||||
import {computed} from 'vue'
|
||||
import OpenFormFooter from '../../../components/pages/OpenFormFooter.vue'
|
||||
import Breadcrumb from '~/components/global/Breadcrumb.vue'
|
||||
import {loadAllTemplates} from "~/stores/templates.js";
|
||||
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
|
||||
const route = useRoute()
|
||||
const authStore = useAuthStore()
|
||||
const templatesStore = useTemplatesStore()
|
||||
|
||||
@@ -13,17 +13,15 @@
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<templates-list :only-my="true" />
|
||||
<!-- <templates-list :only-my="true" />-->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TemplatesList from '../../components/pages/templates/TemplatesList.vue'
|
||||
import SeoMeta from '../../mixins/seo-meta.js'
|
||||
|
||||
export default {
|
||||
components: { TemplatesList },
|
||||
mixins: [SeoMeta],
|
||||
middleware: 'auth',
|
||||
|
||||
props: {
|
||||
|
||||
@@ -46,6 +46,10 @@ import OpenFormFooter from '../../../components/pages/OpenFormFooter.vue'
|
||||
import Breadcrumb from '~/components/global/Breadcrumb.vue'
|
||||
import {loadAllTemplates} from "~/stores/templates.js";
|
||||
|
||||
defineRouteRules({
|
||||
prerender: true
|
||||
})
|
||||
|
||||
const route = useRoute()
|
||||
const authStore = useAuthStore()
|
||||
const templatesStore = useTemplatesStore()
|
||||
|
||||
@@ -13,10 +13,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OpenFormFooter from '../components/pages/OpenFormFooter.vue'
|
||||
|
||||
export default {
|
||||
components: { OpenFormFooter },
|
||||
layout: 'default',
|
||||
|
||||
data: () => ({
|
||||
|
||||
Reference in New Issue
Block a user