Hide Document Templates & UI Tweaks

Flag Document Templates as hidden. UI changes aim to improve visibility
of used features in lists.
This commit is contained in:
Gary Sharp
2016-11-10 17:42:10 +11:00
parent b52cbcb94a
commit 4c91d03385
55 changed files with 1485 additions and 613 deletions
+7
View File
@@ -158,6 +158,10 @@
<Compile Include="Migrations\201611090729100_DBv18.Designer.cs"> <Compile Include="Migrations\201611090729100_DBv18.Designer.cs">
<DependentUpon>201611090729100_DBv18.cs</DependentUpon> <DependentUpon>201611090729100_DBv18.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Migrations\201611100557315_DBv19.cs" />
<Compile Include="Migrations\201611100557315_DBv19.Designer.cs">
<DependentUpon>201611100557315_DBv19.cs</DependentUpon>
</Compile>
<Compile Include="Migrations\Configuration.cs" /> <Compile Include="Migrations\Configuration.cs" />
<Compile Include="Migrations\DiscoDataMigrator.cs" /> <Compile Include="Migrations\DiscoDataMigrator.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
@@ -227,6 +231,9 @@
<EmbeddedResource Include="Migrations\201611090729100_DBv18.resx"> <EmbeddedResource Include="Migrations\201611090729100_DBv18.resx">
<DependentUpon>201611090729100_DBv18.cs</DependentUpon> <DependentUpon>201611090729100_DBv18.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="Migrations\201611100557315_DBv19.resx">
<DependentUpon>201611100557315_DBv19.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx"> <EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator> <Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput> <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+27
View File
@@ -0,0 +1,27 @@
// <auto-generated />
namespace Disco.Data.Migrations
{
using System.Data.Entity.Migrations;
using System.Data.Entity.Migrations.Infrastructure;
using System.Resources;
public sealed partial class DBv19 : IMigrationMetadata
{
private readonly ResourceManager Resources = new ResourceManager(typeof(DBv19));
string IMigrationMetadata.Id
{
get { return "201611100557315_DBv19"; }
}
string IMigrationMetadata.Source
{
get { return null; }
}
string IMigrationMetadata.Target
{
get { return Resources.GetString("Target"); }
}
}
}
@@ -0,0 +1,18 @@
namespace Disco.Data.Migrations
{
using System;
using System.Data.Entity.Migrations;
public partial class DBv19 : DbMigration
{
public override void Up()
{
AddColumn("dbo.DocumentTemplates", "IsHidden", c => c.Boolean(nullable: false));
}
public override void Down()
{
DropColumn("dbo.DocumentTemplates", "IsHidden");
}
}
}
File diff suppressed because one or more lines are too long
@@ -1,7 +1,4 @@
using System; using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
@@ -32,6 +32,8 @@ namespace Disco.Models.Repository
public string DevicesLinkedGroup { get; set; } public string DevicesLinkedGroup { get; set; }
public string UsersLinkedGroup { get; set; } public string UsersLinkedGroup { get; set; }
public bool IsHidden { get; set; }
[InverseProperty("DocumentTemplates")] [InverseProperty("DocumentTemplates")]
public virtual IList<JobSubType> JobSubTypes { get; set; } public virtual IList<JobSubType> JobSubTypes { get; set; }
@@ -20,5 +20,6 @@ namespace Disco.Models.UI.Config.DeviceBatch
DateTime? WarrantyExpires { get; set; } DateTime? WarrantyExpires { get; set; }
DateTime? InsuredUntil { get; set; } DateTime? InsuredUntil { get; set; }
string InsuranceSupplier { get; set; } string InsuranceSupplier { get; set; }
bool IsLinked { get; set; }
} }
} }
@@ -1,10 +1,4 @@
using System; namespace Disco.Models.UI.Config.DeviceProfile
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Disco.Models.UI.Config.DeviceProfile
{ {
public interface ConfigDeviceProfileIndexModelItem public interface ConfigDeviceProfileIndexModelItem
{ {
@@ -18,5 +12,6 @@ namespace Disco.Models.UI.Config.DeviceProfile
int DeviceCount { get; set; } int DeviceCount { get; set; }
int DeviceDecommissionedCount { get; set; } int DeviceDecommissionedCount { get; set; }
bool IsLinked { get; set; }
} }
} }
@@ -1,13 +1,9 @@
using System; using System.Collections.Generic;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Disco.Models.UI.Config.DocumentTemplate namespace Disco.Models.UI.Config.DocumentTemplate
{ {
public interface ConfigDocumentTemplateIndexModel : BaseUIModel public interface ConfigDocumentTemplateIndexModel : BaseUIModel
{ {
List<Disco.Models.Repository.DocumentTemplate> DocumentTemplates { get; set; } Dictionary<Repository.DocumentTemplate, int> DocumentTemplates { get; set; }
} }
} }
@@ -4,6 +4,6 @@ namespace Disco.Models.UI.Config.UserFlag
{ {
public interface ConfigUserFlagIndexModel : BaseUIModel public interface ConfigUserFlagIndexModel : BaseUIModel
{ {
List<Repository.UserFlag> UserFlags { get; set; } Dictionary<Repository.UserFlag, int> UserFlags { get; set; }
} }
} }
+1 -1
View File
@@ -50,7 +50,7 @@ namespace Disco.Services
public static List<DocumentTemplate> AvailableDocumentTemplates(this Device d, DiscoDataContext Database, User User, DateTime TimeStamp) public static List<DocumentTemplate> AvailableDocumentTemplates(this Device d, DiscoDataContext Database, User User, DateTime TimeStamp)
{ {
List<DocumentTemplate> ats = Database.DocumentTemplates List<DocumentTemplate> ats = Database.DocumentTemplates
.Where(at => at.Scope == DocumentTemplate.DocumentTemplateScopes.Device).ToList(); .Where(at => !at.IsHidden && at.Scope == DocumentTemplate.DocumentTemplateScopes.Device).ToList();
return ats.Where(at => at.FilterExpressionMatches(d, Database, User, TimeStamp, DocumentState.DefaultState())).ToList(); return ats.Where(at => at.FilterExpressionMatches(d, Database, User, TimeStamp, DocumentState.DefaultState())).ToList();
} }
+1 -1
View File
@@ -204,7 +204,7 @@ namespace Disco.Services
public static List<DocumentTemplate> AvailableDocumentTemplates(this Job j, DiscoDataContext Database, User User, DateTime TimeStamp) public static List<DocumentTemplate> AvailableDocumentTemplates(this Job j, DiscoDataContext Database, User User, DateTime TimeStamp)
{ {
var dts = Database.DocumentTemplates.Include("JobSubTypes") var dts = Database.DocumentTemplates.Include("JobSubTypes")
.Where(dt => dt.Scope == DocumentTemplate.DocumentTemplateScopes.Job) .Where(dt => !dt.IsHidden && dt.Scope == DocumentTemplate.DocumentTemplateScopes.Job)
.ToList(); .ToList();
foreach (var dt in dts.ToArray()) foreach (var dt in dts.ToArray())
+1 -1
View File
@@ -28,7 +28,7 @@ namespace Disco.Services
public static List<DocumentTemplate> AvailableDocumentTemplates(this User u, DiscoDataContext Database, User User, DateTime TimeStamp) public static List<DocumentTemplate> AvailableDocumentTemplates(this User u, DiscoDataContext Database, User User, DateTime TimeStamp)
{ {
var dts = Database.DocumentTemplates.Include("JobSubTypes") var dts = Database.DocumentTemplates.Include("JobSubTypes")
.Where(dt => dt.Scope == DocumentTemplate.DocumentTemplateScopes.User) .Where(dt => !dt.IsHidden && dt.Scope == DocumentTemplate.DocumentTemplateScopes.User)
.ToArray() .ToArray()
.Where(dt => dt.FilterExpressionMatches(u, Database, User, TimeStamp, DocumentState.DefaultState())).ToList(); .Where(dt => dt.FilterExpressionMatches(u, Database, User, TimeStamp, DocumentState.DefaultState())).ToList();
@@ -26,6 +26,7 @@ namespace Disco.Web.Areas.API.Controllers
const string pOnGenerateExpression = "ongenerateexpression"; const string pOnGenerateExpression = "ongenerateexpression";
const string pOnImportAttachmentExpression = "onimportattachmentexpression"; const string pOnImportAttachmentExpression = "onimportattachmentexpression";
const string pFlattenForm = "flattenform"; const string pFlattenForm = "flattenform";
const string pIsHidden = "ishidden";
[DiscoAuthorize(Claims.Config.DocumentTemplate.Configure)] [DiscoAuthorize(Claims.Config.DocumentTemplate.Configure)]
public virtual ActionResult Update(string id, string key, string value = null, bool redirect = false) public virtual ActionResult Update(string id, string key, string value = null, bool redirect = false)
@@ -63,6 +64,9 @@ namespace Disco.Web.Areas.API.Controllers
case pFlattenForm: case pFlattenForm:
UpdateFlattenForm(documentTemplate, value); UpdateFlattenForm(documentTemplate, value);
break; break;
case pIsHidden:
UpdateIsHidden(documentTemplate, value);
break;
default: default:
throw new Exception("Invalid Update Key"); throw new Exception("Invalid Update Key");
} }
@@ -190,6 +194,11 @@ namespace Disco.Web.Areas.API.Controllers
return Update(id, pFlattenForm, FlattenForm, redirect); return Update(id, pFlattenForm, FlattenForm, redirect);
} }
[DiscoAuthorize(Claims.Config.DocumentTemplate.Configure)] [DiscoAuthorize(Claims.Config.DocumentTemplate.Configure)]
public virtual ActionResult UpdateIsHidden(string id, string IsHidden = null, bool redirect = false)
{
return Update(id, pIsHidden, IsHidden, redirect);
}
[DiscoAuthorize(Claims.Config.DocumentTemplate.Configure)]
public virtual ActionResult UpdateScope(string id, string Scope = null, bool redirect = false) public virtual ActionResult UpdateScope(string id, string Scope = null, bool redirect = false)
{ {
return Update(id, pScope, Scope, redirect); return Update(id, pScope, Scope, redirect);
@@ -393,6 +402,23 @@ namespace Disco.Web.Areas.API.Controllers
Database.SaveChanges(); Database.SaveChanges();
} }
private void UpdateIsHidden(DocumentTemplate documentTemplate, string IsHidden)
{
if (string.IsNullOrWhiteSpace(IsHidden))
{
documentTemplate.IsHidden = false;
}
else
{
bool value = default(bool);
if (bool.TryParse(IsHidden, out value))
documentTemplate.IsHidden = value;
else
throw new Exception("Invalid Boolean Format");
}
Database.SaveChanges();
}
private void UpdateJobSubTypes(DocumentTemplate documentTemplate, List<string> JobSubTypes) private void UpdateJobSubTypes(DocumentTemplate documentTemplate, List<string> JobSubTypes)
{ {
Database.Configuration.LazyLoadingEnabled = true; Database.Configuration.LazyLoadingEnabled = true;
@@ -20,7 +20,18 @@ namespace Disco.Web.Areas.Config.Controllers
{ {
if (string.IsNullOrEmpty(id)) if (string.IsNullOrEmpty(id))
{ {
var m = new Models.DocumentTemplate.IndexModel() { DocumentTemplates = Database.DocumentTemplates.ToList() }; var m = new Models.DocumentTemplate.IndexModel() {
DocumentTemplates = Database.DocumentTemplates
.Select(dt => new
{
documentTemplate = dt,
storedInstances =
Database.DeviceAttachments.Count(a => a.DocumentTemplateId == dt.Id) +
Database.JobAttachments.Count(a => a.DocumentTemplateId == dt.Id) +
Database.UserAttachments.Count(a => a.DocumentTemplateId == dt.Id)
})
.ToDictionary(i => i.documentTemplate, i => i.storedInstances)
};
// UI Extensions // UI Extensions
UIExtensions.ExecuteExtensions<ConfigDocumentTemplateIndexModel>(this.ControllerContext, m); UIExtensions.ExecuteExtensions<ConfigDocumentTemplateIndexModel>(this.ControllerContext, m);
@@ -53,7 +53,15 @@ namespace Disco.Web.Areas.Config.Controllers
// List Index // List Index
var m = new Models.UserFlag.IndexModel() var m = new Models.UserFlag.IndexModel()
{ {
UserFlags = Database.UserFlags.OrderBy(f => f.Name).ToList() UserFlags = Database.UserFlags
.Select(uf => new
{
userFlag = uf,
assignmentCount = uf.UserFlagAssignments.Count(fa => !fa.RemovedDate.HasValue)
})
.ToDictionary(
pair => pair.userFlag,
pair => pair.assignmentCount)
}; };
// UI Extensions // UI Extensions
@@ -25,7 +25,8 @@ namespace Disco.Web.Areas.Config.Models.DeviceBatch
DefaultDeviceModel = db.DefaultDeviceModel.Description, DefaultDeviceModel = db.DefaultDeviceModel.Description,
WarrantyExpires = db.WarrantyValidUntil, WarrantyExpires = db.WarrantyValidUntil,
InsuranceSupplier = db.InsuranceSupplier, InsuranceSupplier = db.InsuranceSupplier,
InsuredUntil = db.InsuredUntil InsuredUntil = db.InsuredUntil,
IsLinked = db.AssignedUsersLinkedGroup != null || db.DevicesLinkedGroup != null
}).ToArray().Cast<ConfigDeviceBatchIndexModelItem>().ToList(); }).ToArray().Cast<ConfigDeviceBatchIndexModelItem>().ToList();
foreach (var item in m.DeviceBatches.Where(db => db.DefaultDeviceModel == null)) foreach (var item in m.DeviceBatches.Where(db => db.DefaultDeviceModel == null))
@@ -20,5 +20,6 @@ namespace Disco.Web.Areas.Config.Models.DeviceBatch
public DateTime? WarrantyExpires { get; set; } public DateTime? WarrantyExpires { get; set; }
public DateTime? InsuredUntil { get; set; } public DateTime? InsuredUntil { get; set; }
public string InsuranceSupplier { get; set; } public string InsuranceSupplier { get; set; }
public bool IsLinked { get; set; }
} }
} }
@@ -21,7 +21,8 @@ namespace Disco.Web.Areas.Config.Models.DeviceProfile
Description = dp.Description, Description = dp.Description,
DistributionType = dp.DistributionType.Value, DistributionType = dp.DistributionType.Value,
DeviceCount = dp.Devices.Count, DeviceCount = dp.Devices.Count,
DeviceDecommissionedCount = dp.Devices.Count(d => d.DecommissionedDate.HasValue) DeviceDecommissionedCount = dp.Devices.Count(d => d.DecommissionedDate.HasValue),
IsLinked = dp.AssignedUsersLinkedGroup != null || dp.DevicesLinkedGroup != null
}).ToArray().Cast<ConfigDeviceProfileIndexModelItem>().ToList(); }).ToArray().Cast<ConfigDeviceProfileIndexModelItem>().ToList();
if (DiscoApplication.MultiSiteMode) if (DiscoApplication.MultiSiteMode)
@@ -1,10 +1,4 @@
using System; using Disco.Models.UI.Config.DeviceProfile;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using Disco.Web.Extensions;
using Disco.Models.UI.Config.DeviceProfile;
namespace Disco.Web.Areas.Config.Models.DeviceProfile namespace Disco.Web.Areas.Config.Models.DeviceProfile
{ {
@@ -20,5 +14,6 @@ namespace Disco.Web.Areas.Config.Models.DeviceProfile
public int DeviceCount { get; set; } public int DeviceCount { get; set; }
public int DeviceDecommissionedCount { get; set; } public int DeviceDecommissionedCount { get; set; }
public bool IsLinked { get; set; }
} }
} }
@@ -1,13 +1,10 @@
using Disco.Models.UI.Config.DocumentTemplate; using Disco.Models.UI.Config.DocumentTemplate;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Disco.Web.Areas.Config.Models.DocumentTemplate namespace Disco.Web.Areas.Config.Models.DocumentTemplate
{ {
public class IndexModel : ConfigDocumentTemplateIndexModel public class IndexModel : ConfigDocumentTemplateIndexModel
{ {
public List<Disco.Models.Repository.DocumentTemplate> DocumentTemplates { get; set; } public Dictionary<Disco.Models.Repository.DocumentTemplate, int> DocumentTemplates { get; set; }
} }
} }
@@ -5,6 +5,6 @@ namespace Disco.Web.Areas.Config.Models.UserFlag
{ {
public class IndexModel : ConfigUserFlagIndexModel public class IndexModel : ConfigUserFlagIndexModel
{ {
public List<Disco.Models.Repository.UserFlag> UserFlags { get; set; } public Dictionary<Disco.Models.Repository.UserFlag, int> UserFlags { get; set; }
} }
} }
@@ -2,17 +2,19 @@
@{ @{
Authorization.Require(Claims.Config.DeviceBatch.Show); Authorization.Require(Claims.Config.DeviceBatch.Show);
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Device Batches"); ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Device Batches");
var hasDecommissionedBatches = Model.DeviceBatches.Any(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount);
var showTags = hasDecommissionedBatches || Model.DeviceBatches.Any(i => i.IsLinked);
} }
<div id="Config_DeviceBatches"> <div id="Config_DeviceBatches">
@if (Model.DeviceBatches.Count == 0) @if (Model.DeviceBatches.Count == 0)
{ {
<div class="form" style="width: 450px; padding: 100px 0;"> <div class="form" style="width: 450px; padding: 100px 0;">
<h2>No device batches are configured</h2> <h2>No device batches are configured</h2>
</div> </div>
} }
else else
{ {
if (Model.DeviceBatches.Any(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount)) if (hasDecommissionedBatches)
{ {
<a id="Config_DeviceBatches_ShowDecommissioned" href="#" class="button small">Show Decommissioned (@(Model.DeviceBatches.Count(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount)))</a> <a id="Config_DeviceBatches_ShowDecommissioned" href="#" class="button small">Show Decommissioned (@(Model.DeviceBatches.Count(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount)))</a>
<script> <script>
@@ -21,7 +23,7 @@
$('#Config_DeviceBatches_ShowDecommissioned').click(function () { $('#Config_DeviceBatches_ShowDecommissioned').click(function () {
$(this).remove(); $(this).remove();
$('#Config_DeviceBatches_List').find('tr.decommissioned').show(); $('#Config_DeviceBatches_List').find('tr.hidden').show();
return false; return false;
}).detach().appendTo('#layout_PageHeading'); }).detach().appendTo('#layout_PageHeading');
}) })
@@ -29,25 +31,23 @@
} }
<table id="Config_DeviceBatches_List" class="tableData"> <table id="Config_DeviceBatches_List" class="tableData">
<tr> <tr>
<th>Name <th>Name</th>
</th> <th>Default Model</th>
<th>Default Model <th>Purchase Date</th>
</th> <th>Warranty Expires</th>
<th>Purchase Date <th>Insurance Expires</th>
</th> <th>Device Count</th>
<th>Warranty Expires @if (showTags)
</th> {
<th>Insurance Expires <th>&nbsp;</th>
</th> }
<th>Device Count
</th>
</tr> </tr>
@foreach (var item in Model.DeviceBatches) @foreach (var item in Model.DeviceBatches)
{ {
var isDecommissioned = item.DeviceCount > 0 && item.DeviceDecommissionedCount >= item.DeviceCount; var isDecommissioned = item.DeviceCount > 0 && item.DeviceDecommissionedCount >= item.DeviceCount;
<tr class="@(isDecommissioned ? "decommissioned" : null)"> <tr class="@(isDecommissioned ? "hidden" : null)">
<td> <td>
@Html.ActionLink(item.Name, MVC.Config.DeviceBatch.Index(item.Id)) @if (isDecommissioned) { <em>Decommissioned</em> } @Html.ActionLink(item.Name, MVC.Config.DeviceBatch.Index(item.Id))
</td> </td>
<td> <td>
@item.DefaultDeviceModel @item.DefaultDeviceModel
@@ -64,18 +64,31 @@
</td> </td>
<td> <td>
@if (item.PurchaseUnitQuantity.HasValue) @if (item.PurchaseUnitQuantity.HasValue)
{ {
<span>@item.DeviceCount.ToString("n0")/@(item.PurchaseUnitQuantity.Value.ToString("n0"))</span> <span>@item.DeviceCount.ToString("n0")/@(item.PurchaseUnitQuantity.Value.ToString("n0"))</span>
} }
else else
{ {
@item.DeviceCount.ToString("n0") @item.DeviceCount.ToString("n0")
} }
@if (item.DeviceDecommissionedCount > 0) @if (item.DeviceDecommissionedCount > 0)
{ {
<span class="smallMessage" title="@(item.DeviceDecommissionedCount.ToString("n0")) Decommissioned">(@(item.DeviceDecommissionedCount.ToString("n0")))</span> <span class="smallMessage" title="@(item.DeviceDecommissionedCount.ToString("n0")) Decommissioned">(@(item.DeviceDecommissionedCount.ToString("n0")))</span>
} }
</td> </td>
@if (showTags)
{
<td>
@if (item.IsLinked)
{
<i class="fa fa-link fa-lg success" title="Is Linked"></i>
}
@if (isDecommissioned)
{
<i class="fa fa-minus-square fa-lg alert" title="Decommissioned"></i>
}
</td>
}
</tr> </tr>
} }
</table> </table>
@@ -85,7 +98,7 @@
{ {
<div class="actionBar"> <div class="actionBar">
@if (Authorization.Has(Claims.Config.DeviceBatch.ShowTimeline) && Model.DeviceBatches.Count > 0) @if (Authorization.Has(Claims.Config.DeviceBatch.ShowTimeline) && Model.DeviceBatches.Count > 0)
{ {
@Html.ActionLinkButton("Timeline", MVC.Config.DeviceBatch.Timeline()) @Html.ActionLinkButton("Timeline", MVC.Config.DeviceBatch.Timeline())
} }
@if (Authorization.HasAll(Claims.Config.DeviceBatch.Create, Claims.Config.DeviceBatch.Configure)) @if (Authorization.HasAll(Claims.Config.DeviceBatch.Create, Claims.Config.DeviceBatch.Configure))
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.34014 // Runtime Version:4.0.30319.42000
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.DeviceBatch
using System.Web.UI; using System.Web.UI;
using System.Web.WebPages; using System.Web.WebPages;
using Disco; using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository; using Disco.Models.Repository;
using Disco.Services; using Disco.Services;
using Disco.Services.Authorization; using Disco.Services.Authorization;
@@ -49,6 +48,8 @@ namespace Disco.Web.Areas.Config.Views.DeviceBatch
Authorization.Require(Claims.Config.DeviceBatch.Show); Authorization.Require(Claims.Config.DeviceBatch.Show);
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Device Batches"); ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Device Batches");
var hasDecommissionedBatches = Model.DeviceBatches.Any(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount);
var showTags = hasDecommissionedBatches || Model.DeviceBatches.Any(i => i.IsLinked);
#line default #line default
@@ -60,13 +61,13 @@ WriteLiteral(" id=\"Config_DeviceBatches\"");
WriteLiteral(">\r\n"); WriteLiteral(">\r\n");
#line 7 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 9 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
#line default #line default
#line hidden #line hidden
#line 7 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 9 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (Model.DeviceBatches.Count == 0) if (Model.DeviceBatches.Count == 0)
{ {
@@ -79,14 +80,14 @@ WriteLiteral(" class=\"form\"");
WriteLiteral(" style=\"width: 450px; padding: 100px 0;\""); WriteLiteral(" style=\"width: 450px; padding: 100px 0;\"");
WriteLiteral(">\r\n <h2>No device batches are configured</h2>\r\n </div> \r\n"); WriteLiteral(">\r\n <h2>No device batches are configured</h2>\r\n </div>\r\n");
#line 12 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 14 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
else else
{ {
if (Model.DeviceBatches.Any(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount)) if (hasDecommissionedBatches)
{ {
@@ -103,7 +104,7 @@ WriteLiteral(" class=\"button small\"");
WriteLiteral(">Show Decommissioned ("); WriteLiteral(">Show Decommissioned (");
#line 17 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 19 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
Write(Model.DeviceBatches.Count(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount)); Write(Model.DeviceBatches.Count(db => db.DeviceCount > 0 && db.DeviceDecommissionedCount >= db.DeviceCount));
@@ -117,7 +118,7 @@ WriteLiteral(@" <script>
$('#Config_DeviceBatches_ShowDecommissioned').click(function () { $('#Config_DeviceBatches_ShowDecommissioned').click(function () {
$(this).remove(); $(this).remove();
$('#Config_DeviceBatches_List').find('tr.decommissioned').show(); $('#Config_DeviceBatches_List').find('tr.hidden').show();
return false; return false;
}).detach().appendTo('#layout_PageHeading'); }).detach().appendTo('#layout_PageHeading');
}) })
@@ -125,7 +126,7 @@ WriteLiteral(@" <script>
"); ");
#line 29 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 31 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
@@ -139,22 +140,40 @@ WriteLiteral(" class=\"tableData\"");
WriteLiteral(@"> WriteLiteral(@">
<tr> <tr>
<th>Name <th>Name</th>
</th> <th>Default Model</th>
<th>Default Model <th>Purchase Date</th>
</th> <th>Warranty Expires</th>
<th>Purchase Date <th>Insurance Expires</th>
</th> <th>Device Count</th>
<th>Warranty Expires
</th>
<th>Insurance Expires
</th>
<th>Device Count
</th>
</tr>
"); ");
#line 40 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
#line default
#line hidden
#line 40 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <th>&nbsp;</th>\r\n");
#line 43 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 45 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 45 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
@@ -171,14 +190,14 @@ WriteLiteral(@">
#line hidden #line hidden
WriteLiteral(" <tr"); WriteLiteral(" <tr");
WriteAttribute("class", Tuple.Create(" class=\"", 2028), Tuple.Create("\"", 2081) WriteAttribute("class", Tuple.Create(" class=\"", 2169), Tuple.Create("\"", 2214)
#line 48 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 48 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
, Tuple.Create(Tuple.Create("", 2036), Tuple.Create<System.Object, System.Int32>(isDecommissioned ? "decommissioned" : null , Tuple.Create(Tuple.Create("", 2177), Tuple.Create<System.Object, System.Int32>(isDecommissioned ? "hidden" : null
#line default #line default
#line hidden #line hidden
, 2036), false) , 2177), false)
); );
WriteLiteral(">\r\n <td>\r\n"); WriteLiteral(">\r\n <td>\r\n");
@@ -192,24 +211,7 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
WriteLiteral(" "); WriteLiteral("\r\n </td>\r\n <td>\r\n");
#line 50 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (isDecommissioned) {
#line default
#line hidden
WriteLiteral(" <em>Decommissioned</em> ");
#line 50 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n <td>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
@@ -275,7 +277,7 @@ WriteLiteral("\r\n </td>\r\n <td>\r\n");
#line 66 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 66 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (item.PurchaseUnitQuantity.HasValue) if (item.PurchaseUnitQuantity.HasValue)
{ {
#line default #line default
@@ -304,7 +306,7 @@ WriteLiteral("</span>\r\n");
#line 69 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 69 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
else else
{ {
#line default #line default
@@ -329,7 +331,7 @@ WriteLiteral(" ");
#line 74 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 74 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (item.DeviceDecommissionedCount > 0) if (item.DeviceDecommissionedCount > 0)
{ {
#line default #line default
@@ -338,15 +340,15 @@ WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\""); WriteLiteral(" class=\"smallMessage\"");
WriteAttribute("title", Tuple.Create(" title=\"", 3515), Tuple.Create("\"", 3586) WriteAttribute("title", Tuple.Create(" title=\"", 3594), Tuple.Create("\"", 3665)
#line 76 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 76 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
, Tuple.Create(Tuple.Create("", 3523), Tuple.Create<System.Object, System.Int32>(item.DeviceDecommissionedCount.ToString("n0") , Tuple.Create(Tuple.Create("", 3602), Tuple.Create<System.Object, System.Int32>(item.DeviceDecommissionedCount.ToString("n0")
#line default #line default
#line hidden #line hidden
, 3523), false) , 3602), false)
, Tuple.Create(Tuple.Create(" ", 3571), Tuple.Create("Decommissioned", 3572), true) , Tuple.Create(Tuple.Create(" ", 3650), Tuple.Create("Decommissioned", 3651), true)
); );
WriteLiteral(">("); WriteLiteral(">(");
@@ -367,10 +369,91 @@ WriteLiteral(")</span>\r\n");
#line default #line default
#line hidden #line hidden
WriteLiteral(" </td>\r\n </tr>\r\n"); WriteLiteral(" </td>\r\n");
#line 80 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 79 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
#line default
#line hidden
#line 79 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <td>\r\n");
#line 82 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
#line default
#line hidden
#line 82 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (item.IsLinked)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-link fa-lg success\"");
WriteLiteral(" title=\"Is Linked\"");
WriteLiteral("></i>\r\n");
#line 85 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" ");
#line 86 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (isDecommissioned)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-minus-square fa-lg alert\"");
WriteLiteral(" title=\"Decommissioned\"");
WriteLiteral("></i>\r\n");
#line 89 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n");
#line 91 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 93 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
@@ -379,7 +462,7 @@ WriteLiteral(" </td>\r\n </tr>\r\n");
WriteLiteral(" </table>\r\n"); WriteLiteral(" </table>\r\n");
#line 82 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 95 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
@@ -388,7 +471,7 @@ WriteLiteral(" </table>\r\n");
WriteLiteral("</div>\r\n"); WriteLiteral("</div>\r\n");
#line 84 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 97 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (Authorization.HasAny(Claims.Config.DeviceBatch.Create, Claims.Config.DeviceBatch.ShowTimeline)) if (Authorization.HasAny(Claims.Config.DeviceBatch.Create, Claims.Config.DeviceBatch.ShowTimeline))
{ {
@@ -402,28 +485,28 @@ WriteLiteral(" class=\"actionBar\"");
WriteLiteral(">\r\n"); WriteLiteral(">\r\n");
#line 87 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 100 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
#line default #line default
#line hidden #line hidden
#line 87 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 100 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (Authorization.Has(Claims.Config.DeviceBatch.ShowTimeline) && Model.DeviceBatches.Count > 0) if (Authorization.Has(Claims.Config.DeviceBatch.ShowTimeline) && Model.DeviceBatches.Count > 0)
{ {
#line default #line default
#line hidden #line hidden
#line 89 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 102 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
Write(Html.ActionLinkButton("Timeline", MVC.Config.DeviceBatch.Timeline())); Write(Html.ActionLinkButton("Timeline", MVC.Config.DeviceBatch.Timeline()));
#line default #line default
#line hidden #line hidden
#line 89 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 102 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
@@ -433,7 +516,7 @@ WriteLiteral(">\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 91 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 104 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
if (Authorization.HasAll(Claims.Config.DeviceBatch.Create, Claims.Config.DeviceBatch.Configure)) if (Authorization.HasAll(Claims.Config.DeviceBatch.Create, Claims.Config.DeviceBatch.Configure))
{ {
@@ -441,14 +524,14 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
#line 93 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 106 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
Write(Html.ActionLinkButton("Create Device Batch", MVC.Config.DeviceBatch.Create())); Write(Html.ActionLinkButton("Create Device Batch", MVC.Config.DeviceBatch.Create()));
#line default #line default
#line hidden #line hidden
#line 93 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 106 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
@@ -458,7 +541,7 @@ WriteLiteral(" ");
WriteLiteral(" </div>\r\n"); WriteLiteral(" </div>\r\n");
#line 96 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml" #line 109 "..\..\Areas\Config\Views\DeviceBatch\Index.cshtml"
} }
#line default #line default
@@ -1,6 +1,7 @@
@model IEnumerable<Disco.Web.Areas.Config.Models.DeviceProfile._IndexModelItem> @model IEnumerable<Disco.Web.Areas.Config.Models.DeviceProfile._IndexModelItem>
@{ @{
Authorization.Require(Claims.Config.DeviceProfile.Show); Authorization.Require(Claims.Config.DeviceProfile.Show);
var showTags = Model.Any(i => i.IsLinked);
} }
<table class="tableData deviceProfileTable"> <table class="tableData deviceProfileTable">
<tr> <tr>
@@ -16,6 +17,10 @@
<th class="deviceCount"> <th class="deviceCount">
Device Count Device Count
</th> </th>
@if (showTags)
{
<th>&nbsp;</th>
}
</tr> </tr>
@foreach (var item in Model) @foreach (var item in Model)
{ {
@@ -32,11 +37,25 @@
<td> <td>
@item.DeviceCount.ToString("n0") @item.DeviceCount.ToString("n0")
@if (item.DeviceDecommissionedCount > 0) @if (item.DeviceDecommissionedCount > 0)
{ {
<span class="smallMessage" title="@(item.DeviceDecommissionedCount.ToString("n0")) Decommissioned"> <span class="smallMessage" title="@(item.DeviceDecommissionedCount.ToString("n0")) Decommissioned">
(@(item.DeviceDecommissionedCount.ToString("n0")))</span> (@(item.DeviceDecommissionedCount.ToString("n0")))
</span>
} }
</td> </td>
@if (showTags)
{
<td>
@if (item.IsLinked)
{
<i class="fa fa-link fa-lg success" title="Is Linked"></i>
}
else
{
<text>&nbsp;</text>
}
</td>
}
</tr> </tr>
} }
</table> </table>
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.34014 // Runtime Version:4.0.30319.42000
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.DeviceProfile
using System.Web.UI; using System.Web.UI;
using System.Web.WebPages; using System.Web.WebPages;
using Disco; using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository; using Disco.Models.Repository;
using Disco.Services; using Disco.Services;
using Disco.Services.Authorization; using Disco.Services.Authorization;
@@ -37,9 +36,9 @@ namespace Disco.Web.Areas.Config.Views.DeviceProfile
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "2.0.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "2.0.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Config/Views/DeviceProfile/_TableRender.cshtml")] [System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Config/Views/DeviceProfile/_TableRender.cshtml")]
public partial class TableRender : Disco.Services.Web.WebViewPage<IEnumerable<Disco.Web.Areas.Config.Models.DeviceProfile._IndexModelItem>> public partial class _TableRender : Disco.Services.Web.WebViewPage<IEnumerable<Disco.Web.Areas.Config.Models.DeviceProfile._IndexModelItem>>
{ {
public TableRender() public _TableRender()
{ {
} }
public override void Execute() public override void Execute()
@@ -48,6 +47,7 @@ namespace Disco.Web.Areas.Config.Views.DeviceProfile
#line 2 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 2 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
Authorization.Require(Claims.Config.DeviceProfile.Show); Authorization.Require(Claims.Config.DeviceProfile.Show);
var showTags = Model.Any(i => i.IsLinked);
#line default #line default
@@ -72,16 +72,41 @@ WriteLiteral(">\r\n Type\r\n </th>\r\n <th");
WriteLiteral(" class=\"deviceCount\""); WriteLiteral(" class=\"deviceCount\"");
WriteLiteral(">\r\n Device Count\r\n </th>\r\n </tr>\r\n"); WriteLiteral(">\r\n Device Count\r\n </th>\r\n");
#line 20 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 20 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
#line default #line default
#line hidden #line hidden
#line 20 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 20 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <th>&nbsp;</th>\r\n");
#line 23 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 25 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
#line default
#line hidden
#line 25 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
foreach (var item in Model) foreach (var item in Model)
{ {
@@ -93,7 +118,7 @@ WriteLiteral(" <tr>\r\n <td>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 24 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 29 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
Write(Html.ActionLink(item.Name, MVC.Config.DeviceProfile.Index(item.Id))); Write(Html.ActionLink(item.Name, MVC.Config.DeviceProfile.Index(item.Id)));
@@ -104,7 +129,7 @@ WriteLiteral("\r\n </td>\r\n <td>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 27 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 32 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
Write(Html.DisplayFor(modelItem => item.Description)); Write(Html.DisplayFor(modelItem => item.Description));
@@ -115,7 +140,7 @@ WriteLiteral("\r\n </td>\r\n <td>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 30 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 35 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
Write(Html.DisplayFor(modelItem => item.DistributionType)); Write(Html.DisplayFor(modelItem => item.DistributionType));
@@ -126,7 +151,7 @@ WriteLiteral("\r\n </td>\r\n <td>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 33 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 38 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
Write(item.DeviceCount.ToString("n0")); Write(item.DeviceCount.ToString("n0"));
@@ -135,15 +160,15 @@ WriteLiteral(" ");
WriteLiteral("\r\n"); WriteLiteral("\r\n");
#line 34 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 39 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
#line default #line default
#line hidden #line hidden
#line 34 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 39 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
if (item.DeviceDecommissionedCount > 0) if (item.DeviceDecommissionedCount > 0)
{ {
#line default #line default
@@ -152,39 +177,110 @@ WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\""); WriteLiteral(" class=\"smallMessage\"");
WriteAttribute("title", Tuple.Create(" title=\"", 1065), Tuple.Create("\"", 1136) WriteAttribute("title", Tuple.Create(" title=\"", 1187), Tuple.Create("\"", 1258)
#line 36 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 41 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
, Tuple.Create(Tuple.Create("", 1073), Tuple.Create<System.Object, System.Int32>(item.DeviceDecommissionedCount.ToString("n0") , Tuple.Create(Tuple.Create("", 1195), Tuple.Create<System.Object, System.Int32>(item.DeviceDecommissionedCount.ToString("n0")
#line default #line default
#line hidden #line hidden
, 1073), false) , 1195), false)
, Tuple.Create(Tuple.Create(" ", 1121), Tuple.Create("Decommissioned", 1122), true) , Tuple.Create(Tuple.Create(" ", 1243), Tuple.Create("Decommissioned", 1244), true)
); );
WriteLiteral(">\r\n ("); WriteLiteral(">\r\n (");
#line 37 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 42 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
Write(item.DeviceDecommissionedCount.ToString("n0")); Write(item.DeviceDecommissionedCount.ToString("n0"));
#line default #line default
#line hidden #line hidden
WriteLiteral(")</span>\r\n"); WriteLiteral(")\r\n </span>\r\n");
#line 38 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 44 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
} }
#line default #line default
#line hidden #line hidden
WriteLiteral(" </td>\r\n </tr>\r\n"); WriteLiteral(" </td>\r\n");
#line 41 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml" #line 46 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
#line default
#line hidden
#line 46 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <td>\r\n");
#line 49 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
#line default
#line hidden
#line 49 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
if (item.IsLinked)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-link fa-lg success\"");
WriteLiteral(" title=\"Is Linked\"");
WriteLiteral("></i>\r\n");
#line 52 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" ");
WriteLiteral("&nbsp;");
WriteLiteral("\r\n");
#line 56 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n");
#line 58 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 60 "..\..\Areas\Config\Views\DeviceProfile\_TableRender.cshtml"
} }
@@ -3,36 +3,67 @@
Authorization.Require(Claims.Config.DocumentTemplate.Show); Authorization.Require(Claims.Config.DocumentTemplate.Show);
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Document Templates"); ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Document Templates");
var showTags = Model.DocumentTemplates.Keys.Any(i => i.DevicesLinkedGroup != null || i.UsersLinkedGroup != null ||
i.FilterExpression != null || i.OnGenerateExpression != null || i.OnImportAttachmentExpression != null);
} }
@if (Model.DocumentTemplates.Count == 0) @if (Model.DocumentTemplates.Count == 0)
{ {
<div class="form" style="width: 450px; padding: 100px 0;"> <div class="form" style="width: 450px; padding: 100px 0;">
<h2>No document templates are configured</h2> <h2>No document templates are configured</h2>
</div> </div>
} }
else else
{ {
<table class="tableData"> if (Model.DocumentTemplates.Keys.Any(dt => dt.IsHidden))
{
<a id="Config_DocumentTemplates_ShowHidden" href="#" class="button small">Show Hidden (@(Model.DocumentTemplates.Keys.Count(dt => dt.IsHidden)))</a>
<script>
$(function () {
$('#Config_DocumentTemplates_ShowHidden').click(function () {
$(this).remove();
$('#Config_DocumentTemplates_List').find('tr.hidden').show();
return false;
}).detach().appendTo('#layout_PageHeading');
})
</script>
}
<table id="Config_DocumentTemplates_List" class="tableData">
<tr> <tr>
<th>Id <th>Id</th>
</th> <th>Description</th>
<th>Description <th>Scope</th>
</th> <th>Stored&nbsp;Instances</th>
<th>Scope @if (showTags)
</th> {
<th>&nbsp;</th>
}
</tr> </tr>
@foreach (var item in Model.DocumentTemplates) @foreach (var pair in Model.DocumentTemplates)
{ {
<tr> var item = pair.Key;
<td> var storedCount = pair.Value;
@Html.ActionLink(item.Id.ToString(), MVC.Config.DocumentTemplate.Index(item.Id)) <tr class="@(item.IsHidden ? "hidden" : null)">
</td> <td>@Html.ActionLink(item.Id.ToString(), MVC.Config.DocumentTemplate.Index(item.Id))</td>
<td> <td>@Html.DisplayFor(modelItem => item.Description)</td>
@Html.DisplayFor(modelItem => item.Description) <td>@Html.DisplayFor(modelItem => item.Scope)</td>
</td> <td>@storedCount.ToString("N0")</td>
<td> @if (showTags)
@Html.DisplayFor(modelItem => item.Scope) {
</td> <td>
@if (item.DevicesLinkedGroup != null || item.UsersLinkedGroup != null)
{
<i class="fa fa-link fa-lg success" title="Is Linked"></i>
}
@if (item.FilterExpression != null || item.OnGenerateExpression != null || item.OnImportAttachmentExpression != null)
{
<i class="fa fa-bolt fa-lg alert" title="Has Expressions"></i>
}
@if (item.IsHidden)
{
<i class="fa fa-minus-square fa-lg error" title="Is Hidden"></i>
}
</td>
}
</tr> </tr>
} }
</table> </table>
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.34014 // Runtime Version:4.0.30319.42000
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.DocumentTemplate
using System.Web.UI; using System.Web.UI;
using System.Web.WebPages; using System.Web.WebPages;
using Disco; using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository; using Disco.Models.Repository;
using Disco.Services; using Disco.Services;
using Disco.Services.Authorization; using Disco.Services.Authorization;
@@ -50,6 +49,8 @@ namespace Disco.Web.Areas.Config.Views.DocumentTemplate
Authorization.Require(Claims.Config.DocumentTemplate.Show); Authorization.Require(Claims.Config.DocumentTemplate.Show);
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Document Templates"); ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "Document Templates");
var showTags = Model.DocumentTemplates.Keys.Any(i => i.DevicesLinkedGroup != null || i.UsersLinkedGroup != null ||
i.FilterExpression != null || i.OnGenerateExpression != null || i.OnImportAttachmentExpression != null);
#line default #line default
@@ -57,7 +58,7 @@ namespace Disco.Web.Areas.Config.Views.DocumentTemplate
WriteLiteral("\r\n"); WriteLiteral("\r\n");
#line 7 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 9 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (Model.DocumentTemplates.Count == 0) if (Model.DocumentTemplates.Count == 0)
{ {
@@ -70,76 +71,264 @@ WriteLiteral(" class=\"form\"");
WriteLiteral(" style=\"width: 450px; padding: 100px 0;\""); WriteLiteral(" style=\"width: 450px; padding: 100px 0;\"");
WriteLiteral(">\r\n <h2>No document templates are configured</h2>\r\n </div> \r\n"); WriteLiteral(">\r\n <h2>No document templates are configured</h2>\r\n </div>\r\n");
#line 12 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 14 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
else else
{ {
if (Model.DocumentTemplates.Keys.Any(dt => dt.IsHidden))
{
#line default
#line hidden
WriteLiteral(" <a");
WriteLiteral(" id=\"Config_DocumentTemplates_ShowHidden\"");
WriteLiteral(" href=\"#\"");
WriteLiteral(" class=\"button small\"");
WriteLiteral(">Show Hidden (");
#line 19 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Model.DocumentTemplates.Keys.Count(dt => dt.IsHidden));
#line default
#line hidden
WriteLiteral(")</a>\r\n");
WriteLiteral(@" <script>
$(function () {
$('#Config_DocumentTemplates_ShowHidden').click(function () {
$(this).remove();
$('#Config_DocumentTemplates_List').find('tr.hidden').show();
return false;
}).detach().appendTo('#layout_PageHeading');
})
</script>
");
#line 29 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
}
#line default #line default
#line hidden #line hidden
WriteLiteral(" <table"); WriteLiteral(" <table");
WriteLiteral(" id=\"Config_DocumentTemplates_List\"");
WriteLiteral(" class=\"tableData\""); WriteLiteral(" class=\"tableData\"");
WriteLiteral(">\r\n <tr>\r\n <th>Id\r\n </th>\r\n <th>Descripti" + WriteLiteral(">\r\n <tr>\r\n <th>Id</th>\r\n <th>Description</th>\r\n " +
"on\r\n </th>\r\n <th>Scope\r\n </th>\r\n </tr>\r\n" + " <th>Scope</th>\r\n <th>Stored&nbsp;Instances</th>\r\n");
"");
#line 24 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 36 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
#line default
#line hidden
#line 36 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <th>&nbsp;</th>\r\n");
#line 39 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 41 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
#line default #line default
#line hidden #line hidden
#line 24 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 41 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
foreach (var item in Model.DocumentTemplates) foreach (var pair in Model.DocumentTemplates)
{ {
var item = pair.Key;
var storedCount = pair.Value;
#line default #line default
#line hidden #line hidden
WriteLiteral(" <tr>\r\n <td>\r\n"); WriteLiteral(" <tr");
WriteLiteral(" "); WriteAttribute("class", Tuple.Create(" class=\"", 1798), Tuple.Create("\"", 1840)
#line 45 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
, Tuple.Create(Tuple.Create("", 1806), Tuple.Create<System.Object, System.Int32>(item.IsHidden ? "hidden" : null
#line default
#line hidden
, 1806), false)
);
WriteLiteral(">\r\n <td>");
#line 28 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 46 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.ActionLink(item.Id.ToString(), MVC.Config.DocumentTemplate.Index(item.Id))); Write(Html.ActionLink(item.Id.ToString(), MVC.Config.DocumentTemplate.Index(item.Id)));
#line default #line default
#line hidden #line hidden
WriteLiteral("\r\n </td>\r\n <td>\r\n"); WriteLiteral("</td>\r\n <td>");
WriteLiteral(" ");
#line 31 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 47 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.DisplayFor(modelItem => item.Description)); Write(Html.DisplayFor(modelItem => item.Description));
#line default #line default
#line hidden #line hidden
WriteLiteral("\r\n </td>\r\n <td>\r\n"); WriteLiteral("</td>\r\n <td>");
WriteLiteral(" ");
#line 34 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 48 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.DisplayFor(modelItem => item.Scope)); Write(Html.DisplayFor(modelItem => item.Scope));
#line default #line default
#line hidden #line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n"); WriteLiteral("</td>\r\n <td>");
#line 37 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 49 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(storedCount.ToString("N0"));
#line default
#line hidden
WriteLiteral("</td>\r\n");
#line 50 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
#line default
#line hidden
#line 50 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <td>\r\n");
#line 53 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
#line default
#line hidden
#line 53 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (item.DevicesLinkedGroup != null || item.UsersLinkedGroup != null)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-link fa-lg success\"");
WriteLiteral(" title=\"Is Linked\"");
WriteLiteral("></i>\r\n");
#line 56 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" ");
#line 57 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (item.FilterExpression != null || item.OnGenerateExpression != null || item.OnImportAttachmentExpression != null)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-bolt fa-lg alert\"");
WriteLiteral(" title=\"Has Expressions\"");
WriteLiteral("></i>\r\n");
#line 60 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" ");
#line 61 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (item.IsHidden)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-minus-square fa-lg error\"");
WriteLiteral(" title=\"Is Hidden\"");
WriteLiteral("></i>\r\n");
#line 64 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n");
#line 66 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 68 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
@@ -148,7 +337,7 @@ WriteLiteral("\r\n </td>\r\n </tr>\r\n");
WriteLiteral(" </table>\r\n"); WriteLiteral(" </table>\r\n");
#line 39 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 70 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
@@ -161,13 +350,13 @@ WriteLiteral(" class=\"actionBar\"");
WriteLiteral(">\r\n"); WriteLiteral(">\r\n");
#line 41 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 72 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
#line default #line default
#line hidden #line hidden
#line 41 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 72 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (Authorization.Has(Claims.Config.DocumentTemplate.UndetectedPages)) if (Authorization.Has(Claims.Config.DocumentTemplate.UndetectedPages))
{ {
@@ -175,14 +364,14 @@ WriteLiteral(">\r\n");
#line default #line default
#line hidden #line hidden
#line 43 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 74 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.ActionLinkButton("Undetected Pages", MVC.Config.DocumentTemplate.UndetectedPages())); Write(Html.ActionLinkButton("Undetected Pages", MVC.Config.DocumentTemplate.UndetectedPages()));
#line default #line default
#line hidden #line hidden
#line 43 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 74 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
@@ -192,7 +381,7 @@ WriteLiteral(">\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 45 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 76 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (Authorization.Has(Claims.Config.DocumentTemplate.ShowStatus)) if (Authorization.Has(Claims.Config.DocumentTemplate.ShowStatus))
{ {
@@ -200,14 +389,14 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
#line 47 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 78 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.ActionLinkButton("Import Status", MVC.Config.DocumentTemplate.ImportStatus())); Write(Html.ActionLinkButton("Import Status", MVC.Config.DocumentTemplate.ImportStatus()));
#line default #line default
#line hidden #line hidden
#line 47 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 78 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
@@ -217,7 +406,7 @@ WriteLiteral(" ");
WriteLiteral(" "); WriteLiteral(" ");
#line 49 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 80 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (Authorization.Has(Claims.Config.Show)) if (Authorization.Has(Claims.Config.Show))
{ {
@@ -225,14 +414,14 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
#line 51 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 82 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.ActionLinkButton("Expression Browser", MVC.Config.DocumentTemplate.ExpressionBrowser())); Write(Html.ActionLinkButton("Expression Browser", MVC.Config.DocumentTemplate.ExpressionBrowser()));
#line default #line default
#line hidden #line hidden
#line 51 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 82 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
@@ -242,7 +431,7 @@ WriteLiteral(" ");
WriteLiteral(" "); WriteLiteral(" ");
#line 53 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 84 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
if (Authorization.HasAll(Claims.Config.DocumentTemplate.Create, Claims.Config.DocumentTemplate.Configure)) if (Authorization.HasAll(Claims.Config.DocumentTemplate.Create, Claims.Config.DocumentTemplate.Configure))
{ {
@@ -250,14 +439,14 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
#line 55 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 86 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
Write(Html.ActionLinkButton("Create Document Template", MVC.Config.DocumentTemplate.Create())); Write(Html.ActionLinkButton("Create Document Template", MVC.Config.DocumentTemplate.Create()));
#line default #line default
#line hidden #line hidden
#line 55 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml" #line 86 "..\..\Areas\Config\Views\DocumentTemplate\Index.cshtml"
} }
@@ -105,29 +105,29 @@
<div> <div>
@if (canConfig) @if (canConfig)
{ {
<input id="DocumentTemplate_FlattenForm" type="checkbox" @(Model.DocumentTemplate.FlattenForm ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) /> <input id="DocumentTemplate_IsHidden" type="checkbox" @(Model.DocumentTemplate.IsHidden ? new MvcHtmlString("checked=\"checked\" ") : null) />
<label for="DocumentTemplate_FlattenForm">Flatten Form</label> <label for="DocumentTemplate_IsHidden">Hidden</label>
@AjaxHelpers.AjaxLoader() @AjaxHelpers.AjaxLoader()
<script type="text/javascript"> <script type="text/javascript">
$(function () { $(function () {
document.DiscoFunctions.PropertyChangeHelper( document.DiscoFunctions.PropertyChangeHelper(
$('#DocumentTemplate_FlattenForm'), $('#DocumentTemplate_IsHidden'),
null, null,
'@Url.Action(MVC.API.DocumentTemplate.UpdateFlattenForm(Model.DocumentTemplate.Id))', '@Url.Action(MVC.API.DocumentTemplate.UpdateIsHidden(Model.DocumentTemplate.Id))',
'FlattenForm' 'IsHidden'
); );
}); });
</script> </script>
} }
else else
{ {
<input id="DocumentTemplate_FlattenForm" type="checkbox" @(Model.DocumentTemplate.FlattenForm ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" /> <input id="DocumentTemplate_IsHidden" type="checkbox" @(Model.DocumentTemplate.IsHidden ? new MvcHtmlString("checked=\"checked\" ") : null) disabled="disabled" />
<label for="DocumentTemplate_FlattenForm">Flatten Form</label> <label for="DocumentTemplate_IsHidden">Hidden</label>
} }
</div> </div>
<div class="info-box"> <div class="info-box">
<p class="fa-p"> <p class="fa-p">
<i class="fa fa-info-circle"></i>If selected when a document is generated all form elements will be removed and their content written in place. <i class="fa fa-info-circle"></i>If selected the template will not appear in the list of documents to generate.
</p> </p>
</div> </div>
</td> </td>
@@ -331,6 +331,41 @@
} }
</td> </td>
</tr> </tr>
<tr>
<th>
&nbsp;
</th>
<td>
<div>
@if (canConfig)
{
<input id="DocumentTemplate_FlattenForm" type="checkbox" @(Model.DocumentTemplate.FlattenForm ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) />
<label for="DocumentTemplate_FlattenForm">Flatten Form</label>
@AjaxHelpers.AjaxLoader()
<script type="text/javascript">
$(function () {
document.DiscoFunctions.PropertyChangeHelper(
$('#DocumentTemplate_FlattenForm'),
null,
'@Url.Action(MVC.API.DocumentTemplate.UpdateFlattenForm(Model.DocumentTemplate.Id))',
'FlattenForm'
);
});
</script>
}
else
{
<input id="DocumentTemplate_FlattenForm" type="checkbox" @(Model.DocumentTemplate.FlattenForm ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" />
<label for="DocumentTemplate_FlattenForm">Flatten Form</label>
}
</div>
<div class="info-box">
<p class="fa-p">
<i class="fa fa-info-circle"></i>When a document is generated all form elements will be removed and their content written in place if this option is selected.
</p>
</div>
</td>
</tr>
</tbody> </tbody>
</table> </table>
</div> </div>
@@ -478,7 +513,7 @@
} }
<div class="info-box"> <div class="info-box">
<p class="fa-p"> <p class="fa-p">
<i class="fa fa-fw fa-info-circle"></i>This expression will be evaluated to determine if this template is shown in the <em>Generate Document</em> drop-down list. <i class="fa fa-fw fa-info-circle"></i>This expression will be evaluated to determine if this template is shown in the <em>Generate Document</em> drop-down list. If the template is hidden (see above) this expression is ignored.
</p> </p>
</div> </div>
</td> </td>
File diff suppressed because it is too large Load Diff
@@ -2,13 +2,15 @@
@{ @{
Authorization.Require(Claims.Config.UserFlag.Show); Authorization.Require(Claims.Config.UserFlag.Show);
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "User Flags"); ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "User Flags");
var showTags = Model.UserFlags.Keys.Any(i => i.UserDevicesLinkedGroup != null || i.UsersLinkedGroup != null ||
i.OnAssignmentExpression != null || i.OnUnassignmentExpression != null);
} }
<div id="Config_UserFlags_Index"> <div id="Config_UserFlags_Index">
@if (Model.UserFlags.Count == 0) @if (Model.UserFlags.Count == 0)
{ {
<div class="form" style="width: 450px; padding: 100px 0;"> <div class="form" style="width: 450px; padding: 100px 0;">
<h2>No user flags are configured</h2> <h2>No user flags are configured</h2>
</div> </div>
} }
else else
{ {
@@ -16,10 +18,16 @@
<tr> <tr>
<th>Name</th> <th>Name</th>
<th>Description</th> <th>Description</th>
<th>Linked</th> <th>Current&nbsp;Assignments</th>
@if (showTags)
{
<th>&nbsp;</th>
}
</tr> </tr>
@foreach (var item in Model.UserFlags) @foreach (var pair in Model.UserFlags.OrderBy(i => i.Key.Name))
{ {
var item = pair.Key;
var assignmentCount = pair.Value;
<tr> <tr>
<td> <td>
<a href="@Url.Action(MVC.Config.UserFlag.Index(item.Id))"> <a href="@Url.Action(MVC.Config.UserFlag.Index(item.Id))">
@@ -27,24 +35,32 @@
@item.Name @item.Name
</a> </a>
</td> </td>
<td>@if (string.IsNullOrWhiteSpace(item.Description)) <td>
{ @if (string.IsNullOrWhiteSpace(item.Description))
<span class="smallMessage">&lt;none&gt;</span> {
<span class="smallMessage">&lt;none&gt;</span>
} }
else else
{ {
@item.Description.ToHtmlComment() @item.Description.ToHtmlComment()
} }
</td> </td>
<td>@if (item.UserDevicesLinkedGroup != null || item.UsersLinkedGroup != null) <td>
{ @assignmentCount.ToString("N0")
<i class="fa fa-link fa-lg success"></i>
}
else
{
<i class="fa fa-unlink fa-lg information"></i>
}
</td> </td>
@if (showTags)
{
<td>
@if (item.UserDevicesLinkedGroup != null || item.UsersLinkedGroup != null)
{
<i class="fa fa-link fa-lg success" title="Is Linked"></i>
}
@if (item.OnAssignmentExpression != null || item.OnUnassignmentExpression != null)
{
<i class="fa fa-bolt fa-lg alert" title="Has Expressions"></i>
}
</td>
}
</tr> </tr>
} }
</table> </table>
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.34014 // Runtime Version:4.0.30319.42000
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.UserFlag
using System.Web.UI; using System.Web.UI;
using System.Web.WebPages; using System.Web.WebPages;
using Disco; using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository; using Disco.Models.Repository;
using Disco.Services; using Disco.Services;
using Disco.Services.Authorization; using Disco.Services.Authorization;
@@ -49,6 +48,8 @@ namespace Disco.Web.Areas.Config.Views.UserFlag
Authorization.Require(Claims.Config.UserFlag.Show); Authorization.Require(Claims.Config.UserFlag.Show);
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "User Flags"); ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "User Flags");
var showTags = Model.UserFlags.Keys.Any(i => i.UserDevicesLinkedGroup != null || i.UsersLinkedGroup != null ||
i.OnAssignmentExpression != null || i.OnUnassignmentExpression != null);
#line default #line default
@@ -60,13 +61,13 @@ WriteLiteral(" id=\"Config_UserFlags_Index\"");
WriteLiteral(">\r\n"); WriteLiteral(">\r\n");
#line 7 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 9 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
#line default #line default
#line hidden #line hidden
#line 7 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 9 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (Model.UserFlags.Count == 0) if (Model.UserFlags.Count == 0)
{ {
@@ -79,10 +80,10 @@ WriteLiteral(" class=\"form\"");
WriteLiteral(" style=\"width: 450px; padding: 100px 0;\""); WriteLiteral(" style=\"width: 450px; padding: 100px 0;\"");
WriteLiteral(">\r\n <h2>No user flags are configured</h2>\r\n </div> \r\n"); WriteLiteral(">\r\n <h2>No user flags are configured</h2>\r\n </div>\r\n");
#line 12 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 14 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
} }
else else
{ {
@@ -95,55 +96,82 @@ WriteLiteral(" <table");
WriteLiteral(" class=\"tableData\""); WriteLiteral(" class=\"tableData\"");
WriteLiteral(">\r\n <tr>\r\n <th>Name</th>\r\n <th>Descripti" + WriteLiteral(">\r\n <tr>\r\n <th>Name</th>\r\n <th>Descripti" +
"on</th>\r\n <th>Linked</th>\r\n </tr>\r\n"); "on</th>\r\n <th>Current&nbsp;Assignments</th>\r\n");
#line 21 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 22 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
#line default
#line hidden
#line 22 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <th>&nbsp;</th>\r\n");
#line 25 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 27 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
#line default #line default
#line hidden #line hidden
#line 21 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 27 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
foreach (var item in Model.UserFlags) foreach (var pair in Model.UserFlags.OrderBy(i => i.Key.Name))
{ {
var item = pair.Key;
var assignmentCount = pair.Value;
#line default #line default
#line hidden #line hidden
WriteLiteral(" <tr>\r\n <td>\r\n <a"); WriteLiteral(" <tr>\r\n <td>\r\n <a");
WriteAttribute("href", Tuple.Create(" href=\"", 776), Tuple.Create("\"", 830) WriteAttribute("href", Tuple.Create(" href=\"", 1211), Tuple.Create("\"", 1265)
#line 25 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 33 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
, Tuple.Create(Tuple.Create("", 783), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Config.UserFlag.Index(item.Id)) , Tuple.Create(Tuple.Create("", 1218), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Config.UserFlag.Index(item.Id))
#line default #line default
#line hidden #line hidden
, 783), false) , 1218), false)
); );
WriteLiteral(">\r\n <i"); WriteLiteral(">\r\n <i");
WriteAttribute("class", Tuple.Create(" class=\"", 864), Tuple.Create("\"", 917) WriteAttribute("class", Tuple.Create(" class=\"", 1299), Tuple.Create("\"", 1352)
, Tuple.Create(Tuple.Create("", 872), Tuple.Create("fa", 872), true) , Tuple.Create(Tuple.Create("", 1307), Tuple.Create("fa", 1307), true)
, Tuple.Create(Tuple.Create(" ", 874), Tuple.Create("fa-", 875), true) , Tuple.Create(Tuple.Create(" ", 1309), Tuple.Create("fa-", 1310), true)
#line 26 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 34 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
, Tuple.Create(Tuple.Create("", 878), Tuple.Create<System.Object, System.Int32>(item.Icon , Tuple.Create(Tuple.Create("", 1313), Tuple.Create<System.Object, System.Int32>(item.Icon
#line default #line default
#line hidden #line hidden
, 878), false) , 1313), false)
, Tuple.Create(Tuple.Create(" ", 890), Tuple.Create("fa-lg", 891), true) , Tuple.Create(Tuple.Create(" ", 1325), Tuple.Create("fa-lg", 1326), true)
, Tuple.Create(Tuple.Create(" ", 896), Tuple.Create("d-", 897), true) , Tuple.Create(Tuple.Create(" ", 1331), Tuple.Create("d-", 1332), true)
#line 26 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 34 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
, Tuple.Create(Tuple.Create("", 899), Tuple.Create<System.Object, System.Int32>(item.IconColour , Tuple.Create(Tuple.Create("", 1334), Tuple.Create<System.Object, System.Int32>(item.IconColour
#line default #line default
#line hidden #line hidden
, 899), false) , 1334), false)
); );
WriteLiteral("></i>\r\n"); WriteLiteral("></i>\r\n");
@@ -151,95 +179,155 @@ WriteLiteral("></i>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 27 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 35 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
Write(item.Name); Write(item.Name);
#line default #line default
#line hidden #line hidden
WriteLiteral("\r\n </a>\r\n </td>\r\n <t" + WriteLiteral("\r\n </a>\r\n </td>\r\n <t" +
"d>"); "d>\r\n");
#line 30 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 39 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
#line default
#line hidden
#line 39 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (string.IsNullOrWhiteSpace(item.Description)) if (string.IsNullOrWhiteSpace(item.Description))
{ {
#line default #line default
#line hidden #line hidden
WriteLiteral(" <span"); WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\""); WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">&lt;none&gt;</span>\r\n"); WriteLiteral(">&lt;none&gt;</span>\r\n");
#line 33 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
}
else
{
#line default
#line hidden
#line 36 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
Write(item.Description.ToHtmlComment());
#line default
#line hidden
#line 36 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n <td>");
#line 39 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (item.UserDevicesLinkedGroup != null || item.UsersLinkedGroup != null)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-link fa-lg success\"");
WriteLiteral("></i>\r\n");
#line 42 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 42 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
} }
else else
{ {
#line default
#line hidden
#line 45 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
Write(item.Description.ToHtmlComment());
#line default #line default
#line hidden #line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-unlink fa-lg information\"");
WriteLiteral("></i>\r\n");
#line 46 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 45 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
} }
#line default #line default
#line hidden #line hidden
WriteLiteral(" </td>\r\n </tr>\r\n"); WriteLiteral(" </td>\r\n <td>\r\n");
WriteLiteral(" ");
#line 49 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 49 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
Write(assignmentCount.ToString("N0"));
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n");
#line 51 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
#line default
#line hidden
#line 51 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (showTags)
{
#line default
#line hidden
WriteLiteral(" <td>\r\n");
#line 54 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
#line default
#line hidden
#line 54 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (item.UserDevicesLinkedGroup != null || item.UsersLinkedGroup != null)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-link fa-lg success\"");
WriteLiteral(" title=\"Is Linked\"");
WriteLiteral("></i>\r\n");
#line 57 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" ");
#line 58 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (item.OnAssignmentExpression != null || item.OnUnassignmentExpression != null)
{
#line default
#line hidden
WriteLiteral(" <i");
WriteLiteral(" class=\"fa fa-bolt fa-lg alert\"");
WriteLiteral(" title=\"Has Expressions\"");
WriteLiteral("></i>\r\n");
#line 61 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n");
#line 63 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </tr>\r\n");
#line 65 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
} }
@@ -248,7 +336,7 @@ WriteLiteral(" </td>\r\n </tr>\r\n");
WriteLiteral(" </table>\r\n"); WriteLiteral(" </table>\r\n");
#line 51 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 67 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
} }
@@ -257,7 +345,7 @@ WriteLiteral(" </table>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 52 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 68 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
if (Authorization.Has(Claims.Config.UserFlag.Create)) if (Authorization.Has(Claims.Config.UserFlag.Create))
{ {
@@ -273,7 +361,7 @@ WriteLiteral(">\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 55 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 71 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
Write(Html.ActionLinkButton("Create User Flag", MVC.Config.UserFlag.Create())); Write(Html.ActionLinkButton("Create User Flag", MVC.Config.UserFlag.Create()));
@@ -282,7 +370,7 @@ WriteLiteral(" ");
WriteLiteral("\r\n </div>\r\n"); WriteLiteral("\r\n </div>\r\n");
#line 57 "..\..\Areas\Config\Views\UserFlag\Index.cshtml" #line 73 "..\..\Areas\Config\Views\UserFlag\Index.cshtml"
} }
+20 -24
View File
@@ -1862,7 +1862,7 @@ body .ui-tooltip {
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -1870,10 +1870,7 @@ body .ui-tooltip {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
@@ -4092,6 +4089,14 @@ header .watermark,
#layout_PageHeading a { #layout_PageHeading a {
text-decoration: none; text-decoration: none;
} }
#layout_PageHeading > a.button {
position: absolute;
right: 30px;
bottom: 8px;
font-size: 0.5em;
line-height: 1em;
text-align: right;
}
#layout_Page { #layout_Page {
background-color: #fff; background-color: #fff;
overflow: auto; overflow: auto;
@@ -4351,7 +4356,7 @@ table.genericData > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
table.genericData > tbody > tr:nth-child(odd) > td { table.genericData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
table.genericData > thead > tr > th, table.genericData > thead > tr > th,
table.genericData > tbody > tr > th { table.genericData > tbody > tr > th {
@@ -4359,10 +4364,7 @@ table.genericData > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
table.genericData > tbody > tr:hover > td { table.genericData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
table.genericData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
table.genericData > tfoot > tr > th, table.genericData > tfoot > tr > th,
table.genericData > tfoot > tr > td { table.genericData > tfoot > tr > td {
@@ -4570,7 +4572,7 @@ table.jobTable > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
table.jobTable > tbody > tr:nth-child(odd) > td { table.jobTable > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
table.jobTable > thead > tr > th, table.jobTable > thead > tr > th,
table.jobTable > tbody > tr > th { table.jobTable > tbody > tr > th {
@@ -4578,10 +4580,7 @@ table.jobTable > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
table.jobTable > tbody > tr:hover > td { table.jobTable > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
table.jobTable > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
table.jobTable > tfoot > tr > th, table.jobTable > tfoot > tr > th,
table.jobTable > tfoot > tr > td { table.jobTable > tfoot > tr > td {
@@ -4619,16 +4618,16 @@ table.jobTable tr.statusSlaExpired td:not(:last-child) {
border-right: 1px solid #fad2ce; border-right: 1px solid #fad2ce;
} }
table.jobTable tr:nth-child(odd).statusSlaWarning td { table.jobTable tr:nth-child(odd).statusSlaWarning td {
background-color: #fcedcf !important; background-color: #fbeccf !important;
} }
table.jobTable tr:nth-child(odd).statusSlaExpired td { table.jobTable tr:nth-child(odd).statusSlaExpired td {
background-color: #fed6d2 !important; background-color: #fdd5d1 !important;
} }
table.jobTable tr:hover.statusSlaWarning td { table.jobTable tr:hover.statusSlaWarning td {
background-color: #fbebca !important; background-color: #fbeaca !important;
} }
table.jobTable tr:hover.statusSlaExpired td { table.jobTable tr:hover.statusSlaExpired td {
background-color: #fed1cd !important; background-color: #fdd1cd !important;
} }
table.jobTable div.queues { table.jobTable div.queues {
display: inline-block; display: inline-block;
@@ -4953,7 +4952,7 @@ div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:nth-child(odd) > td { div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
div.Disco-AttachmentUpload-CommentDialog table > thead > tr > th, div.Disco-AttachmentUpload-CommentDialog table > thead > tr > th,
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > th { div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > th {
@@ -4961,10 +4960,7 @@ div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:hover > td { div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > th, div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > th,
div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > td { div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > td {
File diff suppressed because one or more lines are too long
+7 -34
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
@@ -160,7 +157,7 @@ table.expressionsTable > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
table.expressionsTable > tbody > tr:nth-child(odd) > td { table.expressionsTable > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
table.expressionsTable > thead > tr > th, table.expressionsTable > thead > tr > th,
table.expressionsTable > tbody > tr > th { table.expressionsTable > tbody > tr > th {
@@ -168,10 +165,7 @@ table.expressionsTable > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
table.expressionsTable > tbody > tr:hover > td { table.expressionsTable > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
table.expressionsTable > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
table.expressionsTable > tfoot > tr > th, table.expressionsTable > tfoot > tr > th,
table.expressionsTable > tfoot > tr > td { table.expressionsTable > tfoot > tr > td {
@@ -192,7 +186,7 @@ table.expressionsTable td.parseError {
background-color: #fff; background-color: #fff;
} }
#deviceComponents > tbody > tr:nth-child(odd) > td { #deviceComponents > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
#deviceComponents > thead > tr > th, #deviceComponents > thead > tr > th,
#deviceComponents > tbody > tr > th { #deviceComponents > tbody > tr > th {
@@ -200,10 +194,7 @@ table.expressionsTable td.parseError {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
#deviceComponents > tbody > tr:hover > td { #deviceComponents > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
#deviceComponents > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
#deviceComponents > tfoot > tr > th, #deviceComponents > tfoot > tr > th,
#deviceComponents > tfoot > tr > td { #deviceComponents > tfoot > tr > td {
@@ -841,7 +832,7 @@ div.logEventsViewport table.logEventsViewport > tbody > tr > td.eventType {
float: left; float: left;
margin: 4px; margin: 4px;
border: 1px solid #f4f4f4; border: 1px solid #f4f4f4;
background-color: #fcfcfc; background-color: #fbfbfb;
height: 256px; height: 256px;
width: 256px; width: 256px;
background-position: top center; background-position: top center;
@@ -870,24 +861,6 @@ div.logEventsViewport table.logEventsViewport > tbody > tr > td.eventType {
margin-top: 8px; margin-top: 8px;
text-align: right; text-align: right;
} }
#Config_DeviceBatches #Config_DeviceBatches_List tr.decommissioned {
display: none;
}
#Config_DeviceBatches #Config_DeviceBatches_List tr.decommissioned > td {
background-color: #f7f7f7;
color: #888;
}
#Config_DeviceBatches #Config_DeviceBatches_List tr.decommissioned:nth-child(odd) > td {
background-color: #f2f2f2;
}
#Config_DeviceBatches_ShowDecommissioned {
position: absolute;
right: 30px;
bottom: 8px;
font-size: 0.5em;
line-height: 1em;
text-align: right;
}
.deviceBatches #DeviceBatch_PurchaseDetails_Container { .deviceBatches #DeviceBatch_PurchaseDetails_Container {
padding: 5px 0 5px 5px; padding: 5px 0 5px 5px;
} }
-26
View File
@@ -981,32 +981,6 @@ div.logEventsViewport {
} }
} }
// Device Batches // Device Batches
#Config_DeviceBatches {
#Config_DeviceBatches_List {
tr.decommissioned {
display: none;
& > td {
background-color: darken(@white, 3%);
color: #888;
}
&:nth-child(odd) > td {
background-color: darken(@TableDataRowBackgroundColor, 4%);
}
}
}
}
#Config_DeviceBatches_ShowDecommissioned {
position: absolute;
right: 30px;
bottom: 8px;
font-size: 0.5em;
line-height: 1em;
text-align: right;
}
.deviceBatches { .deviceBatches {
#DeviceBatch_PurchaseDetails_Container { #DeviceBatch_PurchaseDetails_Container {
padding: 5px 0 5px 5px; padding: 5px 0 5px 5px;
File diff suppressed because one or more lines are too long
@@ -27,7 +27,7 @@
@TableDataBorderColour: #f4f4f4; @TableDataBorderColour: #f4f4f4;
@TableDataDarkBorderColour: #d8d8d8; @TableDataDarkBorderColour: #d8d8d8;
@TableDataDarkBackgroundColour: #eee; @TableDataDarkBackgroundColour: #eee;
@TableDataRowBackgroundColor: hsl(hue(@TableDataBorderColour), saturation(@TableDataBorderColour), 99%); @TableDataRowBackgroundColor: hsl(hue(@TableDataBorderColour), saturation(@TableDataBorderColour), 98.5%);
@SubtleColour: #ededed; @SubtleColour: #ededed;
@SubtleBorderColour: #ccc; @SubtleBorderColour: #ccc;
+7 -13
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
@@ -204,7 +201,7 @@
} }
#Device_Show_Policies_Profile_Actions_Update_Dialog ul li:nth-child(odd), #Device_Show_Policies_Profile_Actions_Update_Dialog ul li:nth-child(odd),
#Device_Show_Policies_Batch_Actions_Update_Dialog ul li:nth-child(odd) { #Device_Show_Policies_Batch_Actions_Update_Dialog ul li:nth-child(odd) {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
#Device_Show_Policies_Profile_Actions_Update_Dialog ul li.selected, #Device_Show_Policies_Profile_Actions_Update_Dialog ul li.selected,
#Device_Show_Policies_Batch_Actions_Update_Dialog ul li.selected { #Device_Show_Policies_Batch_Actions_Update_Dialog ul li.selected {
@@ -238,7 +235,7 @@
background-color: #fff; background-color: #fff;
} }
#DeviceDetailTab-DetailsContainer > table > tbody > tr:nth-child(odd) > td { #DeviceDetailTab-DetailsContainer > table > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
#DeviceDetailTab-DetailsContainer > table > thead > tr > th, #DeviceDetailTab-DetailsContainer > table > thead > tr > th,
#DeviceDetailTab-DetailsContainer > table > tbody > tr > th { #DeviceDetailTab-DetailsContainer > table > tbody > tr > th {
@@ -246,10 +243,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
#DeviceDetailTab-DetailsContainer > table > tbody > tr:hover > td { #DeviceDetailTab-DetailsContainer > table > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
#DeviceDetailTab-DetailsContainer > table > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
#DeviceDetailTab-DetailsContainer > table > tfoot > tr > th, #DeviceDetailTab-DetailsContainer > table > tfoot > tr > th,
#DeviceDetailTab-DetailsContainer > table > tfoot > tr > td { #DeviceDetailTab-DetailsContainer > table > tfoot > tr > td {
@@ -495,7 +489,7 @@
background-color: #e7f9d5; background-color: #e7f9d5;
} }
#Devices_Import_Review #Devices_Import_Review_Navigation ul li.actionUnchanged { #Devices_Import_Review #Devices_Import_Review_Navigation ul li.actionUnchanged {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
#Devices_Import_Review #Devices_Import_Review_TableContainer { #Devices_Import_Review #Devices_Import_Review_TableContainer {
margin: 18px 0; margin: 18px 0;
@@ -524,7 +518,7 @@
content: "\f068"; content: "\f068";
} }
#Devices_Import_Review #Devices_Import_Review_TableContainer table > tbody tr.actionUnchanged td { #Devices_Import_Review #Devices_Import_Review_TableContainer table > tbody tr.actionUnchanged td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
#Devices_Import_Review #Devices_Import_Review_TableContainer table > tbody tr.actionUnchanged td:nth-child(n+3) { #Devices_Import_Review #Devices_Import_Review_TableContainer table > tbody tr.actionUnchanged td:nth-child(n+3) {
color: #ccc; color: #ccc;
File diff suppressed because one or more lines are too long
+2 -5
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
+1 -1
View File
@@ -1 +1 @@
.tableData{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableData>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}.tableData>tbody>tr:nth-child(odd)>td{background-color:#fcfcfc;}.tableData>thead>tr>th,.tableData>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}.tableData>tbody>tr:hover>td{background-color:#fefefe;}.tableData>tbody>tr:hover:nth-child(odd)>td{background-color:#fafafa;}.tableData>tfoot>tr>th,.tableData>tfoot>tr>td{background-color:#f4f4f4;}.tableDataDark{border:solid 1px #d8d8d8;border-collapse:collapse;}.tableDataDark td{border:solid 1px #d8d8d8;background-color:#fff;}.tableDataDark th{background-color:#eee;border:solid 1px #d8d8d8;}.tableDataContainer{background-color:#fff;}.tableDataVertical{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableDataVertical>tbody>tr:nth-child(odd){background-color:#f4f4f4;margin:0;padding:0;}.tableDataVertical>tbody>tr>th.name{width:170px;text-align:right;}.tableDataVertical table.sub>tbody>tr:not(:first-child)>th,.tableDataVertical table.sub>tbody>tr:not(:first-child)>td{border-top:1px dashed #aaa;}.tableDataVertical table.sub>tbody>tr>th{font-weight:normal;text-align:right;}.tableDataVertical table.sub>tbody>tr>th.name{text-align:right;}.icon16{display:inline-block;height:16px;width:16px;margin-left:2px;cursor:pointer;}.subtleUntilHover{-moz-opacity:.3;opacity:.3;}.subtleUntilHover:hover{-moz-opacity:1;opacity:1;}body{padding:0;}#main{background-color:#fff;overflow:auto;padding:0;-moz-border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;} .tableData{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableData>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}.tableData>tbody>tr:nth-child(odd)>td{background-color:#fbfbfb;}.tableData>thead>tr>th,.tableData>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}.tableData>tbody>tr:hover>td{background-color:#f9f9f9;}.tableData>tfoot>tr>th,.tableData>tfoot>tr>td{background-color:#f4f4f4;}.tableDataDark{border:solid 1px #d8d8d8;border-collapse:collapse;}.tableDataDark td{border:solid 1px #d8d8d8;background-color:#fff;}.tableDataDark th{background-color:#eee;border:solid 1px #d8d8d8;}.tableDataContainer{background-color:#fff;}.tableDataVertical{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableDataVertical>tbody>tr:nth-child(odd){background-color:#f4f4f4;margin:0;padding:0;}.tableDataVertical>tbody>tr>th.name{width:170px;text-align:right;}.tableDataVertical table.sub>tbody>tr:not(:first-child)>th,.tableDataVertical table.sub>tbody>tr:not(:first-child)>td{border-top:1px dashed #aaa;}.tableDataVertical table.sub>tbody>tr>th{font-weight:normal;text-align:right;}.tableDataVertical table.sub>tbody>tr>th.name{text-align:right;}.icon16{display:inline-block;height:16px;width:16px;margin-left:2px;cursor:pointer;}.subtleUntilHover{-moz-opacity:.3;opacity:.3;}.subtleUntilHover:hover{-moz-opacity:1;opacity:1;}body{padding:0;}#main{background-color:#fff;overflow:auto;padding:0;-moz-border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;}
+2 -5
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
File diff suppressed because one or more lines are too long
+2 -5
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
+2 -7
View File
@@ -19,13 +19,8 @@
border: solid 1px @TableDataBorderColour; border: solid 1px @TableDataBorderColour;
} }
& > tbody > tr:hover { & > tbody > tr:hover > td {
& > td { background-color: darken(@TableDataRowBackgroundColor, 1%);
background-color: darken(@white, 0.5%);
}
&:nth-child(odd) > td {
background-color: darken(@TableDataRowBackgroundColor, 1%);
}
} }
& > tfoot > tr > th, & > tfoot > tr > td { & > tfoot > tr > th, & > tfoot > tr > td {
+1 -1
View File
@@ -1 +1 @@
.tableData{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableData>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}.tableData>tbody>tr:nth-child(odd)>td{background-color:#fcfcfc;}.tableData>thead>tr>th,.tableData>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}.tableData>tbody>tr:hover>td{background-color:#fefefe;}.tableData>tbody>tr:hover:nth-child(odd)>td{background-color:#fafafa;}.tableData>tfoot>tr>th,.tableData>tfoot>tr>td{background-color:#f4f4f4;}.tableDataDark{border:solid 1px #d8d8d8;border-collapse:collapse;}.tableDataDark td{border:solid 1px #d8d8d8;background-color:#fff;}.tableDataDark th{background-color:#eee;border:solid 1px #d8d8d8;}.tableDataContainer{background-color:#fff;}.tableDataVertical{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableDataVertical>tbody>tr:nth-child(odd){background-color:#f4f4f4;margin:0;padding:0;}.tableDataVertical>tbody>tr>th.name{width:170px;text-align:right;}.tableDataVertical table.sub>tbody>tr:not(:first-child)>th,.tableDataVertical table.sub>tbody>tr:not(:first-child)>td{border-top:1px dashed #aaa;}.tableDataVertical table.sub>tbody>tr>th{font-weight:normal;text-align:right;}.tableDataVertical table.sub>tbody>tr>th.name{text-align:right;}.icon16{display:inline-block;height:16px;width:16px;margin-left:2px;cursor:pointer;}.subtleUntilHover{-moz-opacity:.3;opacity:.3;}.subtleUntilHover:hover{-moz-opacity:1;opacity:1;} .tableData{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableData>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}.tableData>tbody>tr:nth-child(odd)>td{background-color:#fbfbfb;}.tableData>thead>tr>th,.tableData>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}.tableData>tbody>tr:hover>td{background-color:#f9f9f9;}.tableData>tfoot>tr>th,.tableData>tfoot>tr>td{background-color:#f4f4f4;}.tableDataDark{border:solid 1px #d8d8d8;border-collapse:collapse;}.tableDataDark td{border:solid 1px #d8d8d8;background-color:#fff;}.tableDataDark th{background-color:#eee;border:solid 1px #d8d8d8;}.tableDataContainer{background-color:#fff;}.tableDataVertical{border:solid 1px #f4f4f4;border-collapse:collapse;}.tableDataVertical>tbody>tr:nth-child(odd){background-color:#f4f4f4;margin:0;padding:0;}.tableDataVertical>tbody>tr>th.name{width:170px;text-align:right;}.tableDataVertical table.sub>tbody>tr:not(:first-child)>th,.tableDataVertical table.sub>tbody>tr:not(:first-child)>td{border-top:1px dashed #aaa;}.tableDataVertical table.sub>tbody>tr>th{font-weight:normal;text-align:right;}.tableDataVertical table.sub>tbody>tr>th.name{text-align:right;}.icon16{display:inline-block;height:16px;width:16px;margin-left:2px;cursor:pointer;}.subtleUntilHover{-moz-opacity:.3;opacity:.3;}.subtleUntilHover:hover{-moz-opacity:1;opacity:1;}
+20 -24
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
@@ -325,6 +322,14 @@ header .watermark,
#layout_PageHeading a { #layout_PageHeading a {
text-decoration: none; text-decoration: none;
} }
#layout_PageHeading > a.button {
position: absolute;
right: 30px;
bottom: 8px;
font-size: 0.5em;
line-height: 1em;
text-align: right;
}
#layout_Page { #layout_Page {
background-color: #fff; background-color: #fff;
overflow: auto; overflow: auto;
@@ -584,7 +589,7 @@ table.genericData > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
table.genericData > tbody > tr:nth-child(odd) > td { table.genericData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
table.genericData > thead > tr > th, table.genericData > thead > tr > th,
table.genericData > tbody > tr > th { table.genericData > tbody > tr > th {
@@ -592,10 +597,7 @@ table.genericData > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
table.genericData > tbody > tr:hover > td { table.genericData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
table.genericData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
table.genericData > tfoot > tr > th, table.genericData > tfoot > tr > th,
table.genericData > tfoot > tr > td { table.genericData > tfoot > tr > td {
@@ -803,7 +805,7 @@ table.jobTable > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
table.jobTable > tbody > tr:nth-child(odd) > td { table.jobTable > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
table.jobTable > thead > tr > th, table.jobTable > thead > tr > th,
table.jobTable > tbody > tr > th { table.jobTable > tbody > tr > th {
@@ -811,10 +813,7 @@ table.jobTable > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
table.jobTable > tbody > tr:hover > td { table.jobTable > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
table.jobTable > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
table.jobTable > tfoot > tr > th, table.jobTable > tfoot > tr > th,
table.jobTable > tfoot > tr > td { table.jobTable > tfoot > tr > td {
@@ -852,16 +851,16 @@ table.jobTable tr.statusSlaExpired td:not(:last-child) {
border-right: 1px solid #fad2ce; border-right: 1px solid #fad2ce;
} }
table.jobTable tr:nth-child(odd).statusSlaWarning td { table.jobTable tr:nth-child(odd).statusSlaWarning td {
background-color: #fcedcf !important; background-color: #fbeccf !important;
} }
table.jobTable tr:nth-child(odd).statusSlaExpired td { table.jobTable tr:nth-child(odd).statusSlaExpired td {
background-color: #fed6d2 !important; background-color: #fdd5d1 !important;
} }
table.jobTable tr:hover.statusSlaWarning td { table.jobTable tr:hover.statusSlaWarning td {
background-color: #fbebca !important; background-color: #fbeaca !important;
} }
table.jobTable tr:hover.statusSlaExpired td { table.jobTable tr:hover.statusSlaExpired td {
background-color: #fed1cd !important; background-color: #fdd1cd !important;
} }
table.jobTable div.queues { table.jobTable div.queues {
display: inline-block; display: inline-block;
@@ -1186,7 +1185,7 @@ div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > td {
background-color: #fff; background-color: #fff;
} }
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:nth-child(odd) > td { div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
div.Disco-AttachmentUpload-CommentDialog table > thead > tr > th, div.Disco-AttachmentUpload-CommentDialog table > thead > tr > th,
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > th { div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > th {
@@ -1194,10 +1193,7 @@ div.Disco-AttachmentUpload-CommentDialog table > tbody > tr > th {
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:hover > td { div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
div.Disco-AttachmentUpload-CommentDialog table > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > th, div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > th,
div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > td { div.Disco-AttachmentUpload-CommentDialog table > tfoot > tr > td {
+9
View File
@@ -257,6 +257,15 @@ header, #header {
a { a {
text-decoration: none; text-decoration: none;
} }
& > a.button {
position: absolute;
right: 30px;
bottom: 8px;
font-size: 0.5em;
line-height: 1em;
text-align: right;
}
} }
#layout_Page { #layout_Page {
File diff suppressed because one or more lines are too long
+2 -5
View File
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
File diff suppressed because one or more lines are too long
@@ -7,7 +7,7 @@
background-color: #fff; background-color: #fff;
} }
.tableData > tbody > tr:nth-child(odd) > td { .tableData > tbody > tr:nth-child(odd) > td {
background-color: #fcfcfc; background-color: #fbfbfb;
} }
.tableData > thead > tr > th, .tableData > thead > tr > th,
.tableData > tbody > tr > th { .tableData > tbody > tr > th {
@@ -15,10 +15,7 @@
border: solid 1px #f4f4f4; border: solid 1px #f4f4f4;
} }
.tableData > tbody > tr:hover > td { .tableData > tbody > tr:hover > td {
background-color: #fefefe; background-color: #f9f9f9;
}
.tableData > tbody > tr:hover:nth-child(odd) > td {
background-color: #fafafa;
} }
.tableData > tfoot > tr > th, .tableData > tfoot > tr > th,
.tableData > tfoot > tr > td { .tableData > tfoot > tr > td {
File diff suppressed because one or more lines are too long
@@ -107,6 +107,12 @@ namespace Disco.Web.Areas.API.Controllers
} }
[NonAction] [NonAction]
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public virtual System.Web.Mvc.ActionResult UpdateIsHidden()
{
return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateIsHidden);
}
[NonAction]
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public virtual System.Web.Mvc.ActionResult UpdateScope() public virtual System.Web.Mvc.ActionResult UpdateScope()
{ {
return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateScope); return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateScope);
@@ -195,6 +201,7 @@ namespace Disco.Web.Areas.API.Controllers
public readonly string UpdateOnGenerateExpression = "UpdateOnGenerateExpression"; public readonly string UpdateOnGenerateExpression = "UpdateOnGenerateExpression";
public readonly string UpdateOnImportAttachmentExpression = "UpdateOnImportAttachmentExpression"; public readonly string UpdateOnImportAttachmentExpression = "UpdateOnImportAttachmentExpression";
public readonly string UpdateFlattenForm = "UpdateFlattenForm"; public readonly string UpdateFlattenForm = "UpdateFlattenForm";
public readonly string UpdateIsHidden = "UpdateIsHidden";
public readonly string UpdateScope = "UpdateScope"; public readonly string UpdateScope = "UpdateScope";
public readonly string UpdateJobSubTypes = "UpdateJobSubTypes"; public readonly string UpdateJobSubTypes = "UpdateJobSubTypes";
public readonly string UpdateDevicesLinkedGroup = "UpdateDevicesLinkedGroup"; public readonly string UpdateDevicesLinkedGroup = "UpdateDevicesLinkedGroup";
@@ -220,6 +227,7 @@ namespace Disco.Web.Areas.API.Controllers
public const string UpdateOnGenerateExpression = "UpdateOnGenerateExpression"; public const string UpdateOnGenerateExpression = "UpdateOnGenerateExpression";
public const string UpdateOnImportAttachmentExpression = "UpdateOnImportAttachmentExpression"; public const string UpdateOnImportAttachmentExpression = "UpdateOnImportAttachmentExpression";
public const string UpdateFlattenForm = "UpdateFlattenForm"; public const string UpdateFlattenForm = "UpdateFlattenForm";
public const string UpdateIsHidden = "UpdateIsHidden";
public const string UpdateScope = "UpdateScope"; public const string UpdateScope = "UpdateScope";
public const string UpdateJobSubTypes = "UpdateJobSubTypes"; public const string UpdateJobSubTypes = "UpdateJobSubTypes";
public const string UpdateDevicesLinkedGroup = "UpdateDevicesLinkedGroup"; public const string UpdateDevicesLinkedGroup = "UpdateDevicesLinkedGroup";
@@ -314,6 +322,16 @@ namespace Disco.Web.Areas.API.Controllers
public readonly string FlattenForm = "FlattenForm"; public readonly string FlattenForm = "FlattenForm";
public readonly string redirect = "redirect"; public readonly string redirect = "redirect";
} }
static readonly ActionParamsClass_UpdateIsHidden s_params_UpdateIsHidden = new ActionParamsClass_UpdateIsHidden();
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public ActionParamsClass_UpdateIsHidden UpdateIsHiddenParams { get { return s_params_UpdateIsHidden; } }
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public class ActionParamsClass_UpdateIsHidden
{
public readonly string id = "id";
public readonly string IsHidden = "IsHidden";
public readonly string redirect = "redirect";
}
static readonly ActionParamsClass_UpdateScope s_params_UpdateScope = new ActionParamsClass_UpdateScope(); static readonly ActionParamsClass_UpdateScope s_params_UpdateScope = new ActionParamsClass_UpdateScope();
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public ActionParamsClass_UpdateScope UpdateScopeParams { get { return s_params_UpdateScope; } } public ActionParamsClass_UpdateScope UpdateScopeParams { get { return s_params_UpdateScope; } }
@@ -563,6 +581,20 @@ namespace Disco.Web.Areas.API.Controllers
return callInfo; return callInfo;
} }
[NonAction]
partial void UpdateIsHiddenOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, string id, string IsHidden, bool redirect);
[NonAction]
public override System.Web.Mvc.ActionResult UpdateIsHidden(string id, string IsHidden, bool redirect)
{
var callInfo = new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateIsHidden);
ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "id", id);
ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "IsHidden", IsHidden);
ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "redirect", redirect);
UpdateIsHiddenOverride(callInfo, id, IsHidden, redirect);
return callInfo;
}
[NonAction] [NonAction]
partial void UpdateScopeOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, string id, string Scope, bool redirect); partial void UpdateScopeOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, string id, string Scope, bool redirect);