mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-07-12 08:16:05 -07:00
#84 provide an option in settings to resttrict users from viewing requests other than their own.
This commit is contained in:
parent
fff267db37
commit
f5ecb63071
3 changed files with 36 additions and 9 deletions
|
@ -38,6 +38,7 @@ namespace PlexRequests.Core.SettingModels
|
||||||
public bool SearchForTvShows { get; set; }
|
public bool SearchForTvShows { get; set; }
|
||||||
public bool RequireMovieApproval { get; set; }
|
public bool RequireMovieApproval { get; set; }
|
||||||
public bool RequireTvShowApproval { get; set; }
|
public bool RequireTvShowApproval { get; set; }
|
||||||
|
public bool UsersCanViewOnlyOwnRequests { get; set; }
|
||||||
public int WeeklyRequestLimit { get; set; }
|
public int WeeklyRequestLimit { get; set; }
|
||||||
public string NoApprovalUsers { get; set; }
|
public string NoApprovalUsers { get; set; }
|
||||||
|
|
||||||
|
|
|
@ -79,8 +79,14 @@ namespace PlexRequests.UI.Modules
|
||||||
|
|
||||||
private Response GetMovies()
|
private Response GetMovies()
|
||||||
{
|
{
|
||||||
|
var settings = PrSettings.GetSettings();
|
||||||
var isAdmin = Context.CurrentUser.IsAuthenticated();
|
var isAdmin = Context.CurrentUser.IsAuthenticated();
|
||||||
var dbMovies = Service.GetAll().Where(x => x.Type == RequestType.Movie);
|
var dbMovies = Service.GetAll().Where(x => x.Type == RequestType.Movie);
|
||||||
|
if (settings.UsersCanViewOnlyOwnRequests && !isAdmin)
|
||||||
|
{
|
||||||
|
dbMovies = dbMovies.Where(x => x.RequestedBy.Equals(Session[SessionKeys.UsernameKey].ToString(), StringComparison.OrdinalIgnoreCase));
|
||||||
|
}
|
||||||
|
|
||||||
var viewModel = dbMovies.Select(movie => new RequestViewModel
|
var viewModel = dbMovies.Select(movie => new RequestViewModel
|
||||||
{
|
{
|
||||||
ProviderId = movie.ProviderId,
|
ProviderId = movie.ProviderId,
|
||||||
|
@ -110,8 +116,14 @@ namespace PlexRequests.UI.Modules
|
||||||
|
|
||||||
private Response GetTvShows()
|
private Response GetTvShows()
|
||||||
{
|
{
|
||||||
|
var settings = PrSettings.GetSettings();
|
||||||
var isAdmin = Context.CurrentUser.IsAuthenticated();
|
var isAdmin = Context.CurrentUser.IsAuthenticated();
|
||||||
var dbTv = Service.GetAll().Where(x => x.Type == RequestType.TvShow);
|
var dbTv = Service.GetAll().Where(x => x.Type == RequestType.TvShow);
|
||||||
|
if (settings.UsersCanViewOnlyOwnRequests && !isAdmin)
|
||||||
|
{
|
||||||
|
dbTv = dbTv.Where(x => x.RequestedBy.Equals(Session[SessionKeys.UsernameKey].ToString(), StringComparison.OrdinalIgnoreCase));
|
||||||
|
}
|
||||||
|
|
||||||
var viewModel = dbTv.Select(tv => new RequestViewModel
|
var viewModel = dbTv.Select(tv => new RequestViewModel
|
||||||
{
|
{
|
||||||
ProviderId = tv.ProviderId,
|
ProviderId = tv.ProviderId,
|
||||||
|
|
|
@ -90,16 +90,31 @@
|
||||||
<input type="text" class="form-control-custom form-control " id="NoApprovalUsers" name="NoApprovalUsers" placeholder="e.g. John, Bobby" value="@Model.NoApprovalUsers">
|
<input type="text" class="form-control-custom form-control " id="NoApprovalUsers" name="NoApprovalUsers" placeholder="e.g. John, Bobby" value="@Model.NoApprovalUsers">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br />
|
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="checkbox">
|
||||||
|
<label>
|
||||||
|
@if (Model.UsersCanViewOnlyOwnRequests)
|
||||||
|
{
|
||||||
|
<input type="checkbox" id="UsersCanViewOnlyOwnRequests" name="UsersCanViewOnlyOwnRequests" checked="checked"><text>Users can view their own requests only</text>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<input type="checkbox" id="UsersCanViewOnlyOwnRequests" name="UsersCanViewOnlyOwnRequests"><text>Users can view their own requests only</text>
|
||||||
|
}
|
||||||
|
</label>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
@*<div class="form-group">
|
@*<div class="form-group">
|
||||||
<label for="WeeklyRequestLimit" class="control-label">Weekly Request Limit</label>
|
<label for="WeeklyRequestLimit" class="control-label">Weekly Request Limit</label>
|
||||||
<div>
|
<div>
|
||||||
<label>
|
<label>
|
||||||
<input type="number" id="WeeklyRequestLimit" name="WeeklyRequestLimit" class="form-control form-control-custom " value="@Model.WeeklyRequestLimit">
|
<input type="number" id="WeeklyRequestLimit" name="WeeklyRequestLimit" class="form-control form-control-custom " value="@Model.WeeklyRequestLimit">
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div> //TODO: Need to implement this*@
|
</div> //TODO: Need to implement this*@
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -111,4 +126,3 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue