Sha256: 08c2c30cefeeb7aa3e32f1b3b0e59406043b3efff150b8c3d42e06ab0f777493
Contents?: true
Size: 1.44 KB
Versions: 15
Compression:
Stored size: 1.44 KB
Contents
require 'chaltron/ldap/person' class Chaltron::LdapController < ApplicationController before_action :authenticate_user! before_action :authorize_create_user default_log_category :user_admin def search @limit = default_limit end def multi_new @entries = [] userid = params[:userid] if userid.present? entry = Chaltron::LDAP::Person.find_by_uid(userid) @entries << entry else @entries = Chaltron::LDAP::Person.find_by_fields(find_options) end @entries.compact! end def multi_create @created = [] @error = [] (params[:uids] || []).each do |uid| user = Chaltron::LDAP::Person.find_by_uid(uid).create_user(params[:user][:roles]) if user.new_record? @error << user else @created << user end end info I18n.t('chaltron.logs.users.ldap_created', current: current_user.display_name, count: @created.size, user: @created.map(&:display_name).join(', ')) if @created.size > 0 end private def find_options department = params[:department] name = params[:lastname] limit = params[:limit].to_i ret = {} ret[:department] = "*#{department}*" unless department.blank? ret[:last_name] = "*#{name}*" unless name.blank? ret[:limit] = limit.zero? ? default_limit : limit ret end def default_limit 100 end def authorize_create_user authorize! :create, User end end
Version data entries
15 entries across 15 versions & 1 rubygems