Merge branch 'main' of https://github.com/JhumanJ/OpnForm
This commit is contained in:
commit
d0a7c4d2c3
|
@ -77,16 +77,22 @@ class FormResource extends JsonResource
|
||||||
return [
|
return [
|
||||||
'id' => $this->id,
|
'id' => $this->id,
|
||||||
'title' => $this->title,
|
'title' => $this->title,
|
||||||
|
'description' => $this->description,
|
||||||
'slug' => $this->slug,
|
'slug' => $this->slug,
|
||||||
'custom_code' => $this->custom_code,
|
'custom_code' => $this->custom_code,
|
||||||
'dark_mode' => $this->dark_mode,
|
'dark_mode' => $this->dark_mode,
|
||||||
'transparent_background' => $this->transparent_background,
|
'transparent_background' => $this->transparent_background,
|
||||||
'color' => $this->color,
|
'color' => $this->color,
|
||||||
|
'theme' => $this->theme,
|
||||||
'is_password_protected' => true,
|
'is_password_protected' => true,
|
||||||
'has_password' => $this->has_password,
|
'has_password' => $this->has_password,
|
||||||
'width' => 'centered',
|
'width' => 'centered',
|
||||||
'no_branding' => $this->no_branding,
|
'no_branding' => $this->no_branding,
|
||||||
'properties' => []
|
'properties' => [],
|
||||||
|
'logo_picture' => $this->logo_picture,
|
||||||
|
'seo_meta' => $this->seo_meta,
|
||||||
|
'cover_picture' => $this->cover_picture,
|
||||||
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<div v-if="form" class="open-complete-form">
|
<div v-if="form" class="open-complete-form">
|
||||||
<h1 v-if="!isHideTitle" class="mb-4 px-2" :class="{'mt-4':isEmbedPopup}" v-text="form.title" />
|
<h1 v-if="!isHideTitle" class="mb-4 px-2" :class="{'mt-4':isEmbedPopup}" v-text="form.title" />
|
||||||
|
<div v-if="form.description" v-html="form.description"
|
||||||
|
class="form-description mb-4 text-gray-700 dark:text-gray-300 whitespace-pre-wrap px-2"/>
|
||||||
|
|
||||||
<div v-if="isPublicFormPage && form.is_password_protected">
|
<div v-if="isPublicFormPage && form.is_password_protected">
|
||||||
<p class="form-description mb-4 text-gray-700 dark:text-gray-300 px-2">
|
<p class="form-description mb-4 text-gray-700 dark:text-gray-300 px-2">
|
||||||
|
@ -8,13 +10,13 @@
|
||||||
</p>
|
</p>
|
||||||
<div class="form-group flex flex-wrap w-full">
|
<div class="form-group flex flex-wrap w-full">
|
||||||
<div class="relative mb-3 w-full px-2">
|
<div class="relative mb-3 w-full px-2">
|
||||||
<text-input :form="passwordForm" name="password" native-type="password" label="Password" />
|
<text-input :theme="theme" :form="passwordForm" name="password" native-type="password" label="Password" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex flex-wrap justify-center w-full text-center">
|
<div class="flex flex-wrap justify-center w-full text-center">
|
||||||
<v-button @click="passwordEntered">
|
<open-form-button :theme="theme" :color="form.color" class="my-4" @click="passwordEntered">
|
||||||
Submit
|
Submit
|
||||||
</v-button>
|
</open-form-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -62,8 +64,6 @@
|
||||||
mode="out-in"
|
mode="out-in"
|
||||||
>
|
>
|
||||||
<div v-if="!submitted" key="form">
|
<div v-if="!submitted" key="form">
|
||||||
<div v-if="form.description" v-html="form.description"
|
|
||||||
class="form-description mb-4 text-gray-700 dark:text-gray-300 whitespace-pre-wrap px-2"/>
|
|
||||||
<open-form v-if="form"
|
<open-form v-if="form"
|
||||||
:form="form"
|
:form="form"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|
|
@ -24,7 +24,25 @@
|
||||||
</svg>
|
</svg>
|
||||||
</v-button>
|
</v-button>
|
||||||
</template>
|
</template>
|
||||||
<a v-if="isMainPage && user" v-track.view_form_click="{form_id:form.id, form_slug:form.slug}" :href="form.share_url"
|
<span v-if="form.visibility === 'draft'"
|
||||||
|
class="block px-4 py-2 text-md text-gray-700 cursor-pointer dark:text-white hover:bg-gray-100 hover:text-gray-900 dark:text-gray-100 dark:hover:text-white dark:hover:bg-gray-600 flex items-center"
|
||||||
|
@click="showDraftFormWarningNotification"
|
||||||
|
>
|
||||||
|
<svg class="w-4 h-4 mr-2" viewBox="0 0 24 24" fill="none"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
>
|
||||||
|
<path d="M1 12C1 12 5 4 12 4C19 4 23 12 23 12C23 12 19 20 12 20C5 20 1 12 1 12Z"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
d="M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
View form
|
||||||
|
</span>
|
||||||
|
|
||||||
|
<a v-else-if="isMainPage && user" v-track.view_form_click="{form_id:form.id, form_slug:form.slug}" :href="form.share_url"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
class="block px-4 py-2 text-md text-gray-700 dark:text-white hover:bg-gray-100 hover:text-gray-900 dark:text-gray-100 dark:hover:text-white dark:hover:bg-gray-600 flex items-center"
|
class="block px-4 py-2 text-md text-gray-700 dark:text-white hover:bg-gray-100 hover:text-gray-900 dark:text-gray-100 dark:hover:text-white dark:hover:bg-gray-600 flex items-center"
|
||||||
>
|
>
|
||||||
|
@ -133,7 +151,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</modal>
|
</modal>
|
||||||
|
|
||||||
<form-template-modal v-if="!isMainPage && user" :form="form" :show="showFormTemplateModal" @close="showFormTemplateModal=false" />
|
<form-template-modal v-if="!isMainPage && user" :form="form" :show="showFormTemplateModal" @close="showFormTemplateModal=false" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -185,4 +202,8 @@ const deleteForm = () => {
|
||||||
loadingDelete.value = false
|
loadingDelete.value = false
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const showDraftFormWarningNotification = () => {
|
||||||
|
useAlert().warning('This form is currently in Draft mode and is not publicly accessible, You can change the form status on the edit form page.')
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -22,7 +22,22 @@
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<extra-menu class="mr-2" :form="form"/>
|
<extra-menu class="mr-2" :form="form"/>
|
||||||
|
|
||||||
<v-button v-track.view_form_click="{form_id:form.id, form_slug:form.slug}" target="_blank"
|
<v-button v-if="form.visibility === 'draft'" color="white"
|
||||||
|
class="mr-2 text-blue-600 hidden sm:block" @click="showDraftFormWarningNotification"
|
||||||
|
>
|
||||||
|
<svg class="w-6 h-6 inline -mt-1" viewBox="0 0 24 24" fill="none"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
>
|
||||||
|
<path d="M1 12C1 12 5 4 12 4C19 4 23 12 23 12C23 12 19 20 12 20C5 20 1 12 1 12Z"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
d="M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</v-button>
|
||||||
|
<v-button v-else v-track.view_form_click="{form_id:form.id, form_slug:form.slug}" target="_blank"
|
||||||
:href="form.share_url" color="white"
|
:href="form.share_url" color="white"
|
||||||
class="mr-2 text-blue-600 hidden sm:block"
|
class="mr-2 text-blue-600 hidden sm:block"
|
||||||
>
|
>
|
||||||
|
@ -196,4 +211,8 @@ watch(() => form?.value?.id, (id) => {
|
||||||
const goBack = () => {
|
const goBack = () => {
|
||||||
useRouter().push({name: 'home'})
|
useRouter().push({name: 'home'})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const showDraftFormWarningNotification = () => {
|
||||||
|
useAlert().warning('This form is currently in Draft mode and is not publicly accessible, You can change the form status on the edit form page.')
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
Loading…
Reference in New Issue