LDAP with sync rake task

This commit is contained in:
Matt Fu committed 2012-03-06 16:41:06 +08:00
1 parent 7f05f21930
commit d5a2de5476
23 files changed
+109 -40

No files matched your search

@@ -10,8 +10,16 @@ class Admin::ModuleAppsController < ApplicationController
def reload_frontend_pages
@categories =[]
@module_app = ModuleApp.find(params[:id])
@categories = @module_app.key.eql?('announcement') ? BulletinCategory.all : nil
unless (@module_app.category.nil? rescue true)
@module_app.category.each do |category|
@categories << eval(category).all.entries
end
@categories.flatten!
else
@categories = nil
end
respond_to do |format|
format.js {}
end
@@ -63,13 +63,16 @@ class Admin::PagePartsController < ApplicationController
end
def reload_widgets
@categories =[]
@module_app = ModuleApp.find(params[:id])
case @module_app.key
when 'announcement'
@categories = BulletinCategory.all
when 'web_resource'
@categories = WebLinkCategory.all
unless (@module_app.category.nil? rescue true)
@module_app.category.each do |category|
@categories << eval(category).all.entries
end
@categories.flatten!
end
respond_to do |format|
format.js {}
end
+1 -1
View File
@@ -1,3 +1,3 @@
class ObitWidgetController< OrbitFrontendComponentController
class OrbitWidgetController< OrbitFrontendComponentController
end
+14 -7
View File
@@ -5,14 +5,16 @@ class SessionsController < Devise::SessionsController
# POST /resource/sign_in
def create
# login_password = params[:user][:password]
# login_uid = params[:user][:nccu_ldap_uid]
login_password = params[:user][:password]
login_uid = params[:user][:nccu_ldap_uid]
result = false
ldap = Net::LDAP.new
# ldap.port = '8001'
# ldap.host = '127.0.0.1'
ldap.port = '389'
ldap.host = '140.119.166.23'
ldap.port = '8001'
ldap.host = '127.0.0.1'
# ldap.port = '389'
# ldap.host = '140.119.166.23'
ldap_filter = "(uid=#{login_uid})"
ldap_base = 'ou=People,dc=nccu,dc=edu,dc=tw'
ldap.authenticate("cn=uccn,ou=profile,dc=nccu,dc=edu,dc=tw","nccu2ucc")
@@ -24,9 +26,14 @@ class SessionsController < Devise::SessionsController
# resource = env['warden'].authenticate!(:check_nccu_ldap)
# resource = warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#new")
set_flash_message(:notice, :signed_in) if is_navigational_format?
resource_name = resource._type.downcase
sign_in(resource_name, resource)
respond_with resource, :location => redirect_location(resource_name, resource)
unless resource_name.nil?
resource_name = resource._type.downcase
sign_in(resource_name, resource)
respond_with resource, :location => redirect_location(resource_name, resource)
else
flash[:notice] = t('devise.failure.ldap_pass_but_account_not_in_orbit')
render :action => "new"
end
else
flash[:notice] = t('devise.failure.ldap_invalid')
render :action => "new"