Remove discussion_lock
This commit is contained in:
parent
a319418d9c
commit
579092f53a
5 changed files with 17 additions and 75 deletions
|
@ -1,46 +0,0 @@
|
|||
class DiscussionLock {
|
||||
constructor(containerElm) {
|
||||
this.containerElm = containerElm;
|
||||
|
||||
const lockButton = containerElm.querySelector('.js-discussion-lock-button');
|
||||
console.log(lockButton);
|
||||
if (lockButton) {
|
||||
// remove class so we don't bind twice
|
||||
lockButton.classList.remove('js-discussion-lock-button');
|
||||
console.log(lockButton);
|
||||
lockButton.addEventListener('click', this.toggleDiscussionLock.bind(this));
|
||||
}
|
||||
}
|
||||
|
||||
toggleDiscussionLock(event) {
|
||||
const button = event.currentTarget;
|
||||
const buttonSpan = button.querySelector('span');
|
||||
if (!buttonSpan || button.classList.contains('disabled')) {
|
||||
return;
|
||||
}
|
||||
button.classList.add('disabled');
|
||||
|
||||
const url = this.containerElm.dataset.url;
|
||||
const lock = this.containerElm.dataset.lock;
|
||||
const issuableType = this.containerElm.dataset.issuableType;
|
||||
|
||||
const data = {}
|
||||
data[issuableType] = {}
|
||||
data[issuableType].discussion_locked = lock
|
||||
|
||||
$.ajax({
|
||||
url,
|
||||
data: data,
|
||||
type: 'PUT'
|
||||
}).done((data) => {
|
||||
button.classList.remove('disabled');
|
||||
});
|
||||
}
|
||||
|
||||
static bindAll(selector) {
|
||||
[].forEach.call(document.querySelectorAll(selector), elm => new DiscussionLock(elm));
|
||||
}
|
||||
}
|
||||
|
||||
window.gl = window.gl || {};
|
||||
window.gl.DiscussionLock = DiscussionLock;
|
|
@ -80,7 +80,6 @@ import './copy_as_gfm';
|
|||
import './copy_to_clipboard';
|
||||
import './create_label';
|
||||
import './diff';
|
||||
import './discussion_lock';
|
||||
import './dropzone_input';
|
||||
import './due_date_select';
|
||||
import './files_comment_button';
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
= icon('angle-double-left')
|
||||
|
||||
.issuable-meta
|
||||
- if @merge_request.discussion_locked
|
||||
- if @merge_request.discussion_locked?
|
||||
= icon('lock', class: 'issuable-warning-icon')
|
||||
= issuable_meta(@merge_request, @project, "Merge request")
|
||||
|
||||
|
|
|
@ -135,17 +135,6 @@
|
|||
%button.btn.btn-default.pull-right.js-subscribe-button.issuable-subscribe-button.hide-collapsed{ type: "button" }
|
||||
%span= subscribed ? 'Unsubscribe' : 'Subscribe'
|
||||
|
||||
- if can_edit_issuable
|
||||
- locked = issuable.discussion_locked?
|
||||
.block.light.discussion-lock{ data: { lock: (!locked).to_s, url: "#{issuable_json_path(issuable)}?basic=true", issuable_type: issuable.class.to_s.underscore } }
|
||||
.sidebar-collapsed-icon
|
||||
= icon('rss', 'aria-hidden': 'true')
|
||||
%span.issuable-header-text.hide-collapsed.pull-left
|
||||
Discussion Lock
|
||||
- subscribtion_status = locked ? 'locked' : 'not locked'
|
||||
%button.btn.btn-default.pull-right.js-discussion-lock-button.issuable-discussion-lock-button.hide-collapsed{ type: "button" }
|
||||
%span= locked ? 'Unlock' : 'Lock'
|
||||
|
||||
- project_ref = cross_project_reference(@project, issuable)
|
||||
.block.project-reference
|
||||
.sidebar-collapsed-icon.dont-change-state
|
||||
|
|
32
db/schema.rb
32
db/schema.rb
|
@ -32,8 +32,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
t.text "description", null: false
|
||||
t.string "header_logo"
|
||||
t.string "logo"
|
||||
t.datetime_with_timezone "created_at", null: false
|
||||
t.datetime_with_timezone "updated_at", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.text "description_html"
|
||||
t.integer "cached_markdown_version"
|
||||
end
|
||||
|
@ -275,8 +275,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
t.string "encrypted_value_iv"
|
||||
t.integer "group_id", null: false
|
||||
t.boolean "protected", default: false, null: false
|
||||
t.datetime_with_timezone "created_at", null: false
|
||||
t.datetime_with_timezone "updated_at", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
end
|
||||
|
||||
add_index "ci_group_variables", ["group_id", "key"], name: "index_ci_group_variables_on_group_id_and_key", unique: true, using: :btree
|
||||
|
@ -288,8 +288,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
t.string "encrypted_value_salt"
|
||||
t.string "encrypted_value_iv"
|
||||
t.integer "pipeline_schedule_id", null: false
|
||||
t.datetime_with_timezone "created_at"
|
||||
t.datetime_with_timezone "updated_at"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
add_index "ci_pipeline_schedule_variables", ["pipeline_schedule_id", "key"], name: "index_ci_pipeline_schedule_variables_on_schedule_id_and_key", unique: true, using: :btree
|
||||
|
@ -537,8 +537,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
t.integer "project_id"
|
||||
t.integer "author_id", null: false
|
||||
t.integer "target_id"
|
||||
t.datetime_with_timezone "created_at", null: false
|
||||
t.datetime_with_timezone "updated_at", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.integer "action", limit: 2, null: false
|
||||
t.string "target_type"
|
||||
end
|
||||
|
@ -576,8 +576,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
add_index "forked_project_links", ["forked_to_project_id"], name: "index_forked_project_links_on_forked_to_project_id", unique: true, using: :btree
|
||||
|
||||
create_table "gpg_keys", force: :cascade do |t|
|
||||
t.datetime_with_timezone "created_at", null: false
|
||||
t.datetime_with_timezone "updated_at", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.integer "user_id"
|
||||
t.binary "primary_keyid"
|
||||
t.binary "fingerprint"
|
||||
|
@ -589,8 +589,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
add_index "gpg_keys", ["user_id"], name: "index_gpg_keys_on_user_id", using: :btree
|
||||
|
||||
create_table "gpg_signatures", force: :cascade do |t|
|
||||
t.datetime_with_timezone "created_at", null: false
|
||||
t.datetime_with_timezone "updated_at", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.integer "project_id"
|
||||
t.integer "gpg_key_id"
|
||||
t.binary "commit_sha"
|
||||
|
@ -789,8 +789,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
add_index "members", ["user_id"], name: "index_members_on_user_id", using: :btree
|
||||
|
||||
create_table "merge_request_diff_commits", id: false, force: :cascade do |t|
|
||||
t.datetime_with_timezone "authored_date"
|
||||
t.datetime_with_timezone "committed_date"
|
||||
t.datetime "authored_date"
|
||||
t.datetime "committed_date"
|
||||
t.integer "merge_request_diff_id", null: false
|
||||
t.integer "relative_order", null: false
|
||||
t.binary "sha", null: false
|
||||
|
@ -1114,8 +1114,8 @@ ActiveRecord::Schema.define(version: 20170905112933) do
|
|||
|
||||
create_table "project_auto_devops", force: :cascade do |t|
|
||||
t.integer "project_id", null: false
|
||||
t.datetime_with_timezone "created_at", null: false
|
||||
t.datetime_with_timezone "updated_at", null: false
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.boolean "enabled"
|
||||
t.string "domain"
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue