From 658f698b47074158a86b5bdf1cd2a4d74cc3c6c3 Mon Sep 17 00:00:00 2001 From: MaddoScientisto Date: Sun, 12 Apr 2026 20:16:11 +0200 Subject: [PATCH 1/4] Updated sample readme --- faceai/README.md | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/faceai/README.md b/faceai/README.md index a805a508..ee31220c 100644 --- a/faceai/README.md +++ b/faceai/README.md @@ -186,7 +186,7 @@ Then start the processor in a second shell, either with its own local environmen ## Docker Compose Deployment For The Public Site And Matcher Runner -The checked-in `docker-compose.yml` is for local integration testing because it also includes the PHP simulator and local bind mounts. For hosted deployment, keep the same three-service application topology but remove `legacy-php` and replace the local mounts with your production matcher and PKL paths. +The checked-in `docker-compose.yml` is for local integration testing because it also includes the PHP simulator and local bind mounts. For hosted deployment, keep the same three-service application topology but remove `legacy-php` and replace the local mounts with the real production paths on the host. The public FaceAI site and the matcher runner can both use the same application image. The difference is only the process command: @@ -197,12 +197,18 @@ If that shared image also embeds or mounts the current Linux `face_matcher` buil ### Production Compose Example -Replace the registry path, secrets, and host paths with the real deployment values. +This example assumes: + +- FaceAI runtime files, logs, and matcher binaries live under `/var/docker/faceai` on the host +- the NAS export is already mounted on the host at `/mnt/nas12` via `/etc/fstab`, for example `192.168.10.247:/public /mnt/nas12 nfs rw,noatime 0 0` +- the race dataset root is available on the host at `/mnt/nas12/nas2/RUS` + +Replace the registry path and secrets with the real deployment values. ```yaml services: faceai: - image: registry.example.com/my-namespace/faceai:latest + image: forgejo.maddoscientisto.net/maddo/faceai-client:latest container_name: regalami-faceai restart: unless-stopped command: sh -c "mkdir -p /data/logs && npm run start >> /data/logs/backend.log 2>&1" @@ -222,16 +228,16 @@ services: FACEAI_PKL_ROOT: /data/pkl FACEAI_ENABLE_LOCAL_LEGACY_STATIC: 0 volumes: - - faceai-runtime:/data/runtime - - /srv/faceai/logs:/data/logs - - /srv/faceai/pkl:/data/pkl:ro + - /var/docker/faceai/runtime:/data/runtime + - /var/docker/faceai/logs:/data/logs + - /mnt/nas12/nas2/RUS:/data/pkl:ro ports: - "127.0.0.1:3001:3001" depends_on: - redis processor: - image: registry.example.com/my-namespace/faceai:latest + image: forgejo.maddoscientisto.net/maddo/faceai-client:latest container_name: regalami-faceai-processor restart: unless-stopped command: sh -c "mkdir -p /data/logs && npm run start:processor >> /data/logs/processor.log 2>&1" @@ -246,10 +252,10 @@ services: FACEAI_WORKER_CONCURRENCY: 2 FACEAI_WORKER_TIMEOUT_MS: 300000 volumes: - - faceai-runtime:/data/runtime - - /srv/faceai/logs:/data/logs - - /srv/faceai/pkl:/data/pkl:ro - - /srv/faceai/bin/Face_Recognition_Unix:/opt/face-recognition:ro + - /var/docker/faceai/runtime:/data/runtime + - /var/docker/faceai/logs:/data/logs + - /mnt/nas12/nas2/RUS:/data/pkl:ro + - /var/docker/faceai/bin/Face_Recognition_Unix:/opt/face-recognition:ro depends_on: - redis @@ -258,13 +264,12 @@ services: container_name: regalami-faceai-redis restart: unless-stopped command: redis-server --appendonly no - -volumes: - faceai-runtime: ``` This pattern assumes a reverse proxy on the host publishes `https://ai.regalamiunsorriso.it` and forwards to `127.0.0.1:3001`. The processor is internal-only and does not expose any public port. +The NAS-backed dataset bind mount stays read-only in both containers. That keeps the application aligned with the local Compose contract, where both services can inspect the same PKL tree but neither service can modify the underlying race data. + ### Required Runtime Configuration Shared application settings: From 2a99947e47cc16cd19b17db158c34216297b2bb7 Mon Sep 17 00:00:00 2001 From: MaddoScientisto Date: Sat, 18 Apr 2026 10:57:44 +0200 Subject: [PATCH 2/4] Email templates update --- www/mailMessage/noMorePic.html | 28 ++++++------- www/mailMessage/noMorePic.txt | 35 ++++++++-------- www/mailMessage/noMorePicCc.html | 28 ++++++------- www/mailMessage/noMorePicScad.html | 27 +++++++----- www/mailMessage/noMorePicScad.txt | 35 +++++++++------- www/mailMessage/perScadereMsg.html | 26 +++++++----- www/mailMessage/userMsg_it.html | 4 -- www/mailMessage/userMsg_itCC - Copy.html | 53 ++++++++++++------------ www/mailMessage/userMsg_itCC.html | 33 ++++++++------- 9 files changed, 141 insertions(+), 128 deletions(-) diff --git a/www/mailMessage/noMorePic.html b/www/mailMessage/noMorePic.html index 359bc216..97076a97 100644 --- a/www/mailMessage/noMorePic.html +++ b/www/mailMessage/noMorePic.html @@ -20,28 +20,28 @@

L'accesso all'archivio fotografico e' un servizio riservato ai soli SOSTENITORI ETS REGALAMI UN SORRISO.
Condividere le foto non vuol dire acquistare le foto, queste sono destinate ad un uso interno dei soci onlus.

- Per diventare soci e' previsto un contributo liberale.
+ Per diventare sostenitori e' previsto un contributo liberale:

- Con un contributo liberale da 20 euro in poi puoi diventare SOSTENITORE
- Il socio puo' condividere fino a 1000 foto in un anno.
+ 20 euro: diritto alla condivisione di 1000 foto per 1 anno;
+ 40 euro: 3000 foto per 3 anni;
+ 5 euro: 25 foto per 1 anno.

- Si ricorda che ogni foto ingrandita equivale ad una foto condivisa. + Si ricorda che ogni foto ingrandita equivale a una foto condivisa.

-

L'iscrizione non e' automatica, i soci debbono spedire la ricevuta a
- foto@pierogiacomelli.com
- ed entro 24 ore il vostro account sara' attivato.

-

Puoi destinare il tuo contributo liberale a :

+

Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: e' necessario inviare la ricevuta del pagamento a
+ foto@pierogiacomelli.com.
+ Entro 24 ore dalla ricezione, l'account verra' attivato.

+

Il contributo liberale puo' essere versato a:

REGALAMI UN SORRISO ETS
Via Torquato Tasso, 23/C 59100 PRATO
CODICE FISCALE 92076170486

-

Puoi scegliere tra i seguenti istituti bancari per effettuare il tuo contributo:
- Ti consigliamo di usare PAYPAL in quanto non ha spese ne oneri di pagamento.

+

Modalita' di pagamento:

BANCA IFIGEST
- IBAN IT41 Z031 8521 5000 0001 0014 876

+ IBAN: IT41 Z031 8521 5000 0001 0014 876

-

PAYPAL ( senza spese ne oneri bancari )
- Il pagamento tramite PAYPAL dalla pagina dell'account, attiva automaticamente l'accesso
- non occorre che l'attestazione del contributo ci sia spedita.)

+

PayPal (consigliato, senza spese o oneri bancari)
+ Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso.
+ In questo caso non e' necessario inviare alcuna ricevuta.

IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI.
DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486

Per problemi inerenti la gestione delle password puoi contattare
diff --git a/www/mailMessage/noMorePic.txt b/www/mailMessage/noMorePic.txt index c129e231..787ec538 100644 --- a/www/mailMessage/noMorePic.txt +++ b/www/mailMessage/noMorePic.txt @@ -9,35 +9,36 @@ per altre foto in alta risoluzione devi farti socio. L'accesso all'archivio fotografico e' un servizio riservato ai soli SOCI ONLUS REGALAMI UN SORRISO. Condividere le foto non vuol dire acquistare le foto, queste sono destinate ad un uso interno dei soci onlus. - Per diventare soci e' previsto un contributo liberale. + Per diventare sostenitori e' previsto un contributo liberale: - Con un contributo liberale da 20 euro in poi puoi diventare SOCIO - Il socio puo' condividere fino a 1000 foto in un anno. + 20 euro: diritto alla condivisione di 1000 foto per 1 anno; + 40 euro: 3000 foto per 3 anni; + 5 euro: 25 foto per 1 anno. -Si ricorda che ogni foto ingrandita equivale ad una foto condivisa. +Si ricorda che ogni foto ingrandita equivale a una foto condivisa. -L'iscrizione non e' automatica, i soci debbono spedire la ricevuta a -foto@pierogiacomelli.com -ed entro 24 ore il vostro account sara' attivato. +Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: +e' necessario inviare la ricevuta del pagamento a +foto@pierogiacomelli.com. +Entro 24 ore dalla ricezione, l'account verra' attivato. -Puoi destinare il tuo contributo liberale a : +Il contributo liberale puo' essere versato a: -REGALAMI UN SORRISO ONLUS +REGALAMI UN SORRISO ETS Via Torquato Tasso, 23/C 59100 PRATO CODICE FISCALE 92076170486 -Puoi scegliere tra i seguenti istituti bancari per effettuare il tuo contributo: -Ti consigliamo di usare PAYPAL in quanto non ha spese ne oneri di pagamento. +Modalita' di pagamento: BANCA IFIGEST -IBAN IT41 Z031 8521 5000 0001 0014 876 +IBAN: IT41 Z031 8521 5000 0001 0014 876 -PAYPAL ( senza spese ne oneri bancari ) -Il pagamento tramite PAYPAL attiva automaticamente l'accesso -non occorre che l'attestazione del contributo ci sia spedita. +PayPal (consigliato, senza spese o oneri bancari) +Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso. +In questo caso non e' necessario inviare alcuna ricevuta. -IL CONTRIBUTO DESTINATO ALLE ONLUS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI. -DESTINA IL 5X1000 ALLA ONLUS REGALAMI UN SORRISO CODICE FISCALE 92076170486 +IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI. +DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486 Per problemi inerenti la gestione delle password puoi contattare l'indirizzo email foto@pierogiacomelli.com diff --git a/www/mailMessage/noMorePicCc.html b/www/mailMessage/noMorePicCc.html index 7977329b..ba84a4b8 100644 --- a/www/mailMessage/noMorePicCc.html +++ b/www/mailMessage/noMorePicCc.html @@ -20,28 +20,28 @@

L'accesso all'archivio fotografico e' un servizio riservato ai soli SOSTENITORI ETS REGALAMI UN SORRISO.
Condividere le foto non vuol dire acquistare le foto, queste sono destinate ad un uso interno dei soci onlus.

- Per diventare soci e' previsto un contributo liberale.
+ Per diventare sostenitori e' previsto un contributo liberale:

- Con un contributo liberale da 20 euro in poi puoi diventare SOSTENITORE
- Il socio puo' condividere fino a 1000 foto in un anno.
+ 20 euro: diritto alla condivisione di 1000 foto per 1 anno;
+ 40 euro: 3000 foto per 3 anni;
+ 5 euro: 25 foto per 1 anno.

- Si ricorda che ogni foto ingrandita equivale ad una foto condivisa. + Si ricorda che ogni foto ingrandita equivale a una foto condivisa.

-

L'iscrizione non e' automatica, i soci debbono spedire la ricevuta a
- foto@pierogiacomelli.com oppure al fax 0574 876074
- ed entro 24 ore il vostro account sara' attivato.

-

Puoi destinare il tuo contributo liberale a :

+

Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: e' necessario inviare la ricevuta del pagamento a
+ foto@pierogiacomelli.com.
+ Entro 24 ore dalla ricezione, l'account verra' attivato.

+

Il contributo liberale puo' essere versato a:

REGALAMI UN SORRISO ETS
Via Torquato Tasso, 23/C 59100 PRATO
CODICE FISCALE 92076170486

-

Puoi scegliere tra i seguenti istituti bancari per effettuare il tuo contributo:
- Ti consigliamo di usare PAYPAL in quanto non ha spese ne oneri di pagamento.

+

Modalita' di pagamento:

BANCA IFIGEST
- IBAN IT41 Z031 8521 5000 0001 0014 876

+ IBAN: IT41 Z031 8521 5000 0001 0014 876

-

PAYPAL ( senza spese ne oneri bancari )
- Il pagamento tramite PAYPAL dalla pagina dell'account, attiva automaticamente l'accesso
- non occorre che l'attestazione del contributo ci sia spedita.)

+

PayPal (consigliato, senza spese o oneri bancari)
+ Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso.
+ In questo caso non e' necessario inviare alcuna ricevuta.

IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI.
DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486

Per problemi inerenti la gestione delle password puoi contattare
diff --git a/www/mailMessage/noMorePicScad.html b/www/mailMessage/noMorePicScad.html index 32a0edd8..3f202eb6 100644 --- a/www/mailMessage/noMorePicScad.html +++ b/www/mailMessage/noMorePicScad.html @@ -16,24 +16,29 @@ e' trascorso oltre un anno dal tuo ultimo contributo.

