function execute($requests)
 {
     //外部認証の場合はリダイレクト
     check_action4pne_slave(true);
     // --- リクエスト変数
     $session = $requests['session'];
     $id = $requests['id'];
     // ----------
     // ハッシュ化されたIDを戻す
     $c_member_id = t_decrypt($id);
     // 権限チェック
     if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid')) {
         handle_kengen_error();
     }
     if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid_time')) {
         handle_kengen_error();
     }
     $c_member_config = db_member_c_member_config4c_member_id($c_member_id);
     // 権限チェック
     if ($c_member_config['password_reset_sid'] != $session) {
         handle_kengen_error();
     }
     // 有効期限は24時間
     $one_day_time = 86400;
     $limit_password_reset_sid_time = $c_member_config['password_reset_sid_time'] + $one_day_time;
     // 権限チェック
     if (time() > $limit_password_reset_sid_time) {
         $p = array('msg' => 55);
         openpne_redirect('ktai', 'page_o_login', $p);
     }
     $this->set('session', $session);
     $this->set('id', $id);
     return 'success';
 }
 function execute($requests)
 {
     //外部認証の場合はリダイレクト
     check_action4pne_slave(false);
     // --- リクエスト変数
     $session = $requests['session'];
     $id = $requests['id'];
     $new_password = $requests['new_password'];
     $new_password2 = $requests['new_password2'];
     // ----------
     // ハッシュ化されたIDを戻す
     $c_member_id = t_decrypt($id);
     // 権限チェック
     if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid')) {
         handle_kengen_error();
     }
     if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid_time')) {
         handle_kengen_error();
     }
     $c_member_config = db_member_c_member_config4c_member_id($c_member_id);
     // 権限チェック
     if ($c_member_config['password_reset_sid'] != $session) {
         handle_kengen_error();
     }
     // 有効期限は24時間
     $one_day_time = 86400;
     $limit_password_reset_sid_time = $c_member_config['password_reset_sid_time'] + $one_day_time;
     // 権限チェック
     if (time() > $limit_password_reset_sid_time) {
         $p = array('msg_code' => 'password_reset_timeout');
         openpne_redirect('pc', 'page_o_tologin', $p);
     }
     $msg_list = array();
     if (!$new_password) {
         $msg_list[] = "パスワードを入力してください";
     }
     if (!$new_password2) {
         $msg_list[] = "パスワード(確認)を入力してください";
     }
     if ($new_password !== $new_password2) {
         $msg_list[] = "パスワードが一致しません";
     }
     if (!ctype_alnum($new_password) || strlen($new_password) < 6 || strlen($new_password) > 12) {
         $msg_list[] = "パスワードは6~12文字の半角英数で入力してください";
     }
     // error
     if ($msg_list) {
         $p = array('msg' => array_shift($msg_list), 'session' => $session, 'id' => $id);
         openpne_redirect('pc', 'page_o_password_reset', $p);
         exit;
     }
     db_member_update_password($c_member_id, $new_password);
     db_member_delete_c_member_config($c_member_id, 'password_reset_sid_time');
     db_member_delete_c_member_config($c_member_id, 'password_reset_sid');
     $p = array('msg_code' => 'change_password');
     openpne_redirect('pc', 'page_o_tologin', $p);
 }
 function execute($requests)
 {
     //外部認証の場合はリダイレクト
     check_action4pne_slave(true);
     // --- リクエスト変数
     $session = $requests['session'];
     $id = $requests['id'];
     $new_password = $requests['new_password'];
     // ----------
     // ハッシュ化されたIDを戻す
     $c_member_id = t_decrypt($id);
     // 権限チェック
     if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid')) {
         handle_kengen_error();
     }
     if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid_time')) {
         handle_kengen_error();
     }
     $c_member_config = db_member_c_member_config4c_member_id($c_member_id);
     // 権限チェック
     if ($c_member_config['password_reset_sid'] != $session) {
         handle_kengen_error();
     }
     // 有効期限は24時間
     $one_day_time = 86400;
     $limit_password_reset_sid_time = $c_member_config['password_reset_sid_time'] + $one_day_time;
     // 権限チェック
     if (time() > $limit_password_reset_sid_time) {
         $p = array('msg' => 55);
         openpne_redirect('ktai', 'page_o_login', $p);
     }
     // 新しいパスワードは有効な文字列か
     if (!ctype_alnum($new_password) || strlen($new_password) < 6 || strlen($new_password) > 12) {
         $p = array('msg' => 20, 'session' => $session, 'id' => $id);
         openpne_redirect('ktai', 'page_o_password_reset', $p);
     }
     db_member_update_password($c_member_id, $new_password);
     db_member_delete_c_member_config($c_member_id, 'password_reset_sid_time');
     db_member_delete_c_member_config($c_member_id, 'password_reset_sid');
     $p = array('msg' => 21);
     openpne_redirect('ktai', 'page_o_login', $p);
 }
 function execute($requests)
 {
     if (util_is_unused_mail('m_ktai_rank_up')) {
         handle_kengen_error();
     }
     $u = $GLOBALS['KTAI_C_MEMBER_ID'];
     $c_member_secure = db_member_c_member_secure4c_member_id($u);
     $c_member_config = db_member_c_member_config4c_member_id($u);
     if (isset($c_member_config['SEND_RANK_UP_MAIL_KTAI'])) {
         $SEND_RANK_UP_MAIL_KTAI = (bool) $c_member_config['SEND_RANK_UP_MAIL_KTAI'];
     } else {
         if ($c_member_secure['pc_address']) {
             $SEND_RANK_UP_MAIL_KTAI = false;
         } else {
             $SEND_RANK_UP_MAIL_KTAI = true;
         }
     }
     $this->set('SEND_RANK_UP_MAIL_KTAI', $SEND_RANK_UP_MAIL_KTAI);
     return 'success';
 }
