Ignore:
Timestamp:
2011/01/19 16:25:15 (13 years ago)
Author:
nanasess
bzr:base-revision:
svn-v4:1e3b908f-19a9-db11-a64c-001125224ba8:branches/version-2_5-dev:19974
bzr:committer:
Kentaro Ohkouchi <ohkouchi@loop-az.jp>
bzr:file-ids:

data/Smarty/templates/admin/order/edit.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Forder%2Fedit.tpl
data/class/helper/SC_Helper_Purchase.php sc_helper_purchase.p-20101020100530-jyaoa7ch9pdfjqzp-1
data/class/pages/LC_Page.php 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2FLC_Page.php
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php 15594@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Forder%2FLC_Page_Admin_Order_Edit.php
data/class/pages/entry/LC_Page_Entry.php 15141@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fentry%2FLC_Page_Entry.php
bzr:mapping-version:
v4
bzr:merge:

ohkouchi@loop-az.jp-20110119072232-6257e60vprtdgsk1
bzr:repository-uuid:
1e3b908f-19a9-db11-a64c-001125224ba8
bzr:revision-id:
ohkouchi@loop-az.jp-20110119072512-1yzw3wuviyorpvj3
bzr:revno:
2704
bzr:revprop:branch-nick:
branches/version-2_5-dev
bzr:root:
branches/version-2_5-dev
bzr:text-revisions:

data/class/helper/SC_Helper_Purchase.php ohkouchi@loop-az.jp-20110119072232-6257e60vprtdgsk1
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php ohkouchi@loop-az.jp-20110119072232-6257e60vprtdgsk1
data/class/pages/entry/LC_Page_Entry.php ohkouchi@loop-az.jp-20110119072232-6257e60vprtdgsk1
bzr:timestamp:
2011-01-19 16:25:12.394000053 +0900
bzr:user-agent:
bzr2.2.1+bzr-svn1.0.4
svn:original-date:
2011-01-19T07:25:12.394000Z
Message:

#793(非推奨機能の削除)

  • LC_Page に存在していた非推奨関数の削除

#859(モバイル・PCどちらからの注文か受注データで識別できるようにする)

  • dtb_order_temp へ自動的に保存されるように対応

