From b576aec641138639dba11555ef8f78a07423ee56 Mon Sep 17 00:00:00 2001 From: Gary Sharp Date: Fri, 24 Nov 2023 11:57:13 +1100 Subject: [PATCH] feature: computer name template testing --- .editorconfig | 4 + .../Disco.Web.Extensions.csproj | 1 + .../MvcExtensions/JsonStatusCodeResult.cs | 28 + .../Controllers/DeviceProfileController.cs | 181 ++++- .../Areas/API/Controllers/SearchController.cs | 15 + .../TestComputerNameTemplateModel.cs | 23 + .../Config/Views/DeviceProfile/Show.cshtml | 247 +++++- .../Views/DeviceProfile/Show.generated.cs | 766 ++++++++++++------ Disco.Web/ClientSource/Style/Config.css | 22 +- Disco.Web/ClientSource/Style/Config.less | 23 +- Disco.Web/ClientSource/Style/Config.min.css | 2 +- Disco.Web/Disco.Web.csproj | 1 + .../API.DeviceProfileController.generated.cs | 32 + .../T4MVC/API.SearchController.generated.cs | 30 + Disco.Web/Extensions/T4MVC/T4MVC.cs | 4 +- Disco.sln | 21 +- 16 files changed, 1036 insertions(+), 364 deletions(-) create mode 100644 .editorconfig create mode 100644 Disco.Web.Extensions/MvcExtensions/JsonStatusCodeResult.cs create mode 100644 Disco.Web/Areas/API/Models/DeviceModel/TestComputerNameTemplateModel.cs diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..13f6b44b --- /dev/null +++ b/.editorconfig @@ -0,0 +1,4 @@ +[*.cs] + +# VSSpell001: Spell Check +dotnet_diagnostic.VSSpell001.severity = suggestion diff --git a/Disco.Web.Extensions/Disco.Web.Extensions.csproj b/Disco.Web.Extensions/Disco.Web.Extensions.csproj index 95559bbf..07550b17 100644 --- a/Disco.Web.Extensions/Disco.Web.Extensions.csproj +++ b/Disco.Web.Extensions/Disco.Web.Extensions.csproj @@ -107,6 +107,7 @@ + diff --git a/Disco.Web.Extensions/MvcExtensions/JsonStatusCodeResult.cs b/Disco.Web.Extensions/MvcExtensions/JsonStatusCodeResult.cs new file mode 100644 index 00000000..c19a114c --- /dev/null +++ b/Disco.Web.Extensions/MvcExtensions/JsonStatusCodeResult.cs @@ -0,0 +1,28 @@ +using Disco.Web.Extensions.MvcExtensions; +using System.Web.Mvc; + +namespace Disco.Web.Extensions.MvcExtensions +{ + public class JsonStatusCodeResult : JsonResult + { + public int StatusCode { get; set; } + + public override void ExecuteResult(ControllerContext context) + { + context.HttpContext.Response.TrySkipIisCustomErrors = true; + context.HttpContext.Response.StatusCode = StatusCode; + base.ExecuteResult(context); + } + } +} + +namespace Disco.Web +{ + public static class JsonStatusCodeResultExtensions + { + public static JsonStatusCodeResult JsonStatusCode(this Controller controller, int statusCode, object data) + { + return new JsonStatusCodeResult { StatusCode = statusCode, Data = data }; + } + } +} diff --git a/Disco.Web/Areas/API/Controllers/DeviceProfileController.cs b/Disco.Web/Areas/API/Controllers/DeviceProfileController.cs index b3c6fd9c..984cd7ea 100644 --- a/Disco.Web/Areas/API/Controllers/DeviceProfileController.cs +++ b/Disco.Web/Areas/API/Controllers/DeviceProfileController.cs @@ -2,16 +2,20 @@ using Disco.Services; using Disco.Services.Authorization; using Disco.Services.Devices.ManagedGroups; +using Disco.Services.Expressions; using Disco.Services.Interop.ActiveDirectory; using Disco.Services.Plugins; using Disco.Services.Plugins.Features.CertificateAuthorityProvider; using Disco.Services.Plugins.Features.CertificateProvider; using Disco.Services.Plugins.Features.WirelessProfileProvider; using Disco.Services.Tasks; +using Disco.Services.Users; using Disco.Services.Web; +using Disco.Web.Areas.API.Models.DeviceModel; using System; using System.Collections.Generic; using System.Linq; +using System.Text.RegularExpressions; using System.Web.Mvc; namespace Disco.Web.Areas.API.Controllers @@ -27,7 +31,6 @@ namespace Disco.Web.Areas.API.Controllers const string pWirelessProfileProviders = "wirelessprofileproviders"; const string pOrganisationalUnit = "organisationalunit"; const string pDefaultOrganisationAddress = "defaultorganisationaddress"; - const string pComputerNameTemplate = "computernametemplate"; const string pEnforceComputerNameConvention = "enforcecomputernameconvention"; const string pEnforceOrganisationalUnit = "enforceorganisationalunit"; const string pProvisionADAccount = "provisionadaccount"; @@ -37,7 +40,7 @@ namespace Disco.Web.Areas.API.Controllers const string pAssignedUsersLinkedGroup = "assigneduserslinkedgroup"; [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult Update(int id, string key, string value = null, Nullable redirect = null) + public virtual ActionResult Update(int id, string key, string value = null, bool? redirect = null) { Authorization.Require(Claims.Config.DeviceProfile.Configure); @@ -79,10 +82,6 @@ namespace Disco.Web.Areas.API.Controllers case pDefaultOrganisationAddress: UpdateDefaultOrganisationAddress(deviceProfile, value); break; - case pComputerNameTemplate: - Authorization.Require(Claims.Config.DeviceProfile.ConfigureComputerNameTemplate); - UpdateComputerNameTemplate(deviceProfile, value); - break; case pEnforceComputerNameConvention: UpdateEnforceComputerNameConvention(deviceProfile, value); break; @@ -129,91 +128,209 @@ namespace Disco.Web.Areas.API.Controllers #region Update Shortcut Methods [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateDescription(int id, string Description = null, Nullable redirect = null) + public virtual ActionResult UpdateDescription(int id, string Description = null, bool? redirect = null) { return Update(id, pDescription, Description, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateName(int id, string ProfileName = null, Nullable redirect = null) + public virtual ActionResult UpdateName(int id, string ProfileName = null, bool? redirect = null) { return Update(id, pName, ProfileName, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateShortName(int id, string ShortName = null, Nullable redirect = null) + public virtual ActionResult UpdateShortName(int id, string ShortName = null, bool? redirect = null) { return Update(id, pShortName, ShortName, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateDistributionType(int id, string DistributionType = null, Nullable redirect = null) + public virtual ActionResult UpdateDistributionType(int id, string DistributionType = null, bool? redirect = null) { return Update(id, pDistributionType, DistributionType, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateCertificateProviders(int id, string CertificateProviders = null, Nullable redirect = null) + public virtual ActionResult UpdateCertificateProviders(int id, string CertificateProviders = null, bool? redirect = null) { return Update(id, pCertificateProviders, CertificateProviders, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateCertificateAuthorityProviders(int id, string CertificateAuthorityProviders = null, Nullable redirect = null) + public virtual ActionResult UpdateCertificateAuthorityProviders(int id, string CertificateAuthorityProviders = null, bool? redirect = null) { return Update(id, pCertificateAuthorityProviders, CertificateAuthorityProviders, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateWirelessProfileProviders(int id, string WirelessProfileProviders = null, Nullable redirect = null) + public virtual ActionResult UpdateWirelessProfileProviders(int id, string WirelessProfileProviders = null, bool? redirect = null) { return Update(id, pWirelessProfileProviders, WirelessProfileProviders, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateOrganisationalUnit(int id, string OrganisationalUnit = null, Nullable redirect = null) + public virtual ActionResult UpdateOrganisationalUnit(int id, string OrganisationalUnit = null, bool? redirect = null) { return Update(id, pOrganisationalUnit, OrganisationalUnit, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateDefaultOrganisationAddress(int id, string DefaultOrganisationAddress = null, Nullable redirect = null) + public virtual ActionResult UpdateDefaultOrganisationAddress(int id, string DefaultOrganisationAddress = null, bool? redirect = null) { return Update(id, pDefaultOrganisationAddress, DefaultOrganisationAddress, redirect); } [DiscoAuthorizeAll(Claims.Config.DeviceProfile.Configure, Claims.Config.DeviceProfile.ConfigureComputerNameTemplate)] - public virtual ActionResult UpdateComputerNameTemplate(int id, string ComputerNameTemplate = null, Nullable redirect = null) + [ValidateAntiForgeryToken] + public virtual ActionResult UpdateComputerNameTemplate(int id, string ComputerNameTemplate = null, bool? redirect = null) { - return Update(id, pComputerNameTemplate, ComputerNameTemplate, redirect); + var deviceProfile = Database.DeviceProfiles.Find(id); + + if (deviceProfile == null) + throw new ArgumentException("Invalid Device Profile Id", nameof(id)); + + if (string.IsNullOrWhiteSpace(ComputerNameTemplate)) + throw new Exception("ComputerNameTemplate is Required"); + + var expression = new EvaluateExpressionPart(ComputerNameTemplate); + if (expression.ParseError) + { + return this.JsonStatusCode(400, expression.ParseErrorMessage); + } + + deviceProfile.ComputerNameTemplate = ComputerNameTemplate; + + Database.SaveChanges(); + + deviceProfile.ComputerNameInvalidateCache(); + + if (redirect.GetValueOrDefault(false)) + return RedirectToAction(MVC.Config.DeviceProfile.Index(deviceProfile.Id)); + else + return Json("OK"); + } + + [DiscoAuthorizeAll(Claims.Config.DeviceProfile.Configure, Claims.Config.DeviceProfile.ConfigureComputerNameTemplate)] + [ValidateAntiForgeryToken] + public virtual ActionResult TestComputerNameTemplate(int id, string ComputerNameTemplate = null, string UserSpecifiedDeviceSerialNumber = null) + { + Database.Configuration.LazyLoadingEnabled = true; + var deviceProfile = Database.DeviceProfiles.Find(id); + + if (deviceProfile == null) + throw new ArgumentException("Invalid Device Profile Id", nameof(id)); + + if (string.IsNullOrWhiteSpace(ComputerNameTemplate)) + throw new Exception("ComputerNameTemplate is Required"); + + var expression = Expression.TokenizeSingleDynamic(null, ComputerNameTemplate, 0); + if (expression.First().ParseError) + { + return this.JsonStatusCode(400, expression.First().ParseErrorMessage); + } + + var result = new TestComputerNameTemplateModel() + { + DeviceProfileId = deviceProfile.Id, + ComputerNameTemplate = ComputerNameTemplate, + }; + + TestComputerNameTemplateModel.TestComputerNameTemplateResultModel evaluateDevice(Disco.Models.Repository.Device device) + { + var evaluatorVariables = Expression.StandardVariables(null, Database, UserService.CurrentUser, DateTime.Now, null, device); + var deviceResult = new TestComputerNameTemplateModel.TestComputerNameTemplateResultModel() + { + DeviceSerialNumber = device.SerialNumber, + DeviceComputerName = device.ComputerName, + }; + try + { + var rendered = expression.EvaluateFirst(device, evaluatorVariables); + deviceResult.Url = Url.Action(MVC.Device.Show(device.SerialNumber)); + deviceResult.RenderedComputerName = rendered; + deviceResult.Success = true; + + if (string.IsNullOrWhiteSpace(rendered)) + { + deviceResult.Success = false; + deviceResult.ErrorMessage = "Rendered computer name is null or blank"; + } + else + { + if (rendered.Length > 15) + { + deviceResult.Success = false; + deviceResult.ErrorMessage = "Must be no more than 15 characters"; + } + var invalidCharacters = Regex.Matches(rendered, @"[^a-z0-9\-]", RegexOptions.IgnoreCase); + if (invalidCharacters.Count > 0) + { + deviceResult.Success = false; + deviceResult.ErrorMessage = $"Invalid characters: {string.Join(" ", invalidCharacters.Cast().Select(m => m.Value.Replace(" ", "{space}")).Distinct())}"; + } + } + + } + catch (Exception ex) + { + deviceResult.Success = false; + deviceResult.ErrorMessage = $"{ex.Message} [{ex.GetType().Name}]"; + } + return deviceResult; + } + + if (!string.IsNullOrWhiteSpace(UserSpecifiedDeviceSerialNumber)) + { + var device = Database.Devices.FirstOrDefault(d => d.SerialNumber == UserSpecifiedDeviceSerialNumber); + if (device == null) + return this.JsonStatusCode(400, "Invalid user-specified device serial number"); + result.UserSpecifiedResult = evaluateDevice(device); + } + + result.RandomDeviceResults = Database.Devices + .Where(d => d.DeviceProfileId == deviceProfile.Id && d.SerialNumber != UserSpecifiedDeviceSerialNumber) + .OrderBy(d => Guid.NewGuid()) + .Take(6) + .ToList() + .Select(d => evaluateDevice(d)) + .ToList(); + + if (result.UserSpecifiedResult == null && result.RandomDeviceResults.Count > 0) + { + result.UserSpecifiedResult = result.RandomDeviceResults.First(); + result.RandomDeviceResults.RemoveAt(0); + } + + return Json(result); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateEnforceComputerNameConvention(int id, string EnforceComputerNameConvention = null, Nullable redirect = null) + public virtual ActionResult UpdateEnforceComputerNameConvention(int id, string EnforceComputerNameConvention = null, bool? redirect = null) { return Update(id, pEnforceComputerNameConvention, EnforceComputerNameConvention, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateEnforceOrganisationalUnit(int id, string EnforceOrganisationalUnit = null, Nullable redirect = null) + public virtual ActionResult UpdateEnforceOrganisationalUnit(int id, string EnforceOrganisationalUnit = null, bool? redirect = null) { return Update(id, pEnforceOrganisationalUnit, EnforceOrganisationalUnit, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateProvisionADAccount(int id, string ProvisionADAccount = null, Nullable redirect = null) + public virtual ActionResult UpdateProvisionADAccount(int id, string ProvisionADAccount = null, bool? redirect = null) { return Update(id, pProvisionADAccount, ProvisionADAccount, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateAssignedUserLocalAdmin(int id, string AssignedUserLocalAdmin = null, Nullable redirect = null) + public virtual ActionResult UpdateAssignedUserLocalAdmin(int id, string AssignedUserLocalAdmin = null, bool? redirect = null) { return Update(id, pAssignedUserLocalAdmin, AssignedUserLocalAdmin, redirect); } [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] - public virtual ActionResult UpdateAllowUntrustedReimageJobEnrolment(int id, string AllowUntrustedReimageJobEnrolment = null, Nullable redirect = null) + public virtual ActionResult UpdateAllowUntrustedReimageJobEnrolment(int id, string AllowUntrustedReimageJobEnrolment = null, bool? redirect = null) { return Update(id, pAllowUntrustedReimageJobEnrolment, AllowUntrustedReimageJobEnrolment, redirect); } @@ -444,20 +561,6 @@ namespace Disco.Web.Areas.API.Controllers } } - private void UpdateComputerNameTemplate(DeviceProfile deviceProfile, string ComputerNameTemplate) - { - Authorization.Require(Claims.Config.DeviceProfile.ConfigureComputerNameTemplate); - - if (string.IsNullOrWhiteSpace(ComputerNameTemplate)) - throw new Exception("ComputerNameTemplate is Required"); - - deviceProfile.ComputerNameTemplate = ComputerNameTemplate; - - Database.SaveChanges(); - - deviceProfile.ComputerNameInvalidateCache(); - } - private void UpdateDefaultOrganisationAddress(DeviceProfile deviceProfile, string DefaultOrganisationAddress) { if (string.IsNullOrEmpty(DefaultOrganisationAddress)) @@ -593,7 +696,7 @@ namespace Disco.Web.Areas.API.Controllers #region Actions [DiscoAuthorize(Claims.Config.DeviceProfile.Delete)] - public virtual ActionResult Delete(int id, Nullable redirect = false) + public virtual ActionResult Delete(int id, bool? redirect = false) { try { @@ -623,7 +726,7 @@ namespace Disco.Web.Areas.API.Controllers #region Defaults [DiscoAuthorize(Claims.Config.DeviceProfile.ConfigureDefaults)] - public virtual ActionResult Default(int id, Nullable redirect = null) + public virtual ActionResult Default(int id, bool? redirect = null) { try { @@ -649,7 +752,7 @@ namespace Disco.Web.Areas.API.Controllers } [DiscoAuthorize(Claims.Config.DeviceProfile.ConfigureDefaults)] - public virtual ActionResult DefaultAddDeviceOffline(int id, Nullable redirect = false) + public virtual ActionResult DefaultAddDeviceOffline(int id, bool? redirect = false) { try { diff --git a/Disco.Web/Areas/API/Controllers/SearchController.cs b/Disco.Web/Areas/API/Controllers/SearchController.cs index 97c8e3a7..9aa98693 100644 --- a/Disco.Web/Areas/API/Controllers/SearchController.cs +++ b/Disco.Web/Areas/API/Controllers/SearchController.cs @@ -69,5 +69,20 @@ namespace Disco.Web.Areas.API.Controllers return Json(results, JsonRequestBehavior.AllowGet); } + + [DiscoAuthorize(Claims.Device.Search)] + public virtual ActionResult Devices(string Term, int Limit = 15) + { + if (string.IsNullOrWhiteSpace(Term)) + throw new ArgumentNullException("Term", "The search query term is required"); + if (Term.Length < 2) + throw new ArgumentException("The search query term must be at least two characters", "Term"); + if (Limit < 1) + throw new ArgumentException("The search query limit cannot be less than 1", "Limit"); + + var results = Search.SearchDevices(Database, Term, Limit); + + return Json(results, JsonRequestBehavior.AllowGet); + } } } diff --git a/Disco.Web/Areas/API/Models/DeviceModel/TestComputerNameTemplateModel.cs b/Disco.Web/Areas/API/Models/DeviceModel/TestComputerNameTemplateModel.cs new file mode 100644 index 00000000..05eb5808 --- /dev/null +++ b/Disco.Web/Areas/API/Models/DeviceModel/TestComputerNameTemplateModel.cs @@ -0,0 +1,23 @@ +using System.Collections.Generic; + +namespace Disco.Web.Areas.API.Models.DeviceModel +{ + public class TestComputerNameTemplateModel + { + public int DeviceProfileId { get; set; } + public string ComputerNameTemplate { get; set; } + public TestComputerNameTemplateResultModel UserSpecifiedResult { get; set; } + public List RandomDeviceResults { get; set; } + + public class TestComputerNameTemplateResultModel + { + public string DeviceSerialNumber { get; set; } + public bool Success { get; set; } + public string ErrorMessage { get; set; } + public string DeviceComputerName { get; set; } + public string RenderedComputerName { get; set; } + public string Url { get; set; } + } + + } +} diff --git a/Disco.Web/Areas/Config/Views/DeviceProfile/Show.cshtml b/Disco.Web/Areas/Config/Views/DeviceProfile/Show.cshtml index 78785cf5..5508711e 100644 --- a/Disco.Web/Areas/Config/Views/DeviceProfile/Show.cshtml +++ b/Disco.Web/Areas/Config/Views/DeviceProfile/Show.cshtml @@ -295,47 +295,228 @@ Template Expression: +
+ @if (string.IsNullOrWhiteSpace(Model.DeviceProfile.ComputerNameTemplate)) + { + <None Specified> + } + else + { + @Model.DeviceProfile.ComputerNameTemplate + } +
@if (canConfig && canConfigExpression) { - @Html.EditorFor(model => model.DeviceProfile.ComputerNameTemplate) - @AjaxHelpers.AjaxSave() - @AjaxHelpers.AjaxLoader() -   + Change@AjaxHelpers.AjaxLoader() +
+ @using (Html.BeginForm(MVC.API.DeviceProfile.UpdateComputerNameTemplate(Model.DeviceProfile.Id, null, false))) + { + @Html.AntiForgeryToken() + @Html.TextArea("ComputerNameTemplate", Model.DeviceProfile.ComputerNameTemplate, new { spellcheck = "false", required = "required" }) + } + + + @AjaxHelpers.AjaxLoader() +
} - else - { -
- @if (string.IsNullOrWhiteSpace(Model.DeviceProfile.ComputerNameTemplate)) - { - <None Specified> - } - else - { - @Model.DeviceProfile.ComputerNameTemplate - } -
- }
@if (canConfig) { diff --git a/Disco.Web/Areas/Config/Views/DeviceProfile/Show.generated.cs b/Disco.Web/Areas/Config/Views/DeviceProfile/Show.generated.cs index 6c92ed5e..ccfb7406 100644 --- a/Disco.Web/Areas/Config/Views/DeviceProfile/Show.generated.cs +++ b/Disco.Web/Areas/Config/Views/DeviceProfile/Show.generated.cs @@ -1124,126 +1124,7 @@ WriteLiteral(@">When enabled an untrusted device enrolment will be allowed i Template Expression: -"); - - - #line 298 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - - - #line default - #line hidden - - #line 298 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - if (canConfig && canConfigExpression) - { - - - #line default - #line hidden - - #line 300 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - Write(Html.EditorFor(model => model.DeviceProfile.ComputerNameTemplate)); - - - #line default - #line hidden - - #line 300 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - - - - #line default - #line hidden - - #line 301 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - Write(AjaxHelpers.AjaxSave()); - - - #line default - #line hidden - - #line 301 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - - - - #line default - #line hidden - - #line 302 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - Write(AjaxHelpers.AjaxLoader()); - - - #line default - #line hidden - - #line 302 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - - - - #line default - #line hidden -WriteLiteral(" (Url.Action(MVC.Config.DocumentTemplate.ExpressionBrowser()) - - #line default - #line hidden -, 14678), false) -); - -WriteLiteral("> \r\n"); - -WriteLiteral(" - $(function () { - var field = $('#DeviceProfile_ComputerNameTemplate'); - var fieldOriginalWidth, fieldOriginalHeight; - - document.DiscoFunctions.PropertyChangeHelper( - field, - 'None', - '"); - - - #line 312 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - Write(Url.Action(MVC.API.DeviceProfile.UpdateComputerNameTemplate(Model.DeviceProfile.Id))); - - - #line default - #line hidden -WriteLiteral(@"', - 'ComputerNameTemplate' - ); - - field.focus(function () { - fieldOriginalWidth = field.width(); - fieldOriginalHeight = field.height(); - field.css('overflow', 'visible').animate({ width: field.parent().width() - 52, height: 75 }, 200); - }).blur(function () { - field.css('overflow', 'hidden').animate({ width: fieldOriginalWidth, height: fieldOriginalHeight }, 200); - }).attr('placeholder', 'None').attr('spellcheck', 'false'); - }); - -"); - - - #line 325 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - } - else - { - - - #line default - #line hidden -WriteLiteral(" \r\n"); - #line 329 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - + #line 299 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line default #line hidden - #line 329 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - if (string.IsNullOrWhiteSpace(Model.DeviceProfile.ComputerNameTemplate)) - { + #line 299 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + if (string.IsNullOrWhiteSpace(Model.DeviceProfile.ComputerNameTemplate)) + { #line default #line hidden -WriteLiteral(" <None Specified>\r\n"); - #line 332 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - } - else + #line 302 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + } + else + { + + + #line default + #line hidden + + #line 305 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(Model.DeviceProfile.ComputerNameTemplate); + + + #line default + #line hidden + + #line 305 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + } + + + #line default + #line hidden +WriteLiteral("
\r\n"); + + + #line 308 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + + #line default + #line hidden + + #line 308 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + if (canConfig && canConfigExpression) + { + + + #line default + #line hidden +WriteLiteral(" Change"); + + + #line 310 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + + #line default + #line hidden + + #line 310 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(AjaxHelpers.AjaxLoader()); + + + #line default + #line hidden + + #line 310 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + + + #line default + #line hidden +WriteLiteral(" \r\n"); + + + #line 312 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + + #line default + #line hidden + + #line 312 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + using (Html.BeginForm(MVC.API.DeviceProfile.UpdateComputerNameTemplate(Model.DeviceProfile.Id, null, false))) { #line default #line hidden - #line 335 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - Write(Model.DeviceProfile.ComputerNameTemplate); + #line 314 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(Html.AntiForgeryToken()); #line default #line hidden - #line 335 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" - + #line 314 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + + + #line default + #line hidden + + #line 315 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(Html.TextArea("ComputerNameTemplate", Model.DeviceProfile.ComputerNameTemplate, new { spellcheck = "false", required = "required" })); + + + #line default + #line hidden + + #line 315 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + } #line default #line hidden -WriteLiteral(" \r\n"); +WriteLiteral(" \r\n \r\n \r\n"); - #line 338 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 320 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + + + #line default + #line hidden + + #line 320 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + using (Html.BeginForm(MVC.API.DeviceProfile.TestComputerNameTemplate(Model.DeviceProfile.Id))) + { + + + #line default + #line hidden + + #line 322 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(Html.AntiForgeryToken()); + + + #line default + #line hidden + + #line 322 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + ; + + + #line default + #line hidden +WriteLiteral(" + + + Serial Number + Current + Result + + + + + + + +   +   + + + +"); + + + #line 341 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + } + + + #line default + #line hidden +WriteLiteral(" \r\n Test Template"); + + + #line 343 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(AjaxHelpers.AjaxLoader()); + + + #line default + #line hidden +WriteLiteral("\r\n \r\n"); + +WriteLiteral(" + $(() => { + let $dialog = null; + let $textarea = null; + let currentValue = null; + + $('#changeComputerNameTemplate').click(e => { + e.preventDefault(); + + if (!$dialog) { + $textarea = $('#ComputerNameTemplate'); + currentValue = $textarea.val(); + $dialog = $('#dialogComputerNameTemplate').dialog({ + autoOpen: false, + buttons: null, + draggable: false, + modal: true, + resizable: false, + width: 700, + buttons: { + ""Cancel"": () => { + $textarea.val(currentValue); + $dialog.find('.error').addClass('hidden'); + $dialog.dialog(""close""); + }, + ""Expression Browser"": () => { + window.open('"); + + + #line 371 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(Url.Action(MVC.Config.DocumentTemplate.ExpressionBrowser())); + + + #line default + #line hidden +WriteLiteral("\', \'_blank\');\r\n },\r\n " + +" \"Save\": () => {\r\n " + +" const $form = $textarea.closest(\'form\');\r\n " + +" $(this).find(\'.error\').addClass(\'hidden\');\r\n\r\n " + +" if ($form[0].reportValidity()) {\r\n " + +" const body = new FormData($form[0]);\r\n " + +" const url = $form.attr(\'actio" + +"n\');\r\n\r\n const $ajaxLoading =" + +" $(\'#changeComputerNameTemplate\').nextAll(\'.ajaxLoading\').first();\r\n " + +" $ajaxLoading.show();\r\n " + +" $dialog.dialog(\'close\');\r\n\r\n " + +" fetch(url, {\r\n " + +" method: \'POST\',\r\n " + +" body: body\r\n " + +" }).then(response => {\r\n " + +"if (response.ok) {\r\n " + +"currentValue = $textarea.val();\r\n " + +" const $display = $(\'#displayComputerNameTemplate\');\r\n " + +" if (currentValue) {\r\n " + +" $display.text(currentValue);\r" + +"\n } else {\r\n " + +" $display.html(\'<None Specified>\');\r\n " + +" }\r\n " + +" $ajaxLoading.hide().next(\'.ajaxOk\').show().delay(\'fast\').fadeOut(\'" + +"slow\');\r\n } else if (resp" + +"onse.status == 400) {\r\n " + +" response.json().then(data => {\r\n " + +" $ajaxLoading.hide();\r\n " + +" $dialog.dialog(\'open\');\r\n " + +" $dialog.find(\'.error\').text(data).removeClass(" + +"\'hidden\');\r\n cons" + +"ole.error(data);\r\n })" + +"\r\n }\r\n " + +" }).catch(error => {\r\n " + +" alert(\'Unable to save computer name template\');\r\n " + +" $ajaxLoading.hide();\r\n " + +" $dialog.dialog(\'open\');\r\n " + +" $dialog.find(\'.error\').tex" + +"t(\'Unable to save computer name template: \' + error).removeClass(\'hidden\');\r\n " + +" console.error(error);\r\n " + +" });\r\n " + +" }\r\n }\r\n " + +" }\r\n });\r\n " + +" const $buttonTest = $dialog.find(\'#ComputerNameTe" + +"mplateTest\');\r\n $buttonTest.click(e => {\r\n " + +" e.preventDefault();\r\n " + +" const $test = $dialog.find(\'.test\');\r\n\r\n " + +" const $ajaxLoading = $(e.currentTarget).nextAll(\'.ajaxLoading\'" + +").first();\r\n $ajaxLoading.show();\r\n\r\n " + +" const $form = $test.find(\'form\');\r\n " + +" const url = $form.attr(\'action\');\r\n " + +" const body = new FormData($form[0]);\r\n " + +" body.append(\'ComputerNameTemplate\', $textarea.val());\r\n\r" + +"\n fetch(url, {\r\n " + +" method: \'POST\',\r\n " + +"body: body\r\n }).then(response => {\r\n " + +" if (response.ok) {\r\n " + +" response.json().then(data => {\r\n " + +" const $table = $test.find(\'table tbody\');\r\n " + +" if (data.UserSpecifiedResult) {\r\n " + +" const result = data.UserS" + +"pecifiedResult;\r\n const r" + +"ow = $table.find(\'tr\').first();\r\n " + +" row.find(\'input\').val(result.DeviceSerialNumber);\r\n " + +" const columns = row.find(\'td\');\r\n " + +" columns.eq(1).html(\'\');\r\n " + +" $(\'\').text(resu" + +"lt.DeviceComputerName)\r\n " + +" .appendTo(columns.eq(1))\r\n " + +" columns.eq(2).html(\'\');\r\n " + +" $(\'\').text(result.RenderedComputerName)\r\n " + +" .appendTo(columns.eq(2))\r\n " + +" if (!result.Success) {\r\n " + +" $(\'
\').text(result.ErrorMessage).appendTo(columns[2]);\r" + +"\n }\r\n " + +" }\r\n " + +" if (data.RandomDeviceResults) {\r\n " + +" $table.find(\'tr\').slice(1).remove();\r\n " + +" for (var i = 0; i < data.RandomDeviceResults.lengt" + +"h; i++) {\r\n const res" + +"ult = data.RandomDeviceResults[i];\r\n " + +" const row = $(\'\');\r\n " + +" const columns = row.find(\'td" + +"\');\r\n $(\'\').attr({" + +"\r\n href: result.U" + +"rl,\r\n target: \'_b" + +"lank\'\r\n }).text(resul" + +"t.DeviceSerialNumber)\r\n " + +" .appendTo(columns.eq(0));\r\n " + +" $(\'\').text(result.DeviceComputerName)\r\n " + +" .appendTo(columns.eq(1))" + +"\r\n $(\'\').text(result.RenderedComputerName)\r\n " + +" .appendTo(columns.eq(2))\r\n " + +" if (!result.Success) {\r\n " + +" $(\'
\').text(result.ErrorMessage).appendTo(columns.eq(2));\r\n " + +" }\r\n " + +" row.appendTo($table);\r\n " + +" }\r\n " + +" }\r\n $test.removeClass" + +"(\'hidden\');\r\n $ajaxLoading.hi" + +"de().next(\'.ajaxOk\').show().delay(\'fast\').fadeOut(\'slow\');\r\n " + +" });\r\n } e" + +"lse if (response.status == 400) {\r\n " + +" response.json().then(data => {\r\n " + +" $ajaxLoading.hide();\r\n " + +" $test.addClass(\'hidden\');\r\n " + +"$dialog.find(\'.error\').text(data).removeClass(\'hidden\');\r\n " + +" console.error(data);\r\n " + +" })\r\n }\r\n " + +" }).catch(error => {\r\n " + +" $ajaxLoading.hide();\r\n " + +" $test.addClass(\'hidden\');\r\n $dialog" + +".find(\'.error\').text(\'Unable to test computer name template: \' + error).removeCl" + +"ass(\'hidden\');\r\n console.error(error)" + +";\r\n });\r\n\r\n " + +" return false;\r\n })\r\n " + +" const $testSearchText = $dialog.find(\'#ComputerNameTemplate" + +"TestSearch\');\r\n $testSearchText.autocomplete(" + +"{\r\n source: \'"); + + + #line 495 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + Write(Url.Action(MVC.API.Search.Devices())); + + + #line default + #line hidden +WriteLiteral(@"', + minLength: 2, + focus: function (e, ui) { + $testSearchText.val(ui.item.Id); + return false; + }, + select: function (e, ui) { + $testSearchText.val(ui.item.Id).blur(); + $buttonTest.click(); + return false; + } + }).data('ui-autocomplete')._renderItem = function (ul, item) { + return $('
  • ') + .data('item.autocomplete', item) + .append($('').text(item.Description)) + .appendTo(ul); + }; + } + $dialog.dialog('open'); + + return false; + }); + }); + +"); + + + #line 519 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1311,13 +1585,13 @@ WriteLiteral(" style=\"margin-top: 8px;\""); WriteLiteral(">\r\n"); - #line 340 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 521 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 340 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 521 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig) { @@ -1333,7 +1607,7 @@ WriteLiteral(" type=\"checkbox\""); WriteLiteral(" "); - #line 342 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 523 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); @@ -1353,7 +1627,7 @@ WriteLiteral(@"> '"); - #line 348 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 529 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.DeviceProfile.UpdateEnforceComputerNameConvention(Model.DeviceProfile.Id))); @@ -1364,7 +1638,7 @@ WriteLiteral("\',\r\n \'EnforceComputerNameCo " \r\n"); - #line 353 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 534 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else { @@ -1381,7 +1655,7 @@ WriteLiteral(" type=\"checkbox\""); WriteLiteral(" "); - #line 356 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 537 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); @@ -1390,7 +1664,7 @@ WriteLiteral(" "); WriteLiteral(" disabled=\"disabled\" />\r\n"); - #line 357 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 538 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1406,7 +1680,7 @@ WriteLiteral(">\r\n Enforce Naming Convention\r\n WriteLiteral(" "); - #line 361 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 542 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(AjaxHelpers.AjaxLoader()); @@ -1438,13 +1712,13 @@ WriteLiteral(@">Computer names are only changed when Active Directory accoun "); - #line 376 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 557 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 376 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 557 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig) { @@ -1460,7 +1734,7 @@ WriteLiteral(" class=\"code\""); WriteLiteral(" data-value=\""); - #line 378 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 559 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.DeviceProfile.OrganisationalUnit); @@ -1473,7 +1747,7 @@ WriteLiteral(">\r\n \r\n"); WriteLiteral(" "); - #line 380 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 561 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.FriendlyOrganisationalUnitName); @@ -1492,20 +1766,20 @@ WriteLiteral(" class=\"button small\""); WriteLiteral(">Change"); - #line 383 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 564 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 383 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 564 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(AjaxHelpers.AjaxLoader()); #line default #line hidden - #line 383 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 564 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" @@ -1528,7 +1802,7 @@ WriteLiteral(">\r\n"); WriteLiteral(" "); - #line 386 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 567 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(AjaxHelpers.AjaxLoader()); @@ -1551,7 +1825,7 @@ WriteLiteral(">\r\n $(function () {\r\n "Url = \'"); - #line 393 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 574 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.DeviceProfile.UpdateOrganisationalUnit(Model.DeviceProfile.Id, null, true))); @@ -1596,7 +1870,7 @@ WriteLiteral("\';\r\n var ouValue = $(\'#DeviceProfil " $.getJSON(\'"); - #line 443 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 624 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.System.DomainOrganisationalUnits())); @@ -1645,7 +1919,7 @@ WriteLiteral("\', null, function (data) {\r\n " });\r\n \r\n"); - #line 503 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 684 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else { @@ -1664,7 +1938,7 @@ WriteLiteral(">\r\n \r\n"); WriteLiteral(" "); - #line 508 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 689 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.FriendlyOrganisationalUnitName); @@ -1673,7 +1947,7 @@ WriteLiteral(" "); WriteLiteral("\r\n \r\n
  • \r\n"); - #line 511 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 692 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1686,13 +1960,13 @@ WriteLiteral(" style=\"margin-top: 8px;\""); WriteLiteral(">\r\n"); - #line 513 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 694 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 513 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 694 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig) { @@ -1708,7 +1982,7 @@ WriteLiteral(" type=\"checkbox\""); WriteLiteral(" "); - #line 515 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 696 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); @@ -1728,7 +2002,7 @@ WriteLiteral(@"> '"); - #line 521 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 702 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.DeviceProfile.UpdateEnforceOrganisationalUnit(Model.DeviceProfile.Id))); @@ -1739,7 +2013,7 @@ WriteLiteral("\',\r\n \'EnforceOrganisational " \r\n"); - #line 526 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 707 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else { @@ -1756,7 +2030,7 @@ WriteLiteral(" type=\"checkbox\""); WriteLiteral(" "); - #line 529 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 710 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); @@ -1765,7 +2039,7 @@ WriteLiteral(" "); WriteLiteral(" disabled=\"disabled\" />\r\n"); - #line 530 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 711 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1781,7 +2055,7 @@ WriteLiteral(">\r\n Enforce Organisational Unit\r\n WriteLiteral(" "); - #line 534 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 715 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(AjaxHelpers.AjaxLoader()); @@ -1812,13 +2086,13 @@ WriteLiteral(@">When an Active Directory account is provisioned it will be p "); - #line 548 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 729 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 548 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 729 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && (Model.CertificateProviders.Count > 0 || Model.CertificateAuthorityProviders.Count > 0)) { @@ -1828,20 +2102,20 @@ WriteLiteral(@">When an Active Directory account is provisioned it will be p WriteLiteral("
    \r\n"); - #line 551 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 732 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 551 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 732 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(AjaxHelpers.AjaxLoader("DeviceProfile_CertificateProviders")); #line default #line hidden - #line 551 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 732 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1851,7 +2125,7 @@ WriteLiteral("
    \r\n"); WriteLiteral(" "); - #line 553 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 734 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && Model.CertificateProviders.Count > 0) { @@ -1875,7 +2149,7 @@ WriteLiteral(@"> $.getJSON('"); - #line 565 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 746 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.DeviceProfile.UpdateCertificateProviders(Model.DeviceProfile.Id))); @@ -1895,7 +2169,7 @@ WriteLiteral(@"', data, function (response, result) { "); - #line 576 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 757 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1904,7 +2178,7 @@ WriteLiteral(@"', data, function (response, result) { WriteLiteral(" "); - #line 577 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 758 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && Model.CertificateProviders.Count > 0) { @@ -1928,7 +2202,7 @@ WriteLiteral(@"> $.getJSON('"); - #line 589 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 770 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.DeviceProfile.UpdateCertificateAuthorityProviders(Model.DeviceProfile.Id))); @@ -1948,7 +2222,7 @@ WriteLiteral(@"', data, function (response, result) { "); - #line 600 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 781 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -1958,13 +2232,13 @@ WriteLiteral(" \r\n \r\n

    Devic "tes

    \r\n"); - #line 604 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 785 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 604 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 785 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && Model.CertificateProviders.Count > 0) { @@ -1972,14 +2246,14 @@ WriteLiteral(" \r\n \r\n

    Devic #line default #line hidden - #line 606 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 787 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(CommonHelpers.CheckBoxList("DeviceProfile_CertificateProviders", "DeviceProfile_CertificateProviders", Model.CertificateProviders.ToSelectListItems(Model.DeviceProfile.GetCertificateProviders()))); #line default #line hidden - #line 606 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 787 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else @@ -1999,7 +2273,7 @@ WriteLiteral(" class=\"smallMessage\""); WriteLiteral("><None Allocated>\r\n"); - #line 615 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 796 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else { @@ -2010,13 +2284,13 @@ WriteLiteral("><None Allocated>\r\n"); WriteLiteral("
      \r\n"); - #line 619 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 800 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 619 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 800 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" foreach (var certificateProvider in certificateProviders) { @@ -2026,7 +2300,7 @@ WriteLiteral("
        \r\n"); WriteLiteral("
      • "); - #line 621 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 802 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(certificateProvider.Name); @@ -2035,7 +2309,7 @@ WriteLiteral("
      • "); WriteLiteral("
      • \r\n"); - #line 622 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 803 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2044,7 +2318,7 @@ WriteLiteral("\r\n"); WriteLiteral("
      \r\n"); - #line 624 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 805 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } } @@ -2058,13 +2332,13 @@ WriteLiteral(" style=\"margin-top: 4px;\""); WriteLiteral(">Authority Certificates

    \r\n"); - #line 627 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 808 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 627 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 808 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && Model.CertificateAuthorityProviders.Count > 0) { @@ -2072,14 +2346,14 @@ WriteLiteral(">Authority Certificates\r\n"); #line default #line hidden - #line 629 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 810 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(CommonHelpers.CheckBoxList("DeviceProfile_CertificateAuthorityProviders", "DeviceProfile_CertificateAuthorityProviders", Model.CertificateAuthorityProviders.ToSelectListItems(Model.DeviceProfile.GetCertificateAuthorityProviders()))); #line default #line hidden - #line 629 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 810 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else @@ -2099,7 +2373,7 @@ WriteLiteral(" class=\"smallMessage\""); WriteLiteral("><None Allocated>\r\n"); - #line 638 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 819 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else { @@ -2110,13 +2384,13 @@ WriteLiteral("><None Allocated>\r\n"); WriteLiteral("
      \r\n"); - #line 642 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 823 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 642 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 823 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" foreach (var certificateProvider in certificateProviders) { @@ -2126,7 +2400,7 @@ WriteLiteral("
        \r\n"); WriteLiteral("
      • "); - #line 644 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 825 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(certificateProvider.Name); @@ -2135,7 +2409,7 @@ WriteLiteral("
      • "); WriteLiteral("
      • \r\n"); - #line 645 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 826 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2144,7 +2418,7 @@ WriteLiteral("\r\n"); WriteLiteral("
      \r\n"); - #line 647 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 828 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } } @@ -2154,7 +2428,7 @@ WriteLiteral("
    \r\n"); WriteLiteral(" "); - #line 649 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 830 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canViewPlugins) { @@ -2175,21 +2449,21 @@ WriteLiteral(" class=\"fa fa-info-circle\""); WriteLiteral(">View the (Url.Action(MVC.Config.Plugins.Install()) + #line 834 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" +, Tuple.Create(Tuple.Create("", 47702), Tuple.Create(Url.Action(MVC.Config.Plugins.Install()) #line default #line hidden -, 34325), false) +, 47702), false) ); WriteLiteral(">Plugin Catalogue to discover and install certificate provider plugins.\r\n " + "

    \r\n
    \r\n"); - #line 656 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 837 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2199,13 +2473,13 @@ WriteLiteral(" \r\n \r\n \r\n " Provision Wireless Profiles:\r\n"); - #line 662 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 843 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 662 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 843 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && Model.WirelessProfileProviders.Count > 0) { @@ -2215,20 +2489,20 @@ WriteLiteral(" \r\n \r\n \r\n WriteLiteral("
    \r\n"); - #line 665 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 846 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 665 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 846 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(AjaxHelpers.AjaxLoader("DeviceProfile_WirelessProfileProviders")); #line default #line hidden - #line 665 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 846 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" @@ -2251,7 +2525,7 @@ WriteLiteral(@"> $.getJSON('"); - #line 676 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 857 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Url.Action(MVC.API.DeviceProfile.UpdateWirelessProfileProviders(Model.DeviceProfile.Id))); @@ -2271,7 +2545,7 @@ WriteLiteral(@"', data, function (response, result) { "); - #line 687 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 868 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2280,13 +2554,13 @@ WriteLiteral(@"', data, function (response, result) { WriteLiteral(" \r\n \r\n"); - #line 690 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 871 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 690 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 871 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig && Model.WirelessProfileProviders.Count > 0) { @@ -2294,14 +2568,14 @@ WriteLiteral(" \r\n \r\n"); #line default #line hidden - #line 692 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 873 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(CommonHelpers.CheckBoxList("DeviceProfile_WirelessProfileProviders", "DeviceProfile_WirelessProfileProviders", Model.WirelessProfileProviders.ToSelectListItems(Model.DeviceProfile.GetWirelessProfileProviders()))); #line default #line hidden - #line 692 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 873 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else @@ -2321,7 +2595,7 @@ WriteLiteral(" class=\"smallMessage\""); WriteLiteral("><None Allocated>
    \r\n"); - #line 701 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 882 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } else { @@ -2332,13 +2606,13 @@ WriteLiteral("><None Allocated>
    \r\n"); WriteLiteral("
      \r\n"); - #line 705 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 886 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 705 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 886 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" foreach (var wirelessProfileProvider in wirelessProfileProviders) { @@ -2348,7 +2622,7 @@ WriteLiteral("
        \r\n"); WriteLiteral("
      • "); - #line 707 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 888 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(wirelessProfileProvider.Name); @@ -2357,7 +2631,7 @@ WriteLiteral("
      • "); WriteLiteral("
      • \r\n"); - #line 708 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 889 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2366,7 +2640,7 @@ WriteLiteral("\r\n"); WriteLiteral("
      \r\n"); - #line 710 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 891 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } } @@ -2376,7 +2650,7 @@ WriteLiteral("
    \r\n"); WriteLiteral(" "); - #line 712 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 893 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canViewPlugins) { @@ -2397,21 +2671,21 @@ WriteLiteral(" class=\"fa fa-info-circle\""); WriteLiteral(">View the (Url.Action(MVC.Config.Plugins.Install()) + #line 897 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" +, Tuple.Create(Tuple.Create("", 50956), Tuple.Create(Url.Action(MVC.Config.Plugins.Install()) #line default #line hidden -, 37579), false) +, 50956), false) ); WriteLiteral(">Plugin Catalogue to discover and install wireless profile provider plugins.\r" + "\n

    \r\n \r\n"); - #line 719 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 900 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2420,13 +2694,13 @@ WriteLiteral(">Plugin Catalogue to discover and install wireless profile pro WriteLiteral(" \r\n \r\n"); - #line 722 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 903 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 722 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 903 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (hideAdvanced) { @@ -2460,7 +2734,7 @@ WriteLiteral(@">Show Advanced Options "); - #line 738 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 919 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2476,7 +2750,7 @@ WriteLiteral(">\r\n \r\n Linked Groups:\r\n WriteLiteral(" "); - #line 745 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 926 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.Partial(MVC.Config.Shared.Views.LinkedGroupInstance, new LinkedGroupModel() { CanConfigure = canConfig, @@ -2494,7 +2768,7 @@ WriteLiteral("\r\n"); WriteLiteral(" "); - #line 753 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 934 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.Partial(MVC.Config.Shared.Views.LinkedGroupInstance, new LinkedGroupModel() { CanConfigure = canConfig, @@ -2510,13 +2784,13 @@ WriteLiteral(" "); WriteLiteral("\r\n"); - #line 761 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 942 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 761 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 942 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canConfig) { @@ -2524,14 +2798,14 @@ WriteLiteral("\r\n"); #line default #line hidden - #line 763 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 944 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.Partial(MVC.Config.Shared.Views.LinkedGroupShared)); #line default #line hidden - #line 763 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 944 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2541,7 +2815,7 @@ WriteLiteral("\r\n"); WriteLiteral(" \r\n \r\n \r\n \r\n\r\n"); - #line 770 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 951 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canDelete) { @@ -2596,14 +2870,14 @@ WriteLiteral(@"> "); - #line 806 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 987 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } #line default #line hidden - #line 807 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 988 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.Partial(MVC.Config.Shared.Views._DeviceGroupDocumentBulkGenerate, Model)); @@ -2616,13 +2890,13 @@ WriteLiteral(" class=\"actionBar\""); WriteLiteral(">\r\n"); - #line 809 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 990 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line default #line hidden - #line 809 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 990 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (canDelete) { @@ -2630,14 +2904,14 @@ WriteLiteral(">\r\n"); #line default #line hidden - #line 811 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 992 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.ActionLinkButton("Delete", MVC.API.DeviceProfile.Delete(Model.DeviceProfile.Id, true), "buttonDelete")); #line default #line hidden - #line 811 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 992 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2647,7 +2921,7 @@ WriteLiteral(">\r\n"); WriteLiteral(" "); - #line 813 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 994 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (Authorization.Has(Claims.Device.Actions.Export)) { @@ -2655,14 +2929,14 @@ WriteLiteral(" "); #line default #line hidden - #line 815 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 996 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.ActionLinkButton("Export Devices", MVC.Device.Export(null, Disco.Models.Services.Devices.Exporting.DeviceExportTypes.Profile, Model.DeviceProfile.Id))); #line default #line hidden - #line 815 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 996 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } @@ -2672,7 +2946,7 @@ WriteLiteral(" "); WriteLiteral(" "); - #line 817 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 998 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" if (Authorization.Has(Claims.Device.Search) && Model.DeviceCount > 0) { @@ -2680,14 +2954,14 @@ WriteLiteral(" "); #line default #line hidden - #line 819 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 1000 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" Write(Html.ActionLinkButton(string.Format("View {0} Device{1}", Model.DeviceCount, (Model.DeviceCount != 1 ? "s" : null)), MVC.Search.Query(Model.DeviceProfile.Id.ToString(), "DeviceProfile"))); #line default #line hidden - #line 819 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" + #line 1000 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" } diff --git a/Disco.Web/ClientSource/Style/Config.css b/Disco.Web/ClientSource/Style/Config.css index 5f6f2f81..c1677606 100644 --- a/Disco.Web/ClientSource/Style/Config.css +++ b/Disco.Web/ClientSource/Style/Config.css @@ -281,28 +281,18 @@ table.deviceProfileTable th.type { table.deviceProfileTable th.deviceCount { width: 120px; } -#configurationDeviceProfileShow #DeviceProfile_ComputerNameTemplate { - height: 16px; - min-height: 16px; - width: calc(100% - 32px); - overflow: hidden; - font-family: Consolas, "Courier New", monospace; -} -#configurationDeviceProfileShow #expressionBrowserAnchor { - display: inline-block; - height: 16px; - width: 16px; - margin-left: 2px; - cursor: pointer; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACKUlEQVQ4jaWTTU4UURDHf/W6gXFgJlHZKFvEe3gBvYhewXgGTXRpOILhGESGgEuNjB9N/BgCTJjufvXhonsQ176kkqpFVf2q6v8kIvifV77b2wsAU6MsCop/LCEpISIkEUAoioSZYWZczOeUp6en1ZPHT+4FQXgQERDBMrZlHACOpIKcM23bMN3fr0pEcDfub21x9/YdIhwR6QoJWFY8wF2JAHfH3fh8MoUISoGugxnPnj1lZ2eHg/cHTL9MMTdy09K0LVkVy8rsbMZkMukpoRQRRBIAZ2czNjbWWV1bZXY2I6WCpq5pmgY1ZXoypaoqAEQSsSQQ6Tb67es3Xr9+Q103PHy4w+Fkgpoxn1/y8eMn6rq+3v4yp0TkOvpeVaytreHuHB4egggXFxdUVUVZrrKxXmJuLBYLut15PwIwGo1IqTuTSGJlJfj1+xdXV1eMx2PCnTZn3B1VRZY6kJ5gc3MTEenO1Cy4nF9SpILxaIya4maUqrgqdU8QEd0IArgbOStFmVFVNCuqirtjalgYboa5A3KDIAJEGA7XiQiauiZnZTgcXhdwM7RXX1ZlsbgCEUTkL8GD7W3UjMGtAUUqMDMiosf3niqTVbk1GLDUT5nV5Oj4A293d1G1647m3qvOb/hGBLRty9HxB8xM5OWrV49+/vj5wuk07x4CEZ2clxcWUuqclFIgiSIJo9Houdz8zufn56siMgBKoACkNwdcRDIRzWg8bpY5fwBYR4lbku/2TAAAAABJRU5ErkJggg==) /*Images/Actions/expressionBrowser.png*/; - text-decoration: none; -} #configurationDeviceProfileShow #displayComputerNameTemplate { margin: 0 0 6px 0; } #configurationDeviceProfileShow #displayOrganisationalUnit { margin: 0 0 6px 0; } +#dialogComputerNameTemplate #ComputerNameTemplate { + box-sizing: border-box; + height: 48px; + width: 100%; + font-family: Consolas, "Courier New", monospace; +} .organisationalUnitTree span.fancytree-node { padding: 1px; border: none; diff --git a/Disco.Web/ClientSource/Style/Config.less b/Disco.Web/ClientSource/Style/Config.less index ce002b97..b8483972 100644 --- a/Disco.Web/ClientSource/Style/Config.less +++ b/Disco.Web/ClientSource/Style/Config.less @@ -232,20 +232,6 @@ table.deviceProfileTable { } #configurationDeviceProfileShow { - #DeviceProfile_ComputerNameTemplate { - height: 16px; - min-height: 16px; - width: calc(~"100% - 32px"); - overflow: hidden; - font-family: @FontFamilyMono; - } - - #expressionBrowserAnchor { - .icon16; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACKUlEQVQ4jaWTTU4UURDHf/W6gXFgJlHZKFvEe3gBvYhewXgGTXRpOILhGESGgEuNjB9N/BgCTJjufvXhonsQ176kkqpFVf2q6v8kIvifV77b2wsAU6MsCop/LCEpISIkEUAoioSZYWZczOeUp6en1ZPHT+4FQXgQERDBMrZlHACOpIKcM23bMN3fr0pEcDfub21x9/YdIhwR6QoJWFY8wF2JAHfH3fh8MoUISoGugxnPnj1lZ2eHg/cHTL9MMTdy09K0LVkVy8rsbMZkMukpoRQRRBIAZ2czNjbWWV1bZXY2I6WCpq5pmgY1ZXoypaoqAEQSsSQQ6Tb67es3Xr9+Q103PHy4w+Fkgpoxn1/y8eMn6rq+3v4yp0TkOvpeVaytreHuHB4egggXFxdUVUVZrrKxXmJuLBYLut15PwIwGo1IqTuTSGJlJfj1+xdXV1eMx2PCnTZn3B1VRZY6kJ5gc3MTEenO1Cy4nF9SpILxaIya4maUqrgqdU8QEd0IArgbOStFmVFVNCuqirtjalgYboa5A3KDIAJEGA7XiQiauiZnZTgcXhdwM7RXX1ZlsbgCEUTkL8GD7W3UjMGtAUUqMDMiosf3niqTVbk1GLDUT5nV5Oj4A293d1G1647m3qvOb/hGBLRty9HxB8xM5OWrV49+/vj5wuk07x4CEZ2clxcWUuqclFIgiSIJo9Houdz8zufn56siMgBKoACkNwdcRDIRzWg8bpY5fwBYR4lbku/2TAAAAABJRU5ErkJggg==) /*Images/Actions/expressionBrowser.png*/; - text-decoration: none; - } - #displayComputerNameTemplate { margin: 0 0 6px 0; } @@ -255,6 +241,15 @@ table.deviceProfileTable { } } +#dialogComputerNameTemplate { + #ComputerNameTemplate { + box-sizing: border-box; + height: 48px; + width: 100%; + font-family: @FontFamilyMono; + } +} + .organisationalUnitTree { span.fancytree-node { padding: 1px; diff --git a/Disco.Web/ClientSource/Style/Config.min.css b/Disco.Web/ClientSource/Style/Config.min.css index ee337fb3..52cf46d3 100644 --- a/Disco.Web/ClientSource/Style/Config.min.css +++ b/Disco.Web/ClientSource/Style/Config.min.css @@ -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:hsl(0,0%,98.5%);}.tableData>thead>tr>th,.tableData>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}.tableData>tbody>tr:hover>td{background-color:hsl(0,0%,97.5%);}.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;}#updateAvailableContainer{float:right;border:1px dashed #ddd;background-color:#fff;font-size:.6em;line-height:1em;padding:10px 10px 4px 70px;text-align:right;height:50px;}#updateAvailableContainer i{position:absolute;display:block;height:64px;width:64px;vertical-align:middle;margin-left:-70px;font-size:50px;color:#e51400;}#updateAvailableContainer a.button{font-size:12px;margin-top:8px;}.Config_HideAdvanced .Config_HideAdvanced_Item{display:none;}.Config_LinkedGroup_Instance{margin:4px 0 8px 4px;padding:4px 0 4px 6px;border-left:4px solid #ccc;background-color:#fff;}.Config_LinkedGroup_Instance div.code{margin-left:2px;}#Config_LinkedGroup_Dialog h3{margin-bottom:6px;}#Config_LinkedGroup_Dialog table.input{margin-top:12px;}#Config_LinkedGroup_Dialog table.input th{text-align:right;}#expressionEditor #expressionEditorExceptionContainer{display:none;border:1px dashed #ff9696;background-color:#ffd8d8;margin:10px 0;padding:10px;}#expressionEditor #expressionEditorContainer{border:1px solid #1e6dab;background-color:#f4f4f4;height:100px;}.expressionTree span.dynatree-node span.dynatree-icon{background-image:url(data:image/png;base64,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);background-position-y:0;}.expressionTree span.dynatree-node.object span.dynatree-icon{background-position-x:0;}.expressionTree span.dynatree-node.parameter span.dynatree-icon{background-position-x:-16px;}.expressionTree span.dynatree-node.function span.dynatree-icon{background-position-x:-32px;}.expressionTree span.dynatree-node.property span.dynatree-icon{background-position-x:-48px;}table.expressionsTable{border:solid 1px #f4f4f4;border-collapse:collapse;}table.expressionsTable>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}table.expressionsTable>tbody>tr:nth-child(odd)>td{background-color:hsl(0,0%,98.5%);}table.expressionsTable>thead>tr>th,table.expressionsTable>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}table.expressionsTable>tbody>tr:hover>td{background-color:hsl(0,0%,97.5%);}table.expressionsTable>tfoot>tr>th,table.expressionsTable>tfoot>tr>td{background-color:#f4f4f4;}table.expressionsTable td.parseError{background-color:#ffd8d8;}#AttachmentType_FilterExpression{width:375px;}#deviceComponents{border:solid 1px #f4f4f4;border-collapse:collapse;}#deviceComponents>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}#deviceComponents>tbody>tr:nth-child(odd)>td{background-color:hsl(0,0%,98.5%);}#deviceComponents>thead>tr>th,#deviceComponents>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}#deviceComponents>tbody>tr:hover>td{background-color:hsl(0,0%,97.5%);}#deviceComponents>tfoot>tr>th,#deviceComponents>tfoot>tr>td{background-color:#f4f4f4;}#deviceComponents tr th.actions{width:20px;}#deviceComponents tr input.description{width:300px;}#deviceComponents tr input.cost{width:75px;}#deviceComponents tr i.remove{font-size:1.6em;color:#e51400;cursor:pointer;opacity:.8;}#deviceComponents tr i.remove:hover{opacity:1;}#deviceComponents tr i.fa-list-alt{color:#1e6dab;font-size:1.6em;cursor:pointer;}#deviceComponents tr i.fa-asterisk{color:#fa6800;font-size:1em;left:10px;top:3px;cursor:pointer;}#deviceComponents tr input.updating{background-position:right center;background-repeat:no-repeat;background-image:url(data:image/gif;base64,R0lGODlhEAALAPQAAP///zNah+Hm7dng6O7x9DddiTNah1d3nJqtw3+Xs8fS3k5vlm6JqaGzx4KatcrU4FFymDZciHGMq+ru8t/l7Pb3+V9+oeLo7vT2+MTP3LLB0dTc5fHz9gAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCwAAACwAAAAAEAALAAAFLSAgjmRpnqSgCuLKAq5AEIM4zDVw03ve27ifDgfkEYe04kDIDC5zrtYKRa2WQgAh+QQJCwAAACwAAAAAEAALAAAFJGBhGAVgnqhpHIeRvsDawqns0qeN5+y967tYLyicBYE7EYkYAgAh+QQJCwAAACwAAAAAEAALAAAFNiAgjothLOOIJAkiGgxjpGKiKMkbz7SN6zIawJcDwIK9W/HISxGBzdHTuBNOmcJVCyoUlk7CEAAh+QQJCwAAACwAAAAAEAALAAAFNSAgjqQIRRFUAo3jNGIkSdHqPI8Tz3V55zuaDacDyIQ+YrBH+hWPzJFzOQQaeavWi7oqnVIhACH5BAkLAAAALAAAAAAQAAsAAAUyICCOZGme1rJY5kRRk7hI0mJSVUXJtF3iOl7tltsBZsNfUegjAY3I5sgFY55KqdX1GgIAIfkECQsAAAAsAAAAABAACwAABTcgII5kaZ4kcV2EqLJipmnZhWGXaOOitm2aXQ4g7P2Ct2ER4AMul00kj5g0Al8tADY2y6C+4FIIACH5BAkLAAAALAAAAAAQAAsAAAUvICCOZGme5ERRk6iy7qpyHCVStA3gNa/7txxwlwv2isSacYUc+l4tADQGQ1mvpBAAIfkECQsAAAAsAAAAABAACwAABS8gII5kaZ7kRFGTqLLuqnIcJVK0DeA1r/u3HHCXC/aKxJpxhRz6Xi0ANAZDWa+kEAA7AAAAAAAAAAAA);}#organisationAddresses{font-size:.9em;}#organisationAddresses tr:not(:last-child){border-bottom:1px dashed #aaa;}#organisationAddresses th{padding:2px;font-weight:600;width:200px;}#organisationAddresses td{padding:2px;vertical-align:middle;}#organisationAddresses tr:nth-child(even){background-color:#fff;}#organisationAddresses i.fa{font-size:1.7em;cursor:pointer;}#organisationAddresses i.fa.delete{color:#e51400;opacity:.8;}#organisationAddresses i.fa.delete:hover{opacity:1;}#organisationAddresses i.fa.edit{color:#1e6dab;}ul#loggingEntries{overflow:auto;max-height:230px;padding-left:20px;}table.deviceProfileTable th.name{width:300px;}table.deviceProfileTable th.type{width:120px;}table.deviceProfileTable th.deviceCount{width:120px;}#configurationDeviceProfileShow #DeviceProfile_ComputerNameTemplate{height:16px;min-height:16px;width:calc(100% - 32px);overflow:hidden;font-family:Consolas,"Courier New",monospace;}#configurationDeviceProfileShow #expressionBrowserAnchor{display:inline-block;height:16px;width:16px;margin-left:2px;cursor:pointer;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACKUlEQVQ4jaWTTU4UURDHf/W6gXFgJlHZKFvEe3gBvYhewXgGTXRpOILhGESGgEuNjB9N/BgCTJjufvXhonsQ176kkqpFVf2q6v8kIvifV77b2wsAU6MsCop/LCEpISIkEUAoioSZYWZczOeUp6en1ZPHT+4FQXgQERDBMrZlHACOpIKcM23bMN3fr0pEcDfub21x9/YdIhwR6QoJWFY8wF2JAHfH3fh8MoUISoGugxnPnj1lZ2eHg/cHTL9MMTdy09K0LVkVy8rsbMZkMukpoRQRRBIAZ2czNjbWWV1bZXY2I6WCpq5pmgY1ZXoypaoqAEQSsSQQ6Tb67es3Xr9+Q103PHy4w+Fkgpoxn1/y8eMn6rq+3v4yp0TkOvpeVaytreHuHB4egggXFxdUVUVZrrKxXmJuLBYLut15PwIwGo1IqTuTSGJlJfj1+xdXV1eMx2PCnTZn3B1VRZY6kJ5gc3MTEenO1Cy4nF9SpILxaIya4maUqrgqdU8QEd0IArgbOStFmVFVNCuqirtjalgYboa5A3KDIAJEGA7XiQiauiZnZTgcXhdwM7RXX1ZlsbgCEUTkL8GD7W3UjMGtAUUqMDMiosf3niqTVbk1GLDUT5nV5Oj4A293d1G1647m3qvOb/hGBLRty9HxB8xM5OWrV49+/vj5wuk07x4CEZ2clxcWUuqclFIgiSIJo9Houdz8zufn56siMgBKoACkNwdcRDIRzWg8bpY5fwBYR4lbku/2TAAAAABJRU5ErkJggg==);text-decoration:none;}#configurationDeviceProfileShow #displayComputerNameTemplate{margin:0 0 6px 0;}#configurationDeviceProfileShow #displayOrganisationalUnit{margin:0 0 6px 0;}.organisationalUnitTree span.fancytree-node{padding:1px;border:0;}.organisationalUnitTree span.fancytree-node>span.fancytree-icon{background:none;display:inline-block;font-family:FontAwesome;font-size:1.2em;width:14px;}.organisationalUnitTree span.fancytree-ico-ef>span.fancytree-icon:before{color:#1e6dab;font-size:1em;content:"";}.organisationalUnitTree span.fancytree-ico-cf>span.fancytree-icon:before{color:#1e6dab;font-size:1em;content:"";}.organisationalUnitTree ul.fancytree-container>li>span>span.fancytree-icon:before{color:#fa6800;font-size:1em;content:"";}.organisationalUnitTree span.fancytree-node.fancytree-selected{font-style:normal;background:none;}#Config_System_AD_SearchScope_Dialog_Loading,#dialogOrganisationalUnit_Loading{text-align:center;padding:40px 0;}#configurationDocumentTemplateExpressionBrowser{padding-right:275px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAA6BUlEQVR42u19XZPcxnX2cwDM7FKkZIUph6JykcR2uWzKJdJSyqlKLIl59WU78aXzC3KVm1ynKlf5HclFKjepsuutKBU7ViL5ZSw5CcXQUtmhaFESRZpcLj+X3M/5Avq8FzPANBoNoAE0MLO7fVTUzjQwGACD53w85/RpYmY4ceLkcIrnboETJ04BOHHixCkAJ06cOAXgxIkTpwCcOHHiFIATJ06cAnDixIlTAE6cOHEKwIkTJ04BOHHixCkAJ06cOAXgxIkTpwCcOHHiFIATJ06cAnDixIlTAE6cOHEKwIkTJ04BOHHixCkAJ06cOAXgxIkTpwCcOHHiFIATJ06cAnDixIlTAE6cOHEKwIkTJ04BOHHixCkAJ06cOAXgxIkTpwCcOHHiFIATJ06cAnDixIlTAE6cOCmVoGyH7//g//6/v/27v4XvB/A8wPcCBIEPogBeQCAi9Hwf5PXR7/nwfIIf9NEPfPi9/pkjK/0PQB6YBYgInkcAPLCIAPIBIrAIQb4HCAFQD/AEfAaE7wGRAMMDEMH3PHAkwOyB2QP5DGYGMYFJgCMGfMAjgAGwEGAhQOSBCPCIIAQAMIRgIPBAACAAQQwIwPd9gAlhxPDAECTgeQARATz9PsGMYHbuRIwoigB48AMPIhJgAjgCmAUCHxAcgEhAsAePp+OiR8AkBIjQ8zwIIQDPAzMgIgGPpufNIMAnsCD4AAACBwwPHogBAkF4Aux5AHkgZviRmH6GGQQCaPa9PjAZjeD5Plj48BCCGfA8QigiCDH9PHMEDjwgihAy0ANhPBYIeoyxEBBjAd9jRBHAFGHMDEwmIA5AxBAeg8MQghns94GxAFaA6cUJQHjwKQB6AqEQCISA8HoIGPB9giAGMWMCIBA+gB68I4yIGR4zViiAEAL02ApoPEbEjMf6j2E0YtBjABMBAI4CCMM+6DEA3vR6jhABCCCC6W8aCAHf9xFFK6CjBMGMY0SIogie1wewAvhDHDtyJGU3I2L0iHDs2LHpfSYPAtPzjqIIe3t72Nraw3jFBwYDRKMRwjCEEALDMETEjBUiCCEwmUwQAeAomj6PAJgZkzDESr8/feamDy48z4PnTe329Lyj5HUQBMm2P/uzPwMz4/Tp039chG9i5kIF8NZPfsIeeckXT/8RyPPh0/Tv9L0H3/NARPB9H0QePJ8Q+AHiq6L51yrvZ+8oc3qaYSraNTOoG9MMTgFuNAajb5kOkWbIdExzOORtUO5n7pjmbEl71Nzv0X9WdxAquY6i79Ef03ws93HX7Jczpr03VHC/5sI8BTCzQIwvIabGg8GJIZH/xaAX8XvNPtPdpspA/gznHE8IgS9/+cvUyAN49PDRFPS+D3+mAHzfnysDZZxovt33PfR6vRqArgJ8PciJTMaqAL+KgmgCfA3UK4G8CvBrjJWATw/8grHaIM8DfhHIGeD5GOvGpmYR0p+pF0azrZmx9DUxJCAKGZQieS1koPIc0Oo/kfd5IVIgz1MCsdfQSAGASAEZSePy40YJyOJ/89vjgF8OcovApwL/5FAC39ziN35GJYeapVOVHW35syz99jSz6DpvM/X52YZp6EHSPqx93UwBSDeJiDQ/xuziSX76aH4BGaAePuAXg7wm8EnzCDcFPlUH6X4EPmniH2vPqPx7xm56HsjjMWm/PEDnjetDEDZWAkE5+CkTm8X/pW8epfGfEz8dVOBXB7kB8AtBXhP4hSA/OMAvjttbAH48JlvhHGVANA015mMZn6AQ9LrxKqCvGAJAcfXlMUp5AdKfGftMDvhlY5VBbgB8sjHmgF9njHPoTVb8eZL2zXP1855FFeQ68LMtBUA6V1/x9omU/WRmgIpuIBUkAJYH+EQFXLwDfufALwX5AoBfarVTNp5Sj0QTV1+3j5xFsMIBSJwflIA/m9pLFEI2FrAHfIKGX2sI8qKUX12QF6X3FgX8vCxBE+BXO6bJWC2Qtw788ufWBMxz4Ntz9bki+WfuAZD8CM1vSBocBMqQIakIoAbwdSBvBvzquf66IG8K/DxvoQnImwK/5LxrgTybvG8OfIJmU+vAL6PuTS17VVc/Ab+hxa/hAVDG1U+drJzyS+cApZ+4O+A3j+91ALRR0GMC8kUDv4ZXUgvkTYGv8xaaAt+Cp0qUJgENyL0yhaAW92S2FREHdhRA1jiQBHLS/JCUihnyUyXLBXw7xTv1QF4F+E0LguwD3xzkVYBfAPLawDcFeXWLryUBDci9IldfC3pVaTQAvzEJKLsAlLpgyhQE+X4wqwQkBIGPfj+QgDwvKqLUzSOQh/R+s78ySJJwhNL7pvaRPJOUD6IdS59DShno9lUfUkp7OHPHJ32PUp4FZcMJKvCGVIVIVG6JTBVfkfUpsyymlodTqKj2sDKgtaGpMdYDlVFcrosUD28A/Bx3UXfv5Uq8+L06nir/lar5gGl1X1zTH1fzxZ9HmTdg3QMgklh+DeGHecrv/oN7ePen78wmCxE8z0MQBHPQzxTIXBHElYOxYom3Q7uP9jPSWNl2khWYfC7IbouVHRnsq92m/ax0Lbpz8ry5AjP9ntQxDa4rJ6as8zquTa+yX6PvU2JddUxHlOW+1h0r57XOFS/aXlannzsPoKCsl5kxGo3wp3/6p3jqqaeseQOB+a6UJgbVqj8Ak/EYt26t4cGDB5kyRSdOnNQTZsZ4PMYTTzyB4XBYSvxxQQhRkwSMyT5KA5+U9CAIvV4PJ0+exObmJq5cuYL79++7X9CJdYmBcNDlwYMH+JM/+RP85m/+ZuK5FIVfcZhgzQPwPIJHNJtTP/3reVO30ovdzdkU4XiGIBHh+PHjuH//PtbW1tzT6sRJBZE95xMnTuCJJ56Ye9QagLP8TxNeNPcAkKr9SZ2ojgSR487f/u3fxne/+11z8umQjbt74e7RYDDApUuXsLGxUagQOAf4SfzfSilwpvw3TTrFWyinJNc9/O7hd/cof/zWrVv41a9+hTAMjTyDRBnIYYAC/IQfsKEAUjwAdFN7SZkKDGs/knvI3T06qPdoMpng0qVLuHv3bqXwgHPAn/EGCniCagpALfBRmn+kwoScG5BX0ugefqcgDuO9uHv3Li5dumRk9TUH0nIAqJkKNJwNKLn6mrkAJNf9KxyA+8EdKNy9mFv9q1ev4te//nUlQlDHAbCBN2ApBJAqAFWLT3mz9EhbA+AefncvDus9evjwIT788EMMBgPUlVT8X+YNGKYDDUuBlZNQSEBSK/ZKbo4DhbsXh+keXb16FVevXoUNycT5edyArRBAtex5WinvvXv4nYI4rOPb29u4fPkytre3G4E+FQJIlp11Vl9VFM1JQErP8JXi/3QmUF+3btKp1D38TkEctPEbN27gypUrsCm6NKDO6vPMHTBxBoJ62ogyIYA+YGg3C+AefnePlm18OBzi8uXLePjwoXXwa0uBVW+g4sxLs7bgcQPQzLx30oYAy5IFcA+/u0ddjq+vr+Pjjz+ul94zJgHyiD8d+G2QgJSdCKwCXAf6ql1P3Li7R/v1Hk0mE1y+fLm1iW/5vRzkfgtVkn91QgBpnrsu7tfFKbob5x5+pyAO0r24f/8+Ll++3K7VzwG/bP7r9gUy8gCIyjWSvJ9JCOAefqcg9vO9CMMQn332GW7evNk62OWuQnPwzy2+ucNf2wNINwNRlYBMAhZ1nan6Q+mUTt6Ch+7hd/eiq3v06NEj/OpXv+qkJ4GcWeO02ZcIwbT3b7kSUB/36yx9Xm+6qiFAUQsr+ZhVPAv3kLt7ZGP82rVruHbtWqfuvppOz4T9Euyrtl80IwEzjSkpUxeQ6qPXIASQvzduMBJbfnnJY7XRonv4nYJoc3xnZwcfffQRdnZ2sCiJ1xRME38atCdpAYshABFp1gXQt9Sue+Nly+95Hnq93qzDsAchBIQQmEwmKSVQFmq4h98piKbjN2/exKeffrpY4LPi3yfWPgf8hm6A4cpA6XhA7QMovyrzAMpufPzZXq+HZ599Fi+88ALee+89XLlyBWEYYjKZJH+jKEoUQ9n3uIffKYiq48PhEFeuXMGjR4+waJkrgTLij+1zABpGIAP8TL1wyU0uWx7J9330ej2cPn0ap0+fxqNHj/A///M/+MlPfoLxeIzRaITJZJIogiiKUn3XF6UInII4GPdobW0N169f7zy9Z0IIFqX9q5YEBIbfrKwRKPMD6VWCVA+gahYg/myypsBMnnzySbzyyit45ZVX8Pbbb+ODDz7A7du3MR6PMR6PE88giqIUSZjnFbiH3ykCnYRhiI8++ggPHjzAMkkmDFCIvyw3YKYBDKYDp+v8SVcQBGjHyuLzon3yegoAwMsvv4yXX34Zly9fxvnz53H58mWMRqNEGcSKQA4N8rwCBwqnIGJ58OBBEmouv2hMP7cUAqhLeaXGlaahuhReFTdct3xSnnz1q1/FV7/6VTx69AgXLlzA22+/nSiC0WiUKIIoihINGnsIThE4BSFb/atXr+LOnTtLCfVsGjDf77eeBlSZQMoohOwikqoSqOL+A0AURQnRZyJPPvkkXn31Vbz66qt466238P777+P27duJMtCFB1ULipyCOJj3aHNzEx9//PHSLzQix/+sof0yJQGGSsCoH4Bs8eWmgFJ70HnXYE0WoMoPFS+oGIYhfvGLX+Af/uEf8Nxzz+GZZ54xulExT/Dhhx/i/PnzuHTpUuIRyOEBESUZhDZLlZ2CWN7xq1ev4tatW0vv7OvTgCgAfUYlNOEA5i2/NJMCNF2Dy3+AvB8kBj8AjMdjAMB//ud/4uLFi/iN3/gN/NEf/RG++c1vYnV1tfTCTp06hVOnTuHRo0d477338NZbb2E0GmE4HCYeQRiGiRKQ04nOOh7sa97d3cXHH3+M3d1d7CeZG1Vl8k/OxCA7HECG7NP0AZgXAWizAFV/KDmlF0URJpMJRqMR/vmf/xlvvvkmnn/+efzBH/wBfu/3fs8oPHjttdfw2muv4d///d/x/vvvY21tLQkNZGUQewWHySM4bArixo0blbryLgPo06E05xB/EgdgOw04XxFI6Q2QpAZ1i4bU+6HiEt8YiDEfMBqNEAQBhsMh3nnnHbz33nt46qmn8PWvfx2vvvqq0c2MeYIPP/wQH3zwAS5cuKDNHsQZBKcIDo6CGI1G+OSTT7C5uYn9KimjqyH+UkWAtjoCqXMBYrJPXgqEkF0XoE4IIKcC5bhH5gXG43GiCHZ3d3Hjxg28+eab+OY3v4nTp08beQVxePCd73wH58+fx5tvvpkiDGXSUE0nuvh6/ymI9fV13LhxY5+k90zJQNbNBUpts8IBxLBPr/5FCQmYQj/0HYHq/IByPUD8OibvwjCE53nwfR+j0QiDwQD/9m//hnPnzuHkyZN47rnnjLyCJ598Eq+//jpef/11/PSnP8XPfvYz3Lp1K+MVxNWGOm/FxdfLey/CMMQnn3ySu+jmfgN+qiegJvbXsAOWSMDE3yetMiCkVwuyuTCIrAjiMdkjmEwmiSIIggB7e3u4ceMGfvzjH+PVV1/F6dOncfLkydIb8eKLL+LFF1/EpUuX8P777+P8+fMYDAYYDofJOcQWxE04Wn4FsbGxgU8//fTAWP3MNWuIP9amBxqTgMgy/UlYkPUCyoBf9wdXZw3GYzqPIAgC9Ho9vPHGG/jxj3+ML3zhC/j617+OF154ofRyn3nmGTzzzDP4zne+g5/97Gd44403MsVEjmhbXgURhiGuXbuGe/fu4SBJogTyiL8CbsBCCKDz8ikdEkDfEKSN+fpqeBCn8GKQxnH8cDhEr9fDL3/5S3z00Uf4p3/6J7z22mt49tlnS72C48eP47vf/S6EEPjBD36AyWSSkJOOaFvO8a2tLXz66acYjUY4iDI1rjnEH2dYQJshgDIDkJBaErxscdC2Hn51nzg0iJWB53kJcRj/+5d/+Re8/fbb+NrXvpbMNCwS3/cRBAE8z9NOMHJE23KMX7t2Dbdv3z6wwGftMuAq8Ve9K6DZ4qCAkuyTXikLhpb9aG09CHLmQAiRAqxsteNQ4aOPPsLNmzdx7tw5/OVf/mXhzT9oKxwdJEWwt7eHTz/9FHt7ezjoQiSl2lluCaLrCgBbpcBSjJ9T9UcyMYhuuwKr4UA8lTgei6cVx7xAr9dDEAT48pe/jDNnzpR6AHEtQtn0YkfAdT++trbWSVfepSMBdeBnHT9oJQ2owD09G2hWIiyHA/kNPW0/CHkLlMSgj933Xq+HlZUVrK6u4vXXXzfODMSkklwY5JY6W/w5jUYjfPbZZ9ja2sJhkXQaML8HYNUgwHAuQLoNWGLvVUXQUQigZgE8z0u6CMXg7/f7CfC/+MUv4rnnnsNLL71kfGM2Njbw7rvv4o033kjqAXStx5wi6Pa7b9++jbW1tdS07kMpEvGXqf63WgqsdgTWMANz11/v/tvKAsgSgz4Gfuzm9/v95N+3vvUtnDlzBk8//bTxff3f//1fXLx4Ef/93/+NwWCAvb09jEajVEWgI+C6VxDxQhy2F93cd2FAGfFXkRQ0CgFItvCSO6CrC7D9IOStQaiL7fv9Pp5++mn8/u//Pr71rW9VusHnzp3DO++8g7W1NQyHw1RTkfhfHvnoFEG7CuLhw4f47LPPDqXVz1tvMw/cVbMBRiFAarZfmgJIj1HzrsDqxTJzYu1jBl+N7VdWVvDSSy/h9OnT+NKXvlTJzf+v//ov/Ou//itGo5G2gYg6F8Ax8d2Nh2GIGzdutLbo5n4kAVMAZ5kUhH6KsJ0QgLLKQI78SUMWorgjUNHDEF9wvDCIHNvHln5lZQVPP/00nn/+eXz729+udEN/+ctf4uc//znOnz+fAF+29vIiJHlxv2Pi2x3f3t7GtWvXDmxRT11FkEkD6vJ9sUKwwQGQtvY/TQJSqkDIbGWgIoIvjvHjxUHifysrK+j3+/jGN76BP/zDP6xk7QHgRz/6ES5evIibN29mZv+p04DVYiNHwHU3fuPGjaXtz7fIMEDuCqQl/hAvGW6xK7DK9JPiGZBcHFBGXBo+CDH4+/0+VldXsbq6iuPHj+Oll17C2bNnceTIkcpu/o9+9KPE0k8mE4zH4wT0cZ5fJvn2e8/A/agI9vb2cP369UNR1FNX8qr85xbfcilwJsWnTgQCsv0BSjoCmawLGAQBjhw5ghdeeAHf+MY38Oyzz1Z2899991384he/0Mb3spuvs/iOgOt2fH19fV/051s6bYDMWsHQvW1GAqKIBJyXByeLhNZ8EOTwIQgCnDlzBn/+539e2c2/cOFCis1XST1d2/FldfUPuoIYj8e4fv06tre3HaANwoD5vYPeF2A5DLBFApJK+MljhExDADRTBDLbX8XN/+EPf5ix9nFLMXV14SI33ymCbr7j7t27WF9fd0U9BuBPxf85xN+8EtDm4qAZay+FBaS6CM1bgskVfnkrA8lu/jvvvNO5m+8URLPPhGGI69ev7+v+fItmAVRvoEobsIocQJoNgAb4BN3S4dWzAGrXn7zP/fCHP0zc/PF4nGr13aWbr27TrYnoFER62+bmJq5fv+6sftMwgHXEXxsdgZJyX5ntl/wAxUUostqmXYHjGXjx2gDAdN22mM0fDoephT50wFeP1/ZDruMy5DDjoE0prmP119bWDkR/vmUIAzJMYEox2OwIRFBXBJdWA1LIQtJb/youd9zVJ27gceHCBbzzzju4dOlSqrlH3A9QdfOLQN/mjES5RFm9fnk6sU7hHXRFsLOzg1//+tcphe6kfgCQAX7MC3ALTUFVL4AUYkAeI2VpsDprA8rW/8KFC/j5z38Oz/MghEhZehlUi1r5Vz5veUJS3I8g/mysrNT1CQ8D17C2tnbg+vMt1PprXH25SBjG9J8xCUjZFmBS2i+lCAo4u6qLggDAcDhMwCSDXV3Ga1EpPNnq93o9HDlyBCsrK+j1eklHonhRk8FgkApvDjoZORgMcOPGDQwGA4dgS3F/hlzPI/6kqkA7IYD8Iun9l9pY7LZUsMqyEtAVFKkLiS7yIY/Pzfd9rK6u4m/+5m/wta99TfuZv/iLv8DVq1dzlyfvgoDravzOnTsHtj/fMsT/rAkFWJv5szodOLXsBzLrA0h1AE1bgqkrAxVZ+UU9/PL5xR5AUd3CysoKfN/XhkUHqajn5s2b2NnZcahtTQnosCT/rZACQNXpwNBNDkp3DMirAaj6QLVt3W2HACr5p0o8o1HuZrQsZcc2jnX//n3cuXPHpfe6JARZdvPnwOfMtsYhAM1r/aWMQGZMAcYiiLmuH37T1KDs3ew3Iq9oWxiGuHnz5qHqz7cUYUCOq99CT0DS0ADKlGCkMwAmD89BqXSLsxNhGBYeQ9dctMtzbWZp9Oe6tbWFmzdvOqvfMSGYnvwjcQAZpWBrcVBKKwR5XFcTAHTTFXiR43HDEpnpLwJC3HAkzmDUmSWptQYVttniPqIowvr6etKfr6xku03ldOisv4b4a3JbjUIAbf2/GgLE+9RcG3A/jsc8RRRFGAwG+Ku/+iusrq5m0oDD4TCZmVikJOqWEdd/kKqP7+7uYm1tDZPJJFPvYGzBOvZgDpg2yAF/2huwxgHouv+QUhpMSh2AujbAfg4BysbjECC26KPRKEUIyiGCPEGpDo+g41V0IC3KwOR5ZmXjURTh3r17ePDggXZ/E3C35cEcJi9AT/xxihiswgZUnA5MJQuDlBNfB0kRxGPyHASZ6Zevv8j1rzN/IrdbrCHgy4Arjw+HQ9y6dQvD4bDU3TdVBHWUQN74YVEM6Xufbf6RpQJbmQ6cLQmelwHkTwlug4BbFCmo7hfHxfLEn7zwp+rDWga4uoDXXYNu/MGDB7h7926lWN9UERTtU0UJHHTFkL6+rKuvXLXlNCA0BKA6CWheGqhdGqytfPciAF/3nPJc7abnUlZwVdeljot64pCm6fmVKYK2lMBBVQpqGpBzswFWFADlgJ8yJKCJFeoSvG0Sam09XHU7KlfdLw80Dx8+xL1795Jy7DrnV0URtaUETJTCvlMIGg6AkUcI2loclJBtDaYhBkFo3A+ga0VgzzVDJeVn8lAW3cu8bVUIQXV7FEVYW1tLuvKaeCtVlEGZN2BDCZTtU/Z+WRWCLhWYtzaQOQVYIQ2YyferNQAVOgItS/xuIxa3AXhTgk+nIKoooKJtOzs7uH37dtKPocl5d0kA1t3P9PPLpBCIaN7sQ2vk5/G/3a7AynqACRugWSPQdHHQ/Qr4ou+Or12ezFQFTOr+TTMAZdtj8vL27dvJBJ664LcV99uI/ata/SpKYxEKIauU0tY+RQ1WPD0DD0BeB1jSCkTK4qBUOjl4vwNeB+iiGLkqmEyOberu6zwFdfve3h5u376NMAwzRJ+Ne24S91clL5sQgHXOe9F1CdlngBTwM7KTAC1yAKmJvxLQM+y/whB2GQKYFrfUsfB1P1M13VaXWCuz/joPTAiBBw8e4NGjR7Vi/Trn2DYB2DT2r6NE1HqPbryA1PrgktXnDDdgpyegUuiT8gekiUCoWAnYdDyv5VheDYIN17bpcYp4BJtpyKJjj0Yj3L17F6PRyNq12CgDbiP2twFyU4+gC+5Angyknw2o8waskoAptyBbHQhzdrqpq19EbtkEfV1PwTT9VOalmPAAZfcs3ndjYyPpymtLIVYh/7qO/ds4lzpicw4HZ1z9OS+Q5gAslQKT5PrLY+m5ANlKYFv9AOoAtCmLXXf/Ku6gabxvIwsQhiFu377d2OrbUgTLRAA29TaqKorGykCy+pn8v2T+TZ2ASh4AMnF+OiTI6whsu0yzakqurodQxuRXdX3VBydv3DSfbgK6ra0tbGxspIp62p6+uwxlwLa9gDq8QzuKoGjyD6sRgR0SMOUPpBwCSo3VuWATV94UxE24AFvHLzv/PMtflvsvu5/qZ6Iowp07dzAcDgGglOWv6n0cJAKwDde/SuVjJUMCXbqPNSGALQ5A5vyzJIAW+EWMcdGsszyLrXuv3ry65J9J5WKdtF7RA1x2H5qEH8A0vVdUymuLE1lUGbBt0Lbt+lv3DJRlwbMdgc3XCQwq4D/t96emAFBjArAKeE2n01Ydrwv4OiFG3bCkyHIJIXDv3r1Kpbxdkn9l578sxT9NXP86yk43Vnyus8k/BbMBYa8hSLbYR18ARLVc4yZknE13vgkobVuBOhZ4OBzi/v37CMOwdeA38QraJACrhgJt/D62jpnHP3EJN2C9KagmEEiWCdKsDl4JNLZcdlPAl4ULdcBuGq/bTinJHYc2NzeTrrxdg99m3N9UCdhMA5pY+K5Cj9S+mjQgy3MDDFRFDQVAacIPaRIw8QwkYMnZAFuVeSbgz8s+NOECbJJzTeNe+XiTyQQPHjzAeDy2dv6149Ka19Ek9m+TALStTOryGWq2KP27IAkFsr6AmT9gXAmoMv+pjIDOBZAuwITUs2X1m/IDTQDfRuZB/h75Ydjc3MTm5mbroUsZ4diWN9BW8c+yu/5F+IlLgTmH+Ev+b3U2ICk1AKmFQtP7mcTUZTPZitJhTWvxbXghbYHM9HvCMMS9e/cwmUxaLXm2FfM3sY6Lnv1nw/VvqsjMfs95KNBCGhCa6cASCVhi2YuUQVFMXgf8trIBTeLeOtOATWV7exubm5va9N6iYv8q1X9F++2H2X+2P1vLwKR6gSq9AaRxttYRKIf5T03/JcosDKqrCiy7QBOLVnVKbhcusYnn00SEELh//z5Go5HRPVt2RdDGhKAuZv+1ERpU4Xxkm5uXBmS1GrBxCAAN2Yd0DYD8Xn04m5bhluXm6yqDNl18m6AcDAaZUt5liO/biPubkGU2QW7i+tsi/ao+R3mNP1im/GyWAmfJPp2CyAe/ziU2AW3VAqGu5gd0ZXmFEHj48CEGg0Fj78IGd1K3nXnZbMaDMPvPVvFPngLKCwO0M/9tcwBEZuArAlQe+NvqmFNUXmyDpa9iOeoAdjQaYWNjI9OfzwaQu/YUlo0AbJNLaIuf0NN+GuKP0xwA21sclJJ+fxl+IDWWXRugDvir5PuLrFWT8MMG4VgVhMyMra2tTH++ZfFK6sT8y0YA1qkDaJvoK7vebAjAuam+1DYbHoAa4ycnleoBmO4IVEaKNbFkTcDQJAXYRoWgLJPJBA8fPsyk99os8LFtodogAOsApysvwLbrb/TbakGvKAarIYABOShPBy7KADSx+m0A31ZNQFMAbm9vY3t7u/I1L0sGoE0C8DAU/5h0ftJOGJLdgNZKgSmf+lP7AOgAXzYBx+Shb2t+gC23v66SCMOwltXvarJVl5ax7djfpuvfheUv9bYKrb354iBmswEzoC5P9+XVAFRx6euA0ibJ1ybjvru7i+3t7dIMSdehSNlnbZUB28gCVA0F2vAC2gwhZBzFK0vLU4FV4g8l/EB9ErAE5KYPURFY25gf0EVlYB2i7+HDhxiPx5Vc/kVmAOrG/E29gSYA78r1b8vyq1kkmlcAaTkAcJulwIbgo4IVgusqgi4sflcs+2g0wubmpnE1Y9fn10bMb+oN1AXOMrn+bSii/N+0yBuAxaagBaSESTxfJRXYBPzLFvOrVn9rawvD4dAoLFrUeXahCA4KAdhWJWDedGAN7Es4ALOWQIHpSVUNAaqAX3Urq5KCTesG2oqXAWA8HmNrawtRFGkbc3aZmlwGRbBsBKCJR2BLqdRdfaiA50uRglOlUO34QdUTKJvgk0cOFoHapFNPkxh/EVOAmRm7u7tJf74q4G8L+F01BKlb+NOULGujcUlbYUBVxTi/n6zp/s2p5YJaCQHywBmX28pdej3Pq1ULUAXEbbL/TfcPwxDb29tJf75FZSaWoSHIopYBL/IC2gwDmtT9F22fe8ak2H0UTAWwsThoCfDreABNYvsuZgM2CRdkq191/sF+IQKXdSmwNmf/LTKsSs1tUV39zOzfltKAJhYgr6tP3X4ATbkAm9aybHts9U0m8LQB/kXwAaYpwUWtAmSzDqDNGX+VflfF1Z//ZVUN2OEA8lx9hW+sDP5FpQJthgnxPoPBAHt7e7UIzINCBHa1CtB+WPWnLSWrc+4Tb6DeymDlCqBobb/5l7Nx6FAF/FXnB3TdMzCKIuzs7CSlvLbDkzbBbzKbsg1wtLEUmA0voO2ef3Wup9h7Zt064XNvgG21BCvQPjCYwFAFFE3mB3TdM3A8HmNnZyex+nXDEdvLmbW1v801AW0TgG16AcvSOizrc2u8cK17YCsEkL0BnUdgoMFsVAPaKBlu4vrH6T25lNdmj0Jb4F+GhiCLXAVo2Vz/JgRl5v6zqgoki1+tJaBBCCDHGboYRFEKVesA6mYAmjYUqaMQJpNJyuo3ISP3cxbANOZvkwC0NeNwmWb8FTUEUUPxFPHHOv/A1nTgHIuPguWuTHsC2JwoZDuvrjLcg8EgWWp7GcG/H9qCd70M+KKtty3vJXd9wEw7cBmzsFcKnIk18tKANUMAm6nAuqDP+0xM9MVdeZvWJdgOSQ5yFmAZ4/c2ZvxVJ+AY2Yl/nOHlrFYC5jH+KaVQMIlhEYqgqdegs/pdWn/bJcx1PtdVGXAXTUCrhgGL4gtMfq9MDUBeYyBrHkAO8KEBvm6B0KqAt2EB64ItiiLs7e1lltpuI0xZ9nZliy4DthlXL2rBzyaf088GlDHJGuB3kQbk8umGNkIAG4CqspLPaDTCYDBI5jTUBfx+7ltgI+ZvUwksYtUfG2GKndmAc1dfigbS2yt8RS0FoMYZebqmahbAZiqw6vJdQojE6pcpr7ZCgabgX0RbcJO4P28fmwRgU4+g61V/GnlwWoxn04DWOACji9Vo7bohQJukoG77ZDIpLeW1af0PGhHYBLDLPvtvUZZfxRFryb1sK6CqswGMSoELH7ACDiAPOLaqAW1Y3b29PUwmEwDpOft1y5W75AKWAfxVQoNlmf233ySlyFQ3gFnjhZtXA9VKA5puK5sK3EZZsCkAwzDE7u5u7nl2af27ygJ00RBkkasALVvxTxsLhJIEfi0emSvRAEEl4JcRfxoXug7BZ4sU1B0nLuop68rbhTJoG/yLbAiyKALQpuu9iM8WhQDTfzkcQO404aYhQKx18tKACgcgT45p2g3H9vyAOL2na7fcRalyV23L2w4L2moC2hUfYeOYbSwCGj+X6t8M6ZrCXJHFt5EGzCn+KZsGXKYEugCdmt4bjUaNXP4urP9+yQJUifvz9ul6BeBlLP4xCTu0nhfnUYGzvsG2OwIxiicGcQ55WNWdt516i6IIw+FQW8rbVXbioBOBXRCAXXkXXaUA69cEcE65b9YbsBYCpCy+pvMoabyBqv3wbIYG8dhkMsFoNMp1pWyRf/uJCDT9bBsVboua/VcXeIs8ZtnvlIr2i7iB1kIAeXuFtQHqWP6qwBJCYDQaIYoiAPr03qKs/34pB25SAly0/yJm/5l85yKWDav1O0Bf/6/FLVqaDVikGIo6AXdRFhy7/Lat/rIUBS2KDLS5JuCyz/6zuUqRjbkMWiTmTvzhZDawdQ5ADQNUpaBfSdg8b99EETBzY6u/LNZ/2YnAtsqAFzH7b9ksfuk911r9+eQf6yFAKfGX42nYygKYKIIoimrH+o4IbP9BX+bZf4vo/FP1euTlwbmA+EufUosdgThHA3AFkNtQBMyMyWSincDTtfu/yJWMDnoWoKvZf7Yq99qw/Nnj5s0GRDsdgVjWBRLwWdUFKO4K3ARc8lhM9OVN4GmiABZh/Ze1HLiLMuC2SbQu2n13EW7pYgBd/b/VtQFVcMvap8jj0IUAeQ992bi6fTKZpHrx23D791NRUJdEYFXyrw4BWAdsTUlG25xAm5WNqXuvrb+bs34tpAFVV5/Vt/PtpCcBbQE/JvrUIiMTYDcF/X6ZHdhmWFBFGXSxDPiirXOX35vXFyCp+tNxA3bSgHmuPmuUAhs9/Cbj6lgYhphMJoV1/Iv2BBbNBXTJB3RVBmxDySy63bet+6yWAuvD/GpFQdU6AmnigfQQGbv/pmNCCEwmEwghSom+LjwBRwS2SwCW7bMsq/50bfnTC4NkXf14pOopBZXArzD+2TQgax/yul18oijKTNs1Abdtq7+sswNtx/hVST9bMfuiQLzMlj/399G9i3sA1DjVCh6AJgzQcQMG4DcBw2g0Sibw1LXyVT2BRYYCbRKBTUOINsuAFzH7r+uYX53ia0dmFX/a40m9A2woAC7xBuR91Bi9aggQu/w23f2DVhTUNRnYdhlw17P/Fj3jr25b8GQ2YBHbz5a7AicNQRSrr0sCgMv7ARQ96GEYJqW8psBvGvfXzQQs4+zALviAtpqBtDX7z5ZFb3PGX6XfMicNyLHVtx4CZNYdLkgDglPti8q12dyqVGX4l9UTaKoM9gsR2IT8qwvORfT8azM8MPV88veVmn8UA7dJCKA5EGtOQgKz53lGLcHi5pxRFOVmDbryBBYRCtgKB7oGf9W4X7e97TRgl5Z/EWQh5y7+M/cErHIArHc6MtuKCoFUbTYej0uLehapCKoqhbas/yLKgbtYE7DN2X9dKb8uZhWmv4cLGIDqHUEqNAXV2XsUFh3p1gkEprP35Fh/WRXAYSYCu1oTsK3Zf/u5+KeMA9ChlFtLAyrEH+W4BbJeylsclJkRhmHqh9EpimX2BGwog6ZcwCLIQFtlwHVifZtewDLX/Vf7DWNXvzrxV5kDSH1JZjag/hRUQAkhChn+/aIAlnl2YFd8QNvVf126110v9NE8BJhzAPkeQRshgBIPsJ4L1D74sdUvAmnbCuCgFwUtggjschWgZWn9vWi+wZTcs+gBQFP1RwXb9A9IGci7UgBdZwKWlQjsigxrqxNwWwtzLIvlz1eyds/DjAMgDeOvaQxiSgLuVwWwbLMD64C/rYYgbS0D3gYQ95M3UFwH0IECmAKfNMQfZ0KB+G9cB3DixAk89dRTrTPzy7DYx35sAJrbc77hg2by+bx9dOMmY1Xem26r8rrOdpNt8WS4tjy9irMB0y91HYHibrwnTpzAX//1X+Po0aNw4sRJPRmNRviP//gPnD9/vpXjV0wDcm4NQDweBAHOnDmDr3zlK+7Xc+KkoayuruL111/HV77yFfzjP/5jmn/rxgPQxPg8pwJlpfD444/jxRdfwuc+9wT29vZAnofAD1LhRJFnoV/moNgjyc2Ccs7c6dwDcynFwlx8dmxwPWrtRKnTxfkXX7Y9/7K5xncq51z+wxj9omz0E5l/Z9EquYanbLIhfTfUephZVQ4zQ7D8HtIy32LG6PN87oyyD+I8/2zsj//Py9ja2uyaA8gSf6wLAhjo9/rwPA+TMITnefCY4ZGXC3wuAQqXbtM8UGUgLdjOZUqBCx5PrgJSzjlm/oNlso0LgF8G3vLP6hFWBFIu1sjpz3KJiigCqcFnucBKcIkFyduuozEScIs5+JkZLKaAn/b3FxBiPpEn7vkP1n0mvU+/vwJhkQyslAbUFv1w2hpz5ifgFoDP1a2zA357wOcSG78I4JeAtx7wy9pu5c3OU0m/5QkxDNOAeiDPi4K4fH7AUgDfTCl0C/xyd94BvwJAGwK/MIQoCgU4/5liRsOC3UUqgJzpwHF6MG9+QKIUioDPJRGaA36nwOca4C0DfqVt+xj4+vvMWPZyg2ppwAwHoCflpqqBSom/pQJ+UYhQF/g1CbxWgV/IS3J9pVAh/j/IwF9WV7+5AlBjfM4qBRn4OU0EHPAd8A22NQF+Q+KvNvCLmnTucwVQ3IZQTwwyZR++/Qv8cqVwEIBfKYY3BH418s7ss0XgrQv8YtxybW9g3ysAbYyfygikJwbFhAfN2cN9Afy68X8psC0Dv5lScMB3wK8TAiig11r8FPBzHtiGwK+b6tt3wLfuDVR317sBvln874C/SAUwmw2InPz/3AfQKwUH/H0OfEPGv1PgNyD+uKQc8LAAv0IIIM0GTN1jzq0IZAaYJG+gE+BXIO86A35x/O+A74DftpTNIKy8OCgXpAF5Rv6l/AJ2wHfAd8Df9xyAsiRoehtlVg7MRdVCgF8j1VeHtV848C1V5hXF/w74hy0ESKy6Zjwh/kjPD1A5eB3wDyjwDRj/urX4DvidegCsjfFzVwxKFQXxPgB+/Tz9fgJ+Xca/boFOXeDXZfzrA/twAr86B1DC+OfOFqwIfLZcmVcW/9cFPtcGb5McvwO+A75d8fKYw6RRZ14PAE6TgpxL9HEmbNB5F4XboFsHTepJWLQt46wUfS6GIRdvy3WA5hOgSrex9qgFjhVnln5W7lBqe2bx9qLPMqfSulmlwaXbtN8JqcmFFvgF22LFkLOdOX9RzPxtJtsPmQeQkyZIBo8eOwqPCJ7vT5t8EE2bfnre9P3sHxHB930QETzPh0c07QgU+MWufpnFL4roLFt8mFj8Iv/GchhgbLVhdDsL4382+N5KxF+1S6pE/FW36OXdnmzJfD4Ag4Xc0UfMFJrUJWh2PYLFzOBIzUCkz1fZJ/6OeBuyPcRYFwJQngL4+7//+4sEkB8E8MjD1Ckg+N5UKcyATzRTEgSC7/kgj+iJJx7/0mBv8MnsBlDaG2CSzmT+mpkiZmB6LTT1SAARhSQBmCTPgWZafV6xLJjml8AUt1+Kv1darYgAQMSdi6YnSkQEIQRi3SgAYsGAZqHG6Q7TG52aCELJ9yVeVar7q/RC2kaFrr60uEoKLLPxUsVAlGV2ad6Canrs9HHlc483J9uScWl74rFxdmEOMQei53k8/w5OtpN0THk7kG2L7fs+M4vUFavrChARs0gvV+/5PmvWJGAg6WjN098/+b3Ziz1iotmlEzyPOP6O2UHgzb5v2huXOFFMBCbyQACi6cMEIoBAzDNwewSOOwVNH/oYyslzMt135plP79e0cZiqAIiASAgdtjNAJwA4e/YsAcD29jaGwyFGoxGFYYiTJ0/S7u4uoiiiY8eO0Wg0wmQyodXVVRqNRhRFEfV6PZpMJhQEgReGIfm+T1EUeZ7nERF5URSR53leFEUeTcUTQngAPCGER0QeEVE8Fm+X/+aNMbMHwGNmb/o7Ecl/pdc0249mGiAeS17THF0kKRRSbiLJYNUpzZz3mQe0bF/LUuc7OjGauhDUcN/M+9lnWRdLzoAaKx6W3ievpXExfWyYiUgQkYhfy2Oz/QQzC2YWnuel/urGAMSvOR6XxgQzs+/7QgghpkqOhRCCfd8XURRxEAQchqHo9Xo8mUzY931eWVnh4XDIvV6PV1ZWsLOzw77v89GjR7G+vs5BEGBlZYVXV1fx+OOPAwDOnTvH9L3vfY/u3btH29vb+MIXvoCdnR06ceIEdnd3aXV1FcPhkPr9Pu3u7qLX6xEACoKAdnd3KQYuABJCeCsrKySEIGb2hBCeEMLzfZ+EEDEQc//GoJbe++p+6mvP82IFQLEiUF/P/slKIAV4ZibJK6CZ9aHYWygBEJW7hLzYZXsOgCQWtrqyYvUYM/DGL0FELAE9pRBmboKQlEgM+tTrqe0SQlIUmdczoEfK+9R23V/P80QURex5nvA8Lx7j0WjEM8XBsSI5evQoh2HIAHgymfDRo0cxHo95dXWVh8Mhjh49ynfu3MGxY8f46tWrePzxxxE888wzBAAnT57E+vo6jh8/js8++4x+93d/V7V+CXgki4/hcEhBEJAMthh8URRREAS5oI8t9+y1LwE3Zd2l1750/MTKy2PSOZCiBPL+6a6zEPBpV7zc0i966a79LLK3VeIZkPK7sOq5QW5mPf8rb9P9i7cJ6Tlh6bWYhQmZ5ypnbUKavqXMs5QOp+Z/wzAUvu+TRNqL+LzDMMTq6iqHYUi9Xg+TySRzX+LXm5ub9Nxzz/HGxgZeeeUVrK+vIzh16hR//vOfpytXruDUqVM4duwYHn/8cT569CgNh0OeTCY4efIkjUYjZmaaaRhaWVnhmfXk2WIgPDvZ2D3yZrEUz7RW7gXObojQrQ0n3xhJc8ca2ouPq4JUduclL4BnN1H+S5KFIMVikPIAsnTuqbEcsFNelsUgLDgs1t30XnCecpVAxir3IIcF8pj0Xk5exMASs20p6694BIn7H1v/2GrP9s28lz8Tu/rxNp31F0KI2UOeWHlm5iAIYu8kxheIiEejEQBwEAQgIl5ZWcH6+jr3ej1eXV3F7u4unzhxAjs7O3j48CFeeumlKQl49uxZBkBnz57FxYsX+Xd+53fQ7/dx79496vf7cVxBOzs7ot/vU6/XE0EQYDwew/d9TCYTbxaXUBAEYub+C8/zvCAIkhDA8zyS3ffYA5i5Rt6Ug/EyLr7k6ieeAwCKxyWvgmTPYfZ9CScw0wsZryDeJpGEufF/rLDU51hWDIoV0j7syn5aEJh4DlVDDMNjWnfRy64pdsfLziHeTzIenN2Fc3kAydVPjIlq9WdgleN/FlN2LgVeFaySosgoBzlEmO2bGp9y0ql9YsMpwjDkGZ44fj/DG/d6PRFFEfr9vgjDEJPJhMfjMR87doxHoxH/1m/9FsbjMT7/+c/zeDzmwWCAb3/72zh37hzOnj3LKQv3/e9/H9/73vcAgC5evIgjR46g3+9TEAQIgoD8WSrQ933a2tqi48ePY0b00WAwoPi153nkeR6Nx+PZW49WVlZoMpnEIKUZIZiAVhlLXPwZj+CpSkSjFEgBvrydZHJQ2pekbYmLJfMFsnIoCRV0fAFpwGJEFtYk77qMNdjivqxDcM4+XDDGyJYkJCCX4nrIJJ+0PQV8aVsKmHL8nwN2luL3hPCTPQPf94Vs1ZUx7vV6YjQa8cwJEP1+n4UQ8XsWQvCRI0eS1xsbG3jiiSc4iiIWQiCKIoRhyGEYIgb+888/DwAs4VxJXWkeonPnztHZs2cBAB9++CFOnTqVesDv3LmDEydO0MbGBh0/fhybm5vkeR7NmEba29sjyfqmXksWOLHKYRh6vV6PZt6EF0URAfBmPEPMLcRATsX9ujHP82iWbUgUjZoZmHkTyfnMshG5nEG87+yYecpBDicoh1AkxV0lNSWYTsOR1uKr401X4zX9vBr+qOOa47A0xsoxWUfcKV/AOpDHbnLsEivbU/9i4kzaN8P4S+z8bC0PkXH9deFAzN7HY7NwWfi+z2EYiiAIeDKZcBAEQvU2ZEUlKyVm5scee4wB8Pb2NoQQ/LnPfY43NjZw/PhxvnPnDp84cSJ1/yScJpY+lxw1dPdMGPDkoV5fX8fJkyfzrGTR66r/vJnSoCAIvLzt8WshRAx0L2cf7eelz2X+SdtS1yFxBCRnF2TXXwk3Sr0JheTSjVGOy2wUOuhc+bzPS+DLuOKasSKrnXLLJRdfjt3VNF4CfiFEAn71n7JNFBB9qVhf+pzI2YcBJKA2OH7ZP5S8BgCWcMWGadHSNCs1JKCopsIoeujrKg0TRQKJSfUaKh9UzCyUego5743DC9NaBEsuf103XX3AUQEIhda9ZJsJCIXytwpwK4HZ4H4ZA7povIzzoZYZaGqoPHK9DM14mVKpq2CKPl/lWFX+lo2ZgL0NPoArvOeKisHkbxmoqnzGFKBcQZGZWudKIC7b1iTNTEuSgiIL+5gAoK5yMR0ny8duw9JTDaDb8gxQAzAm42z52KbWly3cx2YueMMakwDLIU1uFFU4BjUESR3Gnlr4ni6zA9zR71jV+nEL39PmdS+lBNj/0sYP1dR9bjMdRwfsN+n62G4i8AFTAIf5IaNDAnonbT1A7DojOHFyaMVzt8CJE6cAnDhx4hSAEydOnAJw4sSJUwBOnDhxCsCJEydOAThx4sQpACdOnDgF4MSJE6cAnDhx4hSAEydOnAJw4sSJUwBOnDhxCsCJEydOAThx4sQpACdOnDgF4MSJE6cAnDhx4hSAEydOnAJw4sSJUwBOnDhxCsCJEydOAThx4sQpACdOnDgF4MSJE6cAnDhxYlH+P+B5MeB+eNGIAAAAAElFTkSuQmCC);background-position:right top;background-repeat:no-repeat;}#Logging_Task_Status{width:520px;margin:40px auto 60px auto;}#Logging_Task_Status th.process{text-align:left;font-weight:600;background-color:#f4f4f4;min-height:30px;vertical-align:middle;}#Logging_Task_Status td.description{font-size:.9em;min-height:60px;}#Logging_Task_Status td.progress{padding:8px 10px;}#Logging_Task_Status td.finishedMessage i{display:none;}#Logging_Task_Status td.finishedRedirect{position:relative;}#Logging_Task_Status td.finishedRedirect i{color:#1e6dab;position:absolute;right:10px;top:calc(57% - .5em);display:inline-block;}#Logging_Task_Status td.exception{background-color:#ffd8d8;}div.logEventsViewport{border:1px solid #bbb;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;}div.logEventsViewport div.logEventsViewportContainer{overflow-y:auto;overflow-x:hidden;}div.logEventsViewport div.logEventsViewportContainer .logEventsViewportNoLogs{padding-top:20px;text-align:center;font-style:italic;}div.logEventsViewport table.logEventsViewport{padding:0;margin:0;background-color:#bbb;table-layout:fixed;}div.logEventsViewport table.logEventsViewport>thead>tr{background-color:#eee;}div.logEventsViewport table.logEventsViewport>thead>tr>th{padding:4px 2px;font-weight:600;border-bottom:1px solid #bbb;}div.logEventsViewport table.logEventsViewport>thead>tr>th.icon{width:20px;}div.logEventsViewport table.logEventsViewport>thead>tr>th.timestamp{width:155px;}div.logEventsViewport table.logEventsViewport>thead>tr>th.eventType{width:180px;}div.logEventsViewport table.logEventsViewport>tbody>tr{background-color:#fff;}div.logEventsViewport table.logEventsViewport>tbody>tr:nth-child(even){background-color:#eee;}div.logEventsViewport table.logEventsViewport>tbody>tr>td{padding:2px;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon{width:20px;vertical-align:middle;text-align:center;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i{display:block;font-size:1.2em;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i.fa-info-circle{color:#1e6dab;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-triangle{color:#f0a30a;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-circle{color:#e51400;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.timestamp{width:155px;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.eventType{width:180px;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.message{white-space:pre-wrap;}#enrolStatus #sessions .session{width:280px;padding:4px 4px 4px 72px;margin:8px;border:5px solid #efefef;-moz-border-radius:0 20px 0 0;-webkit-border-radius:0 20px 0 0;border-radius:0 20px 0 0;background-color:#f5f5f5;background-repeat:no-repeat,no-repeat;background-position:36px 36px,4px 4px;-moz-background-size:32px,64px;-o-background-size:32px,64px;-webkit-background-size:32px,64px;background-size:32px,64px;min-height:72px;cursor:pointer;}#enrolStatus #sessions .session>h3{padding-bottom:3px;border-bottom:1px dashed #ccc;}#enrolStatus #sessions .session>h3 span.details{font-size:.8em;}#enrolStatus #sessions .session>p.sessionStart{color:#888;font-size:.8em;margin-bottom:2px;}#enrolStatus #sessions .session>p.sessionStatus{font-size:.9em;height:1.6em;overflow:hidden;margin-bottom:3px;}#enrolStatus #sessions .session:hover{border:5px solid #6c7a87;background-color:#dfe1f8;}#dialogSession .sessionHeader{width:400px;float:left;padding:0 0 0 134px;background-repeat:no-repeat,no-repeat;background-position:96px 96px,0 0;-moz-background-size:32px,128px;-o-background-size:32px,128px;-webkit-background-size:32px,128px;background-size:32px,128px;min-height:134px;}#dialogSession .sessionHeader>h2{padding-bottom:0;}#dialogSession .sessionHeader>table{margin-top:4px;}#dialogSession .sessionHeader>table th{width:128px;text-align:right;}#dialogSession .sessionHeader>table td,#dialogSession .sessionHeader>table th{padding:1px 2px;}#dialogSession .sessionProgress{width:320px;float:right;text-align:right;}#dialogSession .sessionProgress>p.sessionStart{color:#888;margin-bottom:2px;}#dialogSession .sessionProgress>p.sessionStatus{height:1.6em;overflow:hidden;margin-bottom:3px;}#dialogSession .sessionInfoContainer>div{float:left;width:428px;overflow:auto;}#dialogSession .sessionInfoContainer .sessionInfoMessages{height:374px;border:1px solid #bbb;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;background-color:#fff;}#dialogSession .sessionInfoContainer .sessionInfoMessages div.logEventsViewportContainer{overflow:auto;}#dialogSession .sessionInfoContainer .sessionInfoMessages div.logEventsViewportContainer .logEventsViewportNoLogs{padding-top:20px;text-align:center;font-style:italic;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport{padding:0;margin:0;background-color:#fff;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr{background-color:#eee;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th{padding:4px 2px;font-weight:600;border-bottom:1px solid #bbb;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th.icon{width:20px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th.timestamp{width:155px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th.eventType{width:180px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr{background-color:#fff;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr:nth-child(even){background-color:#eee;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td{padding:2px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon{width:20px;vertical-align:middle;text-align:center;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i{display:block;font-size:1.2em;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-info-circle{color:#1e6dab;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-triangle{color:#f0a30a;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-circle{color:#e51400;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.timestamp{width:155px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.eventType{width:180px;}#dialogSession .sessionInfoContainer .sessionInfoConsole{margin-left:6px;background-color:#222;color:#0f0;font-family:Consolas,"Courier New",monospace;border:4px solid #ccc;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;padding:2px;height:364px;}#Config_DocumentTemplates_Show>div.form>table>tbody>tr>th{width:140px;}#Config_DocumentTemplates_Show #DocumentTemplate_FilterExpression,#Config_DocumentTemplates_Show #DocumentTemplate_OnGenerateExpression,#Config_DocumentTemplates_Show #DocumentTemplate_OnImportAttachmentExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_DocumentTemplates_Show #Config_DocumentTemplates_Scope_Button{margin-top:4px;}#Config_DocumentTemplates_Scope_Dialog div.input{margin:14px 10px 20px;}#Config_DocumentTemplates_TemplatePdf_Dialog div{text-align:center;}#Config_DocumentTemplates_TemplatePdf_Dialog div input{margin:16px 0;}#Config_DocumentTemplates_JobSubTypes{border:1px dashed #d8d8d8;background-color:#fff;padding:4px;margin-top:6px;}#Config_DocumentTemplates_JobSubTypes>h4{margin-bottom:4px;}#Config_DocumentTemplates_JobSubTypes #Config_DocumentTemplates_JobSubTypes_Update{margin-top:4px;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog #Config_DocumentTemplates_JobSubTypes_Update_Dialog_Types{margin:0 0 8px 0;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog .jobTypes{padding:6px 0;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog .jobTypes .jobSubTypes{background-color:#f2f2f2;border-left:4px solid #d8d8d8;padding:4px 0 4px 8px;margin:4px 0 0 6px;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog .checkboxBulkSelectContainer{font-size:.8em;}#DocumentTemplate_OnImportUserFlagRules_AddDialog .distribute-evenly{display:flex;justify-content:space-around;margin:1em 0;}#DocumentTemplate_OnImportUserFlagRules_AddDialog textarea{width:99%;}#DocumentTemplate_OnImportUserFlagRules_AddDialog .mt-1{margin-top:1em;}.dialog-bulk-generate .brief{margin:0 0 8px 0;}.dialog-bulk-generate .brief .scopeDescBulkGenerate{font-weight:600;}.dialog-bulk-generate .brief div.examples{margin:8px auto;width:360px;}.dialog-bulk-generate .brief div.examples div{margin:2px 4px 2px 0;width:230px;float:left;}.dialog-bulk-generate .brief div.examples div.example1{width:100px;}.dialog-bulk-generate textarea{width:calc(100% - .5em);height:200px;margin:0 auto;}.dialog-bulk-generate .sub{margin-top:.75em;}#Config_DocumentTemplates_Show_DownloadBulk_Dialog{padding-top:20px;text-align:center;}h1.Config_DocumentTemplates{margin:10px 0 6px;}#Config_DocumentTemplatePackages_Show>div.form>table>tbody>tr>th{width:140px;}#Config_DocumentTemplatePackages_Show #Package_FilterExpression,#Config_DocumentTemplatePackages_Show #Package_OnGenerateExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackages_Scope_Button{margin-top:4px;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List{list-style-type:decimal;list-style-position:inside;background-color:#f2f2f2;border:1px solid #d8d8d8;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List li{padding:6px 8px;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List li:not(:first-child){border-top:1px dashed #d8d8d8;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List li .id{font-family:Consolas,"Courier New",monospace;float:right;}#Config_DocumentTemplatePackages_Scope_Dialog div.input{margin:14px 10px 20px;}#Config_DocumentTemplatePackages_JobSubTypes{border:1px dashed #d8d8d8;background-color:#fff;padding:4px;margin-top:6px;}#Config_DocumentTemplatePackages_JobSubTypes>h4{margin-bottom:4px;}#Config_DocumentTemplatePackages_JobSubTypes #Config_DocumentTemplatePackages_JobSubTypes_Update{margin-top:4px;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog #Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog_Types{margin:0 0 8px 0;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog .jobTypes{padding:6px 0;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog .jobTypes .jobSubTypes{background-color:#f2f2f2;border-left:4px solid #d8d8d8;padding:4px 0 4px 8px;margin:4px 0 0 6px;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog .checkboxBulkSelectContainer{font-size:.8em;}#Config_DocumentTemplatePackages_Templates_Dialog h3{margin-bottom:4px;}#Config_DocumentTemplatePackages_Templates_Dialog>div{width:374px;float:left;}#Config_DocumentTemplatePackages_Templates_Dialog>div:first-child{margin-right:20px;}#Config_DocumentTemplatePackages_Templates_Dialog .templates_connected{min-height:200px;}#Config_DocumentTemplatePackages_Templates_Dialog ol{list-style-type:decimal;padding-left:24px;border:1px solid #d8d8d8;background-color:#f2f2f2;}#Config_DocumentTemplatePackages_Templates_Dialog li{background-color:#fff;border:1px solid #d8d8d8;margin:4px;padding:2px 4px;-moz-box-shadow:0 0 5px rgba(209,209,209,.5);-webkit-box-shadow:0 0 5px rgba(209,209,209,.5);box-shadow:0 0 5px rgba(209,209,209,.5);cursor:default;}#Config_DocumentTemplatePackages_Templates_Dialog li:hover{background-color:#cddbec;border-color:#1e6dab;}#Config_DocumentTemplatePackages_Templates_Dialog li .id{font-family:Consolas,"Courier New",monospace;color:#888;float:right;font-size:.9em;}#importStatus #sessions .session{padding:4px;margin-bottom:10px;border:1px solid #efefef;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;background-color:#f5f5f5;min-height:72px;}#importStatus #sessions .session .sessionLeftPane{width:48%;float:left;}#importStatus #sessions .session .sessionLeftPane>h3{padding-bottom:3px;border-bottom:1px dashed #ccc;}#importStatus #sessions .session .sessionLeftPane>h3 span.details{font-size:.8em;}#importStatus #sessions .session .sessionRightPane{width:48%;float:right;text-align:right;}#importStatus #sessions .session .sessionRightPane>p.sessionStart{color:#888;font-size:.8em;margin-bottom:2px;}#importStatus #sessions .session .sessionRightPane>p.sessionStatus{font-size:.9em;height:1.6em;overflow:hidden;margin-bottom:3px;}#importStatus #sessions .session .sessionPages>.sessionPage{min-height:56px;min-width:256px;float:left;margin:3px 0 3px 0;padding:170px 0 0 0;background-color:#fff;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:1px solid #eee;background-repeat:no-repeat;background-position:center top;}#importStatus #sessions .session .sessionPages>.sessionPage>.sessionPageDetails{height:84px;padding:2px 4px 0 4px;background-color:rgba(255,255,255,.8);}#importStatus #sessions .session .sessionPages>.sessionPage>.sessionPageDetails p.sessionStatus{font-size:.9em;height:1.6em;margin-bottom:3px;}#importStatus #sessions .session .sessionInfoMessages{margin-top:6px;border:1px solid #bbb;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;background-color:#fff;}#importStatus #sessions .session .sessionInfoMessages div.logEventsViewportContainer{max-height:220px;overflow:auto;}#importStatus #sessions .session .sessionInfoMessages div.logEventsViewportContainer .logEventsViewportNoLogs{padding-top:20px;text-align:center;font-style:italic;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport{padding:0;margin:0;background-color:#fff;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr{background-color:#eee;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th{padding:4px 2px;font-weight:600;border-bottom:1px solid #bbb;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th.icon{width:20px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th.timestamp{width:155px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th.eventType{width:180px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr{background-color:#fff;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr:nth-child(even){background-color:#eee;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td{padding:2px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon{width:20px;vertical-align:middle;text-align:center;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i{display:block;font-size:1.2em;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-info-circle{color:#1e6dab;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-triangle{color:#f0a30a;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-circle{color:#e51400;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.timestamp{width:155px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.eventType{width:180px;}#undetectedPagesContainer #undetectedPages{list-style:none;margin:0;padding:0;}#undetectedPagesContainer #undetectedPages>.undetectedPage{float:left;margin:4px;border:1px solid #f4f4f4;background-color:hsl(0,0%,98.5%);height:256px;width:256px;background-position:top center;background-repeat:no-repeat;cursor:pointer;}#undetectedPagesContainer #undetectedPages>.undetectedPage>.pageDetails{margin-top:232px;height:24px;text-align:center;}#undetectedPagesContainer #undetectedPages>.undetectedPage:hover{border:1px solid #d8d8d8;background-color:#f4f4f4;}#undetectedPageDialog>.pagePreview{height:700px;max-height:700px;background-position:top center;background-repeat:no-repeat;background-size:contain;}#undetectedPageDialog .actions{border-top:1px solid #d1d1d1;padding-top:8px;margin-top:8px;text-align:right;}.deviceBatches #DeviceBatch_PurchaseDetails_Container{padding:5px 0 5px 5px;}.deviceBatches #DeviceBatch_PurchaseDetails{width:570px;height:200px;}.deviceBatches #DeviceBatch_WarrantyDetails_Container{padding:5px 0 5px 5px;}.deviceBatches #DeviceBatch_WarrantyDetails{width:570px;height:200px;}.deviceBatches #DeviceBatch_InsuranceDetails_Container{padding:5px 0 5px 5px;}.deviceBatches #DeviceBatch_InsuranceDetails{width:570px;height:200px;}.deviceBatches #DeviceBatch_Comments{width:570px;height:200px;}.deviceBatches #DeviceBatch_Attachments{border:1px solid #ccc;background-color:#fff;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput{position:relative;height:200px;overflow:auto;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a{display:block;float:left;height:48px;width:221px;padding:2px;margin:2px;font-size:.95em;border:1px solid #fff;color:#000;text-decoration:none;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.comments,.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.author,.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.timestamp{display:block;float:left;width:168px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:16px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.author{color:#888;width:150px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.timestamp{color:#888;font-style:italic;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.icon{display:block;float:left;height:48px;width:48px;margin-right:2px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.icon img{height:48px;width:48px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.icon img.loading{display:none;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a:hover{background-color:#ededed;border:1px solid #ccc;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a:hover span.remove{opacity:.5;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.remove{font-size:1.2em;color:#e51400;margin-left:2px;cursor:pointer;opacity:0;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.remove:hover{opacity:1;}.deviceBatches #DeviceBatch_Attachments.cannotAddAttachments div.attachmentOutput{height:250px;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput{border-top:1px solid #ccc;height:40px;background-color:#fff;padding:5px;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action{color:#333;display:block;margin:0 4px 0 0;font-size:1.5em;cursor:pointer;float:right;border:1px solid #fff;padding:.5em;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action:hover{color:#335a87;background-color:#ededed;border:1px solid #ccc;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action.disabled{color:rgba(51,51,51,.2);cursor:default;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action.disabled:hover{color:rgba(51,51,51,.2);background-color:inherit;border:1px solid #fff;}#plugins .pageMenuArea a>h3{display:inline;color:#335a87;}#plugins .pageMenuArea a>h3:hover{color:#5e8cc2;}#plugins .pageMenuArea .pageMenuBlurb{padding-left:18px;}#plugins .pageMenuArea .pageMenuBlurb i{font-size:.9em;}#plugins #pageMenu td .pageMenuArea:not(:last-child){padding-bottom:5px;margin-bottom:10px;}#plugins #pageMenu td .pageMenuArea>a,#plugins #pageMenu td .pageMenuArea>h3{color:#333;}#plugins #pageMenu td .pageMenuArea>a:hover,#plugins #pageMenu td .pageMenuArea>h3:hover{color:#335a87;}#dialogUninstallPlugins #uninstallPlugin{margin:.5em 0;}#dialogUninstallPlugins #uninstallPluginData{margin:.5em 0;}#dialogUninstallPluginConfirm #uninstallPluginConfirm{text-align:center;margin:1em 0 .5em 0;}#dialogUninstallPluginConfirm #uninstallPluginDataConfirm{margin-top:1em;}#pluginLibraryHeading{float:right;}#pluginLibrary #pluginLibraryGroups{width:900px;margin:0 auto;column-count:2;}#pluginLibrary #pluginLibraryGroups>div{display:inline-block;}#pluginLibrary #pluginLibraryGroups div.form>table{margin:0 10px 10px 4px;width:calc(100% - 14px);}#pluginLibrary .pluginItem .pluginItemBlurb{margin:8px 0 8px 2px;padding:0 4px;border-left:4px solid #d1d1d1;}#pluginLibrary .pluginItem .pluginItemBlurb *{padding:0;margin:0;}#pluginLibrary .pluginItem .pageMenuBlurb i{font-size:.9em;}#pluginLibrary .pluginItem>h2:first-child{min-height:22px;}#pluginLibrary .pluginItem>h2:first-child i{font-size:.9em;padding-right:4px;color:#333;}#pluginLibrary .pluginItem>h2:first-child a{float:right;font-size:12px;}#dialogInstallPlugin div.info-box{margin-top:1em;}#dialogUploadPlugin #pluginFile{margin:1em 0 1em 6px;}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-node{padding:1px;border:0;}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-node>span.fancytree-icon{background:none;display:inline-block;font-family:FontAwesome;font-size:1.2em;width:14px;}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-ef>span.fancytree-icon:before{color:#9e9e9e;font-size:1em;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-cf>span.fancytree-icon:before{color:#9e9e9e;font-size:1em;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-c>span.fancytree-icon:before{color:#e51400;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-c.fancytree-selected>span.fancytree-icon:before{color:#60a917;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-node.fancytree-selected{font-style:normal;background:none;}#Config_AuthRoles_Subjects li,#Config_AuthRoles_Subjects_Update_Dialog_List li{padding:4px 0 4px 4px;}#Config_AuthRoles_Subjects li i.fa-user,#Config_AuthRoles_Subjects_Update_Dialog_List li i.fa-user,#Config_AuthRoles_Subjects li i.fa-users,#Config_AuthRoles_Subjects_Update_Dialog_List li i.fa-users{min-width:22px;}#Config_AuthRoles_Subjects_Update_Dialog{display:none;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_ListContainer{height:280px;overflow-y:auto;background-color:#fff;border:1px solid #d8d8d8;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_None{padding-top:15px;display:block;text-align:center;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_AddContainer{padding-top:10px;padding-left:10px;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li{cursor:pointer;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li:hover{background-color:#f4f4f4;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li:hover .remove{opacity:.8;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li .remove{margin-top:2px;padding-right:6px;float:right;cursor:pointer;opacity:0;color:#e51400;font-size:1.3em;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li .remove:hover{opacity:1;}#Config_ReportPrefs{margin-top:10px;}#Config_ReportPrefs #Config_ReportPrefs_Preview{float:right;width:150px;height:80px;border:1px solid #444;font-size:4px;color:#fff;overflow:hidden;text-transform:uppercase;}#Config_ReportPrefs #Config_ReportPrefs_Preview .heading{height:6px;padding-left:3px;overflow:hidden;background-color:#333;}#Config_ReportPrefs #Config_ReportPrefs_Preview .column-heading{float:left;width:calc(33% - 4px);padding-left:2px;margin:1px 0 0 2px;}#Config_ReportPrefs #Config_ReportPrefs_Preview .column{height:100%;float:left;width:calc(33% - 2px);margin-left:2px;overflow:hidden;background:rgba(255,255,255,.2);}#Config_ReportPrefs #Config_ReportPrefs_Preview .column span{display:block;height:4px;margin:1px;background-color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default{background:linear-gradient(to bottom,#165180,#1e6dab) left top repeat-x #1e6dab;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default-soft{background:linear-gradient(to bottom,#165180,#1e6dab) left top repeat-x #1e6dab;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green{background:linear-gradient(to bottom,#477c11,#60a917) left top repeat-x #60a917;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green-soft{background:linear-gradient(to bottom,#477c11,#60a917) left top repeat-x #60a917;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green-soft .column span.alert{background-color:#e5cc11;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet{background:linear-gradient(to bottom,#80c,#a0f) left top repeat-x #a0f;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet-soft{background:linear-gradient(to bottom,#80c,#a0f) left top repeat-x #a0f;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta{background:linear-gradient(to bottom,#a50058,#d80073) left top repeat-x #d80073;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta .column span.alert{background-color:#1681b4;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta-soft{background:linear-gradient(to bottom,#a50058,#d80073) left top repeat-x #d80073;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta-soft .column span.alert{background-color:#85cdf0;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson{background:linear-gradient(to bottom,#6f0019,#a20025) left top repeat-x #a20025;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson .column span.alert{background-color:#b0cc22;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson-soft{background:linear-gradient(to bottom,#6f0019,#a20025) left top repeat-x #a20025;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson-soft .column span.alert{background-color:#cee077;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber{background:linear-gradient(to bottom,#bf8208,#f0a30a) left top repeat-x #f0a30a;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber .column span.alert{background-color:#0050ef;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber-soft{background:linear-gradient(to bottom,#bf8208,#f0a30a) left top repeat-x #f0a30a;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber-soft .column span.alert{background-color:#bbd0fb;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown{background:linear-gradient(to bottom,#5c401f,#825a2c) left top repeat-x #825a2c;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown .column span.alert{background-color:#e3c800;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown-soft{background:linear-gradient(to bottom,#5c401f,#825a2c) left top repeat-x #825a2c;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel{background:linear-gradient(to bottom,#4e5d6c,#647689) left top repeat-x #647689;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel-soft{background:linear-gradient(to bottom,#4e5d6c,#647689) left top repeat-x #647689;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs_Builder .report{margin-bottom:10px;}#Config_ReportPrefs_Builder .report ul{margin-left:10px;}#Config_ReportPrefs_Builder .theme{margin-bottom:10px;}#Config_ReportPrefs_Builder .theme>select{margin-left:10px;}#Config_ReportPrefs_Builder .filter>select{margin-left:10px;}#Config_ReportPrefs_Builder .filter div.options{display:none;background-color:#fff;border:1px dashed #ccc;margin-top:4px;margin-left:15px;padding:2px 6px;}#Config_ReportPrefs_Builder .filter div.options .method{margin-top:4px;margin-bottom:8px;}#Config_ReportPrefs_Builder .filter div.options .method label{margin-right:14px;}#Config_ReportPrefs_Builder_Buttonpane{padding-right:.3em;}#Config_ReportPrefs_Builder_Buttonpane textarea{float:left;font-family:Consolas,"Courier New",monospace;color:#333;width:calc(100% - 1.2em - 10px);border:1px solid #ccc;white-space:pre;min-height:0;}#Config_ReportPrefs_Builder_Buttonpane i{float:right;cursor:pointer;margin:.3em .2em 0 0;color:#335a87;}#Config_ReportPrefs_Builder_Buttonpane i:hover{color:#5e8cc2;}#Config_ReportPrefs_Builder_Buttonpane .ui-dialog-buttonset{display:none;}#Config_Location{margin-top:10px;}#Config_Location #Config_Location_Unrestricted,#Config_Location #Config_Location_List,#Config_Location #Config_Location_Optional,#Config_Location #Config_Location_Restricted{display:none;margin-top:6px;}#Config_Location_List_Dialog{display:none;}#Config_Location_List_Dialog #Config_Location_List_Dialog_ListContainer{height:280px;overflow-y:auto;background-color:#fff;border:1px solid #d8d8d8;}#Config_Location_List_Dialog #Config_Location_List_Dialog_None{padding-top:15px;display:block;text-align:center;}#Config_Location_List_Dialog #Config_Location_List_Dialog_AddContainer{padding-top:10px;padding-left:10px;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li{padding:2px 0 2px 4px;cursor:pointer;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li:hover{background-color:#f4f4f4;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li:hover .remove{opacity:.8;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li .remove{margin-top:2px;padding-right:6px;float:right;cursor:pointer;opacity:0;color:#e51400;font-size:1.3em;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li .remove:hover{opacity:1;}#Config_Location_ListImport_Dialog{display:none;}#Config_Location_ListImport_Dialog #Config_Location_ListImport_Dialog_Overwrite_Container{margin:6px 0;}#Config_Location_ListImport_Dialog #Config_Location_ListImport_Dialog_LocationList{width:100%;height:200px;margin:0 auto;}#Config_JobPref_Expressions{margin-top:10px;}#Config_JobPref_Expressions #OnCreateExpression,#Config_JobPref_Expressions #OnCloseExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_JobQueues_Index i{width:1.28571429em;text-align:center;}#Config_JobQueues_Icon{display:block;margin:0 0 10px 10px;}#Config_JobQueues_Icon_Update_Dialog{display:none;}#Config_JobQueues_Icon_Update_Dialog div.colours{text-align:center;font-size:30px;}#Config_JobQueues_Icon_Update_Dialog div.colours i{cursor:pointer;padding:1px;opacity:.9;}#Config_JobQueues_Icon_Update_Dialog div.colours i:hover{opacity:1;}#Config_JobQueues_Icon_Update_Dialog div.colours i.selected{opacity:1;}#Config_JobQueues_Icon_Update_Dialog div.icons{text-align:center;font-size:30px;background-color:#fff;border:1px solid #d1d1d1;margin:6px 0 14px 0;}#Config_JobQueues_Icon_Update_Dialog div.icons i{width:1.28571429em;text-align:center;cursor:pointer;padding:4px 0;color:#333;opacity:.6;}#Config_JobQueues_Icon_Update_Dialog div.icons i:hover{opacity:.9;color:inherit;}#Config_JobQueues_Icon_Update_Dialog div.icons i.selected{opacity:1;color:inherit;}#Config_JobQueues_JobSubTypes_Update{margin:8px 0;}#Config_JobQueues_JobSubTypes_Update_Dialog #Config_JobQueues_JobSubTypes_Update_Dialog_Types{margin:0 0 8px 0;}#Config_JobQueues_JobSubTypes_Update_Dialog .jobTypes{padding:6px 0;}#Config_JobQueues_JobSubTypes_Update_Dialog .jobTypes .jobSubTypes{background-color:#f2f2f2;border-left:4px solid #d8d8d8;padding:4px 0 4px 8px;margin:4px 0 0 6px;}#Config_JobQueues_JobSubTypes_Update_Dialog .checkboxBulkSelectContainer{font-size:.8em;}#Config_JobQueues_Subjects li,#Config_JobQueues_Subjects_Update_Dialog_List li{padding:4px 0 4px 4px;}#Config_JobQueues_Subjects li i.fa-user,#Config_JobQueues_Subjects_Update_Dialog_List li i.fa-user,#Config_JobQueues_Subjects li i.fa-users,#Config_JobQueues_Subjects_Update_Dialog_List li i.fa-users{width:1.28571429em;text-align:center;}#Config_JobQueues_Subjects_Update_Dialog{display:none;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_ListContainer{height:280px;overflow-y:auto;background-color:#fff;border:1px solid #d8d8d8;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_None{padding-top:15px;display:block;text-align:center;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_AddContainer{padding-top:10px;padding-left:10px;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li{cursor:pointer;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li:hover{background-color:#f4f4f4;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li:hover .remove{opacity:.8;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li .remove{margin-top:2px;padding-right:6px;float:right;cursor:pointer;opacity:0;color:#e51400;font-size:1.3em;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li .remove:hover{opacity:1;}#Config_UserFlags_Show #UserFlag_OnAssignmentExpression,#Config_UserFlags_Show #UserFlag_OnUnassignmentExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_UserFlags_Index i{width:1.28571429em;text-align:center;}#Config_UserFlags_Icon{display:block;margin:0 0 10px 10px;}#Config_UserFlags_Icon_Update_Dialog{display:none;}#Config_UserFlags_Icon_Update_Dialog div.colours{text-align:center;font-size:30px;}#Config_UserFlags_Icon_Update_Dialog div.colours i{cursor:pointer;padding:1px;opacity:.9;}#Config_UserFlags_Icon_Update_Dialog div.colours i:hover{opacity:1;}#Config_UserFlags_Icon_Update_Dialog div.colours i.selected{opacity:1;}#Config_UserFlags_Icon_Update_Dialog div.icons{text-align:center;font-size:30px;background-color:#fff;border:1px solid #d1d1d1;margin:6px 0 14px 0;}#Config_UserFlags_Icon_Update_Dialog div.icons i{width:1.28571429em;text-align:center;cursor:pointer;padding:4px 0;color:#333;opacity:.6;}#Config_UserFlags_Icon_Update_Dialog div.icons i:hover{opacity:.9;color:inherit;}#Config_UserFlags_Icon_Update_Dialog div.icons i.selected{opacity:1;color:inherit;}#Config_UserFlags_BulkAssign_ModeDialog>div{margin-top:6px;background-color:#fff;line-height:1.3em;border:1px solid #ddd;}#Config_UserFlags_BulkAssign_ModeDialog>div>div{display:block;padding:4px;cursor:pointer;}#Config_UserFlags_BulkAssign_ModeDialog>div>div:not(:last-child){border-bottom:1px dashed #ddd;}#Config_UserFlags_BulkAssign_ModeDialog>div>div h5{font-size:1.1em;padding:4px 0;}#Config_UserFlags_BulkAssign_ModeDialog>div>div i{margin-right:4px;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.add:hover{background-color:#eeffde;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.add i{color:#60a917;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.override:hover{background-color:#ffe1de;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.override i{color:#e51400;}#Config_UserFlags_BulkAssign_AssignDialog .brief{margin:0 0 8px 0;}#Config_UserFlags_BulkAssign_AssignDialog .brief .scopeDescBulkGenerate{font-weight:600;}#Config_UserFlags_BulkAssign_AssignDialog .brief div.examples{margin:8px auto;width:300px;}#Config_UserFlags_BulkAssign_AssignDialog .brief div.examples div{margin:2px 4px 2px 0;width:150px;float:left;}#Config_UserFlags_BulkAssign_AssignDialog .brief div.examples div.example1{width:100px;}#Config_UserFlags_BulkAssign_AssignDialog div.loading{display:none;padding:40px 0;text-align:center;}#Config_UserFlags_BulkAssign_AssignDialog div.loading i{margin-right:10px;color:#1e6dab;}#Config_UserFlags_BulkAssign_AssignDialog #Config_UserFlags_BulkAssign_AssignDialog_UserIds{height:200px;margin-bottom:8px;}#Config_UserFlags_BulkAssign_AssignDialog textarea{width:calc(100% - .5em);margin:0;}#Config_UserFlags_BulkAssign_AssignDialog.loading>div.loading{display:block;}#Config_UserFlags_BulkAssign_AssignDialog.loading>form{display:none;}#UserFlag_Export #UserFlag_Export_Fields #UserFlag_Export_Fields_Defaults{font-size:.75em;}#UserFlag_Export #UserFlag_Export_Fields th{font-size:1.05em;}#UserFlag_Export #UserFlag_Export_Fields th span{margin-top:4px;font-size:.8em;}#UserFlag_Export_Download_Dialog{padding-top:20px;text-align:center;}#UserFlag_Export_Download_Dialog h4{margin-bottom:30px;}#UserFlag_Export_Download_Dialog a{margin-bottom:20px;}#UserFlag_Export_Exporting{padding-top:50px;text-align:center;}#UserFlag_Export_Exporting i{margin-right:10px;color:#1e6dab;}#DocumentTemplate_BulkGenerate .actions{padding-bottom:.5em;text-align:right;}#DocumentTemplate_BulkGenerate table{max-width:850px;margin:auto;}#DocumentTemplate_BulkGenerate table tr.when-none{text-align:center;font-style:italic;}.dialog-item-picker{height:300px;overflow-y:auto;background-color:#fcfcfc;border:1px solid #ccc;}.dialog-item-picker>div{background-color:#fff;border-bottom:1px solid #ddd;padding:6px 0 6px 6px;cursor:pointer;}.dialog-item-picker>div:hover{background-color:#f4f4f4;}.dialog-item-picker>div.selected,.dialog-item-picker>div.selected:hover{background-color:#eee;}.dialog-item-picker>div.disabled{cursor:not-allowed;background-color:#f4f4f4;} \ No newline at end of file +.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:hsl(0,0%,98.5%);}.tableData>thead>tr>th,.tableData>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}.tableData>tbody>tr:hover>td{background-color:hsl(0,0%,97.5%);}.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;}#updateAvailableContainer{float:right;border:1px dashed #ddd;background-color:#fff;font-size:.6em;line-height:1em;padding:10px 10px 4px 70px;text-align:right;height:50px;}#updateAvailableContainer i{position:absolute;display:block;height:64px;width:64px;vertical-align:middle;margin-left:-70px;font-size:50px;color:#e51400;}#updateAvailableContainer a.button{font-size:12px;margin-top:8px;}.Config_HideAdvanced .Config_HideAdvanced_Item{display:none;}.Config_LinkedGroup_Instance{margin:4px 0 8px 4px;padding:4px 0 4px 6px;border-left:4px solid #ccc;background-color:#fff;}.Config_LinkedGroup_Instance div.code{margin-left:2px;}#Config_LinkedGroup_Dialog h3{margin-bottom:6px;}#Config_LinkedGroup_Dialog table.input{margin-top:12px;}#Config_LinkedGroup_Dialog table.input th{text-align:right;}#expressionEditor #expressionEditorExceptionContainer{display:none;border:1px dashed #ff9696;background-color:#ffd8d8;margin:10px 0;padding:10px;}#expressionEditor #expressionEditorContainer{border:1px solid #1e6dab;background-color:#f4f4f4;height:100px;}.expressionTree span.dynatree-node span.dynatree-icon{background-image:url(data:image/png;base64,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);background-position-y:0;}.expressionTree span.dynatree-node.object span.dynatree-icon{background-position-x:0;}.expressionTree span.dynatree-node.parameter span.dynatree-icon{background-position-x:-16px;}.expressionTree span.dynatree-node.function span.dynatree-icon{background-position-x:-32px;}.expressionTree span.dynatree-node.property span.dynatree-icon{background-position-x:-48px;}table.expressionsTable{border:solid 1px #f4f4f4;border-collapse:collapse;}table.expressionsTable>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}table.expressionsTable>tbody>tr:nth-child(odd)>td{background-color:hsl(0,0%,98.5%);}table.expressionsTable>thead>tr>th,table.expressionsTable>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}table.expressionsTable>tbody>tr:hover>td{background-color:hsl(0,0%,97.5%);}table.expressionsTable>tfoot>tr>th,table.expressionsTable>tfoot>tr>td{background-color:#f4f4f4;}table.expressionsTable td.parseError{background-color:#ffd8d8;}#AttachmentType_FilterExpression{width:375px;}#deviceComponents{border:solid 1px #f4f4f4;border-collapse:collapse;}#deviceComponents>tbody>tr>td{border:solid 1px #f4f4f4;background-color:#fff;}#deviceComponents>tbody>tr:nth-child(odd)>td{background-color:hsl(0,0%,98.5%);}#deviceComponents>thead>tr>th,#deviceComponents>tbody>tr>th{background-color:#f4f4f4;border:solid 1px #f4f4f4;}#deviceComponents>tbody>tr:hover>td{background-color:hsl(0,0%,97.5%);}#deviceComponents>tfoot>tr>th,#deviceComponents>tfoot>tr>td{background-color:#f4f4f4;}#deviceComponents tr th.actions{width:20px;}#deviceComponents tr input.description{width:300px;}#deviceComponents tr input.cost{width:75px;}#deviceComponents tr i.remove{font-size:1.6em;color:#e51400;cursor:pointer;opacity:.8;}#deviceComponents tr i.remove:hover{opacity:1;}#deviceComponents tr i.fa-list-alt{color:#1e6dab;font-size:1.6em;cursor:pointer;}#deviceComponents tr i.fa-asterisk{color:#fa6800;font-size:1em;left:10px;top:3px;cursor:pointer;}#deviceComponents tr input.updating{background-position:right center;background-repeat:no-repeat;background-image:url(data:image/gif;base64,R0lGODlhEAALAPQAAP///zNah+Hm7dng6O7x9DddiTNah1d3nJqtw3+Xs8fS3k5vlm6JqaGzx4KatcrU4FFymDZciHGMq+ru8t/l7Pb3+V9+oeLo7vT2+MTP3LLB0dTc5fHz9gAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCwAAACwAAAAAEAALAAAFLSAgjmRpnqSgCuLKAq5AEIM4zDVw03ve27ifDgfkEYe04kDIDC5zrtYKRa2WQgAh+QQJCwAAACwAAAAAEAALAAAFJGBhGAVgnqhpHIeRvsDawqns0qeN5+y967tYLyicBYE7EYkYAgAh+QQJCwAAACwAAAAAEAALAAAFNiAgjothLOOIJAkiGgxjpGKiKMkbz7SN6zIawJcDwIK9W/HISxGBzdHTuBNOmcJVCyoUlk7CEAAh+QQJCwAAACwAAAAAEAALAAAFNSAgjqQIRRFUAo3jNGIkSdHqPI8Tz3V55zuaDacDyIQ+YrBH+hWPzJFzOQQaeavWi7oqnVIhACH5BAkLAAAALAAAAAAQAAsAAAUyICCOZGme1rJY5kRRk7hI0mJSVUXJtF3iOl7tltsBZsNfUegjAY3I5sgFY55KqdX1GgIAIfkECQsAAAAsAAAAABAACwAABTcgII5kaZ4kcV2EqLJipmnZhWGXaOOitm2aXQ4g7P2Ct2ER4AMul00kj5g0Al8tADY2y6C+4FIIACH5BAkLAAAALAAAAAAQAAsAAAUvICCOZGme5ERRk6iy7qpyHCVStA3gNa/7txxwlwv2isSacYUc+l4tADQGQ1mvpBAAIfkECQsAAAAsAAAAABAACwAABS8gII5kaZ7kRFGTqLLuqnIcJVK0DeA1r/u3HHCXC/aKxJpxhRz6Xi0ANAZDWa+kEAA7AAAAAAAAAAAA);}#organisationAddresses{font-size:.9em;}#organisationAddresses tr:not(:last-child){border-bottom:1px dashed #aaa;}#organisationAddresses th{padding:2px;font-weight:600;width:200px;}#organisationAddresses td{padding:2px;vertical-align:middle;}#organisationAddresses tr:nth-child(even){background-color:#fff;}#organisationAddresses i.fa{font-size:1.7em;cursor:pointer;}#organisationAddresses i.fa.delete{color:#e51400;opacity:.8;}#organisationAddresses i.fa.delete:hover{opacity:1;}#organisationAddresses i.fa.edit{color:#1e6dab;}ul#loggingEntries{overflow:auto;max-height:230px;padding-left:20px;}table.deviceProfileTable th.name{width:300px;}table.deviceProfileTable th.type{width:120px;}table.deviceProfileTable th.deviceCount{width:120px;}#configurationDeviceProfileShow #displayComputerNameTemplate{margin:0 0 6px 0;}#configurationDeviceProfileShow #displayOrganisationalUnit{margin:0 0 6px 0;}#dialogComputerNameTemplate #ComputerNameTemplate{box-sizing:border-box;height:48px;width:100%;font-family:Consolas,"Courier New",monospace;}.organisationalUnitTree span.fancytree-node{padding:1px;border:0;}.organisationalUnitTree span.fancytree-node>span.fancytree-icon{background:none;display:inline-block;font-family:FontAwesome;font-size:1.2em;width:14px;}.organisationalUnitTree span.fancytree-ico-ef>span.fancytree-icon:before{color:#1e6dab;font-size:1em;content:"";}.organisationalUnitTree span.fancytree-ico-cf>span.fancytree-icon:before{color:#1e6dab;font-size:1em;content:"";}.organisationalUnitTree ul.fancytree-container>li>span>span.fancytree-icon:before{color:#fa6800;font-size:1em;content:"";}.organisationalUnitTree span.fancytree-node.fancytree-selected{font-style:normal;background:none;}#Config_System_AD_SearchScope_Dialog_Loading,#dialogOrganisationalUnit_Loading{text-align:center;padding:40px 0;}#configurationDocumentTemplateExpressionBrowser{padding-right:275px;background-image:url(data:image/png;base64,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);background-position:right top;background-repeat:no-repeat;}#Logging_Task_Status{width:520px;margin:40px auto 60px auto;}#Logging_Task_Status th.process{text-align:left;font-weight:600;background-color:#f4f4f4;min-height:30px;vertical-align:middle;}#Logging_Task_Status td.description{font-size:.9em;min-height:60px;}#Logging_Task_Status td.progress{padding:8px 10px;}#Logging_Task_Status td.finishedMessage i{display:none;}#Logging_Task_Status td.finishedRedirect{position:relative;}#Logging_Task_Status td.finishedRedirect i{color:#1e6dab;position:absolute;right:10px;top:calc(57% - .5em);display:inline-block;}#Logging_Task_Status td.exception{background-color:#ffd8d8;}div.logEventsViewport{border:1px solid #bbb;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;}div.logEventsViewport div.logEventsViewportContainer{overflow-y:auto;overflow-x:hidden;}div.logEventsViewport div.logEventsViewportContainer .logEventsViewportNoLogs{padding-top:20px;text-align:center;font-style:italic;}div.logEventsViewport table.logEventsViewport{padding:0;margin:0;background-color:#bbb;table-layout:fixed;}div.logEventsViewport table.logEventsViewport>thead>tr{background-color:#eee;}div.logEventsViewport table.logEventsViewport>thead>tr>th{padding:4px 2px;font-weight:600;border-bottom:1px solid #bbb;}div.logEventsViewport table.logEventsViewport>thead>tr>th.icon{width:20px;}div.logEventsViewport table.logEventsViewport>thead>tr>th.timestamp{width:155px;}div.logEventsViewport table.logEventsViewport>thead>tr>th.eventType{width:180px;}div.logEventsViewport table.logEventsViewport>tbody>tr{background-color:#fff;}div.logEventsViewport table.logEventsViewport>tbody>tr:nth-child(even){background-color:#eee;}div.logEventsViewport table.logEventsViewport>tbody>tr>td{padding:2px;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon{width:20px;vertical-align:middle;text-align:center;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i{display:block;font-size:1.2em;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i.fa-info-circle{color:#1e6dab;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-triangle{color:#f0a30a;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-circle{color:#e51400;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.timestamp{width:155px;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.eventType{width:180px;}div.logEventsViewport table.logEventsViewport>tbody>tr>td.message{white-space:pre-wrap;}#enrolStatus #sessions .session{width:280px;padding:4px 4px 4px 72px;margin:8px;border:5px solid #efefef;-moz-border-radius:0 20px 0 0;-webkit-border-radius:0 20px 0 0;border-radius:0 20px 0 0;background-color:#f5f5f5;background-repeat:no-repeat,no-repeat;background-position:36px 36px,4px 4px;-moz-background-size:32px,64px;-o-background-size:32px,64px;-webkit-background-size:32px,64px;background-size:32px,64px;min-height:72px;cursor:pointer;}#enrolStatus #sessions .session>h3{padding-bottom:3px;border-bottom:1px dashed #ccc;}#enrolStatus #sessions .session>h3 span.details{font-size:.8em;}#enrolStatus #sessions .session>p.sessionStart{color:#888;font-size:.8em;margin-bottom:2px;}#enrolStatus #sessions .session>p.sessionStatus{font-size:.9em;height:1.6em;overflow:hidden;margin-bottom:3px;}#enrolStatus #sessions .session:hover{border:5px solid #6c7a87;background-color:#dfe1f8;}#dialogSession .sessionHeader{width:400px;float:left;padding:0 0 0 134px;background-repeat:no-repeat,no-repeat;background-position:96px 96px,0 0;-moz-background-size:32px,128px;-o-background-size:32px,128px;-webkit-background-size:32px,128px;background-size:32px,128px;min-height:134px;}#dialogSession .sessionHeader>h2{padding-bottom:0;}#dialogSession .sessionHeader>table{margin-top:4px;}#dialogSession .sessionHeader>table th{width:128px;text-align:right;}#dialogSession .sessionHeader>table td,#dialogSession .sessionHeader>table th{padding:1px 2px;}#dialogSession .sessionProgress{width:320px;float:right;text-align:right;}#dialogSession .sessionProgress>p.sessionStart{color:#888;margin-bottom:2px;}#dialogSession .sessionProgress>p.sessionStatus{height:1.6em;overflow:hidden;margin-bottom:3px;}#dialogSession .sessionInfoContainer>div{float:left;width:428px;overflow:auto;}#dialogSession .sessionInfoContainer .sessionInfoMessages{height:374px;border:1px solid #bbb;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;background-color:#fff;}#dialogSession .sessionInfoContainer .sessionInfoMessages div.logEventsViewportContainer{overflow:auto;}#dialogSession .sessionInfoContainer .sessionInfoMessages div.logEventsViewportContainer .logEventsViewportNoLogs{padding-top:20px;text-align:center;font-style:italic;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport{padding:0;margin:0;background-color:#fff;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr{background-color:#eee;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th{padding:4px 2px;font-weight:600;border-bottom:1px solid #bbb;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th.icon{width:20px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th.timestamp{width:155px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>thead>tr>th.eventType{width:180px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr{background-color:#fff;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr:nth-child(even){background-color:#eee;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td{padding:2px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon{width:20px;vertical-align:middle;text-align:center;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i{display:block;font-size:1.2em;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-info-circle{color:#1e6dab;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-triangle{color:#f0a30a;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-circle{color:#e51400;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.timestamp{width:155px;}#dialogSession .sessionInfoContainer .sessionInfoMessages table.logEventsViewport>tbody>tr>td.eventType{width:180px;}#dialogSession .sessionInfoContainer .sessionInfoConsole{margin-left:6px;background-color:#222;color:#0f0;font-family:Consolas,"Courier New",monospace;border:4px solid #ccc;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;padding:2px;height:364px;}#Config_DocumentTemplates_Show>div.form>table>tbody>tr>th{width:140px;}#Config_DocumentTemplates_Show #DocumentTemplate_FilterExpression,#Config_DocumentTemplates_Show #DocumentTemplate_OnGenerateExpression,#Config_DocumentTemplates_Show #DocumentTemplate_OnImportAttachmentExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_DocumentTemplates_Show #Config_DocumentTemplates_Scope_Button{margin-top:4px;}#Config_DocumentTemplates_Scope_Dialog div.input{margin:14px 10px 20px;}#Config_DocumentTemplates_TemplatePdf_Dialog div{text-align:center;}#Config_DocumentTemplates_TemplatePdf_Dialog div input{margin:16px 0;}#Config_DocumentTemplates_JobSubTypes{border:1px dashed #d8d8d8;background-color:#fff;padding:4px;margin-top:6px;}#Config_DocumentTemplates_JobSubTypes>h4{margin-bottom:4px;}#Config_DocumentTemplates_JobSubTypes #Config_DocumentTemplates_JobSubTypes_Update{margin-top:4px;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog #Config_DocumentTemplates_JobSubTypes_Update_Dialog_Types{margin:0 0 8px 0;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog .jobTypes{padding:6px 0;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog .jobTypes .jobSubTypes{background-color:#f2f2f2;border-left:4px solid #d8d8d8;padding:4px 0 4px 8px;margin:4px 0 0 6px;}#Config_DocumentTemplates_JobSubTypes_Update_Dialog .checkboxBulkSelectContainer{font-size:.8em;}#DocumentTemplate_OnImportUserFlagRules_AddDialog .distribute-evenly{display:flex;justify-content:space-around;margin:1em 0;}#DocumentTemplate_OnImportUserFlagRules_AddDialog textarea{width:99%;}#DocumentTemplate_OnImportUserFlagRules_AddDialog .mt-1{margin-top:1em;}.dialog-bulk-generate .brief{margin:0 0 8px 0;}.dialog-bulk-generate .brief .scopeDescBulkGenerate{font-weight:600;}.dialog-bulk-generate .brief div.examples{margin:8px auto;width:360px;}.dialog-bulk-generate .brief div.examples div{margin:2px 4px 2px 0;width:230px;float:left;}.dialog-bulk-generate .brief div.examples div.example1{width:100px;}.dialog-bulk-generate textarea{width:calc(100% - .5em);height:200px;margin:0 auto;}.dialog-bulk-generate .sub{margin-top:.75em;}#Config_DocumentTemplates_Show_DownloadBulk_Dialog{padding-top:20px;text-align:center;}h1.Config_DocumentTemplates{margin:10px 0 6px;}#Config_DocumentTemplatePackages_Show>div.form>table>tbody>tr>th{width:140px;}#Config_DocumentTemplatePackages_Show #Package_FilterExpression,#Config_DocumentTemplatePackages_Show #Package_OnGenerateExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackages_Scope_Button{margin-top:4px;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List{list-style-type:decimal;list-style-position:inside;background-color:#f2f2f2;border:1px solid #d8d8d8;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List li{padding:6px 8px;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List li:not(:first-child){border-top:1px dashed #d8d8d8;}#Config_DocumentTemplatePackages_Show #Config_DocumentTemplatePackage_List li .id{font-family:Consolas,"Courier New",monospace;float:right;}#Config_DocumentTemplatePackages_Scope_Dialog div.input{margin:14px 10px 20px;}#Config_DocumentTemplatePackages_JobSubTypes{border:1px dashed #d8d8d8;background-color:#fff;padding:4px;margin-top:6px;}#Config_DocumentTemplatePackages_JobSubTypes>h4{margin-bottom:4px;}#Config_DocumentTemplatePackages_JobSubTypes #Config_DocumentTemplatePackages_JobSubTypes_Update{margin-top:4px;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog #Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog_Types{margin:0 0 8px 0;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog .jobTypes{padding:6px 0;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog .jobTypes .jobSubTypes{background-color:#f2f2f2;border-left:4px solid #d8d8d8;padding:4px 0 4px 8px;margin:4px 0 0 6px;}#Config_DocumentTemplatePackages_JobSubTypes_Update_Dialog .checkboxBulkSelectContainer{font-size:.8em;}#Config_DocumentTemplatePackages_Templates_Dialog h3{margin-bottom:4px;}#Config_DocumentTemplatePackages_Templates_Dialog>div{width:374px;float:left;}#Config_DocumentTemplatePackages_Templates_Dialog>div:first-child{margin-right:20px;}#Config_DocumentTemplatePackages_Templates_Dialog .templates_connected{min-height:200px;}#Config_DocumentTemplatePackages_Templates_Dialog ol{list-style-type:decimal;padding-left:24px;border:1px solid #d8d8d8;background-color:#f2f2f2;}#Config_DocumentTemplatePackages_Templates_Dialog li{background-color:#fff;border:1px solid #d8d8d8;margin:4px;padding:2px 4px;-moz-box-shadow:0 0 5px rgba(209,209,209,.5);-webkit-box-shadow:0 0 5px rgba(209,209,209,.5);box-shadow:0 0 5px rgba(209,209,209,.5);cursor:default;}#Config_DocumentTemplatePackages_Templates_Dialog li:hover{background-color:#cddbec;border-color:#1e6dab;}#Config_DocumentTemplatePackages_Templates_Dialog li .id{font-family:Consolas,"Courier New",monospace;color:#888;float:right;font-size:.9em;}#importStatus #sessions .session{padding:4px;margin-bottom:10px;border:1px solid #efefef;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;background-color:#f5f5f5;min-height:72px;}#importStatus #sessions .session .sessionLeftPane{width:48%;float:left;}#importStatus #sessions .session .sessionLeftPane>h3{padding-bottom:3px;border-bottom:1px dashed #ccc;}#importStatus #sessions .session .sessionLeftPane>h3 span.details{font-size:.8em;}#importStatus #sessions .session .sessionRightPane{width:48%;float:right;text-align:right;}#importStatus #sessions .session .sessionRightPane>p.sessionStart{color:#888;font-size:.8em;margin-bottom:2px;}#importStatus #sessions .session .sessionRightPane>p.sessionStatus{font-size:.9em;height:1.6em;overflow:hidden;margin-bottom:3px;}#importStatus #sessions .session .sessionPages>.sessionPage{min-height:56px;min-width:256px;float:left;margin:3px 0 3px 0;padding:170px 0 0 0;background-color:#fff;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:1px solid #eee;background-repeat:no-repeat;background-position:center top;}#importStatus #sessions .session .sessionPages>.sessionPage>.sessionPageDetails{height:84px;padding:2px 4px 0 4px;background-color:rgba(255,255,255,.8);}#importStatus #sessions .session .sessionPages>.sessionPage>.sessionPageDetails p.sessionStatus{font-size:.9em;height:1.6em;margin-bottom:3px;}#importStatus #sessions .session .sessionInfoMessages{margin-top:6px;border:1px solid #bbb;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;background-color:#fff;}#importStatus #sessions .session .sessionInfoMessages div.logEventsViewportContainer{max-height:220px;overflow:auto;}#importStatus #sessions .session .sessionInfoMessages div.logEventsViewportContainer .logEventsViewportNoLogs{padding-top:20px;text-align:center;font-style:italic;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport{padding:0;margin:0;background-color:#fff;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr{background-color:#eee;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th{padding:4px 2px;font-weight:600;border-bottom:1px solid #bbb;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th.icon{width:20px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th.timestamp{width:155px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>thead>tr>th.eventType{width:180px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr{background-color:#fff;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr:nth-child(even){background-color:#eee;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td{padding:2px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon{width:20px;vertical-align:middle;text-align:center;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i{display:block;font-size:1.2em;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-info-circle{color:#1e6dab;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-triangle{color:#f0a30a;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.icon>i.fa-exclamation-circle{color:#e51400;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.timestamp{width:155px;}#importStatus #sessions .session .sessionInfoMessages table.logEventsViewport>tbody>tr>td.eventType{width:180px;}#undetectedPagesContainer #undetectedPages{list-style:none;margin:0;padding:0;}#undetectedPagesContainer #undetectedPages>.undetectedPage{float:left;margin:4px;border:1px solid #f4f4f4;background-color:hsl(0,0%,98.5%);height:256px;width:256px;background-position:top center;background-repeat:no-repeat;cursor:pointer;}#undetectedPagesContainer #undetectedPages>.undetectedPage>.pageDetails{margin-top:232px;height:24px;text-align:center;}#undetectedPagesContainer #undetectedPages>.undetectedPage:hover{border:1px solid #d8d8d8;background-color:#f4f4f4;}#undetectedPageDialog>.pagePreview{height:700px;max-height:700px;background-position:top center;background-repeat:no-repeat;background-size:contain;}#undetectedPageDialog .actions{border-top:1px solid #d1d1d1;padding-top:8px;margin-top:8px;text-align:right;}.deviceBatches #DeviceBatch_PurchaseDetails_Container{padding:5px 0 5px 5px;}.deviceBatches #DeviceBatch_PurchaseDetails{width:570px;height:200px;}.deviceBatches #DeviceBatch_WarrantyDetails_Container{padding:5px 0 5px 5px;}.deviceBatches #DeviceBatch_WarrantyDetails{width:570px;height:200px;}.deviceBatches #DeviceBatch_InsuranceDetails_Container{padding:5px 0 5px 5px;}.deviceBatches #DeviceBatch_InsuranceDetails{width:570px;height:200px;}.deviceBatches #DeviceBatch_Comments{width:570px;height:200px;}.deviceBatches #DeviceBatch_Attachments{border:1px solid #ccc;background-color:#fff;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput{position:relative;height:200px;overflow:auto;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a{display:block;float:left;height:48px;width:221px;padding:2px;margin:2px;font-size:.95em;border:1px solid #fff;color:#000;text-decoration:none;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.comments,.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.author,.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.timestamp{display:block;float:left;width:168px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:16px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.author{color:#888;width:150px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.timestamp{color:#888;font-style:italic;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.icon{display:block;float:left;height:48px;width:48px;margin-right:2px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.icon img{height:48px;width:48px;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.icon img.loading{display:none;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a:hover{background-color:#ededed;border:1px solid #ccc;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a:hover span.remove{opacity:.5;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.remove{font-size:1.2em;color:#e51400;margin-left:2px;cursor:pointer;opacity:0;}.deviceBatches #DeviceBatch_Attachments div.attachmentOutput>a span.remove:hover{opacity:1;}.deviceBatches #DeviceBatch_Attachments.cannotAddAttachments div.attachmentOutput{height:250px;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput{border-top:1px solid #ccc;height:40px;background-color:#fff;padding:5px;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action{color:#333;display:block;margin:0 4px 0 0;font-size:1.5em;cursor:pointer;float:right;border:1px solid #fff;padding:.5em;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action:hover{color:#335a87;background-color:#ededed;border:1px solid #ccc;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action.disabled{color:rgba(51,51,51,.2);cursor:default;}.deviceBatches #DeviceBatch_Attachments div.attachmentInput span.action.disabled:hover{color:rgba(51,51,51,.2);background-color:inherit;border:1px solid #fff;}#plugins .pageMenuArea a>h3{display:inline;color:#335a87;}#plugins .pageMenuArea a>h3:hover{color:#5e8cc2;}#plugins .pageMenuArea .pageMenuBlurb{padding-left:18px;}#plugins .pageMenuArea .pageMenuBlurb i{font-size:.9em;}#plugins #pageMenu td .pageMenuArea:not(:last-child){padding-bottom:5px;margin-bottom:10px;}#plugins #pageMenu td .pageMenuArea>a,#plugins #pageMenu td .pageMenuArea>h3{color:#333;}#plugins #pageMenu td .pageMenuArea>a:hover,#plugins #pageMenu td .pageMenuArea>h3:hover{color:#335a87;}#dialogUninstallPlugins #uninstallPlugin{margin:.5em 0;}#dialogUninstallPlugins #uninstallPluginData{margin:.5em 0;}#dialogUninstallPluginConfirm #uninstallPluginConfirm{text-align:center;margin:1em 0 .5em 0;}#dialogUninstallPluginConfirm #uninstallPluginDataConfirm{margin-top:1em;}#pluginLibraryHeading{float:right;}#pluginLibrary #pluginLibraryGroups{width:900px;margin:0 auto;column-count:2;}#pluginLibrary #pluginLibraryGroups>div{display:inline-block;}#pluginLibrary #pluginLibraryGroups div.form>table{margin:0 10px 10px 4px;width:calc(100% - 14px);}#pluginLibrary .pluginItem .pluginItemBlurb{margin:8px 0 8px 2px;padding:0 4px;border-left:4px solid #d1d1d1;}#pluginLibrary .pluginItem .pluginItemBlurb *{padding:0;margin:0;}#pluginLibrary .pluginItem .pageMenuBlurb i{font-size:.9em;}#pluginLibrary .pluginItem>h2:first-child{min-height:22px;}#pluginLibrary .pluginItem>h2:first-child i{font-size:.9em;padding-right:4px;color:#333;}#pluginLibrary .pluginItem>h2:first-child a{float:right;font-size:12px;}#dialogInstallPlugin div.info-box{margin-top:1em;}#dialogUploadPlugin #pluginFile{margin:1em 0 1em 6px;}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-node{padding:1px;border:0;}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-node>span.fancytree-icon{background:none;display:inline-block;font-family:FontAwesome;font-size:1.2em;width:14px;}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-ef>span.fancytree-icon:before{color:#9e9e9e;font-size:1em;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-cf>span.fancytree-icon:before{color:#9e9e9e;font-size:1em;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-c>span.fancytree-icon:before{color:#e51400;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-ico-c.fancytree-selected>span.fancytree-icon:before{color:#60a917;content:"";}#Config_AuthRoles_Show #Config_AuthRoles_Claims_Tree span.fancytree-node.fancytree-selected{font-style:normal;background:none;}#Config_AuthRoles_Subjects li,#Config_AuthRoles_Subjects_Update_Dialog_List li{padding:4px 0 4px 4px;}#Config_AuthRoles_Subjects li i.fa-user,#Config_AuthRoles_Subjects_Update_Dialog_List li i.fa-user,#Config_AuthRoles_Subjects li i.fa-users,#Config_AuthRoles_Subjects_Update_Dialog_List li i.fa-users{min-width:22px;}#Config_AuthRoles_Subjects_Update_Dialog{display:none;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_ListContainer{height:280px;overflow-y:auto;background-color:#fff;border:1px solid #d8d8d8;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_None{padding-top:15px;display:block;text-align:center;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_AddContainer{padding-top:10px;padding-left:10px;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li{cursor:pointer;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li:hover{background-color:#f4f4f4;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li:hover .remove{opacity:.8;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li .remove{margin-top:2px;padding-right:6px;float:right;cursor:pointer;opacity:0;color:#e51400;font-size:1.3em;}#Config_AuthRoles_Subjects_Update_Dialog #Config_AuthRoles_Subjects_Update_Dialog_List li .remove:hover{opacity:1;}#Config_ReportPrefs{margin-top:10px;}#Config_ReportPrefs #Config_ReportPrefs_Preview{float:right;width:150px;height:80px;border:1px solid #444;font-size:4px;color:#fff;overflow:hidden;text-transform:uppercase;}#Config_ReportPrefs #Config_ReportPrefs_Preview .heading{height:6px;padding-left:3px;overflow:hidden;background-color:#333;}#Config_ReportPrefs #Config_ReportPrefs_Preview .column-heading{float:left;width:calc(33% - 4px);padding-left:2px;margin:1px 0 0 2px;}#Config_ReportPrefs #Config_ReportPrefs_Preview .column{height:100%;float:left;width:calc(33% - 2px);margin-left:2px;overflow:hidden;background:rgba(255,255,255,.2);}#Config_ReportPrefs #Config_ReportPrefs_Preview .column span{display:block;height:4px;margin:1px;background-color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default{background:linear-gradient(to bottom,#165180,#1e6dab) left top repeat-x #1e6dab;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default-soft{background:linear-gradient(to bottom,#165180,#1e6dab) left top repeat-x #1e6dab;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-default-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green{background:linear-gradient(to bottom,#477c11,#60a917) left top repeat-x #60a917;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green-soft{background:linear-gradient(to bottom,#477c11,#60a917) left top repeat-x #60a917;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-green-soft .column span.alert{background-color:#e5cc11;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet{background:linear-gradient(to bottom,#80c,#a0f) left top repeat-x #a0f;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet-soft{background:linear-gradient(to bottom,#80c,#a0f) left top repeat-x #a0f;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-violet-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta{background:linear-gradient(to bottom,#a50058,#d80073) left top repeat-x #d80073;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta .column span.alert{background-color:#1681b4;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta-soft{background:linear-gradient(to bottom,#a50058,#d80073) left top repeat-x #d80073;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-magenta-soft .column span.alert{background-color:#85cdf0;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson{background:linear-gradient(to bottom,#6f0019,#a20025) left top repeat-x #a20025;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson .column span.alert{background-color:#b0cc22;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson-soft{background:linear-gradient(to bottom,#6f0019,#a20025) left top repeat-x #a20025;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-crimson-soft .column span.alert{background-color:#cee077;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber{background:linear-gradient(to bottom,#bf8208,#f0a30a) left top repeat-x #f0a30a;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber .column span.alert{background-color:#0050ef;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber-soft{background:linear-gradient(to bottom,#bf8208,#f0a30a) left top repeat-x #f0a30a;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-amber-soft .column span.alert{background-color:#bbd0fb;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown{background:linear-gradient(to bottom,#5c401f,#825a2c) left top repeat-x #825a2c;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown .column span.alert{background-color:#e3c800;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown-soft{background:linear-gradient(to bottom,#5c401f,#825a2c) left top repeat-x #825a2c;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-brown-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel{background:linear-gradient(to bottom,#4e5d6c,#647689) left top repeat-x #647689;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel .column span.alert{background-color:#e51400;color:#fff;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel-soft{background:linear-gradient(to bottom,#4e5d6c,#647689) left top repeat-x #647689;}#Config_ReportPrefs #Config_ReportPrefs_Preview.theme-steel-soft .column span.alert{background-color:#f0e277;color:#000;}#Config_ReportPrefs_Builder .report{margin-bottom:10px;}#Config_ReportPrefs_Builder .report ul{margin-left:10px;}#Config_ReportPrefs_Builder .theme{margin-bottom:10px;}#Config_ReportPrefs_Builder .theme>select{margin-left:10px;}#Config_ReportPrefs_Builder .filter>select{margin-left:10px;}#Config_ReportPrefs_Builder .filter div.options{display:none;background-color:#fff;border:1px dashed #ccc;margin-top:4px;margin-left:15px;padding:2px 6px;}#Config_ReportPrefs_Builder .filter div.options .method{margin-top:4px;margin-bottom:8px;}#Config_ReportPrefs_Builder .filter div.options .method label{margin-right:14px;}#Config_ReportPrefs_Builder_Buttonpane{padding-right:.3em;}#Config_ReportPrefs_Builder_Buttonpane textarea{float:left;font-family:Consolas,"Courier New",monospace;color:#333;width:calc(100% - 1.2em - 10px);border:1px solid #ccc;white-space:pre;min-height:0;}#Config_ReportPrefs_Builder_Buttonpane i{float:right;cursor:pointer;margin:.3em .2em 0 0;color:#335a87;}#Config_ReportPrefs_Builder_Buttonpane i:hover{color:#5e8cc2;}#Config_ReportPrefs_Builder_Buttonpane .ui-dialog-buttonset{display:none;}#Config_Location{margin-top:10px;}#Config_Location #Config_Location_Unrestricted,#Config_Location #Config_Location_List,#Config_Location #Config_Location_Optional,#Config_Location #Config_Location_Restricted{display:none;margin-top:6px;}#Config_Location_List_Dialog{display:none;}#Config_Location_List_Dialog #Config_Location_List_Dialog_ListContainer{height:280px;overflow-y:auto;background-color:#fff;border:1px solid #d8d8d8;}#Config_Location_List_Dialog #Config_Location_List_Dialog_None{padding-top:15px;display:block;text-align:center;}#Config_Location_List_Dialog #Config_Location_List_Dialog_AddContainer{padding-top:10px;padding-left:10px;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li{padding:2px 0 2px 4px;cursor:pointer;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li:hover{background-color:#f4f4f4;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li:hover .remove{opacity:.8;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li .remove{margin-top:2px;padding-right:6px;float:right;cursor:pointer;opacity:0;color:#e51400;font-size:1.3em;}#Config_Location_List_Dialog #Config_Location_List_Dialog_List li .remove:hover{opacity:1;}#Config_Location_ListImport_Dialog{display:none;}#Config_Location_ListImport_Dialog #Config_Location_ListImport_Dialog_Overwrite_Container{margin:6px 0;}#Config_Location_ListImport_Dialog #Config_Location_ListImport_Dialog_LocationList{width:100%;height:200px;margin:0 auto;}#Config_JobPref_Expressions{margin-top:10px;}#Config_JobPref_Expressions #OnCreateExpression,#Config_JobPref_Expressions #OnCloseExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_JobQueues_Index i{width:1.28571429em;text-align:center;}#Config_JobQueues_Icon{display:block;margin:0 0 10px 10px;}#Config_JobQueues_Icon_Update_Dialog{display:none;}#Config_JobQueues_Icon_Update_Dialog div.colours{text-align:center;font-size:30px;}#Config_JobQueues_Icon_Update_Dialog div.colours i{cursor:pointer;padding:1px;opacity:.9;}#Config_JobQueues_Icon_Update_Dialog div.colours i:hover{opacity:1;}#Config_JobQueues_Icon_Update_Dialog div.colours i.selected{opacity:1;}#Config_JobQueues_Icon_Update_Dialog div.icons{text-align:center;font-size:30px;background-color:#fff;border:1px solid #d1d1d1;margin:6px 0 14px 0;}#Config_JobQueues_Icon_Update_Dialog div.icons i{width:1.28571429em;text-align:center;cursor:pointer;padding:4px 0;color:#333;opacity:.6;}#Config_JobQueues_Icon_Update_Dialog div.icons i:hover{opacity:.9;color:inherit;}#Config_JobQueues_Icon_Update_Dialog div.icons i.selected{opacity:1;color:inherit;}#Config_JobQueues_JobSubTypes_Update{margin:8px 0;}#Config_JobQueues_JobSubTypes_Update_Dialog #Config_JobQueues_JobSubTypes_Update_Dialog_Types{margin:0 0 8px 0;}#Config_JobQueues_JobSubTypes_Update_Dialog .jobTypes{padding:6px 0;}#Config_JobQueues_JobSubTypes_Update_Dialog .jobTypes .jobSubTypes{background-color:#f2f2f2;border-left:4px solid #d8d8d8;padding:4px 0 4px 8px;margin:4px 0 0 6px;}#Config_JobQueues_JobSubTypes_Update_Dialog .checkboxBulkSelectContainer{font-size:.8em;}#Config_JobQueues_Subjects li,#Config_JobQueues_Subjects_Update_Dialog_List li{padding:4px 0 4px 4px;}#Config_JobQueues_Subjects li i.fa-user,#Config_JobQueues_Subjects_Update_Dialog_List li i.fa-user,#Config_JobQueues_Subjects li i.fa-users,#Config_JobQueues_Subjects_Update_Dialog_List li i.fa-users{width:1.28571429em;text-align:center;}#Config_JobQueues_Subjects_Update_Dialog{display:none;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_ListContainer{height:280px;overflow-y:auto;background-color:#fff;border:1px solid #d8d8d8;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_None{padding-top:15px;display:block;text-align:center;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_AddContainer{padding-top:10px;padding-left:10px;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li{cursor:pointer;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li:hover{background-color:#f4f4f4;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li:hover .remove{opacity:.8;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li .remove{margin-top:2px;padding-right:6px;float:right;cursor:pointer;opacity:0;color:#e51400;font-size:1.3em;}#Config_JobQueues_Subjects_Update_Dialog #Config_JobQueues_Subjects_Update_Dialog_List li .remove:hover{opacity:1;}#Config_UserFlags_Show #UserFlag_OnAssignmentExpression,#Config_UserFlags_Show #UserFlag_OnUnassignmentExpression{height:16px;min-height:16px;overflow:hidden;font-family:Consolas,"Courier New",monospace;}#Config_UserFlags_Index i{width:1.28571429em;text-align:center;}#Config_UserFlags_Icon{display:block;margin:0 0 10px 10px;}#Config_UserFlags_Icon_Update_Dialog{display:none;}#Config_UserFlags_Icon_Update_Dialog div.colours{text-align:center;font-size:30px;}#Config_UserFlags_Icon_Update_Dialog div.colours i{cursor:pointer;padding:1px;opacity:.9;}#Config_UserFlags_Icon_Update_Dialog div.colours i:hover{opacity:1;}#Config_UserFlags_Icon_Update_Dialog div.colours i.selected{opacity:1;}#Config_UserFlags_Icon_Update_Dialog div.icons{text-align:center;font-size:30px;background-color:#fff;border:1px solid #d1d1d1;margin:6px 0 14px 0;}#Config_UserFlags_Icon_Update_Dialog div.icons i{width:1.28571429em;text-align:center;cursor:pointer;padding:4px 0;color:#333;opacity:.6;}#Config_UserFlags_Icon_Update_Dialog div.icons i:hover{opacity:.9;color:inherit;}#Config_UserFlags_Icon_Update_Dialog div.icons i.selected{opacity:1;color:inherit;}#Config_UserFlags_BulkAssign_ModeDialog>div{margin-top:6px;background-color:#fff;line-height:1.3em;border:1px solid #ddd;}#Config_UserFlags_BulkAssign_ModeDialog>div>div{display:block;padding:4px;cursor:pointer;}#Config_UserFlags_BulkAssign_ModeDialog>div>div:not(:last-child){border-bottom:1px dashed #ddd;}#Config_UserFlags_BulkAssign_ModeDialog>div>div h5{font-size:1.1em;padding:4px 0;}#Config_UserFlags_BulkAssign_ModeDialog>div>div i{margin-right:4px;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.add:hover{background-color:#eeffde;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.add i{color:#60a917;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.override:hover{background-color:#ffe1de;}#Config_UserFlags_BulkAssign_ModeDialog>div>div.override i{color:#e51400;}#Config_UserFlags_BulkAssign_AssignDialog .brief{margin:0 0 8px 0;}#Config_UserFlags_BulkAssign_AssignDialog .brief .scopeDescBulkGenerate{font-weight:600;}#Config_UserFlags_BulkAssign_AssignDialog .brief div.examples{margin:8px auto;width:300px;}#Config_UserFlags_BulkAssign_AssignDialog .brief div.examples div{margin:2px 4px 2px 0;width:150px;float:left;}#Config_UserFlags_BulkAssign_AssignDialog .brief div.examples div.example1{width:100px;}#Config_UserFlags_BulkAssign_AssignDialog div.loading{display:none;padding:40px 0;text-align:center;}#Config_UserFlags_BulkAssign_AssignDialog div.loading i{margin-right:10px;color:#1e6dab;}#Config_UserFlags_BulkAssign_AssignDialog #Config_UserFlags_BulkAssign_AssignDialog_UserIds{height:200px;margin-bottom:8px;}#Config_UserFlags_BulkAssign_AssignDialog textarea{width:calc(100% - .5em);margin:0;}#Config_UserFlags_BulkAssign_AssignDialog.loading>div.loading{display:block;}#Config_UserFlags_BulkAssign_AssignDialog.loading>form{display:none;}#UserFlag_Export #UserFlag_Export_Fields #UserFlag_Export_Fields_Defaults{font-size:.75em;}#UserFlag_Export #UserFlag_Export_Fields th{font-size:1.05em;}#UserFlag_Export #UserFlag_Export_Fields th span{margin-top:4px;font-size:.8em;}#UserFlag_Export_Download_Dialog{padding-top:20px;text-align:center;}#UserFlag_Export_Download_Dialog h4{margin-bottom:30px;}#UserFlag_Export_Download_Dialog a{margin-bottom:20px;}#UserFlag_Export_Exporting{padding-top:50px;text-align:center;}#UserFlag_Export_Exporting i{margin-right:10px;color:#1e6dab;}#DocumentTemplate_BulkGenerate .actions{padding-bottom:.5em;text-align:right;}#DocumentTemplate_BulkGenerate table{max-width:850px;margin:auto;}#DocumentTemplate_BulkGenerate table tr.when-none{text-align:center;font-style:italic;}.dialog-item-picker{height:300px;overflow-y:auto;background-color:#fcfcfc;border:1px solid #ccc;}.dialog-item-picker>div{background-color:#fff;border-bottom:1px solid #ddd;padding:6px 0 6px 6px;cursor:pointer;}.dialog-item-picker>div:hover{background-color:#f4f4f4;}.dialog-item-picker>div.selected,.dialog-item-picker>div.selected:hover{background-color:#eee;}.dialog-item-picker>div.disabled{cursor:not-allowed;background-color:#f4f4f4;} \ No newline at end of file diff --git a/Disco.Web/Disco.Web.csproj b/Disco.Web/Disco.Web.csproj index 69263fad..1ae08c92 100644 --- a/Disco.Web/Disco.Web.csproj +++ b/Disco.Web/Disco.Web.csproj @@ -214,6 +214,7 @@ + diff --git a/Disco.Web/Extensions/T4MVC/API.DeviceProfileController.generated.cs b/Disco.Web/Extensions/T4MVC/API.DeviceProfileController.generated.cs index db3146ae..ef1cec36 100644 --- a/Disco.Web/Extensions/T4MVC/API.DeviceProfileController.generated.cs +++ b/Disco.Web/Extensions/T4MVC/API.DeviceProfileController.generated.cs @@ -127,6 +127,12 @@ namespace Disco.Web.Areas.API.Controllers } [NonAction] [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] + public virtual System.Web.Mvc.ActionResult TestComputerNameTemplate() + { + return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.TestComputerNameTemplate); + } + [NonAction] + [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] public virtual System.Web.Mvc.ActionResult UpdateEnforceComputerNameConvention() { return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateEnforceComputerNameConvention); @@ -212,6 +218,7 @@ namespace Disco.Web.Areas.API.Controllers public readonly string UpdateOrganisationalUnit = "UpdateOrganisationalUnit"; public readonly string UpdateDefaultOrganisationAddress = "UpdateDefaultOrganisationAddress"; public readonly string UpdateComputerNameTemplate = "UpdateComputerNameTemplate"; + public readonly string TestComputerNameTemplate = "TestComputerNameTemplate"; public readonly string UpdateEnforceComputerNameConvention = "UpdateEnforceComputerNameConvention"; public readonly string UpdateEnforceOrganisationalUnit = "UpdateEnforceOrganisationalUnit"; public readonly string UpdateProvisionADAccount = "UpdateProvisionADAccount"; @@ -238,6 +245,7 @@ namespace Disco.Web.Areas.API.Controllers public const string UpdateOrganisationalUnit = "UpdateOrganisationalUnit"; public const string UpdateDefaultOrganisationAddress = "UpdateDefaultOrganisationAddress"; public const string UpdateComputerNameTemplate = "UpdateComputerNameTemplate"; + public const string TestComputerNameTemplate = "TestComputerNameTemplate"; public const string UpdateEnforceComputerNameConvention = "UpdateEnforceComputerNameConvention"; public const string UpdateEnforceOrganisationalUnit = "UpdateEnforceOrganisationalUnit"; public const string UpdateProvisionADAccount = "UpdateProvisionADAccount"; @@ -362,6 +370,16 @@ namespace Disco.Web.Areas.API.Controllers public readonly string ComputerNameTemplate = "ComputerNameTemplate"; public readonly string redirect = "redirect"; } + static readonly ActionParamsClass_TestComputerNameTemplate s_params_TestComputerNameTemplate = new ActionParamsClass_TestComputerNameTemplate(); + [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] + public ActionParamsClass_TestComputerNameTemplate TestComputerNameTemplateParams { get { return s_params_TestComputerNameTemplate; } } + [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] + public class ActionParamsClass_TestComputerNameTemplate + { + public readonly string id = "id"; + public readonly string ComputerNameTemplate = "ComputerNameTemplate"; + public readonly string UserSpecifiedDeviceSerialNumber = "UserSpecifiedDeviceSerialNumber"; + } static readonly ActionParamsClass_UpdateEnforceComputerNameConvention s_params_UpdateEnforceComputerNameConvention = new ActionParamsClass_UpdateEnforceComputerNameConvention(); [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] public ActionParamsClass_UpdateEnforceComputerNameConvention UpdateEnforceComputerNameConventionParams { get { return s_params_UpdateEnforceComputerNameConvention; } } @@ -633,6 +651,20 @@ namespace Disco.Web.Areas.API.Controllers return callInfo; } + [NonAction] + partial void TestComputerNameTemplateOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, int id, string ComputerNameTemplate, string UserSpecifiedDeviceSerialNumber); + + [NonAction] + public override System.Web.Mvc.ActionResult TestComputerNameTemplate(int id, string ComputerNameTemplate, string UserSpecifiedDeviceSerialNumber) + { + var callInfo = new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.TestComputerNameTemplate); + ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "id", id); + ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "ComputerNameTemplate", ComputerNameTemplate); + ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "UserSpecifiedDeviceSerialNumber", UserSpecifiedDeviceSerialNumber); + TestComputerNameTemplateOverride(callInfo, id, ComputerNameTemplate, UserSpecifiedDeviceSerialNumber); + return callInfo; + } + [NonAction] partial void UpdateEnforceComputerNameConventionOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, int id, string EnforceComputerNameConvention, bool? redirect); diff --git a/Disco.Web/Extensions/T4MVC/API.SearchController.generated.cs b/Disco.Web/Extensions/T4MVC/API.SearchController.generated.cs index 00b02521..08dff131 100644 --- a/Disco.Web/Extensions/T4MVC/API.SearchController.generated.cs +++ b/Disco.Web/Extensions/T4MVC/API.SearchController.generated.cs @@ -71,6 +71,12 @@ namespace Disco.Web.Areas.API.Controllers { return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UsersUpstream); } + [NonAction] + [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] + public virtual System.Web.Mvc.ActionResult Devices() + { + return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.Devices); + } [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] public SearchController Actions { get { return MVC.API.Search; } } @@ -89,6 +95,7 @@ namespace Disco.Web.Areas.API.Controllers { public readonly string QuickQuery = "QuickQuery"; public readonly string UsersUpstream = "UsersUpstream"; + public readonly string Devices = "Devices"; } [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] @@ -96,6 +103,7 @@ namespace Disco.Web.Areas.API.Controllers { public const string QuickQuery = "QuickQuery"; public const string UsersUpstream = "UsersUpstream"; + public const string Devices = "Devices"; } @@ -117,6 +125,15 @@ namespace Disco.Web.Areas.API.Controllers public readonly string Term = "Term"; public readonly string Limit = "Limit"; } + static readonly ActionParamsClass_Devices s_params_Devices = new ActionParamsClass_Devices(); + [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] + public ActionParamsClass_Devices DevicesParams { get { return s_params_Devices; } } + [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] + public class ActionParamsClass_Devices + { + public readonly string Term = "Term"; + public readonly string Limit = "Limit"; + } static readonly ViewsClass s_views = new ViewsClass(); [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] public ViewsClass Views { get { return s_views; } } @@ -162,6 +179,19 @@ namespace Disco.Web.Areas.API.Controllers return callInfo; } + [NonAction] + partial void DevicesOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, string Term, int Limit); + + [NonAction] + public override System.Web.Mvc.ActionResult Devices(string Term, int Limit) + { + var callInfo = new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.Devices); + ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "Term", Term); + ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "Limit", Limit); + DevicesOverride(callInfo, Term, Limit); + return callInfo; + } + } } diff --git a/Disco.Web/Extensions/T4MVC/T4MVC.cs b/Disco.Web/Extensions/T4MVC/T4MVC.cs index 3094620c..63a30aa7 100644 --- a/Disco.Web/Extensions/T4MVC/T4MVC.cs +++ b/Disco.Web/Extensions/T4MVC/T4MVC.cs @@ -592,6 +592,7 @@ namespace Links public const string UrlPath = "~/ClientSource/Style/FontAwesome"; public static string Url() { return T4MVCHelpers.ProcessVirtualPath(UrlPath); } public static string Url(string fileName) { return T4MVCHelpers.ProcessVirtualPath(UrlPath + "/" + fileName); } + public static readonly string animated_less = Url("animated.less"); public static readonly string bordered_pulled_less = Url("bordered-pulled.less"); public static readonly string core_less = Url("core.less"); public static readonly string fixed_width_less = Url("fixed-width.less"); @@ -600,6 +601,7 @@ namespace Links public static readonly string fontawesome_webfont_svg = Url("fontawesome-webfont.svg"); public static readonly string fontawesome_webfont_ttf = Url("fontawesome-webfont.ttf"); public static readonly string fontawesome_webfont_woff = Url("fontawesome-webfont.woff"); + public static readonly string fontawesome_webfont_woff2 = Url("fontawesome-webfont.woff2"); public static readonly string FontAwesome_otf = Url("FontAwesome.otf"); public static readonly string icons_less = Url("icons.less"); public static readonly string larger_less = Url("larger.less"); @@ -607,7 +609,7 @@ namespace Links public static readonly string mixins_less = Url("mixins.less"); public static readonly string path_less = Url("path.less"); public static readonly string rotated_flipped_less = Url("rotated-flipped.less"); - public static readonly string spinning_less = Url("spinning.less"); + public static readonly string screen_reader_less = Url("screen-reader.less"); public static readonly string stacked_less = Url("stacked.less"); public static readonly string variables_less = Url("variables.less"); } diff --git a/Disco.sln b/Disco.sln index 5e35af7c..03e05cb4 100644 --- a/Disco.sln +++ b/Disco.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.30711.63 +# Visual Studio Version 17 +VisualStudioVersion = 17.8.34309.116 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Disco.ClientBootstrapper", "Disco.ClientBootstrapper\Disco.ClientBootstrapper.csproj", "{15BD9561-A3C7-4608-9F7E-F1A1CFB60055}" EndProject @@ -21,6 +21,11 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Disco.Client", "Disco.Clien EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Disco.Services.Plugins.ManifestGenerator", "Disco.Services.Plugins.ManifestGenerator\Disco.Services.Plugins.ManifestGenerator.csproj", "{35E90902-D5A6-4C14-BA6B-2DF976E4B96A}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{578564D7-D269-4219-8791-977D56DE9A34}" + ProjectSection(SolutionItems) = preProject + .editorconfig = .editorconfig + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -132,16 +137,4 @@ Global GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {1CCC4DCB-653B-464B-B05D-285032B28DC4} EndGlobalSection - GlobalSection(AutomaticVersions) = postSolution - UpdateAssemblyVersion = True - UpdateAssemblyFileVersion = True - UpdateAssemblyInfoVersion = False - ShouldCreateLogs = True - AdvancedSettingsExpanded = True - AssemblyVersionSettings = None.None.DateStamp.TimeStamp - AssemblyFileVersionSettings = None.None.DateStamp.TimeStamp - UpdatePackageVersion = False - AssemblyInfoVersionType = SettingsVersion - InheritWinAppVersionFrom = None - EndGlobalSection EndGlobal