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

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

# --- GEO supplementary files ---
wget -nc "ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE205nnn/GSE205536/suppl/GSE205536_RAW.tar" -O "GSE205536_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 "SRR19547039"
gz1="$(_compress_if_exists 'SRR19547039_1' || true)"
gz2="$(_compress_if_exists 'SRR19547039_2' || true)"
gzs="$(_compress_if_exists 'SRR19547039' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "HEK293_rep1.fastq.gz"
fi

fasterq-dump --split-files "SRR19547040"
gz1="$(_compress_if_exists 'SRR19547040_1' || true)"
gz2="$(_compress_if_exists 'SRR19547040_2' || true)"
gzs="$(_compress_if_exists 'SRR19547040' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "K562_rep6.fastq.gz"
fi

fasterq-dump --split-files "SRR19547041"
gz1="$(_compress_if_exists 'SRR19547041_1' || true)"
gz2="$(_compress_if_exists 'SRR19547041_2' || true)"
gzs="$(_compress_if_exists 'SRR19547041' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "K562_rep4.fastq.gz"
fi

fasterq-dump --split-files "SRR19547042"
gz1="$(_compress_if_exists 'SRR19547042_1' || true)"
gz2="$(_compress_if_exists 'SRR19547042_2' || true)"
gzs="$(_compress_if_exists 'SRR19547042' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "HEK293_rep2.fastq.gz"
fi

fasterq-dump --split-files "SRR19547043"
gz1="$(_compress_if_exists 'SRR19547043_1' || true)"
gz2="$(_compress_if_exists 'SRR19547043_2' || true)"
gzs="$(_compress_if_exists 'SRR19547043' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "K562_SLBP_rep2.fastq.gz"
fi

fasterq-dump --split-files "SRR19547044"
gz1="$(_compress_if_exists 'SRR19547044_1' || true)"
gz2="$(_compress_if_exists 'SRR19547044_2' || true)"
gzs="$(_compress_if_exists 'SRR19547044' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "K562_SLBP_rep1.fastq.gz"
fi

fasterq-dump --split-files "SRR19547045"
gz1="$(_compress_if_exists 'SRR19547045_1' || true)"
gz2="$(_compress_if_exists 'SRR19547045_2' || true)"
gzs="$(_compress_if_exists 'SRR19547045' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "HEK293_RBFOX2_rep2.fastq.gz"
fi

fasterq-dump --split-files "SRR19547046"
gz1="$(_compress_if_exists 'SRR19547046_1' || true)"
gz2="$(_compress_if_exists 'SRR19547046_2' || true)"
gzs="$(_compress_if_exists 'SRR19547046' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "HEK293_RBFOX2_rep1.fastq.gz"
fi

fasterq-dump --split-files "SRR21487073"
gz1="$(_compress_if_exists 'SRR21487073_1' || true)"
gz2="$(_compress_if_exists 'SRR21487073_2' || true)"
gzs="$(_compress_if_exists 'SRR21487073' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "K562_rep1.fastq.gz"
fi


# Option B: Direct download (larger .sra files)
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547039/SRR19547039"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547040/SRR19547040"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547041/SRR19547041"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547042/SRR19547042"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547043/SRR19547043"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547044/SRR19547044"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547045/SRR19547045"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547046/SRR19547046"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR21487073/SRR21487073"

# --- Additional data files ---
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547046/SRR19547046"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547045/SRR19547045"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547039/SRR19547039"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547042/SRR19547042"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR21487073/SRR21487073"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547041/SRR19547041"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547040/SRR19547040"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547044/SRR19547044"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR19547043/SRR19547043"

echo "Download complete. Files saved to $OUTDIR"