introduce cloneCard backendFunctionality
Signed-off-by: grnd-alt <salimbelakkaf@outlook.de>
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
:max-height="100"
|
||||
label="title" />
|
||||
|
||||
<button :disabled="!isBoardAndStackChoosen" class="primary" @click="moveCard">
|
||||
<button :disabled="!isBoardAndStackChoosen" class="primary" @click="cloneCard">
|
||||
{{ t('deck', 'Clone card') }}
|
||||
</button>
|
||||
<button @click="modalShow = false">
|
||||
@@ -89,9 +89,8 @@ export default {
|
||||
return err
|
||||
}
|
||||
},
|
||||
async moveCard() {
|
||||
this.copiedCard = Object.assign({}, this.card)
|
||||
this.copiedCard.stackId = this.selectedStack.id
|
||||
async cloneCard() {
|
||||
this.$store.dispatch('cloneCard', { cardId: this.card.id, targetStackId: this.selectedStack.id })
|
||||
this.$store.dispatch('addCard', this.copiedCard)
|
||||
this.modalShow = false
|
||||
},
|
||||
|
||||
@@ -28,6 +28,23 @@ export class CardApi {
|
||||
})
|
||||
}
|
||||
|
||||
cloneCard(cardId, targetStackId) {
|
||||
return axios.post(this.url(`/cards/${cardId}/clone`), {
|
||||
targetStackId,
|
||||
})
|
||||
.then(
|
||||
(response) => {
|
||||
return Promise.resolve(response.data)
|
||||
},
|
||||
(err) => {
|
||||
return Promise.reject(err)
|
||||
},
|
||||
)
|
||||
.catch((err) => {
|
||||
return Promise.reject(err)
|
||||
})
|
||||
}
|
||||
|
||||
deleteCard(cardId) {
|
||||
return axios.delete(this.url(`/cards/${cardId}`))
|
||||
.then(
|
||||
|
||||
@@ -272,6 +272,11 @@ export default {
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
async cloneCard({ commit }, { cardId, targetStackId }) {
|
||||
const createdCard = await apiClient.cloneCard(cardId, targetStackId)
|
||||
commit('addCard', createdCard)
|
||||
return createdCard
|
||||
},
|
||||
async addCard({ commit }, card) {
|
||||
const createdCard = await apiClient.addCard(card)
|
||||
commit('addCard', createdCard)
|
||||
|
||||
Reference in New Issue
Block a user