Merge pull request #85 from alexgarel/master

bug fixes
This commit is contained in:
Ross Poulton 2012-01-11 01:11:17 -08:00
commit 7dca5ce3ae
12 changed files with 243 additions and 47 deletions

View File

@ -56,11 +56,7 @@ Adding To Your Django Project
./manage.py syncdb ./manage.py syncdb
If you're wise enough to use South, the first migration will need to be a fake:: Then migrate using South
./manage.py migrate helpdesk 0001 --fake
After the initial migration, all others are done in the usual way::
./manage.py migrate helpdesk ./manage.py migrate helpdesk

View File

@ -1,6 +1,14 @@
Settings Settings
======== ========
First, django-helpdesk needs ``django.core.context_processors.request`` activated, so in your ``settings.py`` add::
from django.conf import global_settings
TEMPLATE_CONTEXT_PROCESSORS = (
global_settings.TEMPLATE_CONTEXT_PROCESSORS +
('django.core.context_processors.request',)
)
The following settings can be changed in your ``settings.py`` file to help change the way django-helpdesk operates. The following settings can be changed in your ``settings.py`` file to help change the way django-helpdesk operates.
HELPDESK_DEFAULT_SETTINGS HELPDESK_DEFAULT_SETTINGS

View File

@ -574,5 +574,197 @@
"subject": "(Aktualisiert)", "subject": "(Aktualisiert)",
"locale": "de" "locale": "de"
} }
},
{
"pk": 49,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket Assign\u00e9",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel indicatif permet de vous pr\u00e9venir que le ticket <a href=\"{{ ticket.staff_url }}\"><b>{{ ticket.ticket }}</b></a> (<em>{{ ticket.title }}</em>) par {{ ticket.submitter_email }} {% if ticket.assigned_to %}a \u00e9t\u00e9 assign\u00e9 \u00e0 {{ ticket.assigned_to }}{% else %} n'est plus assign\u00e9 \u00e0 personne{% endif %}.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }} {% if ticket.assigned_to %} a \u00e9t\u00e9 assign\u00e9 \u00e0 {{ ticket.assigned_to }}{% else %} n'est plus assign\u00e9 \u00e0 personne{% endif %}.\r\n\r\nIdentifiant\u00a0: {{ ticket.ticket }}\r\nFile d'attente\u00a0: {{ queue.title }}\r\nTitre\u00a0: {{ ticket.title }}\r\nOuvert le\u00a0: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par\u00a0: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9\u00a0: {{ ticket.get_priority_display }}\r\nStatut\u00a0: {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0\u00a0: {{ ticket.get_assigned_to }}\r\nAdresse\u00a0: {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait\u00a0:\r\n\r\n{{ ticket.description }}\r\n\r\n",
"subject": "(Assign\u00e9)",
"template_name": "assigned_cc"
}
},
{
"pk": 50,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Le ticket vous est assign\u00e9",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel indicatif permet de vous pr\u00e9venir que le ticket <a href=\"{{ ticket.staff_url }}\"><b>{{ ticket.ticket }}</b></a> (<em>{{ ticket.title }}</em>) pour {{ ticket.submitter_email }} <b>vous</b> a \u00e9t\u00e9 assign\u00e9.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") pour {{ ticket.submitter_email }} vous a \u00e9t\u00e9 assign\u00e9.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}",
"subject": "(Pour vous)",
"template_name": "assigned_owner"
}
},
{
"pk": 51,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket Ferm\u00e9",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Le ticket <i>{{ ticket.title }}</i> ('{{ ticket.title }}'){% if ticket.assigned_to %}, assign\u00e9 \u00e0 {{ ticket.get_assigned_to }}{% endif %} a \u00e9t\u00e9 ferm\u00e9.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">La motivation de r\u00e9solution est:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ resolution }}</blockquote>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nLe ticket {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, assign\u00e9 \u00e0 {{ ticket.assigned_to }}{% endif %} a \u00e9t\u00e9 ferm\u00e9.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}\r\n\r\n",
"subject": "(Ferm\u00e9)",
"template_name": "closed_cc"
}
},
{
"pk": 52,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket Ferm\u00e9",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\nLe ticket suivant qui vous est actuellement assign\u00e9 a \u00e9t\u00e9 ferm\u00e9.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">La motivation de r\u00e9solution est:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ resolution }}</blockquote>\r\n",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nLe ticket suivant qui vous est actuellement assign\u00e9 a \u00e9t\u00e9 ferm\u00e9.\r\n\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }} (authentification obligatoire)\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}",
"subject": "(Ferm\u00e9 - \u00e0 vous)",
"template_name": "closed_owner"
}
},
{
"pk": 53,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket Ferm\u00e9",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est <i>{{ ticket.title }}</i>. Ce courriel vous confirme que ce ticket a \u00e9t\u00e9 ferm\u00e9.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;>\"La r\u00e9solution a \u00e9t\u00e9 motiv\u00e9e ainsi&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.resolution }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Vous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse <a href=\"{{ ticket.ticket_url }}\">{{ ticket.ticket_url }}</a>.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Si vous pensez que nous devons encore travailler sur ce probl\u00e8me, faites le nous savoir en r\u00e9pondant \u00e0 ce courriel en conservant le sujet tel-quel..</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\". Ce courriel vous confirme que ce ticket a \u00e9t\u00e9 ferm\u00e9.\r\n\r\nSi vous pensez que nous devons encore travailler sur ce probl\u00e8me, faites le nous savoir en r\u00e9pondant \u00e0 ce courriel en conservant le sujet tel-quel.\r\n\r\nVous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\nLa r\u00e9solution a \u00e9t\u00e9 motiv\u00e9e ainsi\u00a0:\r\n\r\n{{ ticket.resolution }}\r\n\r\n",
"subject": "(Ferm\u00e9)",
"template_name": "closed_submitter"
}
},
{
"pk": 54,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Priorit\u00e9 du ticket augment\u00e9e",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel indicatif permet de vous pr\u00e9venir que le ticket <i>{{ ticket.ticket }}</i> ('{{ ticket.title }}') a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique.</p>\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n",
"subject": "(Priorit\u00e9 augment\u00e9e)",
"template_name": "escalated_cc"
}
},
{
"pk": 55,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Votre ticket a vu sa priorit\u00e9 augment\u00e9e",
"html": "<p style=\"font-family: sans-serif; font-size: 11pt;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 11pt;\">Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est <i>{{ ticket.title }}</i> . Ce courriel vous informe que ce ticket a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique, vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 11pt;\">Nous allons reprendre rapidement ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 11pt;\">Vous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse <a href=\"{{ ticket.ticket_url }}\">{{ ticket.ticket_url }}</a>.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\". Ce courriel vous informe que ce ticket a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique, vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.\r\n\r\nNous allons reprendre rapidement ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible.\r\n\r\nVous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\n",
"subject": "(Priorit\u00e9 augment\u00e9e)",
"template_name": "escalated_submitter"
}
},
{
"pk": 56,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Priorit\u00e9 de votre ticket augment\u00e9e",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Un ticket qui vous est assign\u00e9 a vu sa priorit\u00e9 augment\u00e9 vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Merci de reprendre ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible..</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nUn ticket qui vous est assign\u00e9 a vu sa priorit\u00e9 augment\u00e9 vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nMerci de reprendre ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible.\r\n",
"subject": "(Priorit\u00e9 augment\u00e9e - \u00e0 vous)",
"template_name": "escalated_owner"
}
},
{
"pk": 57,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Nouveau ticket ouvert",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel indicatif permet de vous pr\u00e9venir qu'un nouveau ticket a \u00e9t\u00e9 ouvert.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Description&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir qu'un nouveau ticket a \u00e9t\u00e9 ouvert.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nDescription\u00a0:\r\n{{ ticket.description }}\r\n\r\n",
"subject": "(Ouvert)",
"template_name": "newticket_cc"
}
},
{
"pk": 58,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Votre ticket est d\u00e9sormais ouvert",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel permet de vous informer que nous avons re\u00e7u votre demande de support dont le sujet est <i>{{ ticket.title }}</i>.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;>\"Vous n'avez rien de plus \u00e0 faire pour le moment. Votre ticket porte l'identifiant <b>{{ ticket.ticket }}</b> et sera trait\u00e9 rapidement.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Si vous voulez nous donner plus de d\u00e9tails ou si vous avez une question concernant ce ticket, merci d'inclure la r\u00e9f\u00e9rence <b>{{ ticket.ticket }}</b> dans le sujet du message. Le plus simple \u00e9tant d'utiliser la fonction 'r\u00e9pondre' de votre logiciel de messagerie.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Vous pouvez visualiser ce ticket en ligne et y ajouter des informations ou des pi\u00e8ces jointes ainsi que voir les derni\u00e8res mies \u00e0 jour en vous rendant \u00e0 l'adresse <a href=\"{{ ticket.ticket_url }}\">{{ ticket.ticket_url }}</a>.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Nous allons traiter votre demande afin, si possible, de la r\u00e9soudre au plus vite. Vous recevrez des mise \u00e0 jour ou la r\u00e9ponse au ticket \u00e0 cette adresse mail.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nCe courriel permet de vous informer que nous avons re\u00e7u votre demande de support dont le sujet est \"{{ ticket.title }}\".\r\n\r\nVous n'avez rien de plus \u00e0 faire pour le moment. Votre ticket porte l'identifiant {{ ticket.ticket }} et sera trait\u00e9 rapidement.\r\n\r\nSi vous voulez nous donner plus de d\u00e9tails ou si vous avez une question concernant ce ticket, merci d'inclure la r\u00e9f\u00e9rence '{{ ticket.ticket }}' dans le sujet du message. Le plus simple \u00e9tant d'utiliser la fonction 'r\u00e9pondre' de votre logiciel de messagerie.\r\n\r\nVous pouvez visualiser ce ticket en ligne et y ajouter des informations ou des pi\u00e8ces jointes ainsi que voir les derni\u00e8res mies \u00e0 jour en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\nNous allons traiter votre demande afin, si possible, de la r\u00e9soudre au plus vite. Vous recevrez des mise \u00e0 jour ou la r\u00e9ponse au ticket \u00e0 cette adresse mail.",
"subject": "(Ouvert)",
"template_name": "newticket_submitter"
}
},
{
"pk": 59,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket r\u00e9solu",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Le ticket suivant a \u00e9t\u00e9 r\u00e9solu.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">La motivation de r\u00e9solution est:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ resolution }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nLe ticket suivant a \u00e9t\u00e9 r\u00e9solu.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}\r\n\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.\r\n\r\n",
"subject": "(R\u00e9solu)",
"template_name": "resolved_cc"
}
},
{
"pk": 60,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket r\u00e9solu",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Un ticket qui vous est assign\u00e9 a \u00e9t\u00e9 r\u00e9solu.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">La motivation de r\u00e9solution est:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ resolution }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nUn ticket qui vous est assign\u00e9 a \u00e9t\u00e9 r\u00e9solu.\r\n\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}\r\n\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.\r\n\r\n",
"subject": "(R\u00e9solu - \u00e0 vous)",
"template_name": "resolved_owner"
}
},
{
"pk": 61,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Votre ticket a \u00e9t\u00e9 r\u00e9solu",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est <i>{{ ticket.title }}</i>. Ce message vous informe d'une r\u00e9solution de la demande.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">La solution suivante a \u00e9t\u00e9 donn\u00e9e au ticket <b>{{ ticket.ticket }}</b>:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ resolution }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Merci de confirmer que cette solution vous convient afin que nous puissions clore le ticket. Si vous avez d'autre demandes, o\u00f9 si vous pensez que cette solution n'est pas adapt\u00e9e, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Vous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse <a href=\"{{ ticket.ticket_url }}\">{{ ticket.ticket_url }}</a>.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\" . Ce message vous informe d'une r\u00e9solution de la demande.\r\n\r\nLa solution suivante a \u00e9t\u00e9 donn\u00e9e au ticket {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\nMerci de confirmer que cette solution vous convient afin que nous puissions clore le ticket. Si vous avez d'autre demandes, o\u00f9 si vous pensez que cette solution n'est pas adapt\u00e9e, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel.\r\n\r\nVous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\n",
"subject": "(R\u00e9solu)",
"template_name": "resolved_submitter"
}
},
{
"pk": 62,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket mis \u00e0 jour",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }} a \u00e9t\u00e9 mis \u00e0 jour.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Le commentaire suivant a \u00e9t\u00e9 ajout\u00e9 :</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ comment }}</blockquote>\r\n\r\n<p style=\"font-family: Tahoma, Arial, sans-serif; font-size: 11pt;\">Cette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }} a \u00e9t\u00e9 mis \u00e0 jour.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nDescription originelle :\r\n\r\n{{ ticket.description }}\r\n\r\nLe commentaire suivant a \u00e9t\u00e9 ajout\u00e9\u00a0:\r\n\r\n{{ comment }}\r\n\r\nCette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.\r\n\r\n",
"subject": "(Mis \u00e0 jour)",
"template_name": "updated_cc"
}
},
{
"pk": 63,
"model": "helpdesk.emailtemplate",
"fields": {
"heading": "Ticket mis \u00e0 jour",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }}, qui vous est assign\u00e9, a \u00e9t\u00e9 mis \u00e0 jour.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">\r\n<b>File d'attente</b>&nbsp;: {{ ticket.ticket }}<br>\r\n<b>Queue</b>&nbsp;: {{ queue.title }}<br>\r\n<b>Titre</b>&nbsp;: {{ ticket.title }}<br>\r\n<b>Ouvert le</b>&nbsp;: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}<br>\r\n<b>Soumis par</b>&nbsp;: {{ ticket.submitter_email|default:\"Unknown\" }}<br>\r\n<b>Priorit\u00e9</b>&nbsp;: {{ ticket.get_priority_display }}<br>\r\n<b>Statut</b>&nbsp;: {{ ticket.get_status }}<br>\r\n<b>Assign\u00e9 \u00e0</b>&nbsp;: {{ ticket.get_assigned_to }}<br>\r\n<b><a href='{{ ticket.staff_url }}'>Voir le ticket en ligne</a></b> pour le mettre \u00e0 jour (apr\u00e8s authentification)</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Pour m\u00e9moire, la description originelle \u00e9tait&nbsp;:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ ticket.description }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Le commentaire suivant a \u00e9t\u00e9 ajout\u00e9 :</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ comment }}</blockquote>\r\n\r\n<p style=\"font-family: Tahoma, Arial, sans-serif; font-size: 11pt;\">Cette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.</p>",
"locale": "fr",
"plain_text": "Hello,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }}, qui vous est assign\u00e9, a \u00e9t\u00e9 mis \u00e0 jour.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nDescription originelle :\r\n\r\n{{ ticket.description }}\r\n\r\nLe commentaire suivant a \u00e9t\u00e9 ajout\u00e9 :\r\n\r\n{{ comment }}\r\n\r\nCette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.\r\n\r\n",
"subject": "(Mis \u00e0 jour - \u00e0 vous)",
"template_name": "updated_owner"
}
},
{
"model": "helpdesk.emailtemplate",
"pk": 64,
"fields": {
"heading": "Votre ticket a \u00e9t\u00e9 mis \u00e0 jour",
"html": "<p style=\"font-family: sans-serif; font-size: 1em;\">Bonjour,</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est <i>{{ ticket.title }}</i> . Ce message vous informe d'une mise \u00e0 jour du ticket.</p>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;\">Le commentaire suivant a \u00e9t\u00e9 ajout\u00e9 au ticket <b>{{ ticket.ticket }}</b>:</p>\r\n\r\n<blockquote style=\"font-family: sans-serif; font-size: 1em;\">{{ comment }}</blockquote>\r\n\r\n<p style=\"font-family: sans-serif; font-size: 1em;>\"Si vous voulez nous fournir d'autres informations, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel. Vous pouvez \u00e9galement voir et mettre \u00e0 jour ce ticket en ligne \u00e0 l'adresse <a href=\"{{ ticket.ticket_url }}\">{{ ticket.ticket_url }}</a>.</p>",
"locale": "fr",
"plain_text": "Bonjour,\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\". Ce message vous informe d'une mise \u00e0 jour du ticket.\r\n\r\nLe commentaire suivant a \u00e9t\u00e9 ajout\u00e9 au ticket {{ ticket.ticket }}\u00a0:\r\n\r\n{{ comment }}\r\n\r\nSi vous voulez nous fournir d'autres informations, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel. Vous pouvez \u00e9galement voir et mettre \u00e0 jour ce ticket en ligne \u00e0 l'adresse {{ ticket.ticket_url }}",
"subject": "(Mis \u00e0 jour)",
"template_name": "updated_submitter"
}
} }
] ]