示例#5
0
function send_mail_pcktai_rank_up($c_member_id, $before_rank, $after_rank)
{
    $c_member = db_member_c_member4c_member_id($c_member_id, true);
    if (!empty($c_member['secure']['pc_address'])) {
        $to_rank_up_mail_pc = true;
        $to_rank_up_mail_ktai = false;
    } else {
        $to_rank_up_mail_pc = false;
        $to_rank_up_mail_ktai = true;
    }
    // メンバーの受信設定を取得
    $c_member_config = db_member_c_member_config4c_member_id($c_member_id);
    if (isset($c_member_config['SEND_RANK_UP_MAIL_PC'])) {
        $to_rank_up_mail_pc = (bool) $c_member_config['SEND_RANK_UP_MAIL_PC'];
    }
    if (isset($c_member_config['SEND_RANK_UP_MAIL_KTAI'])) {
        $to_rank_up_mail_ktai = (bool) $c_member_config['SEND_RANK_UP_MAIL_KTAI'];
    }
    $result_pc = true;
    $result_ktai = true;
    // PCに送信
    if ($to_rank_up_mail_pc) {
        $to = $c_member['secure']['pc_address'];
        $params = array('c_member' => $c_member, 'before_rank' => $before_rank, 'after_rank' => $after_rank);
        $result_pc = fetch_send_mail($to, 'm_pc_rank_up', $params);
    }
    // 携帯に送信
    if ($to_rank_up_mail_ktai) {
        $to = $c_member['secure']['ktai_address'];
        $p = array('kad' => t_encrypt(db_member_username4c_member_id($c_member_id, true)));
        $login_url = openpne_gen_url('ktai', 'page_o_login', $p);
        $params = array('c_member' => $c_member, 'before_rank' => $before_rank, 'after_rank' => $after_rank, 'login_url' => $login_url);
        $result_ktai = fetch_send_mail($to, 'm_ktai_rank_up', $params);
    }
    return $result_pc && $result_ktai;
}
示例#6
0
function util_get_c_member_config($c_member_id)
{
    $default_config = util_get_c_member_config_default();
    $member_config = array_merge($default_config, db_member_c_member_config4c_member_id($c_member_id));
    return $member_config;
}
示例#7
0
/**
 * DBから前回POST情報を取得する
 *
 * @param int $u
 * @return array
 */
function db_etc_get_post_info($u)
{
    $result = db_member_c_member_config4c_member_id($u);
    return array($result['last_post_time'], $result['last_post_count']);
}