L'accesso all'archivio fotografico e' un servizio riservato solo ai sostenitori ETS REGALAMI UN SORRISO
in regola col pagamento della quota sostenitorietaria.

-

Con un contributo liberale di 20 euro puoi rinnovare la tessera di SOSTENITORE
- ed avere il diritto di condividere 1000 foto in un anno.

+

Per diventare sostenitori e' previsto un contributo liberale:
+
+ 20 euro: diritto alla condivisione di 1000 foto per 1 anno;
+ 40 euro: 3000 foto per 3 anni;
+ 5 euro: 25 foto per 1 anno.
+
+ Si ricorda che ogni foto ingrandita equivale a una foto condivisa.

Condividere le foto non vuol dire acquistare le foto. La ETS REGALAMI UN SORRISO non vende NIENTE.
Il servizio di condivisione delle foto e' servizio interno riservato ai soli sostenitori onlus.

-

L'attivazione non e' automatica, i sostenitori debbono spedire la ricevuta via email a
- foto@pierogiacomelli.com o al fax 0574 876074 ed entro 24 ore il vostro account sara' attivato.

-

Puoi destinare il tuo contributo liberale a :

+

Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: e' necessario inviare la ricevuta del pagamento a
+ foto@pierogiacomelli.com.
+ Entro 24 ore dalla ricezione, l'account verra' attivato.

+

Il contributo liberale puo' essere versato a:

REGALAMI UN SORRISO ETS
Via Torquato Tasso, 23/C 59100 PRATO
CODICE FISCALE 92076170486

-

Puoi scegliere tra i seguenti istituti bancari per effettuare il tuo contributo:
- Ti consigliamo di usare PAYPAL in quanto non ha spese ne oneri di pagamento.

+

Modalita' di pagamento:

BANCA IFIGEST
- IBAN IT41 Z031 8521 5000 0001 0014 876

+ IBAN: IT41 Z031 8521 5000 0001 0014 876

-

PAYPAL ( senza spese ne oneri bancari )
- Il pagamento tramite PAYPAL dalla pagina dell'account, attiva automaticamente l'accesso
- non occorre che l'attestazione del contributo ci sia spedita.)
+

PayPal (consigliato, senza spese o oneri bancari)
+ Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso.
+ In questo caso non e' necessario inviare alcuna ricevuta.

IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI.
DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486

diff --git a/www/mailMessage/noMorePicScad.txt b/www/mailMessage/noMorePicScad.txt index 9aeafb24..5160946b 100644 --- a/www/mailMessage/noMorePicScad.txt +++ b/www/mailMessage/noMorePicScad.txt @@ -6,34 +6,39 @@ Questo e' un messaggio automatico generato dal server quando risulta che: L'accesso all'archivio fotografico e' un servizio riservato solo ai soci ONLUS REGALAMI UN SORRISO in regola col pagamento della quota societaria. - Con un contributo liberale di 20 euro puoi rinnovare la tessera di SOCIO - ed avere il diritto di condividere 1000 foto in un anno. + Per diventare sostenitori e' previsto un contributo liberale: + + 20 euro: diritto alla condivisione di 1000 foto per 1 anno; + 40 euro: 3000 foto per 3 anni; + 5 euro: 25 foto per 1 anno. + +Si ricorda che ogni foto ingrandita equivale a una foto condivisa. Condividere le foto non vuol dire acquistare le foto. La ONLUS REGALAMI UN SORRISO non vende NIENTE. Il servizio di condivisione delle foto e' servizio interno riservato ai soli soci onlus. -L'attivazione non e' automatica, i soci debbono spedire la ricevuta via email a -foto@pierogiacomelli.com o al fax 0574 876074 ed entro 24 ore il vostro account sara' attivato. +Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: +e' necessario inviare la ricevuta del pagamento a +foto@pierogiacomelli.com. +Entro 24 ore dalla ricezione, l'account verra' attivato. -Puoi destinare il tuo contributo liberale a : +Il contributo liberale puo' essere versato a: -REGALAMI UN SORRISO ONLUS +REGALAMI UN SORRISO ETS Via Torquato Tasso, 23/C 59100 PRATO CODICE FISCALE 92076170486 -Puoi scegliere tra i seguenti istituti bancari per effettuare il tuo contributo: -Ti consigliamo di usare PAYPAL in quanto non ha spese ne oneri di pagamento. +Modalita' di pagamento: BANCA IFIGEST -IBAN IT41 Z031 8521 5000 0001 0014 876 +IBAN: IT41 Z031 8521 5000 0001 0014 876 -PAYPAL ( senza spese ne oneri bancari ) -Accesso dal forum http://bb.pierogiacomelli.com -ATTENZIONE il pagamento tramite PAYPAL non attiva automaticamente l'account, -ma occorre che l'attestazione del versamento ci sia spedita. +PayPal (consigliato, senza spese o oneri bancari) +Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso. +In questo caso non e' necessario inviare alcuna ricevuta. -IL CONTRIBUTO DESTINATO ALLE ONLUS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI. -DESTINA IL 5X1000 ALLA ONLUS REGALAMI UN SORRISO CODICE FISCALE 92076170486 +IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI. +DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486 Per problemi inerenti la gestione delle password puoi contattare l'indirizzo email foto@pierogiacomelli.com diff --git a/www/mailMessage/perScadereMsg.html b/www/mailMessage/perScadereMsg.html index 3b4b0995..77930f44 100644 --- a/www/mailMessage/perScadereMsg.html +++ b/www/mailMessage/perScadereMsg.html @@ -15,22 +15,28 @@

Questo e' un messaggio automatico generato dal server quando risulta che sta per scadere il tuo abbonamento al server foto.

L'accesso all'archivio fotografico e' un servizio riservato ai sostenitori ETS REGALAMI UN SORRISO in regola col pagamento della quota.

-

Con un contributo liberale di 20 euro puoi rinnovare la tessera di SOSTENITORE ed avere il diritto di condividere 1000 foto in un anno. 

-

Con la procedura on line, dopo aver fatto login è tutto automatico, ma se preferisci effettuare un bonifico dovete spedire la ricevuta via email a
- foto@pierogiacomelli.com ed entro 24 ore il vostro account sarà attivato. +

Per diventare sostenitori e' previsto un contributo liberale:
+
+ 20 euro: diritto alla condivisione di 1000 foto per 1 anno;
+ 40 euro: 3000 foto per 3 anni;
+ 5 euro: 25 foto per 1 anno.
+
+ Si ricorda che ogni foto ingrandita equivale a una foto condivisa.

