ここの情報は古いです。ご理解頂いた上でお取り扱いください。

source: OpenPNE/branches/2.8.x/webapp/modules/ktai/do/o_update_ktai_address.php @ 2995

Last change on this file since 2995 was 2995, checked in by ogawa, 13 years ago

#769:個体識別番号の重複エラーで登録できない場合がある

File size: 3.4 KB
Line 
1<?php
2/**
3 * @copyright 2005-2007 OpenPNE Project
4 * @license   http://www.php.net/license/3_01.txt PHP License 3.01
5 */
6
7require_once 'OpenPNE/KtaiID.php';
8
9class ktai_do_o_update_ktai_address extends OpenPNE_Action
10{
11    function isSecure()
12    {
13        return false;
14    }
15
16    function execute($requests)
17    {
18        // --- リクエスト変数
19        $ses = $requests['ses'];
20        $password = $requests['password'];
21        // ----------
22
23        // セッションが有効かどうか
24        if (!$pre = db_member_c_ktai_address_pre4session($ses)) {
25            // 無効の場合、login へリダイレクト
26            openpne_redirect('ktai', 'page_o_login');
27        }
28
29        // メールアドレスが登録できるかどうか
30        if (!util_is_regist_mail_address($pre['ktai_address'], $pre['c_member_id'])) {
31            openpne_redirect('ktai', 'page_o_login', array('msg' => 42));
32        }
33
34        $c_member_id = $pre['c_member_id'];
35        $ktai_address = $pre['ktai_address'];
36
37        // パスワードチェック
38        if (!db_common_authenticate_password($c_member_id, $password, true)) {
39            $p = array('msg' => 18, 'ses' => $ses);
40            openpne_redirect('ktai', 'page_o_login2', $p);
41        }
42
43        if (IS_GET_EASY_ACCESS_ID == 2) {
44
45        // 携帯の個体識別番号の取得が必須
46            if (!$easy_access_id = OpenPNE_KtaiID::getID()) {
47                // 携帯の個体識別番号を取得できませんでした
48                $p = array('msg' => 27, 'ses' => $ses);
49                openpne_redirect('ktai', 'page_o_login2', $p);
50            } else {
51                $id = db_member_c_member_id4easy_access_id($easy_access_id);
52                if ($id && $c_member_id != $id) {
53                    $p = array('msg' => 39, 'ses' => $ses);
54                    openpne_redirect('ktai', 'page_o_login2', $p);
55                }
56                // update
57                db_member_update_easy_access_id($c_member_id, $easy_access_id);
58                db_member_update_ktai_address($c_member_id, $ktai_address);
59                db_member_delete_ktai_address_pre($pre['c_ktai_address_pre_id']);
60                openpne_redirect('ktai', 'do_o_easy_login');
61            }
62        } else if (IS_GET_EASY_ACCESS_ID == 1) {
63
64        // 携帯の個体識別番号の取得が任意
65            if ($easy_access_id = OpenPNE_KtaiID::getID()) {
66                $id = db_member_c_member_id4easy_access_id($easy_access_id);
67                if ($id && $c_member_id != $id) {
68                    $p = array('msg' => 39, 'ses' => $ses);
69                    openpne_redirect('ktai', 'page_o_login2', $p);
70                }
71                // update
72                db_member_update_easy_access_id($c_member_id, $easy_access_id);
73                db_member_update_ktai_address($c_member_id, $ktai_address);
74                db_member_delete_ktai_address_pre($pre['c_ktai_address_pre_id']);
75                openpne_redirect('ktai', 'do_o_easy_login');
76            }
77        }
78
79        // 携帯の個体識別番号を取得しない
80
81        db_member_update_ktai_address($c_member_id, $ktai_address);
82        db_member_delete_ktai_address_pre($pre['c_ktai_address_pre_id']);
83
84        // login ページへリダイレクト
85        $p = array('msg' => 19, 'kad' => t_encrypt(db_member_username4c_member_id($c_member_id, true)));
86        openpne_redirect('ktai', 'page_o_login', $p);
87    }
88}
89
90?>
Note: See TracBrowser for help on using the repository browser.