1 |
# frozen_string_literal: true
|
|
2 |
|
|
3 |
class ApplicationPolicy |
× |
4 |
attr_reader :user, :record |
× |
5 |
|
|
6 |
def initialize(user, record) |
× |
7 |
@user = user
|
× |
8 |
@record = record
|
× |
9 |
end
|
× |
10 |
|
|
11 |
class Scope < Struct.new(:user, :scope) |
× |
12 |
def enable_geometry_models? |
× |
13 |
APP_CONFIG["enable_geometry_models"] |
× |
14 |
end
|
× |
15 |
def resolve |
× |
16 |
scope.all |
× |
17 |
end
|
× |
18 |
end
|
× |
19 |
|
|
20 |
def index? |
× |
21 |
false
|
× |
22 |
end
|
× |
23 |
|
|
24 |
def show? |
× |
25 |
scope.where(id: record.id).exists?
|
× |
26 |
end
|
× |
27 |
|
|
28 |
def create? |
× |
29 |
false
|
× |
30 |
end
|
× |
31 |
|
|
32 |
def new? |
× |
33 |
create? |
× |
34 |
end
|
× |
35 |
|
|
36 |
def update? |
× |
37 |
false
|
× |
38 |
end
|
× |
39 |
|
|
40 |
def edit? |
× |
41 |
update? |
× |
42 |
end
|
× |
43 |
|
|
44 |
def destroy? |
× |
45 |
false
|
× |
46 |
end
|
× |
47 |
|
|
48 |
def scope |
× |
49 |
Pundit.policy_scope!(user, record.class)
|
× |
50 |
end
|
× |
51 |
|
|
52 |
class Scope |
× |
53 |
attr_reader :user, :scope |
× |
54 |
|
|
55 |
def initialize(user, scope) |
× |
56 |
@user = user
|
× |
57 |
@scope = scope
|
× |
58 |
end
|
× |
59 |
|
|
60 |
def resolve |
× |
61 |
scope |
× |
62 |
end
|
× |
63 |
end
|
× |
64 |
end
|
× |