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

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

# --- GEO supplementary files ---
wget -nc "ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE145nnn/GSE145430/suppl/GSE145430_all_DEseq2_Zmat3_processed_data.xlsx" -O "GSE145430_all_DEseq2_Zmat3_processed_data.xlsx"

# --- 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 "SRR11098972"
gz1="$(_compress_if_exists 'SRR11098972_1' || true)"
gz2="$(_compress_if_exists 'SRR11098972_2' || true)"
gzs="$(_compress_if_exists 'SRR11098972' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "KB1-CGATGT_S1_L001_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "KB1-CGATGT_S1_L001_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR11098973"
gz1="$(_compress_if_exists 'SRR11098973_1' || true)"
gz2="$(_compress_if_exists 'SRR11098973_2' || true)"
gzs="$(_compress_if_exists 'SRR11098973' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "KB2-TGACCA_S2_L001_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "KB2-TGACCA_S2_L001_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR11098974"
gz1="$(_compress_if_exists 'SRR11098974_1' || true)"
gz2="$(_compress_if_exists 'SRR11098974_2' || true)"
gzs="$(_compress_if_exists 'SRR11098974' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "KB4-GCCAAT_S4_L001_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "KB4-GCCAAT_S4_L001_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR11098975"
gz1="$(_compress_if_exists 'SRR11098975_1' || true)"
gz2="$(_compress_if_exists 'SRR11098975_2' || true)"
gzs="$(_compress_if_exists 'SRR11098975' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "KB5-CAGATC_S5_L001_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "KB5-CAGATC_S5_L001_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR11098976"
gz1="$(_compress_if_exists 'SRR11098976_1' || true)"
gz2="$(_compress_if_exists 'SRR11098976_2' || true)"
gzs="$(_compress_if_exists 'SRR11098976' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "KB6-CTTGTA_S6_L001_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "KB6-CTTGTA_S6_L001_R2_001.fastq.gz"
fi

fasterq-dump --split-files "SRR11098977"
gz1="$(_compress_if_exists 'SRR11098977_1' || true)"
gz2="$(_compress_if_exists 'SRR11098977_2' || true)"
gzs="$(_compress_if_exists 'SRR11098977' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "KB7-AGTCAA_S7_L001_R1_001.fastq.gz"
fi
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "KB7-AGTCAA_S7_L001_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/SRR11098972/SRR11098972"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098973/SRR11098973"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098974/SRR11098974"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098975/SRR11098975"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098976/SRR11098976"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098977/SRR11098977"

# --- Additional data files ---
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098972/SRR11098972"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098973/SRR11098973"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098974/SRR11098974"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098975/SRR11098975"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098976/SRR11098976"
curl -L -O -C - "https://sra-pub-run-odp.s3.amazonaws.com/sra/SRR11098977/SRR11098977"

echo "Download complete. Files saved to $OUTDIR"