function execute($requests)
 {
     $v = array();
     $v['SNS_NAME'] = SNS_NAME;
     $v['cannot_send'] = true;
     $c_member_id_invite = 1;
     if ($requests['pc_mails'] && OPENPNE_REGIST_FROM & OPENPNE_REGIST_FROM_PC) {
         $params = array('c_member' => db_member_c_member4c_member_id($c_member_id_invite), 'sid' => 'xxxxxxxxxx', 'invite_message' => $requests['message']);
         list($subject, $body) = fetch_mail_m_tpl('m_pc_syoutai_mail', $params);
         $v['pc_subject'] = $subject;
         $v['pc_body'] = $body;
         $v['cannot_send'] = false;
     }
     if ($requests['ktai_mails'] && (OPENPNE_REGIST_FROM & OPENPNE_REGIST_FROM_KTAI) >> 1) {
         $params['SNS_NAME'] = SNS_NAME;
         $params['url'] = openpne_gen_url('ktai', 'page_o_regist_pre') . '&ses=xxxxxxxxxx';
         $params['c_member'] = db_member_c_member4c_member_id($c_member_id_invite);
         $params['message'] = $requests['message'];
         list($subject, $body) = fetch_mail_m_tpl('m_ktai_regist_invite', $params);
         $v['ktai_subject'] = $subject;
         $v['ktai_body'] = $body;
         $v['cannot_send'] = false;
     }
     $this->set($v);
     return 'success';
 }
/**
 * @copyright 2005-2008 OpenPNE Project
 * @license   http://www.php.net/license/3_01.txt PHP License 3.01
 */
function smarty_function_t_url($params, &$smarty)
{
    $urlencode = false;
    if (isset($params['_urlencode'])) {
        $urlencode = (bool) $params['_urlencode'];
        unset($params['_urlencode']);
    }
    $absolute = false;
    if (isset($params['_absolute'])) {
        $absolute = (bool) $params['_absolute'];
        unset($params['_absolute']);
    }
    $html = true;
    if (isset($params['_html'])) {
        $html = (bool) $params['_html'];
        unset($params['_html']);
    }
    $module = $params['m'];
    $action = $params['a'];
    $url = openpne_gen_url($module, $action, $params, $absolute);
    if ($html) {
        $url = htmlspecialchars($url, ENT_QUOTES, 'UTF-8');
    }
    if ($urlencode) {
        $url = urlencode($url);
    }
    return $url;
}
Exemple #3
0
/**
 * ログインページを取得
 *
 * @return string ログインページURL
 */
function get_login_url()
{
    if (LOGIN_URL_PC) {
        return LOGIN_URL_PC;
    } else {
        return openpne_gen_url('pc', 'page_o_login');
    }
}
 function execute($requests)
 {
     $use_portal = $requests['use_portal'];
     $tmp = db_portal_config('USE_PORTAL_KTAI');
     if (!isset($tmp)) {
         db_portal_insert_portal_config('USE_PORTAL_KTAI', $use_portal);
     } else {
         db_portal_update_portal_config('USE_PORTAL_KTAI', $use_portal);
     }
     if ($use_portal) {
         $this->_replace_c_admin_config('LOGIN_URL_KTAI', openpne_gen_url('portal', 'page_portal_user_top_ktai'));
         $this->_replace_c_admin_config('DISPLAY_LOGIN', '0');
     } else {
         $this->_replace_c_admin_config('LOGIN_URL_KTAI', '');
     }
     portal_client_redirect('edit_portal_use_ktai', '携帯版ポータル使用設定を変更しました');
 }
