diff options
| author | Luc Donnet | 2017-06-29 00:19:24 +0200 |
|---|---|---|
| committer | Luc Donnet | 2017-06-29 00:19:24 +0200 |
| commit | 1adc021ba4d797152a6f31cfe17161ef20877fb7 (patch) | |
| tree | f807b9c38d2f65a8c913f0e36692b33df025d73c /app/controllers | |
| parent | f2191bd26937e7433a6ddfd2eda489a6cf4ae30e (diff) | |
| download | chouette-core-1adc021ba4d797152a6f31cfe17161ef20877fb7.tar.bz2 | |
Fix RoutingConstraintZone Policy
Diffstat (limited to 'app/controllers')
| -rw-r--r-- | app/controllers/routing_constraint_zones_controller.rb | 51 |
1 files changed, 28 insertions, 23 deletions
diff --git a/app/controllers/routing_constraint_zones_controller.rb b/app/controllers/routing_constraint_zones_controller.rb index 9d2fd712c..6fb5348f0 100644 --- a/app/controllers/routing_constraint_zones_controller.rb +++ b/app/controllers/routing_constraint_zones_controller.rb @@ -10,29 +10,39 @@ class RoutingConstraintZonesController < ChouetteController belongs_to :line, parent_class: Chouette::Line end - def index - @routing_constraint_zones = collection - end - - def show - @routing_constraint_zone = collection.find(params[:id]) - @routing_constraint_zone = @routing_constraint_zone.decorate(context: { - referential: @referential, - line: @line - }) - end - protected def collection - @q = resource.routing_constraint_zones.search(params[:q]) + @q = current_referential.routing_constraint_zones.search(params[:q]) - if sort_column && sort_direction - @routing_constraint_zones ||= @q.result(distinct: true).order(sort_column + ' ' + sort_direction) - else - @routing_constraint_zones ||= @q.result(distinct: true).order(:name) + @routing_constraint_zones ||= begin + if sort_column && sort_direction + routing_constraint_zones = @q.result(distinct: true).order(sort_column + ' ' + sort_direction) + else + routing_constraint_zones = @q.result(distinct: true).order(:name) + end + routing_constraint_zones = routing_constraint_zones.paginate(page: params[:page], per_page: 10) end - @routing_constraint_zones = @routing_constraint_zones.paginate(page: params[:page], per_page: 10) + end + + def resource + @routing_constraint_zone ||= begin + routing_constraint_zone = current_referential.routing_constraint_zones.find(params[:id]) + routing_constraint_zone = routing_constraint_zone.decorate(context: { + referential: current_referential, + line: parent.id + }) + end + end + + def build_resource + @routing_constraint_zone ||= begin + routing_constraint_zone = current_referential.routing_constraint_zones.new + routing_constraint_zone = routing_constraint_zone.decorate(context: { + referential: current_referential, + line: parent.id + }) + end end private @@ -43,11 +53,6 @@ class RoutingConstraintZonesController < ChouetteController %w[asc desc].include?(params[:direction]) ? params[:direction] : 'asc' end - def resource - @referential = Referential.find params[:referential_id] - @line = @referential.lines.find params[:line_id] - end - def routing_constraint_zone_params params.require(:routing_constraint_zone).permit( :name, |
