#!/cygdrive/c/python33/python
# Program to add the latin name to bird_class
import pdb
import subprocess

# get the latin name from the files
def get_status(status):
    print ('--Checking for latin names')

    ls_in = str(subprocess.check_output(['head', '-2000', '../text/*.txt']), encoding='utf8')
    ls_in1 = str(subprocess.check_output(['head', '-2000', '../Descriptions/*.txt']), encoding='utf8')
    ls_in = ls_in + ls_in1
    ls_in = ls_in.rstrip('\n')
    alist = ls_in.split('\n')
    for line in alist:
        if len(line) < 1: continue
        if line[0] == '=':
            start = line.rfind('/')
            end = line.find('.txt')
            name = line[start+1:end]
        elif 'IUCN' in line or 'Conservation' in line:
            start = line.find("'")
            end = line.rfind("'")
            status = line[start+1:end]
            print (name, ":  ", status)
    return

# routine to pull out the latin names and add them to the bird-class database

status = {}
keys = []
get_status(status)
pdb.set_trace()

infile = open('bird_class')
outfile = open('bird_new', 'w')
for line in infile:
    if ('bird:' in line and '#' not in line[0]):
        #pdb.set_trace()
        fields = line.split(':')
        bird = fields[1].lstrip()
        bird = bird.rstrip()
        bird = bird.replace(' ','')
        start = line.find(fields[2])
        if (bird in latin):
            aline = line[0:start] + latin[bird] + ':' + line[start:]
        else:
            aline = line[0:start] + ' ' + ':' + line[start:]
            print (bird)
        outfile.write(aline)
    else:
        outfile.write(line)