#880(mobile/sphoneディレクトリを削除)

  • 会員登録完了メールで From が表示されなくなっていたのを修正
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/class/pages/LC_Page.php

    r19972 r19975  
    181181    function setTemplate($template) { 
    182182        $this->template = $template; 
    183     } 
    184  
    185     /** 
    186      * 指定の URL へリダイレクトする. 
    187      * 
    188      * リダイレクト先 URL に HTTP_URL 及び HTTPS_URL を含むかチェックし, 
    189      * LC_Page::getToken() の値を URLパラメータで自動的に付与する. 
    190      * 
    191      * @param string $url リダイレクト先 URL 
    192      * @param boolean $isMobile モバイル用にセッションIDを付与する場合 true 
    193      * @return void|boolean $url に HTTP_URL 及び, HTTPS_URL を含まない場合 false, 
    194      *                       正常に遷移可能な場合は, $url の ロケーションヘッダを出力する. 
    195      * @see Net_URL 
    196      */ 
    197     function sendRedirect($url, $isMobile = false) { 
    198 echo 'SC_Response_Ex::sendRedirect()に移行してね。'; 
    199 exit; 
    200  
    201         if (preg_match("/(" . preg_quote(HTTP_URL, '/') 
    202                           . "|" . preg_quote(HTTPS_URL, '/') . ")/", $url)) { 
    203  
    204             $netURL = new Net_URL($url); 
    205             if (!empty($_SERVER['QUERY_STRING'])) { 
    206                 $netURL->addRawQueryString($_SERVER['QUERY_STRING']); 
    207             } 
    208  
    209             $session = SC_SessionFactory::getInstance(); 
    210             if ($isMobile || $session->useCookie() == false) { 
    211                 $netURL->addQueryString(session_name(), session_id()); 
    212             } 
    213  
    214             $netURL->addQueryString(TRANSACTION_ID_NAME, $this->getToken()); 
    215             header("Location: " . $netURL->getURL()); 
    216             //return true; 
    217             exit(); 
    218         } 
    219         return false; 
    220     } 
    221  
    222     // }}} 
    223     // {{{ protected functions 
    224  
    225     /** 
    226      * トランザクショントークンを生成し, 取得する. 
    227      * 
    228      * 悪意のある不正な画面遷移を防止するため, 予測困難な文字列を生成して返す. 
    229      * 同時に, この文字列をセッションに保存する. 
    230      * 
    231      * この関数を使用するためには, 生成した文字列を次画面へ渡すパラメータとして 
    232      * 出力する必要がある. 
    233      * 
    234      * 例) 
    235      * <input type="hidden" name="transactionid" value="この関数の返り値" /> 
    236      * 
    237      * 遷移先のページで, LC_Page::isValidToken() の返り値をチェックすることにより, 
    238      * 画面遷移の妥当性が確認できる. 
    239      * 
    240      * @access protected 
    241      * @return string トランザクショントークンの文字列 
    242      */ 
    243     function getToken() { 
    244 echo "SC_Helper_Session.php::getToken()に移行してね。"; 
    245 exit; 
    246         if (empty($_SESSION[TRANSACTION_ID_NAME])) { 
    247             $_SESSION[TRANSACTION_ID_NAME] = $this->createToken(); 
    248         } 
    249         return $_SESSION[TRANSACTION_ID_NAME]; 
    250     } 
    251  
    252     /** 
    253      * トランザクショントークンの妥当性をチェックする. 
    254      * 
    255      * 前画面で生成されたトランザクショントークンの妥当性をチェックする. 
    256      * この関数を使用するためには, 前画面のページクラスで LC_Page::getToken() 
    257      * を呼んでおく必要がある. 
    258      * 
    259      * @access protected 
    260      * @return boolean トランザクショントークンが有効な場合 true 
    261      */ 
    262     function isValidToken() { 
    263 echo "SC_Helper_Session.php::isValidToken()に移行してね。"; 
    264 exit; 
    265  
    266         $checkToken = ""; 
    267  
    268         // $_POST の値を優先する 
    269         if (isset($_POST[TRANSACTION_ID_NAME])) { 
    270  
    271             $checkToken = $_POST[TRANSACTION_ID_NAME]; 
    272         } elseif (isset($_GET[TRANSACTION_ID_NAME])) { 
    273  
    274             $checkToken = $_GET[TRANSACTION_ID_NAME]; 
    275         } 
    276  
    277         $ret = false; 
    278         // token の妥当性チェック 
    279         if ($checkToken === $_SESSION[TRANSACTION_ID_NAME]) { 
    280  
    281             $ret = true; 
    282         } 
    283  
    284         unset($_SESSION[TRANSACTION_ID_NAME]); 
    285         return $ret; 
    286183    } 
    287184 
     
    343240        $path = str_replace('\\', '/', $path); 
    344241        $htmlPath = str_replace('\\', '/', HTML_REALDIR); 
    345          
     242 
    346243        // PHP 5.1 対策 ( http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=4277&forum=9 ) 
    347244        if (strlen($path) == 0) { 
    348245            $path = '.'; 
    349246        } 
    350          
     247 
    351248        // $path が / で始まっている場合 
    352249        if (substr($path, 0, 1) == '/') { 
     
    357254        } 
    358255        $realPath = str_replace('\\', '/', $realPath); 
    359          
     256 
    360257        // $path が / で終わっている場合、realpath によって削られた末尾の / を復元する。 
    361258        if (substr($path, -1, 1) == '/' && substr($realPath, -1, 1) != '/') { 
    362259            $realPath .= '/'; 
    363260        } 
    364          
     261 
    365262        // HTML_REALDIR を削除した文字列を取得. 
    366263        $rootPath = str_replace($htmlPath, '', $realPath); 
     
    396293                header('Last-Modified:'); 
    397294                break; 
    398                  
     295 
    399296            case 'private': 
    400297                $cache_expire = session_cache_expire() * 60; 
     
    404301                header('Last-Modified:'); 
    405302                break; 
    406                  
     303 
    407304            default: 
    408305                break; 
     
    422319        SC_Utils_Ex::sfPrintR($val); 
    423320    } 
    424  
    425     // }}} 
    426     // {{{ private functions 
    427  
    428     /** 
    429      * トランザクショントークン用の予測困難な文字列を生成して返す. 
    430      * 
    431      * @access private 
    432      * @return string トランザクショントークン用の文字列 
    433      */ 
    434     function createToken() { 
    435 echo "SC_Helper_Session::createToken()に移行してね。"; 
    436 exit; 
    437         return sha1(uniqid(rand(), true)); 
    438     } 
    439321} 
    440322?> 
Note: See TracChangeset for help on using the changeset viewer.