#!/usr/bin/python3

import argparse
import glob
import os

from erimp import Erimp
from prena import Prena

desc = 'remove source for a first issue that has no work done'
parser = argparse.ArgumentParser(description=desc)
parser.add_argument('-v', action='store_true', help='raise verbosity')
parser.add_argument('-n', action='store_true', help='dry run')
parser.add_argument('bapis', metavar='bnp', type=str, nargs='*',
                    help='bits and pieces arguments')
args = parser.parse_args()

e = Erimp(args.bapis, do_verbose=args.v)

embryos = []
for repcode in e.live:
    sent_dir = e.report[repcode].dirs['sent']
    # # report has nothing at all
    if sent_dir is None:
        continue
    created_dir = e.report[repcode].dirs['created']
    if e.d.dates(created_dir) is None:
        continue
    # # has a created issue
    if len(e.d.dates(created_dir)) > 0:
        continue
    sent_dir = e.report[repcode].dirs['sent']
    if e.d.dates(sent_dir) is None:
        continue
    # # never brought out an issue
    if len(e.d.dates(sent_dir)) > 1:
        continue
    source_dir = e.report[repcode].dirs['source']
    # # fix me, this should look for amf files
    source_fufis = glob.glob(source_dir + '/*')
    if len(source_fufis) < 1:
        continue
    target_fufi = source_fufis[0]
    if args.n:
        print(f"I can delete {target_fufi}.")
        continue
    os.remove(target_fufi)
    embryos.append(repcode)

# # cleaned repcodes can be used to run prena
prena = Prena(e, do_verbose=args.v)

# # run prena with the found embryo data
prena.run(embryos=embryos)
