lib/ditty/controllers/users.rb in ditty-0.7.2 vs lib/ditty/controllers/users.rb in ditty-0.8.0

- old
+ new

@@ -1,9 +1,10 @@ # frozen_string_literal: true require 'ditty/controllers/component' require 'ditty/models/user' +require 'ditty/models/user_login_trait' require 'ditty/policies/user_policy' require 'ditty/models/identity' require 'ditty/policies/identity_policy' module Ditty @@ -11,15 +12,10 @@ SEARCHABLE = %i[name surname email].freeze set model_class: User set track_actions: true - def find_template(views, name, engine, &block) - super(views, name, engine, &block) # Root - super(::Ditty::App.view_folder, name, engine, &block) # Ditty - end - # New get '/new' do authorize settings.model_class, :create locals = { title: heading(:new), entity: User.new, identity: Identity.new } @@ -43,20 +39,19 @@ DB.transaction(isolation: :serializable) do begin identity.save rescue Sequel::ValidationFailed raise unless request.accept? 'text/html' + status 400 locals = { title: heading(:new), entity: user, identity: identity } return haml(:"#{view_location}/new", locals: locals) end user.save user.add_identity identity - if roles - roles.each do |role_id| - user.add_role(role_id) unless user.roles.map(&:id).include? role_id.to_i - end + roles&.each do |role_id| + user.add_role(role_id) unless user.roles.map(&:id).include? role_id.to_i end user.check_roles end broadcast(:component_create, target: self)