mirror of
https://github.com/kihashi/stardew_community_checklist.git
synced 2025-10-19 08:03:17 +00:00
Merge pull request #17 from kihashi/feature/#11-items-in-multiple-bundles
Updated the user_data array to store the position from `item.bundles`.
This commit is contained in:
commit
a05f216801
24
index.html
24
index.html
@ -163,11 +163,11 @@
|
||||
<div class="content">
|
||||
<p class="control">
|
||||
<a class="button is-fullwidth" v-for="bundle_id in item.bundles"
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||
<span class="icon">
|
||||
<i class="fa"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
</span>
|
||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||
</a>
|
||||
@ -237,11 +237,11 @@
|
||||
<div class="content">
|
||||
<p class="control">
|
||||
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||
<span class="icon">
|
||||
<i class="fa"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
</span>
|
||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||
</a>
|
||||
@ -312,11 +312,11 @@
|
||||
<div class="content">
|
||||
<p class="control">
|
||||
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||
<span class="icon">
|
||||
<i class="fa"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
</span>
|
||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||
</a>
|
||||
@ -389,11 +389,11 @@
|
||||
<div class="content">
|
||||
<p class="control">
|
||||
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
||||
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||
<span class="icon">
|
||||
<i class="fa"
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||
</span>
|
||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||
</a>
|
||||
|
||||
30
main.js
30
main.js
@ -70,23 +70,31 @@ var v = new Vue({
|
||||
change_skill: function(new_skill){
|
||||
this.active_skill = new_skill;
|
||||
},
|
||||
addItemToBundle: function(bundleId, itemId){
|
||||
this.user_data[bundleId].push(itemId);
|
||||
addItemToBundle: function(bundleId, itemId, itemPosition){
|
||||
this.user_data[bundleId].push({item: itemId, position: itemPosition});
|
||||
},
|
||||
removeItemFromBundle: function(bundleId, itemId){
|
||||
i = this.user_data[bundleId].indexOf(itemId);
|
||||
this.user_data[bundleId].splice(i, 1);
|
||||
removeItemFromBundle: function(bundleId, itemId, itemPosition){
|
||||
console.log("Removing item from bundle" + bundleId + " | " + itemId + " | " + itemPosition);
|
||||
for(i = 0; i < this.user_data[bundleId].length; i++){
|
||||
if(this.user_data[bundleId][i].item === itemId && this.user_data[bundleId][i].position === itemPosition){
|
||||
console.log("Found a match with: ");
|
||||
console.log(this.user_data[bundleId][i]);
|
||||
this.user_data[bundleId].splice(i, 1);
|
||||
}
|
||||
}
|
||||
},
|
||||
toggleItemInBundle: function(bundleId, itemId){
|
||||
if(this.isItemInBundle(bundleId, itemId)){
|
||||
this.removeItemFromBundle(bundleId, itemId);
|
||||
toggleItemInBundle: function(bundleId, itemId, itemPosition){
|
||||
if(this.isItemInBundle(bundleId, itemId, itemPosition)){
|
||||
this.removeItemFromBundle(bundleId, itemId, itemPosition);
|
||||
}
|
||||
else{
|
||||
this.addItemToBundle(bundleId, itemId);
|
||||
this.addItemToBundle(bundleId, itemId, itemPosition);
|
||||
}
|
||||
},
|
||||
isItemInBundle: function(bundleId, itemId){
|
||||
if(this.user_data[bundleId].indexOf(itemId) > -1){
|
||||
isItemInBundle: function(bundleId, itemId, itemPosition){
|
||||
if(this.user_data[bundleId].filter(function(element){
|
||||
return element.item === itemId && element.position === itemPosition;
|
||||
}).length > 0){
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user