Example #1
0
def translateArtists(language="en"):
    import plone.api
    import transaction
    from plone.app.multilingual.interfaces import ITranslationManager
    
    container_path = "/nl/online-archief/kunstenaars"

    with plone.api.env.adopt_user(username="******"):
        container = plone.api.content.get(path=container_path)

        total = len(list(container))
        curr = 0

        for _id in list(container):
            curr += 1
            print "Translating Person %s / %s to '%s'" %(curr, total, language)
            person = container[_id]

            if not ITranslationManager(person).has_translation(language):
                ITranslationManager(person).add_translation(language)
                person_translated = ITranslationManager(person).get_translation(language)
                person_translated.title = person.title
                person_translated.firstname = person.firstname
                person_translated.lastname = person.lastname
                person_translated.nationality = person.nationality
                person_translated.year = person.year
                person_translated.reindexObject()
                transaction.get().commit()
                print "Translation added for Person '%s'" %(person.title)
            else:
                print "Person '%s' already has a translation to '%s'" %(person.title, language)

    return True