Initial commit
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
module Carto
|
||||
module Tracking
|
||||
module Validators
|
||||
module Layer
|
||||
def check_layer_belongs_to_visualization!
|
||||
layer = @format.fetch_record!(:layer)
|
||||
unless layer && layer.visualization == @format.fetch_record!(:visualization)
|
||||
raise Carto::UnauthorizedError.new
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,13 @@
|
||||
module Carto
|
||||
module Tracking
|
||||
module Validators
|
||||
module User
|
||||
def check_user_consistent!
|
||||
unless @format.fetch_record!(:user).id == @reporter.id
|
||||
raise Carto::UnauthorizedError.new
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,33 @@
|
||||
module Carto
|
||||
module Tracking
|
||||
module Validators
|
||||
module Visualization
|
||||
module Helpers
|
||||
def visualization
|
||||
@format.fetch_record!(:visualization)
|
||||
end
|
||||
end
|
||||
|
||||
module Writable
|
||||
include Carto::Tracking::Validators::Visualization::Helpers
|
||||
|
||||
def check_visualization_writable!
|
||||
unless visualization.writable_by?(@reporter)
|
||||
raise Carto::UnauthorizedError.new
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
module Readable
|
||||
include Carto::Tracking::Validators::Visualization::Helpers
|
||||
|
||||
def check_visualization_readable!
|
||||
unless visualization.is_accesible_by_user?(@reporter)
|
||||
raise Carto::UnauthorizedError.new
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,15 @@
|
||||
module Carto
|
||||
module Tracking
|
||||
module Validators
|
||||
module Widget
|
||||
module Existence
|
||||
def check_widget_exists!
|
||||
unless @format.fetch_record!(:widget)
|
||||
raise Carto::LoadError.new('Widget not found')
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user