View.cshtml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. @using GreenTree.Nachtragsmanagement.Web.Models.Global;
  2. @{
  3. Layout = "~/Views/Shared/_FunctionLayout.cshtml";
  4. }
  5. @model IEnumerable<GreenTree.Nachtragsmanagement.Web.Models.Admin.Plugins.PluginDataModel>
  6. <script>
  7. var gridScrollHeight;
  8. var gridScrollOffset = 130;
  9. var resizeFinished;
  10. $(document).ready(function () {
  11. gridScrollHeight = calculateGridScrollHeight();
  12. setTimeout(function () {
  13. devGridViewPlugin.PerformCallback();
  14. }, 500);
  15. });
  16. $(window).resize(function () {
  17. clearTimeout(window.resizedFinished);
  18. window.resizedFinished = setTimeout(function () {
  19. setGridScrollHeight();
  20. }, 250);
  21. });
  22. function calculateGridScrollHeight() {
  23. var windowHeight = $(window).height();
  24. var gridHeaderHeight = $("#devGridViewPlugin_DXHeadersRow0").height();
  25. var gridFooterHeight = $("#devGridViewPlugin_DXFooterRow").height();
  26. return windowHeight - gridHeaderHeight - gridFooterHeight - gridScrollOffset;
  27. }
  28. function setGridScrollHeight() {
  29. gridScrollHeight = calculateGridScrollHeight();
  30. devGridViewPlugin.PerformCallback();
  31. }
  32. function toggleInstallation(pluginSystemName, installationType) {
  33. if (!pluginSystemName || !installationType) return;
  34. if (installationType == "install") {
  35. $.ajax({
  36. type: "POST",
  37. url: '@Url.Action("InstallPlugin", "Admin")',
  38. data: { pluginName: pluginSystemName },
  39. success: function (response) {
  40. if (response == "success") {
  41. devLoadingPanelRestart.Show();
  42. $.ajax({
  43. type: "GET",
  44. url: '@Url.Action("GetUser", "Admin")',
  45. data: { Id: -1 },
  46. success: function (response) {
  47. devLoadingPanelRestart.Hide();
  48. devGridViewPlugin.PerformCallback();
  49. }
  50. });
  51. } else {
  52. $("body").append(reponse);
  53. }
  54. },
  55. error: function () {
  56. alert("error occured");
  57. }
  58. });
  59. } else if (installationType == "uninstall") {
  60. $.ajax({
  61. type: "POST",
  62. url: '@Url.Action("UninstallPlugin", "Admin")',
  63. data: { pluginName: pluginSystemName },
  64. success: function (response) {
  65. if (response == "success") {
  66. devLoadingPanelRestart.Show();
  67. $.ajax({
  68. type: "GET",
  69. url: '@Url.Action("GetUser", "Admin")',
  70. data: { Id: -1 },
  71. success: function (response) {
  72. devLoadingPanelRestart.Hide();
  73. devGridViewPlugin.PerformCallback();
  74. }
  75. });
  76. } else {
  77. $("body").append(reponse);
  78. }
  79. },
  80. error: function () {
  81. alert("error occured");
  82. }
  83. });
  84. }
  85. }
  86. </script>
  87. @Html.DevExpress().LoadingPanel(t =>
  88. {
  89. t.Name = "devLoadingPanelRestart";
  90. t.Text = "Anwendung wird neugestartet... bitte warten!";
  91. t.Modal = true;
  92. t.Styles.LoadingDiv.Opacity = 0;
  93. }).GetHtml()
  94. @Html.Partial("~/Views/Admin/Plugins/_PluginsGridPartial.cshtml", Model)