Ejemplo n.º 1
0
 def _get_address(self):
     """Return record address"""
     address = []
     if 'imprints' in self.record:
         for field in self.record['imprints']:
             if 'place' in field and field['place']:
                 address.append(field['place'])
         if address:
             if len(address) > 1:
                 return address[0]
             else:
                 if any(isinstance(i, list) for i in address):
                     from inspire.utils import bibtex_booktitle
                     nested_list = list(bibtex_booktitle.traverse(address))
                     return nested_list[0]
                 else:
                     return ''.join(result for result in address)
     else:
         return address
Ejemplo n.º 2
0
 def _get_isbn(self):
     """Return ISBN"""
     isbn_list = []
     result = []
     if 'isbns' in self.record:
         for isbn in self.record['isbns']:
             isbn_list.append(isbn['value'])
         if len(isbn_list) > 1:
             for element in isbn_list:
                 if isinstance(element, list):
                     result.append(element[0])
                 else:
                     result.append(element)
             return ', '.join(element for element in result)
         else:
             if any(isinstance(i, list) for i in isbn):
                 from inspire.utils import bibtex_booktitle
                 nested_list = list(bibtex_booktitle.traverse(isbn))
                 return nested_list[0]
             else:
                 return ''.join(result for result in isbn)
     else:
         return ''