reindexqueue.append(term.getId()) print "reindex new terms" for key in reindexqueue: self[key].reindexObject() print "set savepoint" sp = transaction.savepoint(optimistic=True) security.declareProtected(permissions.View, 'download') def download(self, REQUEST, RESPONSE): """ response with the xml-file """ filename = self.getId() if filename: if not filename.endswith('.xml'): filename+='.xml' RESPONSE.setHeader('Content-Disposition', 'attachment; filename=%s' % filename) xmldata = StringIO() newl = self.REQUEST.get('newline', VDEX_EXPORT_NEWL) indent= self.REQUEST.get('indent', VDEX_EXPORT_INDENT) xmldata = self.exportXMLBinding(xmldata,newl,indent) RESPONSE.setHeader('Content-Type', 'text/xml') RESPONSE.setHeader('Content-Length', len(xmldata.getvalue())) RESPONSE.write(xmldata.getvalue()) return '' registerType(VdexVocabulary) registerVocabularyContainer(VdexVocabulary)
"""determine language""" plt = getToolByName(self, 'portal_languages', None) if plt is not None: # if we have PLT take it to vary the language lang = plt.getPreferredLanguage() else: # try to get it from PTS accepted = getLangPrefs(self.REQUEST) if len(accepted) > 0: lang = accepted[0] else: # bummer, it cant determine a language lang = 'neutral' return lang and lang[:2] or None def SearchableText(self): """dont find in live-search""" return '' security.declareProtected(permissions.ModifyPortalContent, 'importXMLBinding') def importXMLBinding(self, data): """ imports IMS VDEX compliant XML (BBB) """ self.setVdex(data) self.reindexObject() registerType(IMSVDEXVocabulary, PROJECTNAME) registerVocabularyContainer(IMSVDEXVocabulary)