0

ユーザーが初めてウェブサイトにアクセスしたときに、ニュースレターへの登録などを提案するポップアップウィンドウをユーザーに表示する必要があります.Cookieの検出で行われると思います。Grailsでそれを行う適切な方法は何ですか? Spring Security Core プラグインを使用していますが、それがどのように役立つかわかりませんでした。

4

1 に答える 1

0

おそらくフィルターを使用するのが理にかなっています: http://grails.org/doc/latest/guide/theWebLayer.html#filters

すべてのユーザー (登録メンバーだけでなく) にポップアップを表示する必要がある場合は、Cookie/セッションがおそらく唯一の解決策です。ポップアップがログインしているメンバーにのみ表示される場合は、次のようなフィルターを使用できます。

showPopupOnFirstLogin(controller:'*', action:'*') {
        before = {
            try{
                User user = springSecurityService.currentUser
                if (user?.mustGetNotification && !request.xhr){
                    //we ignore ajax requests
                    redirect(controller:"home", action:"showPopup")
                    return false
                }

            }catch (Exception e){
                log.error "Failed to redirect", e
            }
        }

}

于 2013-10-08T14:54:17.903 に答える