View.cshtml 2.8 KB

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