示例#1
0
    def migrate_settings(self):
        print cformat('%{white!}migrating settings')
        rb_settings.delete_all()
        opts = self.zodb_root['plugins']['RoomBooking']._PluginBase__options

        # Admins & authorized users/groups
        rb_settings.set('authorized_principals', convert_principal_list(opts['AuthorisedUsersGroups']))
        rb_settings.set('admin_principals', convert_principal_list(opts['Managers']))
        # Assistance emails
        emails = [email for email in opts['assistanceNotificationEmails']._PluginOption__value
                  if is_valid_mail(email, False)]
        rb_settings.set('assistance_emails', emails)
        # Simple settings
        rb_settings.set('notification_hour', opts['notificationHour']._PluginOption__value)
        rb_settings.set('notification_before_days', opts['notificationBefore']._PluginOption__value)
        db.session.commit()
示例#2
0
    def migrate_settings(self):
        print cformat("%{white!}migrating settings")
        rb_settings.delete_all()
        opts = self.zodb_root["plugins"]["RoomBooking"]._PluginBase__options

        # Admins & authorized users/groups
        rb_settings.set("authorized_principals", convert_principal_list(opts["AuthorisedUsersGroups"]))
        rb_settings.set("admin_principals", convert_principal_list(opts["Managers"]))
        # Assistance emails
        emails = [
            email for email in opts["assistanceNotificationEmails"]._PluginOption__value if is_valid_mail(email, False)
        ]
        rb_settings.set("assistance_emails", emails)
        # Simple settings
        rb_settings.set("notification_hour", opts["notificationHour"]._PluginOption__value)
        rb_settings.set("notification_before_days", opts["notificationBefore"]._PluginOption__value)
        db.session.commit()
def migrate_settings(main_root):
    print cformat('%{white!}migrating settings')
    rb_settings.delete_all()
    opts = main_root['plugins']['RoomBooking']._PluginBase__options

    # Admins & authorized users/groups
    for old_key, new_key in (('AuthorisedUsersGroups', 'authorized_principals'),
                             ('Managers', 'admin_principals')):
        principals = set()
        for principal in opts[old_key].getValue():
            if principal.__class__.__name__ == 'Avatar':
                principals.add(('Avatar', principal.id))
            else:
                principals.add(('Group', principal.id))
        rb_settings.set(new_key, list(principals))
    # Assistance emails
    emails = [email for email in opts['assistanceNotificationEmails'].getValue() if is_valid_mail(email, False)]
    rb_settings.set('assistance_emails', emails)
    # Simple settings
    rb_settings.set('notification_hour', opts['notificationHour'].getValue())
    rb_settings.set('notification_before_days', opts['notificationBefore'].getValue())
    db.session.commit()
示例#4
0
    def migrate_settings(self):
        print cformat('%{white!}migrating settings')
        rb_settings.delete_all()
        opts = self.zodb_root['plugins']['RoomBooking']._PluginBase__options

        # Admins & authorized users/groups
        rb_settings.set('authorized_principals',
                        convert_principal_list(opts['AuthorisedUsersGroups']))
        rb_settings.set('admin_principals',
                        convert_principal_list(opts['Managers']))
        # Assistance emails
        emails = [
            email for email in
            opts['assistanceNotificationEmails']._PluginOption__value
            if is_valid_mail(email, False)
        ]
        rb_settings.set('assistance_emails', emails)
        # Simple settings
        rb_settings.set('notification_hour',
                        opts['notificationHour']._PluginOption__value)
        rb_settings.set('notification_before_days',
                        opts['notificationBefore']._PluginOption__value)
        db.session.commit()