27c21175d7
Migrate much of BI to Services. Added Wireless Profile Provider plugin feature. Added Certificate Authority Provider plugin feature. Modified Certificate Provider plugin feature. Database migration v17, for Device Profiles. Enrolment Client Updated to support CA Certificates, Wireless Profiles and Hardware Info. New Client Enrolment Protocol to support new features. Plugin Manifest Generator added to main solution. Improved AD search performance.
1903 lines
65 KiB
C#
1903 lines
65 KiB
C#
#pragma warning disable 1591
|
|
//------------------------------------------------------------------------------
|
|
// <auto-generated>
|
|
// This code was generated by a tool.
|
|
// Runtime Version:4.0.30319.42000
|
|
//
|
|
// Changes to this file may cause incorrect behavior and will be lost if
|
|
// the code is regenerated.
|
|
// </auto-generated>
|
|
//------------------------------------------------------------------------------
|
|
|
|
namespace Disco.Web.Areas.Config.Views.SystemConfig
|
|
{
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Text;
|
|
using System.Web;
|
|
using System.Web.Helpers;
|
|
using System.Web.Mvc;
|
|
using System.Web.Mvc.Ajax;
|
|
using System.Web.Mvc.Html;
|
|
using System.Web.Routing;
|
|
using System.Web.Security;
|
|
using System.Web.UI;
|
|
using System.Web.WebPages;
|
|
using Disco;
|
|
using Disco.Models.Repository;
|
|
using Disco.Services;
|
|
using Disco.Services.Authorization;
|
|
using Disco.Services.Web;
|
|
using Disco.Web;
|
|
using Disco.Web.Extensions;
|
|
|
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "2.0.0.0")]
|
|
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Config/Views/SystemConfig/Index.cshtml")]
|
|
public partial class Index : Disco.Services.Web.WebViewPage<Disco.Web.Areas.Config.Models.SystemConfig.IndexModel>
|
|
{
|
|
public Index()
|
|
{
|
|
}
|
|
public override void Execute()
|
|
{
|
|
|
|
#line 2 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
Authorization.Require(Claims.Config.System.Show);
|
|
|
|
var canConfigProxy = Authorization.Has(Claims.Config.System.ConfigureProxy);
|
|
var canConfigAD = Authorization.Has(Claims.Config.System.ConfigureActiveDirectory);
|
|
|
|
ViewBag.Title = Html.ToBreadcrumb("Configuration", MVC.Config.Config.Index(), "System");
|
|
|
|
if (canConfigAD)
|
|
{
|
|
Html.BundleDeferred("~/Style/Fancytree");
|
|
Html.BundleDeferred("~/ClientScripts/Modules/jQuery-Fancytree");
|
|
Html.BundleDeferred("~/ClientScripts/Modules/Disco-PropertyChangeHelpers");
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n<div");
|
|
|
|
WriteLiteral(" class=\"form\"");
|
|
|
|
WriteLiteral(" style=\"width: 450px\"");
|
|
|
|
WriteLiteral(">\r\n <table>\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Disco Version:\r\n </th>\r\n <td>\r\n " +
|
|
" <div>\r\n <code>");
|
|
|
|
|
|
#line 25 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.DiscoVersion.ToString(4));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</code>\r\n </div>\r\n <div");
|
|
|
|
WriteLiteral(" class=\"smallMessage\"");
|
|
|
|
WriteLiteral(">\r\n Built ");
|
|
|
|
|
|
#line 28 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(CommonHelpers.FriendlyDate(Model.DiscoVersionBuilt, "Unknown"));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </div>\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Database Connection:\r\n </th>\r\n <td>\r\n " +
|
|
" <table");
|
|
|
|
WriteLiteral(" class=\"sub\"");
|
|
|
|
WriteLiteral(">\r\n <tr>\r\n <th>Server:</th>\r\n " +
|
|
" <td><span");
|
|
|
|
WriteLiteral(" class=\"code\"");
|
|
|
|
WriteLiteral(">");
|
|
|
|
|
|
#line 40 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.DatabaseServer);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span></td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th>Database:</th>\r\n <td><span");
|
|
|
|
WriteLiteral(" class=\"code\"");
|
|
|
|
WriteLiteral(">");
|
|
|
|
|
|
#line 44 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.DatabaseName);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span></td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th>Authentication:</th>\r\n <td>");
|
|
|
|
|
|
#line 48 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.DatabaseAuthentication);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</td>\r\n </tr>\r\n");
|
|
|
|
|
|
#line 50 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 50 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.DatabaseSqlAuthUsername != null)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <tr>\r\n <th>SQL Us" +
|
|
"er:</th>\r\n <td><span");
|
|
|
|
WriteLiteral(" class=\"code\"");
|
|
|
|
WriteLiteral(">");
|
|
|
|
|
|
#line 54 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.DatabaseSqlAuthUsername);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span></td>\r\n </tr>\r\n");
|
|
|
|
|
|
#line 56 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </table>\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Data Store Location:\r\n </th>\r\n <td>\r\n " +
|
|
" <span");
|
|
|
|
WriteLiteral(" class=\"code\"");
|
|
|
|
WriteLiteral(">");
|
|
|
|
|
|
#line 66 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.DataStoreLocation);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>\r\n<div");
|
|
|
|
WriteLiteral(" class=\"form\"");
|
|
|
|
WriteLiteral(" style=\"width: 450px; margin-top: 15px;\"");
|
|
|
|
WriteLiteral(">\r\n <h2>Updates</h2>\r\n <table>\r\n");
|
|
|
|
|
|
#line 74 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 74 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
if (Model.UpdateLatestResponse == null)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Last Check:\r\n </th>\r\n " +
|
|
" <td>\r\n <div");
|
|
|
|
WriteLiteral(" class=\"error\"");
|
|
|
|
WriteLiteral("><i");
|
|
|
|
WriteLiteral(" class=\"fa fa-exclamation-circle fa-lg\"");
|
|
|
|
WriteLiteral("></i> Never</div>\r\n </td>\r\n </tr>\r\n");
|
|
|
|
|
|
#line 85 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Last Run:\r\n </th>\r\n " +
|
|
" <td>\r\n <span>");
|
|
|
|
|
|
#line 93 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(CommonHelpers.FriendlyDate(Model.UpdateLatestResponse.UpdateResponseDate.ToLocalTime()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span>\r\n </td>\r\n </tr>\r\n");
|
|
|
|
|
|
#line 96 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.UpdateAvailable)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Update Available:\r\n </th>\r\n" +
|
|
" <td>\r\n <div>\r\n " +
|
|
" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle fa-lg information\"");
|
|
|
|
WriteLiteral("></i> Version ");
|
|
|
|
|
|
#line 104 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.UpdateLatestResponse.LatestVersion);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" is available\r\n </div>\r\n <d" +
|
|
"iv");
|
|
|
|
WriteLiteral(" class=\"smallMessage\"");
|
|
|
|
WriteLiteral(">\r\n [Released ");
|
|
|
|
|
|
#line 107 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(CommonHelpers.FriendlyDate(Model.UpdateLatestResponse.ReleasedDate));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("]\r\n </div>\r\n <div");
|
|
|
|
WriteLiteral(" class=\"smallMessage\"");
|
|
|
|
WriteLiteral(">");
|
|
|
|
|
|
#line 109 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(new HtmlString(Model.UpdateLatestResponse.Description));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</div>\r\n <a");
|
|
|
|
WriteAttribute("href", Tuple.Create(" href=\"", 4193), Tuple.Create("\"", 4237)
|
|
|
|
#line 110 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
, Tuple.Create(Tuple.Create("", 4200), Tuple.Create<System.Object, System.Int32>(Model.UpdateLatestResponse.UrlLink
|
|
|
|
#line default
|
|
#line hidden
|
|
, 4200), false)
|
|
);
|
|
|
|
WriteLiteral(" target=\"_blank\"");
|
|
|
|
WriteLiteral(">Download Now</a>\r\n </td>\r\n </tr>\r\n");
|
|
|
|
|
|
#line 113 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Status:\r\n </th>\r\n " +
|
|
" <td>\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-check-square fa-lg success\"");
|
|
|
|
WriteLiteral("></i> <span>The latest version is installed</span>\r\n " +
|
|
"</td>\r\n </tr>\r\n");
|
|
|
|
|
|
#line 124 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">Check for Update:</th>\r\n <td>\r\n");
|
|
|
|
|
|
#line 130 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 130 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
if (Model.UpdateRunningStatus == null)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <span>");
|
|
|
|
|
|
#line 133 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ActionLinkSmallButton("Check Now", MVC.API.System.UpdateCheck()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span>\r\n");
|
|
|
|
WriteLiteral(" <span");
|
|
|
|
WriteLiteral(" class=\"smallMessage\"");
|
|
|
|
WriteLiteral(">[Will run automatically <strong>");
|
|
|
|
|
|
#line 134 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(CommonHelpers.FriendlyDate(Model.UpdateNextScheduled, "Unknown"));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</strong>]</span>\r\n");
|
|
|
|
|
|
#line 135 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <span>");
|
|
|
|
|
|
#line 138 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ActionLink("View Status", MVC.Config.Logging.TaskStatus(Model.UpdateRunningStatus.SessionId)));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</span>\r\n");
|
|
|
|
WriteLiteral(" <span");
|
|
|
|
WriteLiteral(" class=\"smallMessage\"");
|
|
|
|
WriteLiteral(">[Running Now]</span>\r\n");
|
|
|
|
|
|
#line 140 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n");
|
|
|
|
|
|
#line 142 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 142 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.UpdateBetaDeployment)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <hr />\r\n");
|
|
|
|
WriteLiteral(" <span");
|
|
|
|
WriteLiteral(" class=\"alert\"");
|
|
|
|
WriteLiteral("><i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle fa-lg\"");
|
|
|
|
WriteLiteral("></i> Beta Deployment</span>\r\n");
|
|
|
|
|
|
#line 146 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </td>\r\n </tr>\r\n </table>\r\n</div>\r\n<div");
|
|
|
|
WriteLiteral(" class=\"form\"");
|
|
|
|
WriteLiteral(" style=\"width: 450px; margin-top: 15px;\"");
|
|
|
|
WriteLiteral(">\r\n <h2>Active Directory</h2>\r\n <table>\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Primary Domain:\r\n </th>\r\n <td>\r\n " +
|
|
" <code><strong>");
|
|
|
|
|
|
#line 159 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.ADPrimaryDomain.Name);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</strong> <span>[");
|
|
|
|
|
|
#line 159 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.ADPrimaryDomain.NetBiosName);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("]</span></code>\r\n </td>\r\n </tr>\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Additional Domains:\r\n </th>\r\n <td>\r\n");
|
|
|
|
|
|
#line 167 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 167 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.ADDomains.Count > 1)
|
|
{
|
|
var adAdditionalDomains = Model.ADDomains.Where(d => d != Model.ADPrimaryDomain).OrderBy(d => d.Name).ToList();
|
|
var adDomainFirst = adAdditionalDomains.First();
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <code>");
|
|
|
|
|
|
#line 171 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(adDomainFirst.Name);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <span>[");
|
|
|
|
|
|
#line 171 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(adDomainFirst.NetBiosName);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("]</span></code>\r\n");
|
|
|
|
|
|
#line 172 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
foreach (var adDomain in adAdditionalDomains.Skip(1))
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <hr />\r\n");
|
|
|
|
WriteLiteral(" <div>\r\n <code>");
|
|
|
|
|
|
#line 176 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(adDomain.Name);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <span>[");
|
|
|
|
|
|
#line 176 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(adDomain.NetBiosName);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("]</span></code>\r\n </div>\r\n");
|
|
|
|
|
|
#line 178 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <span");
|
|
|
|
WriteLiteral(" class=\"smallMessage\"");
|
|
|
|
WriteLiteral("><None></span>\r\n");
|
|
|
|
|
|
#line 183 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Site:\r\n </th>\r\n <td>\r\n <c" +
|
|
"ode><strong>");
|
|
|
|
|
|
#line 191 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Model.ADSite.Name);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</strong></code>\r\n </td>\r\n </tr>\r\n <tr>\r\n <th" +
|
|
"");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Servers:\r\n </th>\r\n <td>\r\n " +
|
|
" <div>\r\n");
|
|
|
|
|
|
#line 200 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 200 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.ADServers.Count > 0)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <ul");
|
|
|
|
WriteLiteral(" class=\"none\"");
|
|
|
|
WriteLiteral(">\r\n");
|
|
|
|
|
|
#line 203 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 203 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
foreach (var server in Model.ADServers)
|
|
{
|
|
var serverDescription = string.Format("{0} [{1}]", server.Name.EndsWith(server.Domain.Name, StringComparison.OrdinalIgnoreCase) ? server.Name.Substring(0, server.Name.Length - server.Domain.Name.Length - 1) : server.Name, server.Domain.NetBiosName);
|
|
var reachable = server.IsAvailable;
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <li>\r\n");
|
|
|
|
|
|
#line 208 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 208 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (server.IsAvailable)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-check success fa-fw fa-lg\"");
|
|
|
|
WriteLiteral(" title=\"Available\"");
|
|
|
|
WriteLiteral("></i>\r\n");
|
|
|
|
|
|
#line 211 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-exclamation warning fa-fw fa-lg\"");
|
|
|
|
WriteAttribute("title", Tuple.Create(" title=\"", 8624), Tuple.Create("\"", 8707)
|
|
, Tuple.Create(Tuple.Create("", 8632), Tuple.Create("Unavailable,", 8632), true)
|
|
, Tuple.Create(Tuple.Create(" ", 8644), Tuple.Create("will", 8645), true)
|
|
, Tuple.Create(Tuple.Create(" ", 8649), Tuple.Create("retry", 8650), true)
|
|
, Tuple.Create(Tuple.Create(" ", 8655), Tuple.Create("at", 8656), true)
|
|
|
|
#line 214 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
, Tuple.Create(Tuple.Create(" ", 8658), Tuple.Create<System.Object, System.Int32>(server.AvailableWhen.Value.ToLongTimeString()
|
|
|
|
#line default
|
|
#line hidden
|
|
, 8659), false)
|
|
);
|
|
|
|
WriteLiteral("></i>\r\n");
|
|
|
|
|
|
#line 215 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <code>");
|
|
|
|
|
|
#line 216 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(serverDescription);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</code>\r\n");
|
|
|
|
|
|
#line 217 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 217 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (server.IsSiteServer)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-building-o information fa-fw\"");
|
|
|
|
WriteLiteral(" title=\"Site Server\"");
|
|
|
|
WriteLiteral("></i>\r\n");
|
|
|
|
|
|
#line 220 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-globe warning fa-fw\"");
|
|
|
|
WriteLiteral(" title=\"Not a Site Server\"");
|
|
|
|
WriteLiteral("></i>\r\n");
|
|
|
|
|
|
#line 224 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 225 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (server.IsWritable)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-pencil information fa-fw\"");
|
|
|
|
WriteLiteral(" title=\"Writable Domain Controller\"");
|
|
|
|
WriteLiteral("></i>\r\n");
|
|
|
|
|
|
#line 228 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </li>\r\n");
|
|
|
|
|
|
#line 230 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </ul>\r\n");
|
|
|
|
|
|
#line 232 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"error\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-exclamation-circle fa-lg\"");
|
|
|
|
WriteLiteral("></i> <span>None Found</span>\r\n </div>\r\n");
|
|
|
|
|
|
#line 238 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </div>\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Forest:\r\n </th>\r\n <td>\r\n");
|
|
|
|
|
|
#line 247 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 247 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.ADForestServers == null)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 250 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.CheckBoxFor(m => m.ADSearchAllForestServers, new { disabled = "disabled" }));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 250 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.LabelFor(m => m.ADSearchAllForestServers));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </div>\r\n");
|
|
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"info-box\"");
|
|
|
|
WriteLiteral(">\r\n <p");
|
|
|
|
WriteLiteral(" class=\"fa-p\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle\"");
|
|
|
|
WriteLiteral("></i>Forest servers are currently being retrieved.<br />\r\n " +
|
|
" Try refreshing this page in a moment.\r\n </p>\r\n " +
|
|
" </div>\r\n");
|
|
|
|
|
|
#line 258 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
if (canConfigAD)
|
|
{
|
|
var canSearchEntireForest = (Model.ADForestServers.Count <= Disco.Services.Interop.ActiveDirectory.ActiveDirectory.MaxForestServerSearch);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>\r\n");
|
|
|
|
|
|
#line 265 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 265 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (!canSearchEntireForest)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 267 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.CheckBoxFor(m => m.ADSearchAllForestServers, new { disabled = "disabled" }));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 267 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 267 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.LabelFor(m => m.ADSearchAllForestServers));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 267 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"info-box\"");
|
|
|
|
WriteLiteral(">\r\n <p");
|
|
|
|
WriteLiteral(" class=\"fa-p\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-exclamation-circle warning\"");
|
|
|
|
WriteLiteral("></i>Disco will not search entire forests which consist of more than ");
|
|
|
|
|
|
#line 270 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Disco.Services.Interop.ActiveDirectory.ActiveDirectory.MaxForestServerSearch);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" servers. Only servers within this site will be searched.\r\n " +
|
|
" </p>\r\n </div>\r\n");
|
|
|
|
|
|
#line 273 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 276 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.CheckBoxFor(m => m.ADSearchAllForestServers));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 276 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 276 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.LabelFor(m => m.ADSearchAllForestServers));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 276 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 276 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(AjaxHelpers.AjaxLoader());
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 276 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"info-box\"");
|
|
|
|
WriteLiteral(">\r\n <p");
|
|
|
|
WriteLiteral(" class=\"fa-p\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle\"");
|
|
|
|
WriteLiteral("></i>If this setting is enabled, Disco will query all servers within the forest r" +
|
|
"ather than only servers within this site.\r\n <" +
|
|
"/p>\r\n </div>\r\n");
|
|
|
|
WriteLiteral(" <script>\r\n $(f" +
|
|
"unction () {\r\n document.DiscoFunctions.Pr" +
|
|
"opertyChangeHelper($(\'#ADSearchAllForestServers\'), null, \'");
|
|
|
|
|
|
#line 284 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Url.Action(MVC.API.System.UpdateActiveDirectorySearchAllForestServers()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\', \'SearchAllForestServers\');\r\n });\r\n " +
|
|
" </script>\r\n");
|
|
|
|
|
|
#line 287 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </div>\r\n");
|
|
|
|
|
|
#line 289 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 293 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.CheckBoxFor(m => m.ADSearchAllForestServers, new { disabled = "disabled" }));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 293 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.LabelFor(m => m.ADSearchAllForestServers));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n <div");
|
|
|
|
WriteLiteral(" class=\"info-box\"");
|
|
|
|
WriteLiteral(">\r\n <p");
|
|
|
|
WriteLiteral(" class=\"fa-p\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle\"");
|
|
|
|
WriteLiteral("></i>If this setting is enabled, Disco will query all servers within the forest r" +
|
|
"ather than only servers within this site.\r\n </p>\r" +
|
|
"\n </div>\r\n </div>\r\n");
|
|
|
|
|
|
#line 300 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>\r\n <hr />\r\n " +
|
|
" <span>All Servers:</span>\r\n <ul");
|
|
|
|
WriteLiteral(" id=\"Config_System_AD_ForestServers\"");
|
|
|
|
WriteLiteral(" class=\"none\"");
|
|
|
|
WriteLiteral(">\r\n");
|
|
|
|
|
|
#line 305 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 305 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
var domainIndex = Model.ADDomains.ToDictionary(d => d.Name, StringComparer.OrdinalIgnoreCase);
|
|
foreach (var server in Model.ADForestServers.OrderBy(s => s))
|
|
{
|
|
var isSiteServer = Model.ADServers.Any(s => s.IsSiteServer && s.Name.Equals(server, StringComparison.OrdinalIgnoreCase));
|
|
var serverDescription = server;
|
|
if (server.Contains('.'))
|
|
{
|
|
Disco.Services.Interop.ActiveDirectory.ADDomain serverDomain;
|
|
if (domainIndex.TryGetValue(server.Substring(server.IndexOf('.') + 1), out serverDomain))
|
|
{
|
|
serverDescription = string.Format("{0} [{1}]", server.Substring(0, server.IndexOf('.')), serverDomain.NetBiosName);
|
|
}
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <li>\r\n " +
|
|
" <code>");
|
|
|
|
|
|
#line 320 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(serverDescription);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</code>");
|
|
|
|
|
|
#line 320 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (isSiteServer)
|
|
{
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-building-o information fa-fw\"");
|
|
|
|
WriteLiteral(" title=\"Site Server\"");
|
|
|
|
WriteLiteral("></i> ");
|
|
|
|
|
|
#line 321 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </li>\r\n");
|
|
|
|
|
|
#line 323 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(@"
|
|
</ul>
|
|
<script>
|
|
$(function () {
|
|
var toManyServers = 5;
|
|
var ul = $('#Config_System_AD_ForestServers');
|
|
var ulLi = ul.find('li');
|
|
if (ulLi.length > toManyServers) {
|
|
var liMore = $('<li>').append(
|
|
$('<a>').attr('href', '#')
|
|
.text('Show All Servers (' + (ulLi.length - toManyServers) + ' more)')
|
|
.click(function () {
|
|
$(this).closest('li').remove();
|
|
ul.find('li').show();
|
|
return false;
|
|
}))
|
|
.insertAfter(ulLi[(toManyServers - 1)]);
|
|
ulLi.each(function (i) {
|
|
if (i > (toManyServers - 1))
|
|
$(this).hide();
|
|
});
|
|
}
|
|
});
|
|
</script>
|
|
</div>
|
|
");
|
|
|
|
|
|
#line 349 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </td>\r\n\r\n </tr>\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Searching:\r\n </th>\r\n <td>\r\n");
|
|
|
|
|
|
#line 358 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 358 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
object ADSearchWildcardSuffixOnlyAttributes = null;
|
|
if (!canConfigAD)
|
|
{
|
|
ADSearchWildcardSuffixOnlyAttributes = new
|
|
{
|
|
disabled = "disabled"
|
|
};
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 368 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.CheckBoxFor(m => m.ADSearchWildcardSuffixOnly, ADSearchWildcardSuffixOnlyAttributes));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 368 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.LabelFor(m => m.ADSearchWildcardSuffixOnly));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 368 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(AjaxHelpers.AjaxLoader());
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n <div");
|
|
|
|
WriteLiteral(" class=\"info-box\"");
|
|
|
|
WriteLiteral(">\r\n <p");
|
|
|
|
WriteLiteral(" class=\"fa-p\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle\"");
|
|
|
|
WriteLiteral(@"></i>If this setting is enabled, Disco will utilize Active Directory indexes to greatly improve search performance.
|
|
If disabled, more results may be returned however performance will be reduced especially in large Active Directory domains.
|
|
</p>
|
|
</div>
|
|
");
|
|
|
|
|
|
#line 375 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 375 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (canConfigAD)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <script>\r\n $(function () {\r\n " +
|
|
" document.DiscoFunctions.PropertyChangeHelper($(\'#ADSearchWildc" +
|
|
"ardSuffixOnly\'), null, \'");
|
|
|
|
|
|
#line 379 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Url.Action(MVC.API.System.UpdateActiveDirectorySearchWildcardSuffixOnly()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\', \'SearchWildcardSuffixOnly\');\r\n });\r\n " +
|
|
" </script>\r\n");
|
|
|
|
|
|
#line 382 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Search Scope:\r\n </th>\r\n <td>\r\n");
|
|
|
|
|
|
#line 390 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 390 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (Model.ADSearchContainers != null && Model.ADSearchContainers.Count > 0)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>Searching is restricted to the following Organisational&" +
|
|
"nbsp;Unit containers</div>\r\n");
|
|
|
|
WriteLiteral(" <ul");
|
|
|
|
WriteLiteral(" id=\"Config_System_AD_SearchScope_DistinguishedNames\"");
|
|
|
|
WriteLiteral(">\r\n");
|
|
|
|
|
|
#line 394 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 394 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
foreach (var adContainer in Model.ADSearchContainers)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <li");
|
|
|
|
WriteLiteral(" data-distinguishedname=\"");
|
|
|
|
|
|
#line 396 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(adContainer.Item1);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\"");
|
|
|
|
WriteLiteral("><code>");
|
|
|
|
|
|
#line 396 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(adContainer.Item3);
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("</code></li>\r\n");
|
|
|
|
|
|
#line 397 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </ul>\r\n");
|
|
|
|
|
|
#line 399 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>No Organisational Unit restrictions are in effect.<" +
|
|
"/div>\r\n");
|
|
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"info-box\"");
|
|
|
|
WriteLiteral(">\r\n <p");
|
|
|
|
WriteLiteral(" class=\"fa-p\"");
|
|
|
|
WriteLiteral(">\r\n <i");
|
|
|
|
WriteLiteral(" class=\"fa fa-info-circle\"");
|
|
|
|
WriteLiteral("></i>When searching, the entire domain will be queried. This is suitable for most" +
|
|
" single-domain deployments.\r\n </p>\r\n <" +
|
|
"/div>\r\n");
|
|
|
|
|
|
#line 408 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 409 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (canConfigAD)
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div>\r\n <hr />\r\n " +
|
|
" <a");
|
|
|
|
WriteLiteral(" id=\"Config_System_AD_SearchScope_Update\"");
|
|
|
|
WriteLiteral(" href=\"#\"");
|
|
|
|
WriteLiteral(" class=\"button small\"");
|
|
|
|
WriteLiteral(">Update</a>\r\n </div>\r\n");
|
|
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" id=\"Config_System_AD_SearchScope_Dialog\"");
|
|
|
|
WriteLiteral(" class=\"dialog\"");
|
|
|
|
WriteLiteral(" title=\"Search Scope\"");
|
|
|
|
WriteLiteral(">\r\n <div");
|
|
|
|
WriteLiteral(" id=\"Config_System_AD_SearchScope_Dialog_Loading\"");
|
|
|
|
WriteLiteral(">\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 417 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(AjaxHelpers.AjaxLoader());
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" Loading Organisational Units\r\n </div>\r\n " +
|
|
" <div");
|
|
|
|
WriteLiteral(" id=\"Config_System_AD_SearchScope_Tree\"");
|
|
|
|
WriteLiteral(" class=\"organisationalUnitTree\"");
|
|
|
|
WriteLiteral(">\r\n </div>\r\n");
|
|
|
|
|
|
#line 421 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
|
|
#line 421 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
using (Html.BeginForm(MVC.API.System.UpdateActiveDirectorySearchScope(null, redirect: true)))
|
|
{
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </div>\r\n");
|
|
|
|
WriteLiteral(" <script>\r\n $(function () {\r\n " +
|
|
" var $dialog, $tree, tree, distinguishedNames;\r\n\r\n " +
|
|
" function expandNodeTree(node) {\r\n " +
|
|
"var parent = node.parent;\r\n if (parent) {\r\n " +
|
|
" expandNodeTree(parent);\r\n " +
|
|
" if (!parent.isExpanded())\r\n pa" +
|
|
"rent.setExpanded(true, { noAnimation: true, noEvents: false });\r\n " +
|
|
" }\r\n }\r\n f" +
|
|
"unction selectDistinguishedNames() {\r\n if (!disti" +
|
|
"nguishedNames) {\r\n distinguishedNames = $(\'#C" +
|
|
"onfig_System_AD_SearchScope_DistinguishedNames\')\r\n " +
|
|
" .find(\'li\')\r\n .map(function () " +
|
|
"{ return $(this).attr(\'data-distinguishedname\'); }).get();\r\n " +
|
|
" }\r\n\r\n if (tree) {\r\n " +
|
|
" tree.visit(function (node) {\r\n " +
|
|
" if ($.inArray(node.key, distinguishedNames) >= 0) {\r\n " +
|
|
" node.setSelected(true);\r\n " +
|
|
" expandNodeTree(node);\r\n } e" +
|
|
"lse if (node.isSelected()) {\r\n node.s" +
|
|
"etSelected(false);\r\n }\r\n " +
|
|
" });\r\n }\r\n " +
|
|
" }\r\n\r\n function update() {\r\n\r\n " +
|
|
" if (!$dialog) {\r\n $dialog = $(" +
|
|
"\'#Config_System_AD_SearchScope_Dialog\').dialog({\r\n " +
|
|
" autoOpen: false,\r\n buttons: nul" +
|
|
"l,\r\n draggable: false,\r\n " +
|
|
" modal: true,\r\n res" +
|
|
"izable: false,\r\n width: 500,\r\n " +
|
|
" height: 500\r\n })" +
|
|
";\r\n $loading = $(\'#Config_System_AD_SearchSco" +
|
|
"pe_Dialog_Loading\');\r\n $loading.find(\'i.ajaxL" +
|
|
"oading\').show();\r\n\r\n $tree = $(\'#Config_Syste" +
|
|
"m_AD_SearchScope_Tree\');\r\n $dialog.css(\'overf" +
|
|
"low\', \'visible\');\r\n $tree.css(\'height\', \'100%" +
|
|
"\');\r\n\r\n $.getJSON(\'");
|
|
|
|
|
|
#line 475 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Url.Action(MVC.API.System.DomainOrganisationalUnits()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\', null, function (data) {\r\n $loading.hide" +
|
|
"();\r\n\r\n tree = $tree.fancytree({\r\n " +
|
|
" source: data,\r\n " +
|
|
" checkbox: true,\r\n sel" +
|
|
"ectMode: 2,\r\n keyboard: false,\r\n " +
|
|
" fx: null\r\n " +
|
|
" }).fancytree(\'getTree\');\r\n\r\n tre" +
|
|
"e.$container.css(\'position\', \'relative\');\r\n\r\n " +
|
|
" // Set Buttons\r\n $dialog.dialog(\'opt" +
|
|
"ion\', \'buttons\', {\r\n \'Search Entire F" +
|
|
"orest\': function () {\r\n var $this" +
|
|
" = $(this);\r\n $this.css(\'overflow" +
|
|
"\', \'hidden\');\r\n $this.dialog(\"dis" +
|
|
"able\");\r\n $this.dialog(\"option\", " +
|
|
"\"buttons\", null);\r\n\r\n var $form =" +
|
|
" $dialog.find(\'form\');\r\n $form.su" +
|
|
"bmit();\r\n },\r\n " +
|
|
" \'Save\': function () {\r\n " +
|
|
" var $this = $(this);\r\n " +
|
|
" $this.css(\'overflow\', \'hidden\');\r\n " +
|
|
" $this.dialog(\"disable\");\r\n $t" +
|
|
"his.dialog(\"option\", \"buttons\", null);\r\n\r\n " +
|
|
" var nodes = tree.getSelectedNodes();\r\n " +
|
|
" var $form = $dialog.find(\'form\');\r\n " +
|
|
" $.each(nodes, function (i, node) {\r\n " +
|
|
" $(\'<input>\').attr({ \'type\': \'hidden\', \'name\': \'Contai" +
|
|
"ners\', \'value\': node.key }).appendTo($form);\r\n " +
|
|
" });\r\n $form.submit(" +
|
|
");\r\n }\r\n " +
|
|
" });\r\n\r\n // Select & Expand\r\n " +
|
|
" selectDistinguishedNames();\r\n\r\n " +
|
|
" tree.options.fx = { height: \"toggle\", duration: 200" +
|
|
" };\r\n });\r\n\r\n " +
|
|
"}\r\n\r\n selectDistinguishedNames();\r\n\r\n " +
|
|
" $dialog.dialog(\'open\');\r\n\r\n r" +
|
|
"eturn false;\r\n }\r\n\r\n $(\'#C" +
|
|
"onfig_System_AD_SearchScope_Update\').click(update);\r\n });" +
|
|
"\r\n </script>\r\n");
|
|
|
|
|
|
#line 532 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" </td>\r\n\r\n\r\n\r\n </tr>\r\n </table>\r\n</div>\r\n");
|
|
|
|
|
|
#line 540 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
if (canConfigProxy)
|
|
{
|
|
using (Html.BeginForm(MVC.API.System.UpdateProxySettings()))
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"form\"");
|
|
|
|
WriteLiteral(" style=\"width: 450px; margin-top: 15px;\"");
|
|
|
|
WriteLiteral(">\r\n <h2>Proxy Settings</h2>\r\n <table>\r\n <tr>" +
|
|
"\r\n <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Address:\r\n </th>\r\n " +
|
|
" <td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 552 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.EditorFor(m => m.ProxyAddress));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("<br />\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 553 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ValidationMessageFor(m => m.ProxyAddress));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Port:\r\n </th>\r\n " +
|
|
"<td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 561 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.EditorFor(m => m.ProxyPort));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("<br />\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 562 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ValidationMessageFor(m => m.ProxyPort));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Username:\r\n </th>\r\n " +
|
|
" <td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 570 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.EditorFor(m => m.ProxyUsername));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("<br />\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 571 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ValidationMessageFor(m => m.ProxyUsername));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Password:\r\n </th>\r\n " +
|
|
" <td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 579 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.EditorFor(m => m.ProxyPassword));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("<br />\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 580 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ValidationMessageFor(m => m.ProxyPassword));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n \r\n </th>\r\n " +
|
|
" <td>\r\n <button");
|
|
|
|
WriteLiteral(" id=\"Config_System_Proxy_Save\"");
|
|
|
|
WriteLiteral(" type=\"button\"");
|
|
|
|
WriteLiteral(" class=\"button small\"");
|
|
|
|
WriteLiteral(">Save Proxy Settings</button>");
|
|
|
|
|
|
#line 588 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(AjaxHelpers.AjaxLoader());
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(@"
|
|
<script>
|
|
$(function () {
|
|
var button = $('#Config_System_Proxy_Save');
|
|
|
|
button.click(function () {
|
|
var url = '");
|
|
|
|
|
|
#line 594 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Url.Action(MVC.API.System.UpdateProxySettings()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\';\r\n var data = {\r\n " +
|
|
" ProxyAddress: $(\'#ProxyAddress\').val(),\r\n " +
|
|
" ProxyPort: $(\'#ProxyPort\').val(),\r\n " +
|
|
" ProxyUsername: $(\'#ProxyUsername\').val(),\r\n " +
|
|
" ProxyPassword: $(\'#ProxyPassword\').val()\r\n " +
|
|
" }\r\n var ajaxLoading = button.next(\'" +
|
|
".ajaxLoading\').first().show();\r\n\r\n $.ajax({\r\n" +
|
|
" type: \'POST\',\r\n " +
|
|
" dataType: \'json\',\r\n url: u" +
|
|
"rl,\r\n data: data,\r\n " +
|
|
" success: function (response, result) {\r\n " +
|
|
" if (result != \'success\' || response != \'OK\') {\r\n " +
|
|
" alert(\'Unable to change property \"\' + Upda" +
|
|
"tePropertyName + \'\":\\n\' + response);\r\n " +
|
|
" ajaxLoading.hide();\r\n } else {\r" +
|
|
"\n ajaxLoading.hide().next(\'.ajaxO" +
|
|
"k\').show().delay(\'fast\').fadeOut(\'slow\');\r\n " +
|
|
" }\r\n }\r\n " +
|
|
" });\r\n });\r\n }" +
|
|
");\r\n </script>\r\n </td>\r\n " +
|
|
" </tr>\r\n </table>\r\n </div>\r\n");
|
|
|
|
|
|
#line 624 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral(" <div");
|
|
|
|
WriteLiteral(" class=\"form\"");
|
|
|
|
WriteLiteral(" style=\"width: 450px; margin-top: 15px;\"");
|
|
|
|
WriteLiteral(">\r\n <h2>Proxy Settings</h2>\r\n <table>\r\n <tr>\r\n " +
|
|
" <th");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Address:\r\n </th>\r\n <td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 636 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.DisplayFor(m => m.ProxyAddress));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n <th" +
|
|
"");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Port:\r\n </th>\r\n <td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 644 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.DisplayFor(m => m.ProxyPort));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n <th" +
|
|
"");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Username:\r\n </th>\r\n <td>\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 652 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.DisplayFor(m => m.ProxyUsername));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n <th" +
|
|
"");
|
|
|
|
WriteLiteral(" style=\"width: 135px\"");
|
|
|
|
WriteLiteral(">\r\n Password:\r\n </th>\r\n <td>\r\n " +
|
|
" ********\r\n </td>\r\n </tr>\r\n </" +
|
|
"table>\r\n </div>\r\n");
|
|
|
|
|
|
#line 665 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
}
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("<div");
|
|
|
|
WriteLiteral(" class=\"actionBar\"");
|
|
|
|
WriteLiteral(">\r\n");
|
|
|
|
WriteLiteral(" ");
|
|
|
|
|
|
#line 667 "..\..\Areas\Config\Views\SystemConfig\Index.cshtml"
|
|
Write(Html.ActionLinkButton("Update Device Last Network Logons", MVC.API.System.UpdateLastNetworkLogonDates()));
|
|
|
|
|
|
#line default
|
|
#line hidden
|
|
WriteLiteral("\r\n</div>\r\n");
|
|
|
|
}
|
|
}
|
|
}
|
|
#pragma warning restore 1591
|