Jump to content

Problems with theme switching for mobile


Kalypha65

Recommended Posts


Hi ~ I am having problems with the below code switching our 11 different full-HTML themes to our one mobile theme. The code in black was what we had initially, and I added the code that I have bolded red. I'm guessing I probably just have stuff in the wrong order, because I am quite new to PHP, but not really sure. Any insight and assistance would be greatly appreciated.

function settheme()
{
$theme = 'default';

$theme_param = getUrlParm('theme');
if ($theme_param) {
$theme_param = strtolower($theme_param);
}

$theme_session = $this->CI->session->getSessionData('theme');
if ($theme_param) {
$theme = $theme_param;
} else {
if ($theme_session) {
$theme = $theme_session;
}
if (($theme = "euf/assets/themes/$theme") && array_key_exists($theme, $CI->themes->setTheme())) {
setcookie('theme', $setTheme, 0, '/');
$CI->themes->setTheme($theme);

} elseif (((strpos($_SERVER['HTTP_USER_AGENT'], 'iphone', 'Android', 'webOS', 'ipad', 'Blackberry') != false)) && ($theme = "euf/assets/themes/mobile") && array_key_exists($theme, $CI->themes->setTheme())) {

$theme = "/euf/assets/themes/mobile";
$CI->themes->setTheme($theme);

} elseif (($setTheme = $_COOKIE['theme']) && ($theme = "euf/assets/themes/$theme") && array_key_exists($theme, $CI->themes->setTheme())) {

$theme = "/euf/assets/themes/$theme";
$CI->themes->setTheme($theme);

}

if ($theme !== $theme_session) {
$this->CI->session->setSessionData(array('theme' => $theme));
}

$CI =& get_instance();
if ($theme) {
$theme = "/euf/assets/themes/$theme";
$CI->themes->setTheme($theme);
}
}
}

 

I apologize. The post above did not keep my formatting (bold and red). The part I added was lines 18-32:

 

  1. }
  2. if (($theme = "euf/assets/themes/$theme") && array_key_exists($theme, $CI->themes->setTheme())) {
  3. setcookie('theme', $setTheme, 0, '/');
  4. $CI->themes->setTheme($theme);
  5.  
  6. } elseif (((strpos($_SERVER['HTTP_USER_AGENT], 'iphone', 'Android', 'webOS', 'ipad', 'Blackberry') != false)) && ($theme = "euf/assets/themes/mobile") && array_key_exists($theme, $CI->themes->setTheme())) {
  7.  
  8. $theme = "/euf/assets/themes/mobile";
  9. $CI->themes->setTheme($theme);
  10.  
  11. } elseif (($setTheme = $_COOKIE['theme]) && ($theme = "euf/assets/themes/$theme") && array_key_exists($theme, $CI->themes->setTheme())) {
  12.  
  13. $theme = "/euf/assets/themes/$theme";
  14. $CI->themes->setTheme($theme);

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.