def addTranslation(self, language, *args, **kwargs): """Adds a translation.""" if self.hasTranslation(language): translation = self.getTranslation(language) raise AlreadyTranslated(translation.absolute_url()) locator = ILocateTranslation(self) parent = locator.findLocationForTranslation(language) notify(events.ObjectWillBeTranslatedEvent(self, language)) canonical = self.getCanonical() kwargs[config.KWARGS_TRANSLATION_KEY] = canonical factory = ITranslationFactory(self) translation = factory.createTranslation( parent, language, *args, **kwargs) # special handling for Belgium ppath = '/'.join(parent.getPhysicalPath()) if not ppath.startswith('/osha/portal/fop/belgium'): translation.unmarkCreationFlag() translation.reindexObject() notify(events.ObjectTranslatedEvent(self, translation, language)) return translation
def addTranslation(self, language, *args, **kwargs): """Adds a translation.""" if self.hasTranslation(language): translation = self.getTranslation(language) raise AlreadyTranslated(translation.absolute_url()) locator = ILocateTranslation(self) parent = locator.findLocationForTranslation(language) notify(events.ObjectWillBeTranslatedEvent(self, language)) canonical = self.getCanonical() kwargs[config.KWARGS_TRANSLATION_KEY] = canonical factory = ITranslationFactory(self) translation = factory.createTranslation(parent, language, *args, **kwargs) translation.reindexObject() notify(events.ObjectTranslatedEvent(self, translation, language)) return translation
def addTranslation(self, language, *args, **kwargs): """Adds a translation.""" if self.hasTranslation(language): translation = self.getTranslation(language) raise AlreadyTranslated(translation.absolute_url()) locator = ILocateTranslation(self) parent = locator.findLocationForTranslation(language) notify(events.ObjectWillBeTranslatedEvent(self, language)) canonical = self.getCanonical() kwargs[config.KWARGS_TRANSLATION_KEY] = canonical factory = ITranslationFactory(self) translation = factory.createTranslation( parent, language, *args, **kwargs) translation.reindexObject() notify(events.ObjectTranslatedEvent(self, translation, language)) return translation
def addTranslation(self, language, *args, **kwargs): """Adds a translation.""" if self.hasTranslation(language): translation = self.getTranslation(language) raise AlreadyTranslated(translation.absolute_url()) locator = ILocateTranslation(self) parent = locator.findLocationForTranslation(language) notify(events.ObjectWillBeTranslatedEvent(self, language)) canonical = self.getCanonical() kwargs[config.KWARGS_TRANSLATION_KEY] = canonical factory = ITranslationFactory(self) translation = factory.createTranslation(parent, language, *args, **kwargs) # special handling for Belgium ppath = '/'.join(parent.getPhysicalPath()) if not ppath.startswith('/osha/portal/fop/belgium'): translation.unmarkCreationFlag() translation.reindexObject() notify(events.ObjectTranslatedEvent(self, translation, language)) return translation