diff --git a/external/ajax/setsites.php b/external/ajax/setsites.php index 7b7ee6267d..c2b0012f32 100644 --- a/external/ajax/setsites.php +++ b/external/ajax/setsites.php @@ -14,7 +14,7 @@ $sites = array(); for ($i = 0; $i < sizeof($_POST['site_name']); $i++) { if (!empty($_POST['site_name'][$i]) && !empty($_POST['site_url'][$i])) { - array_push($sites, array(strip_tags($_POST['site_name'][$i]), strip_tags($_POST['site_url'][$i]), strip_tags($_POST['site_icon'][$i]))); + array_push($sites, array(strip_tags($_POST['site_name'][$i]), strip_tags($_POST['site_url'][$i]), strip_tags($_POST['site_icon'][$i]), strip_tags($_POST['site_target'][$i]))); } } diff --git a/external/appinfo/app.php b/external/appinfo/app.php index b27fa4ef6b..225ea75498 100644 --- a/external/appinfo/app.php +++ b/external/appinfo/app.php @@ -31,12 +31,14 @@ $navigationManager = \OC::$server->getNavigationManager(); for ($i = 0; $i < sizeof($sites); $i++) { $navigationEntry = function () use ($i, $urlGenerator, $sites) { + $href = ($sites[$i][3] == 'iframe') ? $urlGenerator->linkToRoute('external_index', ['id'=> $i + 1]) : $sites[$i][1]; return [ 'id' => 'external_index' . ($i + 1), 'order' => 80 + $i, - 'href' => $urlGenerator->linkToRoute('external_index', ['id'=> $i + 1]), + 'href' => $href, 'icon' => $urlGenerator->imagePath('external', !empty($sites[$i][2]) ? $sites[$i][2] : 'external.svg'), 'name' => $sites[$i][0], + 'target' => $sites[$i][3], ]; }; $navigationManager->add($navigationEntry); diff --git a/external/settings.php b/external/settings.php index 3b08233395..4dd07a701b 100644 --- a/external/settings.php +++ b/external/settings.php @@ -8,5 +8,6 @@ $tmpl = new OCP\Template( 'external', 'settings'); $tmpl->assign('images', glob(\OC_App::getAppPath('external') . '/img/*.*')); +$tmpl->assign('targets', array('iframe', 'self')); return $tmpl->fetchPage(); diff --git a/external/templates/settings.php b/external/templates/settings.php index 7115c11376..dd86f59ecc 100644 --- a/external/templates/settings.php +++ b/external/templates/settings.php @@ -31,8 +31,15 @@ } else { print_unescaped(''); } - print_unescaped(' - + print_unescaped(' '); } if(sizeof($sites) === 0) {