Commit cc62dc86 authored by Michal Čihař's avatar Michal Čihař

Backend for editing source check flags

Issue #540
Signed-off-by: default avatarMichal Čihař <michal@cihar.com>
parent 92029dbd
......@@ -729,6 +729,16 @@ class PriorityForm(forms.Form):
)
class CheckFlagsForm(forms.Form):
flags = forms.CharField(
label=_('Check flags'),
widget=forms.Textarea,
help_text=_(
'Please enter comma separated list of check flags.'
),
)
class AddUserForm(forms.Form):
name = forms.CharField(
label=_('User to add'),
......
......@@ -889,6 +889,21 @@ class SourceStringsTest(ViewTestCase):
self.assertEquals(unit.priority, 60)
self.assertEquals(unit.source_info.priority, 60)
def test_edit_check_flags(self):
# Need extra power
self.user.is_superuser = True
self.user.save()
source = self.get_unit().source_info
response = self.client.post(
reverse('edit_check_flags', kwargs={'pk': source.pk}),
{'flags': 'ignore-same'}
)
self.assertRedirects(response, source.get_absolute_url())
unit = self.get_unit()
self.assertEquals(unit.source_info.check_flags, 'ignore-same')
def test_review_source(self):
response = self.client.get(
reverse('review_source', kwargs=self.kw_subproject)
......
......@@ -28,7 +28,7 @@ from django.contrib import messages
from weblate.trans.views.helper import get_subproject
from weblate.trans.models import Translation, Source
from weblate.trans.forms import PriorityForm
from weblate.trans.forms import PriorityForm, CheckFlagsForm
def get_source(request, project, subproject):
......@@ -121,3 +121,19 @@ def edit_priority(request, pk):
else:
messages.error(request, _('Failed to change a priority!'))
return redirect(request.POST.get('next', source.get_absolute_url()))
@require_POST
@permission_required('edit_check_flags')
def edit_check_flags(request, pk):
"""
Change source string check flags.
"""
source = get_object_or_404(Source, pk=pk)
form = CheckFlagsForm(request.POST)
if form.is_valid():
source.check_flags = form.cleaned_data['flags']
source.save()
else:
messages.error(request, _('Failed to change check flags!'))
return redirect(request.POST.get('next', source.get_absolute_url()))
......@@ -144,6 +144,11 @@ urlpatterns = patterns(
'weblate.trans.views.source.edit_priority',
name='edit_priority'
),
url(
r'^source/(?P<pk>[0-9]+)/check_flags/$',
'weblate.trans.views.source.edit_check_flags',
name='edit_check_flags'
),
# Translation pages
url(
......
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