source: branches/comu/html/mobile/entry/email_mobile.php @ 11982

Revision 11982, 3.6 KB checked in by uehara, 17 years ago (diff)
  • Property svn:eol-style set to native
Line 
1<?php
2/**
3 *
4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
5 *
6 * http://www.lockon.co.jp/
7 *
8 * ¥â¥Ð¥¤¥ë¥µ¥¤¥È/·ÈÂӥ᡼¥ëÅÐÏ¿
9 */
10
11require_once('../require.php');
12
13class LC_Page {
14    function LC_Page() {
15        $this->tpl_mainpage = 'entry/email_mobile.tpl';
16        $this->tpl_title = '·ÈÂӥ᡼¥ëÅÐÏ¿';
17        /*
18         session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç
19         ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£
20         private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£
21        */
22        session_cache_limiter('private-no-expire');     
23    }
24}
25
26$objPage = new LC_Page;
27$objView = new SC_MobileView;
28$objCustomer = new SC_Customer;
29$objFormParam = new SC_FormParam;
30
31if (isset($_SESSION['mobile']['kara_mail_from'])) {
32    $_SERVER['REQUEST_METHOD'] = 'POST';
33    $_POST['email_mobile'] = $_SESSION['mobile']['kara_mail_from'];
34}
35
36lfInitParam($objFormParam);
37
38if ($_SERVER['REQUEST_METHOD'] == 'POST') {
39    $objFormParam->setParam($_POST);
40    $objFormParam->convParam();
41    $objPage->arrErr = lfCheckError($objFormParam, $objCustomer);
42
43    if (empty($objPage->arrErr)) {
44        lfRegister($objFormParam, $objCustomer);
45        $objPage->tpl_mainpage = 'entry/email_mobile_complete.tpl';
46        $objPage->tpl_title = '·ÈÂӥ᡼¥ëÅÐÏ¿´°Î»';
47    }
48}
49
50// ¶õ¥á¡¼¥ëÍѤΥȡ¼¥¯¥ó¤òºîÀ®¤¹¤ë¡£
51if (MOBILE_USE_KARA_MAIL) {
52    $token = gfPrepareKaraMail('entry/email_mobile.php');
53    if ($token !== false) {
54        $objPage->tpl_kara_mail_to = MOBILE_KARA_MAIL_ADDRESS_USER . MOBILE_KARA_MAIL_ADDRESS_DELIMITER . 'entry_' . $token . '@' . MOBILE_KARA_MAIL_ADDRESS_DOMAIN;
55    }
56}
57
58$objPage->tpl_name = $objCustomer->getValue('name01');
59$objPage->arrForm = $objFormParam->getFormParamList();
60
61$objView->assignobj($objPage);
62$objView->display(SITE_FRAME);
63
64//-----------------------------------------------------------------------------------------------------------------------------------
65
66function lfInitParam(&$objFormParam) {
67    $objFormParam->addParam('¥á¡¼¥ë¥¢¥É¥ì¥¹', 'email_mobile', MTEXT_LEN, 'a',
68        array('NO_SPTAB', 'EXIST_CHECK', 'MAX_LENGTH_CHECK', 'CHANGE_LOWER', 'EMAIL_CHAR_CHECK', 'MOBILE_EMAIL_CHECK'));
69}
70
71function lfCheckError(&$objFormParam, &$objCustomer) {
72    $arrRet = $objFormParam->getHashArray();
73    $objErr = new SC_CheckError($arrRet);
74    $objErr->arrErr = $objFormParam->checkError();
75
76    if (count($objErr->arrErr) > 0) {
77        return $objErr->arrErr;
78    }
79
80    $email_mobile = $objFormParam->getValue('email_mobile');
81    $customer_id = $objCustomer->getValue('customer_id');
82    $objQuery = new SC_Query();
83    $arrRet = $objQuery->select('email, email_mobile, update_date, del_flg', 'dtb_customer', '(email ILIKE ? OR email_mobile ILIKE ?) AND customer_id <> ? ORDER BY del_flg', array($email_mobile, $email_mobile, $customer_id));
84
85    if (count($arrRet) > 0) {
86        if ($arrRet[0]['del_flg'] != '1') {
87            // ²ñ°÷¤Ç¤¢¤ë¾ì¹ç
88            $objErr->arrErr['email_mobile'] .= '¢¨ ¤¹¤Ç¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥á¡¼¥ë¥¢¥É¥ì¥¹¤Ç¤¹¡£<br>';
89        } else {
90            // Âà²ñ¤·¤¿²ñ°÷¤Ç¤¢¤ë¾ì¹ç
91            $leave_time = sfDBDatetoTime($arrRet[0]['update_date']);
92            $now_time = time();
93            $pass_time = $now_time - $leave_time;
94            // Âà²ñ¤«¤é²¿»þ´Ö-·Ð²á¤·¤Æ¤¤¤ë¤«È½Äꤹ¤ë¡£
95            $limit_time = ENTRY_LIMIT_HOUR * 3600;
96            if ($pass_time < $limit_time) {
97                $objErr->arrErr['email_mobile'] .= '¢¨ Âà²ñ¤«¤é°ìÄê´ü´Ö¤Î´Ö¤Ï¡¢Æ±¤¸¥á¡¼¥ë¥¢¥É¥ì¥¹¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£<br>';
98            }
99        }
100    }
101
102    return $objErr->arrErr;
103}
104
105function lfRegister(&$objFormParam, &$objCustomer)
106{
107    $customer_id = $objCustomer->getValue('customer_id');
108    $email_mobile = $objFormParam->getValue('email_mobile');
109
110    $objQuery = new SC_Query();
111    $objQuery->update('dtb_customer', array('email_mobile' => $email_mobile), 'customer_id = ?', array($customer_id));
112
113    $objCustomer->setValue('email_mobile', $email_mobile);
114}
115?>
Note: See TracBrowser for help on using the repository browser.