If cookie is set in browser get cookies and append to URL
if cookie language=english
redirect to https://example.com/en
or
if cookie language=deutch
redirect to
or
if possible for all Accept-Language
for each value of cookie
cookie language=/en/Accept-Language
redirect to their language page
View
<h5>Translate this page:</h5>
<div class="lang-holder">
<a href="#" class="topbar-menu-toggle" data-toggle="button">
<img src="<?php echo base_url();?>assets/img/lang/<?php if ($this->input->cookie('language') != '')
{
echo $this->input->cookie('language');
}
else
{
$language = $this->settings_lib->item('site.default_language');
echo $language;
} ?>.png">
</a>
</div>
<div id="topbar-dropmenu" class="animated animated-short slideInDown">
<div class="topbar-menu row">
<?php if ($handle = opendir('application/language/'))
{
while (false !== ($entry = readdir($handle)))
{
if ($entry != "." && $entry != "..")
{ ;?>
<div class="col-xs-2 col-sm-1">
<a href="<?php echo base_url() ?>home/language/<?php echo $entry; ?>">
<img class="h30" src="<?php echo base_url();?>assets/img/lang/<?php echo $entry; ?>.png">
<span class="fs14 hidden-xs"><?php echo ucfirst($entry); ?></span>
</a>
</div>
<?php
}
}
closedir($handle);
} ?>
</div>
Controller
public function language($lang = false)
{
$folder = 'application/language/';
$languagefiles = scandir($folder);
if (in_array($lang, $languagefiles)) {
$cookie = array(
'name' => 'language',
'value' => $lang,
'expire' => '31536000',
);
$this->input->set_cookie($cookie);
}
redirect($this->input->server('HTTP_REFERER'));
}