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

source: OpenPNE/branches/work/ebihara/prj_regist_ktai_uid/webapp/modules/ktai/do/o_update_ktai_address.php @ 4206

Last change on this file since 4206 was 4206, checked in by ebihara, 14 years ago

#1129:管理画面から「携帯個体識別番号の登録」を「必須にしない」として送られた招待の場合、携帯個体識別番号を任意に取得するようにした

File size: 3.8 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 || IS_GET_EASY_ACCESS_ID == 3) {
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                if (db_member_easy_access_id_is_blacklist(md5($easy_access_id))) {
57                    ktai_display_error('携帯メールアドレスを登録できませんでした。');
58                }
59                // update
60                db_member_update_easy_access_id($c_member_id, $easy_access_id);
61                db_member_update_ktai_address($c_member_id, $ktai_address);
62                db_member_delete_ktai_address_pre($pre['c_ktai_address_pre_id']);
63                openpne_redirect('ktai', 'do_o_easy_login');
64            }
65        } else if (IS_GET_EASY_ACCESS_ID == 1) {
66
67        // 携帯の個体識別番号の取得が任意
68            if ($easy_access_id = OpenPNE_KtaiID::getID()) {
69                $id = db_member_c_member_id4easy_access_id($easy_access_id);
70                if ($id && $c_member_id != $id) {
71                    $p = array('msg' => 39, 'ses' => $ses);
72                    openpne_redirect('ktai', 'page_o_login2', $p);
73                }
74                if (db_member_easy_access_id_is_blacklist(md5($easy_access_id))) {
75                    ktai_display_error('携帯メールアドレスを登録できませんでした。');
76                }
77                // update
78                db_member_update_easy_access_id($c_member_id, $easy_access_id);
79                db_member_update_ktai_address($c_member_id, $ktai_address);
80                db_member_delete_ktai_address_pre($pre['c_ktai_address_pre_id']);
81                openpne_redirect('ktai', 'do_o_easy_login');
82            }
83        }
84
85        // 携帯の個体識別番号を取得しない
86
87        db_member_update_ktai_address($c_member_id, $ktai_address);
88        db_member_delete_ktai_address_pre($pre['c_ktai_address_pre_id']);
89
90        // login ページへリダイレクト
91        $p = array('msg' => 19, 'kad' => t_encrypt(db_member_username4c_member_id($c_member_id, true)));
92        openpne_redirect('ktai', 'page_o_login', $p);
93    }
94}
95
96?>
Note: See TracBrowser for help on using the repository browser.