def formatBibliography(self,found): ret="" if found.id_institutsbibliographie and (not found.id_institutsbibliographie==''): ret+=formatBiblHelp(self,found,table='institutsbiblio',id=found.id_institutsbibliographie) else: ret+=formatBiblHelp(self,found,table='bibliography',id=found.id_gen_bib) return ret def getBib(value): if value: return value else: return "" def formatBiblHelp(self,found,table,id,foundIB=None): ret="" if not foundIB: try: foundIB=self.ZSQLInlineSearch(_table=table,id=id)[0] except: return ret if foundIB.reference_type.lower()=='journal article': ret+=getBib(foundIB.author_semi_colon)+". ""+getBib(foundIB.title)+". " "+"%s"%getBib(foundIB.secondary_title)+" "+getBib(foundIB.volume)+" (" if not self.ZSQLisEmpty(foundIB.number): ret+=foundIB.number+" " ret+=foundIB.year+")" if foundIB.pages and (not foundIB.pages)=='': ret+=": "+foundIB.pages+"." elif foundIB.reference_type.lower()=='edited book': ret+=foundIB.author_semi_colon+" (Editor/s). "+foundIB.title+"." if foundIB.place_published and (not foundIB.place_published==''): ret+=foundIB.place_published+": " if foundIB.publisher and (not foundIB.publisher==''): ret+=foundIB.publisher+", " ret+=foundIB.year+"." elif foundIB.reference_type.lower()=='book section': ret+=getBib(foundIB.author_semi_colon)+". ""+getBib(foundIB.title)+"." In "+getBib(foundIB.secondary_title)+"" if (foundIB.secondary_author_semi_colon) and (not foundIB.secondary_author_semi_colon==''): ret+=", eds.: "+foundIB.secondary_author_semi_colon ret+=". " if foundIB.pages and (not foundIB.pages)=='': ret+=foundIB.pages+". " if foundIB.place_published and (not foundIB.place_published==''): ret+=foundIB.place_published+": " if foundIB.publisher and (not foundIB.publisher==''): ret+=foundIB.publisher+", " ret+=foundIB.year+"." elif foundIB.reference_type.lower()=='book': ret+=foundIB.author_semi_colon+". "+foundIB.title+". " if foundIB.pages and (not foundIB.pages==''): ret+=foundIB.pages+". " if foundIB.place_published and (not foundIB.place_published==''): ret+=foundIB.place_published+": " if foundIB.publisher and (not foundIB.publisher==''): ret+=foundIB.publisher+", " ret+=foundIB.year+"." elif foundIB.reference_type.lower()=='newspaper article': ret+=foundIB.author_semi_colon+". ""+foundIB.title+"." "+foundIB.secondary_title+", " ret+=foundIB.date+"."+foundIB.year+"," if foundIB.pages and (not foundIB.pages==''): ret+=foundIB.pages+". " return ret