feat(Nextcloud sync & optimize)
All checks were successful
Deploy Roxane to Preprod / deploy (push) Successful in 1m18s
All checks were successful
Deploy Roxane to Preprod / deploy (push) Successful in 1m18s
This commit is contained in:
@@ -9,6 +9,11 @@ use App\Models\Package;
|
||||
|
||||
class MemberService
|
||||
{
|
||||
/**
|
||||
* Register a new member.
|
||||
* @param array $data
|
||||
* @return Member
|
||||
*/
|
||||
public function registerNewMember(array $data): Member
|
||||
{
|
||||
// Check if the member already exists
|
||||
@@ -52,4 +57,15 @@ class MemberService
|
||||
|
||||
return $member;
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable a member and his subscriptions
|
||||
*/
|
||||
public function deactivateMember(Member $member): void
|
||||
{
|
||||
// todo: send email to member + admin
|
||||
$member->update(['status' => 'excluded']);
|
||||
$member->memberships()->update(['status' => 'expired']);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ class NextcloudService
|
||||
}
|
||||
|
||||
/**
|
||||
* Désactive un utilisateur Nextcloud à partir de son email
|
||||
* Disable user by email
|
||||
* @throws ConnectionException
|
||||
*/
|
||||
public function disableUserByEmail(string $email): void
|
||||
@@ -46,7 +46,16 @@ class NextcloudService
|
||||
}
|
||||
|
||||
/**
|
||||
* Trouve le userId Nextcloud à partir de l’email
|
||||
* Desable user by id
|
||||
* @throws ConnectionException
|
||||
*/
|
||||
public function disableUserById(string $userId): void
|
||||
{
|
||||
$response = $this->http->put("/cloud/users/{$userId}/disable");
|
||||
}
|
||||
|
||||
/**
|
||||
* Find user id by email
|
||||
*/
|
||||
protected function findUserIdByEmail(string $email): ?string
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user