예제 #1
0
 def _process_args(self):
     if 'confId' in request.view_args:
         self.obj = Event.get_one(request.view_args['confId'], is_deleted=False)
         self.obj_type = 'event'
     elif 'category_id' in request.view_args:
         self.obj = Category.get_one(request.view_args['category_id'], is_deleted=False)
         self.obj_type = 'category' if not self.obj.is_root else None
     else:
         self.obj = Category.get_root()
         self.obj_type = None
예제 #2
0
 def _checkParams(self):
     if 'confId' in request.view_args:
         self.obj = Event.get_one(request.view_args['confId'])
         self._conf = self.obj.as_legacy
         self.obj_type = 'event'
     elif 'category_id' in request.view_args:
         self.obj = Category.get_one(request.view_args['category_id'])
         self.obj_type = 'category' if not self.obj.is_root else None
     else:
         self.obj = Category.get_root()
         self.obj_type = None
예제 #3
0
def get_linked_object(type_, id_):
    if type_ == LinkType.event:
        return Event.get_one(id_, is_deleted=False)
    elif type_ == LinkType.contribution:
        return (Contribution.query.filter(
            Contribution.id == id_, ~Contribution.is_deleted,
            Contribution.event.has(is_deleted=False)).one())
    elif type_ == LinkType.session_block:
        return (SessionBlock.query.filter(
            SessionBlock.id == id_,
            SessionBlock.session.has(
                db.and_(~Session.is_deleted,
                        Session.event.has(is_deleted=False)))).one())
예제 #4
0
def obj_deref(ref):
    """Returns the object identified by `ref`"""
    from indico_livesync.models.queue import EntryType
    if ref['type'] == EntryType.category:
        return Category.get_one(ref['category_id'])
    elif ref['type'] == EntryType.event:
        return Event.get_one(ref['event_id'])
    elif ref['type'] == EntryType.session:
        return Session.get_one(ref['session_id'])
    elif ref['type'] == EntryType.contribution:
        return Contribution.get_one(ref['contrib_id'])
    elif ref['type'] == EntryType.subcontribution:
        return SubContribution.get_one(ref['subcontrib_id'])
    else:
        raise ValueError('Unexpected object type: {}'.format(ref['type']))
예제 #5
0
def obj_deref(ref):
    """Returns the object identified by `ref`"""
    from indico_livesync.models.queue import EntryType
    if ref['type'] == EntryType.category:
        return Category.get_one(ref['category_id'])
    elif ref['type'] == EntryType.event:
        return Event.get_one(ref['event_id'])
    elif ref['type'] == EntryType.session:
        return Session.get_one(ref['session_id'])
    elif ref['type'] == EntryType.contribution:
        return Contribution.get_one(ref['contrib_id'])
    elif ref['type'] == EntryType.subcontribution:
        return SubContribution.get_one(ref['subcontrib_id'])
    else:
        raise ValueError('Unexpected object type: {}'.format(ref['type']))
예제 #6
0
 def event(self):
     return Event.get_one(self.event_id, is_deleted=False)
예제 #7
0
 def _build_report(self):
     event = Event.get_one(self.params['event_id'], is_deleted=False)
     new_material = get_nested_attached_items(event)
     self.material = {'tree': [self._format_data(new_material)]}
예제 #8
0
 def event(self):
     return Event.get_one(self.event_id, is_deleted=False)
예제 #9
0
 def _build_report(self):
     event = Event.get_one(self.params['event_id'], is_deleted=False)
     new_material = get_nested_attached_items(event)
     self.material = {'tree': [self._format_data(new_material)]}