From e996b189b4c47cd685f36dbe50f1a27a0d20081d Mon Sep 17 00:00:00 2001 From: f4ilji Date: Wed, 11 Dec 2024 15:41:13 +0500 Subject: [PATCH] Changes --- .../ItemForm/CustomForm/FormBuilderItem.php | 30 +++++++++++++ package-lock.json | 11 ++++- package.json | 3 +- .../BaseBuilderUi/BaseBreadcrumbs.vue | 13 +++--- .../BaseBuilderUi/FormBlocks/CaptchaBlock.vue | 41 +++++++++++++++++ .../FormBlocks/PersonalDataBlock.vue | 41 +++++++++++++++++ .../BaseBuilderUi/FormBuilder.vue | 19 ++++---- .../Breadcrumbs/BreadcrumbsWrapper.vue | 40 +++++++++++++++++ ...itionalEducationProgramItemBreadcrumbs.vue | 21 +++++---- ...itionalEducationProgramListBreadcrumbs.vue | 21 +++++---- .../Departments/DepartmentItemBreadcrumbs.vue | 21 +++++---- .../Departments/DepartmentListBreadcrumbs.vue | 22 +++++----- .../Divisions/DivisionItemBreadcrumbs.vue | 22 +++++----- .../Divisions/DivisionListBreadcrumbs.vue | 21 +++++---- .../BuilderUi/Events/EventItemBreadcrumbs.vue | 21 +++++---- .../BuilderUi/Events/EventListBreadcrumbs.vue | 22 +++++----- .../Faculties/FacultyItemBreadcrumbs.vue | 21 +++++---- .../Faculties/FacultyListBreadcrumbs.vue | 21 +++++---- .../BuilderUi/Pages/FormBuilder.vue | 5 ++- .../BuilderUi/Pages/PageBreadcrumbs.vue | 13 +++--- .../BuilderUi/Persons/PersonBreadcrumbs.vue | 32 +++++++------- .../BuilderUi/Posts/NewsBreadcrumbs.vue | 13 +++--- .../BuilderUi/Posts/PostBreadcrumbs.vue | 44 +++++++++---------- .../Programs/ProgramItemBreadcrumbs.vue | 21 +++++---- .../Programs/ProgramListBreadcrumbs.vue | 21 +++++---- resources/js/Pages/Client/Posts/Show.vue | 1 - resources/js/app.js | 5 +++ 27 files changed, 361 insertions(+), 205 deletions(-) create mode 100644 resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/CaptchaBlock.vue create mode 100644 resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/PersonalDataBlock.vue create mode 100644 resources/js/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue diff --git a/app/Filament/Components/Forms/ItemForm/CustomForm/FormBuilderItem.php b/app/Filament/Components/Forms/ItemForm/CustomForm/FormBuilderItem.php index 6ce0d15..12ccd5a 100644 --- a/app/Filament/Components/Forms/ItemForm/CustomForm/FormBuilderItem.php +++ b/app/Filament/Components/Forms/ItemForm/CustomForm/FormBuilderItem.php @@ -237,6 +237,36 @@ class FormBuilderItem ]), ]) ->maxItems(1), + Builder\Block::make('captcha') + ->label('reCaptcha') + ->schema([ + Forms\Components\Hidden::make('name_field')->required()->default(Str::slug('reCaptcha') . Carbon::now()->timestamp), + Section::make('Настройка') + ->collapsed() + ->statePath('rules') + ->schema([ + RuleRequiredComponent::getComponent()->default(true), + ]), + ]), + Builder\Block::make('personal_data') + ->label('Соглашение на обработку персональных данных') + ->schema([ + TextInput::make('title_field') + ->label('Заголовок поля') + ->live(onBlur: true) + ->default('Соглашение на обработку персональных данных') + ->afterStateUpdated(function (string $operation, string $state, Forms\Set $set) { + $set('name_field', Str::slug($state) . Carbon::now()->timestamp ); + }), + Forms\Components\Hidden::make('name_field')->required()->default(Str::slug('Соглашение на обработку персональных данных') . Carbon::now()->timestamp), + + Section::make('Настройка') + ->collapsed() + ->statePath('rules') + ->schema([ + RuleRequiredComponent::getComponent()->default(true), + ]), + ]), ]) ->label('') ->addActionLabel('Добавить поле') diff --git a/package-lock.json b/package-lock.json index 72c6e70..8b23941 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,8 @@ "fslightbox": "^3.4.1", "fslightbox-vue": "^2.1.3", "preline": "^1.9.0", - "slugify": "^1.6.6" + "slugify": "^1.6.6", + "vue3-yandex-smartcaptcha": "^1.0.0" }, "devDependencies": { "@inertiajs/vue3": "^1.0.0", @@ -6191,6 +6192,14 @@ "vue": "3.5.11" } }, + "node_modules/vue3-yandex-smartcaptcha": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vue3-yandex-smartcaptcha/-/vue3-yandex-smartcaptcha-1.0.0.tgz", + "integrity": "sha512-Sn0/UitYHYBzMvEOM0M00wxB/JC2sZ1EfvdKny3MfZGWLLxBJcKLY6NRInTtpyZcNiez1vsshnoX298Qq+fFzg==", + "peerDependencies": { + "vue": "^3.3.8" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", diff --git a/package.json b/package.json index c27c0f1..2453661 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,8 @@ "fslightbox": "^3.4.1", "fslightbox-vue": "^2.1.3", "preline": "^1.9.0", - "slugify": "^1.6.6" + "slugify": "^1.6.6", + "vue3-yandex-smartcaptcha": "^1.0.0" }, "name": "ntspi-reborn", "description": "

\"Laravel

", diff --git a/resources/js/Components/BaseComponents/BaseBuilderUi/BaseBreadcrumbs.vue b/resources/js/Components/BaseComponents/BaseBuilderUi/BaseBreadcrumbs.vue index 9191bb6..b0a59c3 100644 --- a/resources/js/Components/BaseComponents/BaseBuilderUi/BaseBreadcrumbs.vue +++ b/resources/js/Components/BaseComponents/BaseBuilderUi/BaseBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -43,9 +42,8 @@ {{ textLimit(breadcrumbs.page.data.title, 25) }}
  2. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit(breadcrumbs.page.data.title, 25) }}
  2. -
+
@@ -75,10 +73,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "BaseBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/CaptchaBlock.vue b/resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/CaptchaBlock.vue new file mode 100644 index 0000000..c06230f --- /dev/null +++ b/resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/CaptchaBlock.vue @@ -0,0 +1,41 @@ + + + + diff --git a/resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/PersonalDataBlock.vue b/resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/PersonalDataBlock.vue new file mode 100644 index 0000000..cb1f9e9 --- /dev/null +++ b/resources/js/Components/BaseComponents/BaseBuilderUi/FormBlocks/PersonalDataBlock.vue @@ -0,0 +1,41 @@ + + + + diff --git a/resources/js/Components/BaseComponents/BaseBuilderUi/FormBuilder.vue b/resources/js/Components/BaseComponents/BaseBuilderUi/FormBuilder.vue index 912ed4a..2b1e44d 100644 --- a/resources/js/Components/BaseComponents/BaseBuilderUi/FormBuilder.vue +++ b/resources/js/Components/BaseComponents/BaseBuilderUi/FormBuilder.vue @@ -78,15 +78,16 @@ export default { methods: { getComponent(type) { const componentMap = { - text: () => import('@/Components/BuilderUi/Pages/FormBlocks/TextBlock.vue'), - phone: () => import('@/Components/BuilderUi/Pages/FormBlocks/PhoneBlock.vue'), - email: () => import('@/Components/BuilderUi/Pages/FormBlocks/EmailBlock.vue'), - textarea: () => import('@/Components/BuilderUi/Pages/FormBlocks/TextAreaBlock.vue'), - multiple_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/MultipleChoiceBlock.vue'), - single_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/SingleChoiceBlock.vue'), - date: () => import('@/Components/BuilderUi/Pages/FormBlocks/DateBlock.vue'), - additional_education_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/AdditionalEducationalChoiceBlock.vue'), - educational_program_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/EducationalChoiceBlock.vue') + text: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/TextBlock.vue'), + phone: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/PhoneBlock.vue'), + email: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/EmailBlock.vue'), + textarea: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/TextAreaBlock.vue'), + multiple_choice: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/MultipleChoiceBlock.vue'), + single_choice: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/SingleChoiceBlock.vue'), + date: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/DateBlock.vue'), + additional_education_choice: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/AdditionalEducationalChoiceBlock.vue'), + educational_program_choice: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/EducationalChoiceBlock.vue'), + captcha: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/CaptchaBlock.vue') }; return defineAsyncComponent(componentMap[type] || null); }, diff --git a/resources/js/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue b/resources/js/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue new file mode 100644 index 0000000..00dfc34 --- /dev/null +++ b/resources/js/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue @@ -0,0 +1,40 @@ + + + + + \ No newline at end of file diff --git a/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramItemBreadcrumbs.vue b/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramItemBreadcrumbs.vue index 6d1d659..b979623 100644 --- a/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramItemBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramItemBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -54,9 +53,8 @@ {{ additionalEducationTitle }}
  4. -
-
    + +
  1. @@ -84,7 +82,7 @@ {{ additionalEducationTitle }}
  2. -
+
@@ -97,10 +95,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "AdditionalEducationProgramItemBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramListBreadcrumbs.vue b/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramListBreadcrumbs.vue index 844a9f4..e96911f 100644 --- a/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramListBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/AdditionalEducationPrograms/AdditionalEducationProgramListBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -43,9 +42,8 @@ {{ textLimit('Дополнительное образование', 30) }}
  4. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit('Дополнительное образование', 30) }}
  2. -
+
@@ -75,10 +73,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "AdditionalEducationProgramListBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Departments/DepartmentItemBreadcrumbs.vue b/resources/js/Components/BuilderUi/Departments/DepartmentItemBreadcrumbs.vue index 13745f3..cd59855 100644 --- a/resources/js/Components/BuilderUi/Departments/DepartmentItemBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Departments/DepartmentItemBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -65,9 +64,8 @@ {{ departmentTitle }}
  4. -
-
    + +
  1. @@ -106,7 +104,7 @@ {{ departmentTitle }}
  2. -
+
@@ -119,10 +117,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "DepartmentItemBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Departments/DepartmentListBreadcrumbs.vue b/resources/js/Components/BuilderUi/Departments/DepartmentListBreadcrumbs.vue index f85b81b..88bfd54 100644 --- a/resources/js/Components/BuilderUi/Departments/DepartmentListBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Departments/DepartmentListBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -43,9 +42,8 @@ {{ textLimit('Факультеты', 30) }}
  4. -
-
    + +
  1. @@ -62,7 +60,8 @@ {{ textLimit('Факультеты', 30) }}
  2. -
+ +
@@ -75,10 +74,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "FacultyListBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Divisions/DivisionItemBreadcrumbs.vue b/resources/js/Components/BuilderUi/Divisions/DivisionItemBreadcrumbs.vue index 99cac71..acf25e3 100644 --- a/resources/js/Components/BuilderUi/Divisions/DivisionItemBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Divisions/DivisionItemBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -54,9 +53,8 @@ {{ divisionTitle }}
  4. -
-
    + +
  1. @@ -84,7 +82,8 @@ {{ divisionTitle }}
  2. -
+ +
@@ -97,10 +96,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "DivisionItemBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Divisions/DivisionListBreadcrumbs.vue b/resources/js/Components/BuilderUi/Divisions/DivisionListBreadcrumbs.vue index 1741197..c6174d5 100644 --- a/resources/js/Components/BuilderUi/Divisions/DivisionListBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Divisions/DivisionListBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -43,9 +42,8 @@ {{ textLimit('Образовательные программы', 30) }}
  4. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit('Подразделения института', 30) }}
  2. -
+
@@ -75,10 +73,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "DivisionListBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Events/EventItemBreadcrumbs.vue b/resources/js/Components/BuilderUi/Events/EventItemBreadcrumbs.vue index 6805a35..bfa608d 100644 --- a/resources/js/Components/BuilderUi/Events/EventItemBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Events/EventItemBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -54,9 +53,8 @@ {{ eventTitle }}
  4. -
