diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2023-04-06 08:56:56 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2023-04-06 08:58:32 +0530 |
| commit | d26988f5bbd147ef230676446e687eb527a7d7ad (patch) | |
| tree | 99f9437c6787c48b5a539f845e1b15c50cd3b0ce /src/scripts/functionality | |
| parent | 975891246c3ab61e48b1c74fc88e1fd8f25600f1 (diff) | |
| download | banglar-bhumi-utils-d26988f5bbd147ef230676446e687eb527a7d7ad.tar.gz banglar-bhumi-utils-d26988f5bbd147ef230676446e687eb527a7d7ad.zip | |
Added "Download PDF" button to khatian information.
Diffstat (limited to 'src/scripts/functionality')
| -rw-r--r-- | src/scripts/functionality/view-khatian.ts | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/scripts/functionality/view-khatian.ts b/src/scripts/functionality/view-khatian.ts index e1d3831..e81613b 100644 --- a/src/scripts/functionality/view-khatian.ts +++ b/src/scripts/functionality/view-khatian.ts @@ -1,8 +1,26 @@ +import { downloadPDF } from "@/shared/download-pdf"; + declare function loadKhatian(): void; document.addEventListener("DOMContentLoaded", () => { const proxiedPost = $.post; + const submitButtonElement = document.querySelector("#khbutton") as HTMLButtonElement; + const separatorElement = document.querySelector("#bodycover > div > form > hr:nth-child(2)") as HTMLElement; + const formElement = document.querySelector("#bodycover > div > form") as HTMLElement; + let downloadPDFButton: HTMLButtonElement | null = null; + + const submitButtonElementComputedStyles = window.getComputedStyle(submitButtonElement); + const styles = Array.from(submitButtonElementComputedStyles) + .reduce( + (str, property) => `${str}${property}:${submitButtonElementComputedStyles.getPropertyValue(property)};`, + "" + ); + + const downloadKhatianInformationPDF = () => { + downloadPDF(document.querySelector("html") as HTMLElement, "khatian-details.pdf"); + }; + $.post = function() { if (arguments[0].startsWith("khDetailsAction_LandInfo.action")) { const callback = arguments[2]; @@ -13,6 +31,19 @@ document.addEventListener("DOMContentLoaded", () => { if (tableElement) { tableElement.style.height = "auto"; tableElement.style.width = "100%"; + + if (!downloadPDFButton) { + downloadPDFButton = document.createElement("button"); + downloadPDFButton.innerHTML = "Download PDF"; + downloadPDFButton.style.cssText = styles; + downloadPDFButton.style.width = "auto"; + downloadPDFButton.addEventListener("click", downloadKhatianInformationPDF); + formElement.insertBefore(downloadPDFButton, separatorElement); + } + } else if (downloadPDFButton) { + downloadPDFButton.removeEventListener("click", downloadKhatianInformationPDF); + formElement.removeChild(downloadPDFButton); + downloadPDFButton = null; } } } |
