From 4aa8370ec3aa4ec0a305ee2cb94dd4057444a6c6 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Thu, 20 Jun 2024 23:56:46 -0400 Subject: [PATCH] content/join: push javascript to dedicated file --- basewiki/join.js | 85 +++++++++++++++++++++++++++++++++++++++++ content/footer.pot | 2 +- content/index.pot | 2 +- content/join.fr.po | 83 ++-------------------------------------- content/join.html | 89 +------------------------------------------ content/join.pot | 44 +-------------------- content/platforms.pot | 2 +- content/sidebar.pot | 2 +- 8 files changed, 95 insertions(+), 214 deletions(-) create mode 100644 basewiki/join.js diff --git a/basewiki/join.js b/basewiki/join.js new file mode 100644 index 0000000..c55a592 --- /dev/null +++ b/basewiki/join.js @@ -0,0 +1,85 @@ + async function checkDuplicate() { + var url='https://lab.ilot.io/api/v4/projects/99/issues'; + var email = document.getElementById("email").value; + + const response = await fetch(url, { + headers: { + 'PRIVATE-TOKEN': 'glpat-RaoZSW_3XMhkGr19k6Wv', + 'Content-Type': 'application/json', + }, + }) + const result = await response.json(); + let index = result + .findIndex(item => item.title === email); + + if (index !== -1) { + return true; + } else { + return false; + } + } + + async function createIssue() { + var baseurl = 'https://lab.ilot.io/api/v4/projects/99/issues?&labels=Request'; + var emptyfield = document.getElementById("emptyfield").value; + var mathspamtrap = document.getElementById("math-spam-trap").value; + var agreetoterms = document.getElementById("agree-to-terms").checked; + var email = document.getElementById("email").value; + + if(!agreetoterms) { + alert("Registration requires agreement of Code of Conduct"); + return false; + } + + if(!email) { + alert("Email cannot be empty"); + return false; + } + + if(emptyfield) { + alert("Empty field should be empty"); + return false; + } + + if(mathspamtrap != "9") { + alert("Wrong math answer"); + return false; + } + + if(await checkDuplicate(email) === true) { + alert("This email address has already requested an account"); + return false; + } + + var name = document.getElementById("name").value; + var name = name.replace (/^/,'Name: '); + var aboutme = document.getElementById("about-me").value; + var aboutme = aboutme.replace (/^/,'About me: '); + var aboutme = aboutme.replace(/\r?\n/g, "%0A%0A"); + var howfound = document.getElementById("how-found").value; + var howfound = howfound.replace (/^/,'How I found ilot: '); + var howfound = howfound.replace(/\r?\n/g, "%0A%0A"); + // add back on oc is setup + // var ocuser = document.getElementById("oc-user").value; + // var ocuser = ocuser.replace (/^/,'OpenCollective Profile: '); + // var description = name + "%0A%0A" + aboutme + "%0A%0A" + howfound + "%0A%0A" + ocuser; + var description = name + "%0A%0A" + aboutme + "%0A%0A" + howfound; + var url = baseurl.concat("&title=", email, "&description=", description); + console.log('Description:', description); + + fetch(url, { + method: 'POST', + headers: { + 'PRIVATE-TOKEN': 'glpat-RaoZSW_3XMhkGr19k6Wv', + 'Content-Type': 'application/json', + }, + }) + .then(response => response.json()) + .then(result => { + console.log('Success:', result); + alert("Request submitted. A working group member will process your registration shortly. If you receive no contact within seven days of registration, please send an email to support@ilot.io"); + }) + .catch(error => { + console.error('Error:', error) + }); + } diff --git a/content/footer.pot b/content/footer.pot index d82ee1d..6060afc 100644 --- a/content/footer.pot +++ b/content/footer.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2024-06-20 22:14-0400\n" +"POT-Creation-Date: 2024-06-20 23:55-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/content/index.pot b/content/index.pot index cfdd398..aa4f747 100644 --- a/content/index.pot +++ b/content/index.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2024-06-20 22:14-0400\n" +"POT-Creation-Date: 2024-06-20 23:55-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/content/join.fr.po b/content/join.fr.po index 85684d0..6bdd13e 100644 --- a/content/join.fr.po +++ b/content/join.fr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: ilot.io\n" -"POT-Creation-Date: 2024-06-20 21:50-0400\n" +"POT-Creation-Date: 2024-06-20 23:55-0400\n" "PO-Revision-Date: 2024-06-20 21:54-0400\n" "Last-Translator: \n" "Language-Team: dev@ayakael.net\n" @@ -21,84 +21,6 @@ msgstr "" msgid "[[!meta title=\"Join\"]]" msgstr "[[!meta title=\"Se joindre\"]]" -#. type: Content of: +

Registration Form

diff --git a/content/join.pot b/content/join.pot index 3478b25..fa7926d 100644 --- a/content/join.pot +++ b/content/join.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2024-06-20 22:14-0400\n" +"POT-Creation-Date: 2024-06-20 23:55-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -20,48 +20,6 @@ msgstr "" msgid "[[!meta title=\"Join\"]]" msgstr "" -#. type: Content of: