_RoleGridPartial.cshtml 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. @model IEnumerable<GreenTree.Nachtragsmanagement.Web.Models.Admin.User.RoleDataModel>
  2. @{
  3. var userContext = GreenTree.Nachtragsmanagement.Core.CommonHelper.UserContext();
  4. }
  5. @Html.DevExpress().GridView(s =>
  6. {
  7. s.Name = "devGridViewRole";
  8. s.KeyFieldName = "Id";
  9. s.CallbackRouteValues = new { Controller = "Admin", Action = "PartialRoles" };
  10. s.Width = Unit.Percentage(99);
  11. s.Settings.ShowFilterRow = true;
  12. s.Settings.ShowFilterRowMenu = true;
  13. s.Settings.VerticalScrollBarMode = ScrollBarMode.Auto;
  14. s.Settings.VerticalScrollableHeight =
  15. (ViewData["ScrollHeight"] == null || (int)ViewData["ScrollHeight"] == -1)
  16. ? 400
  17. : (int)ViewData["ScrollHeight"];
  18. s.SettingsPager.AlwaysShowPager = true;
  19. if (userContext.CurrentUser.HasFunction("Administration-Roles-Edit"))
  20. {
  21. s.Columns.Add(column =>
  22. {
  23. column.Caption = "#";
  24. column.SetDataItemTemplateContent(c =>
  25. {
  26. ViewContext.Writer.Write(
  27. "<a href=\"#\" onclick=\"editRole(" + DataBinder.Eval(c.DataItem, "Id") + ")\">Bearbeiten</a>&nbsp;" +
  28. "<a href=\"#\" onclick=\"confirmDelete(" + DataBinder.Eval(c.DataItem, "Id") + ")\">Löschen</a>"
  29. );
  30. });
  31. column.SetHeaderTemplateContent(c =>
  32. {
  33. ViewContext.Writer.Write(
  34. "<a href=\"#\" onclick=\"editRole(-1)\">Neu</a>&nbsp;");
  35. });
  36. column.Settings.AllowDragDrop = DefaultBoolean.False;
  37. column.Settings.AllowSort = DefaultBoolean.False;
  38. column.Width = new Unit(150, UnitType.Pixel);
  39. });
  40. }
  41. s.Columns.Add(column =>
  42. {
  43. column.FieldName = "Description";
  44. column.Caption = "Beschreibung";
  45. column.MinWidth = 200;
  46. column.Width = new Unit(15, UnitType.Percentage);
  47. });
  48. s.Columns.Add(column =>
  49. {
  50. column.FieldName = "Level";
  51. column.Caption = "Stufe";
  52. column.MinWidth = 120;
  53. column.Width = new Unit(8, UnitType.Percentage);
  54. });
  55. s.Columns.Add(column =>
  56. {
  57. column.FieldName = "FunctionDescription";
  58. column.Caption = "Funktionen";
  59. column.MinWidth = 350;
  60. column.Width = new Unit(57, UnitType.Percentage);
  61. });
  62. s.Columns.Add(column =>
  63. {
  64. column.FieldName = "UserDescription";
  65. column.Caption = "Mitglieder";
  66. column.MinWidth = 250;
  67. column.Width = new Unit(20, UnitType.Percentage);
  68. });
  69. s.ClientLayout = (sender, e) =>
  70. {
  71. if (e.LayoutMode == ClientLayoutMode.Loading)
  72. {
  73. if (Session["RoleGridState"] != null)
  74. e.LayoutData = (string)Session["RoleGridState"];
  75. }
  76. else
  77. Session["RoleGridState"] = e.LayoutData;
  78. };
  79. s.ClientSideEvents.BeginCallback = "function (s, e) { e.customArgs['scrollHeight'] = [ gridScrollHeight ]; }";
  80. s.Styles.AlternatingRow.BackColor = System.Drawing.Color.FromArgb(247, 247, 247);
  81. }).Bind(Model).GetHtml()