set openRegistration status based on Whitelisting

This commit is contained in:
Nicolas Constant 2021-02-24 00:36:25 -05:00
parent 26584fc5c8
commit c84b7937a2
No known key found for this signature in database
GPG Key ID: 1E9F677FB01A5688
1 changed files with 7 additions and 3 deletions

View File

@ -7,6 +7,7 @@ using BirdsiteLive.ActivityPub.Converters;
using BirdsiteLive.Common.Regexes; using BirdsiteLive.Common.Regexes;
using BirdsiteLive.Common.Settings; using BirdsiteLive.Common.Settings;
using BirdsiteLive.DAL.Contracts; using BirdsiteLive.DAL.Contracts;
using BirdsiteLive.Domain.Repository;
using BirdsiteLive.Models; using BirdsiteLive.Models;
using BirdsiteLive.Models.WellKnownModels; using BirdsiteLive.Models.WellKnownModels;
using BirdsiteLive.Twitter; using BirdsiteLive.Twitter;
@ -18,15 +19,17 @@ namespace BirdsiteLive.Controllers
[ApiController] [ApiController]
public class WellKnownController : ControllerBase public class WellKnownController : ControllerBase
{ {
private readonly IModerationRepository _moderationRepository;
private readonly ITwitterUserService _twitterUserService; private readonly ITwitterUserService _twitterUserService;
private readonly ITwitterUserDal _twitterUserDal; private readonly ITwitterUserDal _twitterUserDal;
private readonly InstanceSettings _settings; private readonly InstanceSettings _settings;
#region Ctor #region Ctor
public WellKnownController(InstanceSettings settings, ITwitterUserService twitterUserService, ITwitterUserDal twitterUserDal) public WellKnownController(InstanceSettings settings, ITwitterUserService twitterUserService, ITwitterUserDal twitterUserDal, IModerationRepository moderationRepository)
{ {
_twitterUserService = twitterUserService; _twitterUserService = twitterUserService;
_twitterUserDal = twitterUserDal; _twitterUserDal = twitterUserDal;
_moderationRepository = moderationRepository;
_settings = settings; _settings = settings;
} }
#endregion #endregion
@ -58,6 +61,7 @@ namespace BirdsiteLive.Controllers
{ {
var version = System.Reflection.Assembly.GetEntryAssembly().GetName().Version.ToString(3); var version = System.Reflection.Assembly.GetEntryAssembly().GetName().Version.ToString(3);
var twitterUsersCount = await _twitterUserDal.GetTwitterUsersCountAsync(); var twitterUsersCount = await _twitterUserDal.GetTwitterUsersCountAsync();
var isOpenRegistration = _moderationRepository.GetModerationType(ModerationEntityTypeEnum.Follower) != ModerationTypeEnum.WhiteListing;
if (id == "2.0") if (id == "2.0")
{ {
@ -81,7 +85,7 @@ namespace BirdsiteLive.Controllers
{ {
"activitypub" "activitypub"
}, },
openRegistrations = false, openRegistrations = isOpenRegistration,
services = new Models.WellKnownModels.Services() services = new Models.WellKnownModels.Services()
{ {
inbound = new object[0], inbound = new object[0],
@ -117,7 +121,7 @@ namespace BirdsiteLive.Controllers
{ {
"activitypub" "activitypub"
}, },
openRegistrations = false, openRegistrations = isOpenRegistration,
services = new Models.WellKnownModels.Services() services = new Models.WellKnownModels.Services()
{ {
inbound = new object[0], inbound = new object[0],