{"id":3882,"date":"2026-05-22T22:38:43","date_gmt":"2026-05-22T21:38:43","guid":{"rendered":"https:\/\/pappaye.be\/?page_id=3882"},"modified":"2026-10-15T10:21:20","modified_gmt":"2026-10-15T09:21:20","slug":"createaccount","status":"publish","type":"page","link":"https:\/\/pappaye.be\/en\/createaccount\/","title":{"rendered":"createAccountStep1"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3882\" class=\"elementor elementor-3882\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3070ec3 e-flex e-con-boxed e-con e-parent\" data-id=\"3070ec3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a188b13 elementor-widget elementor-widget-html\" data-id=\"a188b13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- ============================================================\r\n     PAPPAYE \u2014 STEP 1 \/ CREATION DE COMPTE ETUDIANT\r\n     A coller dans une page HTML WordPress \/ Elementor\r\n     Firebase Auth uniquement: email + mot de passe\r\n     ============================================================ -->\r\n\r\n<style>\r\n  #ppe-auth1 * { box-sizing: border-box; margin: 0; padding: 0; }\r\n  #ppe-auth1 {\r\n    font-family: 'Roboto', sans-serif;\r\n    max-width: 680px;\r\n    margin: 0 auto;\r\n    padding: 8px;\r\n    color: #374151;\r\n  }\r\n  #ppe-auth1 .card {\r\n    background: #fff;\r\n    border-radius: 20px;\r\n    overflow: hidden;\r\n    box-shadow: 0 8px 48px rgba(15,23,42,.12), 0 1px 4px rgba(0,0,0,.06);\r\n  }\r\n  #ppe-auth1 .head {\r\n    background: linear-gradient(145deg, #54B435 0%, #ff7a18 100%);\r\n    padding: 44px 36px 36px;\r\n    text-align: center;\r\n    color: #fff;\r\n  }\r\n  #ppe-auth1 .head h2 {\r\n    font-family: 'Inter', sans-serif;\r\n    font-size: clamp(1.5rem, 4vw, 2rem);\r\n    margin-bottom: 8px;\r\n  }\r\n  #ppe-auth1 .head p { color: rgba(255,255,255,.92); }\r\n  #ppe-auth1 .body { padding: 40px; }\r\n  @media (max-width: 540px) { #ppe-auth1 .body { padding: 24px; } }\r\n  #ppe-auth1 .section-label {\r\n    font-family: 'Inter', sans-serif;\r\n    font-size: .72rem;\r\n    font-weight: 700;\r\n    text-transform: uppercase;\r\n    letter-spacing: 1.2px;\r\n    color: #54B435;\r\n    margin-bottom: 16px;\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n  }\r\n  #ppe-auth1 .section-label::after { content: ''; flex: 1; height: 1px; background: #e5f5df; }\r\n  #ppe-auth1 .field { margin-bottom: 18px; }\r\n  #ppe-auth1 label {\r\n    display: block;\r\n    font-size: .875rem;\r\n    font-weight: 600;\r\n    color: #111827;\r\n    margin-bottom: 8px;\r\n  }\r\n  #ppe-auth1 .req { color: #ef4444; }\r\n  #ppe-auth1 .hint { color: #9ca3af; font-weight: 400; font-size: .78rem; }\r\n  #ppe-auth1 .inp {\r\n    width: 100%;\r\n    height: 50px;\r\n    padding: 0 16px;\r\n    border: 1.5px solid #e5e7eb;\r\n    border-radius: 10px;\r\n    background: #f9fafb;\r\n    outline: none;\r\n    transition: .18s;\r\n    font-size: .95rem;\r\n  }\r\n  #ppe-auth1 .inp:focus {\r\n    background: #fff;\r\n    border-color: #54B435;\r\n    box-shadow: 0 0 0 3px rgba(84,180,53,.18);\r\n  }\r\n  #ppe-auth1 .inp.err {\r\n    border-color: #ef4444;\r\n    box-shadow: 0 0 0 3px rgba(239,68,68,.10);\r\n    background: #fff;\r\n  }\r\n  #ppe-auth1 .ferr { display: none; margin-top: 6px; font-size: .78rem; color: #ef4444; }\r\n  #ppe-auth1 .ferr.show { display: block; }\r\n  #ppe-auth1 .password-box {\r\n    background: #f8fafc;\r\n    border: 1px solid #e5e7eb;\r\n    border-radius: 14px;\r\n    padding: 16px;\r\n  }\r\n  #ppe-auth1 .criteria { display: grid; gap: 8px; margin-top: 10px; }\r\n  #ppe-auth1 .criterion { display: flex; align-items: center; gap: 10px; font-size: .86rem; color: #6b7280; }\r\n  #ppe-auth1 .dot { width: 14px; height: 14px; border-radius: 50%; background: #e5e7eb; flex-shrink: 0; position: relative; }\r\n  #ppe-auth1 .criterion.ok { color: #166534; }\r\n  #ppe-auth1 .criterion.ok .dot { background: #22c55e; }\r\n  #ppe-auth1 .criterion.ok .dot::after {\r\n    content: '';\r\n    position: absolute;\r\n    left: 4px;\r\n    top: 1px;\r\n    width: 4px;\r\n    height: 7px;\r\n    border-right: 2px solid #fff;\r\n    border-bottom: 2px solid #fff;\r\n    transform: rotate(45deg);\r\n  }\r\n  #ppe-auth1 .divider { border: none; border-top: 1px solid #f3f4f6; margin: 30px 0 24px; }\r\n  #ppe-auth1 .btn-submit {\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    gap: 10px;\r\n    width: 100%;\r\n    height: 56px;\r\n    border: none;\r\n    border-radius: 14px;\r\n    background: #cbd5e1;\r\n    color: #fff;\r\n    font-family: 'Inter', sans-serif;\r\n    font-size: 1rem;\r\n    font-weight: 700;\r\n    letter-spacing: .5px;\r\n    text-transform: uppercase;\r\n    cursor: not-allowed;\r\n    transition: .2s;\r\n  }\r\n  #ppe-auth1 .btn-submit.ready {\r\n    cursor: pointer;\r\n    background: linear-gradient(145deg, #54B435, #ff7a18);\r\n    box-shadow: 0 8px 28px rgba(84,180,53,.28);\r\n  }\r\n  #ppe-auth1 .btn-submit.ready:hover:not(:disabled) { transform: translateY(-2px); opacity: .96; }\r\n  #ppe-auth1 .spinner {\r\n    display: none;\r\n    width: 20px;\r\n    height: 20px;\r\n    border: 2.5px solid rgba(255,255,255,.3);\r\n    border-top-color: #fff;\r\n    border-radius: 50%;\r\n    animation: ppeSpin .7s linear infinite;\r\n  }\r\n  @keyframes ppeSpin { to { transform: rotate(360deg); } }\r\n  #ppe-auth1 .alert {\r\n    display: none;\r\n    margin-top: 18px;\r\n    border-radius: 12px;\r\n    padding: 18px 20px;\r\n    font-size: .9rem;\r\n    line-height: 1.65;\r\n  }\r\n  #ppe-auth1 .alert.show { display: block; }\r\n  #ppe-auth1 .alert-ok { background: #f0fdf4; border: 1.5px solid #86efac; color: #166534; }\r\n  #ppe-auth1 .alert-ko { background: #fff5f5; border: 1.5px solid #fca5a5; color: #7f1d1d; }\r\n  #ppe-auth1 .alert-head { display: flex; align-items: center; gap: 10px; font-family: 'Inter', sans-serif; font-weight: 700; margin-bottom: 6px; }\r\n  #ppe-auth1 .note {\r\n    display: flex;\r\n    gap: 10px;\r\n    background: #fffaf5;\r\n    border-left: 3px solid #ff7a18;\r\n    border-radius: 0 8px 8px 0;\r\n    padding: 14px 16px;\r\n    font-size: .84rem;\r\n    color: #6b7280;\r\n    margin-top: 18px;\r\n  }\r\n<\/style>\r\n\r\n<div id=\"ppe-auth1\">\r\n  <div class=\"card\">\r\n    <div class=\"head\">\r\n      <h2>Cr\u00e9er un compte \u00e9tudiant<\/h2>\r\n      <p>\u00c9tape 1: email \u00e9tudiant et mot de passe Firebase.<\/p>\r\n    <\/div>\r\n\r\n    <div class=\"body\">\r\n      <form id=\"ppe-form-1\" novalidate>\r\n        <div class=\"section-label\">Tes identifiants<\/div>\r\n\r\n        <div class=\"field\">\r\n          <label for=\"ppe-email-1\">Email \u00e9tudiant <span class=\"req\">*<\/span> <span class=\"hint\">@student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026<\/span><\/label>\r\n          <input type=\"email\" id=\"ppe-email-1\" class=\"inp\" placeholder=\"prenom.nom@student.uclouvain.be\" autocomplete=\"email\" required>\r\n          <span class=\"ferr\" id=\"ppe-email-1-err\">Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*).<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"password-box\">\r\n          <div class=\"field\">\r\n            <label for=\"ppe-pass-1\">Mot de passe <span class=\"req\">*<\/span><\/label>\r\n            <input type=\"password\" id=\"ppe-pass-1\" class=\"inp\" placeholder=\"Au moins 12 caract\u00e8res\" autocomplete=\"new-password\" required>\r\n            <span class=\"ferr\" id=\"ppe-pass-1-err\">Le mot de passe ne respecte pas les r\u00e8gles.<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"field\">\r\n            <label for=\"ppe-pass2-1\">Confirmer le mot de passe <span class=\"req\">*<\/span><\/label>\r\n            <input type=\"password\" id=\"ppe-pass2-1\" class=\"inp\" placeholder=\"Ressaisis le mot de passe\" autocomplete=\"new-password\" required>\r\n            <span class=\"ferr\" id=\"ppe-pass2-1-err\">Les deux mots de passe doivent \u00eatre identiques.<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"criteria\" aria-live=\"polite\">\r\n            <div class=\"criterion\" id=\"ppe-c1-1\"><span class=\"dot\"><\/span><span>12 caract\u00e8res minimum<\/span><\/div>\r\n            <div class=\"criterion\" id=\"ppe-c2-1\"><span class=\"dot\"><\/span><span>Une majuscule<\/span><\/div>\r\n            <div class=\"criterion\" id=\"ppe-c3-1\"><span class=\"dot\"><\/span><span>Une minuscule<\/span><\/div>\r\n            <div class=\"criterion\" id=\"ppe-c4-1\"><span class=\"dot\"><\/span><span>Un chiffre<\/span><\/div>\r\n            <div class=\"criterion\" id=\"ppe-c5-1\"><span class=\"dot\"><\/span><span>Un caract\u00e8re sp\u00e9cial<\/span><\/div>\r\n            <div class=\"criterion\" id=\"ppe-c6-1\"><span class=\"dot\"><\/span><span>Les deux mots de passe sont identiques<\/span><\/div>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"note\">\r\n          <span>Ce prototype cr\u00e9e seulement le compte Firebase. L\u2019\u00e9tape 2 servira \u00e0 compl\u00e9ter le profil \u00e9tudiant et \u00e0 brancher le backend.<\/span>\r\n        <\/div>\r\n\r\n        <hr class=\"divider\">\r\n\r\n        <button type=\"submit\" class=\"btn-submit\" id=\"ppe-btn-1\" disabled>\r\n          <div class=\"spinner\" id=\"ppe-spinner-1\"><\/div>\r\n          <svg id=\"ppe-btn-ico-1\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"white\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n            <path d=\"M20 6L9 17l-5-5\"><\/path>\r\n          <\/svg>\r\n          <span id=\"ppe-btn-label-1\">Cr\u00e9er mon compte<\/span>\r\n        <\/button>\r\n\r\n        <div class=\"alert alert-ok\" id=\"ppe-ok-1\" role=\"alert\">\r\n          <div class=\"alert-head\">\r\n            <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#166534\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n              <path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\"><\/path>\r\n              <polyline points=\"22 4 12 14.01 9 11.01\"><\/polyline>\r\n            <\/svg>\r\n            Compte cr\u00e9\u00e9 avec succ\u00e8s\r\n          <\/div>\r\n          <div id=\"ppe-ok-body-1\"><\/div>\r\n        <\/div>\r\n\r\n        <div class=\"alert alert-ko\" id=\"ppe-ko-1\" role=\"alert\">\r\n          <div class=\"alert-head\">\r\n            <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#b91c1c\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n              <circle cx=\"12\" cy=\"12\" r=\"10\"><\/circle>\r\n              <line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"><\/line>\r\n              <line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"><\/line>\r\n            <\/svg>\r\n            Une erreur est survenue\r\n          <\/div>\r\n          <div id=\"ppe-ko-body-1\"><\/div>\r\n        <\/div>\r\n      <\/form>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script type=\"module\">\r\n  import { initializeApp } from 'https:\/\/www.gstatic.com\/firebasejs\/10.12.5\/firebase-app.js';\r\n  import { getAuth, createUserWithEmailAndPassword, sendEmailVerification, onAuthStateChanged } from 'https:\/\/www.gstatic.com\/firebasejs\/10.12.5\/firebase-auth.js';\r\n\r\n  const firebaseConfig = {\r\n    apiKey: 'AIzaSyDq-Tj0upfcyD2l8ta0cL-3J75zoNGqE-I',\r\n    authDomain: 'pappaye-e6ff0.firebaseapp.com',\r\n    projectId: 'pappaye-e6ff0',\r\n    storageBucket: 'pappaye-e6ff0.firebasestorage.app',\r\n    messagingSenderId: '707692637016',\r\n    appId: '1:707692637016:web:a9cc3dbecb8ffbb047d32d',\r\n    measurementId: 'G-06XSGEGF81'\r\n  };\r\n\r\n  initializeApp(firebaseConfig);\r\n  const auth = getAuth();\r\n\r\n  const form = document.getElementById('ppe-form-1');\r\n  const email = document.getElementById('ppe-email-1');\r\n  const pass = document.getElementById('ppe-pass-1');\r\n  const pass2 = document.getElementById('ppe-pass2-1');\r\n  const btn = document.getElementById('ppe-btn-1');\r\n  const btnLabel = document.getElementById('ppe-btn-label-1');\r\n  const btnIco = document.getElementById('ppe-btn-ico-1');\r\n  const spinner = document.getElementById('ppe-spinner-1');\r\n  const okBox = document.getElementById('ppe-ok-1');\r\n  const okBody = document.getElementById('ppe-ok-body-1');\r\n  const koBox = document.getElementById('ppe-ko-1');\r\n  const koBody = document.getElementById('ppe-ko-body-1');\r\n\r\n  const criteria = {\r\n    c1: document.getElementById('ppe-c1-1'),\r\n    c2: document.getElementById('ppe-c2-1'),\r\n    c3: document.getElementById('ppe-c3-1'),\r\n    c4: document.getElementById('ppe-c4-1'),\r\n    c5: document.getElementById('ppe-c5-1'),\r\n    c6: document.getElementById('ppe-c6-1')\r\n  };\r\n\r\n  const errorMap = {\r\n    'auth\/email-already-in-use': 'Cet email est d\u00e9j\u00e0 utilis\u00e9.',\r\n    'auth\/invalid-email': 'Email invalide.',\r\n    'auth\/weak-password': 'Le mot de passe est trop faible.',\r\n    'auth\/network-request-failed': 'Probl\u00e8me r\u00e9seau, r\u00e9essaie.',\r\n    'auth\/operation-not-allowed': 'La connexion email\/mot de passe doit \u00eatre activ\u00e9e dans Firebase.'\r\n  };\r\n\r\n  const STEP2_URL = '\/profil-etudiant-step2\/';\r\n\r\n  function isUclStudentEmail(value) {\r\n    if (!value) return false;\r\n    if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$\/.test(value)) return false;\r\n    const domain = value.split('@')[1].toLowerCase();\r\n    const allowed = ['student.uclouvain.be', 'etudiant.uclouvain.be', 'student.ucl.be', 'etudiant.ucl.be', 'student.vinci.be', 'student.ephec.be', 'student.helha.be'];\r\n    return allowed.some((item) => domain === item || domain.endsWith('.' + item));\r\n  }\r\n\r\n  function getRules(value) {\r\n    return {\r\n      length: value.length >= 12,\r\n      upper: \/[A-Z]\/.test(value),\r\n      lower: \/[a-z]\/.test(value),\r\n      digit: \/\\d\/.test(value),\r\n      special: \/[^A-Za-z0-9]\/.test(value)\r\n    };\r\n  }\r\n\r\n  function strongPassword(value) {\r\n    const rules = getRules(value);\r\n    return rules.length && rules.upper && rules.lower && rules.digit && rules.special;\r\n  }\r\n\r\n  function setError(el, id, on, message) {\r\n    const box = document.getElementById(id);\r\n    el.classList.toggle('err', on);\r\n    box.textContent = on ? message : '';\r\n    box.classList.toggle('show', on);\r\n  }\r\n\r\n  function updateCriteria() {\r\n    const rules = getRules(pass.value);\r\n    criteria.c1.classList.toggle('ok', rules.length);\r\n    criteria.c2.classList.toggle('ok', rules.upper);\r\n    criteria.c3.classList.toggle('ok', rules.lower);\r\n    criteria.c4.classList.toggle('ok', rules.digit);\r\n    criteria.c5.classList.toggle('ok', rules.special);\r\n    criteria.c6.classList.toggle('ok', pass.value.length > 0 && pass.value === pass2.value);\r\n  }\r\n\r\n  function isReady() {\r\n    return isUclStudentEmail(email.value.trim()) && strongPassword(pass.value) && pass.value === pass2.value && pass2.value.length > 0;\r\n  }\r\n\r\n  function refreshButton() {\r\n    const ready = isReady();\r\n    btn.disabled = !ready;\r\n    btn.classList.toggle('ready', ready);\r\n    btnLabel.textContent = ready ? 'Compte pr\u00eat \u00e0 cr\u00e9er' : 'Cr\u00e9er mon compte';\r\n  }\r\n\r\n  function validate() {\r\n    let ok = true;\r\n    const emailOk = isUclStudentEmail(email.value.trim());\r\n    setError(email, 'ppe-email-1-err', !emailOk, 'Utilise ton email \u00e9tudiant UCL.');\r\n    ok = ok && emailOk;\r\n\r\n    const passOk = strongPassword(pass.value);\r\n    setError(pass, 'ppe-pass-1-err', !passOk, 'Le mot de passe ne respecte pas les r\u00e8gles.');\r\n    ok = ok && passOk;\r\n\r\n    const confirmOk = pass.value === pass2.value && pass2.value.length > 0;\r\n    setError(pass2, 'ppe-pass2-1-err', !confirmOk, 'Les deux mots de passe doivent \u00eatre identiques.');\r\n    ok = ok && confirmOk;\r\n\r\n    updateCriteria();\r\n    refreshButton();\r\n    return ok;\r\n  }\r\n\r\n  function showMessage(type, html) {\r\n    okBox.classList.remove('show');\r\n    koBox.classList.remove('show');\r\n    if (type === 'ok') {\r\n      okBody.innerHTML = html;\r\n      okBox.classList.add('show');\r\n      okBox.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\r\n      return;\r\n    }\r\n    koBody.innerHTML = html;\r\n    koBox.classList.add('show');\r\n    koBox.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\r\n  }\r\n\r\n  function setLoading(on) {\r\n    btn.disabled = on || !isReady();\r\n    spinner.style.display = on ? 'block' : 'none';\r\n    btnIco.style.display = on ? 'none' : 'inline';\r\n    btnLabel.textContent = on ? 'Cr\u00e9ation en cours\u2026' : (isReady() ? 'Compte pr\u00eat \u00e0 cr\u00e9er' : 'Cr\u00e9er mon compte');\r\n  }\r\n\r\n  [email, pass, pass2].forEach((el) => {\r\n    el.addEventListener('input', validate);\r\n    el.addEventListener('change', validate);\r\n  });\r\n\r\n  form.addEventListener('submit', async (event) => {\r\n    event.preventDefault();\r\n    if (!validate()) {\r\n      const first = document.querySelector('#ppe-auth1 .err');\r\n      if (first) first.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n      return;\r\n    }\r\n\r\n    setLoading(true);\r\n\r\n    try {\r\n      const credential = await createUserWithEmailAndPassword(auth, email.value.trim(), pass.value);\r\n      let verificationError = null;\r\n      try {\r\n        await sendEmailVerification(credential.user);\r\n      } catch (verifError) {\r\n        console.error('Email verification:', verifError);\r\n        verificationError = verifError;\r\n      }\r\n      if (verificationError) {\r\n        showMessage('ko',\r\n          'Ton compte a \u00e9t\u00e9 cr\u00e9\u00e9, mais l\\'email de v\u00e9rification n\\'a pas pu \u00eatre envoy\u00e9 (' +\r\n          (errorMap[verificationError.code] || verificationError.message || 'erreur inconnue') + ').<br>' +\r\n          'Tu pourras en redemander un depuis la page de connexion avant d\\'imprimer.'\r\n        );\r\n      } else {\r\n        showMessage('ok',\r\n          'Ton compte a \u00e9t\u00e9 cr\u00e9\u00e9 avec succ\u00e8s.<br><br>' +\r\n          '<strong>Email :<\/strong> ' + credential.user.email + '<br>' +\r\n          'Un email de v\u00e9rification a \u00e9t\u00e9 envoy\u00e9 \u2014 clique sur le lien re\u00e7u (v\u00e9rifie aussi les spams). ' +\r\n          'Tu ne pourras pas imprimer tant que ton email n\\'est pas v\u00e9rifi\u00e9.<br>' +\r\n          'Passe maintenant \u00e0 l\\'\u00e9tape 2 pour compl\u00e9ter ton profil \u00e9tudiant.'\r\n        );\r\n      }\r\n      form.reset();\r\n      updateCriteria();\r\n      refreshButton();\r\n\r\n      \/\/ Attendre que Firebase persiste la session dans IndexedDB avant de naviguer.\r\n      \/\/ Sans cette attente, step2 lit un IndexedDB vide \u2192 onAuthStateChanged(null) \u2192 redirect login.\r\n      await new Promise(function (resolve) {\r\n        var unsub = onAuthStateChanged(auth, function (user) {\r\n          if (user) { unsub(); resolve(); }\r\n        });\r\n      });\r\n      window.location.href = STEP2_URL;\r\n    } catch (error) {\r\n      console.error(error);\r\n      showMessage('ko', errorMap[error.code] || error.message || 'Erreur inconnue.');\r\n    } finally {\r\n      setLoading(false);\r\n    }\r\n  });\r\n\r\n  updateCriteria();\r\n  refreshButton();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-3882","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/pappaye.be\/en\/createaccount\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_GB\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Pappaye - Impression gratuite pout \u00e9tudiants\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"createAccountStep1 - Pappaye\" \/>\n\t\t<meta property=\"og:description\" content=\"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/pappaye.be\/en\/createaccount\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-05-22T21:38:43+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-15T09:21:20+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"createAccountStep1 - Pappaye\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/pappaye.be\\\/en\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#listItem\",\"name\":\"createAccountStep1\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#listItem\",\"position\":2,\"name\":\"createAccountStep1\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/#listItem\",\"name\":\"Home\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/#organization\",\"name\":\"Pappaye\",\"description\":\"Impression gratuite pout \\u00e9tudiants\",\"url\":\"https:\\\/\\\/pappaye.be\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/pappaye.be\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/Unknown-removebg-preview.png\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#organizationLogo\",\"width\":500,\"height\":500},\"image\":{\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#organizationLogo\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#webpage\",\"url\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/\",\"name\":\"createAccountStep1 - Pappaye\",\"description\":\"Cr\\u00e9er un compte \\u00e9tudiant \\u00c9tape 1: email \\u00e9tudiant et mot de passe Firebase. Tes identifiants Email \\u00e9tudiant * @student.uclouvain.be \\\/ @student.ephec.be \\\/ @student.helha.be \\\/ \\u2026 Utilise ton adresse email \\u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\\u00e8gles. Confirmer le mot de passe * Les deux mots\",\"inLanguage\":\"en-GB\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/createaccount\\\/#breadcrumblist\"},\"datePublished\":\"2026-05-22T22:38:43+01:00\",\"dateModified\":\"2026-10-15T10:21:20+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/pappaye.be\\\/en\\\/\",\"name\":\"Pappaye\",\"description\":\"Impression gratuite pout \\u00e9tudiants\",\"inLanguage\":\"en-GB\",\"publisher\":{\"@id\":\"https:\\\/\\\/pappaye.be\\\/en\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"createAccountStep1 - Pappaye","description":"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots","canonical_url":"https:\/\/pappaye.be\/en\/createaccount\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/pappaye.be\/en\/createaccount\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/pappaye.be\/en\/#listItem","position":1,"name":"Home","item":"https:\/\/pappaye.be\/en\/","nextItem":{"@type":"ListItem","@id":"https:\/\/pappaye.be\/en\/createaccount\/#listItem","name":"createAccountStep1"}},{"@type":"ListItem","@id":"https:\/\/pappaye.be\/en\/createaccount\/#listItem","position":2,"name":"createAccountStep1","previousItem":{"@type":"ListItem","@id":"https:\/\/pappaye.be\/en\/#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/pappaye.be\/en\/#organization","name":"Pappaye","description":"Impression gratuite pout \u00e9tudiants","url":"https:\/\/pappaye.be\/en\/","logo":{"@type":"ImageObject","url":"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png","@id":"https:\/\/pappaye.be\/en\/createaccount\/#organizationLogo","width":500,"height":500},"image":{"@id":"https:\/\/pappaye.be\/en\/createaccount\/#organizationLogo"}},{"@type":"WebPage","@id":"https:\/\/pappaye.be\/en\/createaccount\/#webpage","url":"https:\/\/pappaye.be\/en\/createaccount\/","name":"createAccountStep1 - Pappaye","description":"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots","inLanguage":"en-GB","isPartOf":{"@id":"https:\/\/pappaye.be\/en\/#website"},"breadcrumb":{"@id":"https:\/\/pappaye.be\/en\/createaccount\/#breadcrumblist"},"datePublished":"2026-05-22T22:38:43+01:00","dateModified":"2026-10-15T10:21:20+01:00"},{"@type":"WebSite","@id":"https:\/\/pappaye.be\/en\/#website","url":"https:\/\/pappaye.be\/en\/","name":"Pappaye","description":"Impression gratuite pout \u00e9tudiants","inLanguage":"en-GB","publisher":{"@id":"https:\/\/pappaye.be\/en\/#organization"}}]},"og:locale":"en_GB","og:site_name":"Pappaye - Impression gratuite pout \u00e9tudiants","og:type":"article","og:title":"createAccountStep1 - Pappaye","og:description":"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots","og:url":"https:\/\/pappaye.be\/en\/createaccount\/","og:image":"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png","og:image:secure_url":"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png","article:published_time":"2026-05-22T21:38:43+00:00","article:modified_time":"2026-10-15T09:21:20+00:00","twitter:card":"summary_large_image","twitter:title":"createAccountStep1 - Pappaye","twitter:description":"Cr\u00e9er un compte \u00e9tudiant \u00c9tape 1: email \u00e9tudiant et mot de passe Firebase. Tes identifiants Email \u00e9tudiant * @student.uclouvain.be \/ @student.ephec.be \/ @student.helha.be \/ \u2026 Utilise ton adresse email \u00e9tudiante (@student.* ou @etudiant.*). Mot de passe * Le mot de passe ne respecte pas les r\u00e8gles. Confirmer le mot de passe * Les deux mots","twitter:image":"https:\/\/pappaye.be\/wp-content\/uploads\/2025\/09\/Unknown-removebg-preview.png"},"aioseo_meta_data":{"post_id":"3882","title":"#post_title #separator_sa #site_title","description":"#post_content","keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"WebPage","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":[],"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-05-22 21:38:44","updated":"2026-10-15 09:32:07","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/pappaye.be\/en\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tcreateAccountStep1\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/pappaye.be\/en\/"},{"label":"createAccountStep1","link":"https:\/\/pappaye.be\/en\/createaccount\/"}],"_links":{"self":[{"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/pages\/3882","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/comments?post=3882"}],"version-history":[{"count":66,"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/pages\/3882\/revisions"}],"predecessor-version":[{"id":4865,"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/pages\/3882\/revisions\/4865"}],"wp:attachment":[{"href":"https:\/\/pappaye.be\/en\/wp-json\/wp\/v2\/media?parent=3882"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}