View.cshtml 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. @{
  2. Layout = "~/Views/Shared/_FunctionLayout.cshtml";
  3. }
  4. @model IEnumerable<GreenTree.Nachtragsmanagement.Web.Models.Site.SiteDataModel>
  5. <script>
  6. var deleteId;
  7. var gridScrollHeight;
  8. var gridScrollOffset = 185;
  9. var resizeFinished;
  10. $(document).ready(function () {
  11. gridScrollHeight = calculateGridScrollHeight();
  12. setTimeout(function () {
  13. devGridViewSite.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 = $("#devGridViewSite_DXHeadersRow0").height();
  25. var gridFooterHeight = $("#devGridViewSite_DXFooterRow").height();
  26. return windowHeight - gridHeaderHeight - gridFooterHeight - gridScrollOffset;
  27. }
  28. function setGridScrollHeight() {
  29. gridScrollHeight = calculateGridScrollHeight();
  30. devGridViewSite.PerformCallback();
  31. }
  32. function onToolbarItemClick(s, e) {
  33. if (!s || !e) return;
  34. if (e.item.name == "Print") {
  35. parent.$(".printPopupContainer").remove();
  36. $.ajax({
  37. type: "POST",
  38. url: '@Url.Action("ExportPartialSites", "Site")',
  39. data: { displayMode: "popup", exportFormat: "" },
  40. success: function (response) {
  41. parent.$("body").append(response);
  42. parent.exportFormat = "pdf";
  43. }
  44. });
  45. } else if (e.item.name == "AddSite") {
  46. editSite(-1);
  47. } else if (e.item.name == "ToggleColumnChooser") {
  48. if (devGridViewSite.IsCustomizationWindowVisible())
  49. devGridViewSite.HideCustomizationWindow();
  50. else
  51. devGridViewSite.ShowCustomizationWindow();
  52. } else if (e.item.name == "ResetSettings") {
  53. $.ajax({
  54. type: "POST",
  55. url: '@Url.Action("DeleteCookiesSessionVariablesAndUserConfigs", "Global")',
  56. data: {
  57. cookies: ["siteGridStateCookie"],
  58. sessionVariables: ["SiteGridState", "SiteGridViewState"],
  59. userConfigItemNames: ["SiteGridLayoutState"]
  60. },
  61. success: function (response) {
  62. if (response == "success") {
  63. window.location = window.location;
  64. }
  65. }
  66. });
  67. }
  68. }
  69. function editSite(id) {
  70. if (!id) return;
  71. $.ajax({
  72. url: '@Url.Action("EditSite", "Site")',
  73. data: { Id: id },
  74. success: function (response) {
  75. setTimeout(function () {
  76. $(".siteEditContainer").remove();
  77. $("body").append(response);
  78. }, 200);
  79. },
  80. error: function () {
  81. alert("error occured");
  82. }
  83. });
  84. }
  85. function confirmDelete(id) {
  86. if (!id) return;
  87. deleteId = id;
  88. $.ajax({
  89. type: "GET",
  90. url: '@Url.Action("GetSite", "Site")',
  91. data: { Id: id },
  92. success: function (response) {
  93. if (response == "notFound") return;
  94. var site = JSON.parse(response);
  95. var popupControl = MVCxClientPopupControl.Cast(devPopupControlDeleteSite);
  96. popupControl.SetHeaderText(popupControl.GetHeaderText().replace("{site}", site.CustomNumber));
  97. $(".dialogTextSite").text($(".dialogTextSite").text().replace("{site}", site.CustomNumber));
  98. popupControl.Show();
  99. }
  100. });
  101. }
  102. function deleteSite() {
  103. $.ajax({
  104. type: "POST",
  105. url: '@Url.Action("DeleteSite", "Site")',
  106. data: { Id: deleteId },
  107. success: function (response) {
  108. var popupControl = MVCxClientPopupControl.Cast(devPopupControlDeleteSite);
  109. popupControl.Hide();
  110. setTimeout(function () {
  111. devGridViewSite.PerformCallback();
  112. }, 200);
  113. },
  114. error: function () {
  115. alert("error occured");
  116. }
  117. });
  118. }
  119. </script>
  120. @Html.Partial("~/Views/Sites/_SiteGridPartial.cshtml", Model)
  121. @Html.Partial("~/Views/Shared/_PopupDialogYesNo.cshtml", new GreenTree.Nachtragsmanagement.Web.Models.Global.YesNoDialogModel
  122. {
  123. PopupName = "devPopupControlDeleteSite",
  124. Content = "<div class='dialogTextSite' style='padding: 12px'>Sind Sie sicher, dass Sie die Baustelle \"{site}\" " +
  125. "und alle zugehörigen Nachträge / Vertragsabweichungen löschen möchten? " +
  126. "Der Vorgang kann nicht rückgängig gemacht werden. </div>",
  127. HeaderText = "\"{site}\" löschen",
  128. YesFunction = "function (s, e) { deleteSite(); }",
  129. YesButtonName = "devButtonDeleteSiteYes",
  130. NoButtonName = "devButtonDeleteSiteNo"
  131. })
  132. @Html.Partial("~/Views/Sites/_SiteDeviationDescriptionPartial.cshtml")