mirror of https://github.com/jumpserver/jumpserver
Merge branch 'bugfix' of github.com:jumpserver/jumpserver into bugfix
commit
bf9a2714d3
|
@ -472,7 +472,7 @@ jumpserver.initDataTable = function (options) {
|
||||||
};
|
};
|
||||||
var table = ele.DataTable({
|
var table = ele.DataTable({
|
||||||
pageLength: options.pageLength || 15,
|
pageLength: options.pageLength || 15,
|
||||||
dom: options.dom || '<"#uc.pull-left">flt<"row m-t"<"col-md-8"<"#op.col-md-6"><"col-md-6 text-center"i>><"col-md-4"p>>',
|
dom: options.dom || '<"#uc.pull-left"><"pull-right"<"inline"l><"#fb.inline"><"inline"f><"#fa.inline">>tr<"row m-t"<"col-md-8"<"#op.col-md-6"><"col-md-6 text-center"i>><"col-md-4"p>>',
|
||||||
order: options.order || [],
|
order: options.order || [],
|
||||||
// select: options.select || 'multi',
|
// select: options.select || 'multi',
|
||||||
searchDelay: 800,
|
searchDelay: 800,
|
||||||
|
|
|
@ -7,6 +7,7 @@ from common.utils import validate_ssh_public_key
|
||||||
from orgs.mixins import OrgModelForm
|
from orgs.mixins import OrgModelForm
|
||||||
from orgs.utils import current_org
|
from orgs.utils import current_org
|
||||||
from .models import User, UserGroup
|
from .models import User, UserGroup
|
||||||
|
from .utils import check_password_rules
|
||||||
|
|
||||||
|
|
||||||
class UserCheckPasswordForm(forms.Form):
|
class UserCheckPasswordForm(forms.Form):
|
||||||
|
@ -90,6 +91,20 @@ class UserCreateUpdateFormMixin(OrgModelForm):
|
||||||
raise forms.ValidationError(_('Not a valid ssh public key'))
|
raise forms.ValidationError(_('Not a valid ssh public key'))
|
||||||
return public_key
|
return public_key
|
||||||
|
|
||||||
|
def clean_password(self):
|
||||||
|
password_strategy = self.data.get('password_strategy')
|
||||||
|
# 创建-不设置密码
|
||||||
|
if password_strategy == '0':
|
||||||
|
return
|
||||||
|
password = self.data.get('password')
|
||||||
|
# 更新-密码为空
|
||||||
|
if password_strategy is None and not password:
|
||||||
|
return
|
||||||
|
if not check_password_rules(password):
|
||||||
|
msg = _('* Your password does not meet the requirements')
|
||||||
|
raise forms.ValidationError(msg)
|
||||||
|
return password
|
||||||
|
|
||||||
def save(self, commit=True):
|
def save(self, commit=True):
|
||||||
password = self.cleaned_data.get('password')
|
password = self.cleaned_data.get('password')
|
||||||
otp_level = self.cleaned_data.get('otp_level')
|
otp_level = self.cleaned_data.get('otp_level')
|
||||||
|
|
|
@ -133,19 +133,6 @@ class UserUpdateView(PermissionsMixin, SuccessMessageMixin, UpdateView):
|
||||||
kwargs.update(context)
|
kwargs.update(context)
|
||||||
return super().get_context_data(**kwargs)
|
return super().get_context_data(**kwargs)
|
||||||
|
|
||||||
def form_valid(self, form):
|
|
||||||
password = form.cleaned_data.get('password')
|
|
||||||
if not password:
|
|
||||||
return super().form_valid(form)
|
|
||||||
|
|
||||||
is_ok = check_password_rules(password)
|
|
||||||
if not is_ok:
|
|
||||||
form.add_error(
|
|
||||||
"password", _("* Your password does not meet the requirements")
|
|
||||||
)
|
|
||||||
return self.form_invalid(form)
|
|
||||||
return super().form_valid(form)
|
|
||||||
|
|
||||||
def get_form_kwargs(self):
|
def get_form_kwargs(self):
|
||||||
kwargs = super(UserUpdateView, self).get_form_kwargs()
|
kwargs = super(UserUpdateView, self).get_form_kwargs()
|
||||||
data = {'request': self.request}
|
data = {'request': self.request}
|
||||||
|
|
Loading…
Reference in New Issue