diff app/controllers/sys_controller.rb @ 240:6c282df74a30 feature_73

Merge from branch "cannam-pre-20110113-merge"
author Chris Cannam
date Tue, 22 Feb 2011 16:50:58 +0000
parents e0cbb39c0429 9d2c8317d42f
children 102056ec2de9
line wrap: on
line diff
--- a/app/controllers/sys_controller.rb	Fri Feb 11 15:32:41 2011 +0000
+++ b/app/controllers/sys_controller.rb	Tue Feb 22 16:50:58 2011 +0000
@@ -69,6 +69,31 @@
     render :nothing => true, :status => 404
   end
 
+  def set_embedded_active
+    project = Project.find(params[:id])
+    mods = project.enabled_modules
+    enable = (params[:enable] == "1")
+    if mods.detect {|m| m.name == "embedded"}
+      logger.info "Project #{project.name} currently has Embedded enabled"
+      if !enable
+        logger.info "Disabling Embedded"
+        modnames = mods.all(:select => :name).collect{|m| m.name}.reject{|n| n == "embedded"}
+        project.enabled_module_names = modnames
+      end
+    else
+      logger.info "Project #{project.name} currently has Embedded disabled"
+      if enable
+        logger.info "Enabling Embedded"
+        modnames = mods.all(:select => :name).collect{|m| m.name}
+        modnames << "embedded"
+        project.enabled_module_names = modnames
+      end
+    end
+    render :nothing => true, :status => 200
+  rescue ActiveRecord::RecordNotFound
+    render :nothing => true, :status => 404
+  end
+
   protected
 
   def check_enabled