Commit d8204656 authored by Weblate's avatar Weblate

Merge remote-tracking branch 'origin/master'

parents ff37e9e8 721e6b2e
......@@ -18,4 +18,5 @@ Administrators guide
config
sample
management
whiteboard
advertisement
Whiteboard messages
===================
You can use whiteboard messages to give some information to your translators.
The message can be site-wide or targeted on translation component or language.
This can be useful for various things from announcing purpose of the website to
specifying targets for translations.
The whiteboard can currently be specified only in the admin interface:
.. image:: ../images/whiteboard.png
......@@ -7,8 +7,12 @@
{% if opts.model_name == 'advertisement' %}
{% doc_url 'admin/advertisement' as url %}
{% else %}
{% if opts.model_name == 'whiteboardmessage' %}
{% doc_url 'admin/whiteboard' as url %}
{% else %}
{% doc_url 'admin/projects' opts.model_name as url %}
{% endif %}
{% endif %}
<p>{% blocktrans %}Required fields are marked as bold, you can find more information in the <a href="{{ url }}">documentation</a>.{% endblocktrans %}</p>
{% else %}
<p class="errornote">{% blocktrans %}Do not change this object here, please use Weblate interface instead.{% endblocktrans %}</p>
......
# -*- coding: utf-8 -*-
# Generated by Django 1.9 on 2015-12-22 09:49
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('lang', '0002_auto_20150630_1208'),
('trans', '0048_auto_20151120_1306'),
]
operations = [
migrations.AddField(
model_name='whiteboardmessage',
name='language',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='lang.Language'),
),
migrations.AddField(
model_name='whiteboardmessage',
name='project',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='trans.Project'),
),
migrations.AddField(
model_name='whiteboardmessage',
name='subproject',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='trans.SubProject'),
),
migrations.AlterField(
model_name='whiteboardmessage',
name='message',
field=models.TextField(verbose_name='Message'),
),
]
......@@ -21,11 +21,19 @@
"""Whiteboard model."""
from django.db import models
from django.utils.translation import ugettext_lazy
from django.utils.translation import ugettext_lazy, ugettext as _
from django.core.exceptions import ValidationError
from weblate.lang.models import Language
class WhiteboardMessage(models.Model):
message = models.TextField(blank=True)
message = models.TextField(
verbose_name=ugettext_lazy('Message'),
)
project = models.ForeignKey('Project', null=True, blank=True)
subproject = models.ForeignKey('SubProject', null=True, blank=True)
language = models.ForeignKey(Language, null=True, blank=True)
class Meta(object):
app_label = 'trans'
......@@ -34,3 +42,12 @@ class WhiteboardMessage(models.Model):
def __unicode__(self):
return self.message
def clean(self):
if self.project and self.subproject:
if self.subproject.project == self.project:
self.project = None
else:
raise ValidationError(
_('Do not specify both component and project!')
)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment