aboutsummaryrefslogtreecommitdiff
path: root/client/js/controls
diff options
context:
space:
mode:
authorrr-2016-10-22 10:03:38 +0200
committerrr-2016-10-22 14:05:56 +0200
commitf1445b9c24b286a9f74a2fead655ab5c169bc74b (patch)
treeeba026eb8dcd53f8d4db58e9dc50af1b857d92ed /client/js/controls
parent8c0fa7f49ea24606e1887b76e89c2bfd155b1776 (diff)
client/posts: add post merging
Diffstat (limited to 'client/js/controls')
-rw-r--r--client/js/controls/post_edit_sidebar_control.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/client/js/controls/post_edit_sidebar_control.js b/client/js/controls/post_edit_sidebar_control.js
index 2dc3629..49576a1 100644
--- a/client/js/controls/post_edit_sidebar_control.js
+++ b/client/js/controls/post_edit_sidebar_control.js
@@ -36,6 +36,7 @@ class PostEditSidebarControl extends events.EventTarget {
canCreateAnonymousPosts: api.hasPrivilege('posts:create:anonymous'),
canDeletePosts: api.hasPrivilege('posts:delete'),
canFeaturePosts: api.hasPrivilege('posts:feature'),
+ canMergePosts: api.hasPrivilege('posts:merge'),
}));
new ExpanderControl(
@@ -108,6 +109,11 @@ class PostEditSidebarControl extends events.EventTarget {
'click', e => this._evtFeatureClick(e));
}
+ if (this._mergeLinkNode) {
+ this._mergeLinkNode.addEventListener(
+ 'click', e => this._evtMergeClick(e));
+ }
+
if (this._deleteLinkNode) {
this._deleteLinkNode.addEventListener(
'click', e => this._evtDeleteClick(e));
@@ -186,6 +192,15 @@ class PostEditSidebarControl extends events.EventTarget {
}
}
+ _evtMergeClick(e) {
+ e.preventDefault();
+ this.dispatchEvent(new CustomEvent('merge', {
+ detail: {
+ post: this._post,
+ },
+ }));
+ }
+
_evtDeleteClick(e) {
e.preventDefault();
if (confirm('Are you sure you want to delete this post?')) {
@@ -314,6 +329,10 @@ class PostEditSidebarControl extends events.EventTarget {
return this._formNode.querySelector('.management .feature');
}
+ get _mergeLinkNode() {
+ return this._formNode.querySelector('.management .merge');
+ }
+
get _deleteLinkNode() {
return this._formNode.querySelector('.management .delete');
}

© 2015 - 2026 Jakob L. Kreuze