Working on the beta releases page and also the user management

This commit is contained in:
tidusjar 2016-08-22 13:11:03 +01:00
commit 185abcb1a5
11 changed files with 657 additions and 20 deletions

View file

@ -86,6 +86,7 @@
<Compile Include="SettingModels\HeadphonesSettings.cs" />
<Compile Include="SettingModels\LandingPageSettings.cs" />
<Compile Include="SettingModels\NotificationSettings.cs" />
<Compile Include="SettingModels\RequestSettings.cs" />
<Compile Include="SettingModels\ScheduledJobsSettings.cs" />
<Compile Include="SettingModels\SlackNotificationSettings.cs" />
<Compile Include="SettingModels\PushoverNotificationSettings.cs" />

View file

@ -0,0 +1,57 @@
#region Copyright
// /************************************************************************
// Copyright (c) 2016 Jamie Rees
// File: RequestSettings.cs
// Created By: Jamie Rees
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// ************************************************************************/
#endregion
using System;
using System.Collections.Generic;
namespace PlexRequests.Core.SettingModels
{
public sealed class RequestSettings : Settings
{
public OrderType Order { get; set; }
public List<FilterType> Filters { get; set; }
}
public enum OrderType
{
NewRequests,
OldRequests,
NewReleases,
OldReleases
}
public enum FilterType
{
// ALL is not here, it's managed in the angular controller
Approved,
NotApproved,
Available,
NotAvailable,
Released,
NotReleased
}
}

View file

@ -99,7 +99,7 @@ namespace PlexRequests.Core
return users.Any();
}
private Guid? CreateUser(string username, string password, string[] claims = default(string[]), UserProperties properties = null)
public Guid? CreateUser(string username, string password, string[] claims = default(string[]), UserProperties properties = null)
{
var salt = PasswordHasher.GenerateSalt();
@ -134,10 +134,6 @@ namespace PlexRequests.Core
return CreateUser(username, password, new[] { UserClaims.User }, properties);
}
public Guid? CreateUser(string username, string password, string[] claims)
{
return CreateUser(username, password, claims, null);
}
public IEnumerable<string> GetAllClaims()
{
@ -186,7 +182,7 @@ namespace PlexRequests.Core
public interface ICustomUserMapper
{
Guid? CreateUser(string username, string password, string[] claims);
Guid? CreateUser(string username, string password, string[] claims, UserProperties props);
IEnumerable<string> GetAllClaims();
IEnumerable<UsersModel> GetUsers();
Task<IEnumerable<UsersModel>> GetUsersAsync();