diff options
Diffstat (limited to 'lib/Controller/NavigationController.php')
-rw-r--r-- | lib/Controller/NavigationController.php | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/lib/Controller/NavigationController.php b/lib/Controller/NavigationController.php index e19e9ff2..c0de31ec 100644 --- a/lib/Controller/NavigationController.php +++ b/lib/Controller/NavigationController.php @@ -122,14 +122,24 @@ class NavigationController extends Controller { 'serverData' => [ 'public' => false, 'firstrun' => false, - 'setup' => false + 'setup' => false, ] ]; try { - $this->configService->getCloudAddress(); - $data['serverData']['setup'] = true; + $data['serverData']['cloudAddress'] = $this->configService->getCloudAddress(); } catch (SocialAppConfigException $e) { + $data['serverData']['setup'] = true; + $data['serverData']['isAdmin'] = \OC::$server->getGroupManager()->isAdmin($this->userId); + if ($data['serverData']['isAdmin']) { + $cloudAddress = $this->request->getParam('cloudAddress'); + if ($cloudAddress !== null) { + $this->configService->setCloudAddress($cloudAddress); + } else { + $data['serverData']['cliUrl'] = $this->config->getSystemValue('overwrite.cli.url', \OC::$server->getURLGenerator()->getBaseUrl()); + return new TemplateResponse(Application::APP_NAME, 'setup', $data); + } + } } try { @@ -143,6 +153,8 @@ class NavigationController extends Controller { } + + /** * Display the navigation page of the Social app. * |