Class: PluginsController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- PluginsController
- Defined in:
- app/controllers/plugins_controller.rb
Instance Method Summary collapse
- #bulk_upgrade ⇒ Object
- #index ⇒ Object
- #install ⇒ Object
- #installed ⇒ Object
- #recommended ⇒ Object
- #uninstall ⇒ Object
- #updated ⇒ Object
- #upgrade ⇒ Object
Instance Method Details
#bulk_upgrade ⇒ Object
48 49 50 51 52 53 54 |
# File 'app/controllers/plugins_controller.rb', line 48 def bulk_upgrade params[:plugins].each do |gem_name| pl = Plugin.new(gem_name: gem_name) GemInstallerJob.perform_later(gem_name, pl.latest_version) end redirect_to plugins_path end |
#index ⇒ Object
4 5 6 |
# File 'app/controllers/plugins_controller.rb', line 4 def index redirect_to installed_plugins_path end |
#install ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/controllers/plugins_controller.rb', line 20 def install params[:plugins].each do |gem_name| GemInstallerJob.perform_later(gem_name) end respond_to do |format| format.html do redirect_to plugins_path end format.json do plugins = PluginDecorator.decorate_collection(Plugin.recommended.select {|item| params[:plugins].include?(item.gem_name)}) render json: plugins.map(&:to_hash).to_json end end end |
#installed ⇒ Object
8 9 10 |
# File 'app/controllers/plugins_controller.rb', line 8 def installed @plugins = PluginDecorator.decorate_collection(Plugin.installed.reject{|plugin| plugin.processing? }) end |
#recommended ⇒ Object
12 13 14 |
# File 'app/controllers/plugins_controller.rb', line 12 def recommended @plugins = PluginDecorator.decorate_collection(Plugin.recommended) end |
#uninstall ⇒ Object
36 37 38 39 40 41 |
# File 'app/controllers/plugins_controller.rb', line 36 def uninstall params[:plugins].each do |gem_name| GemUninstallerJob.perform_later(gem_name) end redirect_to plugins_path end |
#updated ⇒ Object
16 17 18 |
# File 'app/controllers/plugins_controller.rb', line 16 def updated @plugins = PluginDecorator.decorate_collection(Plugin.installed.reject{|plugin| plugin.latest_version? }) end |
#upgrade ⇒ Object
43 44 45 46 |
# File 'app/controllers/plugins_controller.rb', line 43 def upgrade GemInstallerJob.perform_later(params[:plugins][:name], params[:plugins][:version]) redirect_to plugins_path end |