Example #1
0
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}
Example #2
0
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'))
Example #3
0
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}
Example #4
0
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)