Changeset 2f8f40 in indico


Ignore:
Timestamp:
02/22/11 15:27:10 (2 years ago)
Author:
Jose Benito <jose.benito.gonzalez@…>
Branches:
master, burotel, hello-world-walkthrough, ipv6, v0.97-series, v0.98-series, v0.98.2, v0.98.3, v0.98b1, v0.98b2, v0.99, 051b2622c51afb171a1dedb46a0df4fbb0cbd02e, d9941f8582b36b24821a11ea5ba16fda6a457fb1
Children:
88f40b
Parents:
e6d9f55
git-author:
Adrian Moennich <jerome.ernst.monnich@…> (02/21/11 13:16:14)
git-committer:
Jose Benito <jose.benito.gonzalez@…> (02/22/11 15:27:10)
Message:

[IMP] Allow changing the locale via lang=... param

Location:
indico/MaKaC/webinterface/rh
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • indico/MaKaC/webinterface/rh/base.py

    rcec111 r2f8f40  
    5555from MaKaC.common.logger import Logger 
    5656from MaKaC.common.contextManager import ContextManager 
    57 from MaKaC.i18n import _ 
     57from MaKaC.i18n import _, langList 
    5858 
    5959from MaKaC.plugins.base import PluginsHolder 
     
    9797        return self._uh.getURL( self._target ) 
    9898 
    99     def _setLang(self): 
     99    def _setLang(self, params): 
     100 
     101        # allow to choose the lang from params 
     102        if 'lang' in params: 
     103            newLang = params.get('lang', '') 
     104            for lang in langList(): 
     105                if newLang.lower() == lang[0].lower(): 
     106                    self._websession.setLang(lang[0]) 
     107                    break 
     108 
    100109        lang=self._websession.getLang() 
    101110        Logger.get('i18n').debug("lang:%s"%lang) 
     
    472481                        #raise(str(dir(self._websession))) 
    473482                        self._setSessionUser() 
    474                         self._setLang() 
     483                        self._setLang(params) 
    475484 
    476485                        if self._getUser(): 
  • indico/MaKaC/webinterface/rh/lang.py

    r9033fd r2f8f40  
    11#import syslog 
     2import re 
    23from MaKaC.common import DBMgr 
    34import MaKaC.webinterface.rh.base as base 
     
    67 
    78class RHChangeLang(base.RH): 
    8      
     9 
    910    def _process(self): 
    1011        params = self._getRequestParams() 
    11         self._websession.setLang(params.get("lang","")) 
    12         self._redirect(params['REFERER_URL'], noCache=True) 
     12        # No need to do any processing here. The language change is processed in RH base 
     13        # Remove lang param from referer 
     14        referer = re.sub(r'(?<=[&?])lang=[^&]*&?', '', params['REFERER_URL']) 
     15        referer = re.sub(r'[?&]$', '', referer) 
     16        self._redirect(referer, noCache=True) 
Note: See TracChangeset for help on using the changeset viewer.