def nameAllowed(self): """Return whether names can be input by the user.""" context = self.context if IContentType.providedBy(context): context = context.context if IAdding.providedBy(context): context = context.context if IWriteContainer.providedBy(context): return not IContainerNamesContainer.providedBy(context) else: return False
def add(self, object): name = self.getName(object) if IContentType.providedBy(self.context): ob = self.context.add(object, name) elif IAdding.providedBy(self.context): self.context.contentName = name ob = self.context.add(object) else: raise ValueError("Can't add content.") self._addedObject = ob return ob
def __call__(self, context, default=None): contenttype = queryUtility(IContentType, name=self.name, default=default) if IContentType.providedBy(contenttype): return contenttype.__bind__(context)