lib/authpds/controllers/authpds_controller.rb in authpds-0.2.0 vs lib/authpds/controllers/authpds_controller.rb in authpds-0.2.1

- old
+ new

@@ -1,71 +1,13 @@ module Authpds module Controllers module AuthpdsController - - # Set helper methods when this module is included. def self.included(klass) klass.class_eval do - helper_method :current_user_session, :current_user, :current_primary_institution + include Authpds::Controllers::AuthpdsController::CoreAttributes + include Authpds::Controllers::AuthpdsController::InstitutionAttributes + include Authpds::Controllers::AuthpdsController::UrlHandling end end - - # Get the current UserSession if it exists - def current_user_session - @current_user_session ||= UserSession.find - end - - # Get the current User if there is a UserSession - def current_user - @current_user ||= current_user_session.record unless current_user_session.nil? - end - - # Determine current primary institution based on: - # 0. institutions are not being used (returns nil) - # 1. institution query string parameter in URL - # 2. institution associated with the client IP - # 3. primary institution for the current user - # 4. first default institution - def current_primary_institution - @current_primary_institution ||= - (institution_param.nil? or all_institutions[institution_param].nil?) ? - (primary_institution_from_ip.nil?) ? - (current_user.nil? or current_user.primary_institution.nil?) ? - Institutions.defaults.first : - current_user.primary_institution : - primary_institution_from_ip : - all_institutions[institution_param] - end - - # Override to add institution. - def url_for(options={}) - options[institution_param_key] ||= institution_param unless institution_param.nil? - super options - end - - def user_session_redirect_url(url) - (url.nil?) ? (request.referer.nil?) ? root_url : request.referer : url - end - - # Grab the first institution that matches the client IP - def primary_institution_from_ip - Institutions.with_ip(request.remote_ip).first unless request.nil? - end - private :primary_institution_from_ip - - def institution_param_key - @institution_param_key ||= UserSession.institution_param_key - end - private :institution_param_key - - def institution_param - params["#{institution_param_key}"].to_sym unless params["#{institution_param_key}"].nil? - end - private :institution_param - - def all_institutions - Institutions.institutions - end - private :all_institutions end end end \ No newline at end of file