a crap tonne of work on #273

This commit is contained in:
tidusjar 2016-06-04 17:51:13 +01:00
commit 071daf4ab4
16 changed files with 472 additions and 103 deletions

View file

@ -164,20 +164,39 @@
<div class="form-group">
<div class="checkbox">
@if (Model.UsersCanViewOnlyOwnRequests)
{
<input type="checkbox" id="UsersCanViewOnlyOwnRequests" name="UsersCanViewOnlyOwnRequests" checked="checked">
<label for="UsersCanViewOnlyOwnRequests">Users can view their own requests only</label>
}
else
{
<input type="checkbox" id="UsersCanViewOnlyOwnRequests" name="UsersCanViewOnlyOwnRequests"><label for="UsersCanViewOnlyOwnRequests">Users can view their own requests only</label>
}
@if (Model.UsersCanViewOnlyOwnRequests)
{
<input type="checkbox" id="UsersCanViewOnlyOwnRequests" name="UsersCanViewOnlyOwnRequests" checked="checked">
<label for="UsersCanViewOnlyOwnRequests">Users can view their own requests only</label>
}
else
{
<input type="checkbox" id="UsersCanViewOnlyOwnRequests" name="UsersCanViewOnlyOwnRequests"><label for="UsersCanViewOnlyOwnRequests">Users can view their own requests only</label>
}
</div>
</div>
<div class="form-group">
<div class="checkbox">
@if (Model.UsersCanViewOnlyOwnIssues)
{
<input type="checkbox" id="UsersCanViewOnlyOwnIssues" name="UsersCanViewOnlyOwnIssues" checked="checked">
<label for="UsersCanViewOnlyOwnIssues">Users can view their own issues only</label>
}
else
{
<input type="checkbox" id="UsersCanViewOnlyOwnIssues" name="UsersCanViewOnlyOwnIssues"><label for="UsersCanViewOnlyOwnIssues">Users can view their own issues only</label>
}
</div>
</div>
<p class="form-group">A comma separated list of users whose requests do not require approval.</p>
<div class="form-group">
<label for="noApprovalUsers" class="control-label">Approval White listed Users</label>

View file

@ -1,14 +1,116 @@

<h1>Details</h1>
<h4>Issues For @Model.Title</h4>
<br />
@using System.Linq
@using PlexRequests.Core.Models
@using PlexRequests.UI.Helpers
@{
var baseUrl = Html.GetBaseUrl();
var formAction = string.Empty;
if (!string.IsNullOrEmpty(baseUrl.ToHtmlString()))
{
formAction = "/" + baseUrl.ToHtmlString();
}
<img src="@Model.PosterUrl" />
var isAdmin = false;
if (Context.CurrentUser != null)
{
var claims = Context.CurrentUser.Claims.ToList();
if (claims.Contains("Admin") || claims.Contains("PowerUser"))
{
isAdmin = true;
}
}
}
<h1>Details</h1>
<div class="row">
<div class="col-md-2">
<img src="@Model.PosterUrl" />
</div>
<div class="col-md-10">
<h4>Issues For "@Model.Title"</h4>
</div>
@if (isAdmin)
{
<div class="col-md-2">
@if (Model.IssueStatus == IssueStatus.PendingIssue)
{
<form action="@formAction/issues/inprogressUpdate" method="post">
<input id="issueId" name="issueId" value="@Model.Id" hidden="hidden" />
<button id="@Model.Id" class="btn btn-sm btn-primary-outline dropdown-toggle inProgress">In-Progress</button>
</form>
}
@if (Model.IssueStatus == IssueStatus.InProgressIssue)
{
<form action="@formAction/issues/resolvedUpdate" method="post">
<input id="issueId" name="issueId" value="@Model.Id" hidden="hidden" />
<button type="submit" id="@Model.Id" class="btn btn-sm btn-success-outline dropdown-toggle resolve">Resolve</button>
</form>
}
@if (Model.IssueStatus == IssueStatus.ResolvedIssue)
{
<form action="@formAction/issues/remove" method="post">
<input id="issueId" name="issueId" value="@Model.Id" hidden="hidden" />
<button type="submit" id="@Model.Id" class="btn btn-sm btn-danger-outline dropdown-toggle delete">Remove</button>
</form>
}
</div>
}
<br />
</div>
<hr />
@foreach (var issue in Model.Issues)
{
<div>Type: @issue.Issue</div>
<div>User Reported: @issue.UserReported</div>
<div>User Note: @issue.UserNote</div>
<div>Admin Note: @issue.AdminNote</div>
}
<div class="row">
<div class="col-sm-11">
<div><strong>Type:</strong> @StringHelper.CamelCaseToWords(issue.Issue.ToString())</div>
<div><strong>User Reported:</strong> @issue.UserReported</div>
<div><strong>User Note:</strong> @issue.UserNote</div>
<div><strong>Admin Note:</strong>@issue.AdminNote</div>
</div>
@if (isAdmin)
{
<div class="col-sm-1">
<form action="@formAction/issues/clear" method="post">
<input name="issueId" value="@Model.Id" hidden="hidden" />
<input name="issue" value="@((int) issue.Issue)" hidden="hidden" />
<button type="submit" id="@Model.Id" class="btn btn-sm btn-info-outline dropdown-toggle">Clear</button>
</form>
</div>
<div class="col-sm-1">
<button id="@Model.Id" issue-select="4" class="note btn btn-sm btn-primary-outline dropdown-toggle" data-identifier="@Model.Id" data-issue="@((int) issue.Issue)" href="#" data-toggle="modal" data-target="#noteModal">Add Note</button>
</div>
}
</div>
<br />
<hr />
}
<div class="modal fade" id="noteModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"><i class="fa fa-times"></i></button>
<h4 class="modal-title">Add a note</h4>
</div>
<form method="POST" action="@formAction/issues/addnote" id="noteForm">
<div class="modal-body">
<input name="requestId" class="noteId" type="text" hidden="hidden" value="" />
<input name="issue" class="issue" type="text" hidden="hidden" value="" />
<textarea class="form-control form-control-custom" rows="3" id="noteArea" name="noteArea"></textarea>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger-outline" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary-outline theNoteSaveButton" data-dismiss="modal">Save changes</button>
</div>
</form>
</div>
</div>
</div>
@Html.LoadIssueDetailsAssets()

