Exemple #1
0
 def _create_category(id_=None, **kwargs):
     kwargs.setdefault(
         'title', u'cat#{}'.format(id_) if id_ is not None else u'dummy')
     kwargs.setdefault('timezone', 'UTC')
     if 'parent' not in kwargs:
         kwargs['parent'] = Category.get_root()
     return Category(id=id_, acl_entries=set(), **kwargs)
Exemple #2
0
def create_all_tables(db, verbose=False, add_initial_data=True):
    """Create all tables and required initial objects."""
    from indico.core.oauth.models.applications import OAuthApplication, SystemAppType
    from indico.modules.categories import Category
    from indico.modules.designer import TemplateType
    from indico.modules.designer.models.templates import DesignerTemplate
    from indico.modules.users import User
    if verbose:
        print(cformat('%{green}Creating tables'))
    db.create_all()
    if add_initial_data:
        if verbose:
            print(cformat('%{green}Creating system user'))
        db.session.add(User(id=0, is_system=True, first_name='Indico', last_name='System'))
        if verbose:
            print(cformat('%{green}Creating root category'))
        cat = Category(id=0, title='Home', protection_mode=ProtectionMode.public)
        db.session.add(cat)
        db.session.flush()
        if verbose:
            print(cformat('%{green}Creating default ticket template for root category '))
        dtt = DesignerTemplate(category_id=0, title='Default ticket', type=TemplateType.badge,
                               data=DEFAULT_TICKET_DATA, is_system_template=True)
        dbt = DesignerTemplate(category_id=0, title='Default badge', type=TemplateType.badge,
                               data=DEFAULT_BADGE_DATA, is_system_template=True)
        cat.default_ticket_template = dtt
        cat.default_badge_template = dbt
        db.session.add(dtt)
        db.session.add(dbt)
        if verbose:
            print(cformat('%{green}Creating system oauth apps'))
        for sat in SystemAppType:
            if sat != SystemAppType.none:
                db.session.add(OAuthApplication(system_app_type=sat, **sat.default_data))
        db.session.commit()
Exemple #3
0
 def lostandfound_category(self):
     if self.importer.global_ns.lostandfound_category:
         return self.importer.global_ns.lostandfound_category
     root = Category.get_root()
     category = Category(
         parent=root,
         default_event_themes=root.default_event_themes,
         timezone=root.timezone,
         title='Lost & Found',
         protection_mode=ProtectionMode.protected,
         description='Events that had no category in the old database')
     db.session.add(category)
     self.importer.global_ns.lostandfound_category = category
     return self.importer.global_ns.lostandfound_category
Exemple #4
0
def create_all_tables(db, verbose=False, add_initial_data=True):
    """Create all tables and required initial objects"""
    from indico.modules.categories import Category
    from indico.modules.users import User
    if verbose:
        print cformat('%{green}Creating tables')
    db.create_all()
    if add_initial_data:
        if verbose:
            print cformat('%{green}Creating system user')
        db.session.add(
            User(id=0, is_system=True, first_name='Indico',
                 last_name='System'))
        if verbose:
            print cformat('%{green}Creating root category')
        db.session.add(
            Category(id=0, title='Home',
                     protection_mode=ProtectionMode.public))
        db.session.commit()
Exemple #5
0
 def _cat(id_, protection_mode=ProtectionMode.inheriting, children=None):
     return Category(id=id_,
                     title=f'cat-{id_}',
                     protection_mode=protection_mode,
                     children=children or [])