from patch.include import *

@app_context(commit=True)
def admintocontactadmins():
    """
    Для тестирования патча: ( cd /opt/eva-app; python3 -m patch.202506180958_admintocontactadmins )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    print('Запуск патча admintocontactadmins')

    with cmfutil.disable_acl(), cmfutil.disable_notify():
        admin_group = models.CmfPersonGroup.admin_group()
        contact_admin_group = models.CmfPersonGroup.contact_admins_group()

        for admin in admin_group.rg_members.load():
            admin.rg_member_of.append(contact_admin_group)
            admin.save(emit=False, notify=False)

if __name__ == "__main__":
    admintocontactadmins()
