Skip to content
This repository was archived by the owner on Nov 25, 2020. It is now read-only.

Commit a28162f

Browse files
committed
Send instant message with empty repository when saving user / group role. We should have a similar strategy to publish a message to a role scope as well.
1 parent 4a2830f commit a28162f

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

core/src/core/src/pydio/Core/Services/RolesService.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@
2222

2323
use Pydio\Conf\Core\AJXP_Role;
2424
use Pydio\Conf\Core\AjxpRole;
25+
use Pydio\Core\Controller\Controller;
2526
use Pydio\Core\Exception\PydioException;
27+
use Pydio\Core\Http\Message\ReloadRepoListMessage;
28+
use Pydio\Core\Model\Context;
2629
use Pydio\Core\Model\UserInterface;
2730
use Pydio\Core\PluginFramework\PluginsService;
2831

@@ -144,6 +147,11 @@ public static function updateRole($roleObject, $userObject = null)
144147
ConfService::getConfStorageImpl()->updateRole($roleObject, $userObject);
145148
CacheService::saveWithTimestamp(AJXP_CACHE_SERVICE_NS_SHARED, "pydio:role:".$roleObject->getId(), $roleObject);
146149
ConfService::getInstance()->invalidateLoadedRepositories();
150+
$roleId = $roleObject->getId();
151+
if(strpos($roleId, "AJXP_GRP_/") === 0){
152+
$groupPath = substr($roleId, strlen("AJXP_GRP_"));
153+
Controller::applyHook("msg.instant", array(Context::contextWithObjects(null, null), ReloadRepoListMessage::XML(), null, $groupPath));
154+
}
147155
}
148156

149157
/**

core/src/core/src/pydio/Core/Services/UsersService.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
use Pydio\Core\Exception\UserNotFoundException;
2626
use Pydio\Core\Exception\WorkspaceForbiddenException;
2727
use Pydio\Core\Exception\WorkspaceNotFoundException;
28+
use Pydio\Core\Http\Message\ReloadRepoListMessage;
2829
use Pydio\Core\Model\Context;
2930
use Pydio\Core\Model\ContextInterface;
3031
use Pydio\Core\Model\FilteredRepositoriesList;
@@ -123,6 +124,7 @@ public static function updateUser($userObject, $scope = "user"){
123124
CacheService::save(AJXP_CACHE_SERVICE_NS_SHARED, "pydio:user:" . $userId, $userObject);
124125
}else{
125126
CacheService::saveWithTimestamp(AJXP_CACHE_SERVICE_NS_SHARED, "pydio:user:" . $userId, $userObject);
127+
Controller::applyHook("msg.instant", array(Context::contextWithObjects($userObject, null), ReloadRepoListMessage::XML(), $userObject->getId()));
126128
}
127129
}
128130

0 commit comments

Comments
 (0)