Update: New User UI (Initial)

This commit is contained in:
Gary Sharp
2013-06-20 16:51:26 +10:00
parent 7353c7c6b3
commit 86a107ed41
22 changed files with 1565 additions and 1061 deletions
@@ -2,79 +2,83 @@
@{
Html.BundleDeferred("~/Style/Shadowbox");
Html.BundleDeferred("~/ClientScripts/Modules/Shadowbox");
Html.BundleDeferred("~/ClientScripts/Modules/Silverlight");
}
<table id="userShowResources">
<tr>
<td id="Attachments">
<div class="attachmentOutput">
@if (Model.User.UserAttachments != null)
{
foreach (var ua in Model.User.UserAttachments)
<div id="UserDetailTab-Resources" class="UserPart">
<table id="userShowResources">
<tr>
<td id="Attachments">
<div class="attachmentOutput">
@if (Model.User.UserAttachments != null)
{
<a href="@Url.Action(MVC.API.User.AttachmentDownload(ua.Id))" data-attachmentid="@ua.Id" data-mimetype="@ua.MimeType">
<span class="icon" title="@ua.Filename">
<img alt="Attachment Thumbnail" src="@(Url.Action(MVC.API.User.AttachmentThumbnail(ua.Id)))" /></span>
<span class="comments" title="@ua.Comments">
@{if (!string.IsNullOrEmpty(ua.DocumentTemplateId))
{ @ua.DocumentTemplate.Description}
else
{ @ua.Comments }}
</span><span class="author">@ua.TechUser.ToString()</span><span class="remove"></span>
<span class="timestamp" title="@ua.Timestamp.ToFullDateTime()">@ua.Timestamp.ToFuzzy()</span>
</a>
}
}
</div>
<div class="attachmentInput clearfix">
<span class="action upload"></span><span class="action photo"></span>
</div>
<script type="text/javascript">
Shadowbox.init({
skipSetup: true,
modal: true
});
$(function () {
if (!document.DiscoFunctions) {
document.DiscoFunctions = {};
}
document.DiscoFunctions.addAttachment = addAttachment;
$Attachments = $('#Attachments');
$attachmentOutput = $Attachments.find('.attachmentOutput');
$attachmentOutput.find('span.remove').click(removeAttachment);
$('#dialogUpload').dialog({ autoOpen: false,
draggable: false,
modal: true,
resizable: false,
width: 860,
height: 550,
close: function () {
silverlightUploadAttachment.content.Navigator.Navigate('/Hidden');
foreach (var ua in Model.User.UserAttachments)
{
<a href="@Url.Action(MVC.API.User.AttachmentDownload(ua.Id))" data-attachmentid="@ua.Id" data-mimetype="@ua.MimeType">
<span class="icon" title="@ua.Filename">
<img alt="Attachment Thumbnail" src="@(Url.Action(MVC.API.User.AttachmentThumbnail(ua.Id)))" /></span>
<span class="comments" title="@ua.Comments">
@{if (!string.IsNullOrEmpty(ua.DocumentTemplateId))
{ @ua.DocumentTemplate.Description}
else
{ @ua.Comments }}
</span><span class="author">@ua.TechUser.ToString()</span><span class="remove"></span>
<span class="timestamp" title="@ua.Timestamp.ToFullDateTime()">@ua.Timestamp.ToFuzzy()</span>
</a>
}
}
</div>
<div class="attachmentInput clearfix">
<span class="action upload"></span><span class="action photo"></span>
</div>
<script type="text/javascript">
Shadowbox.init({
skipSetup: true,
modal: true
});
$(function () {
if (!document.DiscoFunctions) {
document.DiscoFunctions = {};
}
document.DiscoFunctions.addAttachment = addAttachment;
$('#dialogRemoveAttachment').dialog({
resizable: false,
height: 140,
modal: true,
autoOpen: false
});
$Attachments = $('#Attachments');
$attachmentOutput = $Attachments.find('.attachmentOutput');
var onLoadNavigation = null;
var isLoaded = null;
Silverlight.createObject(
'@(Links.ClientBin.Disco_Silverlight_AttachmentUpload_xap)',
$attachmentOutput.find('span.remove').click(removeAttachment);
$('#dialogUpload').dialog({
autoOpen: false,
draggable: false,
modal: true,
resizable: false,
width: 860,
height: 550,
close: function () {
silverlightUploadAttachment.content.Navigator.Navigate('/Hidden');
}
});
$('#dialogRemoveAttachment').dialog({
resizable: false,
height: 140,
modal: true,
autoOpen: false
});
var onLoadNavigation = null;
var isLoaded = null;
Silverlight.createObject(
'@(Links.ClientBin.Disco_Silverlight_AttachmentUpload_xap)',
$('#silverlightHostUploadAttachment').get(0),
'silverlightUploadAttachment',
{ width: '840px', height: '500px', background: 'white', version: '4.0.60310.0' },
{ onLoad: function () {
if (onLoadNavigation) {
silverlightUploadAttachment.content.Navigator.Navigate(onLoadNavigation);
isLoaded = true;
{
onLoad: function () {
if (onLoadNavigation) {
silverlightUploadAttachment.content.Navigator.Navigate(onLoadNavigation);
isLoaded = true;
}
}
}
},
'UploadUrl=@(Url.Action(MVC.API.User.AttachmentUpload(Model.User.Id, null)))'
);
@@ -178,16 +182,21 @@
$this.shadowbox({ gallery: 'attachments', player: 'img', title: $this.find('.comments').text() });
});
});
</script>
</td>
</tr>
</table>
<div id="dialogUpload" title="Upload Attachment">
<div id="silverlightHostUploadAttachment">
</script>
</td>
</tr>
</table>
<div id="dialogUpload" title="Upload Attachment">
<div id="silverlightHostUploadAttachment">
</div>
</div>
</div>
<div id="dialogRemoveAttachment" title="Remove this Attachment?">
<p>
<span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
Are you sure?</p>
<div id="dialogRemoveAttachment" title="Remove this Attachment?">
<p>
<span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
Are you sure?
</p>
</div>
<script>
$('#UserDetailTabItems').append('<li><a href="#UserDetailTab-Resources" id="UserDetailTab-ResourcesLink">Attachments [@(Model.User.UserAttachments == null ? 0 : Model.User.UserAttachments.Count)]</a></li>');
</script>
</div>
@@ -32,7 +32,7 @@ namespace Disco.Web.Views.User.UserParts
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "2.0.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Views/User/UserParts/Resources.cshtml")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Views/User/UserParts/_Resources.cshtml")]
public partial class Resources : System.Web.Mvc.WebViewPage<Disco.Web.Models.User.ShowModel>
{
public Resources()
@@ -41,61 +41,68 @@ namespace Disco.Web.Views.User.UserParts
public override void Execute()
{
#line 2 "..\..\Views\User\UserParts\Resources.cshtml"
#line 2 "..\..\Views\User\UserParts\_Resources.cshtml"
Html.BundleDeferred("~/Style/Shadowbox");
Html.BundleDeferred("~/ClientScripts/Modules/Shadowbox");
Html.BundleDeferred("~/ClientScripts/Modules/Silverlight");
#line default
#line hidden
WriteLiteral("\r\n<table");
WriteLiteral("\r\n<div");
WriteLiteral(" id=\"UserDetailTab-Resources\"");
WriteLiteral(" class=\"UserPart\"");
WriteLiteral(">\r\n <table");
WriteLiteral(" id=\"userShowResources\"");
WriteLiteral(">\r\n <tr>\r\n <td");
WriteLiteral(">\r\n <tr>\r\n <td");
WriteLiteral(" id=\"Attachments\"");
WriteLiteral(">\r\n <div");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"attachmentOutput\"");
WriteLiteral(">\r\n");
#line 10 "..\..\Views\User\UserParts\Resources.cshtml"
#line 12 "..\..\Views\User\UserParts\_Resources.cshtml"
#line default
#line hidden
#line 10 "..\..\Views\User\UserParts\Resources.cshtml"
if (Model.User.UserAttachments != null)
{
foreach (var ua in Model.User.UserAttachments)
#line 12 "..\..\Views\User\UserParts\_Resources.cshtml"
if (Model.User.UserAttachments != null)
{
foreach (var ua in Model.User.UserAttachments)
{
#line default
#line hidden
WriteLiteral(" <a");
WriteLiteral(" <a");
WriteAttribute("href", Tuple.Create(" href=\"", 464), Tuple.Create("\"", 522)
WriteAttribute("href", Tuple.Create(" href=\"", 618), Tuple.Create("\"", 676)
#line 14 "..\..\Views\User\UserParts\Resources.cshtml"
, Tuple.Create(Tuple.Create("", 471), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.User.AttachmentDownload(ua.Id))
#line 16 "..\..\Views\User\UserParts\_Resources.cshtml"
, Tuple.Create(Tuple.Create("", 625), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.User.AttachmentDownload(ua.Id))
#line default
#line hidden
, 471), false)
, 625), false)
);
WriteLiteral(" data-attachmentid=\"");
#line 14 "..\..\Views\User\UserParts\Resources.cshtml"
Write(ua.Id);
#line 16 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(ua.Id);
#line default
@@ -105,108 +112,108 @@ WriteLiteral("\"");
WriteLiteral(" data-mimetype=\"");
#line 14 "..\..\Views\User\UserParts\Resources.cshtml"
Write(ua.MimeType);
#line 16 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(ua.MimeType);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(">\r\n <span");
WriteLiteral(">\r\n <span");
WriteLiteral(" class=\"icon\"");
WriteAttribute("title", Tuple.Create(" title=\"", 624), Tuple.Create("\"", 644)
WriteAttribute("title", Tuple.Create(" title=\"", 782), Tuple.Create("\"", 802)
#line 15 "..\..\Views\User\UserParts\Resources.cshtml"
, Tuple.Create(Tuple.Create("", 632), Tuple.Create<System.Object, System.Int32>(ua.Filename
#line 17 "..\..\Views\User\UserParts\_Resources.cshtml"
, Tuple.Create(Tuple.Create("", 790), Tuple.Create<System.Object, System.Int32>(ua.Filename
#line default
#line hidden
, 632), false)
, 790), false)
);
WriteLiteral(">\r\n <img");
WriteLiteral(">\r\n <img");
WriteLiteral(" alt=\"Attachment Thumbnail\"");
WriteAttribute("src", Tuple.Create(" src=\"", 707), Tuple.Create("\"", 767)
WriteAttribute("src", Tuple.Create(" src=\"", 869), Tuple.Create("\"", 929)
#line 16 "..\..\Views\User\UserParts\Resources.cshtml"
, Tuple.Create(Tuple.Create("", 713), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.User.AttachmentThumbnail(ua.Id))
#line 18 "..\..\Views\User\UserParts\_Resources.cshtml"
, Tuple.Create(Tuple.Create("", 875), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.User.AttachmentThumbnail(ua.Id))
#line default
#line hidden
, 713), false)
, 875), false)
);
WriteLiteral(" /></span>\r\n <span");
WriteLiteral(" /></span>\r\n <span");
WriteLiteral(" class=\"comments\"");
WriteAttribute("title", Tuple.Create(" title=\"", 826), Tuple.Create("\"", 846)
WriteAttribute("title", Tuple.Create(" title=\"", 992), Tuple.Create("\"", 1012)
#line 17 "..\..\Views\User\UserParts\Resources.cshtml"
, Tuple.Create(Tuple.Create("", 834), Tuple.Create<System.Object, System.Int32>(ua.Comments
#line 19 "..\..\Views\User\UserParts\_Resources.cshtml"
, Tuple.Create(Tuple.Create("", 1000), Tuple.Create<System.Object, System.Int32>(ua.Comments
#line default
#line hidden
, 834), false)
, 1000), false)
);
WriteLiteral(">\r\n");
#line 18 "..\..\Views\User\UserParts\Resources.cshtml"
#line 20 "..\..\Views\User\UserParts\_Resources.cshtml"
#line default
#line hidden
#line 18 "..\..\Views\User\UserParts\Resources.cshtml"
if (!string.IsNullOrEmpty(ua.DocumentTemplateId))
{
#line 20 "..\..\Views\User\UserParts\_Resources.cshtml"
if (!string.IsNullOrEmpty(ua.DocumentTemplateId))
{
#line default
#line hidden
#line 19 "..\..\Views\User\UserParts\Resources.cshtml"
Write(ua.DocumentTemplate.Description);
#line 21 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(ua.DocumentTemplate.Description);
#line default
#line hidden
#line 19 "..\..\Views\User\UserParts\Resources.cshtml"
}
else
{
#line 21 "..\..\Views\User\UserParts\_Resources.cshtml"
}
else
{
#line default
#line hidden
#line 21 "..\..\Views\User\UserParts\Resources.cshtml"
Write(ua.Comments);
#line 23 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(ua.Comments);
#line default
#line hidden
#line 21 "..\..\Views\User\UserParts\Resources.cshtml"
}
#line 23 "..\..\Views\User\UserParts\_Resources.cshtml"
}
#line default
#line hidden
WriteLiteral("\r\n </span><span");
WriteLiteral("\r\n </span><span");
WriteLiteral(" class=\"author\"");
WriteLiteral(">");
#line 22 "..\..\Views\User\UserParts\Resources.cshtml"
Write(ua.TechUser.ToString());
#line 24 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(ua.TechUser.ToString());
#line default
@@ -215,44 +222,44 @@ WriteLiteral("</span><span");
WriteLiteral(" class=\"remove\"");
WriteLiteral("></span>\r\n <span");
WriteLiteral("></span>\r\n <span");
WriteLiteral(" class=\"timestamp\"");
WriteAttribute("title", Tuple.Create(" title=\"", 1242), Tuple.Create("\"", 1280)
WriteAttribute("title", Tuple.Create(" title=\"", 1432), Tuple.Create("\"", 1470)
#line 23 "..\..\Views\User\UserParts\Resources.cshtml"
, Tuple.Create(Tuple.Create("", 1250), Tuple.Create<System.Object, System.Int32>(ua.Timestamp.ToFullDateTime()
#line 25 "..\..\Views\User\UserParts\_Resources.cshtml"
, Tuple.Create(Tuple.Create("", 1440), Tuple.Create<System.Object, System.Int32>(ua.Timestamp.ToFullDateTime()
#line default
#line hidden
, 1250), false)
, 1440), false)
);
WriteLiteral(">");
#line 23 "..\..\Views\User\UserParts\Resources.cshtml"
Write(ua.Timestamp.ToFuzzy());
#line 25 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(ua.Timestamp.ToFuzzy());
#line default
#line hidden
WriteLiteral("</span>\r\n </a> \r\n");
WriteLiteral("</span>\r\n </a> \r\n");
#line 25 "..\..\Views\User\UserParts\Resources.cshtml"
#line 27 "..\..\Views\User\UserParts\_Resources.cshtml"
}
}
}
#line default
#line hidden
WriteLiteral(" </div>\r\n <div");
WriteLiteral(" </div>\r\n <div");
WriteLiteral(" class=\"attachmentInput clearfix\"");
WriteLiteral(">\r\n <span");
WriteLiteral(">\r\n <span");
WriteLiteral(" class=\"action upload\"");
@@ -260,52 +267,35 @@ WriteLiteral("></span><span");
WriteLiteral(" class=\"action photo\"");
WriteLiteral("></span>\r\n </div>\r\n <script");
WriteLiteral("></span>\r\n </div>\r\n <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(@">
Shadowbox.init({
skipSetup: true,
modal: true
});
$(function () {
if (!document.DiscoFunctions) {
document.DiscoFunctions = {};
}
document.DiscoFunctions.addAttachment = addAttachment;
$Attachments = $('#Attachments');
$attachmentOutput = $Attachments.find('.attachmentOutput');
$attachmentOutput.find('span.remove').click(removeAttachment);
$('#dialogUpload').dialog({ autoOpen: false,
draggable: false,
modal: true,
resizable: false,
width: 860,
height: 550,
close: function () {
silverlightUploadAttachment.content.Navigator.Navigate('/Hidden');
}
});
$('#dialogRemoveAttachment').dialog({
resizable: false,
height: 140,
modal: true,
autoOpen: false
});
var onLoadNavigation = null;
var isLoaded = null;
Silverlight.createObject(
'");
WriteLiteral(">\r\n Shadowbox.init({\r\n skipSetup: true," +
"\r\n modal: true\r\n });\r\n " +
" $(function () {\r\n if (!document.DiscoFunctions) {\r\n " +
" document.DiscoFunctions = {};\r\n " +
" }\r\n document.DiscoFunctions.addAttachment = addAttachmen" +
"t;\r\n\r\n $Attachments = $(\'#Attachments\');\r\n " +
" $attachmentOutput = $Attachments.find(\'.attachmentOutput\');\r\n\r\n " +
" $attachmentOutput.find(\'span.remove\').click(removeAttachment);\r\n" +
"\r\n $(\'#dialogUpload\').dialog({\r\n " +
" autoOpen: false,\r\n draggable: false,\r\n " +
" modal: true,\r\n resizable: false,\r\n " +
" width: 860,\r\n height: 550,\r\n" +
" close: function () {\r\n " +
" silverlightUploadAttachment.content.Navigator.Navigate(\'/Hidden\');\r\n " +
" }\r\n });\r\n\r\n $(\'#" +
"dialogRemoveAttachment\').dialog({\r\n resizable: false," +
"\r\n height: 140,\r\n modal: t" +
"rue,\r\n autoOpen: false\r\n });\r\n" +
"\r\n var onLoadNavigation = null;\r\n " +
"var isLoaded = null;\r\n Silverlight.createObject(\r\n " +
" \'");
#line 68 "..\..\Views\User\UserParts\Resources.cshtml"
Write(Links.ClientBin.Disco_Silverlight_AttachmentUpload_xap);
#line 71 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Links.ClientBin.Disco_Silverlight_AttachmentUpload_xap);
#line default
@@ -314,17 +304,18 @@ WriteLiteral(@"',
$('#silverlightHostUploadAttachment').get(0),
'silverlightUploadAttachment',
{ width: '840px', height: '500px', background: 'white', version: '4.0.60310.0' },
{ onLoad: function () {
if (onLoadNavigation) {
silverlightUploadAttachment.content.Navigator.Navigate(onLoadNavigation);
isLoaded = true;
{
onLoad: function () {
if (onLoadNavigation) {
silverlightUploadAttachment.content.Navigator.Navigate(onLoadNavigation);
isLoaded = true;
}
}
}
},
'UploadUrl=");
#line 79 "..\..\Views\User\UserParts\Resources.cshtml"
#line 83 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Url.Action(MVC.API.User.AttachmentUpload(Model.User.Id, null)));
@@ -356,7 +347,7 @@ WriteLiteral(@"'
url: '");
#line 102 "..\..\Views\User\UserParts\Resources.cshtml"
#line 106 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Url.Action(MVC.API.User.Attachment()));
@@ -374,7 +365,7 @@ WriteLiteral(@"',
e.attr('data-attachmentid', a.Id).attr('data-mimetype', a.MimeType).attr('href', '");
#line 111 "..\..\Views\User\UserParts\Resources.cshtml"
#line 115 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Url.Action(MVC.API.User.AttachmentDownload()));
@@ -384,7 +375,7 @@ WriteLiteral("/\' + a.Id);\r\n e.find(\'.icon
"\'");
#line 112 "..\..\Views\User\UserParts\Resources.cshtml"
#line 116 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Url.Action(MVC.API.User.AttachmentThumbnail()));
@@ -417,7 +408,7 @@ WriteLiteral("/\' + a.Id);\r\n e.find(\'.comm
" $.ajax({\r\n url: \'");
#line 144 "..\..\Views\User\UserParts\Resources.cshtml"
#line 148 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Url.Action(MVC.API.User.AttachmentRemove()));
@@ -449,29 +440,41 @@ WriteLiteral("\',\r\n dataType: \'json\',\r\n
"is.attr(\'data-mimetype\').toLowerCase().indexOf(\'image/\') == 0)\r\n " +
" $this.shadowbox({ gallery: \'attachments\', player: \'img\', title: $thi" +
"s.find(\'.comments\').text() });\r\n });\r\n });\r\n " +
" </script>\r\n </td>\r\n </tr>\r\n</table>\r\n<div");
" </script>\r\n </td>\r\n </tr>\r\n </table>\r\n <di" +
"v");
WriteLiteral(" id=\"dialogUpload\"");
WriteLiteral(" title=\"Upload Attachment\"");
WriteLiteral(">\r\n <div");
WriteLiteral(">\r\n <div");
WriteLiteral(" id=\"silverlightHostUploadAttachment\"");
WriteLiteral(">\r\n </div>\r\n</div>\r\n<div");
WriteLiteral(">\r\n </div>\r\n </div>\r\n <div");
WriteLiteral(" id=\"dialogRemoveAttachment\"");
WriteLiteral(" title=\"Remove this Attachment?\"");
WriteLiteral(">\r\n <p>\r\n <span");
WriteLiteral(">\r\n <p>\r\n <span");
WriteLiteral(" class=\"ui-icon ui-icon-alert\"");
WriteLiteral(" style=\"float: left; margin: 0 7px 20px 0;\"");
WriteLiteral("></span>\r\n Are you sure?</p>\r\n</div>\r\n");
WriteLiteral("></span>\r\n Are you sure?\r\n </p>\r\n </div>\r\n <script>\r\n " +
" $(\'#UserDetailTabItems\').append(\'<li><a href=\"#UserDetailTab-Resources\" id=\"" +
"UserDetailTab-ResourcesLink\">Attachments [");
#line 200 "..\..\Views\User\UserParts\_Resources.cshtml"
Write(Model.User.UserAttachments == null ? 0 : Model.User.UserAttachments.Count);
#line default
#line hidden
WriteLiteral("]</a></li>\');\r\n </script>\r\n</div>\r\n");
}
}
@@ -0,0 +1,157 @@
@model Disco.Web.Models.User.ShowModel
<table id="User_Show_Subjects">
<tr>
<td id="User_Show_Details">
<div>
<div id="User_Show_Details_Identity">
<table class="none verticalHeadings">
<tr>
<td><span>Username (Id):</span>
</td>
<td>
<h4 id="User_Show_Details_Identity_Id" title="Username">@Model.User.Id</h4>
</td>
</tr>
<tr>
<td>Display Name:</td>
<td><span id="User_Show_Details_Identity_DisplayName" title="Display Name">@Model.User.DisplayName</span></td>
</tr>
<tr>
<td>Given Name:</td>
<td><span id="User_Show_Details_Identity_GivenName" title="Given Name">@Model.User.GivenName</span></td>
</tr>
<tr>
<td>Surname:</td>
<td><span id="User_Show_Details_Identity_Surname" title="Surname">@Model.User.Surname</span></td>
</tr>
</table>
</div>
<div id="User_Show_Details_Category" class="status">
<table class="none verticalHeadings">
<tr>
<td>Type:
</td>
<td><span id="User_Show_Details_Category_Type" title="Type">@Model.User.Type</span></td>
</tr>
</table>
</div>
<div id="User_Show_Details_Attributes" class="status">
<table class="none verticalHeadings">
<tr>
<td>Email:</td>
<td>
@if (!string.IsNullOrEmpty(Model.User.EmailAddress))
{
<span id="User_Show_Details_Attributes_Email" title="Email Address [Update in Active Directory]">@Model.User.EmailAddress</span>
}
else
{
<span class="smallMessage">Unknown</span>
}
</td>
</tr>
<tr>
<td>Phone:</td>
<td>
@if (!string.IsNullOrEmpty(Model.User.PhoneNumber))
{
<span id="User_Show_Details_Attributes_Phone" title="Phone Number [Update in Active Directory]">@Model.User.PhoneNumber</span>
}
else
{
<span class="smallMessage">Unknown</span>
}
</td>
</tr>
</table>
</div>
<div id="User_Show_GenerateDocument_Container" class="status">
@Html.DropDownList("User_Show_GenerateDocument", Model.DocumentTemplatesSelectListItems)
<script type="text/javascript">
$(function () {
var generatePdfUrl = '@Url.Action(MVC.API.User.GeneratePdf(Model.User.Id, null))?DocumentTemplateId=';
var $documentTemplates = $('#User_Show_GenerateDocument');
$documentTemplates.change(function () {
var v = $documentTemplates.val();
if (v) {
window.location.href = generatePdfUrl + v;
$documentTemplates.val('').blur();
}
});
});
</script>
</div>
<div id="User_Show_Details_Actions">
@{
Html.BundleDeferred("~/ClientScripts/Modules/Disco-CreateJob");
}
@Html.ActionLinkSmallButton("Create Job", MVC.Job.Create(Model.PrimaryDeviceSerialNumber, Model.User.Id), "buttonCreateJob")
</div>
</div>
</td>
<td id="User_Show_AssignedDevices">
<div>
<div id="User_Show_AssignedDevices_Active">
<h3>Current Device Assignments</h3>
@{
var currentAssignments = Model.User.DeviceUserAssignments.Where(dua => !dua.UnassignedDate.HasValue).ToList();
}
@if (currentAssignments.Count > 0)
{
foreach (var assignment in currentAssignments)
{
<div class="User_Show_AssignedDevices_CurrentAssignment clearfix" data-deviceserialnumber="@assignment.DeviceSerialNumber">
<a href="@Url.Action(MVC.Device.Show(assignment.Device.SerialNumber))">
<img class="User_Show_AssignedDevices_CurrentAssignment_Image" alt="Model Image" src="@Url.Action(MVC.API.DeviceModel.Image(assignment.Device.DeviceModel.Id, assignment.Device.DeviceModel.ImageHash()))" />
</a>
<div class="User_Show_AssignedDevices_CurrentAssignment_Details">
<table class="none">
<tbody>
<tr>
<td>Serial Number:
</td>
<td>
<span class="User_Show_AssignedDevices_CurrentAssignment_SerialNumber">@Html.ActionLink(assignment.Device.SerialNumber, MVC.Device.Show(assignment.Device.SerialNumber))</span> (<span>@assignment.Device.ComputerName</span>)
</td>
</tr>
<tr>
<td>Model:
</td>
<td>
<span class="User_Show_AssignedDevices_CurrentAssignment_Model">@assignment.Device.DeviceModel.ToString()</span>
</td>
</tr>
<tr>
<td>Asset:</td>
<td>
@if (!string.IsNullOrEmpty(assignment.Device.AssetNumber))
{
<span class="User_Show_AssignedDevices_CurrentAssignment_Asset">@assignment.Device.AssetNumber</span>
}
else
{
<span class="smallMessage">Unknown</span>
}
</td>
</tr>
<tr>
<td>Assigned:</td>
<td>
<span class="User_Show_AssignedDevices_CurrentAssignment_Assigned">@CommonHelpers.FriendlyDate(assignment.AssignedDate)</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
}
}
else
{
<span class="smallMessage">No Current Device Assignments</span>
}
</div>
</div>
</td>
</tr>
</table>
@@ -0,0 +1,607 @@
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18033
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Views.User.UserParts
{
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Web;
using System.Web.Helpers;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
using System.Web.Mvc.Html;
using System.Web.Routing;
using System.Web.Security;
using System.Web.UI;
using System.Web.WebPages;
using Disco.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "2.0.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Views/User/UserParts/_Subject.cshtml")]
public partial class Subject : System.Web.Mvc.WebViewPage<Disco.Web.Models.User.ShowModel>
{
public Subject()
{
}
public override void Execute()
{
WriteLiteral("<table");
WriteLiteral(" id=\"User_Show_Subjects\"");
WriteLiteral(">\r\n <tr>\r\n <td");
WriteLiteral(" id=\"User_Show_Details\"");
WriteLiteral(">\r\n <div>\r\n <div");
WriteLiteral(" id=\"User_Show_Details_Identity\"");
WriteLiteral(">\r\n <table");
WriteLiteral(" class=\"none verticalHeadings\"");
WriteLiteral(">\r\n <tr>\r\n <td><span>Username (" +
"Id):</span>\r\n </td>\r\n <td>" +
"\r\n <h4");
WriteLiteral(" id=\"User_Show_Details_Identity_Id\"");
WriteLiteral(" title=\"Username\"");
WriteLiteral(">");
#line 12 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.Id);
#line default
#line hidden
WriteLiteral("</h4>\r\n </td>\r\n </tr>\r\n " +
" <tr>\r\n <td>Display Name:</td>\r\n " +
" <td><span");
WriteLiteral(" id=\"User_Show_Details_Identity_DisplayName\"");
WriteLiteral(" title=\"Display Name\"");
WriteLiteral(">");
#line 17 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.DisplayName);
#line default
#line hidden
WriteLiteral("</span></td>\r\n </tr>\r\n <tr>\r\n " +
" <td>Given Name:</td>\r\n <td><spa" +
"n");
WriteLiteral(" id=\"User_Show_Details_Identity_GivenName\"");
WriteLiteral(" title=\"Given Name\"");
WriteLiteral(">");
#line 21 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.GivenName);
#line default
#line hidden
WriteLiteral("</span></td>\r\n </tr>\r\n <tr>\r\n " +
" <td>Surname:</td>\r\n <td><span");
WriteLiteral(" id=\"User_Show_Details_Identity_Surname\"");
WriteLiteral(" title=\"Surname\"");
WriteLiteral(">");
#line 25 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.Surname);
#line default
#line hidden
WriteLiteral("</span></td>\r\n </tr>\r\n </table>\r\n " +
" </div>\r\n <div");
WriteLiteral(" id=\"User_Show_Details_Category\"");
WriteLiteral(" class=\"status\"");
WriteLiteral(">\r\n <table");
WriteLiteral(" class=\"none verticalHeadings\"");
WriteLiteral(">\r\n <tr>\r\n <td>Type:\r\n " +
" </td>\r\n <td><span");
WriteLiteral(" id=\"User_Show_Details_Category_Type\"");
WriteLiteral(" title=\"Type\"");
WriteLiteral(">");
#line 34 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.Type);
#line default
#line hidden
WriteLiteral("</span></td>\r\n </tr>\r\n </table>\r\n " +
" </div>\r\n <div");
WriteLiteral(" id=\"User_Show_Details_Attributes\"");
WriteLiteral(" class=\"status\"");
WriteLiteral(">\r\n <table");
WriteLiteral(" class=\"none verticalHeadings\"");
WriteLiteral(">\r\n <tr>\r\n <td>Email:</td>\r\n " +
" <td>\r\n");
#line 43 "..\..\Views\User\UserParts\_Subject.cshtml"
#line default
#line hidden
#line 43 "..\..\Views\User\UserParts\_Subject.cshtml"
if (!string.IsNullOrEmpty(Model.User.EmailAddress))
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" id=\"User_Show_Details_Attributes_Email\"");
WriteLiteral(" title=\"Email Address [Update in Active Directory]\"");
WriteLiteral(">");
#line 45 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.EmailAddress);
#line default
#line hidden
WriteLiteral("</span>\r\n");
#line 46 "..\..\Views\User\UserParts\_Subject.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">Unknown</span>\r\n");
#line 50 "..\..\Views\User\UserParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n </tr>\r\n " +
" <tr>\r\n <td>Phone:</td>\r\n " +
" <td>\r\n");
#line 56 "..\..\Views\User\UserParts\_Subject.cshtml"
#line default
#line hidden
#line 56 "..\..\Views\User\UserParts\_Subject.cshtml"
if (!string.IsNullOrEmpty(Model.User.PhoneNumber))
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" id=\"User_Show_Details_Attributes_Phone\"");
WriteLiteral(" title=\"Phone Number [Update in Active Directory]\"");
WriteLiteral(">");
#line 58 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Model.User.PhoneNumber);
#line default
#line hidden
WriteLiteral("</span>\r\n");
#line 59 "..\..\Views\User\UserParts\_Subject.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">Unknown</span>\r\n");
#line 63 "..\..\Views\User\UserParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n </tr>\r\n " +
" </table>\r\n </div>\r\n <div");
WriteLiteral(" id=\"User_Show_GenerateDocument_Container\"");
WriteLiteral(" class=\"status\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 69 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Html.DropDownList("User_Show_GenerateDocument", Model.DocumentTemplatesSelectListItems));
#line default
#line hidden
WriteLiteral("\r\n <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(">\r\n $(function () {\r\n var gener" +
"atePdfUrl = \'");
#line 72 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Url.Action(MVC.API.User.GeneratePdf(Model.User.Id, null)));
#line default
#line hidden
WriteLiteral(@"?DocumentTemplateId=';
var $documentTemplates = $('#User_Show_GenerateDocument');
$documentTemplates.change(function () {
var v = $documentTemplates.val();
if (v) {
window.location.href = generatePdfUrl + v;
$documentTemplates.val('').blur();
}
});
});
</script>
</div>
<div");
WriteLiteral(" id=\"User_Show_Details_Actions\"");
WriteLiteral(">\r\n");
#line 85 "..\..\Views\User\UserParts\_Subject.cshtml"
#line default
#line hidden
#line 85 "..\..\Views\User\UserParts\_Subject.cshtml"
Html.BundleDeferred("~/ClientScripts/Modules/Disco-CreateJob");
#line default
#line hidden
WriteLiteral("\r\n");
WriteLiteral(" ");
#line 88 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Create Job", MVC.Job.Create(Model.PrimaryDeviceSerialNumber, Model.User.Id), "buttonCreateJob"));
#line default
#line hidden
WriteLiteral("\r\n </div>\r\n </div>\r\n </td>\r\n <td");
WriteLiteral(" id=\"User_Show_AssignedDevices\"");
WriteLiteral(">\r\n <div>\r\n <div");
WriteLiteral(" id=\"User_Show_AssignedDevices_Active\"");
WriteLiteral(">\r\n <h3>Current Device Assignments</h3>\r\n");
#line 96 "..\..\Views\User\UserParts\_Subject.cshtml"
#line default
#line hidden
#line 96 "..\..\Views\User\UserParts\_Subject.cshtml"
var currentAssignments = Model.User.DeviceUserAssignments.Where(dua => !dua.UnassignedDate.HasValue).ToList();
#line default
#line hidden
WriteLiteral("\r\n");
#line 99 "..\..\Views\User\UserParts\_Subject.cshtml"
#line default
#line hidden
#line 99 "..\..\Views\User\UserParts\_Subject.cshtml"
if (currentAssignments.Count > 0)
{
foreach (var assignment in currentAssignments)
{
#line default
#line hidden
WriteLiteral(" <div");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment clearfix\"");
WriteLiteral(" data-deviceserialnumber=\"");
#line 103 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(assignment.DeviceSerialNumber);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(">\r\n <a");
WriteAttribute("href", Tuple.Create(" href=\"", 5464), Tuple.Create("\"", 5531)
#line 104 "..\..\Views\User\UserParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 5471), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Device.Show(assignment.Device.SerialNumber))
#line default
#line hidden
, 5471), false)
);
WriteLiteral(">\r\n <img");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment_Image\"");
WriteLiteral(" alt=\"Model Image\"");
WriteAttribute("src", Tuple.Create(" src=\"", 5647), Tuple.Create("\"", 5768)
#line 105 "..\..\Views\User\UserParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 5653), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.DeviceModel.Image(assignment.Device.DeviceModel.Id, assignment.Device.DeviceModel.ImageHash()))
#line default
#line hidden
, 5653), false)
);
WriteLiteral(" />\r\n </a>\r\n <div");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment_Details\"");
WriteLiteral(">\r\n <table");
WriteLiteral(" class=\"none\"");
WriteLiteral(@">
<tbody>
<tr>
<td>Serial Number:
</td>
<td>
<span");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment_SerialNumber\"");
WriteLiteral(">");
#line 114 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(Html.ActionLink(assignment.Device.SerialNumber, MVC.Device.Show(assignment.Device.SerialNumber)));
#line default
#line hidden
WriteLiteral("</span> (<span>");
#line 114 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(assignment.Device.ComputerName);
#line default
#line hidden
WriteLiteral(@"</span>)
</td>
</tr>
<tr>
<td>Model:
</td>
<td>
<span");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment_Model\"");
WriteLiteral(">");
#line 121 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(assignment.Device.DeviceModel.ToString());
#line default
#line hidden
WriteLiteral(@"</span>
</td>
</tr>
<tr>
<td>Asset:</td>
<td>
");
#line 127 "..\..\Views\User\UserParts\_Subject.cshtml"
#line default
#line hidden
#line 127 "..\..\Views\User\UserParts\_Subject.cshtml"
if (!string.IsNullOrEmpty(assignment.Device.AssetNumber))
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment_Asset\"");
WriteLiteral(">");
#line 129 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(assignment.Device.AssetNumber);
#line default
#line hidden
WriteLiteral("</span>\r\n");
#line 130 "..\..\Views\User\UserParts\_Subject.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">Unknown</span>\r\n");
#line 134 "..\..\Views\User\UserParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(@" </td>
</tr>
<tr>
<td>Assigned:</td>
<td>
<span");
WriteLiteral(" class=\"User_Show_AssignedDevices_CurrentAssignment_Assigned\"");
WriteLiteral(">");
#line 140 "..\..\Views\User\UserParts\_Subject.cshtml"
Write(CommonHelpers.FriendlyDate(assignment.AssignedDate));
#line default
#line hidden
WriteLiteral(@"</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
");
#line 147 "..\..\Views\User\UserParts\_Subject.cshtml"
}
}
else
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">No Current Device Assignments</span>\r\n");
#line 152 "..\..\Views\User\UserParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(" </div>\r\n </div>\r\n </td>\r\n </tr>\r\n</table>\r\n");
}
}
}
#pragma warning restore 1591