Changeset 23277


Ignore:
Timestamp:
2013/11/18 13:07:02 (4 years ago)
Author:
m_uehara
Message:

#2463 退会画面の入力チェックの見直し

Location:
branches/version-2_13_1/data
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_13_1/data/Smarty/templates/default/mypage/refusal_confirm.tpl

    r23134 r23277  
    2828    <form name="form1" id="form1" method="post" action="?"> 
    2929        <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
     30        <input type="hidden" name="refusal_transactionid" value="<!--{$refusal_transactionid}-->" /> 
    3031        <input type="hidden" name="mode" value="complete" /> 
    3132 
  • branches/version-2_13_1/data/Smarty/templates/mobile/mypage/refusal.tpl

    r22206 r23277  
    2929        <form action="?" method="post"> 
    3030            <input type="hidden" name="mode" value="complete"> 
     31            <input type="hidden" name="refusal_transactionid" value="<!--{$refusal_transactionid}-->" /> 
    3132            <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->"> 
    3233 
  • branches/version-2_13_1/data/Smarty/templates/sphone/mypage/refusal_confirm.tpl

    r23134 r23277  
    2828    <form name="form1" id="form1" method="post" action="<!--{$smarty.const.HTTPS_URL}-->mypage/refusal.php"> 
    2929        <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
     30        <input type="hidden" name="refusal_transactionid" value="<!--{$refusal_transactionid}-->" /> 
    3031        <input type="hidden" name="mode" value="complete" /> 
    3132 
  • branches/version-2_13_1/data/class/pages/mypage/LC_Page_Mypage_Refusal.php

    r23124 r23277  
    6464        switch ($this->getMode()) { 
    6565            case 'confirm': 
     66                // トークンを設定 
     67                $this->refusal_transactionid = $this->getRefusalToken(); 
     68 
    6669                $this->tpl_mainpage     = 'mypage/refusal_confirm.tpl'; 
    6770                $this->tpl_subtitle     = '退会手続き(確認ページ)'; 
     
    6972 
    7073            case 'complete': 
     74                // トークン入力チェック 
     75                if(!$this->isValidRefusalToken()) { 
     76                    // エラー画面へ遷移する 
     77                    SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, '', true); 
     78                    SC_Response_Ex::actionExit(); 
     79                } 
     80 
    7181                $objCustomer = new SC_Customer_Ex(); 
    7282                $this->lfDeleteCustomer($objCustomer->getValue('customer_id')); 
     
    7686 
    7787            default: 
     88                if (SC_Display_Ex::detectDevice() == DEVICE_TYPE_MOBILE) { 
     89                    $this->refusal_transactionid = $this->getRefusalToken(); 
     90                } 
    7891                break; 
    7992        } 
    8093 
     94    } 
     95 
     96    /** 
     97     * トランザクショントークンを取得する 
     98     * 
     99     * @return string 
     100     */ 
     101    function getRefusalToken() { 
     102        if (empty($_SESSION['refusal_transactionid'])) { 
     103            $_SESSION['refusal_transactionid'] = SC_Helper_Session_Ex::createToken(); 
     104        } 
     105        return $_SESSION['refusal_transactionid']; 
     106    } 
     107 
     108    /** 
     109     * トランザクショントークンのチェックを行う 
     110     */ 
     111    function isValidRefusalToken() { 
     112        if(empty($_POST['refusal_transactionid'])) { 
     113            $ret = false; 
     114        } else { 
     115            $ret = $_POST['refusal_transactionid'] === $_SESSION['refusal_transactionid']; 
     116        } 
     117 
     118        return $ret; 
     119    } 
     120 
     121    /** 
     122     * トランザクショントークを破棄する 
     123     */ 
     124    function destroyRefusalToken() { 
     125        unset($_SESSION['refusal_transactionid']); 
    81126    } 
    82127 
Note: See TracChangeset for help on using the changeset viewer.