mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-21 16:04:22 +01:00
Filter the apps by the user id
This commit is contained in:
@@ -27,7 +27,7 @@ namespace BTCPayServer.Controllers
|
|||||||
|
|
||||||
public async Task<IActionResult> Index()
|
public async Task<IActionResult> Index()
|
||||||
{
|
{
|
||||||
if (_cachedServerSettings.RootAppType == Services.Apps.AppType.Crowdfund)
|
if (_cachedServerSettings.RootAppType is Services.Apps.AppType.Crowdfund)
|
||||||
{
|
{
|
||||||
var serviceProvider = HttpContext.RequestServices;
|
var serviceProvider = HttpContext.RequestServices;
|
||||||
var controller = (AppsPublicController)serviceProvider.GetService(typeof(AppsPublicController));
|
var controller = (AppsPublicController)serviceProvider.GetService(typeof(AppsPublicController));
|
||||||
|
|||||||
@@ -451,11 +451,13 @@ namespace BTCPayServer.Controllers
|
|||||||
// load display app dropdown
|
// load display app dropdown
|
||||||
using (var ctx = _ContextFactory.CreateContext())
|
using (var ctx = _ContextFactory.CreateContext())
|
||||||
{
|
{
|
||||||
var selectList = ctx.Apps.Select(a =>
|
var userId = _UserManager.GetUserId(base.User);
|
||||||
new SelectListItem($"{a.AppType} - {a.Name}", a.Id)
|
var selectList = ctx.Users.Where(user => user.Id == userId)
|
||||||
).ToList();
|
.SelectMany(s => s.UserStores)
|
||||||
|
.Select(s => s.StoreData)
|
||||||
|
.SelectMany(s => s.Apps)
|
||||||
|
.Select(a => new SelectListItem($"{a.AppType} - {a.Name}", a.Id)).ToList();
|
||||||
selectList.Insert(0, new SelectListItem("(None)", null));
|
selectList.Insert(0, new SelectListItem("(None)", null));
|
||||||
|
|
||||||
ViewBag.AppsList = new SelectList(selectList, "Value", "Text", data.RootAppId);
|
ViewBag.AppsList = new SelectList(selectList, "Value", "Text", data.RootAppId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -472,6 +474,8 @@ namespace BTCPayServer.Controllers
|
|||||||
var app = ctx.Apps.SingleOrDefault(a => a.Id == settings.RootAppId);
|
var app = ctx.Apps.SingleOrDefault(a => a.Id == settings.RootAppId);
|
||||||
if (app != null)
|
if (app != null)
|
||||||
settings.RootAppType = Enum.Parse<AppType>(app.AppType);
|
settings.RootAppType = Enum.Parse<AppType>(app.AppType);
|
||||||
|
else
|
||||||
|
settings.RootAppType = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user