Allow manual override of accept/reject when there are no valid tokens (check to make sure this doesn't cause issues elsewhere...)

This commit is contained in:
2022-02-28 11:15:02 +00:00
parent 0aeebffdc7
commit 1c4a71410d

View File

@@ -444,7 +444,7 @@ class OrganisationMembersController extends SimpleController
->first();
// Process the acceptance emails etc
if (!$this->processAcceptToken($tokenOwner)) {
if (!$this->processAcceptToken($tokenOwner, true)) {
return $response->withJson([], 400);
}
@@ -586,7 +586,7 @@ class OrganisationMembersController extends SimpleController
->first();
// Process the acceptance emails etc
if (!$this->processRejectToken($tokenOwner)) {
if (!$this->processRejectToken($tokenOwner, true)) {
return $response->withJson([], 400);
}
@@ -1049,7 +1049,7 @@ class OrganisationMembersController extends SimpleController
}
protected function processAcceptToken($tokenOwner)
protected function processAcceptToken($tokenOwner, $manual = false)
{
/** @var \UserFrosting\Sprinkle\Account\Database\Models\Interfaces\UserInterface $currentUser */
$currentUser = $this->ci->currentUser;
@@ -1060,7 +1060,7 @@ class OrganisationMembersController extends SimpleController
// Try and complete the token, bail if not found
$verification = $this->ci->repoOrganisationMembershipApproval->completeForOwner($tokenOwner, ['approved' => true, 'approver_id' => $currentUser->id]);
if (!$verification) {
if (!$verification && !$manual) {
$ms->addMessageTranslated('danger', 'ORGANISATION.JOIN_REQUEST.TOKEN_NOT_FOUND');
return false;
}
@@ -1083,7 +1083,7 @@ class OrganisationMembersController extends SimpleController
return true;
}
protected function processRejectToken($tokenOwner)
protected function processRejectToken($tokenOwner, $manual = false)
{
/** @var \UserFrosting\Sprinkle\Account\Database\Models\Interfaces\UserInterface $currentUser */
$currentUser = $this->ci->currentUser;
@@ -1094,7 +1094,7 @@ class OrganisationMembersController extends SimpleController
// Try and complete the token, bail if not found
$verification = $this->ci->repoOrganisationMembershipApproval->completeForOwner($tokenOwner, ['approved' => false, 'approver_id' => $currentUser->id]);
if (!$verification) {
if (!$verification && !$manual) {
$ms->addMessageTranslated('danger', 'ORGANISATION.JOIN_REQUEST.TOKEN_NOT_FOUND');
return false;
}