{"id":2087,"date":"2025-06-26T20:15:13","date_gmt":"2025-06-26T20:15:13","guid":{"rendered":"https:\/\/summithealth.ca\/?page_id=2087"},"modified":"2025-08-11T12:29:03","modified_gmt":"2025-08-11T12:29:03","slug":"formulaire-de-consentement-de-sortie-pour-perfusion","status":"publish","type":"page","link":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/","title":{"rendered":"Formulaire de consentement de sortie pour perfusion"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <title>Formulaire de sortie du patient &#8211; Summit Health<\/title>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.0.1\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\">\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/signature_pad@4.1.5\/dist\/signature_pad.umd.min.js\"><\/script>\n    <script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.6.0\/jquery.min.js\"><\/script>\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/html2pdf.js\/0.10.1\/html2pdf.bundle.min.js\"><\/script>\n    <style>\n        html, body {\n          margin: 0;\n          padding: 0;\n          background: #fff;\n        }\n\n        * {\n          box-sizing: border-box;\n        }\n\n        body {\n            padding: 20px;\n            font-family: sans-serif;\n            font-size: 14px;\n        }\n        #signature-pad {\n            border: 1px solid #ccc;\n            width: 100%;\n            max-width: 600px;\n            height: 200px;\n        }\n        canvas {\n            touch-action: none;\n            display: block;\n        }\n    <\/style>\n<\/head>\n<body>\n\n<div id=\"pdf-wrapper\" style=\"background-color: #fff; color: #000; padding: 20px; margin: 0 auto; max-width: 800px; min-height: 100vh; box-sizing: border-box;\">\n    <h2 class=\"mb-4\">Formulaire de sortie du patient &#8211; Summit Health<\/h2>\n\n    <div class=\"mb-3\">\n        <label for=\"patientName\" class=\"form-label\"><strong>Nom complet du patient<\/strong><\/label>\n        <input type=\"text\" class=\"form-control\" id=\"patientName\" placeholder=\"Entrez le nom complet\">\n    <\/div>\n\n    <div class=\"mb-3\">\n        <label for=\"dischargeDate\" class=\"form-label\"><strong>Date<\/strong><\/label>\n        <input type=\"date\" class=\"form-control\" id=\"dischargeDate\">\n    <\/div>\n\n    <div id=\"dischargeSection\" style=\"display: block;\">\n      <p><strong>Reconnaissance de la sortie<\/strong><\/p>\n      <ul>\n        <li>Je reconnais avoir choisi de quitter la clinique avant la fin de la p\u00e9riode de surveillance post-infusion recommand\u00e9e. Je comprends les risques potentiels et d\u00e9charge Summit Health de toute responsabilit\u00e9 en cas de r\u00e9action retard\u00e9e ou de complication apr\u00e8s mon d\u00e9part.<\/li>\n      <\/ul>\n    <\/div>\n\n    <div class=\"form-check mb-3\">\n      <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"consentCheckbox\">\n      <label class=\"form-check-label\" for=\"consentCheckbox\">\n        Je confirme avoir lu et compris les informations ci-dessus et j\u2019accepte les termes et conditions.\n      <\/label>\n    <\/div>\n\n    <div class=\"mb-3\">\n        <label class=\"form-label\"><strong>Signature<\/strong><\/label><br>\n        <canvas id=\"signature-pad\"><\/canvas><br>\n        <button class=\"btn btn-secondary mt-2\" id=\"clearSignature\">Effacer la signature<\/button>\n    <\/div>\n\n    <div id=\"signatureMetadata\" class=\"mb-3\" style=\"font-size: 12px; color: #555;\"><\/div>\n\n    <button class=\"btn btn-primary\" id=\"submitForm\">Soumettre le formulaire<\/button>\n\n    <div class=\"alert alert-success mt-3\" style=\"display: none;\" id=\"successMessage\">\n        Le formulaire de consentement a \u00e9t\u00e9 soumis avec succ\u00e8s.\n    <\/div>\n    <div class=\"alert alert-danger mt-3\" style=\"display: none;\" id=\"errorMessage\">\n        Une erreur s&rsquo;est produite lors de la soumission du formulaire. Veuillez en informer votre infirmier(\u00e8re).\n    <\/div>\n<\/div>\n\n<script>\n    \/\/ Retrieve relatedObjectId from URL\n    const urlParams = new URLSearchParams(window.location.search);\n    const relatedObjectId = urlParams.get(\"relatedObjectId\");\n\n    \/\/ Validate relatedObjectId\n    if (!relatedObjectId) {\n      document.getElementById(\"pdf-wrapper\").innerHTML = `\n        <div class=\"alert alert-danger\">\n          Ce formulaire contient une erreur technique. Veuillez parler \u00e0 votre infirmier(\u00e8re) pour compl\u00e9ter le processus de sortie.\n        <\/div>\n      `;\n      throw new Error(\"Missing relatedObjectId in URL\");\n    }\n\n    const canvas = document.getElementById(\"signature-pad\");\n    const signaturePad = new SignaturePad(canvas);\n\n    \/\/ Set today's date as default for dischargeDate\n    document.getElementById(\"dischargeDate\").valueAsDate = new Date();\n\n    function resizeCanvas() {\n        const ratio = Math.max(window.devicePixelRatio || 1, 1);\n        canvas.width = canvas.offsetWidth * ratio;\n        canvas.height = canvas.offsetHeight * ratio;\n        canvas.getContext(\"2d\").scale(ratio, ratio);\n        const data = signaturePad.toDataURL();\n        signaturePad.clear();\n        try { signaturePad.fromDataURL(data); } catch (_) {}\n    }\n\n    window.addEventListener(\"resize\", resizeCanvas);\n    resizeCanvas();\n\n    let userIP = \"Fetching...\";\n    fetch(\"https:\/\/api.ipify.org?format=json\")\n      .then(response => response.json())\n      .then(data => { userIP = data.ip; })\n      .catch(() => { userIP = \"Unavailable\"; });\n\n    document.getElementById(\"clearSignature\").addEventListener(\"click\", () => {\n        signaturePad.clear();\n    });\n\n    document.getElementById(\"submitForm\").addEventListener(\"click\", () => {\n        const name = document.getElementById(\"patientName\").value.trim();\n        const date = document.getElementById(\"dischargeDate\").value;\n\n        if (!name || !date || signaturePad.isEmpty()) {\n            alert(\"Veuillez remplir tous les champs et signer avant de soumettre.\");\n            return;\n        }\n\n        const consentCheckbox = document.getElementById(\"consentCheckbox\");\n        if (!consentCheckbox.checked) {\n          alert(\"Veuillez confirmer que vous avez lu et acceptez les termes avant de soumettre.\");\n          return;\n        }\n\n        const estDate = new Date().toLocaleString(\"en-CA\", { timeZone: \"America\/Toronto\" });\n        const browserInfo = navigator.userAgent;\n\n        const metaDiv = document.getElementById(\"signatureMetadata\");\n        metaDiv.innerText = `Sign\u00e9 le ${estDate} (HNE)\\nNavigateur : ${browserInfo}\\nIP : ${userIP}`;\n\n        const signature = signaturePad.toDataURL();\n\n        \/\/ Convert canvas to image\n        const signatureImg = new Image();\n        signatureImg.src = signature;\n        signatureImg.style.width = '100%';\n        signatureImg.style.maxWidth = '600px';\n\n        \/\/ Replace canvas with static image before PDF\n        const canvasEl = document.getElementById(\"signature-pad\");\n        canvasEl.parentNode.replaceChild(signatureImg, canvasEl);\n\n        document.getElementById(\"submitForm\").style.display = \"none\";\n        document.getElementById(\"clearSignature\").style.display = \"none\";\n        document.getElementById(\"successMessage\").style.display = \"none\";\n        document.getElementById(\"errorMessage\").style.display = \"none\";\n\n        const wrapper = document.getElementById(\"pdf-wrapper\");\n        wrapper.style.display = \"block\";\n        wrapper.style.visibility = \"visible\";\n        wrapper.style.position = \"relative\";\n\n        function generatePdfAndUpload() {\n          requestAnimationFrame(() => {\n            html2pdf()\n              .set({\n                margin: 10,\n                filename: `Discharge - ${name}.pdf`,\n                image: { type: 'jpeg', quality: 0.98 },\n                html2canvas: {\n                  scale: 1.5,\n                  useCORS: true,\n                  logging: true,\n                  scrollY: 0\n                },\n                jsPDF: { unit: 'mm', format: 'a4', orientation: 'portrait' }\n              })\n              .from(wrapper)\n              .toPdf()\n              .get('pdf')\n              .then((pdf) => {\n                const total = pdf.internal.getNumberOfPages();\n                if (total > 1) {\n                  for (let i = 1; i <= total; i++) {\n                    pdf.setPage(i);\n                    pdf.setFontSize(10);\n                    const pageSize = pdf.internal.pageSize;\n                    const x = pageSize.getWidth() - 5;\n                    const y = pageSize.getHeight() - 5;\n                    pdf.text(`Page ${i} de ${total}`, x, y, { align: 'right' });\n                  }\n                }\n                return pdf.output('blob');\n              })\n              .then((pdfBlob) => {\n                \/\/ Upload first, then download\n                const reader = new FileReader();\n                reader.onloadend = function () {\n                  const base64PDF = reader.result.split(',')[1];\n                  const payload = {\n                    formType: \"discharge\",\n                    base64PDF,\n                    fileName: `Discharge - ${name}.pdf`,\n                    relatedId: relatedObjectId\n                  };\n\n                  fetch(\"https:\/\/api.summittravelhealthdev.com\/v1\/pdf\/uploadPatientAgreementForm\", {\n                    method: \"POST\",\n                    headers: { \"Content-Type\": \"application\/json\" },\n                    body: JSON.stringify(payload),\n                  })\n                    .then(response => {\n                      if (!response.ok) throw new Error(\"Upload failed\");\n                      return response.json();\n                    })\n                    .then(data => {\n                      console.log(\"Uploaded to backend:\", data);\n                      document.getElementById(\"successMessage\").style.display = \"block\";\n\n                      \/\/ Save locally AFTER successful upload\n                      if (typeof saveAs !== \"undefined\") {\n                        saveAs(pdfBlob, `Discharge - ${name}.pdf`);\n                      } else {\n                        const url = URL.createObjectURL(pdfBlob);\n                        const a = document.createElement(\"a\");\n                        a.href = url;\n                        a.download = `Discharge - ${name}.pdf`;\n                        document.body.appendChild(a);\n                        a.click();\n                        document.body.removeChild(a);\n                        URL.revokeObjectURL(url);\n                      }\n                    })\n                    .catch(err => {\n                      console.error(err);\n                      document.getElementById(\"errorMessage\").style.display = \"block\";\n                    });\n                };\n                reader.readAsDataURL(pdfBlob);\n              })\n              .catch(error => {\n                console.error(\"PDF generation failed:\", error);\n                document.getElementById(\"errorMessage\").style.display = \"block\";\n              });\n          });\n        }\n\n        if (signatureImg.complete) {\n          generatePdfAndUpload();\n        } else {\n          signatureImg.onload = generatePdfAndUpload;\n        }\n    });\n\/\/ FileSaver.js for saveAs\n<\/script>\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/FileSaver.js\/2.0.5\/FileSaver.min.js\"><\/script>\n\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>Formulaire de sortie du patient &#8211; Summit Health Formulaire de sortie du patient &#8211; Summit Health Nom complet du patient Date Reconnaissance de la sortie &#8230; <a title=\"Formulaire de consentement de sortie pour perfusion\" class=\"read-more\" href=\"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/\" aria-label=\"En savoir plus sur Formulaire de consentement de sortie pour perfusion\">Lire plus<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2087","page","type-page","status-publish"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Formulaire de consentement de sortie pour perfusion - Summit Health<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Formulaire de consentement de sortie pour perfusion - Summit Health\" \/>\n<meta property=\"og:description\" content=\"Formulaire de sortie du patient &#8211; Summit Health Formulaire de sortie du patient &#8211; Summit Health Nom complet du patient Date Reconnaissance de la sortie ... Lire plus\" \/>\n<meta property=\"og:url\" content=\"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/\" \/>\n<meta property=\"og:site_name\" content=\"Summit Health\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-11T12:29:03+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/formulaire-de-consentement-de-sortie-pour-perfusion\\\/\",\"url\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/formulaire-de-consentement-de-sortie-pour-perfusion\\\/\",\"name\":\"Formulaire de consentement de sortie pour perfusion - Summit Health\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/#website\"},\"datePublished\":\"2025-06-26T20:15:13+00:00\",\"dateModified\":\"2025-08-11T12:29:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/formulaire-de-consentement-de-sortie-pour-perfusion\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/summithealth.ca\\\/fr\\\/formulaire-de-consentement-de-sortie-pour-perfusion\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/formulaire-de-consentement-de-sortie-pour-perfusion\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Formulaire de consentement de sortie pour perfusion\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/#website\",\"url\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/\",\"name\":\"Summit Health\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/#organization\",\"name\":\"Summit Health\",\"url\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/summithealth.ca\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/logo_trimmed.png\",\"contentUrl\":\"https:\\\/\\\/summithealth.ca\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/logo_trimmed.png\",\"width\":312,\"height\":312,\"caption\":\"Summit Health\"},\"image\":{\"@id\":\"https:\\\/\\\/summithealth.ca\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Formulaire de consentement de sortie pour perfusion - Summit Health","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/","og_locale":"fr_FR","og_type":"article","og_title":"Formulaire de consentement de sortie pour perfusion - Summit Health","og_description":"Formulaire de sortie du patient &#8211; Summit Health Formulaire de sortie du patient &#8211; Summit Health Nom complet du patient Date Reconnaissance de la sortie ... Lire plus","og_url":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/","og_site_name":"Summit Health","article_modified_time":"2025-08-11T12:29:03+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/","url":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/","name":"Formulaire de consentement de sortie pour perfusion - Summit Health","isPartOf":{"@id":"https:\/\/summithealth.ca\/fr\/#website"},"datePublished":"2025-06-26T20:15:13+00:00","dateModified":"2025-08-11T12:29:03+00:00","breadcrumb":{"@id":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/summithealth.ca\/fr\/formulaire-de-consentement-de-sortie-pour-perfusion\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/summithealth.ca\/fr\/"},{"@type":"ListItem","position":2,"name":"Formulaire de consentement de sortie pour perfusion"}]},{"@type":"WebSite","@id":"https:\/\/summithealth.ca\/fr\/#website","url":"https:\/\/summithealth.ca\/fr\/","name":"Summit Health","description":"","publisher":{"@id":"https:\/\/summithealth.ca\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/summithealth.ca\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/summithealth.ca\/fr\/#organization","name":"Summit Health","url":"https:\/\/summithealth.ca\/fr\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/summithealth.ca\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/summithealth.ca\/wp-content\/uploads\/2024\/07\/logo_trimmed.png","contentUrl":"https:\/\/summithealth.ca\/wp-content\/uploads\/2024\/07\/logo_trimmed.png","width":312,"height":312,"caption":"Summit Health"},"image":{"@id":"https:\/\/summithealth.ca\/fr\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/pages\/2087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/comments?post=2087"}],"version-history":[{"count":4,"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/pages\/2087\/revisions"}],"predecessor-version":[{"id":2182,"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/pages\/2087\/revisions\/2182"}],"wp:attachment":[{"href":"https:\/\/summithealth.ca\/fr\/wp-json\/wp\/v2\/media?parent=2087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}