@model Disco.Web.Areas.Config.Models.SystemConfig.IndexModel @{ Authorization.Require(Claims.Config.System.Show); var canConfigProxy = Authorization.Has(Claims.Config.System.ConfigureProxy); var canConfigEmail = Authorization.Has(Claims.Config.System.ConfigureEmail); 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"); } }
| Disco ICT Version: |
@Model.DiscoVersion.ToString(4)
Built @CommonHelpers.FriendlyDate(Model.DiscoVersionBuilt, "Unknown")
|
||||||||
|---|---|---|---|---|---|---|---|---|---|
| Database Connection: |
|
||||||||
| Data Store Location: | @Model.DataStoreLocation |
| License: | @using (Html.BeginForm(MVC.API.System.LicenseCheck(), FormMethod.Post)) { @Html.AntiForgeryToken(); } |
|---|---|
| Status: |
@if (Model.LicenseError != null)
{
@Model.LicenseError
}
else
{
Expires @CommonHelpers.FriendlyDate(Model.LicenseExpires)
}
|
Official support is available
|
|
| Last Check: |
Never
|
|---|---|
| Last Run: | @CommonHelpers.FriendlyDate(Model.UpdateLatestResponse.UpdateResponseDate.ToLocalTime()) |
| Update Available: |
Version @(Model.UpdateLatestResponse.LatestVersion) is available
[Released @(CommonHelpers.FriendlyDate(Model.UpdateLatestResponse.ReleasedDate))]
@(new HtmlString(Model.UpdateLatestResponse.Description))
Download Now
|
| Status: | The latest version is installed |
| Check for Update: |
@{
if (Model.UpdateRunningStatus == null)
{
@Html.ActionLinkSmallButton("Check Now", MVC.API.System.UpdateCheck())
[Will run automatically @CommonHelpers.FriendlyDate(Model.UpdateNextScheduled, "Unknown")]
}
else
{
@Html.ActionLink("View Status", MVC.Config.Logging.TaskStatus(Model.UpdateRunningStatus.SessionId))
[Running Now]
}
}
@if (Model.UpdateBetaDeployment)
{
Beta Deployment } |
| Primary Domain: |
@Model.ADPrimaryDomain.Name [@Model.ADPrimaryDomain.NetBiosName]
|
|---|---|
| Additional Domains: |
@if (Model.ADDomains.Count > 1)
{
var adAdditionalDomains = Model.ADDomains.Where(d => d != Model.ADPrimaryDomain).OrderBy(d => d.Name).ToList();
var adDomainFirst = adAdditionalDomains.First();
@adDomainFirst.Name [@adDomainFirst.NetBiosName]
foreach (var adDomain in adAdditionalDomains.Skip(1))
{
@adDomain.Name [@adDomain.NetBiosName]
|
| Site: |
@Model.ADSite.Name
|
| Servers: |
@if (Model.ADServers.Count > 0)
{
None Found
}
|
| Directory: |
@if (Model.ADAllServers == null)
{
@Html.CheckBoxFor(m => m.ADSearchAllServers, new { disabled = "disabled" }) @Html.LabelFor(m => m.ADSearchAllServers)
Directory servers are currently being retrieved.
@if (!canSearchEntireDirectory)
{
@Html.CheckBoxFor(m => m.ADSearchAllServers, new { disabled = "disabled" }) @Html.LabelFor(m => m.ADSearchAllServers)
}
else
{
Disco ICT will not search the entire directory which consists of more than @(Disco.Services.Interop.ActiveDirectory.ActiveDirectory.MaxAllServerSearch) servers. Only servers within this site will be searched. If this setting is enabled, Disco ICT will query all servers within the directory rather than only servers within this site.
@Html.CheckBoxFor(m => m.ADSearchAllServers, new { disabled = "disabled" }) @Html.LabelFor(m => m.ADSearchAllServers)
}
If this setting is enabled, Disco ICT will query all servers within the directory rather than only servers within this site. All Servers:
|
| Searching: |
@{
object ADSearchWildcardSuffixOnlyAttributes = null;
if (!canConfigAD)
{
ADSearchWildcardSuffixOnlyAttributes = new
{
disabled = "disabled"
};
}
}
@Html.CheckBoxFor(m => m.ADSearchWildcardSuffixOnly, ADSearchWildcardSuffixOnlyAttributes) @Html.LabelFor(m => m.ADSearchWildcardSuffixOnly) @AjaxHelpers.AjaxLoader()
If this setting is enabled, Disco ICT 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. |
| Search Scope: |
@if (Model.ADSearchContainers != null && Model.ADSearchContainers.Count > 0)
{
Searching is restricted to the following Organisational Unit containers
No Organisational Unit restrictions are in effect.
When searching, the entire domain will be queried. This is suitable for most single-domain deployments.
@AjaxHelpers.AjaxLoader() Loading Organisational Units
|
| Address: |
@Html.EditorFor(m => m.ProxyAddress) @Html.ValidationMessageFor(m => m.ProxyAddress) |
|---|---|
| Port: |
@Html.EditorFor(m => m.ProxyPort) @Html.ValidationMessageFor(m => m.ProxyPort) |
| Username: |
@Html.EditorFor(m => m.ProxyUsername) @Html.ValidationMessageFor(m => m.ProxyUsername) |
| Password: |
@Html.EditorFor(m => m.ProxyPassword) @Html.ValidationMessageFor(m => m.ProxyPassword) |
| @AjaxHelpers.AjaxLoader() |
| Address: | @Html.DisplayFor(m => m.ProxyAddress) |
|---|---|
| Port: | @Html.DisplayFor(m => m.ProxyPort) |
| Username: | @Html.DisplayFor(m => m.ProxyUsername) |
| Password: | ******** |
| SMTP Server: |
@Html.EditorFor(m => m.EmailSmtpServer) @Html.ValidationMessageFor(m => m.EmailSmtpServer) |
|---|---|
| Port: |
@Html.EditorFor(m => m.EmailSmtpPort) @Html.ValidationMessageFor(m => m.EmailSmtpPort) |
| Default From Address: |
@Html.EditorFor(m => m.EmailFromAddress) @Html.ValidationMessageFor(m => m.EmailFromAddress) |
| Reply To Address: |
@Html.EditorFor(m => m.EmailReplyToAddress) @Html.ValidationMessageFor(m => m.EmailReplyToAddress) |
| @Html.CheckBoxFor(m => m.EmailEnableSsl) @Html.LabelFor(m => m.EmailEnableSsl) | |
| Username: |
@Html.EditorFor(m => m.EmailUsername) @Html.ValidationMessageFor(m => m.EmailUsername) |
| Password: |
@Html.EditorFor(m => m.EmailPassword) @Html.ValidationMessageFor(m => m.EmailPassword) |
@Html.AntiForgeryToken()
@AjaxHelpers.AjaxLoader()
Recipient Email Address:@using (Html.BeginForm(MVC.API.System.SendTestEmail(), FormMethod.Post)) { @Html.AntiForgeryToken() } |
| SMTP Server: | @Html.DisplayFor(m => m.EmailSmtpServer) |
|---|---|
| Port: | @Html.DisplayFor(m => m.EmailSmtpPort) |
| Default From Address: | @Html.DisplayFor(m => m.EmailFromAddress) |
| Reply To Address: | @Html.DisplayFor(m => m.EmailReplyToAddress) |
| Enable SSL: | @Html.CheckBoxFor(m => m.EmailEnableSsl, new { disabled = "disabled" }) @Html.LabelFor(m => m.EmailEnableSsl) |
| Username: | @Html.DisplayFor(m => m.EmailUsername) |
| Password: | ******** |