Prise en compte des boîtes
authorWilly MANGA <willy.manga@auf.org>
Fri, 30 May 2014 18:51:29 +0000 (19:51 +0100)
committerWilly MANGA <willy.manga@auf.org>
Fri, 30 May 2014 18:51:29 +0000 (19:51 +0100)
projets_django/bacgl_django/messagerie/admin.py
projets_django/bacgl_django/messagerie/migrations/0004_auto__add_mailbox.py [new file with mode: 0644]
projets_django/bacgl_django/messagerie/migrations/0005_recopieMailbox.py [new file with mode: 0644]
projets_django/bacgl_django/messagerie/models.py

index cf1cc4c..d72939f 100644 (file)
@@ -1,7 +1,8 @@
 from django.contrib import admin
-from messagerie.models import Auth
+from messagerie.models import Auth,Mailbox
 
 class AuthAdmin(admin.ModelAdmin):
         search_fields = ['user']
     
 admin.site.register(Auth,AuthAdmin)
+admin.site.register(Mailbox)
diff --git a/projets_django/bacgl_django/messagerie/migrations/0004_auto__add_mailbox.py b/projets_django/bacgl_django/messagerie/migrations/0004_auto__add_mailbox.py
new file mode 100644 (file)
index 0000000..359179a
--- /dev/null
@@ -0,0 +1,45 @@
+# -*- coding: utf-8 -*-
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+
+class Migration(SchemaMigration):
+
+    def forwards(self, orm):
+        # Adding model 'Mailbox'
+        db.create_table('messagerie_mailbox', (
+            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+            ('proprietaire', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['messagerie.Auth'])),
+            ('domain', self.gf('django.db.models.fields.CharField')(default='cm.auf.org', max_length=384)),
+            ('homedir', self.gf('django.db.models.fields.CharField')(default='/var/mail/vhost/cm.auf.org', max_length=768)),
+        ))
+        db.send_create_signal('messagerie', ['Mailbox'])
+
+
+    def backwards(self, orm):
+        # Deleting model 'Mailbox'
+        db.delete_table('messagerie_mailbox')
+
+
+    models = {
+        'messagerie.auth': {
+            'Meta': {'ordering': "['user']", 'object_name': 'Auth'},
+            'actif': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+            'expire': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'password': ('django.db.models.fields.CharField', [], {'max_length': '384'}),
+            'source': ('django.db.models.fields.CharField', [], {'default': "'LOCAL'", 'max_length': '192'}),
+            'user': ('django.db.models.fields.CharField', [], {'max_length': '384'})
+        },
+        'messagerie.mailbox': {
+            'Meta': {'object_name': 'Mailbox'},
+            'domain': ('django.db.models.fields.CharField', [], {'default': "'cm.auf.org'", 'max_length': '384'}),
+            'homedir': ('django.db.models.fields.CharField', [], {'default': "'/var/mail/vhost/cm.auf.org'", 'max_length': '768'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'proprietaire': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['messagerie.Auth']"})
+        }
+    }
+
+    complete_apps = ['messagerie']
\ No newline at end of file
diff --git a/projets_django/bacgl_django/messagerie/migrations/0005_recopieMailbox.py b/projets_django/bacgl_django/messagerie/migrations/0005_recopieMailbox.py
new file mode 100644 (file)
index 0000000..6794b98
--- /dev/null
@@ -0,0 +1,71 @@
+# -*- coding: utf-8 -*-
+import datetime
+from south.db import db
+from south.v2 import DataMigration
+from django.db import models
+
+class Migration(DataMigration):
+
+    def forwards(self, orm):
+        "Write your forwards methods here."
+        # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..."
+        for cle in orm['messagerie.Auth'].objects.all():
+            for boite in orm['ancien_messagerie.Mailbox'].objects.all():
+                orm['messagerie.Mailbox']().objects.get_or_create(proprietaire_id=cle.id,
+                        domain=boite.domain,
+                        homedir=boite.homedir)
+                break
+
+    def backwards(self, orm):
+        "Write your backwards methods here."
+
+    models = {
+        'ancien_messagerie.auth': {
+            'Meta': {'object_name': 'Auth', 'db_table': "u'auth'"},
+            'actif': ('django.db.models.fields.IntegerField', [], {}),
+            'expire': ('django.db.models.fields.IntegerField', [], {}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'password': ('django.db.models.fields.CharField', [], {'max_length': '384'}),
+            'source': ('django.db.models.fields.CharField', [], {'max_length': '192'}),
+            'user': ('django.db.models.fields.CharField', [], {'max_length': '384'})
+        },
+        'ancien_messagerie.mailbox': {
+            'Meta': {'object_name': 'Mailbox', 'db_table': "u'mailbox'"},
+            'actif': ('django.db.models.fields.IntegerField', [], {}),
+            'domain': ('django.db.models.fields.CharField', [], {'max_length': '384'}),
+            'expire': ('django.db.models.fields.IntegerField', [], {}),
+            'homedir': ('django.db.models.fields.CharField', [], {'max_length': '768'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'source': ('django.db.models.fields.CharField', [], {'max_length': '192'}),
+            'user': ('django.db.models.fields.CharField', [], {'max_length': '384'})
+        },
+        'ancien_messagerie.virtual': {
+            'Meta': {'object_name': 'Virtual', 'db_table': "u'virtual'"},
+            'actif': ('django.db.models.fields.IntegerField', [], {}),
+            'destination': ('django.db.models.fields.CharField', [], {'max_length': '768'}),
+            'domain': ('django.db.models.fields.CharField', [], {'max_length': '384'}),
+            'expire': ('django.db.models.fields.IntegerField', [], {}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'source': ('django.db.models.fields.CharField', [], {'max_length': '192'}),
+            'user': ('django.db.models.fields.CharField', [], {'max_length': '384'})
+        },
+        'messagerie.auth': {
+            'Meta': {'ordering': "['user']", 'object_name': 'Auth'},
+            'actif': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+            'expire': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'password': ('django.db.models.fields.CharField', [], {'max_length': '384'}),
+            'source': ('django.db.models.fields.CharField', [], {'default': "'LOCAL'", 'max_length': '192'}),
+            'user': ('django.db.models.fields.CharField', [], {'max_length': '384'})
+        },
+        'messagerie.mailbox': {
+            'Meta': {'object_name': 'Mailbox'},
+            'domain': ('django.db.models.fields.CharField', [], {'default': "'cm.auf.org'", 'max_length': '384'}),
+            'homedir': ('django.db.models.fields.CharField', [], {'default': "'/var/mail/vhost/cm.auf.org'", 'max_length': '768'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'proprietaire': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['messagerie.Auth']"})
+        }
+    }
+
+    complete_apps = ['ancien_messagerie', 'messagerie']
+    symmetrical = True
index 396990d..216313c 100644 (file)
@@ -24,3 +24,16 @@ class Auth(models.Model):
 
     def __unicode__(self):
          return self.user
+
+class Mailbox(models.Model):
+        """
+        Informations sur l'emplacement des boîtes aux lettres
+        """
+
+        proprietaire = models.ForeignKey(Auth)
+        domain = models.CharField(max_length=384, default="cm.auf.org")
+        homedir = models.CharField(max_length=768,
+                        default="/var/mail/vhost/cm.auf.org")
+
+        def __unicode__(self):
+                return self.homedir