aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml3
-rw-r--r--src/components/delete_button/delete_button.js17
-rw-r--r--src/components/delete_button/delete_button.vue20
-rw-r--r--src/components/status/status.js12
-rw-r--r--src/components/status/status.vue13
-rw-r--r--src/modules/statuses.js2
6 files changed, 45 insertions, 22 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cd576082..32e8cb3b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -18,3 +18,6 @@ build:
script:
- npm install
- npm run build
+ artifacts:
+ paths:
+ - dist/
diff --git a/src/components/delete_button/delete_button.js b/src/components/delete_button/delete_button.js
new file mode 100644
index 00000000..726509d0
--- /dev/null
+++ b/src/components/delete_button/delete_button.js
@@ -0,0 +1,17 @@
+const DeleteButton = {
+ props: [ 'status' ],
+ methods: {
+ deleteStatus () {
+ const confirmed = confirm('Do you really want to delete this status?')
+ if (confirmed) {
+ this.$store.dispatch('deleteStatus', { id: this.status.id })
+ }
+ }
+ },
+ computed: {
+ currentUser () { return this.$store.state.users.currentUser },
+ canDelete () { return this.currentUser.rights.delete_others_notice || this.status.user.id == this.currentUser.id }
+ }
+}
+
+export default DeleteButton
diff --git a/src/components/delete_button/delete_button.vue b/src/components/delete_button/delete_button.vue
new file mode 100644
index 00000000..304f8a63
--- /dev/null
+++ b/src/components/delete_button/delete_button.vue
@@ -0,0 +1,20 @@
+<template>
+ <div v-if="canDelete">
+ <a href="#" v-on:click.prevent="deleteStatus()">
+ <i class='fa icon-cancel delete-status'></i>
+ </a>
+ </div>
+</template>
+
+<script src="./delete_button.js" ></script>
+
+<style lang='scss'>
+ @import '../../_variables.scss';
+
+ .icon-cancel,.delete-status {
+ cursor: pointer;
+ &:hover {
+ color: $red;
+ }
+ }
+</style>
diff --git a/src/components/status/status.js b/src/components/status/status.js
index 8b2561cf..27911478 100644
--- a/src/components/status/status.js
+++ b/src/components/status/status.js
@@ -1,6 +1,7 @@
import Attachment from '../attachment/attachment.vue'
import FavoriteButton from '../favorite_button/favorite_button.vue'
import RetweetButton from '../retweet_button/retweet_button.vue'
+import DeleteButton from '../delete_button/delete_button.vue'
import PostStatusForm from '../post_status_form/post_status_form.vue'
const Status = {
@@ -20,25 +21,18 @@ const Status = {
},
loggedIn () {
return !!this.$store.state.users.currentUser
- },
- deleted () { return this.statusoid.deleted },
- canDelete () { return this.statusoid.user.rights.delete_others_notice || this.statusoid.user.id == this.$store.state.users.currentUser.id }
+ }
},
components: {
Attachment,
FavoriteButton,
RetweetButton,
+ DeleteButton,
PostStatusForm
},
methods: {
toggleReplying () {
this.replying = !this.replying
- },
- deleteStatus () {
- const confirmed = confirm('Do you really want to delete this status?')
- if (confirmed) {
- this.$store.dispatch('deleteStatus', { id: this.status.id })
- }
}
}
}
diff --git a/src/components/status/status.vue b/src/components/status/status.vue
index 6b9bca5b..42499407 100644
--- a/src/components/status/status.vue
+++ b/src/components/status/status.vue
@@ -52,11 +52,7 @@
</div>
<retweet-button :status=status></retweet-button>
<favorite-button :status=status></favorite-button>
- <div v-if="canDelete">
- <a href="#" v-on:click.prevent="deleteStatus">
- <i class='fa icon-cancel delete-status'></i>
- </a>
- </div>
+ <delete-button :status=status></delete-button>
</div>
<post-status-form v-if="replying" :reply-to="status.id" :attentions="status.attentions" :repliedUser="status.user" v-on:posted="toggleReplying"></post-status-form>
@@ -130,11 +126,4 @@
.status-el:last-child .status {
border: none
}
-
- .icon-cancel,.delete-status {
- cursor: pointer;
- &:hover {
- color: $red;
- }
- }
</style>
diff --git a/src/modules/statuses.js b/src/modules/statuses.js
index aab198d8..1db1f1b0 100644
--- a/src/modules/statuses.js
+++ b/src/modules/statuses.js
@@ -203,7 +203,7 @@ const addNewStatuses = (state, { statuses, showImmediately = false, timeline, us
let retweet
// If the retweeted status is already there, don't add the retweet
// to the timeline.
- if (timeline && find(timelineObject.visibleStatuses, {id: retweetedStatus.id})) {
+ if (timeline && find(timelineObject.statuses, {id: retweetedStatus.id})) {
// Already have it visible, don't add to timeline, don't show.
retweet = addStatus(status, false, false)
} else {