Portail captif
[ongolaboy.git] / projets_django / bacgl_django / messagerie / models.py
CommitLineData
c88b3923
WM
1# -*- coding: utf-8 -*-
2
8650d7a7
O
3from django.db import models
4
64fc23ce 5CHOIX_BINAIRE = (
16a65c6b
WM
6 (1, "Actif"),
7 (0, "Inactif"),
64fc23ce
WM
8 )
9
ce0081f9
WM
10DOMAINE = (
11 ("cm.auf.org","Cameroun"),
12 ("td.auf.org","Tchad"),
13 ("cf.auf.org","Centrafrique"),
14 ("ga.auf.org","Gabon"),
15 ("cg.auf.org","Congo"),
16 ("cd.auf.org","République Démocratique du Congo"),
17 ("bi.auf.org","Burundi"),
18 )
19
64fc23ce 20class Auth(models.Model):
c88b3923
WM
21 """
22 Informations sur l'authentification des utilisateurs
23 """
24
25 user = models.CharField(max_length=384)
26 password = models.CharField(max_length=384)
27 actif = models.IntegerField(choices=CHOIX_BINAIRE,default=1)
28 expire = models.IntegerField(choices=CHOIX_BINAIRE,default=0)
29 source = models.CharField(max_length=192,default='LOCAL')
30
31 class Meta:
32 ordering = ['user']
33 verbose_name = 'compte'
34
35 def __unicode__(self):
36 return self.user
d7ea757f
WM
37
38class Mailbox(models.Model):
ce0081f9
WM
39 """
40 Informations sur l'emplacement des boîtes aux lettres
41 """
d7ea757f 42
ce0081f9
WM
43 proprietaire = models.ForeignKey(Auth)
44 domain = models.CharField(max_length=384,
45 default=DOMAINE[0][0],
46 choices=DOMAINE)
47 homedir = models.CharField(max_length=768,
48 default="/var/mail/vhosts/,"
49 )
d7ea757f 50
ce0081f9
WM
51 class Meta:
52 ordering = ['proprietaire']
53 verbose_name = 'boîte'
54
55 def __unicode__(self):
56 return self.proprietaire.user
2cd401e3
WM
57
58class Alias(models.Model):
59 """
60 Nous faisons usages d'adresses «génériques» ou alias pour envoyer des courriels
61 à une ou plusieurs personnes.
62 """
63
64 nom = models.EmailField("Nom de l'alias", primary_key=True,
65 help_text="Veuillez insérer une adresse électronique")
66 date_creation = models.DateTimeField("date de création",
67 auto_now_add=True)
68 responsable = models.CharField("Nom du responsable",max_length=256,
69 default="Support technique")
70 observations = models.TextField("Observations",max_length=256,
71 blank=True,
72 default='')
73
74 def __unicode__(self):
75 return self.nom