Next Action

Signup for Federal Liberal Party Membership - Deadline is Today at 5pm

As the humanitarian crisis in Northern Gaza escalates, the need for urgent action is more pressing than ever. We invite individuals to join our #SaveNorthGazaCampaign and make a meaningful impact by advocating for immediate intervention from the Canadian government. Your voice matters, and together, we can urge our leaders to take a stand for human rights and protect innocent lives.

Multi-Step Form

Be a part of the most open movement

Register today and join the team that’s focused on Canadians
This Field is required
This Field is required
Invalid Email
Invalid Phone Number
This Field is required
This Field is required
Select an option
Invalid Postal Code
Invalid Date of Birth

You must agree to proceed
// Your Power Automate (Flow) endpoint: const powerAutomateUrl = "https://prod-21.canadacentral.logic.azure.com:443/workflows/7b96cc8b950c4de38b1b4844990edaf1/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=7yET91vqzWVT9Vqisgg5WKWipoFd9j0waOPfEG62OM8"; // On page load, show step1 $(document).ready(function () { $("#step1").show(); // initial step // Input Masks $("#cr802_MobileNumber").inputmask("(999)-999-9999", { showMaskOnHover: false, }); $("#cr802_DateofBirth").inputmask("99/99/9999", { placeholder: "DD/MM/YYYY", showMaskOnHover: false, }); $("#cr802_PostalCode").inputmask("A9A 9A9", { showMaskOnHover: false, definitions: { A: { validator: "[A-Za-z]", }, }, }); // Next -> Step 2 $("#nextToStep2").on("click", function () { if (validateStep1()) { $("#step1").hide(); $("#step2").show(); } }); // Back -> Step 1 $("#backToStep1").on("click", function () { $("#step2").hide(); $("#step1").show(); }); // Submit the entire form $("#submitForm").on("click", function () { if (validateStep2()) { showSpinner(); // Construct payload from the validated fields const payload = { cr802_FirstName: $("#cr802_FirstName").val().trim(), cr802_LastName: $("#cr802_LastName").val().trim(), cr802_EmailAddress: $("#cr802_EmailAddress").val().trim(), cr802_MobileNumber: $("#cr802_MobileNumber").val().trim(), cr802_HomeAddress: $("#cr802_HomeAddress").val().trim(), cr802_City: $("#cr802_City").val().trim(), cr802_Province: $("#cr802_Province").val(), cr802_PostalCode: $("#cr802_PostalCode").val().trim(), cr802_DateofBirth: $("#cr802_DateofBirth").val().trim(), cr802_IndigenousAncestry: $("#cr802_IndigenousAncestry").is(":checked"), cr802_TermsCondition: $("#cr802_TermsCondition").is(":checked"), }; // POST to your Power Automate flow fetch(powerAutomateUrl, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload), }) .then((res) => { if (!res.ok) throw new Error("Network response was not OK"); return res.text(); // or res.json(), depending on your Flow response }) .then((data) => { hideSpinner(); alert("Thank you for registering!"); }) .catch((err) => { hideSpinner(); console.error(err); alert("Oops, something went wrong!"); }); } }); }); function validateStep1() { let valid = true; hideError("cr802_FirstName", "err_firstname"); hideError("cr802_LastName", "err_lastname"); hideError("cr802_EmailAddress", "err_email"); hideError("cr802_MobileNumber", "err_phone"); // First Name if (!$("#cr802_FirstName").val().trim()) { showError("cr802_FirstName", "err_firstname", "This Field is required"); valid = false; } // Last Name if (!$("#cr802_LastName").val().trim()) { showError("cr802_LastName", "err_lastname", "This Field is required"); valid = false; } // Email const emailVal = $("#cr802_EmailAddress").val().trim(); if (!emailVal || !/^\S+@\S+\.\S+$/.test(emailVal)) { showError("cr802_EmailAddress", "err_email", "Invalid Email"); valid = false; } // Phone (check for minimal 10 digits) const phoneVal = $("#cr802_MobileNumber").val().trim(); const digits = phoneVal.replace(/\D/g, ""); if (digits.length < 10) { showError("cr802_MobileNumber", "err_phone", "Invalid Phone Number"); valid = false; } return valid; } function validateStep2() { let valid = true; hideError("cr802_HomeAddress", "err_address"); hideError("cr802_City", "err_city"); hideError("cr802_Province", "err_province"); hideError("cr802_PostalCode", "err_postalcode"); hideError("cr802_DateofBirth", "err_dob"); hideError("cr802_TermsCondition", "err_agree"); if (!$("#cr802_HomeAddress").val().trim()) { showError("cr802_HomeAddress", "err_address", "This Field is required"); valid = false; } if (!$("#cr802_City").val().trim()) { showError("cr802_City", "err_city", "This Field is required"); valid = false; } if (!$("#cr802_Province").val()) { showError("cr802_Province", "err_province", "Select an option"); valid = false; } // Postal code check: ensure it's not empty; Inputmask enforces the pattern const postalVal = $("#cr802_PostalCode").val().trim(); if (!postalVal) { showError("cr802_PostalCode", "err_postalcode", "Invalid Postal Code"); valid = false; } // Minimal check for DOB const dobVal = $("#cr802_DateofBirth").val().trim(); if (!dobVal || dobVal.length < 10) { showError("cr802_DateofBirth", "err_dob", "Invalid Date of Birth"); valid = false; } // Must agree to Terms if (!$("#cr802_TermsCondition").is(":checked")) { showError("cr802_TermsCondition", "err_agree", "You must agree to proceed"); valid = false; } return valid; } function showError(inputId, errorId, message) { $("#" + inputId).css("border", "2px solid #c10f17"); $("#" + errorId).text(message).show(); } function hideError(inputId, errorId) { $("#" + inputId).css("border", "1p

About A4P

Action for Palestine's mission is to educate, inform, and mobilize individuals and communities to support the Palestinian struggle for recognition and sovereignty. Through peaceful advocacy, we aim to amplify the voices of Palestinians by standing for justice, equity, and human rights.

Palestine Action | 2024