Ajout gestion des groups dans le module sync nextcloud

This commit is contained in:
Ambulance Clerc
2023-05-31 13:27:31 +02:00
parent 8617574632
commit 6e3a67a1d8
2 changed files with 17 additions and 2 deletions

View File

@@ -8,11 +8,21 @@ new_membership = Signal(Signal("user"))
ending_membership = Signal(Signal("user"))
updating_membership = Signal(["user"])
'''
from django.contrib.auth import get_user_model
# TODO remove this temps part
User = get_user_model()
users = User.objects.all()
for usr in users:
print(f"sync {usr}")
new_membership.send(sender=sender, user=usr)
updating_membership.send(sender=sender, user=usr)
'''
from django.db.models.signals import post_save, post_delete
from django.contrib.auth.models import User
from django.contrib.auth import get_user_model
def my_callback(sender,created,instance, **kwargs):
if created:

View File

@@ -118,6 +118,11 @@ def update_nexcloud_user(sender, **kwargs):
_err.pop(0)
nc.set_user_attribute(_user.username, 'email', _user.email)
nc.set_user_attribute(_user.username, 'displayname', _user.first_name + " " + _user.last_name + get_pseudonyme_from_user(_user.username))
_groups = _user.groups.values_list('name', flat=True)
groups = list(_groups)
for grp in groups:
log(f"add a group [{grp}] for {_user}")
nc.add_user_to_group(_user.username, grp)
nc.logout()
except NextCloudCLI.HTTPResponseError as e: