@ozdao/prometheus-framework 0.2.48 → 0.2.50
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/auth.server.js +27 -25
- package/dist/auth.server.mjs +27 -25
- package/dist/community.server.js +1 -1
- package/dist/community.server.mjs +1 -1
- package/dist/events.server.js +1 -1
- package/dist/events.server.mjs +1 -1
- package/dist/files.server.js +1 -1
- package/dist/files.server.mjs +1 -1
- package/dist/gallery.server.js +1 -1
- package/dist/gallery.server.mjs +1 -1
- package/dist/index-3981e903.mjs +217 -0
- package/dist/index-4eecfdb9.js +216 -0
- package/dist/main-203b36b6.mjs +13628 -0
- package/dist/main-_b1_i8mt.mjs +13606 -0
- package/dist/main-a7ae4ce5.js +91 -0
- package/dist/main-uiQFxEks.js +91 -0
- package/dist/middlewares.server.js +1 -1
- package/dist/middlewares.server.mjs +1 -1
- package/dist/node_modules/vue-select/dist/vue-select.es.cjs +1 -3
- package/dist/node_modules/vue-select/dist/vue-select.es.js +49 -645
- package/dist/organizations.server.js +13 -27
- package/dist/organizations.server.mjs +13 -27
- package/dist/products.server.js +95 -15
- package/dist/products.server.mjs +95 -15
- package/dist/prometheus-framework/src/components/Button/Button.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Button/Button.vue.js +2 -225
- package/dist/prometheus-framework/src/components/Button/Button.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Button/Button.vue2.js +225 -2
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue.js +61 -2
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue2.js +2 -61
- package/dist/prometheus-framework/src/components/Field/Field.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue.js +2 -76
- package/dist/prometheus-framework/src/components/Field/Field.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue2.js +76 -2
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.js +1 -1
- package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.js +6 -6
- package/dist/prometheus-framework/src/components/Tab/Tab.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Tab/Tab.vue.js +2 -44
- package/dist/prometheus-framework/src/components/Tab/Tab.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Tab/Tab.vue2.js +44 -2
- package/dist/prometheus-framework/src/modules/auth/components/layouts/Auth.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/layouts/Auth.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterCode.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterCode.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.js +44 -32
- package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/store/auth.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/store/auth.js +45 -44
- package/dist/prometheus-framework/src/modules/auth/store/invites.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/store/invites.js +5 -5
- package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/store/globals.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/store/globals.js +22 -21
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue.js +11 -2
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue2.js +2 -11
- package/dist/prometheus-framework/src/modules/orders/components/pages/EditOrder.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/EditOrder.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormOrderDetails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormOrderDetails.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.js +17 -17
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/DepartmentMemberModify.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/DepartmentMemberModify.vue.js +49 -42
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/User.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/User.vue.js +47 -15
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.js +38 -37
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +249 -61
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +78 -45
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js +161 -86
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +52 -54
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +20 -26
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.js +40 -46
- package/dist/prometheus-framework/src/modules/organizations/store/departments.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/store/departments.js +34 -30
- package/dist/prometheus-framework/src/modules/organizations/store/memberships.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/store/memberships.js +30 -28
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +18 -18
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.js +33 -28
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +123 -113
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductsBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductsBackoffice.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/store/products.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/store/products.js +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEvents.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEvents.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/wallet/components/pages/Wallet.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/components/pages/Wallet.vue.js +1 -1
- package/dist/prometheus-framework.cjs.js +1 -1
- package/dist/prometheus-framework.es.js +1 -1
- package/dist/reports.server.js +1 -1
- package/dist/reports.server.mjs +1 -1
- package/dist/style.css +1 -1
- package/dist/web-7p76PGnO.mjs +55 -0
- package/dist/web-c63f0ecc.js +1 -0
- package/dist/web-d8173758.mjs +55 -0
- package/dist/web-dn8vgptQ.js +1 -0
- package/package.json +1 -1
- package/src/components/SelectMulti/SelectMulti.vue +1 -1
- package/src/modules/auth/components/pages/Invite.vue +17 -6
- package/src/modules/auth/controllers/auth.controller.js +24 -16
- package/src/modules/auth/controllers/invites.controller.js +17 -8
- package/src/modules/auth/store/auth.js +8 -1
- package/src/modules/auth/store/invites.js +1 -0
- package/src/modules/globals/store/globals.js +5 -1
- package/src/modules/landing/components/blocks/MapBlock.vue +37 -0
- package/src/modules/landing/components/pages/404.vue +3 -0
- package/src/modules/landing/components/pages/Governance.vue +155 -0
- package/src/modules/landing/components/pages/Home.vue +52 -0
- package/src/modules/landing/components/pages/Hotel.vue +54 -0
- package/src/modules/landing/components/pages/Page.vue +184 -0
- package/src/modules/landing/components/sections/AboutSection.vue +69 -0
- package/src/modules/landing/components/sections/Examples.vue +90 -0
- package/src/modules/landing/components/sections/FeatureSection.vue +80 -0
- package/src/modules/landing/components/sections/GiftSection.vue +63 -0
- package/src/modules/landing/components/sections/HeroSection.vue +74 -0
- package/src/modules/landing/components/sections/HowItWorksSection.vue +88 -0
- package/src/modules/landing/components/sections/HowToBuyWDR.vue +131 -0
- package/src/modules/landing/components/sections/InstagramSection.vue +181 -0
- package/src/modules/landing/components/sections/MapSection.vue +91 -0
- package/src/modules/landing/components/sections/SectionsSection.vue +69 -0
- package/src/modules/landing/components/sections/SliderFeatures.vue +131 -0
- package/src/modules/landing/components/sections/WhatIsWDRSection.vue +116 -0
- package/src/modules/landing/router/landing.js +34 -0
- package/src/modules/middlewares/server/verifySignUp.js +4 -0
- package/src/modules/organizations/components/blocks/CardDepartment.vue +3 -3
- package/src/modules/organizations/components/blocks/DepartmentMemberModify.vue +52 -44
- package/src/modules/organizations/components/blocks/User.vue +42 -10
- package/src/modules/organizations/components/pages/Department.vue +7 -6
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +110 -134
- package/src/modules/organizations/components/pages/Members.vue +85 -26
- package/src/modules/organizations/components/pages/Organization.vue +60 -4
- package/src/modules/organizations/components/sections/MembersAdd.vue +27 -34
- package/src/modules/organizations/components/sections/Organizations.vue +0 -1
- package/src/modules/organizations/controllers/memberships.controller.js +6 -2
- package/src/modules/organizations/controllers/organizations.controller.js +1 -1
- package/src/modules/organizations/models/department.model.js +0 -19
- package/src/modules/organizations/models/membership.model.js +4 -0
- package/src/modules/organizations/organizations.client.js +1 -6
- package/src/modules/organizations/store/departments.js +48 -44
- package/src/modules/organizations/store/memberships.js +11 -3
- package/src/modules/products/components/blocks/CardPosition.vue +2 -2
- package/src/modules/products/components/pages/Product.vue +6 -1
- package/src/modules/products/components/pages/ProductEdit.vue +48 -28
- package/src/modules/products/controllers/products.controller.js +87 -24
- package/src/modules/products/models/product.model.js +16 -1
- package/src/modules/products/store/products.js +1 -1
- package/src/modules/users/components/pages/ProfileOrganizations.vue +41 -7
- package/src/modules/organizations/components/sections/FeedDepartments.vue +0 -64
- package/src/modules/organizations/components/sections/MembersList.vue +0 -85
- package/src/modules/organizations/store/invites.js +0 -93
@@ -0,0 +1,181 @@
|
|
1
|
+
<template>
|
2
|
+
<section id="instagram" class="section">
|
3
|
+
<div ref="root" class="t-center glide">
|
4
|
+
<div class="title">
|
5
|
+
<h2 class="mn-b-big">Отзывы наших покупателей</h2>
|
6
|
+
</div>
|
7
|
+
<div data-glide-el="controls" class="mn-b-big flex controls">
|
8
|
+
<button data-glide-dir="<" class="btn-circle">
|
9
|
+
<img src="@/assets/icons/arrow-left.svg">
|
10
|
+
</button>
|
11
|
+
<button data-glide-dir=">" class="btn-circle">
|
12
|
+
<img src="@/assets/icons/arrow-right.svg">
|
13
|
+
</button>
|
14
|
+
</div>
|
15
|
+
<div data-glide-el="track" class="mn-b-extra group glide__track">
|
16
|
+
<ul class="glide__slides flex">
|
17
|
+
<InstagramCard :img="1"/>
|
18
|
+
<InstagramCard :img="2"/>
|
19
|
+
<InstagramCard :img="3"/>
|
20
|
+
<InstagramCard :img="4"/>
|
21
|
+
</ul>
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
<div class="t-center title">
|
25
|
+
<p class="text-medium">Мы очень рады, что вы делитесь с нами своей красотой и присылаете нам фото-приветы.<br>Спасибо за ваши фотографии!</p>
|
26
|
+
<button class="button">Посмотреть все отзывы</button>
|
27
|
+
</div>
|
28
|
+
</section>
|
29
|
+
</template>
|
30
|
+
|
31
|
+
|
32
|
+
<script>
|
33
|
+
import InstagramCard from "@/components/blocks/InstagramCard.vue";
|
34
|
+
|
35
|
+
import { ref, onMounted } from "vue";
|
36
|
+
import Glide from "@glidejs/glide";
|
37
|
+
export default {
|
38
|
+
data() {
|
39
|
+
return {};
|
40
|
+
},
|
41
|
+
name: "InstagramSection",
|
42
|
+
components: {
|
43
|
+
InstagramCard,
|
44
|
+
},
|
45
|
+
setup() {
|
46
|
+
const root = ref(null);
|
47
|
+
|
48
|
+
onMounted(() => {
|
49
|
+
var glideClass = root.value;
|
50
|
+
var glideObject = new Glide(glideClass, {
|
51
|
+
type: 'carousel',
|
52
|
+
startAt: 0,
|
53
|
+
perView: 3,
|
54
|
+
peek: 0,
|
55
|
+
gap: 30,
|
56
|
+
breakpoints: {
|
57
|
+
900: {
|
58
|
+
perView: 2
|
59
|
+
},
|
60
|
+
600: {
|
61
|
+
perView: 1,
|
62
|
+
gap: 10,
|
63
|
+
peek: 10
|
64
|
+
}
|
65
|
+
}
|
66
|
+
}).mount();
|
67
|
+
|
68
|
+
function convertRemToPixels(rem) {
|
69
|
+
return rem * parseFloat(getComputedStyle(document.documentElement).fontSize);
|
70
|
+
}
|
71
|
+
})
|
72
|
+
return {
|
73
|
+
root,
|
74
|
+
};
|
75
|
+
},
|
76
|
+
};
|
77
|
+
</script>
|
78
|
+
|
79
|
+
<style lang="scss">
|
80
|
+
#instagram {
|
81
|
+
position: relative;
|
82
|
+
background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.900651) 100%), url("@/assets/images/backgrounds/testimonials.jpg");
|
83
|
+
background-position: center center;
|
84
|
+
background-repeat: no-repeat;
|
85
|
+
background-size: cover;
|
86
|
+
|
87
|
+
border-bottom: 1px solid rgba(0,0,0,0.1);
|
88
|
+
|
89
|
+
.button { margin: 0 auto; }
|
90
|
+
.controls {
|
91
|
+
position: absolute;
|
92
|
+
top: 53%;
|
93
|
+
width: 100%;
|
94
|
+
|
95
|
+
.btn-circle{
|
96
|
+
position: absolute;
|
97
|
+
display: flex;
|
98
|
+
align-items: center;
|
99
|
+
top: 50%;
|
100
|
+
justify-content: center;
|
101
|
+
height: 4rem;
|
102
|
+
width: 4rem;
|
103
|
+
background: white;
|
104
|
+
box-shadow: 0px 0px 29px rgba(0, 0, 0, 0.06);
|
105
|
+
border: none;
|
106
|
+
padding: 1rem;
|
107
|
+
border-radius: 4rem;
|
108
|
+
z-index: 14;
|
109
|
+
|
110
|
+
transform: scale(1);
|
111
|
+
|
112
|
+
transition: all 0.33s ease;
|
113
|
+
|
114
|
+
&:first-child {left: -2rem;}
|
115
|
+
&:last-child {right: -2rem;}
|
116
|
+
|
117
|
+
&:hover {
|
118
|
+
cursor: pointer;
|
119
|
+
|
120
|
+
transform: scale(0.9);
|
121
|
+
}
|
122
|
+
}
|
123
|
+
}
|
124
|
+
|
125
|
+
.instagram-integration {
|
126
|
+
margin-bottom: 4rem;
|
127
|
+
}
|
128
|
+
.title {
|
129
|
+
p {
|
130
|
+
margin-bottom: 1.5rem;
|
131
|
+
}
|
132
|
+
}
|
133
|
+
|
134
|
+
ul {
|
135
|
+
display: flex;
|
136
|
+
justify-content: space-between;
|
137
|
+
|
138
|
+
.instagram-item {
|
139
|
+
width: calc(25% - 0.5rem);
|
140
|
+
border-radius: 1rem;
|
141
|
+
|
142
|
+
box-shadow: -8px -8px 20px -8px #FFFFFF, 8px 8px 20px -12px rgba(183, 124, 124, 0.06);
|
143
|
+
&:last-child{
|
144
|
+
margin-right: 0;
|
145
|
+
}
|
146
|
+
.insta-top{
|
147
|
+
span{display: block;}
|
148
|
+
}
|
149
|
+
> img { width: 100%; }
|
150
|
+
.insta-bottom{
|
151
|
+
padding: 0.625rem 0.625rem 1rem;
|
152
|
+
display: flex;
|
153
|
+
justify-content: space-between;
|
154
|
+
align-items: flex-start;
|
155
|
+
img {
|
156
|
+
margin-right: 0.625rem;
|
157
|
+
&:last-child{margin-right: 0;}
|
158
|
+
}
|
159
|
+
span {display: block; margin-top: 0.25rem}
|
160
|
+
}
|
161
|
+
|
162
|
+
}
|
163
|
+
}
|
164
|
+
}
|
165
|
+
|
166
|
+
@media screen and (max-width: 480px) {
|
167
|
+
#instagram {
|
168
|
+
padding: 0;
|
169
|
+
padding-top: 2rem;
|
170
|
+
padding-bottom: 4rem;
|
171
|
+
|
172
|
+
.mn-b-extra { margin-bottom: 2rem;}
|
173
|
+
|
174
|
+
.controls {
|
175
|
+
display: none;
|
176
|
+
|
177
|
+
}
|
178
|
+
}
|
179
|
+
}
|
180
|
+
|
181
|
+
</style>
|
@@ -0,0 +1,91 @@
|
|
1
|
+
<template>
|
2
|
+
<section id="map" class="section">
|
3
|
+
<div class="mn-b-big t-center title">
|
4
|
+
<h2 class="" v-html="t('title')"></h2>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<div class="cols-2">
|
8
|
+
<MapBlock
|
9
|
+
:name="t('map.title')"
|
10
|
+
map="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d988.2464207440368!2d98.32843645562768!3d7.791339890847109!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x30502f47783f9337%3A0x516fcf234b41baa0!2z4Lia4LmJ4Liy4LiZ4Lif4Li04LiZ4LiB4Lix4LiN!5e0!3m2!1sen!2sth!4v1671872245101!5m2!1sen!2sth"
|
11
|
+
link="https://goo.gl/maps/Pvvow9B4uS9eEHP56"
|
12
|
+
:text="t('map.description')"
|
13
|
+
/>
|
14
|
+
<MapBlock
|
15
|
+
:name="t('newplaces.title')"
|
16
|
+
:text="t('newplaces.description')"
|
17
|
+
/>
|
18
|
+
</div>
|
19
|
+
</section>
|
20
|
+
</template>
|
21
|
+
|
22
|
+
|
23
|
+
<script setup>
|
24
|
+
import { ref, computed, onServerPrefetch, onMounted } from 'vue'
|
25
|
+
|
26
|
+
import MapBlock from "@pf/src/modules/landing/components/blocks/MapBlock.vue"
|
27
|
+
|
28
|
+
import { useI18n } from 'vue-i18n'
|
29
|
+
|
30
|
+
const text = {
|
31
|
+
messages: {
|
32
|
+
en: {
|
33
|
+
title: '<b>Fin.Kan House Is Our Partner</b><br>And Pickup Location 📍',
|
34
|
+
subtitle: 'Buy CBD and high THC weed in-store at our central Weeder location',
|
35
|
+
map: {
|
36
|
+
title: '43 283 Soi Boathouse, Rawai 🏨',
|
37
|
+
description: 'Opening hours from 18:00 to 24:00.'
|
38
|
+
},
|
39
|
+
newplaces: {
|
40
|
+
title: 'New Places is Coming 👌',
|
41
|
+
description: 'We are in the process of opening a new locations for faster delivery to all areas of Phuket. Subscribe to our social networks and expect news!'
|
42
|
+
}
|
43
|
+
},
|
44
|
+
ru: {
|
45
|
+
title: '<b>Fin.Kan House Наш Партнер</b><br>и Пункт Выдачи 📍',
|
46
|
+
subtitle: 'Купите травку с КБД и высоким содержанием ТГК в центральном магазине Weeder.',
|
47
|
+
map: {
|
48
|
+
title: '43 283 Soi Boathouse, Rawai 🏨',
|
49
|
+
description: 'Время работы с 18:00 до 24:00.'
|
50
|
+
},
|
51
|
+
newplaces: {
|
52
|
+
title: 'Новые места на подходе 👌',
|
53
|
+
description: 'Мы занимаемся открытием нового мест для более быстрой доставки во все районы Пхукеты. Подписыватесь на наши социальные сети и ожидайте новостей!'
|
54
|
+
}
|
55
|
+
}
|
56
|
+
}
|
57
|
+
}
|
58
|
+
|
59
|
+
const { t } = useI18n(text)
|
60
|
+
|
61
|
+
</script>
|
62
|
+
|
63
|
+
<style lang="scss">
|
64
|
+
#map {
|
65
|
+
padding-bottom: 0;
|
66
|
+
|
67
|
+
.cols-2 {
|
68
|
+
gap: 1rem;
|
69
|
+
|
70
|
+
border-radius: 2rem;
|
71
|
+
overflow: hidden;
|
72
|
+
|
73
|
+
.col:first-of-type {
|
74
|
+
display: flex;
|
75
|
+
flex-direction: column;
|
76
|
+
|
77
|
+
.button-link {color: #00ff88;}
|
78
|
+
}
|
79
|
+
.col:last-of-type {
|
80
|
+
|
81
|
+
#gmap_canvas {
|
82
|
+
// border-radius: 2rem;
|
83
|
+
overflow: hidden;
|
84
|
+
|
85
|
+
height: 100%;
|
86
|
+
width: 100%;
|
87
|
+
}
|
88
|
+
}
|
89
|
+
}
|
90
|
+
}
|
91
|
+
</style>
|
@@ -0,0 +1,69 @@
|
|
1
|
+
<template>
|
2
|
+
<div id="sections" class="pd-thin">
|
3
|
+
<h2 class="mn-auto pd-t-big pd-b-big t-center" v-html="t('title')"/>
|
4
|
+
|
5
|
+
<div class="cols-4 gap-thin">
|
6
|
+
<router-link to="/marketplace" class="t-center cursor-pointer hover-scale-0 transition-ease-in pd-big bg-grey t-black radius-big">
|
7
|
+
<img src="/sections/1.png" alt="" class="section-image">
|
8
|
+
<h3 class="mn-b-medium">{{t('section1.title')}}</h3>
|
9
|
+
<p class="t-transp">{{t('section1.text')}}</p>
|
10
|
+
</router-link >
|
11
|
+
|
12
|
+
<router-link to="/spots" class="t-center cursor-pointer hover-scale-0 transition-ease-in pd-big bg-grey t-black radius-big">
|
13
|
+
<img src="/sections/2.png" alt="" class="section-image">
|
14
|
+
<h3 class="mn-b-medium">{{t('section2.title')}}</h3>
|
15
|
+
<p class="t-transp">{{t('section2.text')}}</p>
|
16
|
+
</router-link>
|
17
|
+
|
18
|
+
<router-link to="/community" class="t-center cursor-pointer hover-scale-0 transition-ease-in pd-big bg-grey t-black radius-big">
|
19
|
+
<img src="/sections/3.png" alt="" class="section-image">
|
20
|
+
<h3 class="mn-b-medium">{{t('section3.title')}}</h3>
|
21
|
+
<p class="t-transp">{{t('section3.text')}}</p>
|
22
|
+
</router-link>
|
23
|
+
|
24
|
+
<router-link to="/governance" class="t-center cursor-pointer hover-scale-0 transition-ease-in pd-big bg-grey t-black radius-big">
|
25
|
+
<img src="/sections/4.png" alt="" class="section-image">
|
26
|
+
<h3 class="mn-b-medium">{{t('section4.title')}}</h3>
|
27
|
+
<p class="t-transp">{{t('section4.text')}}</p>
|
28
|
+
</router-link>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
</div>
|
32
|
+
</template>
|
33
|
+
|
34
|
+
<script setup>
|
35
|
+
import { useI18n } from 'vue-i18n'
|
36
|
+
|
37
|
+
const text = {
|
38
|
+
messages: {
|
39
|
+
en: {
|
40
|
+
title: 'Dive Deeper Into <b> Weeder Platform</b>',
|
41
|
+
section1: {
|
42
|
+
title: 'Marketplace',
|
43
|
+
text: 'A simple platform for buying and selling weed, joints, and everything else from seeds to grow boxes'
|
44
|
+
},
|
45
|
+
section2: {
|
46
|
+
title: 'Spots',
|
47
|
+
text: 'Discover the top spots for purchasing or sharing a smoke with like-minded cannabis enthusiasts'
|
48
|
+
},
|
49
|
+
section3: {
|
50
|
+
title: 'Community',
|
51
|
+
text: 'Engage with our community to discuss cannabis news and innovations'
|
52
|
+
},
|
53
|
+
section4: {
|
54
|
+
title: 'Governance',
|
55
|
+
text: 'Join platform stakeholders in governance, playing an active role in molding our collective future'
|
56
|
+
}
|
57
|
+
}
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
const { t } = useI18n(text)
|
62
|
+
</script>
|
63
|
+
|
64
|
+
<style lang="scss">
|
65
|
+
.section-image {
|
66
|
+
width: 100%;
|
67
|
+
object-fit: cover;
|
68
|
+
}
|
69
|
+
</style>
|
@@ -0,0 +1,131 @@
|
|
1
|
+
<script setup>
|
2
|
+
import 'vue3-carousel/dist/carousel.css'
|
3
|
+
|
4
|
+
|
5
|
+
import { ref, onMounted } from 'vue'
|
6
|
+
import { useI18n } from 'vue-i18n'
|
7
|
+
import { Carousel, Slide, Pagination, Navigation } from 'vue3-carousel'
|
8
|
+
|
9
|
+
const ImagesSlider = ref(null)
|
10
|
+
|
11
|
+
const text = {
|
12
|
+
messages: {
|
13
|
+
en: {
|
14
|
+
features: [
|
15
|
+
{
|
16
|
+
title: "What's the Weeder Token, Dude?",
|
17
|
+
description: "WDT is like, the backbone of our rad community. It's cash, it's power, it's an investment. Groovy, right?",
|
18
|
+
},
|
19
|
+
{
|
20
|
+
title: "Light Up and Level Up",
|
21
|
+
description: "Order up, light up, and earn Weeder tokens. More tokes, more cash in your pocket, man.",
|
22
|
+
},
|
23
|
+
{
|
24
|
+
title: "Hang Ten with Our Community",
|
25
|
+
description: "Find the dopest strains and start floating on cloud 9 with us!",
|
26
|
+
},
|
27
|
+
{
|
28
|
+
title: "Shop 'Til You Drop... Into Your Couch",
|
29
|
+
description: "Score primo bud and gear with just a few clicks. Delivered right to your pad!",
|
30
|
+
},
|
31
|
+
]
|
32
|
+
},
|
33
|
+
ru: {
|
34
|
+
features: [
|
35
|
+
{
|
36
|
+
title: "Что такое токен Weeder, Бро?",
|
37
|
+
description: "WDT - это как основа нашего крутого сообщества. Это деньги, это власть, это инвестиции. Круто, а?",
|
38
|
+
},
|
39
|
+
{
|
40
|
+
title: "Зажигай и Развивайся",
|
41
|
+
description: "Закажи шмали, курни и зарабатывай токены Weeder. Чем больше курнешь, тем больше кэша у тебя в кармане, чувак.",
|
42
|
+
},
|
43
|
+
|
44
|
+
{
|
45
|
+
title: "Веселись с Нашим Сообществом",
|
46
|
+
description: "Найди самые крутые сорта и начни шмалить на девятом облаке вместе с нами.",
|
47
|
+
},
|
48
|
+
{
|
49
|
+
title: "Покупайте, Когда Накурились",
|
50
|
+
description: "Закажи премиумную бошку и крутые аксессуары за пару кликов, чувак. Прямо к твоей двери!",
|
51
|
+
},
|
52
|
+
]
|
53
|
+
}
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
const { tm,rt } = useI18n(text)
|
58
|
+
|
59
|
+
const fadeIn = ref(false)
|
60
|
+
|
61
|
+
onMounted(() => {
|
62
|
+
|
63
|
+
setTimeout(() => {
|
64
|
+
ImagesSlider.value.restartCarousel()
|
65
|
+
fadeIn.value = true
|
66
|
+
}, "500")
|
67
|
+
|
68
|
+
})
|
69
|
+
</script>
|
70
|
+
|
71
|
+
<template>
|
72
|
+
<Carousel ref="ImagesSlider" :items-to-show="1" :wrapAround="true" :transition="330" :autoplay="3000" :pauseAutoplayOnHover="true" class="w-100 h-100">
|
73
|
+
<Slide v-for="(feature, index) in tm('features')" :key="index" class="w-100 h-100 flex-v-center flex">
|
74
|
+
<div class="parent-div" :style="`background-image: url(/assets/images/features/${index}.png); background-size:cover; background-position: center center;`">
|
75
|
+
<div class="background-div"></div>
|
76
|
+
<h4 class="mn-b-small">{{ feature.title }}</h4>
|
77
|
+
<p class='mn-b-big mn-r-small mn-l-small'>{{ feature.description }}</p>
|
78
|
+
</div>
|
79
|
+
</Slide>
|
80
|
+
</Carousel>
|
81
|
+
</template>
|
82
|
+
|
83
|
+
<style lang="scss">
|
84
|
+
.fade-enter-active, .fade-leave-active {
|
85
|
+
transition: opacity .5s;
|
86
|
+
}
|
87
|
+
.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {
|
88
|
+
opacity: 0;
|
89
|
+
}
|
90
|
+
.carousel__track {
|
91
|
+
height: 100%;
|
92
|
+
}
|
93
|
+
.carousel-controls {
|
94
|
+
position: absolute;
|
95
|
+
top: 0;
|
96
|
+
right: 0;
|
97
|
+
}
|
98
|
+
|
99
|
+
.carousel-indicators {
|
100
|
+
position: absolute;
|
101
|
+
bottom: 0;
|
102
|
+
left: 0;
|
103
|
+
right: 0;
|
104
|
+
display: flex;
|
105
|
+
justify-content: center;
|
106
|
+
}
|
107
|
+
|
108
|
+
.carousel-indicators li {
|
109
|
+
list-style: none;
|
110
|
+
margin: 0 5px;
|
111
|
+
width: 10px;
|
112
|
+
height: 10px;
|
113
|
+
background: gray;
|
114
|
+
border-radius: 50%;
|
115
|
+
}
|
116
|
+
|
117
|
+
.carousel-indicators li.active {
|
118
|
+
background: white;
|
119
|
+
}
|
120
|
+
|
121
|
+
.parent-div {
|
122
|
+
display: flex;
|
123
|
+
flex-direction: column;
|
124
|
+
height: 100%;
|
125
|
+
width: 100%;
|
126
|
+
}
|
127
|
+
|
128
|
+
.background-div {
|
129
|
+
flex-grow: 1 // Занимает все оставшееся пространство
|
130
|
+
}
|
131
|
+
</style>
|
@@ -0,0 +1,116 @@
|
|
1
|
+
<template>
|
2
|
+
<section id="howtobuy" class="section">
|
3
|
+
|
4
|
+
<div class="mn-b-big t-center title">
|
5
|
+
<h2 class="mn-b-small">{{t('title')}}</h2>
|
6
|
+
<p class="w-m-60r mn-b-big mn-auto t-transp p-big">
|
7
|
+
{{t('subtitle')}}
|
8
|
+
</p>
|
9
|
+
</div>
|
10
|
+
|
11
|
+
<div class="cols-3 gap-thin">
|
12
|
+
|
13
|
+
<div class="w-100 pd-medium bg-grey radius-big">
|
14
|
+
<img class="radius-medium bg-grey h-max-20r object-fit-cover w-100 mn-b-medium" src="@/assets/images/howitworks/step1.png">
|
15
|
+
<h3 class="mn-b-medium">{{t('steps.step1.headline')}}</h3>
|
16
|
+
<p class="t-transp">{{t('steps.step1.text')}}</p>
|
17
|
+
</div>
|
18
|
+
|
19
|
+
<div class="w-100 pd-medium bg-grey radius-big">
|
20
|
+
<img class="radius-medium bg-grey h-max-20r object-fit-cover w-100 mn-b-medium" src="@/assets/images/howitworks/step2.png">
|
21
|
+
<h3 class="mn-b-medium">{{t('steps.step2.headline')}}</h3>
|
22
|
+
<p class="t-transp">{{t('steps.step2.text')}}</p>
|
23
|
+
</div>
|
24
|
+
|
25
|
+
<div class="w-100 pd-medium bg-grey radius-big">
|
26
|
+
<img class="radius-medium bg-grey h-max-20r object-fit-cover w-100 mn-b-medium" src="@/assets/images/howitworks/step3.png">
|
27
|
+
<h3 class="mn-b-medium">{{t('steps.step3.headline')}}</h3>
|
28
|
+
<p class="t-transp">{{t('steps.step3.text')}}</p>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
</div>
|
32
|
+
|
33
|
+
</section>
|
34
|
+
</template>
|
35
|
+
|
36
|
+
|
37
|
+
<script setup>
|
38
|
+
import { useI18n } from 'vue-i18n'
|
39
|
+
|
40
|
+
const text = {
|
41
|
+
messages: {
|
42
|
+
en: {
|
43
|
+
title: 'What is Weeder Token?',
|
44
|
+
subtitle: 'WDT – the foundation of the Weeder community. It serves as a currency, a DAO instrument, and for many other purposes:',
|
45
|
+
steps: {
|
46
|
+
step1: {
|
47
|
+
headline: 'Currency',
|
48
|
+
text: 'WDT can be used as a digital currency within the Weeder ecosystem, allowing users to purchase products such as cannabis, advertising spaces, and other premium features on the platform.',
|
49
|
+
},
|
50
|
+
step2: {
|
51
|
+
headline: 'Instument',
|
52
|
+
text: 'As a DAO (Decentralized Autonomous Organization) instrument, WDT enables community governance and decision-making, allowing token holders to propose, discuss, and vote on various initiatives and developments within the Weeder ecosystem.',
|
53
|
+
},
|
54
|
+
step3: {
|
55
|
+
headline: 'Invesment',
|
56
|
+
text: 'Holding WDT tokens can provide potential investment returns as the Weeder ecosystem grows and gains value. Additionally, WDT serves for dividend distribution – those who stake their tokens earn income from the platform.',
|
57
|
+
},
|
58
|
+
}
|
59
|
+
},
|
60
|
+
ru: {
|
61
|
+
title: 'Что такое Weeder Token?',
|
62
|
+
subtitle: 'WDT – основа сообщества Weeder. Он выступает в качестве валюты, инструмента DAO и многих других целей:',
|
63
|
+
steps: {
|
64
|
+
step1: {
|
65
|
+
headline: 'Валюта',
|
66
|
+
text: 'WDT можно использовать как цифровую валюту в экосистеме Weeder, позволяя пользователям покупать товары, такие как марихуана, рекламные места и другие премиальные возможности на платформе.',
|
67
|
+
},
|
68
|
+
step2: {
|
69
|
+
headline: 'Инструмент',
|
70
|
+
text: 'В качестве инструмента DAO (Децентрализованной Автономной Организации), WDT позволяет управлять сообществом и принимать решения, давая держателям токенов возможность предлагать, обсуждать и голосовать за различные инициативы и развитие в рамках экосистемы Weeder.',
|
71
|
+
},
|
72
|
+
step3: {
|
73
|
+
headline: 'Инвестиции',
|
74
|
+
text: 'Хранение токенов WDT может обеспечить потенциальный инвестиционный доход по мере роста и увеличения стоимости экосистемы Weeder. Кроме того, WDT служит для распределения дивидендов – те, кто стейкают свои токены, получают доход с платформы.',
|
75
|
+
},
|
76
|
+
}
|
77
|
+
}
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
const { t } = useI18n(text)
|
82
|
+
</script>
|
83
|
+
|
84
|
+
<style lang="scss">
|
85
|
+
|
86
|
+
#grid2 {
|
87
|
+
transition: 500ms;
|
88
|
+
display: grid;
|
89
|
+
grid-template-columns: 1fr 1fr 1fr;
|
90
|
+
gap: 3px;
|
91
|
+
background: crimson;
|
92
|
+
}
|
93
|
+
|
94
|
+
:where(.left, .center, .right) {
|
95
|
+
background: navajowhite;
|
96
|
+
transition: 300ms;
|
97
|
+
}
|
98
|
+
|
99
|
+
:where(.left, .center, .right):hover {
|
100
|
+
background: crimson;
|
101
|
+
}
|
102
|
+
|
103
|
+
#grid2:has(.left:hover) {
|
104
|
+
grid-template-columns: 2fr 0.5fr 0.5fr;
|
105
|
+
padding: 3rem;
|
106
|
+
}
|
107
|
+
|
108
|
+
#grid2:has(.center:hover) {
|
109
|
+
grid-template-columns: 0.5fr 2fr 0.5fr;
|
110
|
+
padding: 3rem;
|
111
|
+
}
|
112
|
+
#grid2:has(.right:hover) {
|
113
|
+
grid-template-columns: 0.5fr 0.5fr 2fr;
|
114
|
+
padding: 3rem;
|
115
|
+
}
|
116
|
+
</style>
|
@@ -0,0 +1,34 @@
|
|
1
|
+
const landing = [
|
2
|
+
{
|
3
|
+
name: 'Home',
|
4
|
+
path: '',
|
5
|
+
meta: {
|
6
|
+
title_hide: true
|
7
|
+
},
|
8
|
+
component: () => import(/* webpackChunkName: 'Home' */ '@pf/src/modules/landing/components/pages/Home.vue'),
|
9
|
+
},
|
10
|
+
{
|
11
|
+
path: 'governance',
|
12
|
+
name: 'Governance',
|
13
|
+
meta: {
|
14
|
+
title: {
|
15
|
+
en: 'Governance',
|
16
|
+
ru: 'Управления'
|
17
|
+
}
|
18
|
+
},
|
19
|
+
component: () => import(/* webpackChunkName: 'Governance' */ '@pf/src/modules/landing/components/pages/Governance.vue'),
|
20
|
+
},
|
21
|
+
{
|
22
|
+
path: 'pages/:url',
|
23
|
+
name: 'Page',
|
24
|
+
meta: {
|
25
|
+
title: {
|
26
|
+
en: 'Page',
|
27
|
+
ru: 'Страница'
|
28
|
+
}
|
29
|
+
},
|
30
|
+
component: () => import(/* webpackChunkName: 'Page' */ '@pf/src/modules/landing/components/pages/Page.vue')
|
31
|
+
}
|
32
|
+
];
|
33
|
+
|
34
|
+
export default landing;
|
@@ -6,6 +6,8 @@ const middlewareFactory = (db) => {
|
|
6
6
|
const checkDuplicateUsernameOrEmail = async (req, res, next) => {
|
7
7
|
const { type, email, phone } = req.body;
|
8
8
|
|
9
|
+
console.log(req.body)
|
10
|
+
|
9
11
|
let query;
|
10
12
|
|
11
13
|
if (type === 'phone' && phone) {
|
@@ -19,6 +21,7 @@ const middlewareFactory = (db) => {
|
|
19
21
|
const user = await User.findOne(query).exec();
|
20
22
|
|
21
23
|
if (user) {
|
24
|
+
console.log(`USER_ALREADY_REGISTERED`)
|
22
25
|
res.status(400).send({ errorCode: "USER_ALREADY_REGISTERED" });
|
23
26
|
return;
|
24
27
|
}
|
@@ -33,6 +36,7 @@ const middlewareFactory = (db) => {
|
|
33
36
|
if (req.body.roles) {
|
34
37
|
for (let i = 0; i < req.body.roles.length; i++) {
|
35
38
|
if (!ROLES.includes(req.body.roles[i])) {
|
39
|
+
console.log(`Failed! Role ${req.body.roles[i]} does not exist!`)
|
36
40
|
res.status(400).send({
|
37
41
|
message: `Failed! Role ${req.body.roles[i]} does not exist!`
|
38
42
|
});
|
@@ -3,12 +3,12 @@
|
|
3
3
|
<!-- <Map :location="{lat: department.location.coordinates[1] ,lng: department.location.coordinates[0]}" class=""/> -->
|
4
4
|
|
5
5
|
<div class="pd-medium w-100">
|
6
|
-
<svg @click="$router.push(`/
|
6
|
+
<svg @click="$router.push(`/organizations/${props.organization}/departments/${department._id}/edit`)" class="i-regular pos-absolute pos-r-0 pos-t-0 t-transp" width="652" height="652" viewBox="0 0 652 652" fill="none" xmlns="http://www.w3.org/2000/svg">
|
7
7
|
<path d="M515.693 9.52082C510.095 3.91669 502.49 0.765625 494.563 0.765625C486.635 0.765625 479.036 3.91669 473.432 9.52082L48.7255 434.307C44.8244 438.214 42.0848 443.125 40.8088 448.496L0.939444 615.069C-1.47202 625.168 1.528 635.788 8.86652 643.132C16.2103 650.47 26.8305 653.47 36.9292 651.059L203.516 611.261H203.511C208.88 609.985 213.792 607.246 217.699 603.35L642.485 178.496C648.089 172.892 651.241 165.293 651.241 157.366C651.241 149.439 648.089 141.835 642.485 136.235L515.693 9.52082ZM113.76 453.708L388.307 179.161L472.828 263.682L198.281 538.229L113.76 453.708ZM87.1041 511.5L140.416 564.812L70.3014 581.614L87.1041 511.5ZM515.091 221.793L430.195 136.897L494.184 72.9075L579.08 157.429L515.091 221.793Z" fill="rgb(var(--black))"/>
|
8
8
|
</svg>
|
9
9
|
|
10
10
|
<h3
|
11
|
-
@click="$router.push(`/
|
11
|
+
@click="$router.push(`/organizations/${props.organization}/departments/${department._id}`)"
|
12
12
|
class="mn-b-small w-100"
|
13
13
|
v-html="department.profile.name"
|
14
14
|
/>
|
@@ -67,7 +67,7 @@
|
|
67
67
|
<template #content>
|
68
68
|
<ul>
|
69
69
|
<li v-if="department.subdepartments.length < 1">В отделе еще нет подотделов</li>
|
70
|
-
<DepartmentSub v-for="(subdepartmentsartment, index) in department.subdepartments" @click="$router.push(`/
|
70
|
+
<DepartmentSub v-for="(subdepartmentsartment, index) in department.subdepartments" @click="$router.push(`/organization/departments/${subdepartmentsartment._id}`)" :key="index" class="br-b br-solid br-grey" :department="subdepartmentsartment" />
|
71
71
|
</ul>
|
72
72
|
</template>
|
73
73
|
</Spoiler>
|