Feature #26: User Flags

Flags can be associated with Users. Includes minor updates to Job Queues
and improved visibility of user information.
This commit is contained in:
Gary Sharp
2014-06-10 17:16:24 +10:00
parent b64ac3b16f
commit 4c3a68da30
104 changed files with 8112 additions and 1623 deletions
+195 -15
View File
@@ -31,6 +31,12 @@ namespace Disco.Web.Views.User
using Disco.Models.Repository;
using Disco.Services;
using Disco.Services.Authorization;
#line 2 "..\..\Views\User\Show.cshtml"
using Disco.Services.Users.UserFlags;
#line default
#line hidden
using Disco.Services.Web;
using Disco.Web;
using Disco.Web.Extensions;
@@ -45,7 +51,7 @@ namespace Disco.Web.Views.User
public override void Execute()
{
#line 2 "..\..\Views\User\Show.cshtml"
#line 3 "..\..\Views\User\Show.cshtml"
Authorization.Require(Claims.User.Show);
@@ -58,12 +64,161 @@ WriteLiteral("\r\n<div");
WriteLiteral(" id=\"User_Show\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" id=\"User_Show_Flags\"");
WriteLiteral(">\r\n");
#line 10 "..\..\Views\User\Show.cshtml"
#line default
#line hidden
#line 10 "..\..\Views\User\Show.cshtml"
foreach (var flag in Model.User.UserFlagAssignments.Where(f => !f.RemovedDate.HasValue).Select(f => Tuple.Create(f, UserFlagService.GetUserFlag(f.UserFlagId))))
{
#line default
#line hidden
WriteLiteral(" <i");
WriteAttribute("class", Tuple.Create(" class=\"", 535), Tuple.Create("\"", 611)
, Tuple.Create(Tuple.Create("", 543), Tuple.Create("flag", 543), true)
, Tuple.Create(Tuple.Create(" ", 547), Tuple.Create("fa", 548), true)
, Tuple.Create(Tuple.Create(" ", 550), Tuple.Create("fa-", 551), true)
#line 12 "..\..\Views\User\Show.cshtml"
, Tuple.Create(Tuple.Create("", 554), Tuple.Create<System.Object, System.Int32>(flag.Item2.Icon
#line default
#line hidden
, 554), false)
, Tuple.Create(Tuple.Create(" ", 572), Tuple.Create("fa-fw", 573), true)
, Tuple.Create(Tuple.Create(" ", 578), Tuple.Create("fa-lg", 579), true)
, Tuple.Create(Tuple.Create(" ", 584), Tuple.Create("d-", 585), true)
#line 12 "..\..\Views\User\Show.cshtml"
, Tuple.Create(Tuple.Create("", 587), Tuple.Create<System.Object, System.Int32>(flag.Item2.IconColour
#line default
#line hidden
, 587), false)
);
WriteLiteral("><span");
WriteLiteral(" class=\"details\"");
WriteLiteral("><span");
WriteLiteral(" class=\"name\"");
WriteLiteral(">");
#line 12 "..\..\Views\User\Show.cshtml"
Write(flag.Item2.Name);
#line default
#line hidden
WriteLiteral("</span>");
#line 12 "..\..\Views\User\Show.cshtml"
if (flag.Item1.Comments != null)
{
#line default
#line hidden
WriteLiteral("<span");
WriteLiteral(" class=\"comments\"");
WriteLiteral(">");
#line 13 "..\..\Views\User\Show.cshtml"
Write(flag.Item1.Comments.ToHtmlComment());
#line default
#line hidden
WriteLiteral("</span>");
#line 13 "..\..\Views\User\Show.cshtml"
}
#line default
#line hidden
WriteLiteral("<span");
WriteLiteral(" class=\"added\"");
WriteLiteral(">");
#line 13 "..\..\Views\User\Show.cshtml"
Write(CommonHelpers.FriendlyDateAndUser(flag.Item1.AddedDate, flag.Item1.AddedUser));
#line default
#line hidden
WriteLiteral("</span></span></i>\r\n");
#line 14 "..\..\Views\User\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" </div>\r\n <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(@">
$(function () {
$('#User_Show_Flags')
.appendTo('#layout_PageHeading')
.tooltip({
items: 'i.flag',
content: function () {
var $this = $(this);
return $this.children('.details').html();
},
tooltipClass: 'User_FlagAssignment_Tooltip',
position: {
my: ""right top"",
at: ""right bottom"",
collision: ""flipfit flip""
},
hade: {
effect: ''
},
close: function (e, ui) {
ui.tooltip.hover(
function () {
$(this).stop(true).fadeTo(100, 1);
},
function () {
$(this).fadeOut(100, function () { $(this).remove(); });
});
}
});
});
</script>
");
WriteLiteral(" ");
#line 8 "..\..\Views\User\Show.cshtml"
#line 47 "..\..\Views\User\Show.cshtml"
Write(Html.Partial(MVC.User.Views.UserParts._Subject, Model));
@@ -103,13 +258,13 @@ WriteLiteral(" id=\"UserDetailTabItems\"");
WriteLiteral("></ul>\r\n");
#line 44 "..\..\Views\User\Show.cshtml"
#line 83 "..\..\Views\User\Show.cshtml"
#line default
#line hidden
#line 44 "..\..\Views\User\Show.cshtml"
#line 83 "..\..\Views\User\Show.cshtml"
if (Authorization.Has(Claims.User.ShowJobs))
{
@@ -117,14 +272,14 @@ WriteLiteral("></ul>\r\n");
#line default
#line hidden
#line 46 "..\..\Views\User\Show.cshtml"
#line 85 "..\..\Views\User\Show.cshtml"
Write(Html.Partial(MVC.User.Views.UserParts._Jobs, Model));
#line default
#line hidden
#line 46 "..\..\Views\User\Show.cshtml"
#line 85 "..\..\Views\User\Show.cshtml"
}
@@ -134,7 +289,7 @@ WriteLiteral("></ul>\r\n");
WriteLiteral(" ");
#line 48 "..\..\Views\User\Show.cshtml"
#line 87 "..\..\Views\User\Show.cshtml"
if (Authorization.Has(Claims.User.ShowAssignmentHistory))
{
@@ -142,14 +297,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 50 "..\..\Views\User\Show.cshtml"
#line 89 "..\..\Views\User\Show.cshtml"
Write(Html.Partial(MVC.User.Views.UserParts._AssignmentHistory, Model));
#line default
#line hidden
#line 50 "..\..\Views\User\Show.cshtml"
#line 89 "..\..\Views\User\Show.cshtml"
}
@@ -159,7 +314,7 @@ WriteLiteral(" ");
WriteLiteral(" ");
#line 52 "..\..\Views\User\Show.cshtml"
#line 91 "..\..\Views\User\Show.cshtml"
if (Authorization.Has(Claims.User.ShowAttachments))
{
@@ -167,14 +322,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 54 "..\..\Views\User\Show.cshtml"
#line 93 "..\..\Views\User\Show.cshtml"
Write(Html.Partial(MVC.User.Views.UserParts._Resources, Model));
#line default
#line hidden
#line 54 "..\..\Views\User\Show.cshtml"
#line 93 "..\..\Views\User\Show.cshtml"
}
@@ -184,7 +339,32 @@ WriteLiteral(" ");
WriteLiteral(" ");
#line 56 "..\..\Views\User\Show.cshtml"
#line 95 "..\..\Views\User\Show.cshtml"
if (Authorization.Has(Claims.User.ShowFlagAssignments))
{
#line default
#line hidden
#line 97 "..\..\Views\User\Show.cshtml"
Write(Html.Partial(MVC.User.Views.UserParts._Flags, Model));
#line default
#line hidden
#line 97 "..\..\Views\User\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" ");
#line 99 "..\..\Views\User\Show.cshtml"
if (Authorization.Has(Claims.User.ShowAuthorization))
{
@@ -192,14 +372,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 58 "..\..\Views\User\Show.cshtml"
#line 101 "..\..\Views\User\Show.cshtml"
Write(Html.Partial(MVC.User.Views.UserParts._Authorization, Model));
#line default
#line hidden
#line 58 "..\..\Views\User\Show.cshtml"
#line 101 "..\..\Views\User\Show.cshtml"
}