mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2025-02-21 15:54:22 +01:00
(bug) do not verify group change when no initial group
This commit is contained in:
parent
3bf08973fb
commit
36704be01d
@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
- Script to download translations from Crowdin
|
- Script to download translations from Crowdin
|
||||||
- Fix a bug: admin and managers can't cancel or move event reservations
|
- Fix a bug: admin and managers can't cancel or move event reservations
|
||||||
- Fix a bug: phone numbers with hyphens and spaces prevent profile completion when the data is provided by a SSO
|
- Fix a bug: phone numbers with hyphens and spaces prevent profile completion when the data is provided by an SSO
|
||||||
|
- Fix a bug: unable to complete profile from SSO when the account validation is enabled
|
||||||
|
|
||||||
## v5.4.17 2022 September 06
|
## v5.4.17 2022 September 06
|
||||||
|
|
||||||
|
@ -9,19 +9,19 @@ class Members::MembersService
|
|||||||
end
|
end
|
||||||
|
|
||||||
def update(params)
|
def update(params)
|
||||||
if params[:group_id] && @member.group_id != params[:group_id].to_i && !@member.subscribed_plan.nil?
|
if subscriber_group_change?(params)
|
||||||
# here a group change is requested but unprocessable, handle the exception
|
# here a group change is requested but unprocessable, handle the exception
|
||||||
@member.errors.add(:group_id, I18n.t('members.unable_to_change_the_group_while_a_subscription_is_running'))
|
@member.errors.add(:group_id, I18n.t('members.unable_to_change_the_group_while_a_subscription_is_running'))
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:group_id] && params[:group_id].to_i != Group.find_by(slug: 'admins').id && @member.admin?
|
if admin_group_change?(params)
|
||||||
# an admin cannot change his group
|
# an admin cannot change his group
|
||||||
@member.errors.add(:group_id, I18n.t('members.admins_cant_change_group'))
|
@member.errors.add(:group_id, I18n.t('members.admins_cant_change_group'))
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
group_changed = params[:group_id] && @member.group_id != params[:group_id].to_i
|
group_changed = user_group_change?(params)
|
||||||
ex_group = @member.group
|
ex_group = @member.group
|
||||||
|
|
||||||
user_validation_required = Setting.get('user_validation_required')
|
user_validation_required = Setting.get('user_validation_required')
|
||||||
@ -80,7 +80,7 @@ class Members::MembersService
|
|||||||
end
|
end
|
||||||
|
|
||||||
def validate(is_valid)
|
def validate(is_valid)
|
||||||
is_updated = member.update(validated_at: is_valid ? Time.now : nil)
|
is_updated = member.update(validated_at: is_valid ? DateTime.current : nil)
|
||||||
if is_updated
|
if is_updated
|
||||||
if is_valid
|
if is_valid
|
||||||
NotificationCenter.call type: 'notify_user_is_validated',
|
NotificationCenter.call type: 'notify_user_is_validated',
|
||||||
@ -133,4 +133,16 @@ class Members::MembersService
|
|||||||
params[:password]
|
params[:password]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def subscriber_group_change?(params)
|
||||||
|
params[:group_id] && @member.group_id != params[:group_id].to_i && !@member.subscribed_plan.nil?
|
||||||
|
end
|
||||||
|
|
||||||
|
def admin_group_change?(params)
|
||||||
|
params[:group_id] && params[:group_id].to_i != Group.find_by(slug: 'admins').id && @member.admin?
|
||||||
|
end
|
||||||
|
|
||||||
|
def user_group_change?(params)
|
||||||
|
@member.group_id && params[:group_id] && @member.group_id != params[:group_id].to_i
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user