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

Implemented notifications for translations (issue #59)

parent e10b8acd
......@@ -137,13 +137,13 @@ class Profile(models.Model):
finally:
translation.activate(cur_language)
def notify_any_translation(self, translation, unit):
def notify_any_translation(self, unit):
'''
Sends notification on translation.
'''
self.notify_user(
'any_translation',
translation,
unit.translation,
{
'unit': unit,
}
......
......@@ -1638,6 +1638,14 @@ class Suggestion(models.Model):
unit.target = self.target
unit.fuzzy = False
unit.save_backend(request, False)
# Notify subscribed users
from weblate.accounts.models import Profile
subscriptions = Profile.objects.subscribed_any_translation(
unit.translation.subproject.project,
unit.translation.language
)
for subscription in subscriptions:
subscription.notify_any_translation(unit)
def get_matching_unit(self):
'''
......
......@@ -739,6 +739,12 @@ def translate(request, project, subproject, lang):
unit.target = join_plural(form.cleaned_data['target'])
unit.fuzzy = form.cleaned_data['fuzzy']
unit.save_backend(request)
# Notify subscribed users
from weblate.accounts.models import Profile
subscriptions = Profile.objects.subscribed_any_translation(obj.subproject.project, obj.language)
for subscription in subscriptions:
subscription.notify_any_translation(unit)
# Update stats
profile.translated += 1
profile.save()
......
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