+

Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: e' necessario inviare la ricevuta del pagamento a
+ foto@pierogiacomelli.com.
+ Entro 24 ore dalla ricezione, l'account verra' attivato.

-

Puoi destinare il tuo contributo liberale a :

+

Il contributo liberale puo' essere versato a:

REGALAMI UN SORRISO ETS
Via Torquato Tasso, 23/C 59100 PRATO
CODICE FISCALE 92076170486

-

Puoi scegliere tra i seguenti istituti bancari per effettuare il tuo contributo:
- Ti consigliamo di usare PAYPAL in quanto non ha spese ne oneri di pagamento.

+

Modalita' di pagamento:

BANCA IFIGEST
- IBAN IT41 Z031 8521 5000 0001 0014 876

+ IBAN: IT41 Z031 8521 5000 0001 0014 876

-

PAYPAL ( senza spese ne oneri bancari )
- Il pagamento tramite PAYPAL dalla pagina dell'account, attiva automaticamente l'accesso
- non occorre che l'attestazione del contributo ci sia spedita.)
+

PayPal (consigliato, senza spese o oneri bancari)
+ Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso.
+ In questo caso non e' necessario inviare alcuna ricevuta.

IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI.
DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486

diff --git a/www/mailMessage/userMsg_it.html b/www/mailMessage/userMsg_it.html index 2815b954..6deb5c4a 100644 --- a/www/mailMessage/userMsg_it.html +++ b/www/mailMessage/userMsg_it.html @@ -43,7 +43,6 @@ Data modifica record: <%=data%>
tuoi dati e provare a prelevare le foto.

Se ci sono problemi scrivi a foto@pierogiacomelli.com
- altre informazioni sul server http://bb.pierogiacomelli.com

<<<<<< ATTENZIONE>>>>>>

@@ -57,7 +56,6 @@ Data modifica record: <%=data%>
SI DEVE DOCUMENTARE VIA EMAIL a foto@pierogiacomelli.com
che è stato effettuato un contributo volontario che sara'
da noi utilizzato per i fini sociali della ETS REGALAMI UN SORRISO
- ulteriori spiegazioni sul server http://bb.pierogiacomelli.com

L'AVVENUTO VERSAMENTO TI DARA' LA POSSIBILITA' DI PRELEVARE PER ANNI 1 ( UNO ) LE FOTO.

@@ -137,6 +135,4 @@ Data modifica record: <%=data%>
Per problemi inerenti la gestione delle password puoi contattare direttamente
l'indirizzo email: foto@pierogiacomelli.com

- Altre informazioni sul forun http://bb.pierogiacomelli.com
-
PHOTO WEB SERVER
diff --git a/www/mailMessage/userMsg_itCC - Copy.html b/www/mailMessage/userMsg_itCC - Copy.html index f6ae5aa5..b5b4aa82 100644 --- a/www/mailMessage/userMsg_itCC - Copy.html +++ b/www/mailMessage/userMsg_itCC - Copy.html @@ -37,52 +37,51 @@ http://www.regalamiunsorriso.it/Logon.abl?cmdIU=ckcclnk&controlCode=<%=controlCo
PER USUFRUIRE DEL SERVIZIO DI CONDIVISIONE FOTO SI DEVE ESSERE SOCI DELLA ETS REGALAMI UN SORRISO

-Per diventare soci, oltre all'iscrizione, e' necessario effettuare un contributo liberale
-e spedire la ricevuta via email a: piero@pierogiacomelli.com,
-oppure via fax al numero telefonico 0574 876074
-
- Con un contributo liberale da 20 euro in poi puoi diventare SOCIO
- Il SOCIO ha il diritto di condividere 1000 foto in un anno.
+Per diventare sostenitori e' previsto un contributo liberale:
+
+20 euro: diritto alla condivisione di 1000 foto per 1 anno;
+40 euro: 3000 foto per 3 anni;
+5 euro: 25 foto per 1 anno.

ATTENZIONE CONDIVIDERE LE FOTO NON VUOL DIRE ACQUISTARE LE FOTO
LA ETS REGALAMI UN SORRISO NON VENDE NIENTE,
METTE SOLO A DISPOSIZIONE DEI SOCI IL SUO ARCHIVIO.
LE FOTO SONO DI PROPRIETA' ESCLUSIVA DELLA ETS E NON SONO CEDUTE A NESSUN TITOLO, MA SOLO CONCESSE IN VISIONE.

-Attenzione per il server una foto ingrandita e' una foto che e' stata condivisa.
+Si ricorda che ogni foto ingrandita equivale a una foto condivisa.

Alla prima connessione viene rilasciata una foto di test in bassa risoluzione
(inutile iscriversi 100 volte per avere una foto omaggio)

+Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: e' necessario inviare la ricevuta del pagamento a
+foto@pierogiacomelli.com.
+Entro 24 ore dalla ricezione, l'account verra' attivato.
+
+Il contributo liberale puo' essere versato a:
+
REGALAMI UN SORRISO ETS
-Via Botticelli 29 59100 PRATO
-CODICE FISCALE 92076170486
+Via Torquato Tasso, 23/C 59100 Prato
+Codice Fiscale: 92076170486
+
+Modalita' di pagamento:

BANCA IFIGEST
-IBAN IT41 Z031 8521 5000 0001 0014 876
-
-CONTO CORRENTE POSTALE
-NUMERO C/C 89587968
-
-BANCO POSTA
-IBAN IT 77H 07601 02800 0000 8958 7968
-
-PAYPAL (senza spese ne oneri bancari)
-Accesso dal forum http://bb.pierogiacomelli.com
-Consigliamo questa forma di pagamento on line.
-Attenzione anche se utilizzate PAYPAL dovete sempre spedirci l'attestazione di pagamento.
-
-Invia la ricevuta del contributo ed entro 24 ore andremo ad attivare l'account
-scrivi a: piero@pierogiacomelli.com in alternativa via fax al n. 0574 876074 o email foto.atletica.immagine@gmail.com
-
-Se non riceviamo la ricevuta non e' possibile attivare immediatamente il servizio foto.
+IBAN: IT41 Z031 8521 5000 0001 0014 876
+PayPal (consigliato, senza spese o oneri bancari)
+Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso.
+In questo caso non e' necessario inviare alcuna ricevuta.

IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI.
DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486
+
+Per problemi legati alla gestione delle password e' possibile scrivere a:
+foto@pierogiacomelli.com
+
+Se sei appassionato di sport e podismo, se cerchi i calendari delle gare o desideri essere aggiornato sulle ultime notizie, visita:
+https://www.regalamiunsorriso.com

