#!/usr/bin/ruby
#FIXME: this should really be a rake task, then we get half of this stuff for free
$: << File.join(File.dirname(__FILE__), '../dutils')

require 'active_record_env'

# Get configuration options...
ldap_config = YAML::load(File.open(File.dirname(__FILE__) +"/../config/ldap.yml"))
uid = ARGV[0]
base, host = ldap_config["production"]["base"], ldap_config["production"]["host"]

ActiveLdap::Base.setup_connection :base => base, :host => host, :try_sasl => false

if Account.exists?("uid=#{uid}")
  puts "Creating an admin account for #{uid}..."
  $pool = DirectoryPool.get_directory_root
  permission = Permission.new(:role_id => Role.find_by_name(Role::SUPER_ADMIN).id,
                              :uid       => uid,
                              :pool_id   => $pool.id)
  permission.save_with_new_children
else
  puts "Unable to verify user: uid=#{uid}"
end