Exemple #5
0
function create_message_event_message($u, $body, $c_commu_topic_id)
{
    $msg_subject = 'イベントのお知らせ';
    $c_member = db_member_c_member4c_member_id_LIGHT($u);
    $p = array('target_c_commu_topic_id' => $c_commu_topic_id);
    $url = openpne_gen_url('pc', 'page_c_event_detail', $p);
    // メッセージ中に書いてあるURLがSNS内でありセッションパラメータを含んでいた場合は削除
    $body = db_ktai_delete_url_session_parameter($body);
    $msg_body = <<<EOD
イベントの企画者{$c_member['nickname']}さんからイベントに関してのお知らせが届いています。

メッセージ:
{$body}

このイベントのURL
{$url}
EOD;
    return array($msg_subject, $msg_body);
}
Exemple #6
0
function send_diary_comment_info_mail($c_diary_comment_id, $c_member_id)
{
    $comment = _do_c_diary_comment4c_diary_comment_id($c_diary_comment_id);
    $target_c_member_id = $comment['c_member_id_author'];
    // コメントした人=日記オーナーの場合は通知しない
    if ($target_c_member_id == $c_member_id) {
        return false;
    }
    // 日記オーナーの通知設定が無ければ通知しない
    $target_c_member_config = util_get_c_member_config($target_c_member_id);
    if (!$target_c_member_config['SEND_DIARY_COMMENT_MAIL_KTAI']) {
        return false;
    }
    $c_member = db_member_c_member4c_member_id_LIGHT($c_member_id);
    $target_c_member = db_member_c_member_secure4c_member_id($target_c_member_id);
    $c_diary_id = $comment['c_diary_id'];
    $c_diary = db_diary_get_c_diary4id($c_diary_id);
    $p = array('target_c_diary_id' => $c_diary_id);
    $url = openpne_gen_url('ktai', 'page_fh_diary', $p);
    $params = array('subject' => $c_diary['subject'], 'nickname' => $c_member['nickname'], 'body' => $comment['body'], 'url' => $url, 'image_filename1' => $comment['image_filename_1'], 'image_filename2' => $comment['image_filename_2'], 'image_filename3' => $comment['image_filename_3'], 'id' => $c_diary_comment_id);
    $ktai_address = $target_c_member['ktai_address'];
    if (MAIL_ADDRESS_HASHED) {
        $from = "bc{$c_diary_id}-" . t_get_user_hash($target_c_member_id) . '@' . MAIL_SERVER_DOMAIN;
    } else {
        $from = "bc{$c_diary_id}" . '@' . MAIL_SERVER_DOMAIN;
    }
    $from = MAIL_ADDRESS_PREFIX . $from;
    return fetch_send_mail($ktai_address, 'm_ktai_diary_comment_info', $params, true, $from);
}
Exemple #7
0
/**
 * openpne_forward
 *
 * @param string $module a requested module name.
 * @param string $type request type. 'page' or 'do'
 * @param string $action requested page/command name.
 * @param array  $errors error message strings.
 */
