View.cshtml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. @{
  2. Layout = "~/Views/Shared/_FunctionLayout.cshtml";
  3. }
  4. @model IEnumerable<GreenTree.Nachtragsmanagement.Web.Models.Admin.User.UserDataModel>
  5. <script>
  6. var deleteId;
  7. var resizeFinished;
  8. var gridScrollHeight;
  9. var gridScrollOffset = 100;
  10. var resizeFinished;
  11. $(document).ready(function () {
  12. gridScrollHeight = calculateGridScrollHeight();
  13. setTimeout(function () {
  14. devGridViewUser.PerformCallback();
  15. }, 500);
  16. });
  17. $(window).resize(function () {
  18. clearTimeout(window.resizedFinished);
  19. window.resizedFinished = setTimeout(function () {
  20. setGridScrollHeight();
  21. }, 250);
  22. });
  23. function calculateGridScrollHeight() {
  24. var windowHeight = $(window).height();
  25. var gridHeaderHeight = $("#devGridViewUser_DXHeadersRow0").height();
  26. var gridFooterHeight = $("#devGridViewUser_DXFooterRow").height();
  27. return windowHeight - gridHeaderHeight - gridFooterHeight - gridScrollOffset;
  28. }
  29. function setGridScrollHeight() {
  30. gridScrollHeight = calculateGridScrollHeight();
  31. devGridViewUser.PerformCallback();
  32. }
  33. function editUser(id) {
  34. if (!id) return;
  35. $.ajax({
  36. url: '@Url.Action("EditUser", "Admin")',
  37. data: { Id: id },
  38. success: function (response) {
  39. setTimeout(function () {
  40. $(".userEditContainer").remove();
  41. $("body").append(response);
  42. }, 200);
  43. },
  44. error: function () {
  45. alert("error occured");
  46. }
  47. });
  48. }
  49. function confirmDelete(id) {
  50. if (!id) return;
  51. deleteId = id;
  52. $.ajax({
  53. type: "GET",
  54. url: '@Url.Action("GetUser", "Admin")',
  55. data: { Id: id },
  56. success: function (response) {
  57. if (response == "notFound") return;
  58. var user = JSON.parse(response);
  59. var popupControl = MVCxClientPopupControl.Cast(devPopupControlDeleteUser);
  60. popupControl.SetHeaderText(popupControl.GetHeaderText().replace("{user}", user.Lastname + ", " + user.Forename));
  61. $(".dialogText").text($(".dialogText").text().replace("{user}", user.Lastname + ", " + user.Forename));
  62. popupControl.Show();
  63. }
  64. });
  65. }
  66. function deleteUser() {
  67. $.ajax({
  68. type: "POST",
  69. url: '@Url.Action("DeleteUser", "Admin")',
  70. data: { Id: deleteId },
  71. success: function (response) {
  72. var popupControl = MVCxClientPopupControl.Cast(devPopupControlDeleteUser);
  73. popupControl.Hide();
  74. setTimeout(function () {
  75. devGridViewUser.PerformCallback();
  76. }, 200);
  77. },
  78. error: function () {
  79. alert("error occured");
  80. }
  81. });
  82. }
  83. </script>
  84. @Html.Partial("~/Views/Admin/Users/_UserGridPartial.cshtml", Model)
  85. @Html.Partial("~/Views/Shared/_PopupDialogYesNo.cshtml", new GreenTree.Nachtragsmanagement.Web.Models.Global.YesNoDialogModel
  86. {
  87. PopupName = "devPopupControlDeleteUser",
  88. Content = "<div class='dialogText' style='padding: 12px'>Sind Sie sicher, dass Sie den Benutzer \"{user}\" löschen möchten?</div>",
  89. HeaderText = "\"{user}\" löschen",
  90. YesFunction = "function (s, e) { deleteUser(); }"
  91. })