File tree 1 file changed +22
-0
lines changed
1 file changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -134,6 +134,10 @@ func CanEdit(me *model.Me, curModel interface{}) bool {
134
134
return true
135
135
}
136
136
case map [string ]interface {}:
137
+ if adminCanEdit (entity , me ) {
138
+ return true
139
+ }
140
+
137
141
if ctime , ok := entity ["ctime" ]; ok {
138
142
if time .Now ().Sub (time .Time (ctime .(model.OftenTime ))) > canEditTime {
139
143
return false
@@ -196,3 +200,21 @@ func website() string {
196
200
}
197
201
return host + WebsiteSetting .Domain
198
202
}
203
+
204
+ func adminCanEdit (entity map [string ]interface {}, me * model.Me ) bool {
205
+ if uid , ok := entity ["uid" ]; ok {
206
+ if me .Uid != uid .(int ) && me .IsAdmin {
207
+ return true
208
+ }
209
+ return false
210
+ }
211
+
212
+ if username , ok := entity ["username" ]; ok {
213
+ if me .Username != username .(string ) && me .IsAdmin {
214
+ return true
215
+ }
216
+ return false
217
+ }
218
+
219
+ return false
220
+ }
You can’t perform that action at this time.
0 commit comments