summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Pritz <bluewind@xinu.at>2013-09-22 17:09:57 +0200
committerFlorian Pritz <bluewind@xinu.at>2013-09-22 17:18:56 +0200
commit41c5abd4e8849e6a84ed2af405e9c25a74e018f3 (patch)
tree9c8a62934a5b725330d9def35653e04adca20a08
parent9538bea0908c8a3758b41967d977455af731c344 (diff)
Move user_logged_in check to controller constructor
TL;DR: Allows us to show a proper error page if encryption_key is missing from the config. muser->logged_in() can load the session class which will die if encryption_key is not set in the config causing an error to be displayed. Because the header is also loaded when we display an error loading the class will be tried again. CI maintains an array with information which classes have been tried to be loaded and will simply return true without loading again. muser->logged_in() will then try to access $this->session which doesn't exist. Since all of this happens when we are already in the header the error message appears in the navigation being hard to read. Signed-off-by: Florian Pritz <bluewind@xinu.at>
-rw-r--r--application/controllers/file.php1
-rw-r--r--application/controllers/user.php2
-rw-r--r--application/core/MY_Controller.php3
-rw-r--r--application/helpers/filebin_helper.php7
-rw-r--r--application/views/file/upload_form.php2
-rw-r--r--application/views/header.php4
6 files changed, 6 insertions, 13 deletions
diff --git a/application/controllers/file.php b/application/controllers/file.php
index 98ccae884..b02cdd8ce 100644
--- a/application/controllers/file.php
+++ b/application/controllers/file.php
@@ -20,7 +20,6 @@ class File extends MY_Controller {
parent::__construct();
$this->load->model('mfile');
- $this->load->model('muser');
if (is_cli_client()) {
$this->var->view_dir = "file_plaintext";
diff --git a/application/controllers/user.php b/application/controllers/user.php
index 823166ea5..356cc430b 100644
--- a/application/controllers/user.php
+++ b/application/controllers/user.php
@@ -18,8 +18,6 @@ class User extends MY_Controller {
{
parent::__construct();
- $this->load->model("muser");
-
$this->var->view_dir = "user/";
}
diff --git a/application/core/MY_Controller.php b/application/core/MY_Controller.php
index 47083035c..043b52ef7 100644
--- a/application/core/MY_Controller.php
+++ b/application/core/MY_Controller.php
@@ -99,5 +99,8 @@ class MY_Controller extends CI_Controller {
}
$this->data['title'] = "FileBin";
+
+ $this->load->model("muser");
+ $this->data["user_logged_in"] = $this->muser->logged_in();
}
}
diff --git a/application/helpers/filebin_helper.php b/application/helpers/filebin_helper.php
index bed696c8c..6e4c84e43 100644
--- a/application/helpers/filebin_helper.php
+++ b/application/helpers/filebin_helper.php
@@ -323,13 +323,6 @@ function auth_driver_function_implemented($function)
return $result[$function];
}
-function user_logged_in()
-{
- $CI =& get_instance();
- $CI->load->model("muser");
- return $CI->muser->logged_in();
-}
-
function send_json_reply($array, $status = "success")
{
$reply = array();
diff --git a/application/views/file/upload_form.php b/application/views/file/upload_form.php
index a977aaa92..b472bcc10 100644
--- a/application/views/file/upload_form.php
+++ b/application/views/file/upload_form.php
@@ -1,4 +1,4 @@
-<?php if (user_logged_in()) { ?>
+<?php if (isset($user_logged_in) && $user_logged_in) { ?>
<div class="well">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 text-upload-form">
diff --git a/application/views/header.php b/application/views/header.php
index 396841a0e..7d4ba1f54 100644
--- a/application/views/header.php
+++ b/application/views/header.php
@@ -54,7 +54,7 @@ if (is_cli_client() && !isset($force_full_html)) {
<div class="collapse navbar-collapse navbar-ex1-collapse">
<?php if(!isset($GLOBALS["is_error_page"])) { ?>
<ul class="nav navbar-nav navbar-right">
- <?php if(user_logged_in()) { ?>
+ <?php if (isset($user_logged_in) && $user_logged_in) { ?>
<li><a class="navbar-link" href="<?php echo site_url("/user/logout"); ?>">Logout</a></li>
<?php } else { ?>
<li class="dropdown">
@@ -74,7 +74,7 @@ if (is_cli_client() && !isset($force_full_html)) {
</ul>
<?php }; ?>
<ul class="nav navbar-nav">
- <?php if(user_logged_in()) { ?>
+ <?php if (isset($user_logged_in) && $user_logged_in) { ?>
<li><a href="<?php echo site_url("file/index") ?>"><span class="glyphicon glyphicon-pencil"></span> New</a></li>
<li><a href="<?php echo site_url("file/upload_history") ?>"><span class="glyphicon glyphicon-book"></span> History</a></li>
<li class="dropdown">