本文整理汇总了Python中weblate.utils.messages.error函数的典型用法代码示例。如果您正苦于以下问题:Python error函数的具体用法?Python error怎么用?Python error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了error函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: change_component
def change_component(request, project, component):
obj = get_component(request, project, component)
if not request.user.has_perm('component.edit', obj):
raise Http404()
if request.method == 'POST':
form = ComponentSettingsForm(request.POST, instance=obj)
if form.is_valid():
form.save()
messages.success(request, _('Settings saved'))
return redirect(
'settings', project=obj.project.slug, component=obj.slug
)
else:
messages.error(
request,
_('Invalid settings, please check the form for errors!')
)
else:
form = ComponentSettingsForm(instance=obj)
return render(
request,
'component-settings.html',
{
'project': obj.project,
'object': obj,
'form': form,
}
)
开发者ID:daleathan,项目名称:weblate,代码行数:31,代码来源:settings.py
示例2: change_access
def change_access(request, project):
obj = get_project(request, project)
if not request.user.has_perm('billing:project.permissions', obj):
raise PermissionDenied()
form = ProjectAccessForm(request.POST, instance=obj)
if not form.is_valid():
for error in form.errors:
for message in form.errors[error]:
messages.error(request, message)
else:
form.save()
Change.objects.create(
project=obj,
action=Change.ACTION_ACCESS_EDIT,
user=request.user,
details={'access_control': obj.access_control},
)
messages.success(
request, _('Project access control has been changed.')
)
return redirect(
'manage-access',
project=obj.slug,
)
开发者ID:daleathan,项目名称:weblate,代码行数:28,代码来源:acl.py
示例3: add_user
def add_user(request, project):
"""Add user to a project."""
obj, form = check_user_form(request, project, True)
if form is not None:
try:
user = form.cleaned_data['user']
obj.add_user(user)
Change.objects.create(
project=obj,
action=Change.ACTION_ADD_USER,
user=request.user,
details={'username': user.username},
)
messages.success(
request, _('User has been added to this project.')
)
except Group.DoesNotExist:
messages.error(
request, _('Failed to find group to add a user!')
)
return redirect(
'manage-access',
project=obj.slug,
)
开发者ID:daleathan,项目名称:weblate,代码行数:26,代码来源:acl.py
示例4: post
def post(self, request, **kwargs):
component = self.get_component(kwargs)
if not can_add_screenshot(request.user, component.project):
raise PermissionDenied()
self._add_form = ScreenshotForm(request.POST, request.FILES)
if self._add_form.is_valid():
obj = Screenshot.objects.create(
component=component,
**self._add_form.cleaned_data
)
try_add_source(request, obj)
messages.success(
request,
_(
'Screenshot has been uploaded, '
'you can now assign it to source strings.'
)
)
return redirect(obj)
else:
messages.error(
request,
_('Failed to upload screenshot, please fix errors below.')
)
return self.get(request, **kwargs)
开发者ID:saily,项目名称:weblate,代码行数:25,代码来源:views.py
示例5: reset_password_set
def reset_password_set(request):
"""Perform actual password reset."""
user = User.objects.get(pk=request.session['perform_reset'])
if user.has_usable_password():
request.session.flush()
request.session.set_expiry(None)
messages.error(
request,
_('Password reset has been already completed!')
)
return redirect('login')
if request.method == 'POST':
form = SetPasswordForm(user, request.POST)
if form.is_valid():
request.session.set_expiry(None)
form.save(request, delete_session=True)
return redirect('login')
else:
form = SetPasswordForm(user)
return render(
request,
'accounts/reset.html',
{
'title': _('Password reset'),
'form': form,
'captcha_form': None,
'second_stage': True,
}
)
开发者ID:dekoza,项目名称:weblate,代码行数:29,代码来源:views.py
示例6: save_zen
def save_zen(request, project, subproject, lang):
"""Save handler for zen mode."""
translation = get_translation(request, project, subproject, lang)
user_locked = translation.is_user_locked(request.user)
form = TranslationForm(
request.user.profile, translation, None, request.POST
)
if not can_translate(request.user, translation):
messages.error(
request,
_('You don\'t have privileges to save translations!')
)
elif not form.is_valid():
messages.error(request, _('Failed to save translation!'))
elif not user_locked:
unit = form.cleaned_data['unit']
perform_translation(unit, form, request)
return render(
request,
'zen-response.html',
{},
)
开发者ID:saily,项目名称:weblate,代码行数:25,代码来源:edit.py
示例7: delete_user
def delete_user(request, project):
"""Remove user from a project."""
obj, form = check_user_form(request, project, True)
if form is not None:
owners = User.objects.all_admins(obj)
user = form.cleaned_data['user']
is_owner = owners.filter(pk=user.pk).exists()
if is_owner and owners.count() <= 1:
messages.error(request, _('You can not remove last owner!'))
else:
obj.remove_user(user)
Change.objects.create(
project=obj,
action=Change.ACTION_REMOVE_USER,
user=request.user,
details={'username': user.username},
)
messages.success(
request, _('User has been removed from this project.')
)
return redirect(
'manage-access',
project=obj.slug,
)
开发者ID:daleathan,项目名称:weblate,代码行数:26,代码来源:acl.py
示例8: handle_merge
def handle_merge(translation, request, next_unit_url):
"""Handle unit merging."""
mergeform = MergeForm(translation, request.GET)
if not mergeform.is_valid():
messages.error(request, _('Invalid merge request!'))
return None
unit = mergeform.cleaned_data['unit']
merged = mergeform.cleaned_data['merge_unit']
if not request.user.has_perm('unit.edit', unit):
messages.error(
request,
_('Insufficient privileges for saving translations.')
)
return None
# Store unit
saved = unit.translate(request, merged.target, merged.state)
# Update stats if there was change
if saved:
request.user.profile.translated += 1
request.user.profile.save()
# Redirect to next entry
return HttpResponseRedirect(next_unit_url)
开发者ID:nijel,项目名称:weblate,代码行数:25,代码来源:edit.py
示例9: post
def post(self, request, **kwargs):
component = self.get_component()
if not request.user.has_perm('screenshot.add', component):
raise PermissionDenied()
self._add_form = ScreenshotForm(request.POST, request.FILES)
if self._add_form.is_valid():
obj = Screenshot.objects.create(
component=component,
user=request.user,
**self._add_form.cleaned_data
)
request.user.profile.uploaded += 1
request.user.profile.save(update_fields=['uploaded'])
try_add_source(request, obj)
messages.success(
request,
_(
'Screenshot has been uploaded, '
'you can now assign it to source strings.'
)
)
return redirect(obj)
messages.error(
request,
_('Failed to upload screenshot, please fix errors below.')
)
return self.get(request, **kwargs)
开发者ID:dekoza,项目名称:weblate,代码行数:28,代码来源:views.py
示例10: handle_translate
def handle_translate(request, translation, this_unit_url, next_unit_url):
"""Save translation or suggestion to database and backend."""
# Antispam protection
antispam = AntispamForm(request.POST)
if not antispam.is_valid():
# Silently redirect to next entry
return HttpResponseRedirect(next_unit_url)
form = TranslationForm(
request.user, translation, None, request.POST
)
if not form.is_valid():
show_form_errors(request, form)
return None
unit = form.cleaned_data['unit']
go_next = True
if 'suggest' in request.POST:
go_next = perform_suggestion(unit, form, request)
elif not request.user.has_perm('unit.edit', unit):
messages.error(
request,
_('Insufficient privileges for saving translations.')
)
else:
go_next = perform_translation(unit, form, request)
# Redirect to next entry
if go_next:
return HttpResponseRedirect(next_unit_url)
return HttpResponseRedirect(this_unit_url)
开发者ID:nijel,项目名称:weblate,代码行数:32,代码来源:edit.py
示例11: auto_translation
def auto_translation(request, project, subproject, lang):
translation = get_translation(request, project, subproject, lang)
project = translation.subproject.project
if not can_automatic_translation(request.user, project):
raise PermissionDenied()
autoform = AutoForm(translation, request.user, request.POST)
if translation.subproject.locked or not autoform.is_valid():
messages.error(request, _('Failed to process form!'))
return redirect(translation)
updated = auto_translate(
request.user,
translation,
autoform.cleaned_data['subproject'],
autoform.cleaned_data['inconsistent'],
autoform.cleaned_data['overwrite']
)
import_message(
request, updated,
_('Automatic translation completed, no strings were updated.'),
ungettext(
'Automatic translation completed, %d string was updated.',
'Automatic translation completed, %d strings were updated.',
updated
)
)
return redirect(translation)
开发者ID:saily,项目名称:weblate,代码行数:31,代码来源:edit.py
示例12: rate_wrap
def rate_wrap(request, *args, **kwargs):
if request.method == 'POST':
session = request.session
now = time()
k_timeout = '{}_timeout'.format(scope)
k_attempts = '{}_attempts'.format(scope)
# Reset expired counter
if (k_timeout in session and
k_attempts in session and
session[k_timeout] <= now):
session[k_attempts] = 0
# Get current attempts
attempts = session.get(k_attempts, 0)
# Did we hit the limit?
if attempts >= get_rate_setting(scope, 'ATTEMPTS'):
# Rotate session token
rotate_token(request)
# Logout user
if request.user.is_authenticated:
logout(request)
messages.error(
request,
_('Too many attempts, you have been logged out!')
)
return redirect('login')
session[k_attempts] = attempts + 1
if k_timeout not in session:
window = get_rate_setting(scope, 'WINDOW')
session[k_timeout] = now + window
return function(request, *args, **kwargs)
开发者ID:dekoza,项目名称:weblate,代码行数:34,代码来源:ratelimit.py
示例13: comment
def comment(request, pk):
"""Add new comment."""
unit = get_object_or_404(Unit, pk=pk)
request.user.check_access(unit.translation.component.project)
if not request.user.has_perm('comment.add', unit.translation):
raise PermissionDenied()
form = CommentForm(request.POST)
if form.is_valid():
if form.cleaned_data['scope'] == 'global':
lang = None
else:
lang = unit.translation.language
Comment.objects.add(
unit,
request.user,
lang,
form.cleaned_data['comment']
)
messages.success(request, _('Posted new comment'))
else:
messages.error(request, _('Failed to add comment!'))
return redirect_next(request.POST.get('next'), unit)
开发者ID:nijel,项目名称:weblate,代码行数:26,代码来源:edit.py
示例14: mail_admins_contact
def mail_admins_contact(request, subject, message, context, sender, to):
"""Send a message to the admins, as defined by the ADMINS setting."""
LOGGER.info(
'contact form from %s',
sender,
)
if not to and settings.ADMINS:
to = [a[1] for a in settings.ADMINS]
elif not settings.ADMINS:
messages.error(
request,
_('Message could not be sent to administrator!')
)
LOGGER.error(
'ADMINS not configured, can not send message!'
)
return
mail = EmailMultiAlternatives(
'{0}{1}'.format(settings.EMAIL_SUBJECT_PREFIX, subject % context),
message % context,
to=to,
headers={'Reply-To': sender},
)
mail.send(fail_silently=False)
messages.success(
request,
_('Message has been sent to administrator.')
)
开发者ID:dekoza,项目名称:weblate,代码行数:31,代码来源:views.py
示例15: contact
def contact(request):
if request.method == 'POST':
form = ContactForm(request.POST)
if not check_rate_limit(request):
messages.error(
request,
_('Too many messages sent, please try again later!')
)
elif form.is_valid():
mail_admins_contact(
request,
'%(subject)s',
CONTACT_TEMPLATE,
form.cleaned_data,
form.cleaned_data['email'],
)
return redirect('home')
else:
initial = get_initial_contact(request)
if request.GET.get('t') in CONTACT_SUBJECTS:
initial['subject'] = CONTACT_SUBJECTS[request.GET['t']]
form = ContactForm(initial=initial)
return render(
request,
'accounts/contact.html',
{
'form': form,
'title': _('Contact'),
}
)
开发者ID:saily,项目名称:weblate,代码行数:31,代码来源:views.py
示例16: perform_translation
def perform_translation(unit, form, request):
"""Handle translation and stores it to a backend."""
# Remember old checks
oldchecks = set(
unit.active_checks().values_list('check', flat=True)
)
# Run AutoFixes on user input
if not unit.translation.is_template:
new_target, fixups = fix_target(form.cleaned_data['target'], unit)
else:
new_target = form.cleaned_data['target']
fixups = []
# Save
saved = unit.translate(
request,
new_target,
form.cleaned_data['state']
)
# Should we skip to next entry
if not saved:
revert_rate_limit('translate', request)
return True
# Warn about applied fixups
if fixups:
messages.info(
request,
_('Following fixups were applied to translation: %s') %
', '.join([force_text(f) for f in fixups])
)
# Get new set of checks
newchecks = set(
unit.active_checks().values_list('check', flat=True)
)
# Did we introduce any new failures?
if saved and newchecks > oldchecks:
# Show message to user
messages.error(
request,
_(
'The translation has been saved, however there '
'are some newly failing checks: {0}'
).format(
', '.join(
[force_text(CHECKS[check].name) for check in newchecks]
)
)
)
# Stay on same entry
return False
return True
开发者ID:nijel,项目名称:weblate,代码行数:57,代码来源:edit.py
示例17: new_language
def new_language(request, project, component):
obj = get_component(request, project, component)
form_class = get_new_language_form(request, obj)
can_add = obj.can_add_new_language(request)
if request.method == 'POST':
form = form_class(obj, request.POST)
if form.is_valid():
langs = form.cleaned_data['lang']
kwargs = {
'user': request.user,
'author': request.user,
'component': obj,
'details': {},
}
for language in Language.objects.filter(code__in=langs):
kwargs['details']['language'] = language.code
if can_add:
obj.add_new_language(language, request)
Change.objects.create(
action=Change.ACTION_ADDED_LANGUAGE,
**kwargs
)
elif obj.new_lang == 'contact':
Change.objects.create(
action=Change.ACTION_REQUESTED_LANGUAGE,
**kwargs
)
messages.success(
request,
_(
"A request for a new translation has been "
"sent to the project's maintainers."
)
)
return redirect(obj)
messages.error(
request,
_('Please fix errors in the form.')
)
else:
form = form_class(obj)
return render(
request,
'new-language.html',
{
'object': obj,
'project': obj.project,
'form': form,
'can_add': can_add,
}
)
开发者ID:nijel,项目名称:weblate,代码行数:55,代码来源:basic.py
示例18: rate_wrap
def rate_wrap(request, *args, **kwargs):
attempts = request.session.get('auth_attempts', 0)
if (request.method == 'POST' and
attempts >= settings.AUTH_MAX_ATTEMPTS):
logout(request)
messages.error(
request,
_('Too many authentication attempts!')
)
return redirect('login')
return function(request, *args, **kwargs)
开发者ID:saily,项目名称:weblate,代码行数:11,代码来源:views.py
示例19: _get_queryset_user
def _get_queryset_user(self):
"""Filtering by user"""
if 'user' in self.request.GET:
try:
self.user = User.objects.get(
username=self.request.GET['user']
)
except User.DoesNotExist:
messages.error(
self.request,
_('Failed to find matching user!')
)
开发者ID:daleathan,项目名称:weblate,代码行数:12,代码来源:changes.py
示例20: _get_queryset_language
def _get_queryset_language(self):
"""Filtering by language"""
if self.translation is None and 'lang' in self.request.GET:
try:
self.language = Language.objects.get(
code=self.request.GET['lang']
)
except Language.DoesNotExist:
messages.error(
self.request,
_('Failed to find matching language!')
)
开发者ID:daleathan,项目名称:weblate,代码行数:12,代码来源:changes.py
注:本文中的weblate.utils.messages.error函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论