Mediation Agreement Generator

Mediation Agreement Generator

Create a comprehensive mediation agreement by filling out the sections below.

Party One Details

Party Two Details

Mediation Information

${line}

`).join('') }; const payingParty = data.payingPartySelection === 'Party One' ? data.partyOneName : data.partyTwoName; const receivingParty = data.payingPartySelection === 'Party One' ? data.partyTwoName : data.partyOneName; const agreementHTML = `

Mediation Settlement Agreement

This Mediation Settlement Agreement ("Agreement") is entered into on this ${data.mediationDate} ("Effective Date"), by and between:

Party One: ${data.partyOneName}, residing at ${data.partyOneAddress},

and

Party Two: ${data.partyTwoName}, residing at ${data.partyTwoAddress}.

(Hereinafter collectively referred to as the "Parties").

1. Background

The Parties have been involved in a dispute concerning: ${data.disputeDescription}. The Parties have participated in mediation and have voluntarily agreed to resolve the dispute on the terms set forth in this Agreement.

2. Settlement Terms

In full and final settlement of the dispute, the Parties agree as follows:

a. Settlement Payment: ${payingParty} shall pay ${receivingParty} the total sum of ${data.paymentAmount}. This payment shall be made in full on or before ${data.paymentDueDate}.

b. Additional Terms:

${data.additionalTerms}

3. No Admission of Liability

This Agreement is a compromise of disputed claims and is not to be construed as an admission of liability by any Party, by whom liability is expressly denied.

4. Entire Agreement

This Agreement constitutes the entire agreement between the Parties and supersedes all prior negotiations and understandings. This Agreement may not be modified except in writing signed by both Parties.

5. Governing Law

This Agreement shall be governed by and construed in accordance with the laws of the State of ${data.governingState}.

The Parties represent that they have read and understood this Agreement and sign it voluntarily.

${data.partyOneName}

Date: ____________________

${data.partyTwoName}

Date: ____________________

`; document.getElementById('agreement-output-container').innerHTML = agreementHTML; document.getElementById('pdf-download-section').classList.remove('hidden'); lucide.createIcons(); showTab(tabs.length - 1); } async function downloadPdf() { const pdfLoader = document.getElementById('pdf-loader'); const downloadBtn = document.getElementById('downloadPdfBtn'); const content = document.getElementById('agreement-output'); pdfLoader.classList.remove('hidden'); downloadBtn.disabled = true; try { const canvas = await html2canvas(content, { scale: 2 }); const imgData = canvas.toDataURL('image/png'); const { jsPDF } = window.jspdf; // Use letter size (8.5x11 inches) which is 612x792 points const pdf = new jsPDF('p', 'pt', 'letter'); const pdfWidth = pdf.internal.pageSize.getWidth(); const pdfHeight = pdf.internal.pageSize.getHeight(); const margin = 40; const canvasWidth = canvas.width; const canvasHeight = canvas.height; const ratio = canvasWidth / canvasHeight; const imgWidth = pdfWidth - (margin * 2); const imgHeight = imgWidth / ratio; let heightLeft = imgHeight; let position = margin; pdf.addImage(imgData, 'PNG', margin, position, imgWidth, imgHeight); heightLeft -= (pdfHeight - margin * 2); while (heightLeft > 0) { position = position - (pdfHeight - margin * 2); pdf.addPage(); pdf.addImage(imgData, 'PNG', margin, position, imgWidth, imgHeight); heightLeft -= (pdfHeight - margin * 2); } pdf.save('Mediation-Settlement-Agreement.pdf'); } catch (error) { console.error("Error generating PDF:", error); alert("There was an error generating the PDF. Please try again."); } finally { pdfLoader.classList.add('hidden'); downloadBtn.disabled = false; } } // Event Listeners generateBtn.addEventListener('click', generateAgreement); downloadPdfBtn.addEventListener('click', downloadPdf); // Initial UI setup showTab(currentTab); lucide.createIcons(); });
Scroll to Top