private SortFilterOptions GetOptions(Context ctx, PKSystem target) { var opts = SortFilterOptions.FromFlags(ctx); opts.Filter = ctx.RemainderOrNull(); // If we're *explicitly* trying to access non-public members of another system, error if (opts.PrivacyFilter != PrivacyFilter.PublicOnly && ctx.LookupContextFor(target) != LookupContext.ByOwner) { throw new PKError("You cannot look up private members of another system."); } return(opts); }
private string GetEmbedTitle(PKSystem target, SortFilterOptions opts) { var title = new StringBuilder("Members of "); if (target.Name != null) { title.Append($"{target.Name} (`{target.Hid}`)"); } else { title.Append($"`{target.Hid}`"); } if (opts.Filter != null) { title.Append($" matching **{opts.Filter}**"); } return(title.ToString()); }