# File lib/active_samba_ldap/account_entry.rb, line 135 def change_password(password) hash_type = self.class.configuration[:password_hash_type] hashed_password = ActiveLdap::UserPassword.__send__(hash_type, password) self.user_password = hashed_password end
# File lib/active_samba_ldap/account_entry.rb, line 130 def change_uid_number(uid, allow_non_unique=false) check_unique_uid_number(uid) unless allow_non_unique self.uid_number = Integer(uid) end
# File lib/active_samba_ldap/account_entry.rb, line 110 def destroy(options={}) if options[:removed_from_group] groups.each do |group| remove_from_group(group) end end dir = home_directory need_remove_home_directory = options[:remove_home_directory] && !new_entry? super() if need_remove_home_directory and File.directory?(dir) if options[:remove_home_directory_interactive] system("rm", "-r", "-i", dir) else FileUtils.rm_r(dir) end end new_entry? end
# File lib/active_samba_ldap/account_entry.rb, line 87 def fill_default_values(options={}) self.cn ||= uid self.sn ||= uid self.given_name ||= uid self.display_name ||= cn self.gecos ||= substituted_value(:user_gecos) {cn} self.home_directory ||= substituted_value(:user_home_directory) self.login_shell ||= self.class.configuration[:user_login_shell] options = options.stringify_keys password = options["password"] change_password(password) if password self.user_password ||= "{crypt}x" uid_number = options["uid_number"] self.change_uid_number(uid_number) if uid_number primary_group = options["group"] || retrieve_default_primary_group(options) self.primary_group = primary_group if primary_group self end
# File lib/active_samba_ldap/account_entry.rb, line 141 def setup_home_directory(options={}) dest = home_directory return unless dest FileUtils.mkdir_p(dest) mode = options[:mode] mode ||= self.class.configuration[:user_home_directory_mode] FileUtils.chmod(Integer(mode), dest) skel = options[:skeleton_directory] skel ||= self.class.configuration[:skeleton_directory] FileUtils.cp_r(Dir.glob(File.join(skel, ".*")) + Dir.glob(File.join(skel, "*")) - [File.join(skel, "."), File.join(skel, "..")], dest) FileUtils.chown_R(uid_number.to_s, gid_number.to_s, dest) end
Generated with the Darkfish Rdoc Generator 2.