from openfisca_france.model.base import *


class chomeur_longue_duree(Variable):
    cerfa_field = {
        0: '1AI',
        1: '1BI',
        2: '1CI',
        3: '1DI',
        4: '1EI',
        }
    value_type = bool
    entity = Individu
    label = "Demandeur d'emploi inscrit depuis plus d'un an"
    definition_period = YEAR
    # Pour toutes les variables de ce type, les pac3 ne sont plus proposés après 2007


class chomage_brut(Variable):
    value_type = float
    entity = Individu
    label = "Chômage brut (revenus de remplacement pour les demandeurs d'emploi)"
    definition_period = MONTH
    set_input = set_input_divide_by_period
    calculate_output = calculate_output_add

    def formula(individu, period):
        return individu('allocation_retour_emploi', period)


class indemnites_chomage_partiel(Variable):
    value_type = float
    entity = Individu
    label = 'Indemnités de chômage partiel'
    definition_period = MONTH
    set_input = set_input_divide_by_period


class allocation_retour_emploi(Variable):
    value_type = float
    entity = Individu
    label = "Allocation chômage d'aide au retour à l'emploi (ARE)"
    definition_period = MONTH
    set_input = set_input_divide_by_period
    reference = 'https://www.legifrance.gouv.fr/codes/id/LEGISCTA000006178163/'


class allocation_retour_emploi_journaliere(Variable):
    value_type = float
    entity = Individu
    label = "Allocation chômage d'aide au retour à l'emploi (ARE) journalière au sens Pôle Emploi"
    definition_period = MONTH
    set_input = set_input_divide_by_period
    reference = 'https://www.legifrance.gouv.fr/codes/id/LEGISCTA000006178163/'


class allocation_travailleur_independant(Variable):
    value_type = float
    entity = Individu
    label = 'Allocation des travailleurs indépendants (ATI)'
    definition_period = MONTH
    set_input = set_input_divide_by_period
    reference = 'https://www.legifrance.gouv.fr/codes/id/LEGISCTA000037388330/'
    documentation = '''
    Indemnisation de Pôle emploi en vigueur à partir du 1er novembre 2019 à destination
    des travailleurs non salariés indépendants contraints de mettre fin à leur activité.
    '''