View File

@ -15,7 +15,7 @@ from django.conf import settings
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from helpdesk.lib import send_templated_mail from helpdesk.lib import send_templated_mail, safe_template_context
from helpdesk.models import Ticket, Queue, FollowUp, Attachment, IgnoreEmail, TicketCC, CustomField, TicketCustomFieldValue, TicketDependency from helpdesk.models import Ticket, Queue, FollowUp, Attachment, IgnoreEmail, TicketCC, CustomField, TicketCustomFieldValue, TicketDependency
from helpdesk.settings import HAS_TAG_SUPPORT from helpdesk.settings import HAS_TAG_SUPPORT
@ -280,11 +280,8 @@ class TicketForm(forms.Form):
# settings.MAX_EMAIL_ATTACHMENT_SIZE) are sent via email. # settings.MAX_EMAIL_ATTACHMENT_SIZE) are sent via email.
files.append(a.file.path) files.append(a.file.path)
context = { context = safe_template_context(t)
'ticket': t, context['comment'] = f.comment
'queue': q,
'comment': f.comment,
}
messages_sent_to = [] messages_sent_to = []
@ -482,10 +479,7 @@ class PublicTicketForm(forms.Form):
# settings.MAX_EMAIL_ATTACHMENT_SIZE) are sent via email. # settings.MAX_EMAIL_ATTACHMENT_SIZE) are sent via email.
files.append(a.file.path) files.append(a.file.path)
context = { context = safe_template_context(t)
'ticket': t,
'queue': q,
}
messages_sent_to = [] messages_sent_to = []

