diff --git a/frontend/src/components/Admin/ManageUsers/GroupCard.vue b/frontend/src/components/Admin/ManageUsers/GroupCard.vue
new file mode 100644
index 000000000..102c03039
--- /dev/null
+++ b/frontend/src/components/Admin/ManageUsers/GroupCard.vue
@@ -0,0 +1,123 @@
+
+
+
+
+
+ {{ group.name }}
+
+ Group ID: {{ group.id }}
+
+
+
+ {{ property.icon || "mdi-account" }}
+
+
+
+ {{ property.text }}
+ {{ property.value }}
+
+
+
+
+
+
+
+
+ Delete
+
+
+
+ Edit
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/src/components/Admin/ManageUsers/GroupDashboard.vue b/frontend/src/components/Admin/ManageUsers/GroupDashboard.vue
new file mode 100644
index 000000000..026411a18
--- /dev/null
+++ b/frontend/src/components/Admin/ManageUsers/GroupDashboard.vue
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+ Create Group
+
+
+
+
+
+ mdi-account-group
+
+
+
+ Create Group
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cancel
+
+
+ Create
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/src/components/Admin/ManageUsers/TheGroupTable.vue b/frontend/src/components/Admin/ManageUsers/TheGroupTable.vue
deleted file mode 100644
index ad8a96854..000000000
--- a/frontend/src/components/Admin/ManageUsers/TheGroupTable.vue
+++ /dev/null
@@ -1,256 +0,0 @@
-
-
-
-
-
- mdi-account-group
-
-
- User Groups
-
-
-
-
-
-
-
-
-
-
- Create Group
-
-
-
-
-
- mdi-account
-
-
-
- {{ formTitle }}
-
-
-
-
- User ID: {{ editedItem.id }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cancel
-
-
- Save
-
-
-
-
-
-
-
-
-
-
-
- mdi-delete
-
- Delete
-
-
-
- mdi-pencil
-
- Edit
-
-
-
- {{ item.admin ? "Admin" : "User" }}
-
-
-
- Reset
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/frontend/src/components/Admin/ManageUsers/TheSignUpTable.vue b/frontend/src/components/Admin/ManageUsers/TheSignUpTable.vue
index efc8bb668..153355244 100644
--- a/frontend/src/components/Admin/ManageUsers/TheSignUpTable.vue
+++ b/frontend/src/components/Admin/ManageUsers/TheSignUpTable.vue
@@ -68,7 +68,7 @@
-
+
diff --git a/frontend/src/components/Admin/ManageUsers/TheUserTable.vue b/frontend/src/components/Admin/ManageUsers/TheUserTable.vue
index b0fc09e9d..282a3c1f9 100644
--- a/frontend/src/components/Admin/ManageUsers/TheUserTable.vue
+++ b/frontend/src/components/Admin/ManageUsers/TheUserTable.vue
@@ -12,35 +12,18 @@
@close="closeDelete"
/>
-
- mdi-account
-
-
- Users
-
-
-
-
-
-
- Create Group
-
-
-
+
+
+
+
@@ -83,11 +66,12 @@
>
-
+ :items="existingGroups"
+ label="User Group"
+ >
+
+
+
+
+ {{ titleIcon }}
+
+
+
+ {{ title }}
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/src/components/UI/Confirmation.vue b/frontend/src/components/UI/Confirmation.vue
index ed7b3a178..808c14aeb 100644
--- a/frontend/src/components/UI/Confirmation.vue
+++ b/frontend/src/components/UI/Confirmation.vue
@@ -8,10 +8,10 @@
@keydown.esc="cancel"
>
-
+
{{ icon }}
-
+
-
+
@@ -43,15 +43,18 @@
diff --git a/frontend/src/pages/Admin/MealPlanner/index.vue b/frontend/src/pages/Admin/MealPlanner/index.vue
index feeb60841..d6245aa1a 100644
--- a/frontend/src/pages/Admin/MealPlanner/index.vue
+++ b/frontend/src/pages/Admin/MealPlanner/index.vue
@@ -13,13 +13,17 @@
outlined
:flat="isFlat"
elavation="0"
- v-model="planCategories"
+ v-model="groupSettings.categories"
:items="categories"
item-text="name"
- item-value="name"
+ return-object
multiple
chips
- :hint="$t('meal-plan.only-recipes-with-these-categories-will-be-used-in-meal-plans')"
+ :hint="
+ $t(
+ 'meal-plan.only-recipes-with-these-categories-will-be-used-in-meal-plans'
+ )
+ "
class="mt-2"
persistent-hint
>
@@ -50,12 +54,15 @@
"settings.webhooks.the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at"
)
}}
- {{ time }}
+ {{ groupSettings.webhookTime }}
-
+
@@ -68,7 +75,12 @@
-
+
mdi-minus
@@ -76,7 +88,7 @@
@@ -87,7 +99,7 @@
mdi-plus
-
+
mdi-content-save
{{ $t("general.save") }}
@@ -104,14 +116,19 @@ export default {
},
data() {
return {
- name: "main",
- webhooks: [],
- enabled: false,
- time: "",
- planCategories: [],
+ groupSettings: {
+ name: "home",
+ id: 1,
+ mealplans: [],
+ categories: [],
+ webhookUrls: [],
+ webhookTime: "00:00",
+ webhookEnable: false,
+ },
};
},
- mounted() {
+ async mounted() {
+ await this.$store.dispatch("requestCurrentGroup");
this.getSiteSettings();
},
computed: {
@@ -119,44 +136,39 @@ export default {
return this.$store.getters.getCategories;
},
isFlat() {
- return this.planCategories ? true : false;
+ return this.groupSettings.categories >= 1 ? true : false;
},
},
methods: {
saveTime(value) {
- this.time = value;
+ this.groupSettings.webhookTime = value;
},
- async getSiteSettings() {
- let settings = await api.settings.requestAll();
- this.webhooks = settings.webhooks.webhookURLs;
- this.name = settings.name;
- this.time = settings.webhooks.webhookTime;
- this.enabled = settings.webhooks.enabled;
- this.planCategories = settings.planCategories;
+ getSiteSettings() {
+ let settings = this.$store.getters.getCurrentGroup;
+
+ this.groupSettings.name = settings.name;
+ this.groupSettings.id = settings.id;
+ this.groupSettings.categories = settings.categories;
+ this.groupSettings.webhookUrls = settings.webhookUrls;
+ this.groupSettings.webhookTime = settings.webhookTime;
+ this.groupSettings.webhookEnable = settings.webhookEnable;
},
addWebhook() {
- this.webhooks.push(" ");
+ this.groupSettings.webhookUrls.push(" ");
},
removeWebhook(index) {
- this.webhooks.splice(index, 1);
+ this.groupSettings.webhookUrls.splice(index, 1);
},
- saveWebhooks() {
- const body = {
- name: this.name,
- planCategories: this.planCategories,
- webhooks: {
- webhookURLs: this.webhooks,
- webhookTime: this.time,
- enabled: this.enabled,
- },
- };
- api.settings.update(body);
+ async saveGroupSettings() {
+ await api.groups.update(this.groupSettings);
+ await this.$store.dispatch("requestCurrentGroup");
+ this.getSiteSettings();
},
testWebhooks() {
api.settings.testWebhooks();
},
removeCategory(index) {
- this.planCategories.splice(index, 1);
+ this.groupSettings.categories.splice(index, 1);
},
},
};
diff --git a/frontend/src/pages/Admin/index.vue b/frontend/src/pages/Admin/index.vue
index 6c0f2483f..b4743cffe 100644
--- a/frontend/src/pages/Admin/index.vue
+++ b/frontend/src/pages/Admin/index.vue
@@ -1,11 +1,13 @@
-
-
-
-
-
-
-
+