@Override
public void handle(Request request, Response response) throws Exception {
- boolean isAdmin = UserSession.get().hasGlobalPermission(GlobalPermissions.SYSTEM_ADMIN);
+ UserSession userSession = UserSession.get();
+ boolean isAdmin = userSession.hasGlobalPermission(GlobalPermissions.SYSTEM_ADMIN);
JsonWriter json = response.newJsonWriter().beginObject();
json.prop("showUpdateCenter", isAdmin && settings.getBoolean(UpdateCenterClient.ACTIVATION_PROPERTY));
+ json.prop("showProvisioning", userSession.hasGlobalPermission(GlobalPermissions.PROVISIONING));
json.name("plugins").beginArray();
if (isAdmin) {
wsTester.newGetRequest("api/navigation", "settings").execute().assertJson(getClass(), "empty.json");
}
+ @Test
+ public void with_provisioning() throws Exception {
+ MockUserSession.set().setGlobalPermissions(GlobalPermissions.PROVISIONING);
+ wsTester = new WsTester(new NavigationWs(new SettingsNavigationAction(settings, new Views(), i18n)));
+
+ wsTester.newGetRequest("api/navigation", "settings").execute().assertJson(getClass(), "with_provisioning.json");
+ }
+
@Test
public void with_views() throws Exception {
MockUserSession.set().setGlobalPermissions(GlobalPermissions.SYSTEM_ADMIN);
--- /dev/null
+{
+ "showUpdateCenter": false,
+ "showProvisioning": true,
+ "plugins": []
+}
{
"showUpdateCenter": true,
+ "showProvisioning": false,
"plugins": []
}
{
"showUpdateCenter": false,
+ "showProvisioning": false,
"plugins": [
{
"name": "First Page",