Feature #20: Assigned User Is Local Admin

Device Profile setting which specifies whether assigned users are set as
Local Administrators. Default is true (which maintains compatibility).
This commit is contained in:
Gary Sharp
2013-10-28 18:16:22 +11:00
parent c13d13c91c
commit 10a38af08b
12 changed files with 671 additions and 290 deletions
+1
View File
@@ -523,6 +523,7 @@ namespace Disco.BI.DeviceBI
ActiveDirectoryUserAccount AssignedUserInfo = ActiveDirectory.GetUserAccount(RepoDevice.AssignedUser.Id); ActiveDirectoryUserAccount AssignedUserInfo = ActiveDirectory.GetUserAccount(RepoDevice.AssignedUser.Id);
EnrolmentLog.LogSessionTaskAssigningUser(sessionId, RepoDevice.SerialNumber, AssignedUserInfo.DisplayName, AssignedUserInfo.SamAccountName, AssignedUserInfo.Domain, AssignedUserInfo.SecurityIdentifier); EnrolmentLog.LogSessionTaskAssigningUser(sessionId, RepoDevice.SerialNumber, AssignedUserInfo.DisplayName, AssignedUserInfo.SamAccountName, AssignedUserInfo.Domain, AssignedUserInfo.SecurityIdentifier);
response.AllowBootstrapperUninstall = true; response.AllowBootstrapperUninstall = true;
response.DeviceAssignedUserIsLocalAdmin = RepoDevice.DeviceProfile.AssignedUserLocalAdmin;
response.DeviceAssignedUserUsername = AssignedUserInfo.SamAccountName; response.DeviceAssignedUserUsername = AssignedUserInfo.SamAccountName;
response.DeviceAssignedUserDomain = AssignedUserInfo.Domain; response.DeviceAssignedUserDomain = AssignedUserInfo.Domain;
response.DeviceAssignedUserName = AssignedUserInfo.DisplayName; response.DeviceAssignedUserName = AssignedUserInfo.DisplayName;
+5 -3
View File
@@ -102,7 +102,8 @@ namespace Disco.Client.Extensions
// Flush Logged-On History // Flush Logged-On History
if (!string.IsNullOrEmpty(enrolResponse.DeviceDomainName)) if (!string.IsNullOrEmpty(enrolResponse.DeviceDomainName))
{ {
using (RegistryKey regWinlogon = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", true)){ using (RegistryKey regWinlogon = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", true))
{
regWinlogon.SetValue("DefaultDomainName", enrolResponse.DeviceDomainName, RegistryValueKind.String); regWinlogon.SetValue("DefaultDomainName", enrolResponse.DeviceDomainName, RegistryValueKind.String);
regWinlogon.SetValue("DefaultUserName", String.Empty, RegistryValueKind.String); regWinlogon.SetValue("DefaultUserName", String.Empty, RegistryValueKind.String);
} }
@@ -130,9 +131,10 @@ namespace Disco.Client.Extensions
// Only run task if Assigned User was specified // Only run task if Assigned User was specified
if (!string.IsNullOrWhiteSpace(enrolResponse.DeviceAssignedUserSID)) if (!string.IsNullOrWhiteSpace(enrolResponse.DeviceAssignedUserSID))
{ {
Presentation.UpdateStatus("Enrolling Device", string.Format(@"Configuring permissions for the device owner:{0}{1} ({2}\{3})", Environment.NewLine, enrolResponse.DeviceAssignedUserName, enrolResponse.DeviceAssignedUserDomain, enrolResponse.DeviceAssignedUserUsername), true, -1, 3000); Presentation.UpdateStatus("Enrolling Device", string.Format(@"Configuring the device owner:{0}{1} ({2}\{3})", Environment.NewLine, enrolResponse.DeviceAssignedUserName, enrolResponse.DeviceAssignedUserDomain, enrolResponse.DeviceAssignedUserUsername), true, -1, 3000);
Interop.LocalAuthentication.AddLocalGroupMembership("Administrators", enrolResponse.DeviceAssignedUserSID, enrolResponse.DeviceAssignedUserUsername, enrolResponse.DeviceAssignedUserDomain); if (enrolResponse.DeviceAssignedUserIsLocalAdmin)
Interop.LocalAuthentication.AddLocalGroupMembership("Administrators", enrolResponse.DeviceAssignedUserSID, enrolResponse.DeviceAssignedUserUsername, enrolResponse.DeviceAssignedUserDomain);
// Make Windows think this user was the last to logon // Make Windows think this user was the last to logon
using (RegistryKey regWinlogon = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", true)) using (RegistryKey regWinlogon = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", true))
+8 -1
View File
@@ -118,6 +118,10 @@
<Compile Include="Migrations\201310010352238_DBv9.Designer.cs"> <Compile Include="Migrations\201310010352238_DBv9.Designer.cs">
<DependentUpon>201310010352238_DBv9.cs</DependentUpon> <DependentUpon>201310010352238_DBv9.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Migrations\201310280657528_DBv10.cs" />
<Compile Include="Migrations\201310280657528_DBv10.Designer.cs">
<DependentUpon>201310280657528_DBv10.cs</DependentUpon>
</Compile>
<Compile Include="Migrations\Configuration.cs" /> <Compile Include="Migrations\Configuration.cs" />
<Compile Include="Migrations\DiscoDataMigrator.cs" /> <Compile Include="Migrations\DiscoDataMigrator.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
@@ -160,6 +164,9 @@
<EmbeddedResource Include="Migrations\201310010352238_DBv9.resx"> <EmbeddedResource Include="Migrations\201310010352238_DBv9.resx">
<DependentUpon>201310010352238_DBv9.cs</DependentUpon> <DependentUpon>201310010352238_DBv9.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="Migrations\201310280657528_DBv10.resx">
<DependentUpon>201310280657528_DBv10.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx"> <EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator> <Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput> <LastGenOutput>Resources.Designer.cs</LastGenOutput>
@@ -173,7 +180,7 @@
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<ProjectExtensions> <ProjectExtensions>
<VisualStudio> <VisualStudio>
<UserProperties BuildVersion_BuildAction="Both" BuildVersion_UseGlobalSettings="False" BuildVersion_DetectChanges="False" BuildVersion_StartDate="2011/7/1" BuildVersion_BuildVersioningStyle="None.DeltaBaseYear.MonthAndDayStamp.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_UpdateFileVersion="True" /> <UserProperties BuildVersion_UpdateFileVersion="True" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_BuildVersioningStyle="None.DeltaBaseYear.MonthAndDayStamp.TimeStamp" BuildVersion_StartDate="2011/7/1" BuildVersion_DetectChanges="False" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildAction="Both" />
</VisualStudio> </VisualStudio>
</ProjectExtensions> </ProjectExtensions>
<Import Project="$(SolutionDir)\.nuget\nuget.targets" /> <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+27
View File
@@ -0,0 +1,27 @@
// <auto-generated />
namespace Disco.Data.Migrations
{
using System.Data.Entity.Migrations;
using System.Data.Entity.Migrations.Infrastructure;
using System.Resources;
public sealed partial class DBv10 : IMigrationMetadata
{
private readonly ResourceManager Resources = new ResourceManager(typeof(DBv10));
string IMigrationMetadata.Id
{
get { return "201310280657528_DBv10"; }
}
string IMigrationMetadata.Source
{
get { return null; }
}
string IMigrationMetadata.Target
{
get { return Resources.GetString("Target"); }
}
}
}
@@ -0,0 +1,18 @@
namespace Disco.Data.Migrations
{
using System;
using System.Data.Entity.Migrations;
public partial class DBv10 : DbMigration
{
public override void Up()
{
AddColumn("dbo.DeviceProfiles", "AssignedUserLocalAdmin", c => c.Boolean(nullable: false, defaultValue: true));
}
public override void Down()
{
DropColumn("dbo.DeviceProfiles", "AssignedUserLocalAdmin");
}
}
}
File diff suppressed because one or more lines are too long
@@ -17,6 +17,8 @@ namespace Disco.Models.ClientServices
public string DeviceAssignedUserSID { get; set; } public string DeviceAssignedUserSID { get; set; }
public string DeviceAssignedUserUsername { get; set; } public string DeviceAssignedUserUsername { get; set; }
public bool DeviceAssignedUserIsLocalAdmin { get; set; }
public string OfflineDomainJoin { get; set; } public string OfflineDomainJoin { get; set; }
public string DeviceCertificate { get; set; } public string DeviceCertificate { get; set; }
@@ -43,6 +43,8 @@ namespace Disco.Models.Repository
// 2012-06-28 G# // 2012-06-28 G#
public bool ProvisionADAccount { get; set; } public bool ProvisionADAccount { get; set; }
public bool AssignedUserLocalAdmin { get; set; }
public virtual IList<Device> Devices { get; set; } public virtual IList<Device> Devices { get; set; }
public override string ToString() public override string ToString()
@@ -22,6 +22,7 @@ namespace Disco.Web.Areas.API.Controllers
const string pEnforceComputerNameConvention = "enforcecomputernameconvention"; const string pEnforceComputerNameConvention = "enforcecomputernameconvention";
const string pEnforceOrganisationalUnit = "enforceorganisationalunit"; const string pEnforceOrganisationalUnit = "enforceorganisationalunit";
const string pProvisionADAccount = "provisionadaccount"; const string pProvisionADAccount = "provisionadaccount";
const string pAssignedUserLocalAdmin = "assigneduserlocaladmin";
[DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)]
public virtual ActionResult Update(int id, string key, string value = null, Nullable<bool> redirect = null) public virtual ActionResult Update(int id, string key, string value = null, Nullable<bool> redirect = null)
@@ -73,6 +74,9 @@ namespace Disco.Web.Areas.API.Controllers
case pProvisionADAccount: case pProvisionADAccount:
UpdateProvisionADAccount(deviceProfile, value); UpdateProvisionADAccount(deviceProfile, value);
break; break;
case pAssignedUserLocalAdmin:
UpdateAssignedUserLocalAdmin(deviceProfile, value);
break;
default: default:
throw new Exception("Invalid Update Key"); throw new Exception("Invalid Update Key");
} }
@@ -163,6 +167,12 @@ namespace Disco.Web.Areas.API.Controllers
return Update(id, pProvisionADAccount, ProvisionADAccount, redirect); return Update(id, pProvisionADAccount, ProvisionADAccount, redirect);
} }
[DiscoAuthorize(Claims.Config.DeviceProfile.Configure)]
public virtual ActionResult UpdateAssignedUserLocalAdmin(int id, string AssignedUserLocalAdmin = null, Nullable<bool> redirect = null)
{
return Update(id, pAssignedUserLocalAdmin, AssignedUserLocalAdmin, redirect);
}
#endregion #endregion
#region Update Properties #region Update Properties
@@ -317,6 +327,19 @@ namespace Disco.Web.Areas.API.Controllers
} }
throw new Exception("Invalid Boolean Value"); throw new Exception("Invalid Boolean Value");
} }
private void UpdateAssignedUserLocalAdmin(DeviceProfile deviceProfile, string AssignedUserLocalAdmin)
{
bool bValue;
if (bool.TryParse(AssignedUserLocalAdmin, out bValue))
{
deviceProfile.AssignedUserLocalAdmin = bValue;
Database.SaveChanges();
return;
}
throw new Exception("Invalid Boolean Value");
}
#endregion #endregion
[DiscoAuthorize(Claims.Config.DeviceProfile.Configure)] [DiscoAuthorize(Claims.Config.DeviceProfile.Configure)]
@@ -17,7 +17,7 @@
<div id="configurationDeviceProfileShow" class="form" style="width: 600px"> <div id="configurationDeviceProfileShow" class="form" style="width: 600px">
<table> <table>
<tr> <tr>
<th>Id: <th style="width: 230px;">Id:
</th> </th>
<td> <td>
@Html.DisplayFor(model => model.DeviceProfile.Id) @Html.DisplayFor(model => model.DeviceProfile.Id)
@@ -383,49 +383,14 @@
} }
} }
<div style="margin-top: 8px;"> <div style="margin-top: 8px;">
<label for="DeviceProfile_ProvisionADAccount">
Provision Active Directory Account:
</label>
@if (canConfig)
{
<input id="DeviceProfile_ProvisionADAccount" type="checkbox" @(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/>
@AjaxHelpers.AjaxLoader()
<script type="text/javascript">
$(function () {
$('#DeviceProfile_ProvisionADAccount').click(function () {
var $this = $(this);
var $ajaxLoading = $this.next('.ajaxLoading').show();
var data = { ProvisionADAccount: $this.is(':checked') };
$.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateProvisionADAccount(Model.DeviceProfile.Id))', data, function (response, result) {
if (result != 'success' || response != 'OK') {
alert('Unable to change Provision AD Account:\n' + response);
$ajaxLoading.hide();
} else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
}
});
});
});
</script>
}
else
{
<input id="DeviceProfile_ProvisionADAccount" type="checkbox" @(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" />
}
</div>
<div style="margin-top: 8px;">
<label for="DeviceProfile_EnforceComputerNameConvention">
Enforce Naming Convention:
</label>
@if (canConfig) @if (canConfig)
{ {
<input id="DeviceProfile_EnforceComputerNameConvention" type="checkbox" @(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/> <input id="DeviceProfile_EnforceComputerNameConvention" type="checkbox" @(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/>
@AjaxHelpers.AjaxLoader()
<script type="text/javascript"> <script type="text/javascript">
$(function () { $(function () {
$('#DeviceProfile_EnforceComputerNameConvention').click(function () { $('#DeviceProfile_EnforceComputerNameConvention').click(function () {
var $this = $(this); var $this = $(this);
var $ajaxLoading = $this.next('.ajaxLoading').show(); var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { EnforceComputerNameConvention: $this.is(':checked') }; var data = { EnforceComputerNameConvention: $this.is(':checked') };
$.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateEnforceComputerNameConvention(Model.DeviceProfile.Id))', data, function (response, result) { $.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateEnforceComputerNameConvention(Model.DeviceProfile.Id))', data, function (response, result) {
if (result != 'success' || response != 'OK') { if (result != 'success' || response != 'OK') {
@@ -443,6 +408,80 @@
{ {
<input id="DeviceProfile_EnforceComputerNameConvention" type="checkbox" @(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" /> <input id="DeviceProfile_EnforceComputerNameConvention" type="checkbox" @(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" />
} }
<label for="DeviceProfile_EnforceComputerNameConvention">
Enforce Naming Convention
</label>
@AjaxHelpers.AjaxLoader()
</div>
<div class="smallMessage" style="margin-top: 8px;">
Note: Computer names are only changed when Active Directory accounts are provisioned.
</div>
</td>
</tr>
<tr>
<th>Active Directory</th>
<td>
<div>
@if (canConfig)
{
<input id="DeviceProfile_ProvisionADAccount" type="checkbox" @(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/>
<script type="text/javascript">
$(function () {
$('#DeviceProfile_ProvisionADAccount').click(function () {
var $this = $(this);
var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { ProvisionADAccount: $this.is(':checked') };
$.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateProvisionADAccount(Model.DeviceProfile.Id))', data, function (response, result) {
if (result != 'success' || response != 'OK') {
alert('Unable to change Provision AD Account:\n' + response);
$ajaxLoading.hide();
} else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
}
});
});
});
</script>
}
else
{
<input id="DeviceProfile_ProvisionADAccount" type="checkbox" @(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" />
}
<label for="DeviceProfile_ProvisionADAccount">
Provision Active Directory Account
</label>
@AjaxHelpers.AjaxLoader()
</div>
<div style="margin-top: 8px;">
@if (canConfig)
{
<input id="DeviceProfile_AssignedUserLocalAdmin" type="checkbox" @(Model.DeviceProfile.AssignedUserLocalAdmin ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/>
<script type="text/javascript">
$(function () {
$('#DeviceProfile_AssignedUserLocalAdmin').click(function () {
var $this = $(this);
var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { AssignedUserLocalAdmin: $this.is(':checked') };
$.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateAssignedUserLocalAdmin(Model.DeviceProfile.Id))', data, function (response, result) {
if (result != 'success' || response != 'OK') {
alert('Unable to change Assigned User Is Local Administrator:\n' + response);
$ajaxLoading.hide();
} else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
}
});
});
});
</script>
}
else
{
<input id="DeviceProfile_AssignedUserLocalAdmin" type="checkbox" @(Model.DeviceProfile.AssignedUserLocalAdmin ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" />
}
<label for="DeviceProfile_AssignedUserLocalAdmin">
Assigned User is Local Administrator
</label>
@AjaxHelpers.AjaxLoader()
</div> </div>
</td> </td>
</tr> </tr>
@@ -583,35 +622,35 @@
} }
} }
<div style="margin-top: 8px;"> <div style="margin-top: 8px;">
<label for="DeviceProfile_EnforceOrganisationalUnit">
Enforce:
</label>
@if (canConfig) @if (canConfig)
{ {
<input id="DeviceProfile_EnforceOrganisationalUnit" type="checkbox" @(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/> <input id="DeviceProfile_EnforceOrganisationalUnit" type="checkbox" @(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty))/>
@AjaxHelpers.AjaxLoader()
<script type="text/javascript"> <script type="text/javascript">
$(function () { $(function () {
$('#DeviceProfile_EnforceOrganisationalUnit').click(function () { $('#DeviceProfile_EnforceOrganisationalUnit').click(function () {
var $this = $(this); var $this = $(this);
var $ajaxLoading = $this.next('.ajaxLoading').show(); var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { EnforceOrganisationalUnit: $this.is(':checked') }; var data = { EnforceOrganisationalUnit: $this.is(':checked') };
$.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateEnforceOrganisationalUnit(Model.DeviceProfile.Id))', data, function (response, result) { $.getJSON('@Url.Action(MVC.API.DeviceProfile.UpdateEnforceOrganisationalUnit(Model.DeviceProfile.Id))', data, function (response, result) {
if (result != 'success' || response != 'OK') { if (result != 'success' || response != 'OK') {
alert('Unable to change Enforce Organisation Unit:\n' + response); alert('Unable to change Enforce Organisation Unit:\n' + response);
$ajaxLoading.hide(); $ajaxLoading.hide();
} else { } else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow'); $ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
} }
});
}); });
}); });
});
</script> </script>
} }
else else
{ {
<input id="DeviceProfile_EnforceOrganisationalUnit" type="checkbox" @(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" /> <input id="DeviceProfile_EnforceOrganisationalUnit" type="checkbox" @(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)) disabled="disabled" />
} }
<label for="DeviceProfile_EnforceOrganisationalUnit">
Enforce Organisational Unit
</label>
@AjaxHelpers.AjaxLoader()
</div> </div>
</td> </td>
</tr> </tr>
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.18051 // Runtime Version:4.0.30319.34003
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@@ -70,8 +70,11 @@ WriteLiteral(" class=\"form\"");
WriteLiteral(" style=\"width: 600px\""); WriteLiteral(" style=\"width: 600px\"");
WriteLiteral(">\r\n <table>\r\n <tr>\r\n <th>Id:\r\n </th>\r\n " + WriteLiteral(">\r\n <table>\r\n <tr>\r\n <th");
" <td>\r\n");
WriteLiteral(" style=\"width: 230px;\"");
WriteLiteral(">Id:\r\n </th>\r\n <td>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
@@ -949,14 +952,14 @@ WriteLiteral(" <a");
WriteLiteral(" id=\"expressionBrowserAnchor\""); WriteLiteral(" id=\"expressionBrowserAnchor\"");
WriteAttribute("href", Tuple.Create(" href=\"", 16234), Tuple.Create("\"", 16303) WriteAttribute("href", Tuple.Create(" href=\"", 16256), Tuple.Create("\"", 16325)
#line 332 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 332 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
, Tuple.Create(Tuple.Create("", 16241), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Config.DocumentTemplate.ExpressionBrowser()) , Tuple.Create(Tuple.Create("", 16263), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Config.DocumentTemplate.ExpressionBrowser())
#line default #line default
#line hidden #line hidden
, 16241), false) , 16263), false)
); );
WriteLiteral(">&nbsp;</a>\r\n"); WriteLiteral(">&nbsp;</a>\r\n");
@@ -1069,148 +1072,16 @@ WriteLiteral(" <div");
WriteLiteral(" style=\"margin-top: 8px;\""); WriteLiteral(" style=\"margin-top: 8px;\"");
WriteLiteral(">\r\n <label"); WriteLiteral(">\r\n");
WriteLiteral(" for=\"DeviceProfile_ProvisionADAccount\"");
WriteLiteral(">\r\n Provision Active Directory Account:\r\n " +
" </label>\r\n");
#line 389 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 386 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default #line default
#line hidden #line hidden
#line 389 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 386 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canConfig)
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"DeviceProfile_ProvisionADAccount\"");
WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" ");
#line 391 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
#line default
#line hidden
WriteLiteral("/>\r\n");
#line 392 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
#line 392 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
#line 392 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(@">
$(function () {
$('#DeviceProfile_ProvisionADAccount').click(function () {
var $this = $(this);
var $ajaxLoading = $this.next('.ajaxLoading').show();
var data = { ProvisionADAccount: $this.is(':checked') };
$.getJSON('");
#line 399 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.UpdateProvisionADAccount(Model.DeviceProfile.Id)));
#line default
#line hidden
WriteLiteral(@"', data, function (response, result) {
if (result != 'success' || response != 'OK') {
alert('Unable to change Provision AD Account:\n' + response);
$ajaxLoading.hide();
} else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
}
});
});
});
</script>
");
#line 410 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"DeviceProfile_ProvisionADAccount\"");
WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" ");
#line 413 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
#line default
#line hidden
WriteLiteral(" disabled=\"disabled\" />\r\n");
#line 414 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" </div>\r\n <div");
WriteLiteral(" style=\"margin-top: 8px;\"");
WriteLiteral(">\r\n <label");
WriteLiteral(" for=\"DeviceProfile_EnforceComputerNameConvention\"");
WriteLiteral(">\r\n Enforce Naming Convention:\r\n </labe" +
"l>\r\n");
#line 420 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
#line 420 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canConfig) if (canConfig)
{ {
@@ -1226,7 +1097,7 @@ WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" "); WriteLiteral(" ");
#line 422 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 388 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); Write(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
@@ -1234,26 +1105,6 @@ WriteLiteral(" ");
#line hidden #line hidden
WriteLiteral("/>\r\n"); WriteLiteral("/>\r\n");
#line 423 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
#line 423 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
#line 423 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
WriteLiteral(" <script"); WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\""); WriteLiteral(" type=\"text/javascript\"");
@@ -1262,12 +1113,12 @@ WriteLiteral(@">
$(function () { $(function () {
$('#DeviceProfile_EnforceComputerNameConvention').click(function () { $('#DeviceProfile_EnforceComputerNameConvention').click(function () {
var $this = $(this); var $this = $(this);
var $ajaxLoading = $this.next('.ajaxLoading').show(); var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { EnforceComputerNameConvention: $this.is(':checked') }; var data = { EnforceComputerNameConvention: $this.is(':checked') };
$.getJSON('"); $.getJSON('");
#line 430 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 395 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.UpdateEnforceComputerNameConvention(Model.DeviceProfile.Id))); Write(Url.Action(MVC.API.DeviceProfile.UpdateEnforceComputerNameConvention(Model.DeviceProfile.Id)));
@@ -1287,7 +1138,7 @@ WriteLiteral(@"', data, function (response, result) {
"); ");
#line 441 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 406 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
else else
{ {
@@ -1304,7 +1155,7 @@ WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" "); WriteLiteral(" ");
#line 444 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 409 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); Write(Model.DeviceProfile.EnforceComputerNameConvention ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
@@ -1313,17 +1164,280 @@ WriteLiteral(" ");
WriteLiteral(" disabled=\"disabled\" />\r\n"); WriteLiteral(" disabled=\"disabled\" />\r\n");
#line 445 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 410 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
#line default #line default
#line hidden #line hidden
WriteLiteral(" </div>\r\n </td>\r\n </tr>\r\n <tr>\r\n " + WriteLiteral(" <label");
" <th>Default Organisational Unit:\r\n </th>\r\n <td>");
WriteLiteral(" for=\"DeviceProfile_EnforceComputerNameConvention\"");
WriteLiteral(">\r\n Enforce Naming Convention\r\n </label" +
">\r\n");
WriteLiteral(" ");
#line 452 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 414 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
WriteLiteral("\r\n </div>\r\n <div");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(" style=\"margin-top: 8px;\"");
WriteLiteral(@">
Note: Computer names are only changed when Active Directory accounts are provisioned.
</div>
</td>
</tr>
<tr>
<th>Active Directory</th>
<td>
<div>
");
#line 425 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
#line 425 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canConfig)
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"DeviceProfile_ProvisionADAccount\"");
WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" ");
#line 427 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
#line default
#line hidden
WriteLiteral("/>\r\n");
WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(@">
$(function () {
$('#DeviceProfile_ProvisionADAccount').click(function () {
var $this = $(this);
var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { ProvisionADAccount: $this.is(':checked') };
$.getJSON('");
#line 434 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.UpdateProvisionADAccount(Model.DeviceProfile.Id)));
#line default
#line hidden
WriteLiteral(@"', data, function (response, result) {
if (result != 'success' || response != 'OK') {
alert('Unable to change Provision AD Account:\n' + response);
$ajaxLoading.hide();
} else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
}
});
});
});
</script>
");
#line 445 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"DeviceProfile_ProvisionADAccount\"");
WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" ");
#line 448 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.ProvisionADAccount ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
#line default
#line hidden
WriteLiteral(" disabled=\"disabled\" />\r\n");
#line 449 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" <label");
WriteLiteral(" for=\"DeviceProfile_ProvisionADAccount\"");
WriteLiteral(">\r\n Provision Active Directory Account\r\n " +
" </label>\r\n");
WriteLiteral(" ");
#line 453 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
WriteLiteral("\r\n </div>\r\n <div");
WriteLiteral(" style=\"margin-top: 8px;\"");
WriteLiteral(">\r\n");
#line 456 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
#line 456 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canConfig)
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"DeviceProfile_AssignedUserLocalAdmin\"");
WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" ");
#line 458 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.AssignedUserLocalAdmin ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
#line default
#line hidden
WriteLiteral("/>\r\n");
WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(@">
$(function () {
$('#DeviceProfile_AssignedUserLocalAdmin').click(function () {
var $this = $(this);
var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { AssignedUserLocalAdmin: $this.is(':checked') };
$.getJSON('");
#line 465 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.UpdateAssignedUserLocalAdmin(Model.DeviceProfile.Id)));
#line default
#line hidden
WriteLiteral(@"', data, function (response, result) {
if (result != 'success' || response != 'OK') {
alert('Unable to change Assigned User Is Local Administrator:\n' + response);
$ajaxLoading.hide();
} else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
}
});
});
});
</script>
");
#line 476 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
}
else
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"DeviceProfile_AssignedUserLocalAdmin\"");
WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" ");
#line 479 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.AssignedUserLocalAdmin ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
#line default
#line hidden
WriteLiteral(" disabled=\"disabled\" />\r\n");
#line 480 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" <label");
WriteLiteral(" for=\"DeviceProfile_AssignedUserLocalAdmin\"");
WriteLiteral(">\r\n Assigned User is Local Administrator\r\n " +
" </label>\r\n");
WriteLiteral(" ");
#line 484 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
WriteLiteral("\r\n </div>\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
" <th>Default Organisational Unit:\r\n </th>\r\n <td>");
#line 491 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canConfig) if (canConfig)
{ {
@@ -1331,14 +1445,14 @@ WriteLiteral(" </div>\r\n </td>\r\n </tr>\r\n
#line default #line default
#line hidden #line hidden
#line 454 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 493 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Html.HiddenFor(model => model.DeviceProfile.OrganisationalUnit)); Write(Html.HiddenFor(model => model.DeviceProfile.OrganisationalUnit));
#line default #line default
#line hidden #line hidden
#line 454 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 493 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
@@ -1359,20 +1473,20 @@ WriteLiteral(" href=\"#\"");
WriteLiteral(">Change</a>"); WriteLiteral(">Change</a>");
#line 457 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 496 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default #line default
#line hidden #line hidden
#line 457 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 496 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader()); Write(AjaxHelpers.AjaxLoader());
#line default #line default
#line hidden #line hidden
#line 457 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 496 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
@@ -1418,7 +1532,7 @@ WriteLiteral(@">
$.getJSON('"); $.getJSON('");
#line 483 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 522 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.UpdateOrganisationalUnit(Model.DeviceProfile.Id, null))); Write(Url.Action(MVC.API.DeviceProfile.UpdateOrganisationalUnit(Model.DeviceProfile.Id, null)));
@@ -1459,7 +1573,7 @@ WriteLiteral("\', data, function (response, result) {\r\n
"getJSON(\'"); "getJSON(\'");
#line 532 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 571 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.OrganisationalUnits())); Write(Url.Action(MVC.API.DeviceProfile.OrganisationalUnits()));
@@ -1492,7 +1606,7 @@ WriteLiteral("\', null, function (data) {\r\n var
" });\r\n </script>\r\n"); " });\r\n </script>\r\n");
#line 571 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 610 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
else else
{ {
@@ -1505,7 +1619,7 @@ WriteLiteral("\', null, function (data) {\r\n var
WriteLiteral(" <span>{Default Computers Container}</span>\r\n"); WriteLiteral(" <span>{Default Computers Container}</span>\r\n");
#line 577 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 616 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
else else
{ {
@@ -1518,7 +1632,7 @@ WriteLiteral(" <span>\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 581 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 620 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(string.Join(" > ", Model.DeviceProfile.OrganisationalUnit.Split(',').Select(s => s.Substring(3)).Reverse())); Write(string.Join(" > ", Model.DeviceProfile.OrganisationalUnit.Split(',').Select(s => s.Substring(3)).Reverse()));
@@ -1527,7 +1641,7 @@ WriteLiteral(" ");
WriteLiteral("\r\n </span>\r\n"); WriteLiteral("\r\n </span>\r\n");
#line 583 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 622 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
} }
@@ -1538,20 +1652,16 @@ WriteLiteral(" <div");
WriteLiteral(" style=\"margin-top: 8px;\""); WriteLiteral(" style=\"margin-top: 8px;\"");
WriteLiteral(">\r\n <label"); WriteLiteral(">\r\n");
WriteLiteral(" for=\"DeviceProfile_EnforceOrganisationalUnit\"");
WriteLiteral(">\r\n Enforce:\r\n </label>\r\n");
#line 589 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 625 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default #line default
#line hidden #line hidden
#line 589 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 625 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canConfig) if (canConfig)
{ {
@@ -1567,7 +1677,7 @@ WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" "); WriteLiteral(" ");
#line 591 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 627 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); Write(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
@@ -1575,26 +1685,6 @@ WriteLiteral(" ");
#line hidden #line hidden
WriteLiteral("/>\r\n"); WriteLiteral("/>\r\n");
#line 592 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
#line 592 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
#line 592 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default
#line hidden
WriteLiteral(" <script"); WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\""); WriteLiteral(" type=\"text/javascript\"");
@@ -1603,32 +1693,32 @@ WriteLiteral(@">
$(function () { $(function () {
$('#DeviceProfile_EnforceOrganisationalUnit').click(function () { $('#DeviceProfile_EnforceOrganisationalUnit').click(function () {
var $this = $(this); var $this = $(this);
var $ajaxLoading = $this.next('.ajaxLoading').show(); var $ajaxLoading = $this.nextAll('.ajaxLoading').show();
var data = { EnforceOrganisationalUnit: $this.is(':checked') }; var data = { EnforceOrganisationalUnit: $this.is(':checked') };
$.getJSON('"); $.getJSON('");
#line 599 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 634 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Url.Action(MVC.API.DeviceProfile.UpdateEnforceOrganisationalUnit(Model.DeviceProfile.Id))); Write(Url.Action(MVC.API.DeviceProfile.UpdateEnforceOrganisationalUnit(Model.DeviceProfile.Id)));
#line default #line default
#line hidden #line hidden
WriteLiteral(@"', data, function (response, result) { WriteLiteral(@"', data, function (response, result) {
if (result != 'success' || response != 'OK') { if (result != 'success' || response != 'OK') {
alert('Unable to change Enforce Organisation Unit:\n' + response); alert('Unable to change Enforce Organisation Unit:\n' + response);
$ajaxLoading.hide(); $ajaxLoading.hide();
} else { } else {
$ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow'); $ajaxLoading.hide().next('.ajaxOk').show().delay('fast').fadeOut('slow');
} }
});
}); });
}); });
});
</script> </script>
"); ");
#line 610 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 645 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
else else
{ {
@@ -1645,7 +1735,7 @@ WriteLiteral(" type=\"checkbox\"");
WriteLiteral(" "); WriteLiteral(" ");
#line 613 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 648 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty)); Write(Model.DeviceProfile.EnforceOrganisationalUnit ? new MvcHtmlString("checked=\"checked\" ") : new MvcHtmlString(string.Empty));
@@ -1654,16 +1744,33 @@ WriteLiteral(" ");
WriteLiteral(" disabled=\"disabled\" />\r\n"); WriteLiteral(" disabled=\"disabled\" />\r\n");
#line 614 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 649 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
#line default #line default
#line hidden #line hidden
WriteLiteral(" </div>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>\r\n"); WriteLiteral(" <label");
WriteLiteral(" for=\"DeviceProfile_EnforceOrganisationalUnit\"");
WriteLiteral(">\r\n Enforce Organisational Unit\r\n </lab" +
"el>\r\n");
WriteLiteral(" ");
#line 620 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 653 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
WriteLiteral("\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>\r" +
"\n");
#line 659 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canDelete) if (canDelete)
{ {
@@ -1720,7 +1827,7 @@ WriteLiteral(@">
"); ");
#line 656 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 695 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
@@ -1733,13 +1840,13 @@ WriteLiteral(" class=\"actionBar\"");
WriteLiteral(">\r\n"); WriteLiteral(">\r\n");
#line 658 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 697 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
#line default #line default
#line hidden #line hidden
#line 658 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 697 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (canDelete) if (canDelete)
{ {
@@ -1747,14 +1854,14 @@ WriteLiteral(">\r\n");
#line default #line default
#line hidden #line hidden
#line 660 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 699 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Html.ActionLinkButton("Delete", MVC.API.DeviceProfile.Delete(Model.DeviceProfile.Id, true), "buttonDelete")); Write(Html.ActionLinkButton("Delete", MVC.API.DeviceProfile.Delete(Model.DeviceProfile.Id, true), "buttonDelete"));
#line default #line default
#line hidden #line hidden
#line 660 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 699 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
@@ -1764,7 +1871,7 @@ WriteLiteral(">\r\n");
WriteLiteral(" "); WriteLiteral(" ");
#line 662 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 701 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (Authorization.Has(Claims.Device.Actions.Export)) if (Authorization.Has(Claims.Device.Actions.Export))
{ {
@@ -1772,14 +1879,14 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
#line 664 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 703 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Html.ActionLinkButton("Export Devices", MVC.API.DeviceProfile.ExportDevices(Model.DeviceProfile.Id))); Write(Html.ActionLinkButton("Export Devices", MVC.API.DeviceProfile.ExportDevices(Model.DeviceProfile.Id)));
#line default #line default
#line hidden #line hidden
#line 664 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 703 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
@@ -1789,7 +1896,7 @@ WriteLiteral(" ");
WriteLiteral(" "); WriteLiteral(" ");
#line 666 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 705 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
if (Authorization.Has(Claims.Device.Search)) if (Authorization.Has(Claims.Device.Search))
{ {
@@ -1797,14 +1904,14 @@ WriteLiteral(" ");
#line default #line default
#line hidden #line hidden
#line 668 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 707 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
Write(Html.ActionLinkButton("View Devices", MVC.Search.Query(Model.DeviceProfile.Id.ToString(), "DeviceProfile"))); Write(Html.ActionLinkButton("View Devices", MVC.Search.Query(Model.DeviceProfile.Id.ToString(), "DeviceProfile")));
#line default #line default
#line hidden #line hidden
#line 668 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml" #line 707 "..\..\Areas\Config\Views\DeviceProfile\Show.cshtml"
} }
+30
View File
@@ -4472,6 +4472,12 @@ namespace Disco.Web.Areas.API.Controllers
} }
[NonAction] [NonAction]
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public virtual System.Web.Mvc.ActionResult UpdateAssignedUserLocalAdmin()
{
return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateAssignedUserLocalAdmin);
}
[NonAction]
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public virtual System.Web.Mvc.ActionResult Delete() public virtual System.Web.Mvc.ActionResult Delete()
{ {
return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.Delete); return new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.Delete);
@@ -4522,6 +4528,7 @@ namespace Disco.Web.Areas.API.Controllers
public readonly string UpdateEnforceComputerNameConvention = "UpdateEnforceComputerNameConvention"; public readonly string UpdateEnforceComputerNameConvention = "UpdateEnforceComputerNameConvention";
public readonly string UpdateEnforceOrganisationalUnit = "UpdateEnforceOrganisationalUnit"; public readonly string UpdateEnforceOrganisationalUnit = "UpdateEnforceOrganisationalUnit";
public readonly string UpdateProvisionADAccount = "UpdateProvisionADAccount"; public readonly string UpdateProvisionADAccount = "UpdateProvisionADAccount";
public readonly string UpdateAssignedUserLocalAdmin = "UpdateAssignedUserLocalAdmin";
public readonly string OrganisationalUnits = "OrganisationalUnits"; public readonly string OrganisationalUnits = "OrganisationalUnits";
public readonly string Delete = "Delete"; public readonly string Delete = "Delete";
public readonly string Default = "Default"; public readonly string Default = "Default";
@@ -4544,6 +4551,7 @@ namespace Disco.Web.Areas.API.Controllers
public const string UpdateEnforceComputerNameConvention = "UpdateEnforceComputerNameConvention"; public const string UpdateEnforceComputerNameConvention = "UpdateEnforceComputerNameConvention";
public const string UpdateEnforceOrganisationalUnit = "UpdateEnforceOrganisationalUnit"; public const string UpdateEnforceOrganisationalUnit = "UpdateEnforceOrganisationalUnit";
public const string UpdateProvisionADAccount = "UpdateProvisionADAccount"; public const string UpdateProvisionADAccount = "UpdateProvisionADAccount";
public const string UpdateAssignedUserLocalAdmin = "UpdateAssignedUserLocalAdmin";
public const string OrganisationalUnits = "OrganisationalUnits"; public const string OrganisationalUnits = "OrganisationalUnits";
public const string Delete = "Delete"; public const string Delete = "Delete";
public const string Default = "Default"; public const string Default = "Default";
@@ -4673,6 +4681,16 @@ namespace Disco.Web.Areas.API.Controllers
public readonly string ProvisionADAccount = "ProvisionADAccount"; public readonly string ProvisionADAccount = "ProvisionADAccount";
public readonly string redirect = "redirect"; public readonly string redirect = "redirect";
} }
static readonly ActionParamsClass_UpdateAssignedUserLocalAdmin s_params_UpdateAssignedUserLocalAdmin = new ActionParamsClass_UpdateAssignedUserLocalAdmin();
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public ActionParamsClass_UpdateAssignedUserLocalAdmin UpdateAssignedUserLocalAdminParams { get { return s_params_UpdateAssignedUserLocalAdmin; } }
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public class ActionParamsClass_UpdateAssignedUserLocalAdmin
{
public readonly string id = "id";
public readonly string AssignedUserLocalAdmin = "AssignedUserLocalAdmin";
public readonly string redirect = "redirect";
}
static readonly ActionParamsClass_Delete s_params_Delete = new ActionParamsClass_Delete(); static readonly ActionParamsClass_Delete s_params_Delete = new ActionParamsClass_Delete();
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode] [GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public ActionParamsClass_Delete DeleteParams { get { return s_params_Delete; } } public ActionParamsClass_Delete DeleteParams { get { return s_params_Delete; } }
@@ -4872,6 +4890,18 @@ namespace Disco.Web.Areas.API.Controllers
return callInfo; return callInfo;
} }
partial void UpdateAssignedUserLocalAdminOverride(T4MVC_System_Web_Mvc_ActionResult callInfo, int id, string AssignedUserLocalAdmin, bool? redirect);
public override System.Web.Mvc.ActionResult UpdateAssignedUserLocalAdmin(int id, string AssignedUserLocalAdmin, bool? redirect)
{
var callInfo = new T4MVC_System_Web_Mvc_ActionResult(Area, Name, ActionNames.UpdateAssignedUserLocalAdmin);
ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "id", id);
ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "AssignedUserLocalAdmin", AssignedUserLocalAdmin);
ModelUnbinderHelpers.AddRouteValues(callInfo.RouteValueDictionary, "redirect", redirect);
UpdateAssignedUserLocalAdminOverride(callInfo, id, AssignedUserLocalAdmin, redirect);
return callInfo;
}
partial void OrganisationalUnitsOverride(T4MVC_System_Web_Mvc_ActionResult callInfo); partial void OrganisationalUnitsOverride(T4MVC_System_Web_Mvc_ActionResult callInfo);
public override System.Web.Mvc.ActionResult OrganisationalUnits() public override System.Web.Mvc.ActionResult OrganisationalUnits()