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

source: OpenPNE/branches/stable-2.12.x/webapp/modules/pc/do/c_event_join_c_commu_event.php @ 7213

Last change on this file since 7213 was 7213, checked in by ebihara, 11 years ago

#2318:コミュニティイベントコメントが1000番以上になっている場合でも、イベントへの参加や参加キャンセルができるようにした

File size: 1.8 KB
Line 
1<?php
2/**
3 * @copyright 2005-2008 OpenPNE Project
4 * @license   http://www.php.net/license/3_01.txt PHP License 3.01
5 */
6
7class pc_do_c_event_join_c_commu_event extends OpenPNE_Action
8{
9    function execute($requests)
10    {
11        $u = $GLOBALS['AUTH']->uid();
12
13        // --- リクエスト変数
14        $c_commu_topic_id = $requests['target_c_commu_topic_id'];
15        // ----------
16
17        //-- 権限チェック
18        $err_msg = array();
19        $c_topic = db_commu_c_topic4c_commu_topic_id_2($c_commu_topic_id);
20        $c_commu_id = $c_topic['c_commu_id'];
21
22        $status = db_common_commu_status($u, $c_commu_id);
23        if (!$status['is_commu_member']) {
24            handle_kengen_error();
25        }
26
27        if (!$c_topic['event_flag']) {
28            handle_kengen_error();
29        }
30
31        $is_c_event_member = db_commu_is_c_event_member($c_commu_topic_id, $u);
32        if ($is_c_event_member) {
33            $err_msg[] = 'すでにイベントに参加しています。';
34            $_REQUEST['err_msg'] = $err_msg;
35            openpne_forward('pc', 'page', 'c_event_detail');
36            exit;
37        }
38
39        if (!db_commu_is_event_join_capacity($c_commu_topic_id)) {
40            $err_msg[] = 'イベントの参加者数制限を超えています';
41            $_REQUEST['err_msg'] = $err_msg;
42            openpne_forward('pc', 'page', "c_event_detail");
43            exit;
44        }
45
46        if (!db_commu_is_event_join_date($c_commu_topic_id)) {
47            $err_msg[] = 'イベントの募集期限が過ぎています';
48            $_REQUEST['err_msg'] = $err_msg;
49            openpne_forward('pc', 'page', "c_event_detail");
50            exit;
51        }
52
53        db_commu_insert_c_event_member($c_commu_topic_id, $u);
54
55        $p = array('target_c_commu_topic_id' => $c_commu_topic_id);
56        openpne_redirect('pc', 'page_c_event_detail', $p);
57    }
58}
59
60?>
Note: See TracBrowser for help on using the repository browser.