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

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

# --- GEO supplementary files ---
wget -nc ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE120nnn/GSE120023/suppl/GSE120023_RAW.tar -O GSE120023_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 SRR7868823
gz1="$(_compress_if_exists SRR7868823_1 || true)"
gz2="$(_compress_if_exists SRR7868823_2 || true)"
gzs="$(_compress_if_exists SRR7868823 || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" Control_BLHiC_HepG2_rep1_R1.fq.gz
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" Control_BLHiC_HepG2_rep1_R2.fq.gz
fi

fasterq-dump --split-files SRR7868824
gz1="$(_compress_if_exists SRR7868824_1 || true)"
gz2="$(_compress_if_exists SRR7868824_2 || true)"
gzs="$(_compress_if_exists SRR7868824 || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" Control_BLHiC_HepG2_rep2_R1.fq.gz
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" Control_BLHiC_HepG2_rep2_R2.fq.gz
fi

fasterq-dump --split-files SRR7868825
gz1="$(_compress_if_exists SRR7868825_1 || true)"
gz2="$(_compress_if_exists SRR7868825_2 || true)"
gzs="$(_compress_if_exists SRR7868825 || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" RBM25.KD_BLHiC_HepG2_rep1_R1.fq.gz
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" RBM25.KD_BLHiC_HepG2_rep1_R2.fq.gz
fi

fasterq-dump --split-files SRR7868826
gz1="$(_compress_if_exists SRR7868826_1 || true)"
gz2="$(_compress_if_exists SRR7868826_2 || true)"
gzs="$(_compress_if_exists SRR7868826 || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" RBM25.KD_BLHiC_HepG2_rep2_R1.fq.gz
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" RBM25.KD_BLHiC_HepG2_rep2_R2.fq.gz
fi


# Option B: Direct download (larger .sra files)
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868823/SRR7868823
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868824/SRR7868824
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868825/SRR7868825
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868826/SRR7868826

# --- Additional data files ---
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868823/SRR7868823
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868824/SRR7868824
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868825/SRR7868825
curl -L -O -C - https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR7868826/SRR7868826

echo "Download complete. Files saved to $OUTDIR"