diff --git a/app/assets/javascripts/discourse/controllers/topic_bulk_actions_controller.js b/app/assets/javascripts/discourse/controllers/topic_bulk_actions_controller.js new file mode 100644 index 0000000000..7d24571b0b --- /dev/null +++ b/app/assets/javascripts/discourse/controllers/topic_bulk_actions_controller.js @@ -0,0 +1,14 @@ +/** + Modal for performing bulk actions on topics + + @class TopicBulkActionsController + @extends Ember.ArrayController + @namespace Discourse + @uses Discourse.ModalFunctionality + @module Discourse +**/ +Discourse.TopicBulkActionsController = Ember.ArrayController.extend(Discourse.ModalFunctionality, { + onShow: function() { + this.set('controllers.modal.modalClass', 'topic-bulk-actions-modal'); + } +}); diff --git a/app/assets/javascripts/discourse/routes/discovery_route.js b/app/assets/javascripts/discourse/routes/discovery_route.js index dbedf8d3dd..6fbf9e8d83 100644 --- a/app/assets/javascripts/discourse/routes/discovery_route.js +++ b/app/assets/javascripts/discourse/routes/discovery_route.js @@ -35,6 +35,11 @@ Discourse.DiscoveryRoute = Discourse.Route.extend({ draftKey: topicsController.get('draft_key'), draftSequence: topicsController.get('draft_sequence') }); + }, + + showBulkActions: function() { + var selected = this.controllerFor('discoveryTopics').get('selected'); + Discourse.Route.showModal(this, 'topicBulkActions', selected); } } }); diff --git a/app/assets/javascripts/discourse/templates/discovery/topics.js.handlebars b/app/assets/javascripts/discourse/templates/discovery/topics.js.handlebars index d6f217f727..c23fcd0494 100644 --- a/app/assets/javascripts/discourse/templates/discovery/topics.js.handlebars +++ b/app/assets/javascripts/discourse/templates/discovery/topics.js.handlebars @@ -1,3 +1,9 @@ +{{#if selected}} +