-
    + +
  1. @@ -84,7 +82,7 @@ {{ eventTitle }}
  2. -
+
@@ -97,10 +95,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "EventItemBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Events/EventListBreadcrumbs.vue b/resources/js/Components/BuilderUi/Events/EventListBreadcrumbs.vue index f146e34..c296de9 100644 --- a/resources/js/Components/BuilderUi/Events/EventListBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Events/EventListBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -44,9 +43,8 @@ {{ textLimit('Мероприятия', 30) }}
  4. -
-
    + +
  1. @@ -63,7 +61,8 @@ {{ textLimit('Мероприятия', 30) }}
  2. -
+ +
@@ -76,10 +75,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "EventListBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Faculties/FacultyItemBreadcrumbs.vue b/resources/js/Components/BuilderUi/Faculties/FacultyItemBreadcrumbs.vue index 1dab75e..bce6b5e 100644 --- a/resources/js/Components/BuilderUi/Faculties/FacultyItemBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Faculties/FacultyItemBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -54,9 +53,8 @@ {{ facultyTitle }}
  4. -
-
    + +
  1. @@ -84,7 +82,7 @@ {{ facultyTitle }}
  2. -
+
@@ -97,10 +95,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "FacultyItemBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Faculties/FacultyListBreadcrumbs.vue b/resources/js/Components/BuilderUi/Faculties/FacultyListBreadcrumbs.vue index f85b81b..6dce443 100644 --- a/resources/js/Components/BuilderUi/Faculties/FacultyListBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Faculties/FacultyListBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -43,9 +42,8 @@ {{ textLimit('Факультеты', 30) }}
  4. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit('Факультеты', 30) }}
  2. -
+
@@ -75,10 +73,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "FacultyListBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Pages/FormBuilder.vue b/resources/js/Components/BuilderUi/Pages/FormBuilder.vue index 912ed4a..555d8eb 100644 --- a/resources/js/Components/BuilderUi/Pages/FormBuilder.vue +++ b/resources/js/Components/BuilderUi/Pages/FormBuilder.vue @@ -86,7 +86,10 @@ export default { single_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/SingleChoiceBlock.vue'), date: () => import('@/Components/BuilderUi/Pages/FormBlocks/DateBlock.vue'), additional_education_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/AdditionalEducationalChoiceBlock.vue'), - educational_program_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/EducationalChoiceBlock.vue') + educational_program_choice: () => import('@/Components/BuilderUi/Pages/FormBlocks/EducationalChoiceBlock.vue'), + captcha: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/CaptchaBlock.vue'), + personal_data: () => import('@/Components/BaseComponents/BaseBuilderUi/FormBlocks/PersonalDataBlock.vue'), + }; return defineAsyncComponent(componentMap[type] || null); }, diff --git a/resources/js/Components/BuilderUi/Pages/PageBreadcrumbs.vue b/resources/js/Components/BuilderUi/Pages/PageBreadcrumbs.vue index 7d94339..c9c30b2 100644 --- a/resources/js/Components/BuilderUi/Pages/PageBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Pages/PageBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -43,9 +42,8 @@ {{ textLimit(breadcrumbs.page.data.title, 25) }}
  2. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit(pageTitle, 25) }}
  2. -
+
@@ -75,10 +73,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "PageBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Persons/PersonBreadcrumbs.vue b/resources/js/Components/BuilderUi/Persons/PersonBreadcrumbs.vue index 549400e..eb39ff6 100644 --- a/resources/js/Components/BuilderUi/Persons/PersonBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Persons/PersonBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,15 +23,14 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> {{ textLimit(breadcrumbs.subSection.data.title, 25) }}
  4. -
  5. -
-
    + +
  1. - - + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + +
  2. @@ -69,7 +66,7 @@ {{ personName }}
  3. -
+
@@ -81,10 +78,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "PersonBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Posts/NewsBreadcrumbs.vue b/resources/js/Components/BuilderUi/Posts/NewsBreadcrumbs.vue index b963c16..2f9f43a 100644 --- a/resources/js/Components/BuilderUi/Posts/NewsBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Posts/NewsBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -43,9 +42,8 @@ {{ textLimit('Новости', 30) }}
  2. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit('Новости', 30) }}
  2. -
+
@@ -73,10 +71,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "NewsBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Posts/PostBreadcrumbs.vue b/resources/js/Components/BuilderUi/Posts/PostBreadcrumbs.vue index 758fcd2..a9330a2 100644 --- a/resources/js/Components/BuilderUi/Posts/PostBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Posts/PostBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -43,7 +42,6 @@ {{ textLimit('Новости', 30) }}
  4. -
  5. -
-
    + +
  1. - - + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + +
  2. {{ textLimit('Новости', 30) }} - - + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> + +
  3. @@ -85,7 +82,7 @@ {{ textLimit(postTitle, 60) }}
  4. -
+
@@ -97,10 +94,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "PostBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } @@ -207,4 +205,6 @@ export default { \ No newline at end of file diff --git a/resources/js/Components/BuilderUi/Programs/ProgramItemBreadcrumbs.vue b/resources/js/Components/BuilderUi/Programs/ProgramItemBreadcrumbs.vue index fc673d6..669b58a 100644 --- a/resources/js/Components/BuilderUi/Programs/ProgramItemBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Programs/ProgramItemBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -54,9 +53,8 @@ {{ programTitle }}
  4. -
-
    + +
  1. @@ -84,7 +82,7 @@ {{ programTitle }}
  2. -
+
@@ -97,10 +95,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "ProgramItemBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Components/BuilderUi/Programs/ProgramListBreadcrumbs.vue b/resources/js/Components/BuilderUi/Programs/ProgramListBreadcrumbs.vue index 129bd55..ab8f230 100644 --- a/resources/js/Components/BuilderUi/Programs/ProgramListBreadcrumbs.vue +++ b/resources/js/Components/BuilderUi/Programs/ProgramListBreadcrumbs.vue @@ -3,8 +3,7 @@
-
    +
  1. @@ -13,8 +12,8 @@
  2. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -24,8 +23,8 @@
  3. + width="16" height="16" + viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> @@ -43,9 +42,8 @@ {{ textLimit('Образовательные программы', 30) }}
  4. -
-
    + +
  1. @@ -62,7 +60,7 @@ {{ textLimit('Образовательные программы', 30) }}
  2. -
+
@@ -75,10 +73,11 @@ import {Link} from "@inertiajs/vue3"; import slugify from "slugify"; import BaseIcon from "@/Components/BaseComponents/BaseIcon.vue"; +import BreadcrumbsWrapper from "@/Components/BaseComponents/Breadcrumbs/BreadcrumbsWrapper.vue"; export default { name: "ProgramListBreadcrumbs", - components: {BaseIcon, Link}, + components: {BreadcrumbsWrapper, BaseIcon, Link}, data() { return { } diff --git a/resources/js/Pages/Client/Posts/Show.vue b/resources/js/Pages/Client/Posts/Show.vue index e342e31..08f6231 100644 --- a/resources/js/Pages/Client/Posts/Show.vue +++ b/resources/js/Pages/Client/Posts/Show.vue @@ -81,7 +81,6 @@ export default {
-
diff --git a/resources/js/app.js b/resources/js/app.js index 0918791..8c83f16 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -6,6 +6,7 @@ import { createSSRApp, h } from 'vue'; import { createInertiaApp } from '@inertiajs/vue3'; import { ZiggyVue } from '../../vendor/tightenco/ziggy/dist/vue.m'; import {linksReform} from "@/mixins/LinksReform.js"; +import YSmartCaptcha from 'vue3-yandex-smartcaptcha' // const appName = import.meta.env.VITE_APP_NAME || 'НТГСПИ'; @@ -20,6 +21,10 @@ createInertiaApp({ .use(plugin) .mixin(linksReform) .use(ZiggyVue) + .use(YSmartCaptcha, { + siteKey: "ysc1_jxb2IcslgBuHgHbmmKY1F7Nvb8zYHuAeBgjoaTka6886f893", + lang: "Язык ('ru' | 'en' | 'be' | 'kk' | 'tt' | 'uk' | 'uz' | 'tr')" + }) .mount(el); }, progress: {