From e756e7e8a99d604ef85a9630c856bc0ffae2a3f0 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 10 Jan 2012 05:16:15 -0500
Subject: [PATCH] Fixed: FS#1967 - AWStats statistics not accessible when the website uses suphp.
---
interface/lib/app.inc.php | 32 ++++++++++++++++++++++++--------
1 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php
index 6465c41..060472b 100644
--- a/interface/lib/app.inc.php
+++ b/interface/lib/app.inc.php
@@ -28,12 +28,20 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+//* Enable gzip compression for the interface
+ob_start('ob_gzhandler');
+
+//* Set timezone
+if(isset($conf['timezone']) && $conf['timezone'] != '') date_default_timezone_set($conf['timezone']);
+
+//* Set error reporting level when we are not on a developer system
+if(DEVSYSTEM == 0) {
+ @ini_set('error_reporting', E_ALL & ~E_NOTICE & ~E_DEPRECATED);
+}
+
/*
Application Class
*/
-
-ob_start('ob_gzhandler');
-
class app {
private $_language_inc = 0;
@@ -74,6 +82,11 @@
}
$this->uses('auth,plugin,functions');
+ }
+
+ public function __destruct() {
+ session_write_close();
+ if(isset($this->db)) $this->db->closeConn();
}
public function uses($classes) {
@@ -157,13 +170,15 @@
/** Translates strings in current language */
public function lng($text) {
+ global $conf;
if($this->_language_inc != 1) {
+ $language = (isset($_SESSION['s']['language']))?$_SESSION['s']['language']:$conf['language'];
//* loading global Wordbook
- $this->load_language_file('/lib/lang/'.$_SESSION['s']['language'].'.lng');
+ $this->load_language_file('lib/lang/'.$language.'.lng');
//* Load module wordbook, if it exists
- if(isset($_SESSION['s']['module']['name']) && isset($_SESSION['s']['language'])) {
- $lng_file = '/web/'.$_SESSION['s']['module']['name'].'/lib/lang/'.$_SESSION['s']['language'].'.lng';
- if(!file_exists(ISPC_ROOT_PATH.$lng_file)) $lng_file = '/web/'.$_SESSION['s']['module']['name'].'/lib/lang/en.lng';
+ if(isset($_SESSION['s']['module']['name'])) {
+ $lng_file = 'web/'.$_SESSION['s']['module']['name'].'/lib/lang/'.$language.'.lng';
+ if(!file_exists(ISPC_ROOT_PATH.'/'.$lng_file)) $lng_file = '/web/'.$_SESSION['s']['module']['name'].'/lib/lang/en.lng';
$this->load_language_file($lng_file);
}
$this->_language_inc = 1;
@@ -183,7 +198,7 @@
$filename = ISPC_ROOT_PATH.'/'.$filename;
if(substr($filename,-4) != '.lng') $this->error('Language file has wrong extension.');
if(file_exists($filename)) {
- @include_once($filename);
+ @include($filename);
if(is_array($wb)) {
if(is_array($this->_wb)) {
$this->_wb = array_merge($this->_wb,$wb);
@@ -227,6 +242,7 @@
/* Show username */
if(isset($_SESSION['s']['user'])) {
$this->tpl->setVar('cpuser', $_SESSION['s']['user']['username']);
+ $this->tpl->setVar('logout_txt', $this->lng('logout_txt'));
}
}
--
Gitblit v1.9.1