From 248932fca8867b6d6eb168e29e3d5f96a3933b18 Mon Sep 17 00:00:00 2001 From: ngleader Date: Thu, 10 Mar 2011 02:18:22 +0000 Subject: [PATCH] =?UTF-8?q?r8149=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://xe-core.googlecode.com/svn/sandbox@8169 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- classes/mobile/Mobile.class.php | 38 +++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/classes/mobile/Mobile.class.php b/classes/mobile/Mobile.class.php index e1c254f13..02a7fe4ca 100644 --- a/classes/mobile/Mobile.class.php +++ b/classes/mobile/Mobile.class.php @@ -15,7 +15,7 @@ class Mobile { } function _isFromMobilePhone() { - if(isset($this->ismobile)) return $this->ismobile; + if($this->ismobile !== null) return $this->ismobile; $db_info = Context::getDBInfo(); if($db_info->use_mobile_view != "Y" || Context::get('full_browse') || $_COOKIE["FullBrowse"]) { @@ -23,27 +23,33 @@ class Mobile { } else { + $xe_web_path = Context::pathToUrl(_XE_PATH_); + $m = Context::get('m'); - if($m == "1") { - $_COOKIE["mobile"] = true; - setcookie("mobile", true); - $this->ismobile = true; + if(strlen($m)==1) { + if($m == "1") { + $_COOKIE["mobile"] = 'true'; + setcookie("mobile", 'true', 0, $xe_web_path); + $this->ismobile = true; + } + else if($m == "0") { + $_COOKIE["mobile"] = 'false'; + setcookie("mobile", 'false', 0, $xe_web_path); + $this->ismobile = false; + } } - else if($m === "0") { - $_COOKIE["mobile"] = false; - setcookie("mobile", false); - $this->ismobile = false; + else if(isset($_COOKIE["mobile"])) { + if($_COOKIE['mobile'] == 'true') { + $this->ismobile = true; + } + else if($_COOKIE["mobile"] == 'false') { + $this->ismobile = false; + } } - else if($_COOKIE["mobile"] == true) { - $this->ismobile = true; - } - else if($_COOKIE["mobile"] == false) { - $this->ismobile = false; - } else { if(preg_match('/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH\-M[0-9]+)/',$_SERVER['HTTP_USER_AGENT'])) { - setcookie("mobile", true); + setcookie("mobile", 'true', 0, $xe_web_path); $this->ismobile = true; } }