☆スキーウエアNOW ON SALE!!☆★2ピース上下スーツ★ 【エァウォーク】幼児用ウエアAWT‐5524 ピンク(桃色)サイズ:100・110・120
沖縄産スナックパイン1玉(500g〜800g) N−95D23L/C3
technorati RobotReplay 2004/09/30から 今日: 昨日: 最近のツッコミ10発 |
2008-03-11 EC-CUBE更新内容_ [EC-CUBE] 更新内容EC-CUBEの更新内容が自動でメール送信されるように先日仕込んでみた。その第1通目が、届いた。
Date: 2008-03-11 13:01:25 +0900 (Tue, 11 Mar 2008)
New Revision: 14
Modified:
eccube2/trunk/data/class/pages/admin/design/LC_Page_Admin_Design_Template.php
Log:
auto commit
Modified: eccube2/trunk/data/class/pages/admin/design/LC_Page_Admin_Design_Template.php
===================================================================
--- eccube2/trunk/data/class/pages/admin/design/LC_Page_Admin_Design_Template.php 2008-03-07 00:36:02 UTC (rev 13)
+++ eccube2/trunk/data/class/pages/admin/design/LC_Page_Admin_Design_Template.php 2008-03-11 04:01:25 UTC (rev 14)
@@ -31,7 +31,7 @@
*
* @package Page
* @author LOCKON CO.,LTD.
- * @version $Id: LC_Page_Admin_Design_Template.php 16769 2007-11-08 14:47:40Z adachi $
+ * @version $Id: LC_Page_Admin_Design_Template.php 17117 2008-03-11 04:04:03Z satou $
*/
class LC_Page_Admin_Design_Template extends LC_Page {
@@ -111,12 +111,12 @@
// DBへ使用するテンプレートを登録
$this->lfRegisterTemplate($template_code);
- // テンプレートの上書き
- $this->lfChangeTemplate($template_code);
-
// XXX コンパイルファイルのクリア処理を行う
$objView->_smarty->clear_compiled_tpl();
+ // ブロック位置を更新
+ $this->lfChangeBloc($template_code);
+
// 完了メッセージ
$this->tpl_onload="alert('登録が完了しました。');";
break;
@@ -252,21 +252,46 @@
$masterData->createCache("mtb_constants", $mtb_constants, true,
array("id", "remarks", "rank"));
}
+
/**
- * テンプレートを上書きコピーする.
+ * ブロック位置の更新
*/
- function lfChangeTemplate($template_code){
- $from = TPL_PKG_PATH . $template_code . '/user_edit/';
-
- if (!file_exists($from)) {
- $mess = $from . 'は存在しません';
- } else {
- $to = USER_PATH;
- $mess = sfCopyDir($from, $to, '', true);
+ function lfChangeBloc($template_code) {
+ $objQuery = new SC_Query();
+ $filepath = USER_TEMPLATE_PATH. $template_code. "/sql/update_bloc.sql";
+
+ // ブロック位置更新SQLファイル有
+ if(file_exists($filepath)) {
+ if($fp = fopen($filepath, "r")) {
+ $sql = fread($fp, filesize($filepath));
+ fclose($fp);
+ }
+ // 改行、タブを1スペースに変換
+ $sql = preg_replace("/[\r\n\t]/", " " ,$sql);
+ $sql_split = split(";", $sql);
+ foreach($sql_split as $key => $val){
+ if (trim($val) != "") {
+ $objQuery->query($val);
+ }
+ }
}
- return $mess;
}
+ /**
+ * テンプレートパッケージの削除
+ */
+ function lfDeleteTemplate($template_code) {
+ // DB更新
+ $objQuery = new SC_Query();
+ $objQuery->delete('dtb_templates', 'template_code = ?', array($template_code));
+ // テンプレート削除
+ $templates_dir = SMARTY_TEMPLATES_DIR. $template_code. "/";
+ SC_Utils_Ex::sfDelFile($templates_dir);
+ // ユーザーデータ削除
+ $user_dir = USER_TEMPLATE_PATH. $template_code. "/";
+ SC_Utils_Ex::sfDelFile($user_dir);
+ }
+
function lfGetAllTemplates() {
$objQuery = new SC_Query();
$arrRet = $objQuery->select('*', 'dtb_templates');
@@ -274,12 +299,5 @@
return $arrRet;
}
-
- function lfDeleteTemplate($template_code) {
- $objQuery = new SC_Query();
- $objQuery->delete('dtb_templates', 'template_code = ?', array($template_code));
-
- SC_Utils_Ex::sfDelFile(TPL_PKG_PATH . $template_code);
- }
}
?>
_ [EC-CUBE] 更新内容2
Date: 2008-03-11 15:01:34 +0900 (Tue, 11 Mar 2008)
New Revision: 15
Modified:
eccube2/trunk/data/class/helper/SC_Helper_Mobile.php
eccube2/trunk/data/class/pages/LC_Page.php
eccube2/trunk/data/class/pages/frontparts/LC_Page_FrontParts_LoginCheck.php
eccube2/trunk/data/class/util/SC_Utils.php
eccube2/trunk/data/mtb_constants_init.php
eccube2/trunk/html/admin/require.php
eccube2/trunk/html/install/sql/insert_data.sql
eccube2/trunk/html/mobile/require.php
eccube2/trunk/html/require.php
Log:
auto commit
Modified: eccube2/trunk/data/class/helper/SC_Helper_Mobile.php
===================================================================
--- eccube2/trunk/data/class/helper/SC_Helper_Mobile.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/data/class/helper/SC_Helper_Mobile.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -31,7 +31,7 @@
*
* @package Helper
* @author LOCKON CO.,LTD.
- * @version $Id: SC_Helper_Mobile.php 16582 2007-10-29 03:06:29Z nanasess $
+ * @version $Id: SC_Helper_Mobile.php 17118 2008-03-11 05:58:45Z adachi $
*/
class SC_Helper_Mobile {
@@ -249,7 +249,13 @@
if (basename(dirname($_SERVER['SCRIPT_NAME'])) != 'unsupported') {
$this->lfMobileCheckCompatibility();
- $this->lfMobileInitSession();
+ /**
+ * 共有SSL対応のため、SC_SessionFactory_useRequest::initSession()へ移行
+ * また、他のセッション関連メソッドもSC_SessionFactory_useRequestのインスタンスから呼び出すこと
+ *
+ * @see data/class/session/sessionfactory/SC_SessionFactory_useRequest.php
+ */
+ // $this->lfMobileInitSession();
}
$this->lfMobileInitOutput();
Modified: eccube2/trunk/data/class/pages/LC_Page.php
===================================================================
--- eccube2/trunk/data/class/pages/LC_Page.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/data/class/pages/LC_Page.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -105,7 +105,7 @@
* @param string $url リダイレクト先 URL
* @param boolean $isMobile モバイル用にセッションIDを付与する場合 true
* @return void|boolean $url に SITE_URL 及び, SSL_URL を含まない場合 false,
- * 正常に遷移可能な場合は, $url の URL へ遷移する.
+ * 正常に遷移可能な場合は, $url の ロケーションヘッダを出力する.
* @see Net_URL
*/
function sendRedirect($url, $isMobile = false) {
@@ -117,11 +117,15 @@
if (!empty($_SERVER['QUERY_STRING'])) {
$netURL->addRawQueryString($_SERVER['QUERY_STRING']);
}
- if ($isMobile) {
+
+ $session = SC_SessionFactory::getInstance();
+ if ($isMobile || $session->useCookie() == false) {
$netURL->addQueryString(session_name(), session_id());
}
+
$netURL->addQueryString(TRANSACTION_ID_NAME, $this->getToken());
header("Location: " . $netURL->getURL());
+ return;
}
return false;
}
Modified: eccube2/trunk/data/class/pages/frontparts/LC_Page_FrontParts_LoginCheck.php
===================================================================
--- eccube2/trunk/data/class/pages/frontparts/LC_Page_FrontParts_LoginCheck.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/data/class/pages/frontparts/LC_Page_FrontParts_LoginCheck.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -90,7 +90,7 @@
if(count($arrErr) == 0) {
if($objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'], true)) {
- $this->sendRedirect($this->getLocation($_POST['url']));
+ $this->sendRedirect($this->getLocation($_POST['url'], array(), false));
exit;
} else {
$arrForm['login_email'] = strtolower($arrForm['login_email']);
@@ -106,7 +106,7 @@
}
} else {
// 入力エラーの場合、元のアドレスに戻す。
- $this->sendRedirect($this->getLocation($_POST['url']));
+ $this->sendRedirect($this->getLocation($_POST['url'], array(), false));
exit;
}
break;
@@ -116,9 +116,9 @@
$mypage_url_search = strpos('.'.$_POST['url'], "mypage");
//マイページログイン中はログイン画面へ移行
if ($mypage_url_search == 2){
- $this->sendRedirect($this->getLocation(URL_DIR . "mypage/login.php"));
+ $this->sendRedirect($this->getLocation(URL_DIR . "mypage/login.php", array(), false));
}else{
- $this->sendRedirect($this->getLocation($_POST['url']));
+ $this->sendRedirect($this->getLocation($_POST['url'], array(), false));
}
exit;
break;
Modified: eccube2/trunk/data/class/util/SC_Utils.php
===================================================================
--- eccube2/trunk/data/class/util/SC_Utils.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/data/class/util/SC_Utils.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -955,28 +955,13 @@
return $arrRet;
}
- /* ドメイン間で有効なセッションのスタート */
- function sfDomainSessionStart() {
- $ret = session_id();
- /*
- ヘッダーを送信していてもsession_start()が必要なページがあるので
- コメントアウトしておく
- if($ret == "" && !headers_sent()) {
- */
- if($ret == "") {
- /* セッションパラメータの指定
- ・ブラウザを閉じるまで有効
- ・すべてのパスで有効
- ・同じドメイン間で共有 */
- session_set_cookie_params (0, "/", DOMAIN_NAME);
+ /**
+ * ドメイン間で有効なセッションのスタート
+ * 共有SSL対応のための修正により、この関数は廃止します。
+ * セッションはrequire.phpを読み込んだ際に開始されます。
+ */
+ function sfDomainSessionStart() {}
- if(!ini_get("session.auto_start")){
- // セッション開始
- session_start();
- }
- }
- }
-
/* 文字列に強制的に改行を入れる */
function sfPutBR($str, $size) {
$i = 0;
@@ -1913,10 +1898,10 @@
return $str;
}
-
+
/**
* 配列をテーブルタグで出力する。
- *
+ *
* @return string
*/
function getTableTag($array) {
@@ -1926,11 +1911,11 @@
$html.="<th>$key</th>";
}
$html.= "</tr>";
-
+
$cnt = count($array);
-
+
for($i = 0; $i < $cnt; $i++) {
- $html.= "<tr>";
+ $html.= "<tr>";
foreach($array[$i] as $val) {
$html.="<td>$val</td>";
}
Modified: eccube2/trunk/data/mtb_constants_init.php
===================================================================
--- eccube2/trunk/data/mtb_constants_init.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/data/mtb_constants_init.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -624,6 +624,10 @@
define('MOBILE_URL_SHOP_COMPLETE', MOBILE_URL_DIR . "shopping/complete.php");
/** モジュール追加用画面 */
define('MOBILE_URL_SHOP_MODULE', MOBILE_URL_DIR . "shopping/load_payment_module.php");
+/** セッション維持の方法 */
+define('SESSION_KEEP_METHOD', 'useCookie');
+/** セッションの存続時間 (秒) */
+define('SESSION_LIFETIME', 1800);
/** オーナーズストアURL */
define('OSTORE_URL', "http://store.ec-cube.net/");
/** オーナーズストアURL */
Modified: eccube2/trunk/html/admin/require.php
===================================================================
--- eccube2/trunk/html/admin/require.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/html/admin/require.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -68,10 +68,14 @@
require_once($include_dir . "/.." . HTML2DATA_DIR . "module/Mail.php");
require_once($include_dir . "/.." . HTML2DATA_DIR . "module/Mail/mime.php");
-
-// セッションハンドラ開始
-$objSession = new SC_Helper_Session_Ex();
// インストールチェック
SC_Utils_Ex::sfInitInstall();
+
+// セッションハンドラ開始
+$objSession = new SC_Helper_Session_Ex();
+// セッション初期化・開始
+require_once CLASS_PATH . 'session/SC_SessionFactory.php';
+$sessionFactory = SC_SessionFactory::getInstance();
+$sessionFactory->initSession();
?>
Modified: eccube2/trunk/html/install/sql/insert_data.sql
===================================================================
--- eccube2/trunk/html/install/sql/insert_data.sql 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/html/install/sql/insert_data.sql 2008-03-11 06:01:34 UTC (rev 15)
@@ -1046,6 +1046,8 @@
INSERT INTO mtb_constants VALUES ('MOBILE_DETAIL_P_HTML', 'MOBILE_URL_DIR . "products/detail.php?product_id="', 415,'商品詳細(HTML出力)');
INSERT INTO mtb_constants VALUES ('MOBILE_URL_SHOP_COMPLETE', 'MOBILE_URL_DIR . "shopping/complete.php"', 416,'購入完了画面');
INSERT INTO mtb_constants VALUES ('MOBILE_URL_SHOP_MODULE', 'MOBILE_URL_DIR . "shopping/load_payment_module.php"', 417,'モジュール追加用画面');
+INSERT INTO mtb_constants VALUES ('SESSION_KEEP_METHOD', '"useCookie"', 418,'セッション維持方法:useCookie|useRequest');
+INSERT INTO mtb_constants VALUES ('SESSION_LIFETIME', '"1800"', 419,'セッション維持方法:useCookie|useRequest');
INSERT INTO mtb_constants VALUES ('OSTORE_URL', '"http://store.ec-cube.net/"', 500, 'オーナーズストアURL');
INSERT INTO mtb_constants VALUES ('OSTORE_SSLURL', '"https://store.ec-cube.net/"', 501, 'オーナーズストアURL');
INSERT INTO mtb_constants VALUES ('OSTORE_LOG_PATH', 'DATA_PATH . "logs/ownersstore.log"', 502, 'オーナーズストアログパス');
@@ -1070,4 +1072,4 @@
INSERT INTO mtb_constants VALUES ('OSTORE_E_C_PERMISSION', '"2009"', 521, 'オーナーズストア通信エラーコード');
INSERT INTO mtb_constants VALUES ('OSTORE_E_C_BATCH_ERR', '"2010"', 522, 'オーナーズストア通信エラーコード');
-INSERT INTO dtb_module (module_id,module_code,module_name,update_date,create_date)values(0,0,'patch',now(),now());
\ No newline at end of file
+INSERT INTO dtb_module (module_id,module_code,module_name,update_date,create_date)values(0,0,'patch',now(),now());
Modified: eccube2/trunk/html/mobile/require.php
===================================================================
--- eccube2/trunk/html/mobile/require.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/html/mobile/require.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -79,6 +79,11 @@
// セッションハンドラ開始
$objSession = new SC_Helper_Session_Ex();
+// セッション初期化・開始
+require_once CLASS_PATH . 'session/SC_SessionFactory.php';
+$sessionFactory = SC_SessionFactory::getInstance();
+$sessionFactory->initSession();
+
// モバイルサイト用の初期処理を実行する。
if (!defined('SKIP_MOBILE_INIT')) {
$objMobile = new SC_Helper_Mobile_Ex();
Modified: eccube2/trunk/html/require.php
===================================================================
--- eccube2/trunk/html/require.php 2008-03-11 04:01:25 UTC (rev 14)
+++ eccube2/trunk/html/require.php 2008-03-11 06:01:34 UTC (rev 15)
@@ -91,17 +91,22 @@
} else {
$url = MOBILE_SITE_URL;
}
-
+
if (preg_match('|^' . URL_DIR . '(.*)$|', $_SERVER['REQUEST_URI'], $matches)) {
$path = $matches[1];
} else {
$path = '';
}
-
+
header("Location: ". SC_Utils_Ex::sfRmDupSlash($url . $path));
exit;
}
+// セッション初期化・開始
+require_once CLASS_PATH . 'session/SC_SessionFactory.php';
+$sessionFactory = SC_SessionFactory::getInstance();
+$sessionFactory->initSession();
+
// 絵文字変換 (除去) フィルターを組み込む。
ob_start(array('SC_MobileEmoji', 'handler'));
?>
_ [EC-CUBE] 更新内容3
Date: 2008-03-11 16:01:35 +0900 (Tue, 11 Mar 2008)
New Revision: 16
Modified:
eccube2/trunk/data/class/helper/SC_Helper_Mobile.php
Log:
auto commit
Modified: eccube2/trunk/data/class/helper/SC_Helper_Mobile.php
===================================================================
--- eccube2/trunk/data/class/helper/SC_Helper_Mobile.php 2008-03-11 06:01:34 UTC (rev 15)
+++ eccube2/trunk/data/class/helper/SC_Helper_Mobile.php 2008-03-11 07:01:35 UTC (rev 16)
@@ -31,7 +31,7 @@
*
* @package Helper
* @author LOCKON CO.,LTD.
- * @version $Id: SC_Helper_Mobile.php 17118 2008-03-11 05:58:45Z adachi $
+ * @version $Id: SC_Helper_Mobile.php 17119 2008-03-11 06:19:26Z adachi $
*/
class SC_Helper_Mobile {
@@ -250,10 +250,10 @@
if (basename(dirname($_SERVER['SCRIPT_NAME'])) != 'unsupported') {
$this->lfMobileCheckCompatibility();
/**
- * 共有SSL対応のため、SC_SessionFactory_useRequest::initSession()へ移行
- * また、他のセッション関連メソッドもSC_SessionFactory_useRequestのインスタンスから呼び出すこと
+ * 共有SSL対応のため、SC_SessionFactory_UseRequest::initSession()へ移行
+ * また、他のセッション関連メソッドもSC_SessionFactory_UseRequestのインスタンスから呼び出すこと
*
- * @see data/class/session/sessionfactory/SC_SessionFactory_useRequest.php
+ * @see data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php
*/
// $this->lfMobileInitSession();
}
_ [EC-CUBE] 更新内容4
Date: 2008-03-11 17:08:23 +0900 (Tue, 11 Mar 2008)
New Revision: 17
Added:
eccube2/trunk/data/class/session/
eccube2/trunk/data/class/session/SC_SessionFactory.php
eccube2/trunk/data/class/session/sessionfactory/
eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseCookie.php
eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php
eccube2/trunk/html/user_data/packages/default/sql/
eccube2/trunk/html/user_data/packages/default/sql/update_bloc.sql
Log:
auto commit
Added: eccube2/trunk/data/class/session/SC_SessionFactory.php
===================================================================
--- eccube2/trunk/data/class/session/SC_SessionFactory.php (rev 0)
+++ eccube2/trunk/data/class/session/SC_SessionFactory.php 2008-03-11 08:08:23 UTC (rev 17)
@@ -0,0 +1,89 @@
+setState('mobile')
+ : $session->setState('pc');
+ break;
+
+ // クッキーを使用する
+ case 'useCookie':
+ default:
+ $session = new SC_SessionFactory_UseCookie;
+ break;
+ }
+
+ return $session;
+ }
+
+ /**
+ * セッションの初期化を行う.
+ *
+ */
+ function initSession() {}
+
+ /**
+ * Cookieを使用するかどうかを返す.
+ *
+ * @return boolean
+ */
+ function useCookie() {}
+
+}
+/*
+ * Local variables:
+ * coding: utf-8
+ * End:
+ */
+?>
Added: eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseCookie.php
===================================================================
--- eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseCookie.php (rev 0)
+++ eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseCookie.php 2008-03-11 08:08:23 UTC (rev 17)
@@ -0,0 +1,75 @@
+
Added: eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php
===================================================================
--- eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php (rev 0)
+++ eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php 2008-03-11 08:08:23 UTC (rev 17)
@@ -0,0 +1,513 @@
+state = new LC_UseRequest_State_Mobile;
+ break;
+
+ case 'pc':
+ default:
+ $this->state = new LC_UseRequest_State_PC;
+ break;
+ }
+ }
+
+ /**
+ * Cookieを使用するかどうか
+ *
+ * @return boolean 常にfalseを返す
+ */
+ function useCookie() {
+ return false;
+ }
+
+ /**
+ * dtb_mobile_ext_session_id テーブルを検索してセッションIDを取得する。
+ * PCサイトでもモバイルサイトでもこのテーブルを利用する.
+ *
+ * @return string|null 取得したセッションIDを返す。
+ * 取得できなかった場合は null を返す。
+ */
+ function getExtSessionId() {
+ if (!preg_match('|^' . URL_DIR . '(.*)$|', $_SERVER['SCRIPT_NAME'], $matches)) {
+ return null;
+ }
+
+ $url = $matches[1];
+ $lifetime = $this->state->getLifeTime();
+ $time = date('Y-m-d H:i:s', time() - $lifetime);
+ $objQuery = new SC_Query;
+
+ foreach ($_REQUEST as $key => $value) {
+ $session_id = $objQuery->get('dtb_mobile_ext_session_id', 'session_id',
+ 'param_key = ? AND param_value = ? AND url = ? AND create_date >= ?',
+ array($key, $value, $url, $time));
+ if (isset($session_id)) {
+ return $session_id;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * 外部サイト連携用にセッションIDとパラメーターの組み合わせを保存する。
+ *
+ * @param string $param_key パラメーター名
+ * @param string $param_value パラメーター値
+ * @param string $url URL
+ * @return void
+ */
+ function setExtSessionId($param_key, $param_value, $url) {
+ $objQuery = new SC_Query;
+
+ // GC
+ $lifetime = $this->state->getLifeTime();
+ $time = date('Y-m-d H:i:s', time() - $lifetime);
+ $objQuery->delete('dtb_mobile_ext_session_id', 'create_date < ?', array($time));
+
+ $arrValues = array('session_id' => session_id(),
+ 'param_key' => $param_key,
+ 'param_value' => $param_value,
+ 'url' => $url);
+
+ $objQuery->insert('dtb_mobile_ext_session_id', $arrValues);
+ }
+
+ /**
+ * セッションデータが有効かどうかをチェックする。
+ *
+ * @return boolean セッションデータが有効な場合は true、無効な場合は false を返す。
+ */
+ function validateSession() {
+ return $this->state->validateSessionData();
+ }
+
+ /**
+ * パラメーターから有効なセッションIDを取得する。
+ *
+ * @return string|false 取得した有効なセッションIDを返す。
+ * 取得できなかった場合は false を返す。
+ */
+ function getSessionId() {
+ // パラメーターからセッションIDを取得する。
+ $sessionId = @$_POST[session_name()];
+ if (!isset($sessionId)) {
+ $sessionId = @$_GET[session_name()];
+ }
+ if (!isset($sessionId)) {
+ $sessionId = $this->getExtSessionId();
+ }
+ if (!isset($sessionId)) {
+ return false;
+ }
+
+ // セッションIDの存在をチェックする。
+ $objSession = new SC_Helper_Session_Ex();
+ if ($objSession->sfSessRead($sessionId) === null) {
+ GC_Utils_Ex::gfPrintLog("Non-existent session id : sid=$sessionId");
+ return false;
+ }
+ return session_id($sessionId);
+ }
+
+ /**
+ * セッション初期処理を行う。
+ *
+ * @return void
+ */
+ function initSession() {
+ // セッションIDの受け渡しにクッキーを使用しない。
+ ini_set('session.use_cookies', '0');
+ ini_set('session.use_trans_sid', '1');
+
+ // パラメーターから有効なセッションIDを取得する。
+ $sessionId = $this->getSessionId();
+
+ session_start();
+
+ // セッションIDまたはセッションデータが無効な場合は、セッションIDを再生成
+ // し、セッションデータを初期化する。
+ if ($sessionId === false || !$this->validateSession()) {
+ session_regenerate_id(true);
+ // セッションデータの初期化
+ $this->state->inisializeSessionData();
+
+ // 新しいセッションIDを付加してリダイレクトする。
+ if ($_SERVER['REQUEST_METHOD'] == 'GET') {
+ // GET の場合は同じページにリダイレクトする。
+ $objMobile = new SC_Helper_Mobile_Ex;
+ header('Location: ' . $objMobile->gfAddSessionId());
+ } else {
+ // GET 以外の場合はトップページへリダイレクトする。
+ header('Location: ' . URL_SITE_TOP . '?' . SID);
+ }
+ exit;
+ }
+
+ // 有効期限を更新する.
+ $this->state->updateExpire();
+ }
+}
+/**
+ * セッションデータ管理クラスの基底クラス
+ *
+ */
+class LC_UseRequest_State {
+ /** 名前空間(pc/mobile) */
+ var $namespace = '';
+ /** 有効期間 */
+ var $lifetime = 0;
+ /** エラーチェック関数名の配列 */
+ var $validate = array();
+
+ /**
+ * 名前空間を取得する
+ *
+ * @return string
+ */
+ function getNameSpace() { return $this->namespace; }
+
+ /**
+ * 有効期間を取得する
+ *
+ * @return integer
+ */
+ function getLifeTime() { return $this->lifetime; }
+
+ /**
+ * セッションデータが設定されているかを判定する.
+ * $_SESSION[$namespace]の値が配列の場合に
+ * trueを返す.
+ *
+ * @return boolean
+ */
+ function validateNameSpace() {
+ $namespace = $this->getNameSpace();
+ if (isset($_SESSION[$namespace]) && is_array($_SESSION[$namespace])) {
+ return true;
+ }
+ GC_Utils_Ex::gfPrintLog("NameSpace $namespace not found in session data : sid=" . session_id());
+ return false;
+ }
+
+ /**
+ * セッションのデータを取得する
+ * 取得するデータは$_SESSION[$namespace][$key]となる.
+ *
+ * @param string $key
+ * @return mixed|null
+ */
+ function getValue($key) {
+ $namespace = $this->getNameSpace();
+ return isset($_SESSION[$namespace][$key])
+ ? $_SESSION[$namespace][$key]
+ : null;
+ }
+
+ /**
+ * セッションにデータを登録する.
+ * $_SESSION[$namespace][$key] = $valueの形で登録される.
+ *
+ * @param string $key
+ * @param mixed $value
+ */
+ function setValue($key, $value) {
+ $namespace = $this->getNameSpace();
+ $_SESSION[$namespace][$key] = $value;
+ }
+
+ /**
+ * 有効期限を取得する.
+ *
+ * @return integer
+ */
+ function getExpire() {
+ return $this->getValue('expires');
+ }
+
+ /**
+ * 有効期限を設定する.
+ *
+ */
+ function updateExpire() {
+ $lifetime = $this->getLifeTime();
+ $this->setValue('expires', time() + $lifetime);
+ }
+
+ /**
+ * 有効期限内かどうかを判定する.
+ *
+ * @return boolean
+ */
+ function validateExpire() {
+ $expire = $this->getExpire();
+ if (intval($expire) > time()) {
+ return true;
+ }
+ $date = date('Y/m/d H:i:s', $expire);
+ GC_Utils_Ex::gfPrintLog("Session expired at $date : sid=" . session_id());
+ return false;
+ }
+
+ /**
+ * IPアドレスを取得する.
+ *
+ * @return string
+ */
+ function getIp() {
+ return $this->getValue('ip');
+ }
+
+ /**
+ * IPアドレスを設定する.
+ *
+ */
+ function updateIp() {
+ $this->setValue('ip', $_SERVER['REMOTE_ADDR']);
+ }
+
+ /**
+ * REMOTE_ADDRとセッション中のIPが同じかどうかを判定する.
+ * 同じ場合にtrueが返る
+ *
+ * @return boolean
+ */
+ function validateIp() {
+ $ip = $this->getIp();
+ if (!empty($_SERVER['REMOTE_ADDR'])
+ && $ip === $_SERVER['REMOTE_ADDR']) {
+
+ return true;
+ }
+
+ $msg = sprintf('Ip Addr mismatch : %s != %s(expected) : sid=%s',
+ $_SERVER['REMOTE_ADDR'], $ip, session_id());
+ GC_Utils_Ex::gfPrintLog($msg);
+ return false;
+ }
+
+ /**
+ * UserAgentもしくは携帯の機種名を取得する.
+ *
+ * @return string
+ */
+ function getModel() {
+ return $this->getValue('model');
+ }
+
+ /**
+ * セッション中のデータ検証する
+ *
+ * @return boolean
+ */
+ function validateSessionData() {
+ foreach ($this->validate as $method) {
+ $method = 'validate' . $method;
+ if (!$this->$method()) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ /**
+ * セッションデータを初期化する.
+ *
+ */
+ function inisializeSessionData() {}
+}
+
+/**
+ * PCサイト用のセッションデータ管理クラス
+ *
+ */
+class LC_UseRequest_State_PC extends LC_UseRequest_State {
+
+ /**
+ * コンストラクタ
+ * セッションのデータ構造は下のようになる.
+ * $_SESSION["pc"]=> array(
+ * ["model"] => "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)"
+ * ["ip"] => "127.0.0.1"
+ * ["expires"] => 1204699031
+ * )
+ *
+ * @return LC_UseRequest_State_PC
+ */
+ function LC_UseRequest_State_PC() {
+ $this->namespace = 'pc';
+ $this->lifetime = SESSION_LIFETIME;
+ $this->validate = array('NameSpace', 'Model', 'Ip', 'Expire');
+ }
+
+ /**
+ * セッションにUserAgentを設定する.
+ *
+ */
+ function updateModel() {
+ $this->setValue('model', $_SERVER['HTTP_USER_AGENT']);
+ }
+
+ /**
+ * UserAgentを検証する.
+ *
+ * @return boolean
+ */
+ function validateModel() {
+ $ua = $this->getModel();
+ if (!empty($_SERVER['HTTP_USER_AGENT'])
+ && $_SERVER['HTTP_USER_AGENT'] === $ua) {
+
+ return true;
+ }
+ $msg = sprintf("User agent model mismatch : %s != %s(expected), sid=%s",
+ $_SERVER['HTTP_USER_AGENT'], $ua, session_id());
+ GC_Utils_Ex::gfPrintLog($msg);
+ return false;
+ }
+
+ /**
+ * セッションデータを初期化する.
+ *
+ */
+ function inisializeSessionData() {
+ $_SESSION = array();
+ $this->updateModel();
+ $this->updateIp();
+ $this->updateExpire();
+ }
+}
+
+/**
+ * モバイルサイト用のセッションデータ管理クラス
+ *
+ */
+class LC_UseRequest_State_Mobile extends LC_UseRequest_State {
+
+ /**
+ * コンストラクタ
+ * セッションのデータ構造は下のようになる.
+ * $_SESSION["mobile"]=> array(
+ * ["model"] => 901sh
+ * ["ip"] => 127.0.0.1
+ * ["expires"] => 1204699031
+ * ["phone_id"]=> ****
+ * )
+ *
+ * @return LC_UseRequest_State_Mobile
+ */
+ function LC_UseRequest_State_Mobile() {
+ $this->namespace = 'mobile';
+ $this->lifetime = MOBILE_SESSION_LIFETIME;
+ $this->validate = array('NameSpace', 'Model', 'Ip', 'Expire');
+ }
+
+ /**
+ * 携帯の機種名を設定する
+ *
+ */
+ function updateModel() {
+ $this->setValue('model', SC_MobileUserAgent::getModel());
+ }
+
+ /**
+ * セッション中の携帯機種名と、アクセスしてきたブラウザの機種名が同じかどうかを判定する
+ *
+ * @return boolean
+ */
+ function validateModel() {
+ $modelInSession = $this->getModel();
+ $model = SC_MobileUserAgent::getModel();
+ if (!empty($model)
+ && $model === $modelInSession) {
+
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * 携帯のIDを取得する
+ *
+ * @return string
+ */
+ function getPhoneId() {
+ return $this->getValue('phone_id');
+ }
+
+ /**
+ * 携帯のIDを登録する.
+ *
+ */
+ function updatePhoneId() {
+ $this->setValue('phone_id', SC_MobileUserAgent::getId());
+ }
+
+ /**
+ * セッションデータを初期化する.
+ *
+ */
+ function inisializeSessionData() {
+ $_SESSION = array();
+ $this->updateModel();
+ $this->updateIp();
+ $this->updateExpire();
+ $this->updatePhoneId();
+ }
+}
+/*
+ * Local variables:
+ * coding: utf-8
+ * End:
+ */
+?>
Added: eccube2/trunk/html/user_data/packages/default/sql/update_bloc.sql
===================================================================
--- eccube2/trunk/html/user_data/packages/default/sql/update_bloc.sql (rev 0)
+++ eccube2/trunk/html/user_data/packages/default/sql/update_bloc.sql 2008-03-11 08:08:23 UTC (rev 17)
@@ -0,0 +1,26 @@
+DELETE FROM dtb_blocposition WHERE page_id = 1;
+DELETE FROM dtb_blocposition WHERE page_id = 2;
+DELETE FROM dtb_blocposition WHERE page_id = 3;
+DELETE FROM dtb_blocposition WHERE page_id = 4;
+
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,1,1,2,'category');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,1,2,3,'guide');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,1,3,1,'cart');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,3,4,2,'search_products');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,4,5,1,'news');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,3,6,1,'login');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(1,4,7,2,'best5');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,1,1,2,'category');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,1,2,3,'guide');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,1,3,1,'cart');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,5,4,0,'search_products');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,5,5,0,'news');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,5,6,0,'login');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(2,5,7,0,'best5');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,1,1,2,'category');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,1,2,3,'guide');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,1,3,1,'cart');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,5,4,0,'search_products');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,5,5,0,'news');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,5,6,0,'login');
+INSERT INTO dtb_blocposition (page_id,target_id,bloc_id,bloc_row,filename)values(3,5,7,0,'best5');
_ [EC-CUBE] 更新内容5
Date: 2008-03-11 21:01:32 +0900 (Tue, 11 Mar 2008)
New Revision: 18
Modified:
eccube2/trunk/data/class/pages/mypage/LC_Page_Mypage_Change.php
eccube2/trunk/data/class/session/SC_SessionFactory.php
eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php
eccube2/trunk/data/class/util/SC_Utils.php
eccube2/trunk/data/include/module.inc
eccube2/trunk/html/install/sql/insert_data.sql
Log:
auto commit
Modified: eccube2/trunk/data/class/pages/mypage/LC_Page_Mypage_Change.php
===================================================================
--- eccube2/trunk/data/class/pages/mypage/LC_Page_Mypage_Change.php 2008-03-11 08:08:23 UTC (rev 17)
+++ eccube2/trunk/data/class/pages/mypage/LC_Page_Mypage_Change.php 2008-03-11 12:01:32 UTC (rev 18)
@@ -29,7 +29,7 @@
*
* @package Page
* @author LOCKON CO.,LTD.
- * @version $Id: LC_Page_Mypage_Change.php 16582 2007-10-29 03:06:29Z nanasess $
+ * @version $Id: LC_Page_Mypage_Change.php 17125 2008-03-11 11:59:00Z adachi $
*/
class LC_Page_Mypage_Change extends LC_Page {
@@ -158,6 +158,12 @@
$objDb->sfEditCustomerData($this->arrForm, $arrRegistColumn);
//セッション情報を最新の状態に更新する
$this->objCustomer->updateSession();
+
+ // Do楽SNS連携モジュールユーザ情報更新処理
+ if (function_exists('sfUpdateSourakuSNSUserInfo')) {
+ sfUpdateSourakuSNSUserInfo();
+ }
+
//完了ページへ
$this->sendRedirect($this->getLocation("./change_complete.php"));
exit;
Modified: eccube2/trunk/data/class/session/SC_SessionFactory.php
===================================================================
--- eccube2/trunk/data/class/session/SC_SessionFactory.php 2008-03-11 08:08:23 UTC (rev 17)
+++ eccube2/trunk/data/class/session/SC_SessionFactory.php 2008-03-11 12:01:32 UTC (rev 18)
@@ -28,9 +28,22 @@
/**
* セッションの初期化処理を抽象化するファクトリークラス.
*
+ * このクラスはセッションの維持方法を管理するクラスです.
+ * 他のセッション管理クラスとは若干異なります.
+ *
+ * EC-CUBE2.1.1ベータ版から、
+ * 管理画面>基本情報>パラメータ管理で、セッションの維持方法を
+ * ・Cookieを使用する場合
+ * ・リクエストパラメータを使用する場合
+ * の2種類が選択できますが、どちらの設定であっても下記のように呼び出すことで
+ * 適切にセッションを開始することができます.
+ *
+ * $sessionFactory = SC_SessionFactory::getInstance()
+ * $sessionFactory->initSession();
+ *
* @package SC_Session
* @author LOCKON CO.,LTD.
- * @version $Id: SC_SessionFactory.php 17119 2008-03-11 06:19:26Z adachi $
+ * @version $Id: SC_SessionFactory.php 17124 2008-03-11 11:52:27Z adachi $
*/
class SC_SessionFactory {
Modified: eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php
===================================================================
--- eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php 2008-03-11 08:08:23 UTC (rev 17)
+++ eccube2/trunk/data/class/session/sessionfactory/SC_SessionFactory_UseRequest.php 2008-03-11 12:01:32 UTC (rev 18)
@@ -34,7 +34,7 @@
*
* @package SC_SessionFactory
* @author LOCKON CO.,LTD.
- * @version $Id: SC_SessionFactory_UseRequest.php 17120 2008-03-11 06:32:01Z adachi $
+ * @version $Id: SC_SessionFactory_UseRequest.php 17124 2008-03-11 11:52:27Z adachi $
*/
class SC_SessionFactory_UseRequest extends SC_SessionFactory {
@@ -129,6 +129,20 @@
* @return boolean セッションデータが有効な場合は true、無効な場合は false を返す。
*/
function validateSession() {
+ /**
+ * PCサイトでは
+ * ・セッションデータが適切に設定されているか
+ * ・UserAgent
+ * ・IPアドレス
+ * ・有効期限
+ * モバイルサイトでは
+ * ・セッションデータが適切に設定されているか
+ * ・機種名
+ * ・IPアドレス
+ * ・有効期限
+ * ・phone_id
+ * がチェックされる
+ */
return $this->state->validateSessionData();
}
@@ -168,12 +182,13 @@
function initSession() {
// セッションIDの受け渡しにクッキーを使用しない。
ini_set('session.use_cookies', '0');
- ini_set('session.use_trans_sid', '1');
// パラメーターから有効なセッションIDを取得する。
$sessionId = $this->getSessionId();
- session_start();
+ if (!$sessionId) {
+ session_start();
+ }
// セッションIDまたはセッションデータが無効な場合は、セッションIDを再生成
// し、セッションデータを初期化する。
Modified: eccube2/trunk/data/class/util/SC_Utils.php
===================================================================
--- eccube2/trunk/data/class/util/SC_Utils.php 2008-03-11 08:08:23 UTC (rev 17)
+++ eccube2/trunk/data/class/util/SC_Utils.php 2008-03-11 12:01:32 UTC (rev 18)
@@ -960,8 +960,26 @@
* 共有SSL対応のための修正により、この関数は廃止します。
* セッションはrequire.phpを読み込んだ際に開始されます。
*/
- function sfDomainSessionStart() {}
+ function sfDomainSessionStart() {
+ /**
+ * 2.1.1ベータからはSC_SessionFactory_UseCookie::initSession()で処理するため、
+ * ここでは何も処理しない
+ */
+ if (defined('SESSION_KEEP_METHOD')) {
+ return;
+ }
+ if (session_id() === "") {
+
+ session_set_cookie_params(0, "/", DOMAIN_NAME);
+
+ if (!ini_get("session.auto_start")) {
+ // セッション開始
+ session_start();
+ }
+ }
+ }
+
/* 文字列に強制的に改行を入れる */
function sfPutBR($str, $size) {
$i = 0;
Modified: eccube2/trunk/data/include/module.inc
===================================================================
--- eccube2/trunk/data/include/module.inc 2008-03-11 08:08:23 UTC (rev 17)
+++ eccube2/trunk/data/include/module.inc 2008-03-11 12:01:32 UTC (rev 18)
@@ -1,128 +1,75 @@
-tpl_mainpage = MODULE_PATH . "ebis_tag_text.tpl";
- }
-}
-
-// エビスタグの発行
-function sfPrintEbisTag($pid = "") {
- $objQuery = new SC_Query();
- $arrRet = $objQuery->select("sub_data", "dtb_module", "module_id = ?", array(EBIS_TAG_MID));
- $arrSubData = unserialize($arrRet[0]['sub_data']);
- $arrEbis = array();
-
- if($arrSubData['cid'] != "") {
- $arrEbis['cid'] = $arrSubData['cid'];
- } else {
- return;
- }
-
- // 「/」が重複しているものへの対応
- $php_self = ereg_replace("[/]+", "/", $_SERVER['PHP_SELF']);
- // PHPファイルの後ろに「/」がついてしまっているものへの対応
- $php_self = ereg_replace(".php[/]+$", ".php", $php_self);
-
- if(!is_array($pid) && $pid != "") {
- if(!ereg(".tpl$", $pid)) {
- // ページIDを上書きする
- $arrEbis['pid'] = $pid;
- } else {
- // テンプレートのパスが与えられている場合
- $temp_id = ereg_replace(HTML_PATH,"",$pid);
- $temp_id = ereg_replace("^[/]+","",$temp_id);
- $temp_id = ereg_replace(".tpl$","",$temp_id);
- $temp_id = ereg_replace("[\./]","_",$temp_id);
- $arrEbis['pid'] = $temp_id;
- }
- }
-
- // 商品一覧ページは、特殊IDを発行
- if(ereg("/products/list.php\?category_id=[0-9]+$", $_SERVER["REQUEST_URI"])) {
- $filename = basename($_SERVER["REQUEST_URI"]);
- $arrEbis['pid'] = ereg_replace("list.php\?category_id=", "list-c", $filename);
- }
-
- // 商品詳細ページは、特殊IDを発行
- if(ereg("/products/detail.php\?product_id=[0-9]+$", $_SERVER["REQUEST_URI"])) {
- $filename = basename($_SERVER["REQUEST_URI"]);
- $arrEbis['pid'] = ereg_replace("detail.php\?product_id=", "detail-p", $filename);
- }
-
- // ID割り当てされていないページは、自動的に生成する。
- if($arrEbis['pid'] == "") {
- $temp_id = ereg_replace("^[/]+","",$_SERVER['PHP_SELF']);
- $temp_id = ereg_replace(".php$","",$temp_id);
- $temp_id = ereg_replace("[\./]","_",$temp_id);
- $arrEbis['pid'] = $temp_id;
- }
-
- // ページIDが登録されている場合のみタグを出力する。
- if($arrEbis['pid'] != "") {
- $objSubPage = new LC_EbisPage();
- $objSubPage->arrEbis = $arrEbis;
- $objSubView = new SC_SiteView();
- $objSubView->assignobj($objSubPage);
- $objSubView->display($objSubPage->tpl_mainpage);
- }
-}
-
-// コンバージョンタグの発行
-function sfPrintAffTag($conv_page, $option) {
- if(is_numeric($conv_page)) {
- // sub_dataよりタグ情報を読み込む
- $objQuery = new SC_Query();
- $arrRet = $objQuery->select("sub_data", "dtb_module", "module_id = ?", array(AFF_TAG_MID));
- $arrSubData = unserialize($arrRet[0]['sub_data']);
- $aff_tag = $arrSubData[$conv_page];
-
- $array = split("\|", $option);
-
- // 特定文字の置き換え
- foreach($array as $each) {
- list($key, $value) = split("=", $each);
- $aff_tag = ereg_replace("\[\[" . $key . "\]\]", $value, $aff_tag);
- }
- print($aff_tag);
- }
-}
-
-// dtb_paymentに汎用項目が存在していなければ追加する
-function sfAlterMemo(){
- $objQuery = new SC_Query();
-
- // 汎用項目の存在チェック
- if(!sfColumnExists("dtb_payment", "memo01")){
-
- // モジュールIDを追加
- $objQuery->query("alter table dtb_payment add module_id int4;");
-
- // モジュールパスを追加
- $objQuery->query("alter table dtb_payment add module_path text;");
-
- // 汎用項目を10個追加
- for($i=1; $i<=9; $i++){
- $objQuery->query("alter table dtb_payment add memo0".$i." text;");
- }
- $objQuery->query("alter table dtb_payment add memo10 text;");
- }
-}
-
-/*------------- ▼A8FLYタグ出力 -------------*/
-if (file_exists(MODULE_PATH. "mdl_a8/include.php") === TRUE) {
- require_once(MODULE_PATH. "mdl_a8/include.php");
-}
-
-/*------------- ▼Moba8FLY連携 -------------*/
-if (file_exists(MODULE_PATH. "mdl_moba8/include.php") === TRUE) {
- require_once(MODULE_PATH. "mdl_moba8/include.php");
-}
-
-/*------------- ▼オペビルダー連携 -------------*/
-if (file_exists(MODULE_PATH. "mdl_opebuilder/include.php") === TRUE) {
- require_once(MODULE_PATH. "mdl_opebuilder/include.php");
-}
-
-?>
\ No newline at end of file
+getCol('dtb_module', 'module_code');
+
+if (is_array($_arrModuleCode)) {
+ foreach ($_arrModuleCode as $_moduleCode) {
+ $_file = MODULE_PATH . "$_moduleCode/include.php";
+ if (isset($_arrModule[$_moduleCode]) && file_exists($_file)) {
+ include_once($_file);
+ }
+ }
+}
+
+// グローバル変数は残しておきたくないのでunset
+unset(
+ $_arrModule, $_objQuery, $_arrModuleCode,
+ $_moduleCode, $_file
+);
+
+// 互換性保持のため空の関数を残しておく
+function sfPrintEbisTag() {}
+function sfPrintAffTag() {}
Modified: eccube2/trunk/html/install/sql/insert_data.sql
===================================================================
--- eccube2/trunk/html/install/sql/insert_data.sql 2008-03-11 08:08:23 UTC (rev 17)
+++ eccube2/trunk/html/install/sql/insert_data.sql 2008-03-11 12:01:32 UTC (rev 18)
@@ -1030,7 +1030,7 @@
INSERT INTO mtb_constants VALUES ('CAMPAIGN_TEMPLATE_END','"end/"',318,'キャンペーン関連');
INSERT INTO mtb_constants VALUES ('MOBILE_TEMPLATE_DIR', 'TEMPLATE_DIR . "mobile/"', 400,'SMARTYテンプレート(mobile)');
INSERT INTO mtb_constants VALUES ('MOBILE_COMPILE_DIR', 'COMPILE_DIR . "mobile/"', 401,'SMARTYコンパイル(mobile)');
-INSERT INTO mtb_constants VALUES ('MOBILE_SESSION_LIFETIME', '1800', 402,'セッションの存続時間 (秒)');
+INSERT INTO mtb_constants VALUES ('MOBILE_SESSION_LIFETIME', '1800', 402,'モバイルサイトのセッションの存続時間 (秒)');
INSERT INTO mtb_constants VALUES ('MOBILE_USE_KARA_MAIL', 'false', 403,'空メール機能を使用するかどうか(true:送信する、false:送信しない)');
INSERT INTO mtb_constants VALUES ('MOBILE_KARA_MAIL_ADDRESS_USER', '"eccube"', 404,'空メール受け付けアドレスのユーザー名部分');
INSERT INTO mtb_constants VALUES ('MOBILE_KARA_MAIL_ADDRESS_DELIMITER', '"+"', 405,'空メール受け付けアドレスのユーザー名とコマンドの間の区切り文字 qmail の場合は -');
@@ -1047,7 +1047,7 @@
INSERT INTO mtb_constants VALUES ('MOBILE_URL_SHOP_COMPLETE', 'MOBILE_URL_DIR . "shopping/complete.php"', 416,'購入完了画面');
INSERT INTO mtb_constants VALUES ('MOBILE_URL_SHOP_MODULE', 'MOBILE_URL_DIR . "shopping/load_payment_module.php"', 417,'モジュール追加用画面');
INSERT INTO mtb_constants VALUES ('SESSION_KEEP_METHOD', '"useCookie"', 418,'セッション維持方法:useCookie|useRequest');
-INSERT INTO mtb_constants VALUES ('SESSION_LIFETIME', '"1800"', 419,'セッション維持方法:useCookie|useRequest');
+INSERT INTO mtb_constants VALUES ('SESSION_LIFETIME', '"1800"', 419,'セッションの存続時間 (秒)');
INSERT INTO mtb_constants VALUES ('OSTORE_URL', '"http://store.ec-cube.net/"', 500, 'オーナーズストアURL');
INSERT INTO mtb_constants VALUES ('OSTORE_SSLURL', '"https://store.ec-cube.net/"', 501, 'オーナーズストアURL');
INSERT INTO mtb_constants VALUES ('OSTORE_LOG_PATH', 'DATA_PATH . "logs/ownersstore.log"', 502, 'オーナーズストアログパス');
[ツッコミを入れる]
[]
|