8
0
Fork 0
mirror of https://gitlab2.federez.net/re2o/re2o synced 2024-11-23 20:03:11 +00:00

répartition des preferences et squash des migrations

This commit is contained in:
Grizzly 2019-08-13 13:05:12 +00:00
parent 3a5fad0287
commit cb3fdff202
6 changed files with 83 additions and 6 deletions

View file

@ -6,7 +6,6 @@ from django.utils.translation import ugettext_lazy as _
from .models import( from .models import(
Ticket, Ticket,
Preferences,
) )
class EditTicketForm(FormRevMixin, ModelForm): class EditTicketForm(FormRevMixin, ModelForm):
@ -22,12 +21,12 @@ class NewTicketForm(ModelForm):
class Meta: class Meta:
model = Ticket model = Ticket
fields = ['title', 'description', 'email'] fields = ['title', 'description', 'email']
"""
class EditPreferencesForm(ModelForm): class EditPreferencesForm(ModelForm):
""" Edition des préférences des tickets """
class Meta: class Meta:
model = Preferences model = Preferences
fields = '__all__' fields = '__all__'
"""
class ChangeStatusTicketForm(ModelForm): class ChangeStatusTicketForm(ModelForm):
""" Passe un Ticket en résolu """ """ Passe un Ticket en résolu """

View file

@ -0,0 +1,48 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2019-08-13 12:55
from __future__ import unicode_literals
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
replaces = [('tickets', '0001_initial'), ('tickets', '0002_auto_20190710_0952'), ('tickets', '0003_ticket_email'), ('tickets', '0004_auto_20190712_1205'), ('tickets', '0005_auto_20190712_1209'), ('tickets', '0006_preferences'), ('tickets', '0007_preferences_publish_tickets'), ('tickets', '0008_remove_preferences_publish_tickets')]
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='Ticket',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(help_text='Nom du ticket', max_length=255)),
('description', models.TextField(help_text='Description du ticket', max_length=3000)),
('date', models.DateTimeField(auto_now_add=True)),
('solved', models.BooleanField(default=False)),
('assigned_staff', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='tickets_assigned', to=settings.AUTH_USER_MODEL)),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='tickets', to=settings.AUTH_USER_MODEL)),
('email', models.EmailField(help_text='Une adresse mail pour vous recontacter', max_length=100, null=True)),
],
options={
'verbose_name_plural': 'Tickets',
'verbose_name': 'Ticket',
},
),
migrations.CreateModel(
name='Preferences',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('publish_address', models.EmailField(help_text='Adresse mail pour annoncer les nouveau tickets (laisser vide pour ne rien annoncer)', max_length=1000, null=True)),
],
options={
'verbose_name': 'Préférences des tickets',
},
),
]

View file

@ -81,9 +81,8 @@ class Ticket(AclMixin, models.Model):
def can_create(user_request,*_args, **_kwargs): def can_create(user_request,*_args, **_kwargs):
"""Autorise tout les utilisateurs à créer des tickets""" """Autorise tout les utilisateurs à créer des tickets"""
return True,None return True,None
"""
class Preferences(models.Model): class Preferences(models.Model):
""" Class cannonique définissants les préférences des tickets """
publish_address = models.EmailField( publish_address = models.EmailField(
help_text = _("Adresse mail pour annoncer les nouveau tickets (laisser vide pour ne rien annoncer)"), help_text = _("Adresse mail pour annoncer les nouveau tickets (laisser vide pour ne rien annoncer)"),
@ -91,7 +90,7 @@ class Preferences(models.Model):
null = True) null = True)
class Meta: class Meta:
verbose_name = _("Préférences des tickets") verbose_name = _("Préférences des tickets")
"""
@receiver(post_save, sender=Ticket) @receiver(post_save, sender=Ticket)
def ticket_post_save(**kwargs): def ticket_post_save(**kwargs):

View file

@ -0,0 +1,11 @@
from django import forms
from django.forms import ModelForm, Form
from django.utils.translation import ugettext_lazy as _
from .models import Preferences
class EditPreferencesForm(ModelForm):
""" Edition des préférences des tickets """
class Meta:
model = Preferences
fields = '__all__'

View file

@ -0,0 +1,12 @@
from django.db import models
from django.utils.translation import ugettext_lazy as _
class Preferences(models.Model):
""" Class cannonique définissants les préférences des tickets """
publish_address = models.EmailField(
help_text = _("Adresse mail pour annoncer les nouveau tickets (laisser vide pour ne rien annoncer)"),
max_length = 1000,
null = True)
class Meta:
verbose_name = _("Préférences des tickets")

View file

@ -19,18 +19,26 @@ from re2o.acl import(
) )
from preferences.models import GeneralOption from preferences.models import GeneralOption
from .models import( from .models import(
Ticket, Ticket,
)
from .preferences.models import(
Preferences, Preferences,
) )
from .forms import ( from .forms import (
NewTicketForm, NewTicketForm,
ChangeStatusTicketForm, ChangeStatusTicketForm,
)
from .preferences.forms import (
EditPreferencesForm, EditPreferencesForm,
) )
def new_ticket(request): def new_ticket(request):
""" Vue de création d'un ticket """ """ Vue de création d'un ticket """
ticketform = NewTicketForm(request.POST or None) ticketform = NewTicketForm(request.POST or None)