Exemplo n.º 1
0
    def execute(self):
        from onegov.swissvotes.collections import TranslatablePageCollection

        pages = TranslatablePageCollection(self.session)
        subject = pages.by_id(self.subject_id)
        target = pages.by_id(self.target_id)
        if subject and target and subject != target:
            pages.move(subject=subject,
                       target=target,
                       direction=getattr(MoveDirection, self.direction))
Exemplo n.º 2
0
def add_order_column_to_pagess(context):
    if context.has_column('swissvotes_page', 'order'):
        context.operations.drop_column('swissvotes_page', 'order')
    if not context.has_column('swissvotes_page', 'order'):
        context.operations.add_column('swissvotes_page',
                                      Column('order', Integer, default=2**16))

        default = ('home', 'disclaimer', 'imprint', 'data-protection',
                   'dataset', 'about', 'contact')
        pages = TranslatablePageCollection(context.app.session())
        for id in default:
            pages.setdefault(id)
        for order, id in enumerate(default):
            pages.by_id(id).order = order
        for page in pages.query().filter(TranslatablePage.id.notin_(default)):
            order += 1
            page.order = order