<commit_before># coding=utf-8
"""
Module d'info sur les étudiants.
"""
from __future__ import unicode_literals
from django.utils.encoding import python_2_unicode_compatible
from django_apogee.managers import EtapeNonCondiValideManager, EtapeNonCondiValideManagerOracle, \
    EtapeCondiValideManagerOracle
from django_apogee.managers import EtapeCondiValideManager
from django_apogee import utils

__author__ = 'paul'

from django_apogee.models import AnneeUni, ComBdi, Pays, CompositeImplementation, CompositeInitial
from django.db import models, connection, connections, DatabaseError


@python_2_unicode_compatible
class Individu(models.Model):
    cod_ind = models.IntegerField(u"Code Etudiant au sein de l'Etablissement", primary_key=True, db_column="COD_IND")
    cod_thp = models.CharField(u"code type handicap", max_length=2, null=True, db_column="COD_THP")
    cod_fam = models.CharField(u"code situation familiale", max_length=1, null=True, db_column="COD_FAM")
    cod_sim = models.CharField(u"code situation militaire", max_length=1, null=True, db_column="COD_SIM")
    cod_pay_nat = models.CharField(u"code pays insee nationalie", max_length=3, null=True, db_column="COD_PAY_NAT")
    cod_etb = models.CharField(u"code notional de l'etablissement premiere inscription", max_length=8, null=True,
                               db_column="COD_ETB")
    cod_uti = models.CharField(u"code utilisateur de creation de l'individu", max_length=30, null=True,
                               db_column="COD_UTI")
    cod_ind_opi = models.IntegerField('cod_opi', db_column="COD_IND_OPI", null=True)
    cod_nne_ind = models.CharField(u"Identifiant National de l'étudiant",
                                   max_length=10, null=True, db_column="COD_NNE_IND")
    cod_cle_nne_ind = models.CharField(u"Cle de l'identifiant national etudiant", max_length=1, null=True,
                                       db_column="COD_CLE_NNE_IND")
    dat_cre_ind = models.DateTimeField(u"Date de création de l'individu", db_column="DAT_CRE_IND", null=True)
    dat_mod_ind = models.DateTimeField(u"Date de modification de l'individu", db_column="DAT_MOD_IND", null=True)
    date_nai_ind = models.DateTimeField(u"Date de naissance de l'individu", db_column="DATE_NAI_IND", null=True)
    tem_date_nai_rel = models.CharField(u"temoin date estime", max_length=1, null=True, default="O",
                                        db_column="TEM_DATE_NAI_REL")
    daa_lbt_ind = models.CharField(u"annee liberation etudiant sous les drapaux", max_length=4, null=True,
                                   db_column="DAA_LBT_IND")
    dmm_lbt_ind = models.CharField(u"mois de liberation etudiant sous les drapaux", max_length=2, null=True,
                                   db_column="DMM_LBT_IND")
    daa_ent_etb = models.CharField(u"annee premiere inscription universite francaise", max_length=4, null=True,
                                   db_column="DAA_ENT_ETB")

    lib_nom_pat_ind = models.CharField(u"Nom Patronymique Etudiant", max_length=30, null=True,
                                       db_column="LIB_NOM_PAT_IND")
    lib_nom_usu_ind = models.CharField(u"Nom Usuel Etudiant", max_length=30, null=True, db_column="LIB_NOM_USU_IND")
    lib_pr1_ind = models.CharField(u"Prenom 1 de l'Etudiant", max_length=20, null=True, db_column="LIB_PR1_IND")
    lib_pr2_ind = models.CharField(u"Prenom 2 de l'Etudiant", max_length=20, null=True, db_column="LIB_PR2_IND")
    lib_pr3_ind = models.CharField(u"Prenom 3 de l'Etudiant", max_length=20, null=True, db_column="LIB_PR3_IND")

    cod_etu = models.IntegerField(u"Code Etudiant", db_column="COD_ETU", null=True)
    cod_sex_etu = models.CharField(u"Code Sexe de l'Etudiant", max_length=1, null=True, db_column="COD_SEX_ETU")
    
    daa_ens_sup = models.CharField(u"annee de 1er inscription dans l'etablissement superieur", max_length=4, null=True,
                                   db_column="DAA_ENS_SUP")
    daa_etb = models.CharField(u"annee de 1er inscription dans l'etablisseement", max_length=4, null=True,
                               db_column="DAA_ETB")

    def get_code_secret(self):
        return utils.make_etudiant_password(self.cod_etu)

    get_code_secret.short_description = "Code secret:"

    def ine(self):
        return u"%s%s" % (self.cod_nne_ind, self.cod_cle_nne_ind)

    class Meta:
        db_table = "INDIVIDU"
        verbose_name = u"étudiant"
        app_label = 'django_apogee'

    def identite(self):
        return u"%s %s %s" % (self.lib_nom_pat_ind, self.lib_nom_usu_ind, self.lib_pr1_ind)
    identite.short_description = u"identité"

    def get_adresse_annuelle(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].get_dico()
        else:
            return {'lib_ad1': '',
                    'lib_ad2': '',
                    'lib_ad3': '',
                    'cod_bdi': '',
                    'lib_ach': '',
                    'lib_ade': '',
                    'lib_pay': '',
                    'cod_pay': '',
                    'cod_com': ''}

    def get_adresse_fixe(self):
        adresse_fixe = self.adresse_fixe.all()
        if adresse_fixe:
            return adresse_fixe[0].get_dico()
        else:
            pass
        return {'lib_ad1': '',
                'lib_ad2': '',
                'lib_ad3': '',
                'cod_bdi': '',
                'lib_ach': '',
                'lib_ade': '',
                'lib_pay': '',
                'cod_pay': '',
                'cod_com': ''}

    def get_adresse(self, annee):

        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].get_str()
        else:
            return self.adresse_fixe.all()[0].get_str()

    def get_code_postal(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].cod_bdi or adresse_annuelle[0].lib_ade
        else:
            return self.adresse_fixe.all()[0].cod_bdi or self.adresse_fixe.all()[0].lib_ade

    def get_pays(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].cod_pay.lib_pay
        else:
            return self.adresse_fixe.all()[0].cod_pay.lib_pay

    def get_full_adresse(self, annee):
        try:
            adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
            if adresse_annuelle:
                return adresse_annuelle[0].__str__()
            else:
                return self.adresse_fixe.all()[0].__str__()
        except IndexError:
            return ""

    def get_adresse_html(self):
        try:
            adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=self)
            if adresse_annuelle:
                return adresse_annuelle[0].html()
            else:
                return self.adresse_fixe.all()[0].html()
        except IndexError:
            return u""

    get_full_adresse.short_description = 'Adresse'

    def get_dico_adresse(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].get_dico()
        else:
            return self.adresse_fixe.all()[0].get_dico()

    def get_tel_fixe(self):
        if self.adresse_fixe.all()[0].num_tel != u'':
            return self.adresse_fixe.all()[0].num_tel
        else:
            return self.adresse_fixe.all()[0].num_tel_port

    def get_tel_annuel(self):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=self.annee)
        if adresse_annuelle and adresse_annuelle[0].num_tel != u'':
            return adresse_annuelle[0].num_tel
        else:
            return adresse_annuelle[0].num_tel_port

    def get_tel(self):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=self.annee)
        if adresse_annuelle and adresse_annuelle[0].num_tel != u'':
            return adresse_annuelle[0].num_tel
        elif adresse_annuelle and adresse_annuelle[0].num_tel_port != u'':
            return adresse_annuelle[0].num_tel_port
        else:<commit_msg>Etiquettes<commit_after># coding=utf-8
