diff --git a/app/imports/ui/properties/components/spells/SpellList.vue b/app/imports/ui/properties/components/spells/SpellList.vue
index f14372a4..d5ecd025 100644
--- a/app/imports/ui/properties/components/spells/SpellList.vue
+++ b/app/imports/ui/properties/components/spells/SpellList.vue
@@ -27,6 +27,7 @@
class="item"
:data-id="`spell-list-tile-${spell._id}`"
:model="spell"
+ :preparing-spells="preparingSpells"
@click="clickProperty(spell._id)"
/>
@@ -71,6 +72,7 @@ export default {
type: Object,
required: true,
},
+ preparingSpells: Boolean,
},
data(){ return {
dataSpells: [],
diff --git a/app/imports/ui/properties/components/spells/SpellListCard.vue b/app/imports/ui/properties/components/spells/SpellListCard.vue
index 8c69990b..199126f0 100644
--- a/app/imports/ui/properties/components/spells/SpellListCard.vue
+++ b/app/imports/ui/properties/components/spells/SpellListCard.vue
@@ -9,10 +9,48 @@
{{ model.name }}
+
+
+
+ more_vert
+
+
+
+
+
+
+
+
+ {{ numPrepared }}/{{ model.maxPreparedResult }} spells prepared
+
+
+
@@ -28,9 +66,15 @@ export default {
SpellList,
},
props: {
- model: Object,
+ model: {
+ type: Object,
+ required: true,
+ },
organize: Boolean,
},
+ data(){ return {
+ preparingSpells: false,
+ }},
meteor: {
spells(){
return getActiveProperties({
@@ -46,6 +90,21 @@ export default {
},
});
},
+ numPrepared(){
+ return getActiveProperties({
+ ancestorId: this.model._id,
+ filter: {
+ type: 'spell',
+ prepared: true,
+ alwaysPrepared: {$ne: true},
+ },
+ }).length;
+ },
+ preparedError(){
+ let numPrepared = this.numPrepared;
+ let maxPrepared = this.model.maxPreparedResult;
+ return numPrepared !== maxPrepared
+ },
},
methods: {
clickSpellList(_id){
diff --git a/app/imports/ui/properties/components/spells/SpellListTile.vue b/app/imports/ui/properties/components/spells/SpellListTile.vue
index e74c46c2..4046f732 100644
--- a/app/imports/ui/properties/components/spells/SpellListTile.vue
+++ b/app/imports/ui/properties/components/spells/SpellListTile.vue
@@ -19,7 +19,15 @@
+ {}"
+ @change="setPrepared"
+ />
@@ -31,8 +39,13 @@
diff --git a/app/imports/ui/properties/forms/SpellForm.vue b/app/imports/ui/properties/forms/SpellForm.vue
index 3a10f4cb..133cce6b 100644
--- a/app/imports/ui/properties/forms/SpellForm.vue
+++ b/app/imports/ui/properties/forms/SpellForm.vue
@@ -1,14 +1,6 @@
diff --git a/app/imports/ui/properties/viewers/SpellListViewer.vue b/app/imports/ui/properties/viewers/SpellListViewer.vue
index b8cbce8a..afcb35cd 100644
--- a/app/imports/ui/properties/viewers/SpellListViewer.vue
+++ b/app/imports/ui/properties/viewers/SpellListViewer.vue
@@ -4,7 +4,7 @@