]> git.sur5r.net Git - bacula/bacula/blob - gui/baculum/protected/Web/Class/BaculumWebPage.php
baculum: Fix multiple directors support
[bacula/bacula] / gui / baculum / protected / Web / Class / BaculumWebPage.php
1 <?php
2 /*
3  * Bacula(R) - The Network Backup Solution
4  * Baculum   - Bacula web interface
5  *
6  * Copyright (C) 2013-2016 Kern Sibbald
7  *
8  * The main author of Baculum is Marcin Haba.
9  * The original author of Bacula is Kern Sibbald, with contributions
10  * from many others, a complete list can be found in the file AUTHORS.
11  *
12  * You may use this file and others of this release according to the
13  * license defined in the LICENSE file, which includes the Affero General
14  * Public License, v3.0 ("AGPLv3") and some additional permissions and
15  * terms pursuant to its AGPLv3 Section 7.
16  *
17  * This notice must be preserved when any source code is
18  * conveyed and/or propagated.
19  *
20  * Bacula(R) is a registered trademark of Kern Sibbald.
21  */
22
23 Prado::using('Application.Common.Class.BaculumPage');
24 Prado::using('Application.Web.Class.WebConfig');
25
26 class BaculumWebPage extends BaculumPage {
27
28         private $config;
29
30         public function onPreInit($param) {
31                 parent::onPreInit($param);
32                 $this->config = $this->getModule('web_config')->getConfig('baculum');
33                 Logging::$debug_enabled = (array_key_exists('debug', $this->config) && $this->config['debug'] == 1);
34                 $this->Application->getGlobalization()->Culture = $this->getLanguage();
35         }
36
37         /**
38          * Get curently set language short name (for example: en, pl).
39          * If language short name is not set in session then the language value
40          * is taken from Baculum config file, saved in session and returned.
41          * If the language setting is set in session, then the value from
42          * session is returned.
43          *
44          * @access public
45          * @return string currently set language short name
46          */
47         public function getLanguage() {
48                 $language = null;
49                 if (isset($_SESSION['language']) && !empty($_SESSION['language'])) {
50                         $language =  $_SESSION['language'];
51                 } else {
52                         if (array_key_exists('lang', $this->config)) {
53                                 $language = $this->config['lang'];
54                         }
55                         if (is_null($language)) {
56                                 $language = WebConfig::DEFAULT_LANGUAGE;
57                         }
58                         $_SESSION['language'] = $language;
59                 }
60                 return $language;
61         }
62
63 }
64 ?>