I dati personali sono acquisiti solo con modalita' e procedure strettamente
necessarie alle finalita' per le quali sono stati raccolti.
Altre spiegazioni sulla privacy sul server www.pierogiacomelli.com
-Altre informazioni sul forun http://bb.pierogiacomelli.com

<-PHOTO WEB SERVER->
diff --git a/www/mailMessage/userMsg_itCC.html b/www/mailMessage/userMsg_itCC.html index 116dd0ec..521041ff 100644 --- a/www/mailMessage/userMsg_itCC.html +++ b/www/mailMessage/userMsg_itCC.html @@ -63,35 +63,37 @@
PER USUFRUIRE DEL SERVIZIO DI CONDIVISIONE FOTO SI DEVE ESSERE SOSTENITORI DELLA ETS REGALAMI UN SORRISO

- Per diventare sostenitori, oltre all'iscrizione, e' necessario effettuare un contributo liberale
- e spedire la ricevuta via email a: foto@pierogiacomelli.com,
+ Per diventare sostenitori e' previsto un contributo liberale:

- Con un contributo liberale da 20 euro in poi puoi diventare SOSTENITORE
- Il SOSTENITORE ha il diritto di condividere 1000 foto in un anno.
+ 20 euro: diritto alla condivisione di 1000 foto per 1 anno;
+ 40 euro: 3000 foto per 3 anni;
+ 5 euro: 25 foto per 1 anno.

ATTENZIONE CONDIVIDERE LE FOTO NON VUOL DIRE ACQUISTARE LE FOTO
LA ETS REGALAMI UN SORRISO NON VENDE NIENTE,
METTE SOLO A DISPOSIZIONE DEI SOSTENITORI IL SUO ARCHIVIO.
LE FOTO SONO DI PROPRIETA' ESCLUSIVA DELLA ETS E NON SONO CEDUTE A NESSUN TITOLO, MA SOLO CONCESSE IN VISIONE.

- Attenzione per il server una foto ingrandita e' una foto che e' stata condivisa.
+ Si ricorda che ogni foto ingrandita equivale a una foto condivisa.
+
+ Se l'iscrizione viene effettuata tramite bonifico bancario, l'attivazione non e' automatica: e' necessario inviare la ricevuta del pagamento a
+ foto@pierogiacomelli.com.
+ Entro 24 ore dalla ricezione, l'account verra' attivato.
+
+ Il contributo liberale puo' essere versato a:

REGALAMI UN SORRISO ETS
Via Torquato Tasso, 23/C 59100 PRATO
CODICE FISCALE 92076170486

+ Modalita' di pagamento:
+
BANCA IFIGEST
- IBAN IT41 Z031 8521 5000 0001 0014 876
+ IBAN: IT41 Z031 8521 5000 0001 0014 876

- PAYPAL ( senza spese ne oneri bancari )
- Il pagamento tramite PAYPAL dalla pagina dell'account, attiva automaticamente l'accesso
- non occorre che l'attestazione del contributo ci sia spedita.)
-
-
- Invia la ricevuta del contributo ed entro 24 ore andremo ad attivare l'account
- scrivi a: foto@pierogiacomelli.com
-
- Se non riceviamo la ricevuta non e' possibile attivare immediatamente il servizio foto.
+ PayPal (consigliato, senza spese o oneri bancari)
+ Il pagamento tramite PayPal effettuato dalla pagina dell'account attiva automaticamente l'accesso.
+ In questo caso non e' necessario inviare alcuna ricevuta.

IL CONTRIBUTO DESTINATO ALLE ETS PUO' ESSERE PORTATO IN DETRAZIONE NELLA DENUNCIA DEI REDDITI.
DESTINA IL 5X1000 ALLA ETS REGALAMI UN SORRISO CODICE FISCALE 92076170486
@@ -99,7 +101,6 @@ I dati personali sono acquisiti solo con modalita' e procedure strettamente
necessarie alle finalita' per le quali sono stati raccolti.
Altre spiegazioni sulla privacy sul server www.pierogiacomelli.com
- Altre informazioni sul forun http://bb.pierogiacomelli.com

