from patch.include import *
from tqdm import tqdm


@app_context(commit=True)
def patch():
    with cmfutil.disable_acl(), cmfutil.disable_notify():
        for rule in tqdm(models.CmfAccessRule.list(fields=['object_fields'])):
            if isinstance(rule.object_fields.value, str):
                print(f' Fix {rule} object_fields = {rule.object_fields}')
                rule.object_fields = [rule.object_fields.value]
                rule.save(only_data=True)


if __name__ == "__main__":
    patch()
