use SITE_URL to build request URL in mail templates, add new variable request_url for this

fixes #4246
This commit is contained in:
Benjamin Dauvergne 2014-01-29 16:55:03 +01:00
parent e743832c00
commit e32382f411
3 changed files with 8 additions and 7 deletions

View File

@ -16,6 +16,8 @@ from django.core import validators
from django.template import Template, Context
from django.core.mail import EmailMessage
from django.utils.timezone import now
from django.core.urlresolvers import reverse
from django.conf import settings
from ... import utils
from .. import app_settings
@ -322,6 +324,7 @@ class Request(models.Model):
'comment': description,
'history': history,
'reversed_history': reversed(history),
'request_url': settings.SITE_URL + self.get_absolute_url(),
}
ctx = Context(ctx)
logger.info('action %s par %s avec le commentaire %s sur la demande %s',
@ -396,6 +399,9 @@ class Request(models.Model):
def __unicode__(self):
return '<Request id:%s>' % (self.pk,)
def get_absolute_url(self):
return reverse('request_detail', kwargs={'pk': self.pk})
class HistoryManager(models.Manager):
def start(self):
try:

View File

@ -15,7 +15,7 @@
<tr><td><code>&#123;&#123;request&#125;&#125;</code></td><td>la demande</td></tr>
<tr><td><code>&#123;&#123;request.request_number&#125;&#125;</code></td><td>le numéro de la demande</td></tr>
<tr><td><code>&#123;&#123;request.user&#125;&#125;</code></td><td>l'utilisateur qui a fait la demande</td></tr>
<tr><td><code>&#123;% url 'request_detail' pk=request.pk %&#125;</code></td><td>l'URL de la demande</td></tr>
<tr><td><code>&#123;&#123;request_url&#125;&#125;</code></td><td>l'URL de la demande</td></tr>
<tr><td><code>&#123;&#123;history&#125;&#125;</code></td><td>l'historique de la demande dans l'ordre chornologique</td></tr>
<tr><td><code>&#123;&#123;history.0&#125;&#125;</code></td><td>la première ligne de l'historique</td></tr>
<tr><td><code>&#123;&#123;history.0&#125;&#125;</code></td><td>la première ligne de l'historique</td></tr>

View File

@ -356,12 +356,7 @@ def request_action(request, pk, workflow_pk):
return redirect('list_request')
if workflow.comment and not request.POST.get('comment'):
return render(request, 'request_action.html', locals())
old_script_prefix = get_script_prefix()
try:
set_script_prefix(settings.SITE_URL)
poly_request.act(request.user, workflow, description=request.POST.get('comment'))
finally:
set_script_prefix(old_script_prefix)
poly_request.act(request.user, workflow, description=request.POST.get('comment'))
if workflow.action.ui_message:
messages.info(request, mark_safe(workflow.action.ui_message))
if workflow.is_edit: