Index: /branches/feature-module-zeus/data/class/GC_MobileUserAgent.php
===================================================================
--- /branches/feature-module-zeus/data/class/GC_MobileUserAgent.php	(revision 11686)
+++ /branches/feature-module-zeus/data/class/GC_MobileUserAgent.php	(revision 15448)
@@ -89,7 +89,21 @@
 		$objAgent =& Net_UserAgent_Mobile::singleton();
 		if (Net_UserAgent_Mobile::isError($objAgent)) {
+            gfPrintLog("[isMobile:Error] " . $objAgent->getUserAgent());
+            mb_send_mail(DB_ERROR_MAIL_TO, DB_ERROR_MAIL_SUBJECT, "[isMobile:Error] " . $objAgent->getUserAgent());            
 			return false;
 		} else {
-			return $objAgent->isDoCoMo() || $objAgent->isEZweb() || $objAgent->isVodafone();
+            if($objAgent->isDoCoMo()) {
+                gfPrintLog("[isMobile:Docomo] " . $objAgent->getUserAgent());            
+                return true;
+            } elseif ($objAgent->isEZweb()) {
+                gfPrintLog("[isMobile:EZweb] " . $objAgent->getUserAgent());            
+                return true;
+            } elseif ($objAgent->isVodafone()) {
+                gfPrintLog("[isMobile:Vodafone] " . $objAgent->getUserAgent());            
+                return true;
+            } else {
+                gfPrintLog("[isMobile:UNKNOWN] " . $objAgent->getUserAgent());
+                return false;
+            }
 		}
 	}
@@ -117,5 +131,5 @@
 			return false;
 		}
-
+        
 		if ($objAgent->isDoCoMo()) {
 			$arrUnsupportedSeries = array('501i', '502i', '209i', '210i');
Index: /branches/feature-module-zeus/data/include/mobile.inc
===================================================================
--- /branches/feature-module-zeus/data/include/mobile.inc	(revision 15440)
+++ /branches/feature-module-zeus/data/include/mobile.inc	(revision 15448)
@@ -99,10 +99,4 @@
 	}
 
-	// ¥»¥Ã¥·¥ç¥óID¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤ò¥Á¥§¥Ã¥¯¤¹¤ë¡£
-	if (preg_match('/^[0-9a-zA-Z,-]{32,}$/', $sessionId) < 1) {
-		gfPrintLog("Invalid session id : sid=$sessionId");
-		return false;
-	}
-
 	// ¥»¥Ã¥·¥ç¥óID¤ÎÂ¸ºß¤ò¥Á¥§¥Ã¥¯¤¹¤ë¡£
 	if (sfSessRead($sessionId) === null) {
@@ -110,5 +104,5 @@
 		return false;
 	}
-
+	
 	return session_id($sessionId);
 }
@@ -122,5 +116,5 @@
 	// ÇÛÎó mobile ¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤¹¤ë¡£
 	if (!is_array(@$_SESSION['mobile'])) {
-		gfprintlog("ÇÛÎómobile¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤¡£");
+		gfprintlog("SESSIONÃ¼Ëö¾ðÊó¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£");
 		return false;
 	}
@@ -160,53 +154,42 @@
 	// ¥Ñ¥é¥á¡¼¥¿¡¼¤«¤éÍ­¸ú¤Ê¥»¥Ã¥·¥ç¥óID¤ò¼èÆÀ¤¹¤ë¡£
 	$sessionId = lfMobileGetSessionId();
-
+	
 	session_start();
-    
+	
     // ¿·µ¬¤Ë¥»¥Ã¥È¤µ¤ì¤ë¤¿¤álfMobileGetSessionId()¤«¤é¤ÎÌá¤ê¤Ï""¤È¤Ê¤ë¡£