View File

@ -17,6 +17,9 @@ try:
except ImportError: except ImportError:
from base64 import decodestring as b64decode from base64 import decodestring as b64decode
import logging
logger = logging.getLogger('helpdesk')
from django.utils.encoding import smart_str from django.utils.encoding import smart_str
def send_templated_mail(template_name, email_context, recipients, sender=None, bcc=None, fail_silently=False, files=None): def send_templated_mail(template_name, email_context, recipients, sender=None, bcc=None, fail_silently=False, files=None):
@ -66,6 +69,8 @@ def send_templated_mail(template_name, email_context, recipients, sender=None, b
try: try:
t = EmailTemplate.objects.get(template_name__iexact=template_name, locale__isnull=True) t = EmailTemplate.objects.get(template_name__iexact=template_name, locale__isnull=True)
except EmailTemplate.DoesNotExist: except EmailTemplate.DoesNotExist:
logger.warning('template "%s" does not exist, no mail sent' %
template_name)
return # just ignore if template doesn't exist return # just ignore if template doesn't exist
if not sender: if not sender:
@ -96,9 +101,8 @@ def send_templated_mail(template_name, email_context, recipients, sender=None, b
"{{ ticket.ticket }} {{ ticket.title|safe }} %s" % t.subject "{{ ticket.ticket }} {{ ticket.title|safe }} %s" % t.subject
).render(context) ).render(context)
if type(recipients) == str: if isinstance(recipients,(str,unicode)):
if recipients.find(','): recipients = recipients.split(',')
recipients = recipients.split(',')
elif type(recipients) != list: elif type(recipients) != list:
recipients = [recipients,] recipients = [recipients,]

