Mercurial > hg > soundsoftware-site
diff app/controllers/sys_controller.rb @ 1116:bb32da3bea34 redmine-2.2-integration
Merge from live
author | Chris Cannam |
---|---|
date | Mon, 07 Jan 2013 14:41:20 +0000 |
parents | 433d4f72a19b bb4f99a30aee |
children | 4f746d8966dd 9397280c138c |
line wrap: on
line diff
--- a/app/controllers/sys_controller.rb Mon Jan 07 12:01:42 2013 +0000 +++ b/app/controllers/sys_controller.rb Mon Jan 07 14:41:20 2013 +0000 @@ -27,7 +27,7 @@ # extra_info attribute from repository breaks activeresource client render :xml => p.to_xml( :only => [:id, :identifier, :name, :is_public, :status], - :include => {:repository => {:only => [:id, :url]}} + :include => {:repository => {:only => [:id, :url, :is_external, :external_url]}} ) end @@ -72,6 +72,55 @@ render :nothing => true, :status => 404 end + def get_external_repo_url + project = Project.find(params[:id]) + if project.repository + repo = project.repository + if repo.is_external? + render :text => repo.external_url, :status => 200 + else + render :nothing => true, :status => 200 + end + end + rescue ActiveRecord::RecordNotFound + render :nothing => true, :status => 404 + end + + def clear_repository_cache + project = Project.find(params[:id]) + if project.repository + project.repository.clear_cache + end + render :nothing => true, :status => 200 + rescue ActiveRecord::RecordNotFound + 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