Changeset 1626

Show
Ignore:
Timestamp:
11-03-11 13:42:05 (3 years ago)
Author:
work@…
Message:

- added initial support of a return URI; not working properly though...

Location:
trunk/grails-app
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/conf/BaseFilters.groovy

    r1615 r1626  
    4646                                        session.removeAttribute('loggedInUser') 
    4747 
     48                                        def returnURI = request.requestURL.toString().replace(".dispatch","").replace("/grails/","/") + '?' + request.queryString 
     49 
    4850                                        // and redirect to login page 
    49                                         redirect(controller: 'login', action: 'auth') 
     51                                        redirect(controller: 'login', action: 'auth', params: [returnURI: returnURI, referer: request.getHeader('referer')] ) 
    5052                                } 
    5153                        } 
  • trunk/grails-app/controllers/dbnp/authentication/LoginController.groovy

    r1614 r1626  
    1414 
    1515class LoginController { 
    16  
    1716        /** 
    1817         * Dependency injection for the authenticationTrustResolver. 
     
    4645         */ 
    4746        def auth = { 
    48  
    4947                def config = SpringSecurityUtils.securityConfig 
    50  
    5148                if (springSecurityService.isLoggedIn()) { 
    52                         redirect uri: config.successHandler.defaultTargetUrl 
     49                        if (params.returnURI) { 
     50                                // see basefilters 
     51                                redirect uri: params.returnURI 
     52                        } else { 
     53                                redirect uri: config.successHandler.defaultTargetUrl 
     54                        } 
    5355                        return 
    5456                } 
     
    5658                String view = 'auth' 
    5759                String postUrl = "${request.contextPath}${config.apf.filterProcessesUrl}" 
    58                 render view: view, model: [postUrl: postUrl, 
    59                         rememberMeParameter: config.rememberMe.parameter] 
     60                render view: view, model: [postUrl: postUrl, rememberMeParameter: config.rememberMe.parameter] 
    6061        } 
    6162 
     
    108109         */ 
    109110        def denied = { 
     111println "denied" 
    110112                if (springSecurityService.isLoggedIn() && 
    111113                        authenticationTrustResolver.isRememberMe(SCH.context?.authentication)) { 
     
    119121         */ 
    120122        def full = { 
     123pritln "full" 
    121124                def config = SpringSecurityUtils.securityConfig 
    122125                render view: 'auth', params: params, 
     
    129132         */ 
    130133        def authfail = { 
    131  
     134println "authfail" 
    132135                def username = session[UsernamePasswordAuthenticationFilter.SPRING_SECURITY_LAST_USERNAME_KEY] 
    133136                String msg = '' 
     
    164167         */ 
    165168        def ajaxSuccess = { 
     169println "ajaxsuccess" 
    166170                render([success: true, username: springSecurityService.authentication.name] as JSON) 
    167171        } 
     
    171175         */ 
    172176        def ajaxDenied = { 
     177println "ajaxdenied" 
    173178                render([error: 'access denied'] as JSON) 
    174179        }