View.cshtml 2.7 KB

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