def test_link_translation(multilingual_doc, root, db_session): from kotti_multilingual.api import link_translation from kotti_multilingual.api import get_translations doc2 = root['sl']['doc2'] = Document(language=u'sl') link_translation(multilingual_doc, doc2) assert get_translations(multilingual_doc) == {'sl': doc2}
def add_translation(context, request): """XXX: Check that we dont leak anything""" source_id = request.params['id'] source = DBSession.query(Content).get(int(source_id)) translation = context[source.__name__] = source.copy() api.link_translation(source, translation) return HTTPFound(location=request.resource_url(translation, 'edit'))
def test_get_translations_alotta(translated_docs, root, db_session): from kotti_multilingual.api import get_translations from kotti_multilingual.api import link_translation from kotti_multilingual.resources import LanguageRoot source, target = translated_docs fr = root['fr'] = LanguageRoot(language=u'fr', title=u'Le root') fr['doc'] = Document(title=u'English doc') link_translation(source, fr['doc']) assert get_translations(fr['doc']) == {'en': source, 'sl': target}
def autolink_language_root(event): context = event.object lr = DBSession.query(LanguageRoot).first() if lr is None: return source = api.get_source(lr) if source is None: source = lr api.link_translation(source, context)