"""
Module d'info sur les étudiants.
"""
from __future__ import unicode_literals
from django.utils.encoding import python_2_unicode_compatible
from django_apogee.managers import EtapeNonCondiValideManager, EtapeNonCondiValideManagerOracle, \
    EtapeCondiValideManagerOracle
from django_apogee.managers import EtapeCondiValideManager
from django_apogee import utils

__author__ = 'paul'

from django_apogee.models import AnneeUni, ComBdi, Pays, CompositeImplementation, CompositeInitial
from django.db import models, connection, connections, DatabaseError


@python_2_unicode_compatible
class Individu(models.Model):
    cod_ind = models.IntegerField(u"Code Etudiant au sein de l'Etablissement", primary_key=True, db_column="COD_IND")
    cod_thp = models.CharField(u"code type handicap", max_length=2, null=True, db_column="COD_THP")
    cod_fam = models.CharField(u"code situation familiale", max_length=1, null=True, db_column="COD_FAM")
    cod_sim = models.CharField(u"code situation militaire", max_length=1, null=True, db_column="COD_SIM")
    cod_pay_nat = models.CharField(u"code pays insee nationalie", max_length=3, null=True, db_column="COD_PAY_NAT")
    cod_etb = models.CharField(u"code notional de l'etablissement premiere inscription", max_length=8, null=True,
                               db_column="COD_ETB")
    cod_uti = models.CharField(u"code utilisateur de creation de l'individu", max_length=30, null=True,
                               db_column="COD_UTI")
    cod_ind_opi = models.IntegerField('cod_opi', db_column="COD_IND_OPI", null=True)
    cod_nne_ind = models.CharField(u"Identifiant National de l'étudiant",
                                   max_length=10, null=True, db_column="COD_NNE_IND")
    cod_cle_nne_ind = models.CharField(u"Cle de l'identifiant national etudiant", max_length=1, null=True,
                                       db_column="COD_CLE_NNE_IND")
    dat_cre_ind = models.DateTimeField(u"Date de création de l'individu", db_column="DAT_CRE_IND", null=True)
    dat_mod_ind = models.DateTimeField(u"Date de modification de l'individu", db_column="DAT_MOD_IND", null=True)
    date_nai_ind = models.DateTimeField(u"Date de naissance de l'individu", db_column="DATE_NAI_IND", null=True)
    tem_date_nai_rel = models.CharField(u"temoin date estime", max_length=1, null=True, default="O",
                                        db_column="TEM_DATE_NAI_REL")
    daa_lbt_ind = models.CharField(u"annee liberation etudiant sous les drapaux", max_length=4, null=True,
                                   db_column="DAA_LBT_IND")
    dmm_lbt_ind = models.CharField(u"mois de liberation etudiant sous les drapaux", max_length=2, null=True,
                                   db_column="DMM_LBT_IND")
    daa_ent_etb = models.CharField(u"annee premiere inscription universite francaise", max_length=4, null=True,
                                   db_column="DAA_ENT_ETB")

    lib_nom_pat_ind = models.CharField(u"Nom Patronymique Etudiant", max_length=30, null=True,
                                       db_column="LIB_NOM_PAT_IND")
    lib_nom_usu_ind = models.CharField(u"Nom Usuel Etudiant", max_length=30, null=True, db_column="LIB_NOM_USU_IND")
    lib_pr1_ind = models.CharField(u"Prenom 1 de l'Etudiant", max_length=20, null=True, db_column="LIB_PR1_IND")
    lib_pr2_ind = models.CharField(u"Prenom 2 de l'Etudiant", max_length=20, null=True, db_column="LIB_PR2_IND")
    lib_pr3_ind = models.CharField(u"Prenom 3 de l'Etudiant", max_length=20, null=True, db_column="LIB_PR3_IND")

    cod_etu = models.IntegerField(u"Code Etudiant", db_column="COD_ETU", null=True)
    cod_sex_etu = models.CharField(u"Code Sexe de l'Etudiant", max_length=1, null=True, db_column="COD_SEX_ETU")
    
    daa_ens_sup = models.CharField(u"annee de 1er inscription dans l'etablissement superieur", max_length=4, null=True,
                                   db_column="DAA_ENS_SUP")
    daa_etb = models.CharField(u"annee de 1er inscription dans l'etablisseement", max_length=4, null=True,
                               db_column="DAA_ETB")

    def get_code_secret(self):
        return utils.make_etudiant_password(self.cod_etu)

    get_code_secret.short_description = "Code secret:"

    def ine(self):
        return u"%s%s" % (self.cod_nne_ind, self.cod_cle_nne_ind)

    class Meta:
        db_table = "INDIVIDU"
        verbose_name = u"étudiant"
        app_label = 'django_apogee'

    def identite(self):
        return u"%s %s %s" % (self.lib_nom_pat_ind, self.lib_nom_usu_ind, self.lib_pr1_ind)
    identite.short_description = u"identité"

    def get_adresse_annuelle(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].get_dico()
        else:
            return {'lib_ad1': '',
                    'lib_ad2': '',
                    'lib_ad3': '',
                    'cod_bdi': '',
                    'lib_ach': '',
                    'lib_ade': '',
                    'lib_pay': '',
                    'cod_pay': '',
                    'cod_com': ''}

    def get_adresse_fixe(self):
        adresse_fixe = self.adresse_fixe.all()
        if adresse_fixe:
            return adresse_fixe[0].get_dico()
        else:
            pass
        return {'lib_ad1': '',
                'lib_ad2': '',
                'lib_ad3': '',
                'cod_bdi': '',
                'lib_ach': '',
                'lib_ade': '',
                'lib_pay': '',
                'cod_pay': '',
                'cod_com': ''}

    def get_adresse(self, annee):

        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].get_str()
        else:
            return self.adresse_fixe.all()[0].get_str()

    def get_code_postal(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].cod_bdi or adresse_annuelle[0].lib_ade
        else:
            return self.adresse_fixe.all()[0].cod_bdi or self.adresse_fixe.all()[0].lib_ade

    def get_pays(self, annee):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].cod_pay.lib_pay
        else:
            return self.adresse_fixe.all()[0].cod_pay.lib_pay

    def get_full_adresse(self, annee):
        try:
            adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
            if adresse_annuelle:
                return adresse_annuelle[0].__str__()
            else:
                return self.adresse_fixe.all()[0].__str__()
        except IndexError:
            return ""

    def get_adresse_html(self):
        try:
            adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=self)
            if adresse_annuelle:
                return adresse_annuelle[0].html()
            else:
                return self.adresse_fixe.all()[0].html()
        except IndexError:
            return u""

    get_full_adresse.short_description = 'Adresse'

    def get_dico_adresse(self, annee=2014):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=annee)
        if adresse_annuelle:
            return adresse_annuelle[0].get_dico()
        else:
            return self.adresse_fixe.all()[0].get_dico()

    def get_tel_fixe(self):
        if self.adresse_fixe.all()[0].num_tel != u'':
            return self.adresse_fixe.all()[0].num_tel
        else:
            return self.adresse_fixe.all()[0].num_tel_port

    def get_tel_annuel(self):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=self.annee)
        if adresse_annuelle and adresse_annuelle[0].num_tel != u'':
            return adresse_annuelle[0].num_tel
        else:
            return adresse_annuelle[0].num_tel_port

    def get_tel(self):
        adresse_annuelle = self.adresse_annuelle.filter(cod_anu_ina=self.annee)
        if adresse_annuelle and adresse_annuelle[0].num_tel != u'':
            return adresse_annuelle[0].num_tel
        elif adresse_annuelle and adresse_annuelle[0].num_tel_port != u'':
            return adresse_annuelle[0].num_tel_port
        else:
{'fraction_non_alphanumeric': 0.10371925614877024, 'fraction_numerical': 0.009118176364727055, 'mean_word_length': 2.767457627118644, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 16, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '511859', 'n_tokens_mistral': 5819, 'n_tokens_neox': 5620, 'n_words': 925}