#!/usr/bin/env bash
# Bulk download script for GSE103225
# Generated from Yeo Lab Publications Database
# Total files: 25

OUTDIR="GSE103225"
mkdir -p "$OUTDIR"
cd "$OUTDIR"

# --- GEO supplementary files ---
wget -nc "ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE103nnn/GSE103225/suppl/GSE103225_RAW.tar" -O "GSE103225_RAW.tar"

# --- SRA run files ---
# Tip: use 'fasterq-dump' from SRA Toolkit for FASTQ conversion
#      with optional renaming to original submitted FASTQ names.
# Set to 1 to rename SRR outputs (e.g. SRR_1.fastq.gz -> sample_R1.fastq.gz)
RENAME_SRA_TO_ORIGINAL=1

_compress_if_exists() {
  local stem="$1"
  if [ -f "${stem}.fastq" ]; then
    gzip -f "${stem}.fastq"
    echo "${stem}.fastq.gz"
    return 0
  fi
  if [ -f "${stem}.fq" ]; then
    gzip -f "${stem}.fq"
    echo "${stem}.fq.gz"
    return 0
  fi
  return 1
}

# Option A: Download via SRA Toolkit (recommended)
fasterq-dump --split-files "SRR5988190"
gz1="$(_compress_if_exists 'SRR5988190_1' || true)"
gz2="$(_compress_if_exists 'SRR5988190_2' || true)"
gzs="$(_compress_if_exists 'SRR5988190' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_CTRL4_IP_S68_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_CTRL4_IP_S68_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988191"
gz1="$(_compress_if_exists 'SRR5988191_1' || true)"
gz2="$(_compress_if_exists 'SRR5988191_2' || true)"
gzs="$(_compress_if_exists 'SRR5988191' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_CTRL39_IP_S70_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_CTRL39_IP_S70_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988192"
gz1="$(_compress_if_exists 'SRR5988192_1' || true)"
gz2="$(_compress_if_exists 'SRR5988192_2' || true)"
gzs="$(_compress_if_exists 'SRR5988192' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_sALS30_IP_S72_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_sALS30_IP_S72_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988193"
gz1="$(_compress_if_exists 'SRR5988193_1' || true)"
gz2="$(_compress_if_exists 'SRR5988193_2' || true)"
gzs="$(_compress_if_exists 'SRR5988193' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_sALS32_IP_S76_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_sALS32_IP_S76_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988194"
gz1="$(_compress_if_exists 'SRR5988194_1' || true)"
gz2="$(_compress_if_exists 'SRR5988194_2' || true)"
gzs="$(_compress_if_exists 'SRR5988194' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_sALS33_IP_S78_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_sALS33_IP_S78_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988195"
gz1="$(_compress_if_exists 'SRR5988195_1' || true)"
gz2="$(_compress_if_exists 'SRR5988195_2' || true)"
gzs="$(_compress_if_exists 'SRR5988195' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_CTRL4_INPUT_S67_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_CTRL4_INPUT_S67_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988196"
gz1="$(_compress_if_exists 'SRR5988196_1' || true)"
gz2="$(_compress_if_exists 'SRR5988196_2' || true)"
gzs="$(_compress_if_exists 'SRR5988196' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_CTRL39_INPUT_S69_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_CTRL39_INPUT_S69_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988197"
gz1="$(_compress_if_exists 'SRR5988197_1' || true)"
gz2="$(_compress_if_exists 'SRR5988197_2' || true)"
gzs="$(_compress_if_exists 'SRR5988197' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_sALS30_INPUT_S71_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_sALS30_INPUT_S71_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988198"
gz1="$(_compress_if_exists 'SRR5988198_1' || true)"
gz2="$(_compress_if_exists 'SRR5988198_2' || true)"
gzs="$(_compress_if_exists 'SRR5988198' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_sALS32_INPUT_S75_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_sALS32_INPUT_S75_L007_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR5988199"
gz1="$(_compress_if_exists 'SRR5988199_1' || true)"
gz2="$(_compress_if_exists 'SRR5988199_2' || true)"
gzs="$(_compress_if_exists 'SRR5988199' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "RB_sALS33_INPUT_S77_L007_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "RB_sALS33_INPUT_S77_L007_R2_001.fastq.gz"
fi


# Option B: Direct download (larger .sra files)
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988190/SRR5988190"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988191/SRR5988191"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988192/SRR5988192"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988193/SRR5988193"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988194/SRR5988194"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988195/SRR5988195"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988196/SRR5988196"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988197/SRR5988197"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988198/SRR5988198"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988199/SRR5988199"

# --- Additional data files ---
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988196/SRR5988196"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988191/SRR5988191"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988195/SRR5988195"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988190/SRR5988190"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988190/SRR5988190"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988197/SRR5988197"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988192/SRR5988192"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988198/SRR5988198"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988193/SRR5988193"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988199/SRR5988199"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988194/SRR5988194"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988191/SRR5988191"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988194/SRR5988194"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR5988199/SRR5988199"

echo "Download complete. Files saved to $OUTDIR"