def service_name_change(service_id): form = RenameServiceForm() if request.method == 'GET': form.name.data = current_service.name if form.validate_on_submit(): if form.name.data == current_service.name: return redirect(url_for('.service_settings', service_id=service_id)) unique_name = service_api_client.is_service_name_unique( service_id, form.name.data, email_safe(form.name.data)) if not unique_name: form.name.errors.append("This service name is already in use") return render_template('views/service-settings/name.html', form=form) session['service_name_change'] = form.name.data return redirect( url_for('.service_name_change_confirm', service_id=service_id)) if current_service.organisation_type == 'local': return render_template( 'views/service-settings/name-local.html', form=form, ) return render_template( 'views/service-settings/name.html', form=form, )
def validate_service_name(form, field): if len(field.data) > 255: raise ValidationError(_l("This cannot exceed 255 characters in length")) if field.data != email_safe_name(field.data): raise ValidationError(_l("This entry must contain valid characters for an email address.")) service_id = getattr(form, "service_id", current_app.config["NOTIFY_BAD_FILLER_UUID"]) unique_name = service_api_client.is_service_name_unique( service_id, field.data, ) if not unique_name: raise ValidationError(_l("This service name is already in use"))