diff --git a/lib/Controller/JsController.php b/lib/Controller/JsController.php
index ecc193f..1bfba35 100644
--- a/lib/Controller/JsController.php
+++ b/lib/Controller/JsController.php
@@ -54,7 +54,7 @@ class JsController extends Controller
{
$user = OC::$server[IUserSession::class]->getUser();
$topMenuApps = (array) json_decode($this->config->getAppValue('side_menu', 'top-menu-apps', '[]'), true);
- $targetBlank = (bool) $this->config->getAppValue('side_menu', 'target-blank', '0');
+ $targetBlankApps = (array) json_decode($this->config->getAppValue('side_menu', 'target-blank-apps', '[]'), true);
if ($user) {
$userTopMenuApps = (array) json_decode($this->config->getUserValue($user->getUid(), 'side_menu', 'top-menu-apps', '[]'), true);
@@ -63,10 +63,11 @@ class JsController extends Controller
$topMenuApps = $userTopMenuApps;
}
- $userTargetBlank = (int) $this->config->getUserValue($user->getUid(), 'side_menu', 'target-blank', '-1');
+ $userTargetBlankMode = (int) $this->config->getUserValue($user->getUid(), 'side_menu', 'target-blank-mode', '1');
+ $userTargetBlankApps = (array) json_decode($this->config->getUserValue($user->getUid(), 'side_menu', 'target-blank-apps', '[]'), true);
- if ($userTargetBlank !== -1) {
- $targetBlank = (bool) $userTargetBlank;
+ if ($userTargetBlankMode === 2) {
+ $targetBlankApps = $userTargetBlankApps;
}
}
@@ -81,7 +82,7 @@ class JsController extends Controller
'always-displayed' => (bool) $this->config->getAppValue('side_menu', 'always-displayed', '0'),
'big-menu' => (bool) $this->config->getAppValue('side_menu', 'big-menu', '0'),
'top-menu-apps' => $topMenuApps,
- 'target-blank' => $targetBlank,
+ 'target-blank-apps' => $targetBlankApps,
];
$response = new TemplateResponse('side_menu', 'js/script', $parameters, 'blank');
diff --git a/src/SideMenu.vue b/src/SideMenu.vue
index 0ac61bf..5917e78 100644
--- a/src/SideMenu.vue
+++ b/src/SideMenu.vue
@@ -26,7 +26,7 @@ along with this program. If not, see