View file

@ -3,8 +3,66 @@
<h4>Below you can see yours and all your current issues and their state.</h4>
<br />
<br />
<h3>Pending Issues</h3><hr />
<div id="pendingIssues"></div>
<ul id="nav-tabs" class="nav nav-tabs" role="tablist">
<li role="presentation" class="active"><a href="#pendingTab" aria-controls="home" role="tab" data-toggle="tab">Pending <span id="pendingCount"></span></a></li>
<li role="presentation"><a href="#inProgressTab" aria-controls="profile" role="tab" data-toggle="tab">In-Progress <span id="inProgressCount"></span></a></li>
<li role="presentation"><a href="#resolvedTab" aria-controls="profile" role="tab" data-toggle="tab">Resolved <span id="resolvedCount"></span></a></li>
</ul>
<br/>
<hr/>
<div class="row">
<div class="col-md-3">
<h4>Title</h4>
</div>
<div class="col-md-2">
<h4>Type</h4>
</div>
<div class="col-md-1">
<h4>Issue's</h4>
</div>
<div class="col-md-2">
<h4>Requested</h4>
</div>
<div class="col-sm-3 col-sm-push-3">
</div>
</div>
<div id="myTabContent" class="tab-content">
<!-- Pending tab -->
<div role="tabpanel" class="tab-pane active" id="pendingTab">
<br />
<br />
<!-- Movie content -->
<div id="pendingIssues">
</div>
</div>
<!--In Progress-->
<div role="tabpanel" class="tab-pane" id="inProgressTab">
<br />
<br />
<!-- In progress content -->
<div id="inprogressIssues">
</div>
</div>
<!-- Resolved -->
<div role="tabpanel" class="tab-pane" id="resolvedTab">
<br />
<br />
<!-- resolved content -->
<div id="resolvedIssues">
</div>
</div>
</div>
<script id="issue-template" type="text/x-handlebars-template">
<div>
@ -21,22 +79,17 @@
<div class="col-md-2">
{{#if requestId}}
<div>Request {{requestId}}</div>
<div><i class="fa fa-check"></i></div>
{{else}}
<div><i class="fa fa-times"></i></div>
{{/if}}
</div>
<div class="col-sm-3 col-sm-push-3">
<a href="" id="{{id}}link" class="btn btn-sm btn-info-outline approve"><i class="fa fa-info"></i> Details</a>
</div>
</div>
</div>
<hr />
</script>
@Html.LoadIssueAssets()
@Html.LoadIssueAssets()

View file

@ -183,7 +183,7 @@
{{#if_eq issueId 0}}
<i class="fa fa-times"></i>
{{else}}
<a href="/issues/{{issueId}}"><i class="fa fa-check"></i></a>
<a href="@formAction/issues/{{issueId}}"><i class="fa fa-check"></i></a>
{{/if_eq}}
</div>
</div>
@ -328,11 +328,6 @@
<button id="{{requestId}}" style="text-align: right" class="btn btn-sm btn-danger-outline delete" type="submit"><i class="fa fa-minus"></i> Remove</button>
</form>
<form method="POST" action="@formAction/requests/clearissues" id="clear{{requestId}}">
<input name="Id" type="text" value="{{requestId}}" hidden="hidden" />
<button id="{{requestId}}" style="text-align: right" class="btn btn-sm btn-info-outline clear" type="submit"><i class="fa fa-check"></i> Clear Issues</button>
</form>
<form method="POST" action="@formAction/requests/changeavailability" id="change{{requestId}}">
<input name="Id" type="text" value="{{requestId}}" hidden="hidden" />
{{#if_eq available true}}