]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
baculum: Fix directing to wizard if application config doesn't exist
authorMarcin Haba <marcin.haba@bacula.pl>
Thu, 12 Apr 2018 07:01:30 +0000 (09:01 +0200)
committerMarcin Haba <marcin.haba@bacula.pl>
Sat, 14 Apr 2018 13:07:20 +0000 (15:07 +0200)
gui/baculum/protected/Web/Class/BaculumWebPage.php

index 239eb95c92e88019c1809b360df6de99aad2f9f0..868aac6dc0fff5b2046a92a07a19eaebd23863c4 100644 (file)
@@ -34,11 +34,22 @@ class BaculumWebPage extends BaculumPage {
         */
        const DEFAULT_AUTH_USER = 'admin';
 
-       private $config;
+       private $config = array();
 
        public function onPreInit($param) {
                parent::onPreInit($param);
                $this->config = $this->getModule('web_config')->getConfig();
+               if (count($this->config) === 0) {
+                       if (isset($_SERVER['PHP_AUTH_USER'])) {
+                               if ($this->Service->getRequestedPagePath() != 'WebConfigWizard') {
+                                       $this->goToPage('WebConfigWizard');
+                               }
+                               // without config there is no way to call api below
+                               return;
+                       } else {
+                               self::accessDenied();
+                       }
+               }
                Logging::$debug_enabled = (isset($this->config['baculum']['debug']) && $this->config['baculum']['debug'] == 1);
                $this->Application->getGlobalization()->Culture = $this->getLanguage();
                if (!$this->IsPostBack && !$this->IsCallBack) {