#!/usr/bin/env bash
# Bulk download script for GSE227455
# Generated from Yeo Lab Knowledgebase
# Total files: 12

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

# --- GEO supplementary files ---
wget -nc ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE227nnn/GSE227455/suppl/GSE227455_4137_CLIP1_rep1.vs.4137_CLIP2_rep2.bed.gz -O GSE227455_4137_CLIP1_rep1.vs.4137_CLIP2_rep2.bed.gz
wget -nc ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE227nnn/GSE227455/suppl/GSE227455_RAW.tar -O GSE227455_RAW.tar
wget -nc ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE227nnn/GSE227455/suppl/GSE227455_encode4_batch23.4137_CLIP1_CLIP.umi.r1.fq.genome-mappedSoSo.rmDupSo.peakClusters.normed.compressed.sorted.blacklist-removed.bed.gz -O GSE227455_encode4_batch23.4137_CLIP1_CLIP.umi.r1.fq.genome-mappedSoSo.rmDupSo.peakClusters.normed.compressed.sorted.blacklist-removed.bed.gz
wget -nc ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE227nnn/GSE227455/suppl/GSE227455_encode4_batch23.4137_CLIP2_CLIP.umi.r1.fq.genome-mappedSoSo.rmDupSo.peakClusters.normed.compressed.sorted.blacklist-removed.bed.gz -O GSE227455_encode4_batch23.4137_CLIP2_CLIP.umi.r1.fq.genome-mappedSoSo.rmDupSo.peakClusters.normed.compressed.sorted.blacklist-removed.bed.gz

# --- 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 SRR23874041
gz1="$(_compress_if_exists SRR23874041_1 || true)"
gz2="$(_compress_if_exists SRR23874041_2 || true)"
gzs="$(_compress_if_exists SRR23874041 || true)"

fasterq-dump --split-files SRR23874042
gz1="$(_compress_if_exists SRR23874042_1 || true)"
gz2="$(_compress_if_exists SRR23874042_2 || true)"
gzs="$(_compress_if_exists SRR23874042 || true)"

fasterq-dump --split-files SRR23874043
gz1="$(_compress_if_exists SRR23874043_1 || true)"
gz2="$(_compress_if_exists SRR23874043_2 || true)"
gzs="$(_compress_if_exists SRR23874043 || true)"

fasterq-dump --split-files SRR23874044
gz1="$(_compress_if_exists SRR23874044_1 || true)"
gz2="$(_compress_if_exists SRR23874044_2 || true)"
gzs="$(_compress_if_exists SRR23874044 || true)"


# Option B: Direct download (larger .sra files)
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874041/SRR23874041.1
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874042/SRR23874042.1
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874043/SRR23874043.1
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874044/SRR23874044.1

# --- Additional data files ---
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874041/SRR23874041.1
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874042/SRR23874042.1
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874043/SRR23874043.1
curl -L -O -C - https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos9/sra-pub-run-936/SRR023/23874/SRR23874044/SRR23874044.1

echo "Download complete. Files saved to $OUTDIR"