diff --git a/app/controllers/admin/sites_controller.rb b/app/controllers/admin/sites_controller.rb
index 38da321..87175db 100644
--- a/app/controllers/admin/sites_controller.rb
+++ b/app/controllers/admin/sites_controller.rb
@@ -105,7 +105,8 @@ class Admin::SitesController < OrbitAdminController
result = "failed"
else
result = "success"
- Bundler.with_clean_env { `cd #{Rails.root} && bundle update` }
+ # Bundler.with_clean_env { `cd #{Rails.root} && bundle update` }
+ Bundler.with_clean_env { `cd #{Rails.root} && BUNDLE_GEMFILE=built_in_extensions.rb bundle update && bundle` }
end
render :text => result
@@ -115,7 +116,7 @@ class Admin::SitesController < OrbitAdminController
end
def bundle_install
- Bundler.with_clean_env { `cd #{Rails.root} && bundle update` }
+ Bundler.with_clean_env { `cd #{Rails.root} && BUNDLE_GEMFILE=built_in_extensions.rb bundle update && bundle` }
%x(kill -s USR2 `cat tmp/pids/unicorn.pid`)
sleep 5
render :nothing => true
diff --git a/app/views/admin/members/show.html.erb b/app/views/admin/members/show.html.erb
index 91dbb5f..473f796 100644
--- a/app/views/admin/members/show.html.erb
+++ b/app/views/admin/members/show.html.erb
@@ -29,7 +29,7 @@
-
+ <% if !@plugin_shows.blank? %>
-
+ <% end %>
diff --git a/config/environment.rb b/config/environment.rb
index 8cb62bd..a176bdd 100644
--- a/config/environment.rb
+++ b/config/environment.rb
@@ -4,7 +4,7 @@ require File.expand_path('../application', __FILE__)
# Initialize the Rails application.
Orbit::Application.initialize!
Orbit::Application.config.secret_key_base = 'acc6ffc5a7d360c9cf2a7bdb4ddf9a897942ec6767413a5c0324a0fa8b86197a96298288a66bd46d8770d8b6edf509aad65716961c2c364ce006b475e6cfd418'
-
+OrbitApp.cleanup_modules
if Site.count == 0
site = Site.new
diff --git a/lib/orbit_app/register_module.rb b/lib/orbit_app/register_module.rb
index 3d40222..44797d7 100644
--- a/lib/orbit_app/register_module.rb
+++ b/lib/orbit_app/register_module.rb
@@ -10,5 +10,15 @@ module OrbitApp
Widget::Registration.new(name,&block)
end
end
+
+ def cleanup_modules
+ module_apps = ModuleApp.all
+ module_apps.each do |ma|
+ reg = OrbitApp::Module::Registration.find_by_key(ma.key) rescue nil
+ if reg.nil?
+ ma.destroy
+ end
+ end
+ end
end
end
\ No newline at end of file
diff --git a/lib/orbit_tag/taggable.rb b/lib/orbit_tag/taggable.rb
index 35fe20c..cc45fea 100644
--- a/lib/orbit_tag/taggable.rb
+++ b/lib/orbit_tag/taggable.rb
@@ -10,29 +10,22 @@ module OrbitTag
module ClassMethods
def with_tags(tags=[])
tags = [tags].flatten.uniq
- result = []
if tags.blank?
self.all
else
- self.all.each do |taggable|
- result << taggable if (taggable.taggings.map{|t| t.tag.id.to_s } & tags).size > 0
- end
- self.where(:id.in=>result.map{|taggable| taggable.id})
+ taggings = Tagging.where(:tag_id.in=>tags).map{|item| item.taggable_id}
+ self.where(:id.in=>taggings)
end
end
def filter_by_tags(tags=[])
tags = OrbitHelper.page_tags if tags.blank?
tags = [tags].flatten.uniq
- result = []
-
if tags.blank? or (tags.include?("all") rescue false)
self.all
else
- self.all.each do |taggable|
- result << taggable if (taggable.taggings.map{|t| t.tag.id.to_s } & tags).size > 0
- end
- self.where(:id.in=>result.map{|taggable| taggable.id})
+ taggings = Tagging.where(:tag_id.in=>tags).map{|item| item.taggable_id}
+ self.where(:id.in=>taggings)
end
end