@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
@@ -1,76 +1,84 @@
|
|
1
1
|
<template>
|
2
2
|
<div>
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
3
|
+
|
4
|
+
<div class="br-grey radius-small mn-small">
|
5
|
+
{{memberForm.id}}
|
6
|
+
<SelectMulti
|
7
|
+
v-if="props.member === null"
|
8
|
+
v-model="memberForm.user"
|
9
|
+
:options="users"
|
10
|
+
:multiple="false"
|
11
|
+
:taggable="false"
|
12
|
+
placeholder="Type to search or add type of organization"
|
13
|
+
class="mn-b-semi bg-grey pd-medium radius-small"
|
14
|
+
/>
|
15
|
+
|
11
16
|
<div v-else class="pd-small br-grey br-1px br-solid">
|
12
|
-
{{
|
17
|
+
{{ memberForm.user.name ? memberForm.user.name : 'Безымянный' }}, {{memberForm.user.id}}
|
13
18
|
</div>
|
19
|
+
<Field
|
20
|
+
v-model:field="memberForm.position"
|
21
|
+
label="Должность"
|
22
|
+
placeholder="Название должности"
|
23
|
+
class="bg-white "
|
24
|
+
:validation="organizationName"
|
25
|
+
/>
|
14
26
|
</div>
|
15
27
|
|
16
|
-
<button :disabled="!
|
17
|
-
Добавить
|
28
|
+
<button :disabled="!memberForm.user._id || !memberForm.position" @click="submitForm" class="w-100 button bg-blue t-white">
|
29
|
+
{{ props.member !== null ? "Редактировать участника" : "Добавить участника" }}
|
18
30
|
</button>
|
19
31
|
|
20
|
-
<button
|
21
|
-
Удалить
|
22
|
-
</button>
|
32
|
+
<button v-if="props.member !== null" @click="removeMember" class="w-100 button bg-red t-white">
|
33
|
+
Удалить участника
|
34
|
+
</button>
|
23
35
|
</div>
|
24
36
|
</template>
|
25
37
|
|
26
38
|
<script setup>
|
27
|
-
import { ref, computed } from "vue";
|
28
|
-
|
39
|
+
import { ref, watch, computed } from "vue";
|
40
|
+
// Import components
|
41
|
+
import SelectMulti from '@pf/src/components/SelectMulti/SelectMulti.vue'
|
29
42
|
import Field from "@pf/src/components/Field/Field.vue";
|
30
43
|
import Select from "@pf/src/components/Select/Select.vue";
|
44
|
+
|
31
45
|
const props = defineProps({
|
32
46
|
isPopupOpen: Boolean,
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
alldepartments: Array,
|
47
|
+
member: Number,
|
48
|
+
members: Array,
|
49
|
+
users: Array,
|
37
50
|
});
|
38
51
|
|
39
|
-
const emits = defineEmits(['callback',
|
52
|
+
const emits = defineEmits(['callback','remove'])
|
40
53
|
|
41
|
-
const
|
42
|
-
|
54
|
+
const memberForm = ref({
|
55
|
+
user: "",
|
56
|
+
position: "",
|
43
57
|
});
|
44
58
|
|
45
|
-
if (props.
|
46
|
-
|
59
|
+
if (props.member !== null) {
|
60
|
+
memberForm.value = props.members[props.member]
|
47
61
|
}
|
48
62
|
|
49
|
-
|
50
|
-
|
51
|
-
if (departments.some((dept) => dept._id === department._id)) {
|
52
|
-
return false;
|
53
|
-
}
|
54
|
-
if (editingDepartment._id === department._id) {
|
55
|
-
return false;
|
56
|
-
}
|
57
|
-
return true;
|
58
|
-
});
|
59
|
-
}
|
63
|
+
import * as inputsValidation from '@pf/src/modules/middlewares/client/inputs.validation'
|
64
|
+
const placeValidation = ref(null)
|
60
65
|
|
61
|
-
const filteredDepartments = computed(() => {
|
62
|
-
return filterDepartments(props.alldepartments, props.departments, props.maindepartment);
|
63
|
-
});
|
64
66
|
|
65
67
|
async function submitForm() {
|
66
|
-
|
67
|
-
|
68
|
+
if (props.member !== null) {
|
69
|
+
props.members[props.member] = memberForm.value
|
70
|
+
emits("callback");
|
71
|
+
} else {
|
72
|
+
props.members.push(memberForm.value);
|
73
|
+
emits("callback");
|
74
|
+
}
|
68
75
|
}
|
69
76
|
|
70
77
|
async function removeMember() {
|
71
|
-
|
72
|
-
|
78
|
+
props.members.splice(props.member, 1);
|
79
|
+
emits("callback");
|
73
80
|
}
|
81
|
+
|
74
82
|
</script>
|
75
83
|
|
76
84
|
<style scoped>
|
@@ -89,4 +97,4 @@ input {
|
|
89
97
|
border: 1px solid #ccc;
|
90
98
|
border-radius: 5px;
|
91
99
|
}
|
92
|
-
</style>
|
100
|
+
</style>
|
@@ -1,23 +1,55 @@
|
|
1
1
|
<template>
|
2
|
-
<div class="
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
<div class="">
|
3
|
+
<img
|
4
|
+
v-if="user.profile?.photo.length > 0 && type !== 'short'"
|
5
|
+
:src="(FILE_SERVER_URL || '') + member.profile.photo"
|
6
|
+
class="radius-medium object-fit-cover mn-r-thin i-thin"
|
7
|
+
|
8
|
+
@click.stop="$router.push({
|
9
|
+
name: user.type === 'user' ? 'User Profile' : 'Organization',
|
10
|
+
params: {
|
11
|
+
_id: user._id
|
12
|
+
}
|
13
|
+
})"
|
14
|
+
/>
|
15
|
+
|
16
|
+
<PlaceholderUserpic
|
17
|
+
v-if="!user.profile?.photo && type !== 'short'"
|
18
|
+
class="radius-medium mn-r-thin i-thin"
|
19
|
+
|
20
|
+
@click.stop="$router.push({
|
21
|
+
name: user.type === 'user' ? 'User Profile' : 'Organization',
|
22
|
+
params: {
|
23
|
+
_id: user._id
|
24
|
+
}
|
25
|
+
})"
|
26
|
+
/>
|
27
|
+
<!-- <div class="user-card__info"> -->
|
28
|
+
<!-- <p class="user-card__name">{{ user.profile?.name || 'Безымянный' }}</p> -->
|
29
|
+
<!-- </div> -->
|
30
|
+
<div class="mn-r-auto">
|
31
|
+
<span class=" mn-r-small">{{user.profile?.email}} {{user.profile?.phone}}</span>
|
32
|
+
<span class="t-transp">{{user.role}}</span>
|
33
|
+
<br>
|
34
|
+
<span class="mn-r-auto t-transp">Member since (date) {{user.createdAt}}</span>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<div v-if="user.position !== 'Основатель'" class="mn-l-medium flex-v-center flex">
|
38
|
+
<button @click="removeMember(user)" class="button-small button">×</button>
|
39
|
+
</div>
|
40
|
+
|
8
41
|
</div>
|
9
42
|
</template>
|
10
43
|
|
11
44
|
<script setup>
|
12
45
|
|
46
|
+
|
47
|
+
import PlaceholderUserpic from '@pf/src/modules/icons/placeholders/PlaceholderUserpic.vue'
|
48
|
+
|
13
49
|
const props = defineProps({
|
14
50
|
user: {
|
15
51
|
type: Object,
|
16
52
|
required: true
|
17
|
-
},
|
18
|
-
position: {
|
19
|
-
type: String,
|
20
|
-
required: true
|
21
53
|
}
|
22
54
|
// Define other props here
|
23
55
|
});
|
@@ -1,12 +1,13 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="for-transition w-100">
|
3
3
|
|
4
|
-
<div id="dash" class="pd-medium bg-grey">
|
4
|
+
<div v-if="departments.state.department" id="dash" class="pd-medium bg-grey">
|
5
5
|
<section class="mn-b-medium radius-medium pd-semi bg-white">
|
6
6
|
<div class="flex-nowrap flex mn-b-small">
|
7
|
-
<h2 class="w-100">{{ departments.state.department.name }}</h2>
|
8
7
|
|
9
|
-
<
|
8
|
+
<h2 class="w-100">{{ departments.state.department.profile.name }}</h2>
|
9
|
+
|
10
|
+
<svg @click="$router.push(`/organizations/${route.params._id}/departments/${route.params.department}/edit`)" class="i-regular t-transp" width="652" height="652" viewBox="0 0 652 652" fill="none" xmlns="http://www.w3.org/2000/svg">
|
10
11
|
<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))"/>
|
11
12
|
</svg>
|
12
13
|
|
@@ -22,7 +23,7 @@
|
|
22
23
|
class="br-b br-solid br-grey"
|
23
24
|
v-for="(member, index) in departments.state.department.members"
|
24
25
|
:key="index"
|
25
|
-
:user="member
|
26
|
+
:user="member"
|
26
27
|
:position="member.position"
|
27
28
|
@click="$router.push(`/app/profile/${member.user._id}`)"
|
28
29
|
/>
|
@@ -46,12 +47,12 @@ import { useRoute, useRouter } from 'vue-router';
|
|
46
47
|
import Spoiler from '@pf/src/components/Spoiler/Spoiler.vue';
|
47
48
|
import DepartmentSub from '@pf/src/modules/organizations/components/blocks/DepartmentSub.vue';
|
48
49
|
import User from '@pf/src/modules/organizations/components/blocks/User.vue';
|
49
|
-
import * as departments from '@pf/src/modules/
|
50
|
+
import * as departments from '@pf/src/modules/organizations/store/departments';
|
50
51
|
|
51
52
|
const router = useRouter();
|
52
53
|
const route = useRoute();
|
53
54
|
|
54
|
-
await departments.actions.readOne(route.params.
|
55
|
+
await departments.actions.readOne(route.params.department);
|
55
56
|
</script>
|
56
57
|
|
57
58
|
<style scoped>
|
@@ -1,184 +1,158 @@
|
|
1
1
|
<template>
|
2
|
-
<div class="for-transition w-100">
|
3
|
-
|
4
|
-
<
|
5
|
-
<
|
6
|
-
|
2
|
+
<div class="for-transition pd-thin w-100">
|
3
|
+
|
4
|
+
<header class="mn-b-thin flex-nowrap flex bg-grey pd-medium radius-big">
|
5
|
+
<h1 v-if="route.params.department" class="mn-r-auto">Edit Department</h1>
|
6
|
+
<h1 v-else class="mn-r-auto">Create Department</h1>
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
<h1 v-else class="mn-r-auto">Create Spot</h1>
|
8
|
+
<section class="flex-nowrap flex pd-thin">
|
9
|
+
<Button :submit="onSubmit" :callback="redirectTo" class="bg-main">Save Department</Button>
|
10
|
+
</section>
|
12
11
|
|
13
|
-
|
14
|
-
<Button :submit="onSubmit" :callback="redirectTo">Save Spot</Button>
|
15
|
-
</section>
|
12
|
+
</header>
|
16
13
|
|
17
|
-
|
14
|
+
<div class="mn-b-thin bg-grey pd-medium o-hidden radius-big">
|
15
|
+
<h3 class="mn-b-semi">Profile</h3>
|
16
|
+
|
17
|
+
<div v-if="departments.state.department.profile" class="radius-small flex-nowrap flex">
|
18
|
+
<UploadImage
|
19
|
+
v-model:photo="departments.state.department.profile.photo"
|
20
|
+
:uploadPath="'organizations/' + departments.state.department.name + '/avatars'"
|
21
|
+
class="w-8r aspect-1x1 o-hidden mn-r-small radius-extra"
|
22
|
+
/>
|
23
|
+
<div class="w-100 flex-child-grow-1 flex-child ">
|
24
|
+
<Field
|
25
|
+
v-model:field="departments.state.department.profile.name"
|
26
|
+
label="Name"
|
27
|
+
placeholder="Department Name"
|
28
|
+
class="mn-b-small bg-white radius-small pd-medium"
|
29
|
+
:validation="organizationName"
|
30
|
+
/>
|
31
|
+
<Field
|
32
|
+
v-model:field="departments.state.department.profile.description"
|
33
|
+
label="Description"
|
34
|
+
placeholder="Department description (max 120 symbols)"
|
35
|
+
class="bg-white radius-small pd-medium"
|
36
|
+
:validation="organizationName"
|
37
|
+
/>
|
38
|
+
</div>
|
39
|
+
</div>
|
18
40
|
</div>
|
19
41
|
|
20
|
-
|
21
|
-
|
22
|
-
|
42
|
+
<Block
|
43
|
+
title="Team"
|
44
|
+
placeholder="No members added yet"
|
45
|
+
:actions="[{
|
46
|
+
label: '+',
|
47
|
+
function: () => openMemberPopup()
|
48
|
+
}]"
|
49
|
+
class="cols-1 gap-thin mn-b-thin"
|
50
|
+
>
|
51
|
+
<User
|
52
|
+
class="bg-grey o-hidden radius-small mn-b-thin"
|
53
|
+
v-for="(member, index) in departments.state.department.members"
|
54
|
+
:key="index"
|
55
|
+
:user="member.user"
|
56
|
+
:position="member.position"
|
57
|
+
@click="openMemberPopup(index)"
|
58
|
+
/>
|
59
|
+
</Block>
|
60
|
+
|
61
|
+
<Popup
|
62
|
+
title="Добавить участника"
|
63
|
+
@close-popup="closeMemberPopup"
|
64
|
+
:isPopupOpen="isOpenAddMemberPopup"
|
65
|
+
>
|
66
|
+
<DepartmentMemberModify
|
67
|
+
:members="departments.state.department.members"
|
68
|
+
:member="selectedMember"
|
69
|
+
:users="memberships.state.memberships"
|
70
|
+
@callback="closeMemberPopup"
|
71
|
+
/>
|
72
|
+
</Popup>
|
73
|
+
|
23
74
|
|
24
|
-
|
25
|
-
|
75
|
+
<div class="cols-2 gap-thin">
|
76
|
+
|
77
|
+
<div class="bg-grey pd-medium o-hidden radius-big">
|
78
|
+
<h3 class="mn-b-semi">Department Settings</h3>
|
26
79
|
|
27
|
-
<
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
80
|
+
<p class="p-medium mn-b-small">Please settings for your department:</p>
|
81
|
+
<div class="cols-1 gap-thin">
|
82
|
+
<h4>Products</h4>
|
83
|
+
<Checkbox
|
84
|
+
label="Hidden department"
|
85
|
+
name="Delivery"
|
86
|
+
value="pickup"
|
87
|
+
class="w-100 mn-r-small bg-white radius-small pd-small"
|
88
|
+
:radio="departments.state.department.delivery"
|
32
89
|
/>
|
33
|
-
<div class="w-100 flex-child-grow-1 flex-child ">
|
34
|
-
<Field
|
35
|
-
v-model:field="departments.state.department.profile.name"
|
36
|
-
label="Name"
|
37
|
-
placeholder="Spot Name"
|
38
|
-
class="mn-b-small bg-white radius-small pd-medium"
|
39
|
-
:validation="organizationName"
|
40
|
-
/>
|
41
|
-
<Field
|
42
|
-
v-model:field="departments.state.department.profile.description"
|
43
|
-
label="Description"
|
44
|
-
placeholder="Spot description (max 120 symbols)"
|
45
|
-
class="bg-white radius-small pd-medium"
|
46
|
-
:validation="organizationName"
|
47
|
-
/>
|
48
|
-
</div>
|
49
90
|
</div>
|
50
91
|
</div>
|
51
92
|
|
52
93
|
<div class="bg-grey pd-medium o-hidden radius-big">
|
53
|
-
<h3 class="mn-b-semi">
|
94
|
+
<h3 class="mn-b-semi">Acessess</h3>
|
95
|
+
|
96
|
+
<p class="p-medium mn-b-small">Please select organization accesses for user in department:</p>
|
54
97
|
|
55
|
-
<
|
56
|
-
|
98
|
+
<div class="cols-1 gap-thin">
|
99
|
+
<h4>Products</h4>
|
57
100
|
<Checkbox
|
58
|
-
label="
|
101
|
+
label="See products"
|
59
102
|
name="Delivery"
|
60
103
|
value="pickup"
|
61
104
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
62
105
|
:radio="departments.state.department.delivery"
|
63
106
|
/>
|
64
107
|
<Checkbox
|
65
|
-
label="
|
108
|
+
label="Edit products"
|
66
109
|
name="Delivery"
|
67
110
|
value="courier"
|
68
111
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
69
112
|
:radio="departments.state.department.delivery"
|
70
113
|
/>
|
71
114
|
<Checkbox
|
72
|
-
label="
|
115
|
+
label="Delete orders"
|
73
116
|
name="Delivery"
|
74
117
|
value="post"
|
75
118
|
class="w-100 bg-white radius-small pd-small"
|
76
119
|
:radio="departments.state.department.delivery"
|
77
120
|
/>
|
78
|
-
|
79
|
-
|
80
|
-
<p class="p-medium mn-b-small">Please select the available payment methods:</p>
|
81
|
-
<div class="flex-nowrap flex">
|
121
|
+
<h4>Orders</h4>
|
82
122
|
<Checkbox
|
83
|
-
label="
|
84
|
-
name="
|
85
|
-
value="
|
123
|
+
label="See orders"
|
124
|
+
name="Delivery"
|
125
|
+
value="pickup"
|
86
126
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
87
|
-
:radio="departments.state.department.
|
127
|
+
:radio="departments.state.department.delivery"
|
88
128
|
/>
|
89
129
|
<Checkbox
|
90
|
-
label="
|
91
|
-
name="
|
92
|
-
value="
|
130
|
+
label="Confirm orders"
|
131
|
+
name="Delivery"
|
132
|
+
value="courier"
|
93
133
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
94
|
-
:radio="departments.state.department.
|
134
|
+
:radio="departments.state.department.delivery"
|
95
135
|
/>
|
96
136
|
<Checkbox
|
97
|
-
label="
|
98
|
-
name="
|
99
|
-
value="
|
137
|
+
label="Delete orders"
|
138
|
+
name="Delivery"
|
139
|
+
value="post"
|
100
140
|
class="w-100 bg-white radius-small pd-small"
|
101
|
-
:radio="departments.state.department.
|
141
|
+
:radio="departments.state.department.delivery"
|
102
142
|
/>
|
103
143
|
</div>
|
104
144
|
</div>
|
105
|
-
</div>
|
106
145
|
|
107
|
-
<div class="bg-grey pd-medium o-hidden radius-big">
|
108
|
-
<h3 class="mn-b-semi">Location</h3>
|
109
|
-
<Address
|
110
|
-
:apiKey="GOOGLE_MAPS_API_KEY"
|
111
|
-
:address="departments.state.department.address"
|
112
|
-
:location="departments.state.department.location"
|
113
|
-
label="Address"
|
114
|
-
placeholder="Enter delivery address"
|
115
|
-
class="
|
116
|
-
bg-white radius-small pd-small mn-b-small
|
117
|
-
"
|
118
|
-
@update:location="newLocation => {
|
119
|
-
departments.state.department.location = newLocation;
|
120
|
-
}"
|
121
|
-
@update:address="newAddress => {
|
122
|
-
departments.state.department.address = newAddress;
|
123
|
-
}"
|
124
|
-
/>
|
125
|
-
|
126
|
-
<p class="mn-b-small p-medium">Or choose on map:</p>
|
127
|
-
|
128
|
-
<LocationMarker
|
129
|
-
:address="departments.state.department.address"
|
130
|
-
:location="departments.state.department.location"
|
131
|
-
:apiKey="GOOGLE_MAPS_API_KEY"
|
132
|
-
class="radius-big o-hidden"
|
133
|
-
@update:location="newLocation => {
|
134
|
-
departments.state.department.location = newLocation;
|
135
|
-
}"
|
136
|
-
@update:address="newAddress => {
|
137
|
-
departments.state.department.address = newAddress;
|
138
|
-
}"
|
139
|
-
/>
|
140
146
|
|
141
147
|
</div>
|
142
|
-
</div> -->
|
143
148
|
|
144
|
-
<section
|
145
|
-
<Button :submit="onDelete" :callback="redirectToDash" class="bg-grey">Delete
|
149
|
+
<section v-if="route.params.department" class="flex-nowrap flex pd-thin">
|
150
|
+
<Button :submit="onDelete" :callback="redirectToDash" class="bg-grey">Delete Department</Button>
|
146
151
|
</section>
|
147
152
|
|
148
153
|
|
149
154
|
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
<div class="mn-b-regular flex-v-center flex-nowrap flex">
|
154
|
-
<h3 class="mn-r-small">Команда</h3>
|
155
|
-
<div>
|
156
|
-
<a class="t-main h5" @click="openMemberPopup()">+</a>
|
157
|
-
</div>
|
158
|
-
</div>
|
159
|
-
|
160
|
-
<Popup title="Добавить участника" @close-popup="closeMemberPopup" :isPopupOpen="isOpenAddMemberPopup">
|
161
|
-
<DepartmentMemberModify
|
162
|
-
:members="departments.state.department.members"
|
163
|
-
:member="selectedMember"
|
164
|
-
:users="users"
|
165
|
-
@callback="closeMemberPopup"
|
166
|
-
/>
|
167
|
-
</Popup>
|
168
|
-
|
169
|
-
|
170
|
-
<ul class=mn-b-small>
|
171
|
-
<li v-if="departments.state.department.members.length < 1">В отделе еще нет участников</li>
|
172
|
-
<User
|
173
|
-
class="bg-grey o-hidden radius-small mn-b-thin"
|
174
|
-
v-for="(member, index) in departments.state.department.members"
|
175
|
-
:key="index"
|
176
|
-
:user="member.user"
|
177
|
-
:position="member.position"
|
178
|
-
@click="openMemberPopup(index)"
|
179
|
-
/>
|
180
|
-
</ul>
|
181
|
-
|
155
|
+
<div id="dash" class="pd-medium bg-white">
|
182
156
|
|
183
157
|
<Popup title="Добавить подотдел" @close-popup="closeDepartmentPopup" :isPopupOpen="isOpenDepartmentPopup">
|
184
158
|
<DepartmentSubDepartmentModify
|
@@ -208,7 +182,7 @@
|
|
208
182
|
</ul>
|
209
183
|
|
210
184
|
|
211
|
-
</div>
|
185
|
+
</div>
|
212
186
|
</div>
|
213
187
|
</template>
|
214
188
|
|
@@ -219,7 +193,6 @@ import Cookies from "js-cookie";
|
|
219
193
|
import Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'
|
220
194
|
import UploadImage from '@pf/src/components/UploadImage/UploadImage.vue';
|
221
195
|
|
222
|
-
|
223
196
|
import Tab from "@pf/src/components/Tab/Tab.vue";
|
224
197
|
import Field from "@pf/src/components/Field/Field.vue";
|
225
198
|
import Select from "@pf/src/components/Select/Select.vue";
|
@@ -228,6 +201,7 @@ import Address from "@pf/src/components/Address/Address.vue";
|
|
228
201
|
import LocationMarker from "@pf/src/components/LocationMarker/LocationMarker.vue";
|
229
202
|
import Button from "@pf/src/components/Button/Button.vue";
|
230
203
|
import Popup from "@pf/src/components/Popup/Popup.vue";
|
204
|
+
import Block from '@pf/src/components/Block/Block.vue';
|
231
205
|
|
232
206
|
import EditArray from "@pf/src/modules/organizations/components/blocks/EditArray.vue";
|
233
207
|
import DepartmentSub from "@pf/src/modules/organizations/components/blocks/DepartmentSub.vue";
|
@@ -235,9 +209,11 @@ import DepartmentMemberModify from "@pf/src/modules/organizations/components/blo
|
|
235
209
|
import DepartmentSubDepartmentModify from "@pf/src/modules/organizations/components/blocks/DepartmentMemberModify.vue";
|
236
210
|
import User from '@pf/src/modules/organizations/components/blocks/User.vue';
|
237
211
|
|
238
|
-
import * as departments from "@pf/src/modules/
|
212
|
+
import * as departments from "@pf/src/modules/organizations/store/departments";
|
239
213
|
import * as memberships from "@pf/src/modules/organizations/store/memberships";
|
240
214
|
|
215
|
+
|
216
|
+
|
241
217
|
const router = useRouter();
|
242
218
|
const route = useRoute();
|
243
219
|
const tabOrganization = ref("details");
|
@@ -245,7 +221,7 @@ const showAddNew = ref(false);
|
|
245
221
|
|
246
222
|
async function fetchData() {
|
247
223
|
if (route.params.department) {
|
248
|
-
await memberships.actions.read(route.params.
|
224
|
+
await memberships.actions.read({target: route.params._id});
|
249
225
|
}
|
250
226
|
const users = ref(memberships.state.memberships);
|
251
227
|
|