function openpne_forward($module, $type = '', $action = '', $errors = array())
{
    /// module ///
    if (!($module = _check_module($module))) {
        openpne_display_error('モジュールが見つかりません', true);
    }
    $GLOBALS['__Framework']['current_module'] = $module;
    // disable modules
    if (in_array($module, (array) $GLOBALS['_OPENPNE_DISABLE_MODULES'])) {
        openpne_display_error('モジュールが無効になっています', true);
    }
    // init
    if ($init = openpne_ext_search("{$module}/init.inc")) {
        require_once $init;
    }
    /// type ///
    if (!$type) {
        $type = $GLOBALS['__Framework']['default_type'];
    }
    if (!_check_type($type)) {
        openpne_display_error('リクエストの種類が正しくありません', true);
    }
    $GLOBALS['__Framework']['current_type'] = $type;
    /// action ///
    if (!($action = _check_action($action))) {
        openpne_display_error('アクションの指定が正しくありません', true);
    }
    if (!($file = openpne_ext_search("{$module}/{$type}/{$action}.php"))) {
        openpne_display_error('アクションファイルが見つかりません', true);
    }
    require_once $file;
    $class_name = "{$module}_{$type}_{$action}";
    if (!class_exists($class_name)) {
        openpne_display_error('アクションが見つかりません', true);
    }
    $action_obj = new $class_name();
    $GLOBALS['__Framework']['current_action'] = $action;
    // maintenace mode
    if (OPENPNE_UNDER_MAINTENANCE) {
        if (!in_array($module, (array) $GLOBALS['_OPENPNE_MAINTENANCE_MODULES']) || in_array($type . '_' . $action, (array) $GLOBALS['_OPENPNE_MAINTENANCE_EXCLUDED_ACTION'][$module])) {
            openpne_display_error();
        }
    }
    // auth
    if ($GLOBALS['__Framework']['is_secure'] = $action_obj->isSecure()) {
        if ($auth = openpne_ext_search("{$module}/auth.inc")) {
            require_once $auth;
        } else {
            require_once 'auth.inc';
        }
    }
    // ---------- リクエストバリデーション ----------
    require_once 'OpenPNE/Validator.php';
    require_once 'OpenPNE/Validator/Common.php';
    $validator = new OpenPNE_Validator_Common();
    $files = array();
    if ($ini = openpne_ext_search("{$module}/validate/{$type}/{$action}.ini")) {
        $files[] = $ini;
    }
    list($result, $requests) = $validator->common_validate($files);
    $action_obj->requests = $requests;
    if ($result === false) {
        $errors = $validator->getErrors();
        $action_obj->handleError($errors);
    }
    // ----------------------------------------------
    switch ($type) {
        case 'page':
            $smarty = new OpenPNE_Smarty($GLOBALS['SMARTY']);
            $smarty->templates_dir = $module . '/templates';
            $smarty->assign('requests', $requests);
            $smarty->assign('msg', $requests['msg']);
            $smarty->assign('msg1', $requests['msg1']);
            $smarty->assign('msg2', $requests['msg2']);
            $smarty->assign('msg3', $requests['msg3']);
            if ($errors) {
                $smarty->assign('errors', $errors);
            }
            if (OPENPNE_USE_PARTIAL_SSL) {
                $a = "{$type}_{$action}";
                if ($_SERVER['REQUEST_METHOD'] == 'POST') {
                    $p = $_POST;
                } else {
                    $p = $_GET;
                }
                switch (openpne_ssl_type($module, $a)) {
                    case 'SSL_REQUIRED':
                        if (!is_ssl()) {
                            openpne_redirect($module, $a, $p);
                        }
                        break;
                    case 'SSL_DISABLED':
                        if (is_ssl()) {
                            openpne_redirect($module, $a, $p);
                        }
                        break;
                    case 'SSL_SELECTABLE':
                        if ($https = is_ssl()) {
                            $url = openpne_gen_url($module, $a, $p, true, 'nonssl');
                        } else {
                            $url = openpne_gen_url($module, $a, $p, true, 'ssl');
                        }
                        $smarty->assign('HTTPS', $https);
                        $smarty->assign('SSL_SELECT_URL', $url);
                        break;
                }
            }
            $action_obj->view =& $smarty;
            break;
    }
    // init function
    $init_func = "init_{$module}_{$type}";
    if (function_exists($init_func)) {
        if (isset($smarty)) {
            $init_func($smarty);
        } else {
            $init_func();
        }
    }
    $result = $action_obj->execute($requests);
    if ($result == 'success') {
        send_nocache_headers();
        if ($smarty->ext_search($smarty->templates_dir . '/common/layout.tpl', $place)) {
            $smarty->assign('op_content', $smarty->ext_fetch("{$action}.tpl"));
            $smarty->ext_display('common/layout.tpl');
        } else {
            $smarty->ext_display("{$action}.tpl");
        }
    }
    // ----------------------------------------------
    // c_access_log
    if (LOG_C_ACCESS_LOG) {
        if ($GLOBALS['__Framework']['is_secure'] && $type == 'page') {
            if ($module == 'pc') {
                p_access_log($GLOBALS['AUTH']->uid(), $action);
            } elseif ($module == 'ktai') {
                p_access_log($GLOBALS['KTAI_C_MEMBER_ID'], $action, 1);
            }
        }
    }
    // カスタムログ用関数の呼び出し
    if (OPENPNE_LOG_FUNCTION && is_callable(OPENPNE_LOG_FUNCTION)) {
        // c_member_id を取得
        $c_member_id = 0;
        if ($GLOBALS['__Framework']['is_secure']) {
            if ($module == 'pc') {
                $c_member_id = $GLOBALS['AUTH']->uid();
            } else {
                if ($module == 'ktai') {
                    $c_member_id = $GLOBALS['KTAI_C_MEMBER_ID'];
                }
            }
        }
        $params = array('module' => $module, 'type' => $type, 'action' => $action, 'c_member_id' => $c_member_id, 'is_secure' => $GLOBALS['__Framework']['is_secure']);
        call_user_func(OPENPNE_LOG_FUNCTION, $params);
    }
    return true;
}
/**
 * スケジュール通知メールを送信する
 */
