HEX
Server: nginx/1.29.3
System: Linux 11979.bigscoots-wpo.com 6.8.0-88-generic #89-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 01:02:46 UTC 2025 x86_64
User: nginx (1068)
PHP: 7.4.33
Disabled: exec,system,passthru,shell_exec,proc_open,proc_close,popen,show_source,cmd# Do not modify this line # 1684243876
Upload Files
File: //bigscoots/wpo/backups/backup_link.sh
#!/bin/bash
source /bigscoots/includes/common.sh  # Assumed source for JSON functions

# Check parameters
BACKUP=$1
LOCATION=$2
JOBLOGID=$3
WWWPATH="/var/www/html"
HOOK_URL="https://n8n.bigscoots.dev/webhook/hooks/wpo/process-backup-download-url"
SCOOTS_HASH="1a18fefe16e4ab6ae1967a2ad980f396"  # Add the required hash here

if [ -z "$BACKUP" ]; then
  init_json_response
  add_json_error "Backup filename is required"
  set_json_success false
  print_json_response
  exit 1
fi

# Generate random path
RANDO1=$(tr -dc 'a-z0-9' < /dev/urandom | fold -w 16 | head -n 1)
RANDO2=$(tr -dc 'a-z0-9' < /dev/urandom | fold -w 16 | head -n 1)

# Determine link based on location
if [[ "$LOCATION" == "local" ]]; then
  mkdir -p /usr/local/nginx/html/"$RANDO1"/"$RANDO2"/
  ln -s "${PWD}/$BACKUP" /usr/local/nginx/html/"$RANDO1"/"$RANDO2"/"$BACKUP"
  screen -dmS "$BACKUP" bash -c "sleep 172800 ; rm -rf /usr/local/nginx/html/$RANDO1"
  link="https://$HOSTNAME/$RANDO1/$RANDO2/$BACKUP"
else
  mkdir -p "$WWWPATH/$RANDO1/$RANDO2/"
  mv "$BACKUP" "$WWWPATH/$RANDO1/$RANDO2/"
  screen -dmS "$BACKUP" bash -c "sleep 172800 ; rm -rf $WWWPATH/$RANDO1"
  link="https://$HOSTNAME/$RANDO1/$RANDO2/$BACKUP"
fi

# Prepare JSON response for both console and hook
init_json_response
set_json_result '{"jobId": "'"$JOBLOGID"'", "downloadLink": "'"$link"'"}'
set_json_success true
print_json_response  # Console JSON response

# Send the hook notification with additional headers
curl -s -X POST "$HOOK_URL" \
  -H "Content-Type: application/json" \
  -H "X-SCOOTS-HASH: $SCOOTS_HASH" \
  -d '{
    "jobId": "'"$JOBLOGID"'",
    "downloadLink": "'"$link"'"
}' > /dev/null