Add date-based managed group filtering

This commit is contained in:
Gary Sharp
2016-10-10 19:21:01 +11:00
parent 062769a7e3
commit 23975f8fc3
18 changed files with 2025 additions and 1610 deletions
@@ -1,5 +1,4 @@
using Disco.Models.Repository;
using Disco.Models.Services.Interop.ActiveDirectory;
using Disco.Services.Authorization;
using Disco.Services.Interop.ActiveDirectory;
using Disco.Services.Tasks;
@@ -17,8 +16,6 @@ namespace Disco.Web.Areas.API.Controllers
const string pDescription = "description";
const string pIcon = "icon";
const string pIconColour = "iconcolour";
const string pAssignedUsersLinkedGroup = "assigneduserslinkedgroup";
const string pAssignedUserDevicesLinkedGroup = "assigneduserdeviceslinkedgroup";
[DiscoAuthorize(Claims.Config.UserFlag.Configure)]
public virtual ActionResult Update(int id, string key, string value = null, Nullable<bool> redirect = null)
@@ -48,12 +45,6 @@ namespace Disco.Web.Areas.API.Controllers
case pIconColour:
UpdateIconColour(flag, value);
break;
case pAssignedUsersLinkedGroup:
UpdateAssignedUsersLinkedGroup(flag, value);
break;
case pAssignedUserDevicesLinkedGroup:
UpdateAssignedUserDevicesLinkedGroup(flag, value);
break;
default:
throw new Exception("Invalid Update Key");
}
@@ -132,7 +123,7 @@ namespace Disco.Web.Areas.API.Controllers
}
}
[DiscoAuthorize(Claims.Config.UserFlag.Configure)]
public virtual ActionResult UpdateAssignedUsersLinkedGroup(int id, string GroupId = null, bool redirect = false)
public virtual ActionResult UpdateAssignedUsersLinkedGroup(int id, string GroupId = null, DateTime? FilterBeginDate = null, bool redirect = false)
{
try
{
@@ -144,7 +135,7 @@ namespace Disco.Web.Areas.API.Controllers
throw new ArgumentException("Invalid User Flag Id", "id");
var syncTaskStatus = UpdateAssignedUsersLinkedGroup(UserFlag, GroupId);
var syncTaskStatus = UpdateAssignedUsersLinkedGroup(UserFlag, GroupId, FilterBeginDate);
if (redirect)
if (syncTaskStatus == null)
return RedirectToAction(MVC.Config.UserFlag.Index(UserFlag.Id));
@@ -165,7 +156,7 @@ namespace Disco.Web.Areas.API.Controllers
}
}
[DiscoAuthorize(Claims.Config.UserFlag.Configure)]
public virtual ActionResult UpdateAssignedUserDevicesLinkedGroup(int id, string GroupId = null, bool redirect = false)
public virtual ActionResult UpdateAssignedUserDevicesLinkedGroup(int id, string GroupId = null, DateTime? FilterBeginDate = null, bool redirect = false)
{
try
{
@@ -177,7 +168,7 @@ namespace Disco.Web.Areas.API.Controllers
throw new ArgumentException("Invalid User Flag Id", "id");
var syncTaskStatus = UpdateAssignedUserDevicesLinkedGroup(UserFlag, GroupId);
var syncTaskStatus = UpdateAssignedUserDevicesLinkedGroup(UserFlag, GroupId, FilterBeginDate);
if (redirect)
if (syncTaskStatus == null)
return RedirectToAction(MVC.Config.UserFlag.Index(UserFlag.Id));
@@ -256,9 +247,9 @@ namespace Disco.Web.Areas.API.Controllers
}
}
private ScheduledTaskStatus UpdateAssignedUsersLinkedGroup(UserFlag UserFlag, string AssignedUsersLinkedGroup)
private ScheduledTaskStatus UpdateAssignedUsersLinkedGroup(UserFlag UserFlag, string AssignedUsersLinkedGroup, DateTime? FilterBeginDate)
{
var configJson = ADManagedGroup.ValidConfigurationToJson(UserFlagUsersManagedGroup.GetKey(UserFlag), AssignedUsersLinkedGroup, null);
var configJson = ADManagedGroup.ValidConfigurationToJson(UserFlagUsersManagedGroup.GetKey(UserFlag), AssignedUsersLinkedGroup, FilterBeginDate);
if (UserFlag.UsersLinkedGroup != configJson)
{
@@ -278,9 +269,9 @@ namespace Disco.Web.Areas.API.Controllers
return null;
}
private ScheduledTaskStatus UpdateAssignedUserDevicesLinkedGroup(UserFlag UserFlag, string AssignedUserDevicesLinkedGroup)
private ScheduledTaskStatus UpdateAssignedUserDevicesLinkedGroup(UserFlag UserFlag, string AssignedUserDevicesLinkedGroup, DateTime? FilterBeginDate)
{
var configJson = ADManagedGroup.ValidConfigurationToJson(UserFlagUserDevicesManagedGroup.GetKey(UserFlag), AssignedUserDevicesLinkedGroup, null);
var configJson = ADManagedGroup.ValidConfigurationToJson(UserFlagUserDevicesManagedGroup.GetKey(UserFlag), AssignedUserDevicesLinkedGroup, FilterBeginDate);
if (UserFlag.UserDevicesLinkedGroup != configJson)
{
@@ -12,5 +12,6 @@ namespace Disco.Web.Areas.Config.Models.Shared
public string UpdateUrl { get; set; }
public ADManagedGroup ManagedGroup { get; set; }
public bool IncludeFilterBeginDate { get; set; }
}
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -22,7 +22,7 @@
<div class="code" title="@group.Id">
<i class="fa fa-fw fa-lg fa-link success"></i>@group.Domain.FriendlyDistinguishedNamePath(group.DistinguishedName)
</div>
<button class="button small Config_LinkedGroup_LinkButton" data-linkedgroupid="@(Model.ManagedGroup.Configuration.GroupId)" data-linkedroupdescription="@(Model.CategoryDescription)" data-linkedroupupdateurl="@(Model.UpdateUrl)">Change Link</button>
<button class="button small Config_LinkedGroup_LinkButton" data-linkedgroupid="@(Model.ManagedGroup.Configuration.GroupId)" data-linkedgroupfilterdateoption="@(Model.ManagedGroup.IncludeFilterBeginDate)" data-linkedgroupfilterdate="@(Model.ManagedGroup.Configuration.FilterBeginDate)" data-linkedroupdescription="@(Model.CategoryDescription)" data-linkedroupupdateurl="@(Model.UpdateUrl)">Change Link</button>
<a href="@(Url.Action(MVC.API.System.SyncActiveDirectoryManagedGroup(Model.ManagedGroup.Key, Context.Request.Path)))" class="button small">Synchronize Now</a>
}
else
@@ -30,12 +30,12 @@
<div class="code error">
<i class="fa fa-fw fa-lg fa-unlink error"></i>Group Not Found: <strong class="code">@Model.ManagedGroup.Configuration.GroupId</strong>
</div>
<button class="button small Config_LinkedGroup_LinkButton" data-linkedgroupid="@(Model.ManagedGroup.Configuration.GroupId)" data-linkedroupdescription="@(Model.CategoryDescription)" data-linkedroupupdateurl="@(Model.UpdateUrl)">Change Link</button>
<button class="button small Config_LinkedGroup_LinkButton" data-linkedgroupid="@(Model.ManagedGroup.Configuration.GroupId)" data-linkedgroupfilterdateoption="@(Model.ManagedGroup.IncludeFilterBeginDate)" data-linkedgroupfilterdate="@(Model.ManagedGroup.Configuration.FilterBeginDate)" data-linkedroupdescription="@(Model.CategoryDescription)" data-linkedroupupdateurl="@(Model.UpdateUrl)">Change Link</button>
}
}
else
{
<button class="button small Config_LinkedGroup_LinkButton" data-linkedgroupid="" data-linkedroupdescription="@(Model.CategoryDescription)" data-linkedroupupdateurl="@(Model.UpdateUrl)">Link Group</button>
<button class="button small Config_LinkedGroup_LinkButton" data-linkedgroupid="" data-linkedgroupfilterdateoption="@(Model.IncludeFilterBeginDate)" data-linkedroupdescription="@(Model.CategoryDescription)" data-linkedroupupdateurl="@(Model.UpdateUrl)">Link Group</button>
}
}
else
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34014
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.Shared
using System.Web.UI;
using System.Web.WebPages;
using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository;
using Disco.Services;
using Disco.Services.Authorization;
@@ -154,11 +153,33 @@ WriteLiteral(" data-linkedgroupid=\"");
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedgroupfilterdateoption=\"");
#line 25 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.ManagedGroup.IncludeFilterBeginDate);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedgroupfilterdate=\"");
#line 25 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.ManagedGroup.Configuration.FilterBeginDate);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedroupdescription=\"");
#line 25 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.CategoryDescription);
Write(Model.CategoryDescription);
#line default
@@ -169,7 +190,7 @@ WriteLiteral(" data-linkedroupupdateurl=\"");
#line 25 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.UpdateUrl);
Write(Model.UpdateUrl);
#line default
@@ -180,14 +201,14 @@ WriteLiteral(">Change Link</button>\r\n");
WriteLiteral(" <a");
WriteAttribute("href", Tuple.Create(" href=\"", 1114), Tuple.Create("\"", 1228)
WriteAttribute("href", Tuple.Create(" href=\"", 1275), Tuple.Create("\"", 1389)
#line 26 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
, Tuple.Create(Tuple.Create("", 1121), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.System.SyncActiveDirectoryManagedGroup(Model.ManagedGroup.Key, Context.Request.Path))
, Tuple.Create(Tuple.Create("", 1282), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.API.System.SyncActiveDirectoryManagedGroup(Model.ManagedGroup.Key, Context.Request.Path))
#line default
#line hidden
, 1121), false)
, 1282), false)
);
WriteLiteral(" class=\"button small\"");
@@ -241,11 +262,33 @@ WriteLiteral(" data-linkedgroupid=\"");
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedgroupfilterdateoption=\"");
#line 33 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.ManagedGroup.IncludeFilterBeginDate);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedgroupfilterdate=\"");
#line 33 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.ManagedGroup.Configuration.FilterBeginDate);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedroupdescription=\"");
#line 33 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.CategoryDescription);
Write(Model.CategoryDescription);
#line default
@@ -256,7 +299,7 @@ WriteLiteral(" data-linkedroupupdateurl=\"");
#line 33 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.UpdateUrl);
Write(Model.UpdateUrl);
#line default
@@ -281,11 +324,22 @@ WriteLiteral(" class=\"button small Config_LinkedGroup_LinkButton\"");
WriteLiteral(" data-linkedgroupid=\"\"");
WriteLiteral(" data-linkedgroupfilterdateoption=\"");
#line 38 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.IncludeFilterBeginDate);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(" data-linkedroupdescription=\"");
#line 38 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.CategoryDescription);
Write(Model.CategoryDescription);
#line default
@@ -296,7 +350,7 @@ WriteLiteral(" data-linkedroupupdateurl=\"");
#line 38 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
Write(Model.UpdateUrl);
Write(Model.UpdateUrl);
#line default
@@ -323,14 +377,14 @@ WriteLiteral(" <div");
WriteLiteral(" class=\"code\"");
WriteAttribute("title", Tuple.Create(" title=\"", 2272), Tuple.Create("\"", 2289)
WriteAttribute("title", Tuple.Create(" title=\"", 2661), Tuple.Create("\"", 2678)
#line 47 "..\..\Areas\Config\Views\Shared\LinkedGroupInstance.cshtml"
, Tuple.Create(Tuple.Create("", 2280), Tuple.Create<System.Object, System.Int32>(group.Id
, Tuple.Create(Tuple.Create("", 2669), Tuple.Create<System.Object, System.Int32>(group.Id
#line default
#line hidden
, 2280), false)
, 2669), false)
);
WriteLiteral(">\r\n <i");
@@ -1,25 +1,45 @@
<div id="Config_LinkedGroup_Dialog" title="Linked Group" class="dialog">
@{
Html.BundleDeferred("~/ClientScripts/Modules/jQueryUI-TimePicker");
}
<div id="Config_LinkedGroup_Dialog" title="Linked Group" class="dialog">
<h3 id="Config_LinkedGroup_Title"></h3>
<form action="#" method="post">
<table class="input">
<tbody>
<tr>
<th>
<label for="Config_LinkedGroup_Id">Linked Group:</label>
</th>
<td>
<input id="Config_LinkedGroup_Id" type="text" name="GroupId" />
</td>
</tr>
<tr>
<th>
<label for="Config_LinkedGroup_FilterDate">Filter Date: </label>
</th>
<td>
<input id="Config_LinkedGroup_FilterDate" type="text" name="FilterBeginDate" placeholder="No Filter" autocomplete="off" />
</td>
</tr>
</tbody>
</table>
</form>
<div class="info-box error">
<p class="fa-p">
<i class="fa fa-exclamation-circle"></i><strong>Warning:</strong> This group will be managed by Disco ICT.<br />
Any <strong>existing members will be removed from the group</strong>, and it will be automatically synchronized with related members.
</p>
</div>
<form action="#" method="post">
<div class="input">
<label for="Config_LinkedGroup_Id">Linked Group: </label>
<input id="Config_LinkedGroup_Id" type="text" name="GroupId" />
</div>
</form>
</div>
<script>
$(function () {
var dialog;
var dialogGroupId;
var dialogFilterDate;
var dialogTitle;
function showDialog(groupId, updateUrl, title) {
function showDialog(groupId, filterDateOption, filterDateValue, updateUrl, title) {
if (dialog == null) {
dialog = $('#Config_LinkedGroup_Dialog').dialog({
width: 450,
@@ -28,6 +48,14 @@
autoOpen: false
});
dialogFilterDate = $('#Config_LinkedGroup_FilterDate');
dialogFilterDate.datetimepicker({
ampm: true,
changeYear: true,
changeMonth: true,
dateFormat: 'yy/mm/dd'
});
dialogGroupId = $('#Config_LinkedGroup_Id');
dialogGroupId.focus(function () { $(this).select(); });
dialogGroupId.autocomplete({
@@ -68,6 +96,18 @@
};
dialogGroupId.val(groupId);
if (!!filterDateOption) {
if (!!filterDateValue) {
dialogFilterDate.datetimepicker('setDate', moment(filterDateValue).toDate());
} else {
dialogFilterDate.val('');
}
dialogFilterDate.closest('tr').show();
} else {
dialogFilterDate.closest('tr').hide();
}
dialogTitle.text(title);
dialog.dialog('option', 'buttons', dialogButtons);
dialog.dialog('option', 'title', 'Linked Group: ' + title);
@@ -78,10 +118,12 @@
$this = $(this);
var configuredGroupId = $this.attr('data-linkedgroupid');
var configuredFilterBeginDate = $this.attr('data-linkedgroupfilterdate');
var filterDateOption = $this.attr('data-linkedgroupfilterdateoption') == 'True';
var description = $this.attr('data-linkedroupdescription');
var updateUrl = $this.attr('data-linkedroupupdateurl');
showDialog(configuredGroupId, updateUrl, description);
showDialog(configuredGroupId, filterDateOption, configuredFilterBeginDate, updateUrl, description);
return false;
});
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34014
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.Shared
using System.Web.UI;
using System.Web.WebPages;
using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository;
using Disco.Services;
using Disco.Services.Authorization;
@@ -44,7 +43,15 @@ namespace Disco.Web.Areas.Config.Views.Shared
}
public override void Execute()
{
WriteLiteral("<div");
#line 1 "..\..\Areas\Config\Views\Shared\LinkedGroupShared.cshtml"
Html.BundleDeferred("~/ClientScripts/Modules/jQueryUI-TimePicker");
#line default
#line hidden
WriteLiteral("\r\n<div");
WriteLiteral(" id=\"Config_LinkedGroup_Dialog\"");
@@ -56,7 +63,50 @@ WriteLiteral(">\r\n <h3");
WriteLiteral(" id=\"Config_LinkedGroup_Title\"");
WriteLiteral("></h3>\r\n <div");
WriteLiteral("></h3>\r\n <form");
WriteLiteral(" action=\"#\"");
WriteLiteral(" method=\"post\"");
WriteLiteral(">\r\n <table");
WriteLiteral(" class=\"input\"");
WriteLiteral(">\r\n <tbody>\r\n <tr>\r\n <th>\r\n " +
" <label");
WriteLiteral(" for=\"Config_LinkedGroup_Id\"");
WriteLiteral(">Linked Group:</label>\r\n </th>\r\n <td>\r\n " +
" <input");
WriteLiteral(" id=\"Config_LinkedGroup_Id\"");
WriteLiteral(" type=\"text\"");
WriteLiteral(" name=\"GroupId\"");
WriteLiteral(" />\r\n </td>\r\n </tr>\r\n <tr>\r\n " +
" <th>\r\n <label");
WriteLiteral(" for=\"Config_LinkedGroup_FilterDate\"");
WriteLiteral(">Filter Date: </label>\r\n </th>\r\n <td>\r\n " +
" <input");
WriteLiteral(" id=\"Config_LinkedGroup_FilterDate\"");
WriteLiteral(" type=\"text\"");
WriteLiteral(" name=\"FilterBeginDate\"");
WriteLiteral(" placeholder=\"No Filter\"");
WriteLiteral(" autocomplete=\"off\"");
WriteLiteral(" />\r\n </td>\r\n </tr>\r\n </tbody>\r\n " +
" </table>\r\n </form>\r\n <div");
WriteLiteral(" class=\"info-box error\"");
@@ -72,39 +122,15 @@ WriteLiteral(@"></i><strong>Warning:</strong> This group will be managed by Disc
Any <strong>existing members will be removed from the group</strong>, and it will be automatically synchronized with related members.
</p>
</div>
<form");
WriteLiteral(" action=\"#\"");
WriteLiteral(" method=\"post\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"input\"");
WriteLiteral(">\r\n <label");
WriteLiteral(" for=\"Config_LinkedGroup_Id\"");
WriteLiteral(">Linked Group: </label>\r\n <input");
WriteLiteral(" id=\"Config_LinkedGroup_Id\"");
WriteLiteral(" type=\"text\"");
WriteLiteral(" name=\"GroupId\"");
WriteLiteral(@" />
</div>
</form>
</div>
<script>
$(function () {
var dialog;
var dialogGroupId;
var dialogFilterDate;
var dialogTitle;
function showDialog(groupId, updateUrl, title) {
function showDialog(groupId, filterDateOption, filterDateValue, updateUrl, title) {
if (dialog == null) {
dialog = $('#Config_LinkedGroup_Dialog').dialog({
width: 450,
@@ -113,13 +139,21 @@ WriteLiteral(@" />
autoOpen: false
});
dialogFilterDate = $('#Config_LinkedGroup_FilterDate');
dialogFilterDate.datetimepicker({
ampm: true,
changeYear: true,
changeMonth: true,
dateFormat: 'yy/mm/dd'
});
dialogGroupId = $('#Config_LinkedGroup_Id');
dialogGroupId.focus(function () { $(this).select(); });
dialogGroupId.autocomplete({
source: '");
#line 34 "..\..\Areas\Config\Views\Shared\LinkedGroupShared.cshtml"
#line 62 "..\..\Areas\Config\Views\Shared\LinkedGroupShared.cshtml"
Write(Url.Action(MVC.API.System.SearchGroupSubjects()));
@@ -144,15 +178,23 @@ WriteLiteral("\',\r\n minLength: 2,\r\n se
" dialogGroupId.closest(\'form\').attr(\'action\', updateUrl).submit();\r\n " +
" }\r\n dialogButtons[\'Cancel\'] = function () {\r\n $(t" +
"his).dialog(\'close\');\r\n };\r\n\r\n dialogGroupId.val(groupId);" +
"\r\n dialogTitle.text(title);\r\n dialog.dialog(\'option\', \'but" +
"tons\', dialogButtons);\r\n dialog.dialog(\'option\', \'title\', \'Linked Gro" +
"up: \' + title);\r\n dialog.dialog(\'open\');\r\n }\r\n\r\n $(docu" +
"ment).on(\'click\', \'.Config_LinkedGroup_LinkButton\', function () {\r\n $" +
"this = $(this);\r\n\r\n var configuredGroupId = $this.attr(\'data-linkedgr" +
"oupid\');\r\n var description = $this.attr(\'data-linkedroupdescription\')" +
";\r\n var updateUrl = $this.attr(\'data-linkedroupupdateurl\');\r\n\r\n " +
" showDialog(configuredGroupId, updateUrl, description);\r\n\r\n retu" +
"rn false;\r\n });\r\n });\r\n</script>\r\n");
"\r\n\r\n if (!!filterDateOption) {\r\n if (!!filterDateValue" +
") {\r\n dialogFilterDate.datetimepicker(\'setDate\', moment(filte" +
"rDateValue).toDate());\r\n } else {\r\n dialogFilt" +
"erDate.val(\'\');\r\n }\r\n dialogFilterDate.closest(\'tr" +
"\').show();\r\n } else {\r\n dialogFilterDate.closest(\'tr\')" +
".hide();\r\n }\r\n\r\n dialogTitle.text(title);\r\n dia" +
"log.dialog(\'option\', \'buttons\', dialogButtons);\r\n dialog.dialog(\'opti" +
"on\', \'title\', \'Linked Group: \' + title);\r\n dialog.dialog(\'open\');\r\n " +
" }\r\n\r\n $(document).on(\'click\', \'.Config_LinkedGroup_LinkButton\', fun" +
"ction () {\r\n $this = $(this);\r\n\r\n var configuredGroupId = " +
"$this.attr(\'data-linkedgroupid\');\r\n var configuredFilterBeginDate = $" +
"this.attr(\'data-linkedgroupfilterdate\');\r\n var filterDateOption = $th" +
"is.attr(\'data-linkedgroupfilterdateoption\') == \'True\';\r\n var descript" +
"ion = $this.attr(\'data-linkedroupdescription\');\r\n var updateUrl = $th" +
"is.attr(\'data-linkedroupupdateurl\');\r\n\r\n showDialog(configuredGroupId" +
", filterDateOption, configuredFilterBeginDate, updateUrl, description);\r\n\r\n " +
" return false;\r\n });\r\n });\r\n</script>\r\n");
}
}
@@ -21,57 +21,62 @@
<div id="Config_UserFlags_Show" class="form@(hideAdvanced ? " Config_HideAdvanced" : null)" style="width: 550px">
<table>
<tr>
<th style="width: 150px">Id:
<th style="width: 150px">
Id:
</th>
<td>
@Html.DisplayFor(model => model.UserFlag.Id)
</td>
</tr>
<tr>
<th>Name:
<th>
Name:
</th>
<td>@if (canConfig)
{@Html.EditorFor(model => model.UserFlag.Name)
@AjaxHelpers.AjaxSave()
@AjaxHelpers.AjaxLoader()
<script type="text/javascript">
$(function () {
document.DiscoFunctions.PropertyChangeHelper(
$('#UserFlag_Name'),
'Invalid Name',
'@(Url.Action(MVC.API.UserFlag.UpdateName(Model.UserFlag.Id)))',
'FlagName'
);
});
</script>
<td>
@if (canConfig)
{@Html.EditorFor(model => model.UserFlag.Name)
@AjaxHelpers.AjaxSave()
@AjaxHelpers.AjaxLoader()
<script type="text/javascript">
$(function () {
document.DiscoFunctions.PropertyChangeHelper(
$('#UserFlag_Name'),
'Invalid Name',
'@(Url.Action(MVC.API.UserFlag.UpdateName(Model.UserFlag.Id)))',
'FlagName'
);
});
</script>
}
else
{
@Model.UserFlag.Name
@Model.UserFlag.Name
}
</td>
</tr>
<tr>
<th>Description:
<th>
Description:
</th>
<td>@if (canConfig)
<td>
@if (canConfig)
{@Html.EditorFor(model => model.UserFlag.Description)
@AjaxHelpers.AjaxSave()
@AjaxHelpers.AjaxLoader()
<script type="text/javascript">
$(function () {
document.DiscoFunctions.PropertyChangeHelper(
$('#UserFlag_Description'),
'Invalid Description',
'@(Url.Action(MVC.API.UserFlag.UpdateDescription(Model.UserFlag.Id)))',
'Description'
);
});
</script>
@AjaxHelpers.AjaxSave()
@AjaxHelpers.AjaxLoader()
<script type="text/javascript">
$(function () {
document.DiscoFunctions.PropertyChangeHelper(
$('#UserFlag_Description'),
'Invalid Description',
'@(Url.Action(MVC.API.UserFlag.UpdateDescription(Model.UserFlag.Id)))',
'Description'
);
});
</script>
}
else
{
<pre>
<pre>
@if (string.IsNullOrEmpty(Model.UserFlag.Description))
{
<text>&lt;None&gt;</text>
@@ -85,7 +90,8 @@
</td>
</tr>
<tr>
<th>Statistics:
<th>
Statistics:
</th>
<td>
<div><strong>@Model.CurrentAssignmentCount user@(Model.CurrentAssignmentCount != 1 ? "s" : null) currently assigned</strong></div>
@@ -93,7 +99,8 @@
</td>
</tr>
<tr>
<th>Icon:
<th>
Icon:
</th>
<td>
<i id="Config_UserFlags_Icon" data-icon="@(Model.UserFlag.Icon)" data-colour="@(Model.UserFlag.IconColour)" class="fa fa-@(Model.UserFlag.Icon) fa-4x d-@(Model.UserFlag.IconColour)"></i>
@@ -216,7 +223,8 @@
</tr>
}
<tr class="Config_HideAdvanced_Item">
<th>Linked Groups:
<th>
Linked Groups:
</th>
<td>
<div>
@@ -226,6 +234,7 @@
CategoryDescription = UserFlagUsersManagedGroup.GetCategoryDescription(Model.UserFlag),
Description = UserFlagUsersManagedGroup.GetDescription(Model.UserFlag),
ManagedGroup = Model.UsersLinkedGroup,
IncludeFilterBeginDate = true,
UpdateUrl = Url.Action(MVC.API.UserFlag.UpdateAssignedUsersLinkedGroup(Model.UserFlag.Id, redirect: true))
})
@Html.Partial(MVC.Config.Shared.Views.LinkedGroupInstance, new LinkedGroupModel()
@@ -234,10 +243,11 @@
CategoryDescription = UserFlagUserDevicesManagedGroup.GetCategoryDescription(Model.UserFlag),
Description = UserFlagUserDevicesManagedGroup.GetDescription(Model.UserFlag),
ManagedGroup = Model.UserDevicesLinkedGroup,
IncludeFilterBeginDate = true,
UpdateUrl = Url.Action(MVC.API.UserFlag.UpdateAssignedUserDevicesLinkedGroup(Model.UserFlag.Id, redirect: true))
})
@if (canConfig)
{
{
@Html.Partial(MVC.Config.Shared.Views.LinkedGroupShared)
}
</div>
@@ -266,7 +276,7 @@
<h5><i class="fa fa-repeat fa-fw"></i>Override</h5>
<p>
Specified users will have this flag <strong>added</strong>. Specified users which already have this flag will be skipped.
Users who already have this flag but are not specified will have the flag <strong>removed</strong>.
Users who already have this flag but are not specified will have the flag <strong>removed</strong>.
</p>
</div>
</div>
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34014
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -27,7 +27,6 @@ namespace Disco.Web.Areas.Config.Views.UserFlag
using System.Web.UI;
using System.Web.WebPages;
using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository;
using Disco.Services;
using Disco.Services.Authorization;
@@ -104,184 +103,199 @@ WriteLiteral(">\r\n <table>\r\n <tr>\r\n <th");
WriteLiteral(" style=\"width: 150px\"");
WriteLiteral(">Id:\r\n </th>\r\n <td>\r\n");
WriteLiteral(">\r\n Id:\r\n </th>\r\n <td>\r\n");
WriteLiteral(" ");
#line 27 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 28 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.DisplayFor(model => model.UserFlag.Id));
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n <th>Name:\r\n " +
" </th>\r\n <td>");
WriteLiteral("\r\n </td>\r\n </tr>\r\n <tr>\r\n <th>\r\n " +
" Name:\r\n </th>\r\n <td>\r\n");
#line 33 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 36 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 36 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canConfig)
{
{
#line default
#line hidden
#line 34 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.EditorFor(model => model.UserFlag.Name));
#line 37 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.EditorFor(model => model.UserFlag.Name));
#line default
#line hidden
#line 34 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 37 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 35 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxSave());
#line 38 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxSave());
#line default
#line hidden
#line 35 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 38 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 36 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line 39 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
#line 36 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 39 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
WriteLiteral(" <script");
WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(">\r\n $(function () {\r\n document.DiscoFun" +
"ctions.PropertyChangeHelper(\r\n $(\'#UserFlag_Name\'),\r\n" +
" \'Invalid Name\',\r\n \'");
WriteLiteral(">\r\n $(function () {\r\n document." +
"DiscoFunctions.PropertyChangeHelper(\r\n $(\'#UserFl" +
"ag_Name\'),\r\n \'Invalid Name\',\r\n " +
" \'");
#line 42 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.UpdateName(Model.UserFlag.Id)));
#line 45 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.UpdateName(Model.UserFlag.Id)));
#line default
#line hidden
WriteLiteral("\',\r\n \'FlagName\'\r\n );\r\n " +
" });\r\n </script>\r\n");
WriteLiteral("\',\r\n \'FlagName\'\r\n );\r\n " +
" });\r\n </script>\r\n");
#line 47 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 50 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
else
{
#line default
#line hidden
#line 53 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.UserFlag.Name);
#line default
#line hidden
#line 53 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n <th>\r\n " +
" Description:\r\n </th>\r\n <td>\r\n");
#line 62 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 50 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.UserFlag.Name);
#line default
#line hidden
#line 50 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n <th>Description:\r\n " +
" </th>\r\n <td>");
#line 57 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 62 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canConfig)
{
#line default
#line hidden
#line 58 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 63 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.EditorFor(model => model.UserFlag.Description));
#line default
#line hidden
#line 58 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 63 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 59 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxSave());
#line 64 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxSave());
#line default
#line hidden
#line 59 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 64 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 60 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line 65 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(AjaxHelpers.AjaxLoader());
#line default
#line hidden
#line 60 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 65 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
WriteLiteral(" <script");
WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(">\r\n $(function () {\r\n document.DiscoFun" +
"ctions.PropertyChangeHelper(\r\n $(\'#UserFlag_Descripti" +
"on\'),\r\n \'Invalid Description\',\r\n " +
" \'");
WriteLiteral(@">
$(function () {
document.DiscoFunctions.PropertyChangeHelper(
$('#UserFlag_Description'),
'Invalid Description',
'");
#line 66 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.UpdateDescription(Model.UserFlag.Id)));
#line 71 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.UpdateDescription(Model.UserFlag.Id)));
#line default
#line hidden
WriteLiteral("\',\r\n \'Description\'\r\n );\r\n " +
" });\r\n </script>\r\n");
WriteLiteral("\',\r\n \'Description\'\r\n );" +
"\r\n });\r\n </script>\r\n");
#line 71 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 76 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
else
{
@@ -289,16 +303,16 @@ WriteLiteral("\',\r\n \'Description\'\r\n
#line default
#line hidden
WriteLiteral(" <pre>\r\n");
WriteLiteral(" <pre>\r\n");
#line 75 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 80 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 75 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 80 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (string.IsNullOrEmpty(Model.UserFlag.Description))
{
@@ -312,7 +326,7 @@ WriteLiteral("&lt;None&gt;");
WriteLiteral("\r\n");
#line 78 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 83 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
else
{
@@ -321,14 +335,14 @@ WriteLiteral("\r\n");
#line default
#line hidden
#line 81 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 86 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.UserFlag.Description.ToHtmlComment());
#line default
#line hidden
#line 81 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 86 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -338,17 +352,18 @@ WriteLiteral("\r\n");
WriteLiteral(" </pre>\r\n");
#line 84 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 89 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
#line default
#line hidden
WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n <th>Statistics:\r\n " +
" </th>\r\n <td>\r\n <div><strong>");
WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n <th>\r\n " +
" Statistics:\r\n </th>\r\n <td>\r\n <div><strong>" +
"");
#line 91 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 97 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.CurrentAssignmentCount);
@@ -357,7 +372,7 @@ WriteLiteral(" </td>\r\n </tr>\r\n <tr>\r\n
WriteLiteral(" user");
#line 91 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 97 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.CurrentAssignmentCount != 1 ? "s" : null);
@@ -366,7 +381,7 @@ WriteLiteral(" user");
WriteLiteral(" currently assigned</strong></div>\r\n <div>");
#line 92 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 98 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.TotalAssignmentCount);
@@ -375,21 +390,21 @@ WriteLiteral(" currently assigned</strong></div>\r\n <div>");
WriteLiteral(" total user historical assignment");
#line 92 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 98 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.TotalAssignmentCount != 1 ? "s" : null);
#line default
#line hidden
WriteLiteral("</div>\r\n </td>\r\n </tr>\r\n <tr>\r\n <th>Icon:\r\n " +
" </th>\r\n <td>\r\n <i");
WriteLiteral("</div>\r\n </td>\r\n </tr>\r\n <tr>\r\n <th>\r\n " +
" Icon:\r\n </th>\r\n <td>\r\n <i");
WriteLiteral(" id=\"Config_UserFlags_Icon\"");
WriteLiteral(" data-icon=\"");
#line 99 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 106 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.UserFlag.Icon);
@@ -400,7 +415,7 @@ WriteLiteral("\"");
WriteLiteral(" data-colour=\"");
#line 99 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 106 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.UserFlag.IconColour);
@@ -408,37 +423,37 @@ WriteLiteral(" data-colour=\"");
#line hidden
WriteLiteral("\"");
WriteAttribute("class", Tuple.Create(" class=\"", 4042), Tuple.Create("\"", 4115)
, Tuple.Create(Tuple.Create("", 4050), Tuple.Create("fa", 4050), true)
, Tuple.Create(Tuple.Create(" ", 4052), Tuple.Create("fa-", 4053), true)
WriteAttribute("class", Tuple.Create(" class=\"", 4268), Tuple.Create("\"", 4341)
, Tuple.Create(Tuple.Create("", 4276), Tuple.Create("fa", 4276), true)
, Tuple.Create(Tuple.Create(" ", 4278), Tuple.Create("fa-", 4279), true)
#line 99 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4056), Tuple.Create<System.Object, System.Int32>(Model.UserFlag.Icon
#line 106 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4282), Tuple.Create<System.Object, System.Int32>(Model.UserFlag.Icon
#line default
#line hidden
, 4056), false)
, Tuple.Create(Tuple.Create(" ", 4078), Tuple.Create("fa-4x", 4079), true)
, Tuple.Create(Tuple.Create(" ", 4084), Tuple.Create("d-", 4085), true)
, 4282), false)
, Tuple.Create(Tuple.Create(" ", 4304), Tuple.Create("fa-4x", 4305), true)
, Tuple.Create(Tuple.Create(" ", 4310), Tuple.Create("d-", 4311), true)
#line 99 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4087), Tuple.Create<System.Object, System.Int32>(Model.UserFlag.IconColour
#line 106 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4313), Tuple.Create<System.Object, System.Int32>(Model.UserFlag.IconColour
#line default
#line hidden
, 4087), false)
, 4313), false)
);
WriteLiteral("></i>\r\n");
#line 100 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 107 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 100 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 107 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canConfig)
{
@@ -468,13 +483,13 @@ WriteLiteral(" class=\"icons\"");
WriteLiteral(">\r\n");
#line 107 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 114 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 107 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 114 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
foreach (var icon in Model.Icons)
{
@@ -486,7 +501,7 @@ WriteLiteral(" <i");
WriteLiteral(" data-icon=\"");
#line 109 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 116 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(icon.Key);
@@ -494,32 +509,32 @@ WriteLiteral(" data-icon=\"");
#line hidden
WriteLiteral("\"");
WriteAttribute("class", Tuple.Create(" class=\"", 4680), Tuple.Create("\"", 4705)
, Tuple.Create(Tuple.Create("", 4688), Tuple.Create("fa", 4688), true)
, Tuple.Create(Tuple.Create(" ", 4690), Tuple.Create("fa-", 4691), true)
WriteAttribute("class", Tuple.Create(" class=\"", 4906), Tuple.Create("\"", 4931)
, Tuple.Create(Tuple.Create("", 4914), Tuple.Create("fa", 4914), true)
, Tuple.Create(Tuple.Create(" ", 4916), Tuple.Create("fa-", 4917), true)
#line 109 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4694), Tuple.Create<System.Object, System.Int32>(icon.Key
#line 116 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4920), Tuple.Create<System.Object, System.Int32>(icon.Key
#line default
#line hidden
, 4694), false)
, 4920), false)
);
WriteAttribute("title", Tuple.Create(" title=\"", 4706), Tuple.Create("\"", 4725)
WriteAttribute("title", Tuple.Create(" title=\"", 4932), Tuple.Create("\"", 4951)
#line 109 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4714), Tuple.Create<System.Object, System.Int32>(icon.Value
#line 116 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 4940), Tuple.Create<System.Object, System.Int32>(icon.Value
#line default
#line hidden
, 4714), false)
, 4940), false)
);
WriteLiteral("></i>\r\n");
#line 110 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 117 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -532,13 +547,13 @@ WriteLiteral(" class=\"colours\"");
WriteLiteral(">\r\n");
#line 113 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 120 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 113 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 120 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
foreach (var colour in Model.ThemeColours)
{
@@ -550,7 +565,7 @@ WriteLiteral(" <i");
WriteLiteral(" data-colour=\"");
#line 115 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 122 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(colour.Key);
@@ -558,33 +573,33 @@ WriteLiteral(" data-colour=\"");
#line hidden
WriteLiteral("\"");
WriteAttribute("class", Tuple.Create(" class=\"", 5057), Tuple.Create("\"", 5093)
, Tuple.Create(Tuple.Create("", 5065), Tuple.Create("fa", 5065), true)
, Tuple.Create(Tuple.Create(" ", 5067), Tuple.Create("fa-square", 5068), true)
, Tuple.Create(Tuple.Create(" ", 5077), Tuple.Create("d-", 5078), true)
WriteAttribute("class", Tuple.Create(" class=\"", 5283), Tuple.Create("\"", 5319)
, Tuple.Create(Tuple.Create("", 5291), Tuple.Create("fa", 5291), true)
, Tuple.Create(Tuple.Create(" ", 5293), Tuple.Create("fa-square", 5294), true)
, Tuple.Create(Tuple.Create(" ", 5303), Tuple.Create("d-", 5304), true)
#line 115 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 5080), Tuple.Create<System.Object, System.Int32>(colour.Key
#line 122 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 5306), Tuple.Create<System.Object, System.Int32>(colour.Key
#line default
#line hidden
, 5080), false)
, 5306), false)
);
WriteAttribute("title", Tuple.Create(" title=\"", 5094), Tuple.Create("\"", 5115)
WriteAttribute("title", Tuple.Create(" title=\"", 5320), Tuple.Create("\"", 5341)
#line 115 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 5102), Tuple.Create<System.Object, System.Int32>(colour.Value
#line 122 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
, Tuple.Create(Tuple.Create("", 5328), Tuple.Create<System.Object, System.Int32>(colour.Value
#line default
#line hidden
, 5102), false)
, 5328), false)
);
WriteLiteral("></i>\r\n");
#line 116 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 123 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -631,7 +646,7 @@ WriteLiteral(" </div>\r\n
"save() {\r\n var url = \'");
#line 176 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 183 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.UpdateIconAndColour(id: Model.UserFlag.Id, redirect: true)));
@@ -662,7 +677,7 @@ WriteLiteral(@"',
");
#line 198 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 205 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -671,13 +686,13 @@ WriteLiteral(@"',
WriteLiteral(" </td>\r\n </tr>\r\n");
#line 201 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 208 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 201 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 208 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (hideAdvanced)
{
@@ -711,7 +726,7 @@ WriteLiteral(@">Show Advanced Options</button>
");
#line 217 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 224 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -721,19 +736,20 @@ WriteLiteral(" <tr");
WriteLiteral(" class=\"Config_HideAdvanced_Item\"");
WriteLiteral(">\r\n <th>Linked Groups:\r\n </th>\r\n <td>\r\n " +
" <div>\r\n");
WriteLiteral(">\r\n <th>\r\n Linked Groups:\r\n </th>\r\n " +
" <td>\r\n <div>\r\n");
WriteLiteral(" ");
#line 223 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 231 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.Partial(MVC.Config.Shared.Views.LinkedGroupInstance, new LinkedGroupModel()
{
CanConfigure = canConfig,
CategoryDescription = UserFlagUsersManagedGroup.GetCategoryDescription(Model.UserFlag),
Description = UserFlagUsersManagedGroup.GetDescription(Model.UserFlag),
ManagedGroup = Model.UsersLinkedGroup,
IncludeFilterBeginDate = true,
UpdateUrl = Url.Action(MVC.API.UserFlag.UpdateAssignedUsersLinkedGroup(Model.UserFlag.Id, redirect: true))
}));
@@ -745,13 +761,14 @@ WriteLiteral("\r\n");
WriteLiteral(" ");
#line 231 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 240 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.Partial(MVC.Config.Shared.Views.LinkedGroupInstance, new LinkedGroupModel()
{
CanConfigure = canConfig,
CategoryDescription = UserFlagUserDevicesManagedGroup.GetCategoryDescription(Model.UserFlag),
Description = UserFlagUserDevicesManagedGroup.GetDescription(Model.UserFlag),
ManagedGroup = Model.UserDevicesLinkedGroup,
IncludeFilterBeginDate = true,
UpdateUrl = Url.Action(MVC.API.UserFlag.UpdateAssignedUserDevicesLinkedGroup(Model.UserFlag.Id, redirect: true))
}));
@@ -761,28 +778,28 @@ WriteLiteral(" ");
WriteLiteral("\r\n");
#line 239 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 249 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 239 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 249 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canConfig)
{
{
#line default
#line hidden
#line 241 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 251 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.Partial(MVC.Config.Shared.Views.LinkedGroupShared));
#line default
#line hidden
#line 241 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 251 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -792,7 +809,7 @@ WriteLiteral("\r\n");
WriteLiteral(" </div>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>\r\n");
#line 248 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 258 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canBulkAssignment || canDelete || canShowUsers)
{
@@ -806,13 +823,13 @@ WriteLiteral(" class=\"actionBar\"");
WriteLiteral(">\r\n");
#line 251 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 261 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 251 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 261 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canBulkAssignment)
{
@@ -862,7 +879,7 @@ WriteLiteral(" class=\"fa fa-repeat fa-fw\"");
WriteLiteral(@"></i>Override</h5>
<p>
Specified users will have this flag <strong>added</strong>. Specified users which already have this flag will be skipped.
Users who already have this flag but are not specified will have the flag <strong>removed</strong>.
Users who already have this flag but are not specified will have the flag <strong>removed</strong>.
</p>
</div>
</div>
@@ -898,7 +915,7 @@ WriteLiteral(">\r\n user6<br />\r\n
WriteLiteral(" ");
#line 284 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 294 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(ActiveDirectory.Context.PrimaryDomain.NetBiosName);
@@ -911,7 +928,7 @@ WriteLiteral(" class=\"code\"");
WriteLiteral(">user6,smi0099,");
#line 286 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 296 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(ActiveDirectory.Context.PrimaryDomain.NetBiosName);
@@ -924,7 +941,7 @@ WriteLiteral(" class=\"code\"");
WriteLiteral(">user6;smi0099;");
#line 287 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 297 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(ActiveDirectory.Context.PrimaryDomain.NetBiosName);
@@ -999,7 +1016,7 @@ WriteLiteral(" <script>\r\n $(function () {\r\n
"\').attr(\'action\', \'");
#line 354 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 364 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.BulkAssignUsers(Model.UserFlag.Id, true)));
@@ -1009,7 +1026,7 @@ WriteLiteral("\');\r\n\r\n assignDialog.addClass(\'lo
" $.getJSON(\'");
#line 357 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 367 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.AssignedUsers(Model.UserFlag.Id)));
@@ -1035,7 +1052,7 @@ WriteLiteral(@"', function (response, result) {
assignUserIds.closest('form').attr('action', '");
#line 374 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 384 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Url.Action(MVC.API.UserFlag.BulkAssignUsers(Model.UserFlag.Id, false)));
@@ -1056,7 +1073,7 @@ WriteLiteral(@"');
");
#line 386 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 396 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -1065,13 +1082,13 @@ WriteLiteral(@"');
WriteLiteral("\r\n\r\n\r\n");
#line 390 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 400 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 390 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 400 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canDelete)
{
@@ -1079,14 +1096,14 @@ WriteLiteral("\r\n\r\n\r\n");
#line default
#line hidden
#line 392 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 402 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.ActionLinkButton("Delete", MVC.API.UserFlag.Delete(Model.UserFlag.Id, true), "Config_UserFlags_Actions_Delete_Button"));
#line default
#line hidden
#line 392 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 402 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
@@ -1106,13 +1123,13 @@ WriteLiteral("></i>\r\n This item will be permanently deleted
"covered.<br />\r\n <br />\r\n");
#line 398 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 408 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line default
#line hidden
#line 398 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 408 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (Model.CurrentAssignmentCount > 0)
{
@@ -1122,7 +1139,7 @@ WriteLiteral("></i>\r\n This item will be permanently deleted
WriteLiteral(" <strong>");
#line 400 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 410 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.CurrentAssignmentCount);
@@ -1131,7 +1148,7 @@ WriteLiteral(" <strong>");
WriteLiteral(" user");
#line 400 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 410 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Model.CurrentAssignmentCount != 1 ? "s are" : " is");
@@ -1144,7 +1161,7 @@ WriteLiteral(" <br />\r\n");
WriteLiteral(" <br />\r\n");
#line 403 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 413 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -1187,7 +1204,7 @@ WriteLiteral(@">
");
#line 435 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 445 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -1196,7 +1213,7 @@ WriteLiteral(@">
WriteLiteral(" ");
#line 436 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 446 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
if (canShowUsers)
{
@@ -1204,14 +1221,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 438 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 448 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
Write(Html.ActionLinkButton(string.Format("Show {0} user{1}", Model.CurrentAssignmentCount, (Model.CurrentAssignmentCount == 1 ? null : "s")), MVC.Search.Query(Model.UserFlag.Id.ToString(), "UserFlag"), "Config_UserFlags_Actions_ShowUsers_Button"));
#line default
#line hidden
#line 438 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 448 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
@@ -1221,7 +1238,7 @@ WriteLiteral(" ");
WriteLiteral(" </div>\r\n");
#line 441 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
#line 451 "..\..\Areas\Config\Views\UserFlag\Show.cshtml"
}
#line default