def getBestEvent(self, filename='events.json'): """Returns the event most relevant to this user's interests.""" if filename not in [f for f in os.listdir('.') if os.path.isfile(f)]: raise IOError('Error: events file ' + filename + ' not found.') data = json.load(open(filename)) best_event = Event() best_score = 0 for event in data['events']: iter_event = Event() # The declarations are split to keep the Item __init__ method for automatically calling the API to populate the model. iter_event.description = event['description'] iter_event.name = event['name'] iter_event.model = ConceptModel(model=event['model']['concepts'], maturity=1) iter_event.starttime = event['starttime'] iter_event.endtime = event['endtime'] iter_event.location = event['location'] iter_event.picture = event['picture'] iter_event.name = event['name'] iter_event.url = event['url'] score = best_event.compareTo(iter_event) if score >= best_score: # print(self.exceptions) if iter_event.name not in self.exceptions: best_event = iter_event best_score = score return best_event
def script(name, description, location, url, starttime, endtime, picture): """Runtime Click script.""" event = Event(description=description, name=name) event.location = location event.url = url event.starttime = starttime if starttime != ' ': event.starttime = strptime(starttime, "%Y-%m-%d %H:%M") else: event.starttime = '' if endtime != ' ': event.endtime = strptime(endtime, "%Y-%m-%d %H:%M") else: event.endtime = '' event.saveEvent() click.echo('Event added to the database!')