def __init__(self, journal, volume, number, dateiso, suppl, compl, order): self.volume = volume self.number = number self.dateiso = dateiso self.suppl = suppl self.toc = TOC() self.journal = journal self.articles = None self.compl = compl self.status = '' if volume.replace('0', '') == '': self.volume = '' if number.replace('0', '') == '': self.number = '' if self.volume == '' and self.number == '': self.number = 'ahead' if self.journal.acron == 'bjmbr' and int(self.dateiso[0:4]) <= 2012: self.number = 'review' self.json_from_db = {} self.id = self.generate_id( journal, self.volume, self.number, self.suppl, self.compl, self.dateiso[0:4]) if order != '': self.order = order else: self.order = dateiso[0:4] + JournalIssueOrder().generate(self.volume, self.number, self.suppl) label = '' if self.number in ['ahead', 'review']: label = dateiso[0:4] if self.volume != '': label += 'v' + self.volume if self.number != '': label += 'n' + self.number if self.suppl != '': label += 's' + self.suppl if self.compl != '': label += self.compl self.name = label self.json_data = {}
class JournalIssue: def __init__(self, journal, volume, number, dateiso, suppl, compl, order): self.volume = volume self.number = number self.dateiso = dateiso self.suppl = suppl self.toc = TOC() self.journal = journal self.articles = None self.compl = compl self.status = '' if volume.replace('0', '') == '': self.volume = '' if number.replace('0', '') == '': self.number = '' if self.volume == '' and self.number == '': self.number = 'ahead' if self.journal.acron == 'bjmbr' and int(self.dateiso[0:4]) <= 2012: self.number = 'review' self.json_from_db = {} self.id = self.generate_id( journal, self.volume, self.number, self.suppl, self.compl, self.dateiso[0:4]) if order != '': self.order = order else: self.order = dateiso[0:4] + JournalIssueOrder().generate(self.volume, self.number, self.suppl) label = '' if self.number in ['ahead', 'review']: label = dateiso[0:4] if self.volume != '': label += 'v' + self.volume if self.number != '': label += 'n' + self.number if self.suppl != '': label += 's' + self.suppl if self.compl != '': label += self.compl self.name = label self.json_data = {} def generate_id(self, journal, volume, number, suppl, compl, year): return id_generate( journal.title + '-' + volume + '-' + number + '-' + suppl + '-' + compl + '-' + year) @property def box(self): return self.journal @property def documents(self): return self.articles @documents.setter def documents(self, articles): self.articles = articles def display(self): return self.journal.acron + ' ' + self.name @property def json_data(self): if self.articles == None: count = 0 else: count = len(self.articles.elements) self.json_data['122'] = str(count) #str(len(document.folder.documents.elements)) self.json_data['49'] = self.toc.return_json() self.json_data['36'] = self.order self.json_data['65'] = self.dateiso return self.json_data