@@ -87,6 +87,25 @@ module default {
87
87
}
88
88
89
89
index on ((.name, .ownSensitivity, .leastOfThese, .isSignLanguage, .isDialect));
90
+
91
+ access policy CanSelectUpdateReadGeneratedFromAppPoliciesForLanguage
92
+ allow select , update read using (
93
+ (
94
+ exists (< Role > {' Administrator' , ' ConsultantManager' , ' ExperienceOperations' , ' LeadFinancialAnalyst' , ' Controller' , ' FinancialAnalyst' , ' Fundraising' , ' Marketing' , ' Leadership' , ' ProjectManager' , ' RegionalDirector' , ' FieldOperationsDirector' , ' StaffMember' } intersect global currentRoles)
95
+ or (
96
+ exists (< Role > {' Consultant' , ' ConsultantManager' , ' FieldPartner' , ' Intern' , ' Mentor' , ' Translator' } intersect global currentRoles)
97
+ and .isMember
98
+ )
99
+ )
100
+ );
101
+
102
+ access policy CanUpdateWriteGeneratedFromAppPoliciesForLanguage
103
+ allow update write ;
104
+
105
+ access policy CanInsertDeleteGeneratedFromAppPoliciesForLanguage
106
+ allow insert , delete using (
107
+ Role .Administrator in global currentRoles
108
+ );
90
109
}
91
110
92
111
scalar type population extending int32 {
@@ -109,6 +128,40 @@ module Ethnologue {
109
128
};
110
129
name: str ;
111
130
population: default :: population;
131
+
132
+ access policy CanSelectUpdateReadGeneratedFromAppPoliciesForEthnologueLanguage
133
+ allow select , update read using (
134
+ (
135
+ exists (< default :: Role> {' Administrator' , ' ExperienceOperations' , ' Leadership' , ' ProjectManager' , ' RegionalDirector' , ' FieldOperationsDirector' } intersect global default :: currentRoles)
136
+ or (
137
+ default :: Role.ConsultantManager in global default :: currentRoles
138
+ and .sensitivity <= default :: Sensitivity.Medium
139
+ )
140
+ or (
141
+ exists (< default :: Role> {' Consultant' , ' ConsultantManager' , ' FieldPartner' , ' Translator' } intersect global default :: currentRoles)
142
+ and .isMember
143
+ )
144
+ or (
145
+ default :: Role.Fundraising in global default :: currentRoles
146
+ and (
147
+ .isMember
148
+ or .sensitivity <= default :: Sensitivity.Medium
149
+ )
150
+ )
151
+ or (
152
+ exists (< default :: Role> {' Marketing' , ' Fundraising' , ' ExperienceOperations' } intersect global default :: currentRoles)
153
+ and .sensitivity <= default :: Sensitivity.Low
154
+ )
155
+ )
156
+ );
157
+
158
+ access policy CanUpdateWriteGeneratedFromAppPoliciesForEthnologueLanguage
159
+ allow update write ;
160
+
161
+ access policy CanInsertDeleteGeneratedFromAppPoliciesForEthnologueLanguage
162
+ allow insert , delete using (
163
+ default :: Role.Administrator in global default :: currentRoles
164
+ );
112
165
}
113
166
114
167
scalar type code extending str {
0 commit comments