API: more ACL riggings
This commit is contained in:
parent
56881ae3e4
commit
01df69ef46
|
@ -93,6 +93,7 @@ func (acl *TrackerACL) QueryWithCursor(ctx context.Context, runner sq.BaseRunner
|
||||||
q = q.Where(database.WithAlias(acl.alias, "id")+"<= ?", next)
|
q = q.Where(database.WithAlias(acl.alias, "id")+"<= ?", next)
|
||||||
}
|
}
|
||||||
q = q.
|
q = q.
|
||||||
|
Column(`permissions`).
|
||||||
OrderBy(database.WithAlias(acl.alias, "id")).
|
OrderBy(database.WithAlias(acl.alias, "id")).
|
||||||
Limit(uint64(cur.Count + 1))
|
Limit(uint64(cur.Count + 1))
|
||||||
|
|
||||||
|
@ -103,10 +104,19 @@ func (acl *TrackerACL) QueryWithCursor(ctx context.Context, runner sq.BaseRunner
|
||||||
|
|
||||||
var acls []*TrackerACL
|
var acls []*TrackerACL
|
||||||
for rows.Next() {
|
for rows.Next() {
|
||||||
var acl TrackerACL
|
var (
|
||||||
if err := rows.Scan(database.Scan(ctx, &acl)...); err != nil {
|
acl TrackerACL
|
||||||
|
access int
|
||||||
|
)
|
||||||
|
if err := rows.Scan(append(
|
||||||
|
database.Scan(ctx, &acl), &access)...); err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
acl.Browse = access & ACCESS_BROWSE != 0
|
||||||
|
acl.Submit = access & ACCESS_SUBMIT != 0
|
||||||
|
acl.Comment = access & ACCESS_COMMENT != 0
|
||||||
|
acl.Edit = access & ACCESS_EDIT != 0
|
||||||
|
acl.Triage = access & ACCESS_TRIAGE != 0
|
||||||
acls = append(acls, &acl)
|
acls = append(acls, &acl)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -464,7 +464,7 @@ func (r *trackerACLResolver) Tracker(ctx context.Context, obj *model.TrackerACL)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *trackerACLResolver) Entity(ctx context.Context, obj *model.TrackerACL) (model.Entity, error) {
|
func (r *trackerACLResolver) Entity(ctx context.Context, obj *model.TrackerACL) (model.Entity, error) {
|
||||||
panic(fmt.Errorf("not implemented"))
|
return loaders.ForContext(ctx).UsersByID.Load(obj.UserID)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *trackerSubscriptionResolver) Tracker(ctx context.Context, obj *model.TrackerSubscription) (*model.Tracker, error) {
|
func (r *trackerSubscriptionResolver) Tracker(ctx context.Context, obj *model.TrackerSubscription) (*model.Tracker, error) {
|
||||||
|
|
Loading…
Reference in New Issue