def _create_country_folder(member_states, country_name, lang): log.info('_create_country_folder for %s in language: %s' \ % (country_name, lang)) sid = country_name.lower().replace(' ', '-').replace('/', '-') if member_states.portal_languages.getCanonicalLanguage() == lang: try: member_states.invokeFactory('Folder', sid) except BadRequest: log.info('Country folder %s already exists! Will take existing folder.' % country_name) country_folder = member_states._getOb(sid) else: canonical = member_states._getOb(sid) country_folder = canonical.addTranslation(lang) translate = getTranslationService().translate title_trans = translate( target_language=lang, msgid=u'ew2000-navtitle_%s' % lang, default=country_name, context=member_states, domain='osha-subsites' ) country_folder.setTitle(title_trans) subtyper = component.getUtility(ISubtyper) subtyper.change_type(country_folder, 'slc.subsite.FolderSubsite') return country_folder
def _create_country_folder(member_states, country_name, lang): log.info('_create_country_folder for %s in language: %s' \ % (country_name, lang)) sid = country_name.lower().replace(' ', '-').replace('/', '-') if member_states.portal_languages.getCanonicalLanguage() == lang: try: member_states.invokeFactory('Folder', sid) except BadRequest: log.info( 'Country folder %s already exists! Will take existing folder.' % country_name) country_folder = member_states._getOb(sid) else: canonical = member_states._getOb(sid) country_folder = canonical.addTranslation(lang) translate = getTranslationService().translate title_trans = translate(target_language=lang, msgid=u'ew2000-navtitle_%s' % lang, default=country_name, context=member_states, domain='osha-subsites') country_folder.setTitle(title_trans) subtyper = component.getUtility(ISubtyper) subtyper.change_type(country_folder, 'slc.subsite.FolderSubsite') return country_folder
def _setter(ob, *args, **kw): translate = getTranslationService().translate label = kw["label"] domain = kw["domain"] lang = kw["lang"] desc_trans = translate(target_language=lang, msgid=label, default=label, context=ob, domain=domain) ob.setDescription(desc_trans)
def _add_portlets(obj, events_topic, news_topic, lang): log.info('_add_portlets for language %s' % lang) path = "/".join(obj.getPhysicalPath()) oshabelow = assignment_mapping_from_key(obj, 'osha.belowcontent.portlets', CONTEXT_CATEGORY, path) events_topic_path = "/".join(events_topic.getPhysicalPath()) news_topic_path = "/".join(news_topic.getPhysicalPath()) translate = getTranslationService().translate news_trans = translate( target_language=lang, msgid=u'News', default=u'News', context=obj, domain='plone' ) oshabelow[u'news-collection'] = collection.Assignment( header=news_trans, target_collection=news_topic_path, limit=5, ) events_trans = translate( target_language=lang, msgid=u'Events', default=u'Events', context=obj, domain='plone' ) oshabelow[u'events-collection'] = collection.Assignment( header=events_trans, target_collection=events_topic_path, limit=5, ) rightcolumn_manager = component.getUtility( IPortletManager, name=u'plone.rightcolumn', context=obj ) rightcolumn = component.getMultiAdapter( (obj, rightcolumn_manager), IPortletAssignmentMapping, context=obj ) rightcolumn[u'activities'] = osha_portlets.image.Assignment( header=u"Agency's Activities", image="/en/press/photos/banners/hw_08_banner/hwp_%s.swf" % lang, url="/%s/campaigns/hw2008/" % lang, width="167", height="74", ) rightcolumn[u'links'] = osha_portlets.network_member_links.Assignment()
def _add_portlets(obj, events_topic, news_topic, lang): log.info('_add_portlets for language %s' % lang) path = "/".join(obj.getPhysicalPath()) oshabelow = assignment_mapping_from_key(obj, 'osha.belowcontent.portlets', CONTEXT_CATEGORY, path) events_topic_path = "/".join(events_topic.getPhysicalPath()) news_topic_path = "/".join(news_topic.getPhysicalPath()) translate = getTranslationService().translate news_trans = translate(target_language=lang, msgid=u'News', default=u'News', context=obj, domain='plone') oshabelow[u'news-collection'] = collection.Assignment( header=news_trans, target_collection=news_topic_path, limit=5, ) events_trans = translate(target_language=lang, msgid=u'Events', default=u'Events', context=obj, domain='plone') oshabelow[u'events-collection'] = collection.Assignment( header=events_trans, target_collection=events_topic_path, limit=5, ) rightcolumn_manager = component.getUtility(IPortletManager, name=u'plone.rightcolumn', context=obj) rightcolumn = component.getMultiAdapter((obj, rightcolumn_manager), IPortletAssignmentMapping, context=obj) rightcolumn[u'activities'] = osha_portlets.image.Assignment( header=u"Agency's Activities", image="/en/press/photos/banners/hw_08_banner/hwp_%s.swf" % lang, url="/%s/campaigns/hw2008/" % lang, width="167", height="74", ) rightcolumn[u'links'] = osha_portlets.network_member_links.Assignment()
def translate(self, msgid, mapping=None, context=None, target_language=None, default=None): pts = getTranslationService() if pts is None or context is None: # If we don't have enough context use interpolate return interpolate(default, mapping) # Don't accept anything which isn't a real request if not IBrowserRequest.providedBy(context) or 'PARENTS' not in context: raise ValueError, "You didn't pass in a request as the context." parent = context['PARENTS'][-1] return pts.translate(self.domain, msgid, mapping, parent, target_language, default)
def _add_news_folder(country_folder, lang): translate = getTranslationService().translate news_trans = translate(target_language=lang, msgid=u'News', default=u'News', context=country_folder, domain='plone') log.info('_add_news_folder') if country_folder.portal_languages.getCanonicalLanguage() == lang: id = country_folder.invokeFactory('Folder', 'news') news = country_folder._getOb(id) else: canonical_country_folder = country_folder.getCanonical() canonical_news = canonical_country_folder._getOb("news") news = canonical_news.addTranslation(lang) news.setTitle(news_trans) return _add_news_topic(news, lang)
def _add_events_folder(country_folder, lang): log.info('_add_events_folder') translate = getTranslationService().translate events_trans = translate( target_language=lang, msgid=u'Events', default=u'Events', context=country_folder, domain='plone' ) if country_folder.portal_languages.getCanonicalLanguage() == lang: id = country_folder.invokeFactory('Folder', 'events', title=events_trans) events = country_folder._getOb(id) else: canonical_country_folder = country_folder.getCanonical() canonical_events = canonical_country_folder._getOb("events") events = canonical_events.addTranslation(lang) events.setTitle(events_trans) return _add_events_topic(events, lang)
def _add_news_folder(country_folder, lang): translate = getTranslationService().translate news_trans = translate( target_language=lang, msgid=u'News', default=u'News', context=country_folder, domain='plone' ) log.info('_add_news_folder') if country_folder.portal_languages.getCanonicalLanguage() == lang: id = country_folder.invokeFactory('Folder', 'news') news = country_folder._getOb(id) else: canonical_country_folder = country_folder.getCanonical() canonical_news = canonical_country_folder._getOb("news") news = canonical_news.addTranslation(lang) news.setTitle(news_trans) return _add_news_topic(news, lang)
def _add_events_folder(country_folder, lang): log.info('_add_events_folder') translate = getTranslationService().translate events_trans = translate(target_language=lang, msgid=u'Events', default=u'Events', context=country_folder, domain='plone') if country_folder.portal_languages.getCanonicalLanguage() == lang: id = country_folder.invokeFactory('Folder', 'events', title=events_trans) events = country_folder._getOb(id) else: canonical_country_folder = country_folder.getCanonical() canonical_events = canonical_country_folder._getOb("events") events = canonical_events.addTranslation(lang) events.setTitle(events_trans) return _add_events_topic(events, lang)
## Script (Python) "translate_target" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=domain, id, target ##title= ## from Products.PythonScripts.standard import html_quote from Products.PlacelessTranslationService import getTranslationService request = container.REQUEST RESPONSE = request.RESPONSE return getTranslationService().utranslate(domain, id, target_language=target)