Compare commits
6 commits
footer/sub
...
main
Author | SHA1 | Date | |
---|---|---|---|
a398d3a6d9 | |||
|
76360bcc2f | ||
78a1b6627f | |||
aec1460de9 | |||
2f88882e0d | |||
1fb1da0413 |
23 changed files with 171 additions and 126 deletions
|
@ -11,12 +11,11 @@ jobs:
|
||||||
- name: Environment setup
|
- name: Environment setup
|
||||||
run: |
|
run: |
|
||||||
apk add git nodejs jq coreutils curl tree gawk grep
|
apk add git nodejs jq coreutils curl tree gawk grep
|
||||||
- name: Public repo pull
|
- name: Pages repo pull
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
token: ${{ secrets.PAGES_TOKEN }}
|
ref: pages
|
||||||
ref: public
|
|
||||||
- name: Render website
|
- name: Render website
|
||||||
run: |
|
run: |
|
||||||
export GITHUB_PR_NAME=$(grep -l ${{ github.sha }} previews/*/git_sha.txt | awk -F '/' '{print $2}')
|
export GITHUB_PR_NAME=$(grep -l ${{ github.sha }} previews/*/git_sha.txt | awk -F '/' '{print $2}')
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- 'public'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
deploy:
|
|
||||||
runs-on: x86_64
|
|
||||||
container: alpine:latest
|
|
||||||
env:
|
|
||||||
GIT_SSH_COMMAND: ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
|
|
||||||
steps:
|
|
||||||
- name: Environment setup
|
|
||||||
run: |
|
|
||||||
apk add git nodejs openssh-client-common openssh-client-default
|
|
||||||
- name: Start ssh-agent
|
|
||||||
uses: actions/ssh-agent@v0.9.0
|
|
||||||
with:
|
|
||||||
ssh-private-key: ${{ secrets.PAGES_PRIVKEY }}
|
|
||||||
- name: Repo pull
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
- name: Website upload
|
|
||||||
run: |
|
|
||||||
git remote set-url origin ${{ vars.PAGES_TARGET }}
|
|
||||||
git push -f
|
|
|
@ -11,28 +11,27 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Environment setup
|
- name: Environment setup
|
||||||
run: |
|
run: |
|
||||||
apk add git ikiwiki po4a perl-yaml-tiny tree nodejs
|
apk add git ikiwiki po4a perl-yaml-tiny tree nodejs imagemagick-perlmagick imagemagick imagemagick-jpeg findutils bash imagemagick-webp
|
||||||
- name: Repo pull
|
- name: Repo pull
|
||||||
uses: https://github.com/actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 1
|
fetch-depth: 1
|
||||||
token: ${{ secrets.PAGES_TOKEN }}
|
- name: Pages repo pull
|
||||||
- name: Public repo pull
|
uses: actions/checkout@v4
|
||||||
uses: https://github.com/actions/checkout@v4
|
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
ref: public
|
ref: pages
|
||||||
path: public
|
path: public
|
||||||
token: ${{ secrets.PAGES_TOKEN }}
|
|
||||||
- name: Render website
|
- name: Render website
|
||||||
run: ikiwiki --setup ikiwiki.setup
|
run: ikiwiki --setup ikiwiki.setup
|
||||||
- name: Website upload
|
- name: Website upload
|
||||||
run: |
|
run: |
|
||||||
rm -Rf public/.forgejo
|
cp .pages-domains public/.domains
|
||||||
mkdir -p public/.forgejo/workflows
|
cp .pages-redirect public/_redirects
|
||||||
cp .forgejo/workflows/deploy.yaml public/.forgejo/workflows/.
|
|
||||||
git log -1 --pretty=%B > commit.txt
|
git log -1 --pretty=%B > commit.txt
|
||||||
cd public
|
cd public
|
||||||
|
find -name 'index.html' -type 'l' -delete
|
||||||
|
find -name 'index.fr.html' -exec bash -c 'ln -s "${0/.*\/}" "${0/.fr/}"' {} \;
|
||||||
date > generated.txt
|
date > generated.txt
|
||||||
# Note: the following account information will not work on GHES
|
# Note: the following account information will not work on GHES
|
||||||
git config user.name "forgejo-actions[bot]"
|
git config user.name "forgejo-actions[bot]"
|
||||||
|
|
|
@ -10,20 +10,18 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Environment setup
|
- name: Environment setup
|
||||||
run: |
|
run: |
|
||||||
apk add git ikiwiki po4a perl-yaml-tiny tree nodejs jq coreutils curl
|
apk add git ikiwiki po4a perl-yaml-tiny tree nodejs jq coreutils curl imagemagick-perlmagick imagemagick imagemagick-jpeg findutils bash imagemagick-webp
|
||||||
echo "GITHUB_PR_NAME=$(curl -Ls ${{ github.server_url }}/api/v1/repos/${{ github.repository }}/pulls/${{ github.ref_name }} | jq .title | tr ' ' '-' | tr -d ':' | tr -d '"' | tr '[:upper:]' '[:lower:]' | tr '/' '-')" >> $GITHUB_ENV
|
echo "GITHUB_PR_NAME=$(curl -Ls ${{ github.server_url }}/api/v1/repos/${{ github.repository }}/pulls/${{ github.ref_name }} -H 'accept: application/json' -H 'Authorization: token ${{ secrets.FORGEJO_TOKEN }}' | jq .title | tr ' ' '-' | tr -d ':' | tr -d '"' | tr '[:upper:]' '[:lower:]' | tr '/' '-' | tr -d ',')" >> $GITHUB_ENV
|
||||||
- name: Repo pull
|
- name: Repo pull
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 1
|
fetch-depth: 1
|
||||||
token: ${{ secrets.PAGES_TOKEN }}
|
|
||||||
- name: Public repo pull
|
- name: Public repo pull
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
ref: public
|
ref: pages
|
||||||
path: public
|
path: public
|
||||||
token: ${{ secrets.PAGES_TOKEN }}
|
|
||||||
- name: Render website
|
- name: Render website
|
||||||
run: |
|
run: |
|
||||||
rm -rf public/previews/$GITHUB_PR_NAME || true
|
rm -rf public/previews/$GITHUB_PR_NAME || true
|
||||||
|
@ -32,11 +30,11 @@ jobs:
|
||||||
ikiwiki --setup ikiwiki.setup
|
ikiwiki --setup ikiwiki.setup
|
||||||
cd public/previews
|
cd public/previews
|
||||||
tree -d -H '.' -L 1 --noreport --charset utf-8 -T "Versions" -o index.html
|
tree -d -H '.' -L 1 --noreport --charset utf-8 -T "Versions" -o index.html
|
||||||
|
cd $GITHUB_PR_NAME
|
||||||
|
find -name 'index.html' -type 'l' -delete
|
||||||
|
find -name 'index.fr.html' -exec bash -c 'ln -s "${0/.*\/}" "${0/.fr/}"' {} \;
|
||||||
- name: Website upload
|
- name: Website upload
|
||||||
run: |
|
run: |
|
||||||
rm -Rf public/.forgejo
|
|
||||||
mkdir -p public/.forgejo/workflows
|
|
||||||
cp .forgejo/workflows/deploy.yaml public/.forgejo/workflows/.
|
|
||||||
git log -1 --pretty=%B > commit.txt
|
git log -1 --pretty=%B > commit.txt
|
||||||
cd public
|
cd public
|
||||||
date > previews/$GITHUB_PR_NAME/generated.txt
|
date > previews/$GITHUB_PR_NAME/generated.txt
|
||||||
|
|
1
.pages-domains
Normal file
1
.pages-domains
Normal file
|
@ -0,0 +1 @@
|
||||||
|
www.ilot.io
|
0
.pages-redirect
Normal file
0
.pages-redirect
Normal file
BIN
footer.fr.mo
BIN
footer.fr.mo
Binary file not shown.
20
footer.fr.po
20
footer.fr.po
|
@ -7,8 +7,8 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: ilot.io\n"
|
"Project-Id-Version: ilot.io\n"
|
||||||
"POT-Creation-Date: 2025-03-13 17:34-0400\n"
|
"POT-Creation-Date: 2025-06-12 16:36-0400\n"
|
||||||
"PO-Revision-Date: 2025-03-13 17:36-0400\n"
|
"PO-Revision-Date: 2025-06-12 16:44-0400\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: dev@ayakael.net\n"
|
"Language-Team: dev@ayakael.net\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
|
@ -19,7 +19,7 @@ msgstr ""
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><h5>
|
#. type: Content of: <p><div><div><div><h5>
|
||||||
msgid "Support"
|
msgid "Support"
|
||||||
msgstr "Soutient"
|
msgstr "Soutien"
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><ul><li>
|
#. type: Content of: <p><div><div><div><ul><li>
|
||||||
msgid "[[FAQs|https://support.ilot.io/en/hc/706927618]]"
|
msgid "[[FAQs|https://support.ilot.io/en/hc/706927618]]"
|
||||||
|
@ -31,7 +31,7 @@ msgstr "[[Problèmes connus|https://forge.ilot.io/ilot/-/projects/3]]"
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><ul><li>
|
#. type: Content of: <p><div><div><div><ul><li>
|
||||||
msgid "[[Support ticket|https://support.ilot.io/help/706927618]]"
|
msgid "[[Support ticket|https://support.ilot.io/help/706927618]]"
|
||||||
msgstr "[[Soutient technique|https://support.ilot.io/help/706927618]]"
|
msgstr "[[Soutien technique|https://support.ilot.io/help/706927618]]"
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><h5>
|
#. type: Content of: <p><div><div><div><h5>
|
||||||
msgid "Contribute"
|
msgid "Contribute"
|
||||||
|
@ -87,8 +87,8 @@ msgstr ""
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><form>
|
#. type: Content of: <p><div><div><div><form>
|
||||||
msgid ""
|
msgid ""
|
||||||
"<input type=\"hidden\" name=\"nonce\" /> <input id=\"9c490\" type=\"hidden\" "
|
"<input type=\"hidden\" name=\"nonce\" /> <input id=\"39425\" type=\"hidden\" "
|
||||||
"name=\"l\" value=\"9c490957-b50b-4162-898d-92259e350cd6\" />"
|
"name=\"l\" value=\"39425113-44b5-46f7-9897-91151467b05f\" />"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><form><div>
|
#. type: Content of: <p><div><div><div><form><div>
|
||||||
|
@ -129,6 +129,14 @@ msgstr ""
|
||||||
"dismiss=\"modal\">Fermer</button> <button aria-label=\"Subscribe\" "
|
"dismiss=\"modal\">Fermer</button> <button aria-label=\"Subscribe\" "
|
||||||
"class=\"btn\" type=\"submit\">S'abonner</button>"
|
"class=\"btn\" type=\"submit\">S'abonner</button>"
|
||||||
|
|
||||||
|
#. type: Content of: <p><div><div><div><p>
|
||||||
|
msgid ""
|
||||||
|
"Ilot is a <a href=\"https://gripuqam.org\" target=\"_blank\">GRIP-UQAM</a> "
|
||||||
|
"working group"
|
||||||
|
msgstr ""
|
||||||
|
"Ilot est un comité du <a href=\"https://gripuqam.org\" "
|
||||||
|
"target=\"_blank\">GRIP-UQAM"
|
||||||
|
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
#~| msgid "[[Wiki|https://wiki.ilot.io]]"
|
#~| msgid "[[Wiki|https://wiki.ilot.io]]"
|
||||||
#~ msgid "Powered by [[ikiwiki|http://ikiwiki.info/]]."
|
#~ msgid "Powered by [[ikiwiki|http://ikiwiki.info/]]."
|
||||||
|
|
|
@ -48,7 +48,7 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<input type="hidden" name="nonce" />
|
<input type="hidden" name="nonce" />
|
||||||
<input id="9c490" type="hidden" name="l" value="9c490957-b50b-4162-898d-92259e350cd6" />
|
<input id="39425" type="hidden" name="l" value="39425113-44b5-46f7-9897-91151467b05f" />
|
||||||
<div class="t">
|
<div class="t">
|
||||||
<input aria-label="Email" class="btn" type="email" name="email" required placeholder="E-mail" />
|
<input aria-label="Email" class="btn" type="email" name="email" required placeholder="E-mail" />
|
||||||
</div>
|
</div>
|
||||||
|
@ -74,6 +74,9 @@
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-12 text-center">
|
||||||
|
<hr />
|
||||||
|
<p>Ilot is a <a href="https://gripuqam.org" target="_blank">GRIP-UQAM</a> working group</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</p>
|
</p>
|
||||||
|
|
12
footer.pot
12
footer.pot
|
@ -7,7 +7,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2025-03-13 17:34-0400\n"
|
"POT-Creation-Date: 2025-06-12 16:45-0400\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -86,8 +86,8 @@ msgstr ""
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><form>
|
#. type: Content of: <p><div><div><div><form>
|
||||||
msgid ""
|
msgid ""
|
||||||
"<input type=\"hidden\" name=\"nonce\" /> <input id=\"9c490\" type=\"hidden\" "
|
"<input type=\"hidden\" name=\"nonce\" /> <input id=\"39425\" type=\"hidden\" "
|
||||||
"name=\"l\" value=\"9c490957-b50b-4162-898d-92259e350cd6\" />"
|
"name=\"l\" value=\"39425113-44b5-46f7-9897-91151467b05f\" />"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. type: Content of: <p><div><div><div><form><div>
|
#. type: Content of: <p><div><div><div><form><div>
|
||||||
|
@ -119,3 +119,9 @@ msgid ""
|
||||||
"data-bs-dismiss=\"modal\">Close</button> <button aria-label=\"Subscribe\" "
|
"data-bs-dismiss=\"modal\">Close</button> <button aria-label=\"Subscribe\" "
|
||||||
"class=\"btn\" type=\"submit\">Subscribe</button>"
|
"class=\"btn\" type=\"submit\">Subscribe</button>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. type: Content of: <p><div><div><div><p>
|
||||||
|
msgid ""
|
||||||
|
"Ilot is a <a href=\"https://gripuqam.org\" target=\"_blank\">GRIP-UQAM</a> "
|
||||||
|
"working group"
|
||||||
|
msgstr ""
|
||||||
|
|
|
@ -46,6 +46,7 @@ add_plugins:
|
||||||
- typography
|
- typography
|
||||||
- sidebar2
|
- sidebar2
|
||||||
- po
|
- po
|
||||||
|
- inline
|
||||||
# plugins to disable
|
# plugins to disable
|
||||||
disable_plugins:
|
disable_plugins:
|
||||||
- htmlscrubber
|
- htmlscrubber
|
||||||
|
|
BIN
index.fr.mo
BIN
index.fr.mo
Binary file not shown.
54
index.fr.po
54
index.fr.po
|
@ -5,15 +5,15 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: ilot.io\n"
|
"Project-Id-Version: ilot.io\n"
|
||||||
"POT-Creation-Date: 2024-09-08 12:28-0400\n"
|
"POT-Creation-Date: 2025-06-12 16:42-0400\n"
|
||||||
"PO-Revision-Date: 2024-09-08 12:33-0400\n"
|
"PO-Revision-Date: 2025-06-12 16:45-0400\n"
|
||||||
"Last-Translator: Philippe Batailler <philippe.batailler@free.fr>\n"
|
"Last-Translator: Philippe Batailler <philippe.batailler@free.fr>\n"
|
||||||
"Language-Team: dev@ayakael.net\n"
|
"Language-Team: dev@ayakael.net\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Generator: Poedit 3.4.3\n"
|
"X-Generator: Poedit 3.5\n"
|
||||||
|
|
||||||
#. type: Plain text
|
#. type: Plain text
|
||||||
#, no-wrap
|
#, no-wrap
|
||||||
|
@ -37,49 +37,23 @@ msgstr ""
|
||||||
|
|
||||||
#. type: Plain text
|
#. type: Plain text
|
||||||
msgid ""
|
msgid ""
|
||||||
"[[ilot|https://ilot.io]] is a cooperative corner of the internet. We operate "
|
"[[ilot|https://ilot.io]] is a cooperative corner of the internet. We operate a Nextcloud instance, a free and open-source collaboration platform analoguous to Google Drive. We aim to eventually incorporate as a cooperative to create a digital infrastructure that is by and for its users as an "
|
||||||
"a Nextcloud instance, a free and open-source collaboration platform "
|
"alternative to the siloed and privatized internet of today. Members fund our operations and decide how to set our community policies, steward our data, and manage our shared technologies. Members also provide the labor to run ilot at all levels."
|
||||||
"analoguous to Google Drive. We aim to eventually incorporate as a "
|
|
||||||
"cooperative to create a digital infrastructure that is by and for its users "
|
|
||||||
"as an alternative to the siloed and privatized internet of today. Members "
|
|
||||||
"fund our operations and decide how to set our community policies, steward "
|
|
||||||
"our data, and manage our shared technologies. Members also provide the labor "
|
|
||||||
"to run ilot at all levels."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"[[ilot|https://ilot.io]] est une isle coopérative de l'internet. Nous "
|
"[[ilot|https://ilot.io]] est une ile coopérative de l'internet. Nous administrons une instance de Nextcloud, une plateforme libre de travail et de stockage de donnée analogue à Google Drive. Notre objectif est de nous constituer en coopérative afin de créer une infrastructure numérique par et pour "
|
||||||
"administrons une instance de Nextcloud, une plateformes libre de travail et "
|
"ses utilisateur-ice-s, en alternative à l'internet cloisonné et privatisé d'aujourd'hui. Les membres financent nos opérations et décident de la manière de définir nos politiques communautaires, de gérer nos données et nos technologies partagées. Les membres fournissent également la main-d'œuvre "
|
||||||
"de stockage de donnée analogue à Google Drive. Notre objectif est de nous "
|
"nécessaire au fonctionnement de l'ilot à tous les niveaux."
|
||||||
"constituer en coopérative afin de créer une infrastructure numérique par et "
|
|
||||||
"pour ses utilisateur-ice-s, en alternative à l'internet cloisonné et "
|
|
||||||
"privatisé d'aujourd'hui. Les membres financent nos opérations et décident de "
|
|
||||||
"la manière de définir nos politiques communautaires, de gérer nos données et "
|
|
||||||
"nos technologies partagées. Les membres fournissent également la main-"
|
|
||||||
"d'œuvre nécessaire au fonctionnement de l'ilot à tous les niveaux."
|
|
||||||
|
|
||||||
#. type: Plain text
|
#. type: Plain text
|
||||||
msgid ""
|
msgid "The project is currently in beta, as there is still a lot of work left to do. While the technical infrastructure is setup and stable, the governance and community guidelines are still a work in progress. If you are interested in joining ilot, visit our [[registration form|join]]."
|
||||||
"The project is currently in beta, as there is still a lot of work left to "
|
|
||||||
"do. While the technical infrastructure is setup and stable, the governance "
|
|
||||||
"and community guidelines are still a work in progress. If you are interested "
|
|
||||||
"in joining ilot, visit our [[registration form|join]]."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Le projet est actuellement en version bêta, car il reste encore beaucoup de "
|
"Le projet est actuellement en version bêta, car il reste encore beaucoup de travail à faire. Alors que l'infrastructure technique est mise en place et stable, la gouvernance et les lignes directrices de la communauté sont encore en cours d'élaboration. Si vous souhaitez vous joindre à notre projet, "
|
||||||
"travail à faire. Alors que l'infrastructure technique est mise en place et "
|
"compléter notre [[formulaire d'inscription|join]]."
|
||||||
"stable, la gouvernance et les lignes directrices de la communauté sont "
|
|
||||||
"encore en cours d'élaboration. Si vous souhaitez rejoindre ilot, visitez "
|
|
||||||
"notre [[formulaire d'inscription|join]]."
|
|
||||||
|
|
||||||
#. type: Plain text
|
#. type: Plain text
|
||||||
msgid ""
|
#, no-wrap
|
||||||
"ilot was started in 2021 when AESA-CIRI, the sociology, anthropology and "
|
msgid "ilot was started in 2021 when AESA-CIRI, the sociology, anthropology and immigration studies sudent association of UQAM, wanted to create its own digital infrastructure. Since then, we have worked toward the goal of making the project useful to other organisations and individuals. Since march of 2025, we are a fiscally sponsored by <a href=\"https://gripuqam.org\" target=\"_blank\">GRIP-UQAM</a>.\n"
|
||||||
"immigration studies sudent association of UQAM, wanted to create its own "
|
msgstr "ilot a vu le jour en 2021 lorsque l'AESA-CIRI, l'association des étudiants en sociologie, anthropologie et études de l'immigration de l'UQAM, a voulu créer sa propre infrastructure numérique. Depuis, nous travaillons dans le but de rendre le projet utile à d'autres organisations et individus. Depuis mars 2025, le <a href=\"https://gripuqam.org\" target=\"_blank\">GRIP-UQAM</a> nous héberge fiscalement.\n"
|
||||||
"digital infrastructure. Since then, we have worked toward the goal of making "
|
|
||||||
"the project useful to other organisations and individuals."
|
|
||||||
msgstr ""
|
|
||||||
"ilot a vu le jour en 2021 lorsque l'AESA-CIRI, l'association des étudiants "
|
|
||||||
"en sociologie, anthropologie et études de l'immigration de l'UQAM, a voulu "
|
|
||||||
"créer sa propre infrastructure numérique. Depuis, nous travaillons dans le "
|
|
||||||
"but de rendre le projet utile à d'autres organisations et individus."
|
|
||||||
|
|
||||||
#. type: Title ##
|
#. type: Title ##
|
||||||
#, no-wrap
|
#, no-wrap
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
The project is currently in beta, as there is still a lot of work left to do. While the technical infrastructure is setup and stable, the governance and community guidelines are still a work in progress. If you are interested in joining ilot, visit our [[registration form|join]].
|
The project is currently in beta, as there is still a lot of work left to do. While the technical infrastructure is setup and stable, the governance and community guidelines are still a work in progress. If you are interested in joining ilot, visit our [[registration form|join]].
|
||||||
|
|
||||||
ilot was started in 2021 when AESA-CIRI, the sociology, anthropology and immigration studies sudent association of UQAM, wanted to create its own digital infrastructure. Since then, we have worked toward the goal of making the project useful to other organisations and individuals.
|
ilot was started in 2021 when AESA-CIRI, the sociology, anthropology and immigration studies sudent association of UQAM, wanted to create its own digital infrastructure. Since then, we have worked toward the goal of making the project useful to other organisations and individuals. Since march of 2025, we are a fiscally sponsored by <a href="https://gripuqam.org" target="_blank">GRIP-UQAM</a>.
|
||||||
|
|
||||||
## Learn more
|
## Learn more
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2024-09-11 14:44-0400\n"
|
"POT-Creation-Date: 2025-06-12 16:45-0400\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -54,12 +54,14 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. type: Plain text
|
#. type: Plain text
|
||||||
#, markdown-text
|
#, markdown-text, no-wrap
|
||||||
msgid ""
|
msgid ""
|
||||||
"ilot was started in 2021 when AESA-CIRI, the sociology, anthropology and "
|
"ilot was started in 2021 when AESA-CIRI, the sociology, anthropology and "
|
||||||
"immigration studies sudent association of UQAM, wanted to create its own "
|
"immigration studies sudent association of UQAM, wanted to create its own "
|
||||||
"digital infrastructure. Since then, we have worked toward the goal of making "
|
"digital infrastructure. Since then, we have worked toward the goal of making "
|
||||||
"the project useful to other organisations and individuals."
|
"the project useful to other organisations and individuals. Since march of "
|
||||||
|
"2025, we are a fiscally sponsored by <a href=\"https://gripuqam.org\" "
|
||||||
|
"target=\"_blank\">GRIP-UQAM</a>.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. type: Title ##
|
#. type: Title ##
|
||||||
|
|
BIN
join.fr.mo
BIN
join.fr.mo
Binary file not shown.
14
join.fr.po
14
join.fr.po
|
@ -7,19 +7,20 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: ilot.io\n"
|
"Project-Id-Version: ilot.io\n"
|
||||||
"POT-Creation-Date: 2024-10-08 11:35-0400\n"
|
"POT-Creation-Date: 2025-04-03 18:26-0400\n"
|
||||||
"PO-Revision-Date: 2024-10-08 11:29-0400\n"
|
"PO-Revision-Date: 2025-04-03 18:47-0400\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: dev@ayakael.net\n"
|
"Language-Team: dev@ayakael.net\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Generator: Poedit 3.4.3\n"
|
"X-Generator: Poedit 3.5\n"
|
||||||
|
|
||||||
#. type: Content of: outside any tag (error?)
|
#. type: Content of: outside any tag (error?)
|
||||||
msgid "[[!meta title=\"Join\"]]"
|
msgid "[[!meta title=\"Join\"]] [[!inline pages=\"join/join-en\" raw=\"yes\"]]"
|
||||||
msgstr "[[!meta title=\"Se joindre\"]]"
|
msgstr ""
|
||||||
|
"[[!meta title=\"Se joindre\"]] [[!inline pages=\"join/join-fr\" raw=\"yes\"]]"
|
||||||
|
|
||||||
#. type: Content of: <header><h1>
|
#. type: Content of: <header><h1>
|
||||||
msgid "Registration Form"
|
msgid "Registration Form"
|
||||||
|
@ -220,6 +221,9 @@ msgstr ""
|
||||||
"maxlength=\"50\"></p> <input type=\"button\" value=\"Soumettre\" id = "
|
"maxlength=\"50\"></p> <input type=\"button\" value=\"Soumettre\" id = "
|
||||||
"\"submit\" onClick = \"createIssue()\"> </form>"
|
"\"submit\" onClick = \"createIssue()\"> </form>"
|
||||||
|
|
||||||
|
#~ msgid "[[!meta title=\"Join\"]]"
|
||||||
|
#~ msgstr "[[!meta title=\"Se joindre\"]]"
|
||||||
|
|
||||||
#~ msgid ""
|
#~ msgid ""
|
||||||
#~ "async function checkDuplicate() { var url='https://lab.ilot.io/api/v4/"
|
#~ "async function checkDuplicate() { var url='https://lab.ilot.io/api/v4/"
|
||||||
#~ "projects/99/issues'; var email = document.getElementById(\"email\")."
|
#~ "projects/99/issues'; var email = document.getElementById(\"email\")."
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[[!meta title="Join"]]
|
[[!meta title="Join"]]
|
||||||
|
|
||||||
<script src="../js/join.js"></script>
|
[[!inline pages="join/join-en" raw="yes"]]
|
||||||
|
|
||||||
<header class="text-center">
|
<header class="text-center">
|
||||||
<h1 class="post-title">Registration Form</h1>
|
<h1 class="post-title">Registration Form</h1>
|
||||||
|
|
4
join.pot
4
join.pot
|
@ -7,7 +7,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2024-10-08 11:35-0400\n"
|
"POT-Creation-Date: 2025-04-03 18:27-0400\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -17,7 +17,7 @@ msgstr ""
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
#. type: Content of: outside any tag (error?)
|
#. type: Content of: outside any tag (error?)
|
||||||
msgid "[[!meta title=\"Join\"]]"
|
msgid "[[!meta title=\"Join\"]] [[!inline pages=\"join/join-en\" raw=\"yes\"]]"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. type: Content of: <header><h1>
|
#. type: Content of: <header><h1>
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
|
<script>
|
||||||
async function checkDuplicate() {
|
async function checkDuplicate() {
|
||||||
var url='https://lab.ilot.io/api/v4/projects/99/issues';
|
var url='https://forge.ilot.io/api/v1/repos/ilot/registration/issues';
|
||||||
var email = document.getElementById("email").value;
|
var email = document.getElementById("email").value;
|
||||||
|
|
||||||
const response = await fetch(url, {
|
const response = await fetch(url, {
|
||||||
headers: {
|
headers: {
|
||||||
'PRIVATE-TOKEN': 'glpat-RaoZSW_3XMhkGr19k6Wv',
|
'authorization': 'token b8d8617bb6049c0e47b7bba5cd0931799f54609c',
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
@ -20,28 +21,28 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
async function createIssue() {
|
async function createIssue() {
|
||||||
var baseurl = 'https://lab.ilot.io/api/v4/projects/99/issues?&labels=Request';
|
var url = 'https://forge.ilot.io/api/v1/repos/ilot/registration/issues';
|
||||||
var mathspamtrap = document.getElementById("math-spam-trap").value;
|
var mathspamtrap = document.getElementById("math-spam-trap").value;
|
||||||
var agreetoterms = document.getElementById("agree-to-terms").checked;
|
var agreetoterms = document.getElementById("agree-to-terms").checked;
|
||||||
var email = document.getElementById("email").value;
|
var email = document.getElementById("email").value;
|
||||||
|
|
||||||
if(!agreetoterms) {
|
if(!agreetoterms) {
|
||||||
alert("Registration requires agreement of Code of Conduct");
|
alert("Registration requires agreement of Code of Conduct.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!email) {
|
if(!email) {
|
||||||
alert("Email cannot be empty");
|
alert("Email cannot be empty.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(mathspamtrap != "9") {
|
if(mathspamtrap != "9") {
|
||||||
alert("Wrong math answer");
|
alert("Wrong math answer.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(await checkDuplicate(email) === true) {
|
if(await checkDuplicate(email) === true) {
|
||||||
alert("This email address has already requested an account");
|
alert("This email address has already requested an account.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -49,29 +50,28 @@
|
||||||
var name = name.replace (/^/,'Name: ');
|
var name = name.replace (/^/,'Name: ');
|
||||||
var aboutme = document.getElementById("about-me").value;
|
var aboutme = document.getElementById("about-me").value;
|
||||||
var aboutme = aboutme.replace (/^/,'About me: ');
|
var aboutme = aboutme.replace (/^/,'About me: ');
|
||||||
var aboutme = aboutme.replace(/\r?\n/g, "%0A%0A");
|
|
||||||
var howfound = document.getElementById("how-found").value;
|
var howfound = document.getElementById("how-found").value;
|
||||||
var howfound = howfound.replace (/^/,'How I found ilot: ');
|
var howfound = howfound.replace (/^/,'How I found ilot: ');
|
||||||
var howfound = howfound.replace(/\r?\n/g, "%0A%0A");
|
|
||||||
var ocuser = document.getElementById("oc-user").value;
|
var ocuser = document.getElementById("oc-user").value;
|
||||||
var ocuser = ocuser.replace (/^/,'OpenCollective Profile: ');
|
var ocuser = ocuser.replace (/^/,'OpenCollective Profile: ');
|
||||||
var description = name + "%0A%0A" + aboutme + "%0A%0A" + howfound + "%0A%0A" + ocuser;
|
var description = name + "\n\n" + aboutme + "\n\n" + howfound + "\n\n" + ocuser;
|
||||||
var url = baseurl.concat("&title=", email, "&description=", description);
|
|
||||||
console.log('Description:', description);
|
console.log('Description:', description);
|
||||||
|
|
||||||
fetch(url, {
|
fetch(url, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
headers: {
|
headers: {
|
||||||
'PRIVATE-TOKEN': 'glpat-RaoZSW_3XMhkGr19k6Wv',
|
'authorization': 'token b8d8617bb6049c0e47b7bba5cd0931799f54609c',
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
},
|
},
|
||||||
|
body: JSON.stringify({ title: email, body: description }),
|
||||||
})
|
})
|
||||||
.then(response => response.json())
|
.then(response => response.json())
|
||||||
.then(result => {
|
.then(result => {
|
||||||
console.log('Success:', 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");
|
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 => {
|
.catch(error => {
|
||||||
console.error('Error:', error)
|
console.error('Error:', error)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
</script>
|
77
join/join-fr.html
Normal file
77
join/join-fr.html
Normal file
|
@ -0,0 +1,77 @@
|
||||||
|
<script>
|
||||||
|
async function checkDuplicate() {
|
||||||
|
var url='https://forge.ilot.io/api/v1/repos/ilot/registration/issues';
|
||||||
|
var email = document.getElementById("email").value;
|
||||||
|
|
||||||
|
const response = await fetch(url, {
|
||||||
|
headers: {
|
||||||
|
'authorization': 'token b8d8617bb6049c0e47b7bba5cd0931799f54609c',
|
||||||
|
'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 url = 'https://forge.ilot.io/api/v1/repos/ilot/registration/issues';
|
||||||
|
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("Vous devez être en accord avec notre code de conduite.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!email) {
|
||||||
|
alert("Le courriel ne peut pas être vide.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(mathspamtrap != "9") {
|
||||||
|
alert("Ceci n'est pas la bonne réponse à l'exercise mathématique.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(await checkDuplicate(email) === true) {
|
||||||
|
alert("Ce courriel a déjà fait l'objet d'une demande de compte.");
|
||||||
|
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 howfound = document.getElementById("how-found").value;
|
||||||
|
var howfound = howfound.replace (/^/,'How I found ilot: ');
|
||||||
|
var ocuser = document.getElementById("oc-user").value;
|
||||||
|
var ocuser = ocuser.replace (/^/,'OpenCollective Profile: ');
|
||||||
|
var description = name + "\n\n" + aboutme + "\n\n" + howfound + "\n\n" + ocuser;
|
||||||
|
console.log('Description:', description);
|
||||||
|
|
||||||
|
fetch(url, {
|
||||||
|
method: 'POST',
|
||||||
|
headers: {
|
||||||
|
'authorization': 'token b8d8617bb6049c0e47b7bba5cd0931799f54609c',
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
},
|
||||||
|
body: JSON.stringify({ title: email, body: description }),
|
||||||
|
})
|
||||||
|
.then(response => response.json())
|
||||||
|
.then(result => {
|
||||||
|
console.log('Success:', result);
|
||||||
|
alert("Votre demande a été soumise. Un membre d'un groupe de travail va traiter votre demande sous peu. Si vous ne recevez pas de nouvelle d'ici sept jours, contactez-vous via support@ilot.io.");
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
console.error('Error:', error)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
BIN
platforms.fr.mo
BIN
platforms.fr.mo
Binary file not shown.
|
@ -8,14 +8,14 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: ilot.io\n"
|
"Project-Id-Version: ilot.io\n"
|
||||||
"POT-Creation-Date: 2024-09-08 12:48-0400\n"
|
"POT-Creation-Date: 2024-09-08 12:48-0400\n"
|
||||||
"PO-Revision-Date: 2024-09-08 12:49-0400\n"
|
"PO-Revision-Date: 2025-04-03 18:49-0400\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: dev@ayakael.net\n"
|
"Language-Team: dev@ayakael.net\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Generator: Poedit 3.4.3\n"
|
"X-Generator: Poedit 3.5\n"
|
||||||
|
|
||||||
#. type: Plain text
|
#. type: Plain text
|
||||||
#, no-wrap
|
#, no-wrap
|
||||||
|
@ -56,7 +56,7 @@ msgid ""
|
||||||
"management of the other platforms, and they are here to give you an overview "
|
"management of the other platforms, and they are here to give you an overview "
|
||||||
"of our infrastructure."
|
"of our infrastructure."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Les plates-formes suivantes ont plutôt un rôle de soutien. Elles permettent "
|
"Les plateformes suivantes ont plutôt un rôle de soutien. Elles permettent "
|
||||||
"une meilleure gestion des autres plateformes et sont là pour vous donner une "
|
"une meilleure gestion des autres plateformes et sont là pour vous donner une "
|
||||||
"vue d'ensemble de notre infrastructure."
|
"vue d'ensemble de notre infrastructure."
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue