예제 #1
0
    def dispatch(self):
        # Get a session store for this request.
        #self.session_store = sessions.get_store(request=self.request)
        #url=self.request.url
        
        
        #base_url=urlparse.urlparse(self.request.url)
        #self.redirect_url="http%3A%2F%2F"+self.request.host+config.GOOGLE_CALLBACK_URI_APPEND
        self.redirect_url="http://"+self.request.host+'/auth/google/callback'
        
        self.user=get_current_user(self.request)

            
        if self.user:
            self.lang=self.request.get('lang') or self.request.cookies.get("lang") or self.user.locale
        else:
            self.lang=self.request.get('lang') or self.request.cookies.get("lang")
        
        if not (languages.validate(self.lang)):
            self.lang = 'en'
        
        other_languages_list= languages.get_languages_list()
        other_languages_list.remove(self.lang)
        self.destination=self.request.get('destination') or self.request.cookies.get("destination")
        self.provider_id = self.request.get('provider_id')
        
        self.pars = {
            #"logged_in" : self.logged_in,
            'user':self.user,
            'language_dict' : languages.current_lang_dict(self.lang),
            'selected_language' : self.lang,
            'languages_list' : languages.get_languages_list(),
            'other_languages': other_languages_list,
            'provider_types' : Provider.get_provider_types(),
            "login_url" : config.GOOGLE_LOGIN_URL + "&redirect_uri="+ self.redirect_url,
            'destination' : self.destination
        }
        
       
            
        webapp2.RequestHandler.dispatch(self)