|
|
@ -74,7 +74,8 @@ class UsersController < ApplicationController |
|
|
|
def create |
|
|
|
def create |
|
|
|
@resource = User.new(user_params.merge(org_params).merge(password_params)) |
|
|
|
@resource = User.new(user_params.merge(org_params).merge(password_params)) |
|
|
|
|
|
|
|
|
|
|
|
if valid_attributes? && @resource.save |
|
|
|
validate_attributes |
|
|
|
|
|
|
|
if @resource.errors.empty? && @resource.save |
|
|
|
redirect_to created_user_redirect_path |
|
|
|
redirect_to created_user_redirect_path |
|
|
|
else |
|
|
|
else |
|
|
|
unless @resource.errors[:organisation].empty? |
|
|
|
unless @resource.errors[:organisation].empty? |
|
|
@ -108,15 +109,14 @@ class UsersController < ApplicationController |
|
|
|
|
|
|
|
|
|
|
|
private |
|
|
|
private |
|
|
|
|
|
|
|
|
|
|
|
def valid_attributes? |
|
|
|
def validate_attributes |
|
|
|
@resource.valid? |
|
|
|
@resource.validate |
|
|
|
if user_params[:role].present? && !current_user.assignable_roles.key?(user_params[:role].to_sym) |
|
|
|
if user_params[:role].present? && !current_user.assignable_roles.key?(user_params[:role].to_sym) |
|
|
|
@resource.errors.add :role, I18n.t("validations.role.invalid") |
|
|
|
@resource.errors.add :role, I18n.t("validations.role.invalid") |
|
|
|
end |
|
|
|
end |
|
|
|
if user_params[:role].empty? |
|
|
|
if user_params[:role].empty? |
|
|
|
@resource.errors.add :role, I18n.t("activerecord.errors.models.user.attributes.role.blank") |
|
|
|
@resource.errors.add :role, I18n.t("activerecord.errors.models.user.attributes.role.blank") |
|
|
|
end |
|
|
|
end |
|
|
|
@resource.errors.empty? |
|
|
|
|
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def format_error_messages |
|
|
|
def format_error_messages |
|
|
|