function biz_do_common_send_schedule_mail()
{
    $y = date("Y");
    $m = date("m");
    $d = date("d");
    $c_schedule_list = biz_getDateSchedule($y, $m, $d);
    $send_list = array();
    foreach ($c_schedule_list as $schedule_id) {
        $value = biz_getScheduleInfo($schedule_id);
        $biz_schedule_member = biz_getJoinIdSchedule($value['biz_schedule_id']);
        foreach ($biz_schedule_member as $c_member_id) {
            $send_list[$c_member_id][] = $value;
        }
    }
    foreach ($send_list as $c_member_id => $c_schedule_list) {
        $c_member_secure = db_member_c_member_secure4c_member_id($c_member_id);
        if (!empty($c_member_secure['pc_address'])) {
            // PCメールアドレスがある場合は、PCのみ送信
            $pc_address = $c_member_secure['pc_address'];
            $params = array('c_member' => db_member_c_member4c_member_id_LIGHT($c_member_id), 'c_schedule_list' => $c_schedule_list);
            fetch_send_mail($pc_address, 'm_pc_schedule_mail', $params);
        } else {
            // PCメールアドレスがない場合は、携帯のみ送信
            $ktai_address = $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' => db_member_c_member4c_member_id_LIGHT($c_member_id), 'login_url' => $login_url, 'c_schedule_list' => $c_schedule_list);
            fetch_send_mail($ktai_address, 'm_ktai_schedule_mail', $params);
        }
    }
}
Exemple #9
0
function openid_util_get_server()
{
    $op_endpoint = openpne_gen_url('openid', 'do_server');
    return new Auth_OpenID_Server(new Auth_OpenID_FileStore(OPENPNE_VAR_DIR . '/tmp'), $op_endpoint);
}
Exemple #10
0
function do_admin_send_message_mail_send_ktai($c_member_id_to, $c_member_id_from, $subject, $body)
{
    $c_member_to = db_member_c_member4c_member_id($c_member_id_to, true);
    $ktai_address = $c_member_to['secure']['ktai_address'];
    $is_receive_ktai_mail = $c_member_to['is_receive_ktai_mail'];
    $p = array('kad' => t_encrypt(db_member_username4c_member_id($c_member_to['c_member_id'], true)));
    $login_url = openpne_gen_url('ktai', 'page_o_login', $p);
    $params = array('c_member_to' => db_member_c_member4c_member_id($c_member_id_to), 'c_member_from' => db_member_c_member4c_member_id($c_member_id_from), 'login_url' => $login_url, 'subject' => $subject, 'body' => $body);
    return admin_fetch_send_mail($ktai_address, 'm_ktai_message_zyushin', $params, $is_receive_ktai_mail);
}