View File

@ -13,12 +13,12 @@ import getopt
from optparse import make_option from optparse import make_option
import sys import sys
from django.core.management.base import BaseCommand from django.core.management.base import BaseCommand, CommandError
from django.db.models import Q from django.db.models import Q
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from helpdesk.models import Queue, Ticket, FollowUp, EscalationExclusion, TicketChange from helpdesk.models import Queue, Ticket, FollowUp, EscalationExclusion, TicketChange
from helpdesk.lib import send_templated_mail from helpdesk.lib import send_templated_mail, safe_template_context
class Command(BaseCommand): class Command(BaseCommand):
@ -99,10 +99,7 @@ def escalate_tickets(queues, verbose):
t.priority -= 1 t.priority -= 1
t.save() t.save()
context = { context = safe_template_context(t)
'ticket': t,
'queue': q,
}
if t.submitter_email: if t.submitter_email:
send_templated_mail( send_templated_mail(

View File

@ -26,7 +26,7 @@ from django.core.management.base import BaseCommand
from django.db.models import Q from django.db.models import Q
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from helpdesk.lib import send_templated_mail from helpdesk.lib import send_templated_mail, safe_template_context
from helpdesk.models import Queue, Ticket, FollowUp, Attachment, IgnoreEmail from helpdesk.models import Queue, Ticket, FollowUp, Attachment, IgnoreEmail
@ -246,10 +246,7 @@ def ticket_from_message(message, queue, quiet):
t.status = Ticket.REOPENED_STATUS t.status = Ticket.REOPENED_STATUS
t.save() t.save()
context = { context = safe_template_context(t)
'ticket': t,
'queue': queue,
}
if new: if new:

View File

@ -0,0 +1,9 @@
<h1 style='font-family: "Trebuchet MS", Arial, sans-serif; font-size: 14pt; color: #6593C0'>{% block header %}Helpdesk{% endblock %}</h1>
{% block content %}{% endblock %}
<p style='font-family: "Trebuchet MS", Arial, sans-serif; font-size: 11pt;'>Cordialement,</p>
<p style='font-family: "Trebuchet MS", Arial, sans-serif; font-size: 11pt;'><b>{{ queue.title }}</b>{% if queue.email_address %}<br><a href='mailto:{{ queue.email_address }}'>{{ queue.email_address }}</a>{% endif %}</p>
<p style='font-family: "Trebuchet MS", Arial, sans-serif; font-size: 9pt; color: #808080;' color='#808080'>Ce courriel vous a été envoyé en tant qu'utilisateur de notre service de support, en accord avec notre politique de confidentialité. Merci de nous informer si vous pensez que ce message ne vous était pas destiné.</p>

View File

@ -0,0 +1,6 @@
Cordialement,
{{ queue.title }}{% if queue.email_address %}
{{ queue.email_address }}{% endif %}
Ce courriel vous a été envoyé en tant qu'utilisateur de notre service de support, en accord avec notre politique de confidentialité. Merci de nous informer si vous pensez que ce message ne vous était pas destiné.

View File

@ -1,6 +1,6 @@
{% load i18n %} {% load i18n %}
<table width='100%'> <table width='100%'>
<tr class='row_tablehead'><td colspan='2'>{{ ticket.id }}. {{ ticket.title }} [{{ ticket.get_status }}] <span class='ticket_toolbar'><a href='{% url helpdesk_edit ticket.id %}'><img src='{{ STATIC_URL }}helpdesk/buttons/edit.png' alt='Edit' title='Edit' width='60' height='15' /></a><a href='{% url helpdesk_delete ticket.id %}'><img src='{{ STATIC_URL }}helpdesk/buttons/delete.png' alt='Delete' title='Delete' width='60' height='15' /></a>{% if ticket.on_hold %}<a href='unhold/'>{% trans "Unhold" %}</a>{% else %}<a href='hold/'>{% trans "Hold" %}</a>{% endif %}</span></td></tr> <tr class='row_tablehead'><td colspan='2'>{{ ticket.id }}. {{ ticket.title }} [{{ ticket.get_status }}] <span class='ticket_toolbar'><a class="ticket-edit" href='{% url helpdesk_edit ticket.id %}'><img src='{{ STATIC_URL }}helpdesk/buttons/edit.png' alt='Edit' title='Edit' width='60' height='15' /></a><a class="ticket-delete" href='{% url helpdesk_delete ticket.id %}'><img src='{{ STATIC_URL }}helpdesk/buttons/delete.png' alt='Delete' title='Delete' width='60' height='15' /></a>{% if ticket.on_hold %}<a class="ticket-hold" href='unhold/'>{% trans "Unhold" %}</a>{% else %}<a class="ticket-hold" href='hold/'>{% trans "Hold" %}</a>{% endif %}</span></td></tr>
<tr class='row_columnheads'><th colspan='2'>{% blocktrans with ticket.queue as queue %}Queue: {{ queue }}{% endblocktrans %}</th></tr> <tr class='row_columnheads'><th colspan='2'>{% blocktrans with ticket.queue as queue %}Queue: {{ queue }}{% endblocktrans %}</th></tr>
<tr class='{% cycle 'row_odd' 'row_even' as rowcolors %}'> <tr class='{% cycle 'row_odd' 'row_even' as rowcolors %}'>

View File

@ -22,7 +22,7 @@ from django.template import loader, Context
from django.utils import simplejson from django.utils import simplejson
from helpdesk.forms import TicketForm from helpdesk.forms import TicketForm
from helpdesk.lib import send_templated_mail from helpdesk.lib import send_templated_mail, safe_template_context
from helpdesk.models import Ticket, Queue, FollowUp from helpdesk.models import Ticket, Queue, FollowUp
STATUS_OK = 200 STATUS_OK = 200
@ -191,11 +191,8 @@ class API:
f.save() f.save()
context = { context = safe_template_context(ticket)
'ticket': ticket, context['comment'] = f.comment
'queue': ticket.queue,
'comment': f.comment,
}
messages_sent_to = [] messages_sent_to = []
@ -266,11 +263,8 @@ class API:
) )
f.save() f.save()
context = { context = safe_template_context(ticket)
'ticket': ticket, context['resolution'] = f.comment
'queue': ticket.queue,
'resolution': f.comment,
}
subject = '%s %s (Resolved)' % (ticket.ticket, ticket.title) subject = '%s %s (Resolved)' % (ticket.ticket, ticket.title)

View File

@ -419,11 +419,10 @@ def mass_update(request):
f = FollowUp(ticket=t, date=datetime.now(), title=_('Closed in bulk update'), public=True, user=request.user, new_status=Ticket.CLOSED_STATUS) f = FollowUp(ticket=t, date=datetime.now(), title=_('Closed in bulk update'), public=True, user=request.user, new_status=Ticket.CLOSED_STATUS)
f.save() f.save()
# Send email to Submitter, Owner, Queue CC # Send email to Submitter, Owner, Queue CC
context = { context = safe_template_context(t)
'ticket': t, context.update(
'queue': t.queue, resolution=t.resolution,
'resolution': t.resolution, )
}
messages_sent_to = [] messages_sent_to = []
@ -833,7 +832,7 @@ def run_report(request, report):
month = 1 month = 1
if (year > last_year) or (month > last_month and year >= last_year): if (year > last_year) or (month > last_month and year >= last_year):
working = False working = False
periods.append("%s %s" % (months[month], year)) periods.append("%s %s" % (months[month - 1], year))
if report == 'userpriority': if report == 'userpriority':
title = _('User by Priority') title = _('User by Priority')