class Languages(Actions): """Languages actions:: >>> langs = Languages('fr', 'en') >>> langs <Languages [<ListItem lang_fr>, <ListItem lang_en>]> It take care about the active language:: >>> from webob import Request >>> request = Request.blank('/') >>> request.cookies['_LOCALE_'] = 'fr' >>> request.route_url = lambda name, _query: 'http://localhost/set_language?_LOCALE_=%(_LOCALE_)s' % _query >>> print langs.render(request) #doctest: +ELLIPSIS +NORMALIZE_WHITESPACE <li><a href="http://localhost/set_language?_LOCALE_=fr" class="lang_fr lang_active" id="lang_fr">French</a></li> <li><a href="http://localhost/set_language?_LOCALE_=en" class="lang_en " id="lang_en">English</a></li> """ translations = { 'fr': _('French'), 'en': _('English'), 'pt_BR': _('Brazilian'), } def __init__(self, *args, **kwargs): Actions.__init__(self) klass=kwargs.get('class_', ListItem) for l in args: self.append( klass(id='lang_%s' % l, content=self.translations.get(l, _(l)), attrs={ 'class':"string:lang_%s ${request.cookies.get('_LOCALE_') == '%s' and 'lang_active' or ''}" % (l, l), 'href':"request.route_url('set_language', _query={'_LOCALE_': '%s'})" % l } ))
def __init__(self, *args, **kwargs): list.__init__(self) klass=kwargs.get('class_', ListItem) for l in args: self.append( klass(id='lang_%s' % l, content=self.translations.get(l, _(l)), attrs={ 'class':"string:lang_%s ${request.cookies.get('_LOCALE_') == '%s' and 'lang_active' or ''}" % (l, l), 'href':"request.route_url('set_language', _query={'_LOCALE_': '%s'})" % l } ))
def __init__(self, *args, **kwargs): Actions.__init__(self) klass=kwargs.get('class_', ListItem) for l in args: self.append( klass(id='lang_%s' % l, content=self.translations.get(l, _(l)), attrs={ 'class':"string:lang_%s ${request.cookies.get('_LOCALE_') == '%s' and 'lang_active' or ''}" % (l, l), 'href':"request.route_url('set_language', _query={'_LOCALE_': '%s'})" % l } ))
def __init__(self, *args, **kwargs): Actions.__init__(self) klass=kwargs.get('class_', Option) if len(args) == 1 and args[0] == '*': args = self.themes for theme in args: label = theme.replace('_', ' ') self.append( klass(id='theme_%s' % theme, content=_(label), attrs={ 'selected':"string:${request.cookies.get('_THEME_') == '%s' and 'selected' or None}" % theme, 'value':"request.route_url('set_theme', _query={'_THEME_': '%s'})" % theme } ))
</ul> </li>''' def __init__(self, *args, **kwargs): Actions.__init__(self, *args, **kwargs) actions.Action.__init__(self, **kwargs) def render(self, request, **kwargs): items = Actions.render(self, request, **kwargs) self.rcontext.update(items=items) return actions.Action.render(self, request) new = UIButton( id='new', content=_('New ${model_label}'), permission='new', _class='btn primary', attrs=dict(href="request.fa_url(request.model_name, 'new')"), ) save = UIButton( id='save', content=_('Save'), permission='edit', _class='btn success', attrs=dict(onclick="jQuery(this).parents('form').submit();"), ) save_and_add_another = UIButton(
</ul> </li>""" def __init__(self, *args, **kwargs): Actions.__init__(self, *args, **kwargs) actions.Action.__init__(self, **kwargs) def render(self, request, **kwargs): items = Actions.render(self, request, **kwargs) self.rcontext.update(items=literal(items)) return actions.Action.render(self, request) new = UIButton( id="new", content=_("New ${model_label}"), permission="new", _class="btn btn-primary", attrs=dict(href="request.fa_url(request.model_name, 'new')"), ) save = UIButton( id="save", content=_("Save"), permission="edit", _class="btn btn-success", attrs=dict(onclick="jQuery(this).parents('form').submit();"), ) save_and_add_another = UIButton(