diff --git a/allineacanti.sh b/allineacanti.sh index 814c39e..3f8d62f 100755 --- a/allineacanti.sh +++ b/allineacanti.sh @@ -29,25 +29,38 @@ if ! curl -s -L "$SOURCE_URL" -o "$TEMP_FILE"; then exit 1 fi -# --- Rotazione file su FTP --- -echo "🔄 Rotazione file su FTP (canti.json -> canti_ex.json)..." -# Rinominiamo canti.json in canti_ex.json. -# Usiamo i percorsi assoluti per sicurezza. -curl -s -u "$FTP_USER:$FTP_PASS" \ - --ftp-pasv \ - -Q "*DELE /htdocs/api/canti_ex.json" \ - -Q "*RNFR /htdocs/api/canti.json" \ - -Q "*RNTO /htdocs/api/canti_ex.json" \ - "ftp://$FTP_HOST/" > /dev/null - -# --- Upload via FTP --- -echo "🚀 Caricamento nuovo file su $FTP_HOST/$REMOTE_PATH..." -if curl -s -u "$FTP_USER:$FTP_PASS" --ftp-pasv --ftp-create-dirs -T "$TEMP_FILE" "ftp://$FTP_HOST/$REMOTE_PATH"; then - echo "✅ Allineamento completato con successo!" +# --- Rotazione e Caricamento file (FTP o VPS) --- +if [ -n "$VPS_HOST" ]; then + echo "🔄 Rotazione file su VPS ($VPS_HOST)..." + ssh "$VPS_USER@$VPS_HOST" "mkdir -p $VPS_PATH/api && mv $VPS_PATH/api/canti.json $VPS_PATH/api/canti_ex.json 2>/dev/null || true" + + echo "🚀 Caricamento nuovo file su VPS via SCP..." + if scp "$TEMP_FILE" "$VPS_USER@$VPS_HOST:$VPS_PATH/$REMOTE_PATH" && ssh "$VPS_USER@$VPS_HOST" "chmod 644 $VPS_PATH/$REMOTE_PATH"; then + echo "✅ Allineamento su VPS completato con successo!" + else + echo "❌ Errore durante il caricamento via SCP su VPS." + rm "$TEMP_FILE" + exit 1 + fi else - echo "❌ Errore durante il caricamento FTP." - rm "$TEMP_FILE" - exit 1 + echo "🔄 Rotazione file su FTP (canti.json -> canti_ex.json)..." + # Rinominiamo canti.json in canti_ex.json. + # Usiamo i percorsi assoluti per sicurezza. + curl -s -u "$FTP_USER:$FTP_PASS" \ + --ftp-pasv \ + -Q "*DELE /htdocs/api/canti_ex.json" \ + -Q "*RNFR /htdocs/api/canti.json" \ + -Q "*RNTO /htdocs/api/canti_ex.json" \ + "ftp://$FTP_HOST/" > /dev/null + + echo "🚀 Caricamento nuovo file su FTP ($FTP_HOST) via FTP..." + if curl -s -u "$FTP_USER:$FTP_PASS" --ftp-pasv --ftp-create-dirs -T "$TEMP_FILE" "ftp://$FTP_HOST/$REMOTE_PATH"; then + echo "✅ Allineamento su FTP completato con successo!" + else + echo "❌ Errore durante il caricamento FTP." + rm "$TEMP_FILE" + exit 1 + fi fi # Cleanup diff --git a/allinealetture.sh b/allinealetture.sh index 607b2c1..e3ecdea 100755 --- a/allinealetture.sh +++ b/allinealetture.sh @@ -29,14 +29,26 @@ if ! curl -s -u "$API_AUTH_USER:$API_AUTH_PASS" -L "$SOURCE_URL" -o "$TEMP_FILE" exit 1 fi -# --- Upload via FTP --- -echo "🚀 Caricamento nuovo file su $FTP_HOST/$REMOTE_PATH..." -if curl -s -u "$FTP_USER:$FTP_PASS" --ftp-pasv --ftp-create-dirs -T "$TEMP_FILE" "ftp://$FTP_HOST/$REMOTE_PATH"; then - echo "✅ Allineamento completato con successo!" +# --- Caricamento file (FTP o VPS) --- +if [ -n "$VPS_HOST" ]; then + echo "🚀 Caricamento nuovo file su VPS ($VPS_HOST) via SCP..." + ssh "$VPS_USER@$VPS_HOST" "mkdir -p $VPS_PATH/api" + if scp "$TEMP_FILE" "$VPS_USER@$VPS_HOST:$VPS_PATH/$REMOTE_PATH" && ssh "$VPS_USER@$VPS_HOST" "chmod 644 $VPS_PATH/$REMOTE_PATH"; then + echo "✅ Allineamento su VPS completato con successo!" + else + echo "❌ Errore durante il caricamento via SCP su VPS." + rm "$TEMP_FILE" + exit 1 + fi else - echo "❌ Errore durante il caricamento FTP." - rm "$TEMP_FILE" - exit 1 + echo "🚀 Caricamento nuovo file su FTP ($FTP_HOST) via FTP..." + if curl -s -u "$FTP_USER:$FTP_PASS" --ftp-pasv --ftp-create-dirs -T "$TEMP_FILE" "ftp://$FTP_HOST/$REMOTE_PATH"; then + echo "✅ Allineamento su FTP completato con successo!" + else + echo "❌ Errore durante il caricamento FTP." + rm "$TEMP_FILE" + exit 1 + fi fi # Cleanup diff --git a/deploy_www.sh b/deploy_www.sh index cbe024f..54bd6fe 100755 --- a/deploy_www.sh +++ b/deploy_www.sh @@ -89,5 +89,5 @@ if [ "$TARGET" = "tophost" ]; then python3 scratch/deploy_ftp.py else echo "🚀 Upload via SSH/rsync su Contabo ($VPS_HOST) in corso..." - rsync -avz --delete www/ "$VPS_USER@$VPS_HOST:$VPS_PATH" + rsync -avz --delete --exclude 'api' www/ "$VPS_USER@$VPS_HOST:$VPS_PATH" fi diff --git a/public/manifest.webmanifest b/public/manifest.webmanifest index 0117f84..a303b9e 100644 --- a/public/manifest.webmanifest +++ b/public/manifest.webmanifest @@ -6,6 +6,9 @@ "start_url": "/", "theme_color": "#3880ff", "background_color": "#ffffff", + "launch_handler": { + "client_mode": "focus-existing" + }, "protocol_handlers": [ { "protocol": "web+canti", diff --git a/src/app/app.component.html b/src/app/app.component.html index 02cdbc4..4dd1a68 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -4,82 +4,99 @@
- Stiamo aprendo la PWA installata per caricare la playlist ed evitare cache del browser obsoleta. -
+ +- Per aggiornamenti istantanei e uso offline, aggiungi l'app alla schermata Home di iOS: -
-- Installa l'applicazione sul tuo dispositivo per evitare problemi di cache del browser ed usarla offline! + Stiamo aprendo la PWA installata per caricare la playlist ed evitare cache del browser obsoleta.
+ Per aggiornamenti istantanei e uso offline, aggiungi l'app alla schermata Home di iOS: +
++ Installa l'applicazione sul tuo dispositivo per evitare problemi di cache del browser ed usarla offline! +
+
+ Se usi Chrome / Edge / Brave: puoi installarla cliccando sull'icona di installazione ⊕ o 📥 che appare a destra nella barra degli indirizzi del browser.
+ Se usi Safari (su Mac): clicca sul menu File in alto e seleziona Aggiungi al Dock....
+