#!/usr/bin/env python3
"""Convert EPUB files to MOBI using Calibre's ebook-convert."""

import subprocess
import sys
from pathlib import Path

FOLDER_PATH = str(Path.home() / 'Downloads/ariels_books')


def convert(epub_path, output_path=None):
    epub = Path(epub_path)
    if not epub.exists():
        print(f"File not found: {epub}")
        sys.exit(1)

    if output_path is None:
        output_path = epub.with_suffix(".mobi")
    else:
        output_path = Path(output_path)

    subprocess.run(["/Applications/calibre.app/Contents/MacOS/ebook-convert", str(epub), str(output_path)], check=True)
    print(f"Converted: {output_path}")


def batch_convert(directory):
    directory = Path(directory)
    epubs = list(directory.glob("*.epub"))
    if not epubs:
        print(f"No .epub files found in {directory}")
        return

    for epub in epubs:
        mobi = epub.with_suffix(".mobi")
        if mobi.exists():
            print(f"Skipping (already exists): {mobi}")
            continue
        subprocess.run(["/Applications/calibre.app/Contents/MacOS/ebook-convert", str(epub), str(mobi)], check=True)
        print(f"Converted: {mobi}")


if __name__ == "__main__":
    batch_convert(FOLDER_PATH)