-    if($sessionId == "") {
-	    gfprintlog("lfMobileInitSession()¡§¥»¥Ã¥·¥ç¥ó¥»¥Ã¥È -> OK");
-    } else {
-	    gfprintlog("lfMobileInitSession()¡§¥»¥Ã¥·¥ç¥ó¥»¥Ã¥È -> NG");
+    if(!$sessionId == "") {
+	    gfprintlog("lfMobileInitSession()¡§¥»¥Ã¥·¥ç¥ó¤¬Àµ¤·¤¯¥»¥Ã¥È¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£");
 	    $session_ok = false;        
     }
     
-    if(lfMobileValidateSession()) {
-        gfprintlog("lfMobileInitSession()¡§Í­¸úÀ­¥Á¥§¥Ã¥¯ -> OK");
-    } else {
-        gfprintlog("lfMobileInitSession()¡§Í­¸úÀ­¥Á¥§¥Ã¥¯ -> NG");
+    if(!lfMobileValidateSession()) {
         $session_ok = false;
     }
-    gfprintlog("lfMobileInitSession()¡§REQUEST_METHOD -> " . $_SERVER['REQUEST_METHOD']);
-    gfprintlog("lfMobileInitSession()¡§session_id() -> " . session_id());
-    gfprintlog("lfMobileInitSession()¡§GET PHPSESSID ---> " . $_GET["PHPSESSID"]);
     
-	// ¥»¥Ã¥·¥ç¥óID¤Þ¤¿¤Ï¥»¥Ã¥·¥ç¥ó¥Ç¡¼¥¿¤¬Ìµ¸ú¤Ê¾ì¹ç¤Ï¡¢¥»¥Ã¥·¥ç¥óID¤òºÆÀ¸À®
-	// ¤·¡¢¥»¥Ã¥·¥ç¥ó¥Ç¡¼¥¿¤ò½é´ü²½¤¹¤ë¡£
+	// ¥»¥Ã¥·¥ç¥óID¤Þ¤¿¤Ï¥»¥Ã¥·¥ç¥ó¥Ç¡¼¥¿¤¬Ìµ¸ú¤Ê¾ì¹ç¤Ï¡¢¥»¥Ã¥·¥ç¥óID¤òºÆÀ¸À®¤·¡¢
+	// ¥»¥Ã¥·¥ç¥ó¥Ç¡¼¥¿¤ò½é´ü²½¤¹¤ë¡£
 	if (!$session_ok) {
 		session_regenerate_id();
-		$_SESSION = array('mobile' => array('model'    => GC_MobileUserAgent::getModel(),
-		                                    'phone_id' => GC_MobileUserAgent::getId(),
-		                                    'expires'  => time() + MOBILE_SESSION_LIFETIME));
+		$_SESSION['mobile']['model'] = GC_MobileUserAgent::getModel();
+		$_SESSION['mobile']['phone_id'] = GC_MobileUserAgent::getModel();
+		$_SESSION['mobile']['expires'] =  time() + MOBILE_SESSION_LIFETIME;
 
 		// ¿·¤·¤¤¥»¥Ã¥·¥ç¥óID¤òÉÕ²Ã¤·¤Æ¥ê¥À¥¤¥ì¥¯¥È¤¹¤ë¡£
-		if ($_SERVER['REQUEST_METHOD'] == 'GET') {
-			gfprintlog("GETÍ×µá¤Î¼èÆÀ:".$_GET['PHPSESSID']);
+		if ($_GET['PHPSESSID'] != "") {
+			gfprintlog("GETÍ×µá¤¢¤ê:".$_GET['PHPSESSID']);
 			gfprintlog("¥ê¥À¥¤¥ì¥¯¥È:".gfAddSessionId());
 			// GET ¤Î¾ì¹ç¤ÏÆ±¤¸¥Ú¡¼¥¸¤Ë¥ê¥À¥¤¥ì¥¯¥È¤¹¤ë¡£
 			header('Location: ' . gfAddSessionId());
 		} else {
-			gfprintlog("GETÍ×µá¤¬¤Ê¤·");
+			gfprintlog("GETÍ×µá¤Ê¤·");
 			// GET °Ê³°¤Î¾ì¹ç¤Ï¥È¥Ã¥×¥Ú¡¼¥¸¤Ø¥ê¥À¥¤¥ì¥¯¥È¤¹¤ë¡£
+			/*
+				Äê¿ôSID¡§PHPSESSID=<¥»¥Ã¥·¥ç¥óID>
+			 */
+			gfprintlog("¥ê¥À¥¤¥ì¥¯¥È:".URL_SITE_TOP . '?' . SID);
 			header('Location: ' . URL_SITE_TOP . '?' . SID);
 		}
 		exit;
 	}
-
-	// ·ÈÂÓÃ¼ËöID¤ò¼èÆÀ¤Ç¤­¤¿¾ì¹ç¤Ï¥»¥Ã¥·¥ç¥ó¥Ç¡¼¥¿¤ËÊÝÂ¸¤¹¤ë¡£
-	$phoneId = GC_MobileUserAgent::getId();
-	if ($phoneId !== false) {
-		$_SESSION['mobile']['phone_id'] = $phoneId;
-	}
-
 	// ¥»¥Ã¥·¥ç¥ó¤ÎÍ­¸ú´ü¸Â¤ò¹¹¿·¤¹¤ë¡£
 	$_SESSION['mobile']['expires'] = time() + MOBILE_SESSION_LIFETIME;
