from AWK.mitglied import Mitglied
class SVereinDatei(object):
    '''
    classdocs
    '''

    def __init__(self, datei_name):
        '''
        Constructor
        '''
        self.datei_name = datei_name
        self.mitglieder = {}
        
        dh = open(datei_name)
        line = dh.readline().rstrip()
        export_header = line.split(";")
        
        sv_pn_spalte = -1
        
        i = 0
        for kopf in export_header:
            if kopf[0] == '"':
                kopf = kopf[1:-1]
            if kopf == 'Freifeldwert_1':
                sv_pn_spalte = i
            i += 1
        
        if sv_pn_spalte == -1:
            raise RuntimeError("S-Verein-Export enthält keine Partnernummer")

        for line in dh:
            data = line.rstrip().split(";")
            pn = data[sv_pn_spalte]
            if len(pn) == 0:
                print("Diese Zeile (export) hat keine Migliedsnummer: ", line)
            else:
                if pn[0] == '"':
                    pn = pn[1:-1]
                pn = int(pn)
                self.mitglieder[pn] = Mitglied(data)
