aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers
diff options
context:
space:
mode:
authorLuc Donnet2017-06-29 00:19:24 +0200
committerLuc Donnet2017-06-29 00:19:24 +0200
commit1adc021ba4d797152a6f31cfe17161ef20877fb7 (patch)
treef807b9c38d2f65a8c913f0e36692b33df025d73c /app/controllers
parentf2191bd26937e7433a6ddfd2eda489a6cf4ae30e (diff)
downloadchouette-core-1adc021ba4d797152a6f31cfe17161ef20877fb7.tar.bz2
Fix RoutingConstraintZone Policy
Diffstat (limited to 'app/controllers')
-rw-r--r--app/controllers/routing_constraint_zones_controller.rb51
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,