#!/usr/bin/env python2
# -*- coding: utf-8 -*-

import sys
from os.path import join

def register_ead():
    """
        Enregistrement de l'EAD local
    """
    sys.path.insert(1, '/usr/share')
    try:
        from ead2.frontend.web.lib.servers import servers
        from ead2.lib.libead import EadKeyParser
        from ead2.lib.crypto import create_key as create_magicnb
        from ead2.backend.config.config import CONFIG_DIR, FRONTEND_KEYS_FILE
        from ead2.config.config import BACKEND_LISTEN_PORT, dico
    except:
        return
    ead = EadKeyParser()
    ead.parse_file(join(CONFIG_DIR, FRONTEND_KEYS_FILE))
    if ead.get_key_dict() != {}:
        # des frontend sont déjà enregistrés
        return
    key = create_magicnb('admin','admin')
    dic = {'127.0.0.1' : key}
    # ecriture clé ead-serveur
    ead.write_file(join(CONFIG_DIR, FRONTEND_KEYS_FILE), dic)
    # ecriture clé ead-web
    nom_machine = dico['nom_machine']
    servers().add_server('https://127.0.0.1',
                         str(BACKEND_LISTEN_PORT),
                         nom_machine,
                         str(key))

register_ead()
