diff --git a/app/controllers/issue_statuses_controller.rb b/app/controllers/issue_statuses_controller.rb index b4b754b..e1d8ea4 100644 --- a/app/controllers/issue_statuses_controller.rb +++ b/app/controllers/issue_statuses_controller.rb @@ -26,6 +26,10 @@ class IssueStatusesController < ApplicationController def index @issue_status_pages, @issue_statuses = paginate :issue_statuses, :per_page => 25, :order => "position" render :action => "index", :layout => false if request.xhr? + respond_to do |format| + format.html + format.api + end end def new diff --git a/app/controllers/trackers_controller.rb b/app/controllers/trackers_controller.rb index efd9de9..db84631 100644 --- a/app/controllers/trackers_controller.rb +++ b/app/controllers/trackers_controller.rb @@ -25,6 +25,10 @@ class TrackersController < ApplicationController def index @tracker_pages, @trackers = paginate :trackers, :per_page => 10, :order => 'position' render :action => "index", :layout => false if request.xhr? + respond_to do |format| + format.html + format.api + end end def new diff --git a/app/views/issue_statuses/index.api.rsb b/app/views/issue_statuses/index.api.rsb new file mode 100644 index 0000000..e488f33 --- /dev/null +++ b/app/views/issue_statuses/index.api.rsb @@ -0,0 +1,7 @@ +api.array :issue_statuses do + @issue_statuses.each do |status| + api.status do + api.name status.name + end + end +end \ No newline at end of file diff --git a/app/views/issues/show.api.rsb b/app/views/issues/show.api.rsb index 170aeb3..82268f3 100644 --- a/app/views/issues/show.api.rsb +++ b/app/views/issues/show.api.rsb @@ -10,6 +10,25 @@ api.issue do api.fixed_version(:id => @issue.fixed_version_id, :name => @issue.fixed_version.name) unless @issue.fixed_version.nil? api.parent(:id => @issue.parent_id) unless @issue.parent.nil? + api.array :assignable_users do + @issue.assignable_users.each do |user| + api.users do + api.id user.id + api.name user.name + end + end + end + + api.array :assignable_versions do + @issue.assignable_versions.each do |version| + api.versions do + api.id version.id + api.name version.name + end + end + end + + api.subject @issue.subject api.description @issue.description api.start_date @issue.start_date diff --git a/app/views/trackers/index.api.rsb b/app/views/trackers/index.api.rsb new file mode 100644 index 0000000..9c86228 --- /dev/null +++ b/app/views/trackers/index.api.rsb @@ -0,0 +1,7 @@ +api.array :trackers do + @trackers.each do |tracker| + api.trackers do + api.name tracker.name + end + end +end \ No newline at end of file diff --git a/config/environment.rb b/config/environment.rb index 91dfaa4..145a85b 100644 --- a/config/environment.rb +++ b/config/environment.rb @@ -52,7 +52,7 @@ Rails::Initializer.run do |config| config.gem 'rubytree', :lib => 'tree' config.gem 'coderay', :version => '~>0.9.7' - + config.action_controller.session = { :key => "_myapp_session", :secret => "ec8d6656e5d3dd4020615a92127a0aa2" } # Load any local configuration that is kept out of source control # (e.g. gems, patches). if File.exists?(File.join(File.dirname(__FILE__), 'additional_environment.rb')) diff --git a/config/routes.rb b/config/routes.rb index 383d9cf..d60f14b 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -90,6 +90,8 @@ ActionController::Routing::Routes.draw do |map| reports.connect 'projects/:id/issues/report/:detail', :action => 'issue_report_details' end + map.connect '/trackers.:format', :controller => 'trackers', :action => 'index', :conditions => { :method => :get } + map.connect '/issue_statuses.:format', :controller => 'issue_statuses', :action => 'index', :conditions => { :method => :get } # Following two routes conflict with the resources because #index allows POST map.connect '/issues', :controller => 'issues', :action => 'index', :conditions => { :method => :post } map.connect '/issues/create', :controller => 'issues', :action => 'index', :conditions => { :method => :post }