Compare commits

...

7 Commits
dev ... v2.14.1

Author SHA1 Message Date
feng626
95412d739a perf: 工单评论优化 2021-09-22 15:51:59 +08:00
老广
93b5876469 Merge pull request #6923 from jumpserver/pr@v2.14@fix_tokensmsoptions
fix: 修复KoKo登录时,未开启SMS服务出现了SMS选项的问题
2021-09-22 11:23:42 +08:00
Michael Bai
da02d1e456 fix: 修复KoKo登录时,未开启SMS服务出现了SMS选项的问题 2021-09-22 03:17:15 +00:00
ibuler
5928b265b7 perf: 登录错误提示颜色 2021-09-18 15:06:36 +08:00
wojiushixiaobai
f46c043db5 fix: 添加依赖 2021-09-17 00:07:43 +08:00
wojiushixiaobai
cbc1ab411b fix: 添加 pg 依赖包 2021-09-17 00:07:43 +08:00
老广
5e03af7243 Merge pull request #6903 from jumpserver/master
v2.14.0
2021-09-16 21:19:38 +08:00
7 changed files with 11 additions and 7 deletions

View File

@@ -147,7 +147,7 @@
{% csrf_token %}
<div style="line-height: 17px;margin-bottom: 20px;color: #999999;">
{% if form.errors %}
<p class="help-block">
<p class="help-block red-fonts">
{% if form.non_field_errors %}
{{ form.non_field_errors.as_text }}
{% endif %}

View File

@@ -206,10 +206,12 @@ class Ticket(CommonModelMixin, OrgModelMixin):
self.save()
post_change_ticket_action.send(sender=self.__class__, ticket=self, action=action)
# ticket
def has_assignee(self, assignee):
def has_current_assignee(self, assignee):
return self.ticket_steps.filter(ticket_assignees__assignee=assignee, level=self.approval_step).exists()
def has_all_assignee(self, assignee):
return self.ticket_steps.filter(ticket_assignees__assignee=assignee).exists()
@classmethod
def get_user_related_tickets(cls, user):
queries = Q(applicant=user) | Q(ticket_steps__ticket_assignees__assignee=user)

View File

@@ -15,4 +15,4 @@ class IsApplicant(permissions.BasePermission):
class IsAssignee(permissions.BasePermission):
def has_permission(self, request, view):
return view.ticket.has_assignee(request.user)
return view.ticket.has_all_assignee(request.user)

View File

@@ -3,7 +3,7 @@ from rest_framework import permissions
class IsAssignee(permissions.BasePermission):
def has_object_permission(self, request, view, obj):
return obj.has_assignee(request.user)
return obj.has_current_assignee(request.user)
class IsApplicant(permissions.BasePermission):

View File

@@ -537,7 +537,7 @@ class MFAMixin:
methods = []
if self.otp_secret_key:
methods.append(MFAType.OTP)
if self.phone:
if settings.XPACK_ENABLED and settings.SMS_ENABLED and self.phone:
methods.append(MFAType.SMS_CODE)
return methods

View File

@@ -1,5 +1,6 @@
# common
gcc
g++
cmake
curl
wget
@@ -12,6 +13,7 @@ default-mysql-client
default-libmysqlclient-dev
# Pillow
libpq-dev
libffi-dev
# libfreetype6-dev
# libfribidi-dev

View File

@@ -1 +1 @@
libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev python-tk python-dev openssl libssl-dev libldap2-dev libsasl2-dev sqlite libkrb5-dev sshpass libmysqlclient-dev
g++ libpq-dev libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev python-tk python-dev openssl libssl-dev libldap2-dev libsasl2-dev sqlite libkrb5-dev sshpass libmysqlclient-dev