From 2d14cb4e141b4797b06159d7088ed3b1b3d6e314 Mon Sep 17 00:00:00 2001 From: MaddoScientisto Date: Sat, 18 Apr 2026 10:57:58 +0200 Subject: [PATCH 3/4] docks and stacks --- ...lamiunsorriso-83-149-164-4.instructions.md | 40 ++++++++ stacks/faceai.yml | 58 ++++++++++++ stacks/forgejo-runner.yml | 27 ++++++ stacks/forgejo.yml | 20 ++++ stacks/php-nginx.yml | 35 +++++++ stacks/web-blazor.yml | 13 +++ sync/www-deploy-manifest.md | 91 +++++++++++++++++-- 7 files changed, 275 insertions(+), 9 deletions(-) create mode 100644 stacks/faceai.yml create mode 100644 stacks/forgejo-runner.yml create mode 100644 stacks/forgejo.yml create mode 100644 stacks/php-nginx.yml create mode 100644 stacks/web-blazor.yml diff --git a/.github/instructions/regalamiunsorriso-83-149-164-4.instructions.md b/.github/instructions/regalamiunsorriso-83-149-164-4.instructions.md index 0d5a6c5f..73899d1f 100644 --- a/.github/instructions/regalamiunsorriso-83-149-164-4.instructions.md +++ b/.github/instructions/regalamiunsorriso-83-149-164-4.instructions.md @@ -40,7 +40,39 @@ ssh -tt -i C:\Users\Maddo\.ssh\id_rsa -p 410 marco@83.149.164.4 "sudo tcsh -c 'c - The remote login shell behaves as `tcsh`. - POSIX shell constructs like `for ...; do ...; done` fail unless you explicitly run them through `sh -c`. - The server `sh` does not support `-l`, so use `sh -c`, not `sh -lc`. +- `tcsh` treats redirection and pipelines differently from POSIX shells; commands like `find ... 2>/dev/null | head` can fail with `Ambiguous output redirect` unless the whole payload runs under `sh -c`. +- Prefer one remote command per SSH invocation when doing reconnaissance. Complex commands with pipes, grouped expressions, or escaped parentheses are much more likely to break under PowerShell-to-SSH-to-`tcsh` quoting. +- If PowerShell shows the continuation prompt `? >`, the command was malformed locally before SSH executed it. Cancel it and rerun a simpler command instead of trying to answer the prompt. - If `sudo` reports that a terminal is required, reconnect with `-tt`. +- When running remote commands from PowerShell, quoting can break if the command contains both nested quotes and file paths with spaces. +- For read-only verification commands from PowerShell, prefer `ssh ... --% ` so the remote command is passed verbatim. +- For `promote-file.sh` calls that target paths with spaces, prefer a local PowerShell loop that passes the full remote command as a single SSH argument instead of building one long nested quoted command. +- If repeated SSH commands start cancelling or interleaving poorly in the same terminal, rerun them sequentially instead of in parallel. + +## Mail Template Runtime Notes + +- The server contains multiple `mailMessage` trees: + - Live web root: `/home/sites/regalamiunsorriso/www/mailMessage` + - Staging copy: `/home/marco/regalamiunsorriso/incoming/www/mailMessage` + - Older duplicate trees: `/home/sites/regalamiunsorriso/wwwLang/mailMessage` and `/home/sites/regalamiunsorriso/wwwOld/www/mailMessage` +- During the 2026-04-16 reconnaissance, representative checksums differed between `www/mailMessage` and `wwwLang/mailMessage`, so they are not interchangeable copies. +- The Java application configuration lives under `/home/sites/regalamiunsorriso/rus/WEB-INF`. +- `web.xml` defines the main application DB connection as `dbDriver=3`, `database=//localhost/pg`, `user=root`, `password=root`. +- `truckservice.properties` defines a second DB connection as `dbDriver=3`, `dbName=//localhost/truckservice`, `user=root`, `password=root`. +- In this codebase, `dbDriver=3` maps to MySQL Connector/J, not to a legacy non-MySQL driver. +- `dbcomuni.properties`, `rus.properties`, and `truckservice.properties` all set `USE_PARM_HT=true`, which means runtime values are expected to come from the application `Parm` store. +- In code, `DBAdapter.getDocBase()` resolves to `getParm("DOCBASE").getTesto()`, and mail-template lookups use `Parm` values such as `MAIL_REG`, `MAIL_NO_MORE`, `MAIL_NO_MORE_SCAD`, and `MAIL_MSG_PATH_MAILER`. +- In code, `Parm.findByCodice()` reads from `PARM` with `select A.* from PARM AS A where A.codice='...'`, so the live `PARM` table is the authoritative lookup point for these values. +- `pg_src/com/ablia/pg/Users.java` seeds defaults for `MAIL_MSG_RINNOVO` as `mailMessage/rinnovoMsg.html` and `MAIL_MSG_COUPON_OMAGGIO` as `mailMessage/couponOmaggioMsg.html` when the parameters are missing. +- Because of that indirection, changing files under a `mailMessage` directory is not sufficient proof that outbound mail content will change. The effective `DOCBASE` and mail-template parameter values must also be checked in the live `Parm` data. +- For mail-template reconnaissance, avoid recursing into `/mnt/da1/foto` via the `RUS` symlink unless the task explicitly concerns photo storage. It adds permission noise and did not help identify the email-template source. +- Read-only DB access notes from 2026-04-16: + - The host has PHP CLI at `/usr/local/bin/php` with both `mysqli` and `pdo_mysql` enabled. + - A piped PHP script over SSH is a reliable way to run read-only DB probes without creating files on the server. + - `mysqli('localhost', ...)` fails with `No such file or directory`, which indicates PHP tries a Unix socket path that is not present or not configured. + - `mysqli('127.0.0.1', ...)` fails with `Connection refused`, and `sockstat` showed no listener on port `3306` and no visible MySQL Unix socket under `/var/run`, `/tmp`, or `/usr/local/var`. + - No `mysql` or `mariadb` client binary was found in the shell path. + - Result: the app configuration clearly points at MySQL, but direct DB access from the current shell remains unresolved and must be revalidated before relying on live SQL queries. ## MCP Limitation @@ -93,6 +125,13 @@ Run: ssh -tt -i C:\Users\Maddo\.ssh\id_rsa -p 410 marco@83.149.164.4 "sudo tcsh -c '/home/marco/promote-file.sh [metadata-source]'" ``` +If the source or destination path contains spaces, prefer this PowerShell pattern so SSH receives the remote command as one argument: + +```powershell +$remote = "sudo tcsh -c \"/home/marco/promote-file.sh '' '' [metadata-source]\"" +& ssh -tt -i 'C:\Users\Maddo\.ssh\id_rsa' -p 410 'marco@83.149.164.4' $remote +``` + Behavior of `promote-file.sh`: - If the destination already exists, it copies the file and restores that destination file's original owner, group, and mode. @@ -116,6 +155,7 @@ After staging or promotion, verify with: - `ls -l` for owner, group, and visible mode - `stat -f` for exact metadata - `cksum` to compare staged and live file contents +- From PowerShell, prefer `ssh ... --% ls -l ...`, `ssh ... --% stat -f ...`, and `ssh ... --% cksum ...` for verification commands that include quoted paths. Run verification commands separately if a parallel terminal run becomes unreliable. diff --git a/stacks/faceai.yml b/stacks/faceai.yml new file mode 100644 index 00000000..9d232667 --- /dev/null +++ b/stacks/faceai.yml @@ -0,0 +1,58 @@ +services: + faceai: + image: forgejo.maddoscientisto.net/maddo/faceai-client:latest + container_name: regalami-faceai + restart: unless-stopped + command: sh -c "mkdir -p /data/logs && npm run start >> /data/logs/backend.log 2>&1" + environment: + NODE_ENV: production + PORT: 3001 + FACEAI_FRONTEND_URL: https://ai.regalamiunsorriso.it + FACEAI_PUBLIC_BASE_URL: https://ai.regalamiunsorriso.it + FACEAI_LEGACY_RETURN_URL: https://www.regalamiunsorriso.it/faceai_return.php + FACEAI_SHARED_SECRET: disagio-spaghetti-science-lol-boh + FACEAI_SESSION_COOKIE: rus_faceai_session + FACEAI_REDIS_URL: redis://redis:6379 + FACEAI_QUEUE_NAME: faceai-searches + FACEAI_RUNTIME_ROOT: /data/runtime + FACEAI_UPLOAD_ROOT: /data/runtime/uploads + FACEAI_LOG_ROOT: /data/logs + FACEAI_PKL_ROOT: /data/pkl + FACEAI_ENABLE_LOCAL_LEGACY_STATIC: 0 + volumes: + - /var/docker/faceai/runtime:/data/runtime + - /var/docker/faceai/logs:/data/logs + - /mnt/nas12/nas2/RUS:/data/pkl:ro + ports: + - "127.0.0.1:3001:3001" + depends_on: + - redis + + processor: + image: forgejo.maddoscientisto.net/maddo/faceai-client:latest + container_name: regalami-faceai-processor + restart: unless-stopped + command: sh -c "mkdir -p /data/logs && npm run start:processor >> /data/logs/processor.log 2>&1" + environment: + NODE_ENV: production + FACEAI_REDIS_URL: redis://redis:6379 + FACEAI_QUEUE_NAME: faceai-searches + FACEAI_RUNTIME_ROOT: /data/runtime + FACEAI_LOG_ROOT: /data/logs + FACEAI_PKL_ROOT: /data/pkl + FACEAI_MATCHER_BINARY: /opt/face-recognition/face_matcher + FACEAI_WORKER_CONCURRENCY: 2 + FACEAI_WORKER_TIMEOUT_MS: 300000 + volumes: + - /var/docker/faceai/runtime:/data/runtime + - /var/docker/faceai/logs:/data/logs + - /mnt/nas12/nas2/RUS:/data/pkl:ro + - /var/docker/faceai/bin/Face_Recognition_Unix:/opt/face-recognition:ro + depends_on: + - redis + + redis: + image: redis:7-alpine + container_name: regalami-faceai-redis + restart: unless-stopped + command: redis-server --appendonly no \ No newline at end of file diff --git a/stacks/forgejo-runner.yml b/stacks/forgejo-runner.yml new file mode 100644 index 00000000..cc96c873 --- /dev/null +++ b/stacks/forgejo-runner.yml @@ -0,0 +1,27 @@ +version: '3.8' + +services: + forgejo-docker-in-docker: + image: docker:dind + container_name: 'forgejo-docker-in-docker' + privileged: true + command: ['dockerd', '-H', 'tcp://0.0.0.0:2375', '--tls=false'] + restart: 'unless-stopped' + + forgejo-runner: + image: 'data.forgejo.org/forgejo/runner:11' + links: + - forgejo-docker-in-docker + depends_on: + forgejo-docker-in-docker: + condition: service_started + container_name: 'forgejo-runner' + environment: + DOCKER_HOST: tcp://forgejo-docker-in-docker:2375 + # User without root privileges, but with access to `./data`. + user: 1001:1001 + volumes: + - /var/docker/forgejo-runner/data/:/data + restart: 'unless-stopped' + #command: '/bin/sh -c "while : ; do sleep 1 ; done ;"' + command: '/bin/sh -c "sleep 5; forgejo-runner daemon"' \ No newline at end of file diff --git a/stacks/forgejo.yml b/stacks/forgejo.yml new file mode 100644 index 00000000..94fb78a0 --- /dev/null +++ b/stacks/forgejo.yml @@ -0,0 +1,20 @@ +networks: + forgejo: + external: false + +services: + server: + image: codeberg.org/forgejo/forgejo:14 + container_name: forgejo + environment: + - USER_UID=1000 + - USER_GID=1000 + restart: always + networks: + - forgejo + volumes: + - /var/docker/forgejo:/data + - /etc/localtime:/etc/localtime:ro + ports: + - '3000:3000' + - '222:22' \ No newline at end of file diff --git a/stacks/php-nginx.yml b/stacks/php-nginx.yml new file mode 100644 index 00000000..76852630 --- /dev/null +++ b/stacks/php-nginx.yml @@ -0,0 +1,35 @@ +name: php-nginx +services: + php-nginx: + cpu_shares: 90 + command: [] + container_name: php-nginx + deploy: + resources: + limits: + memory: 3776M + environment: + - HOME=/root + - PGID=1000 + - PUID=1000 + - TZ=UTC + - WEBHOME=/var/www/html + hostname: php-nginx + image: shinsenter/phpfpm-nginx:latest + labels: + icon: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/php-nginx/icon.png + ports: + - target: 80 + published: "8002" + protocol: tcp + restart: unless-stopped + volumes: + - type: bind + source: /var/www/html + target: /var/www/html + bind: + create_host_path: true + devices: [] + cap_add: [] + network_mode: bridge + privileged: false diff --git a/stacks/web-blazor.yml b/stacks/web-blazor.yml new file mode 100644 index 00000000..6d8f3525 --- /dev/null +++ b/stacks/web-blazor.yml @@ -0,0 +1,13 @@ +version: '3.8' + +services: + maddoscientisto-web: + image: forgejo.maddoscientisto.net/maddo/maddoscientisto-web:latest + ports: + - "8002:80" + restart: unless-stopped + healthcheck: + test: ["CMD-SHELL", "curl -fsS http://127.0.0.1/ || exit 1"] + interval: 30s + timeout: 5s + retries: 3 \ No newline at end of file diff --git a/sync/www-deploy-manifest.md b/sync/www-deploy-manifest.md index 696c5505..0e19933b 100644 --- a/sync/www-deploy-manifest.md +++ b/sync/www-deploy-manifest.md @@ -1,6 +1,6 @@ # WWW Deployment Manifest -This document lists the files under `www/` in the current FaceAI feature-flag rollout that should be copied to the remote staging path: +This document lists the files under `www/` in the current deployment set that should be copied to the remote staging path: `/home/marco/regalamiunsorriso/incoming/www` @@ -14,12 +14,14 @@ All files in this rollout are deployed from the current working tree. ## Updated Files -- `www/_js/rus-ecom-240621.js` -- `www/faceai_config.php` -- `www/faceai_handoff.php` -- `www/faceai_simulator_view.php` -- `www/fotoCR-en.jsp` -- `www/fotoCR.jsp` +- `www/mailMessage/noMorePic.html` +- `www/mailMessage/noMorePic.txt` +- `www/mailMessage/noMorePicCc.html` +- `www/mailMessage/noMorePicScad.html` +- `www/mailMessage/noMorePicScad.txt` +- `www/mailMessage/perScadereMsg.html` +- `www/mailMessage/userMsg_itCC - Copy.html` +- `www/mailMessage/userMsg_itCC.html` ## Remote Copy Target @@ -27,7 +29,7 @@ All files in this rollout are deployed from the current working tree. - Remote host: `marco@83.149.164.4:410` - Remote staging path: `/home/marco/regalamiunsorriso/incoming/www` - Remote live path: `/home/sites/regalamiunsorriso/www` -- Total files in this manifest: `6` +- Total files in this manifest: `8` ## Transfer Method @@ -44,4 +46,75 @@ All files in this rollout are deployed from the current working tree. - The remote login shell behaves as `tcsh`, so POSIX shell loops fail unless run through `sh -c`. - The server `sh` does not support `-l`, so use `sh -c`, not `sh -lc`. -- Direct SSH plus tar works reliably on this host; MCP SSH was previously unreliable and is avoided. \ No newline at end of file +- Direct SSH plus tar works reliably on this host; MCP SSH was previously unreliable and is avoided. +- PowerShell quoting can break remote helper commands for paths with spaces; using `ssh ... --%` passes verification commands through cleanly. +- Direct remote use of `2>/dev/null`, pipelines, and escaped parentheses can still fail under `tcsh` with `Ambiguous output redirect`; for read-only investigation, prefer small single-purpose SSH commands or wrap the full payload in remote `sh -c`. +- If PowerShell shows the continuation prompt `? >`, the quoting failed locally before the command reached the server. Cancel it and rerun a simpler command. + +## Mail Template Reconnaissance + +Read-only investigation on `83.149.164.4` on 2026-04-16 found that mail content is not determined only by the files in `www/mailMessage`. + +### Mail Template Directories Found On Server + +- Live rollout target: `/home/sites/regalamiunsorriso/www/mailMessage` +- Staging copy: `/home/marco/regalamiunsorriso/incoming/www/mailMessage` +- Older duplicate tree: `/home/sites/regalamiunsorriso/wwwLang/mailMessage` +- Archived duplicate tree: `/home/sites/regalamiunsorriso/wwwOld/www/mailMessage` + +Representative checksum comparisons confirmed that `www/mailMessage` and `wwwLang/mailMessage` currently differ: + +- `noMorePic.html`: live `2188047161 3645`, `wwwLang` `2803737061 3775` +- `userMsg_itCC.html`: live `324589227 5628`, `wwwLang` `429470199 4921` + +### Runtime Resolution Path + +- The Java application lives under `/home/sites/regalamiunsorriso/rus/WEB-INF`. +- Local source code shows `DBAdapter.getDocBase()` returns `getParm("DOCBASE").getTesto()`. +- Local source code shows `Parm.findByCodice()` executes `select A.* from PARM AS A where A.codice='...'`. +- Local source code also shows the mail templates are located through `Parm` values such as `MAIL_REG`, `MAIL_NO_MORE`, `MAIL_NO_MORE_SCAD`, and `MAIL_MSG_PATH_MAILER`. +- Local `pg_src/com/ablia/pg/Users.java` seeds default values for `MAIL_MSG_RINNOVO` as `mailMessage/rinnovoMsg.html` and `MAIL_MSG_COUPON_OMAGGIO` as `mailMessage/couponOmaggioMsg.html`. +- On the live server, `/home/sites/regalamiunsorriso/rus/WEB-INF/classes/dbcomuni.properties`, `rus.properties`, and `truckservice.properties` all contain `USE_PARM_HT=true`, which indicates the application expects runtime values from the `Parm` store. + +Implication: +Changing a file in `www/mailMessage` is not enough to guarantee a changed outbound message. The live `Parm` data determines at least: + +- the effective `DOCBASE` +- which mail template filename is used for each message type +- the generic mailer template root via `MAIL_MSG_PATH_MAILER` + +If reports say old messages are still being sent, the next thing to verify is the live `Parm` row values for `DOCBASE`, `MAIL_REG`, `MAIL_NO_MORE`, `MAIL_NO_MORE_SCAD`, `MAIL_MSG_PATH_MAILER`, and any related per-feature mail parameters. + +### Useful Live App Configuration + +- Main webapp DB connection from `rus/WEB-INF/web.xml`: + - `dbDriver=3` + - `database=//localhost/pg` + - `user=root` + - `password=root` +- Secondary app properties from `rus/WEB-INF/classes/truckservice.properties`: + - `dbDriver=3` + - `dbName=//localhost/truckservice` + - `user=root` + - `password=root` +- Local source code in `DriversJdbc.java` maps `dbDriver=3` to MySQL Connector/J (`jdbc:mysql`). +- Tomcat is running under `jsvc` and is listening on `*:8080` with AJP on `127.0.0.1:8009`. + +### Read-Only DB Access Attempts + +- The host has PHP CLI at `/usr/local/bin/php` with `mysqli`, `mysqlnd`, `PDO`, and `pdo_mysql` enabled. +- No `mysql` or `mariadb` client binary was found in the shell path. +- A read-only PHP probe over SSH is viable by piping a local script into remote PHP: + - This worked for plain PHP execution and is the safest known way to attempt SQL reads without creating files on the server. +- Live connection attempts behaved as follows: + - `mysqli('localhost', 'root', 'root', 'pg')` failed with `No such file or directory`. + - `mysqli('127.0.0.1', 'root', 'root', 'pg')` failed with `Connection refused`. +- `sockstat -4 -l` showed no listener on MySQL port `3306`. +- `sockstat -u -l` and targeted socket checks did not reveal a visible MySQL Unix socket under `/var/run`, `/tmp`, `/usr/local/var`, or `/var/db/mysql`. +- Current conclusion: the application configuration indicates MySQL, but direct SQL access from the current shell is not yet available. The webapp may rely on a non-obvious socket path, a jailed/internal service path, or a runtime environment not exposed to the `marco` shell. + +### Recon Scope Notes + +- The `RUS` entry under `/home/sites/regalamiunsorriso` is a symlink to `/mnt/da1/foto`. +- That tree appears to be photo/archive storage and produced permission noise during reconnaissance. +- It was not needed to identify the email-template resolution path and should be ignored for future mail-template investigations unless the task explicitly involves media storage. \ No newline at end of file From f04d5296c882a85f40fa5f4385999371591c2555 Mon Sep 17 00:00:00 2001 From: MaddoScientisto Date: Sat, 18 Apr 2026 10:58:04 +0200 Subject: [PATCH 4/4] enabled faceai config --- www/faceai_config.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/www/faceai_config.php b/www/faceai_config.php index 5c01cea3..516ba828 100644 --- a/www/faceai_config.php +++ b/www/faceai_config.php @@ -78,10 +78,10 @@ function faceai_config() } $config = array( - 'feature_enabled' => faceai_env_flag('FACEAI_FEATURE_ENABLED', false), + 'feature_enabled' => faceai_env_flag('FACEAI_FEATURE_ENABLED', true), 'frontend_url' => rtrim(faceai_env('FACEAI_FRONTEND_URL', faceai_default_frontend_url()), '/'), 'backend_internal_url' => rtrim(faceai_env('FACEAI_BACKEND_INTERNAL_URL', faceai_default_backend_internal_url()), '/'), - 'shared_secret' => (string) faceai_env('FACEAI_SHARED_SECRET', 'change-me'), + 'shared_secret' => (string) faceai_env('FACEAI_SHARED_SECRET', 'disagio-spaghetti-science-lol-boh'), 'allow_dev_handoff' => faceai_env_flag('FACEAI_ALLOW_DEV_HANDOFF', true), 'identity_cookie' => (string) faceai_env('FACEAI_IDENTITY_COOKIE', 'rus_faceai_identity'), 'return_forward_url' => rtrim((string) faceai_env('FACEAI_RETURN_FORWARD_URL', ''), '/')