[eluser]freshface[/eluser]
When I want to load the session library, it gives an error. My Hook:
Code:
<?php
class Language
{
var $ci;
function __construct()
{
$this->ci =& get_instance();
$this->set();
}
function set()
{
$this->ci->load->library('session');
$languages = $this->ci->db->get_where('languages',array('active' => '1'))->result(); // haal alle actieve talen op
if(count($languages) == 0) { die('No languages are defined, check your database'); } // zijn er wel talen actief?
foreach($languages as $language) { $alanguages[$language->abbrevation] = $language->language; }
$this->ci->config->set_item('languages',$alanguages); // steek de array in de config file.
if($this->ci->session->userdata('lang_id') == FALSE) // als er geen cookie is, dwz dat de site nog niet is bezocht dus defaults uit db halen
{
$this->set_default_lang();
}
else
{
$this->lang_id = $this->ci->session->userdata('lang_id');
$d = $this->ci->db->get_where('languages',array('active' => '1', 'id' => $this->lang_id))->row();
if(count($d) > 0) // als de taal moet huidige cookie niet meer actief staat
{
$this->lang = $d->language;
$this->lang_abbreviation = $d->abbrevation;
$this->ci->config->set_item('language',$this->lang);
$this->ci->config->set_item('language_abbrevation',$this->lang_abbreviation);
}
else // mocht om een of andere reden de cookie lang niet meer actief staan
{
$this->set_default_lang();
}
}
log_message('debug', 'Language: ' . $this->lang . ' is now active');
// define constants
define('LANG_ID', $this->lang_id);
define('LANG', $this->lang);
define('LANG_ABBREVIATION', $this->lang_abbreviation);
}
function set_default_lang()
{
$d = $this->ci->db->get_where('languages',array('active' => '1', 'default' => '1'))->row();
if(count($d) > 0)
{
$this->lang_id = $d->id;
$this->lang = $d->language;
$this->lang_abbreviation = $d->abbrevation;
$this->ci->config->set_item('language',$this->lang);
$this->ci->config->set_item('language_abbrevation',$this->lang_abbreviation);
// set the cookie
$this->ci->session->set_userdata('lang_id', $this->lang_id );
}
else
{
log_message('error', 'There is no default language.');
}
}
}
Error:
Fatal error: Call to a member function library() on a non-object in /Applications/MAMP/htdocs/webshop/app_backend/hooks/Language.php on line 16