Revert "Support for plugins to add bulk operations"

This reverts commit 7a508b201a.
This commit is contained in:
Régis Hanol 2015-03-07 02:30:53 +01:00
parent f95c86ac72
commit 12919f72fa
7 changed files with 30 additions and 52 deletions

View File

@ -1,39 +1,11 @@
import ModalFunctionality from 'discourse/mixins/modal-functionality'; import ModalFunctionality from 'discourse/mixins/modal-functionality';
const _buttons = [];
function addBulkButton(action, key) {
_buttons.push({ action: action, label: "topics.bulk." + key });
}
// Default buttons
addBulkButton('showChangeCategory', 'change_category');
addBulkButton('deleteTopics', 'delete');
addBulkButton('closeTopics', 'close_topics');
addBulkButton('archiveTopics', 'archive_topics');
addBulkButton('showNotificationLevel', 'notification_level');
addBulkButton('resetRead', 'reset_read');
// Modal for performing bulk actions on topics // Modal for performing bulk actions on topics
export default Ember.ArrayController.extend(ModalFunctionality, { export default Ember.ArrayController.extend(ModalFunctionality, {
needs: ['discovery/topics'], needs: ['discovery/topics'],
buttonRows: null,
onShow: function() { onShow: function() {
this.set('controllers.modal.modalClass', 'topic-bulk-actions-modal small'); this.set('controllers.modal.modalClass', 'topic-bulk-actions-modal small');
const buttonRows = [];
let row = [];
_buttons.forEach(function(b) {
row.push(b);
if (row.length === 4) {
buttonRows.push(row);
row = [];
}
});
if (row.length) { buttonRows.push(row); }
this.set('buttonRows', buttonRows);
}, },
perform: function(operation) { perform: function(operation) {
@ -117,5 +89,3 @@ export default Ember.ArrayController.extend(ModalFunctionality, {
} }
} }
}); });
export { addBulkButton };

View File

@ -1,7 +1,10 @@
{{#each row in buttonRows}} <p>
<p> <button class='btn' {{action "showChangeCategory"}}>{{i18n 'topics.bulk.change_category'}}</button>
{{#each button in row}} <button class='btn' {{action "deleteTopics"}}>{{i18n 'topics.bulk.delete'}}</button>
{{d-button action=button.action label=button.label}} <button class='btn' {{action "closeTopics"}}>{{i18n 'topics.bulk.close_topics'}}</button>
{{/each}} <button class='btn' {{action "archiveTopics"}}>{{i18n 'topics.bulk.archive_topics'}}</button>
</p> </p>
{{/each}} <p>
<button class='btn' {{action "showNotificationLevel"}}>{{i18n 'topics.bulk.notification_level'}}</button>
<button class='btn' {{action "resetRead"}}>{{i18n 'topics.bulk.reset_read'}}</button>
</p>

View File

@ -1,7 +1,10 @@
<p>{{i18n "topics.bulk.choose_new_category"}}</p> <p>Choose the new category for the topics:</p>
<p>{{category-chooser value=newCategoryId}}</p> <p>{{category-chooser value=newCategoryId}}</p>
{{#loading-spinner condition=loading}} {{#if loading}}
{{d-button action="changeCategory" label="topics.bulk.change_category"}} <div class='loading'>{{i18n 'loading'}}</div>
{{/loading-spinner}} {{else}}
<button class='btn' {{action "changeCategory"}}>Change Category</button>
{{/if}}

View File

@ -1,4 +0,0 @@
export default Discourse.ModalBodyView.extend({
templateName: 'modal/topic-bulk-actions',
title: I18n.t('topics.bulk.actions')
});

View File

@ -0,0 +1,12 @@
/**
Handles the view for the topic bulk actions modal
@class TopicBulkActionsView
@extends Discourse.ModalBodyView
@namespace Discourse
@module Discourse
**/
Discourse.TopicBulkActionsView = Discourse.ModalBodyView.extend({
templateName: 'modal/topic_bulk_actions',
title: I18n.t('topics.bulk.actions')
});

View File

@ -814,7 +814,6 @@ en:
close_topics: "Close Topics" close_topics: "Close Topics"
archive_topics: "Archive Topics" archive_topics: "Archive Topics"
notification_level: "Change Notification Level" notification_level: "Change Notification Level"
choose_new_category: "Choose the new category for the topics:"
selected: selected:
one: "You have selected <b>1</b> topic." one: "You have selected <b>1</b> topic."
other: "You have selected <b>{{count}}</b> topics." other: "You have selected <b>{{count}}</b> topics."

View File

@ -8,12 +8,7 @@ class TopicsBulkAction
end end
def self.operations def self.operations
@operations ||= %w(change_category close archive change_notification_level reset_read dismiss_posts delete) %w(change_category close archive change_notification_level reset_read dismiss_posts delete)
end
def self.register_operation(name, &block)
operations << name
define_method(name, &block)
end end
def perform! def perform!