refs #58 Unfavourite on toot
This commit is contained in:
parent
7bc3440dc1
commit
66ba295f4d
|
@ -16,7 +16,7 @@
|
|||
<div class="tool-box">
|
||||
<el-button type="text"><icon name="reply" scale="0.9"></icon></el-button>
|
||||
<el-button type="text"><icon name="retweet" scale="0.9"></icon></el-button>
|
||||
<el-button type="text" @click="addFavourite(message)" :class="message.favourited ? 'favourited' : ''"><icon name="star" scale="0.9"></icon></el-button>
|
||||
<el-button type="text" @click="changeFavourite(message)" :class="message.favourited ? 'favourited' : ''"><icon name="star" scale="0.9"></icon></el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
@ -41,14 +41,24 @@ export default {
|
|||
shell.openExternal(link)
|
||||
}
|
||||
},
|
||||
addFavourite (message) {
|
||||
this.$store.dispatch('TimelineSpace/Cards/Toot/addFavourite', message)
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
message: 'Failed to favourite',
|
||||
type: 'error'
|
||||
changeFavourite (message) {
|
||||
if (message.favourited) {
|
||||
this.$store.dispatch('TimelineSpace/Cards/Toot/removeFavourite', message)
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
message: 'Failed to unfavourite',
|
||||
type: 'error'
|
||||
})
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.$store.dispatch('TimelineSpace/Cards/Toot/addFavourite', message)
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
message: 'Failed to favourite',
|
||||
type: 'error'
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,6 +19,21 @@ const Toot = {
|
|||
resolve(res)
|
||||
})
|
||||
})
|
||||
},
|
||||
removeFavourite ({ state, commit, rootState }, message) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const client = new Mastodon(
|
||||
{
|
||||
access_token: rootState.TimelineSpace.account.accessToken,
|
||||
api_url: rootState.TimelineSpace.account.baseURL + '/api/v1'
|
||||
}
|
||||
)
|
||||
client.post(`/statuses/${message.id}/unfavourite`, {}, (err, data, res) => {
|
||||
if (err) return reject(err)
|
||||
// TODO: update toot data
|
||||
resolve(res)
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue