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

source: OpenPNE/trunk/webapp/lib/db/schedule.php @ 3718

Last change on this file since 3718 was 3718, checked in by ebihara, 13 years ago

#1053:特定のテーブルに、更新日時を記録するu_datetimeカラムを追加

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
7function db_schedule_c_schedule_list4date($year, $month, $day, $c_member_id)
8{
9    $date = sprintf('%04d-%02d-%02d', $year, $month, $day);
10
11    $sql = 'SELECT * FROM c_schedule WHERE c_member_id = ?' .
12            ' AND start_date <= ? AND end_date >= ?';
13    $params = array(intval($c_member_id), $date, $date);
14    return db_get_all($sql, $params);
15}
16
17function db_schedule_c_schedule4c_schedule_id($c_schedule_id)
18{
19    $sql = 'SELECT * FROM c_schedule WHERE c_schedule_id = ?';
20    return db_get_row($sql, array(intval($c_schedule_id)));
21}
22
23function db_schedule_birth4c_member_id($month, $c_member_id)
24{
25    $ids = db_friend_c_member_id_list($c_member_id);
26    $ids[] = $c_member_id;
27    $ids = implode(', ', $ids);
28
29    $sql = 'SELECT * FROM c_member' .
30        ' WHERE c_member_id IN ('. $ids . ')' .
31        ' AND birth_month = ?';
32    $params = array(intval($month));
33    $list = db_get_all($sql, $params);
34
35    $res = array();
36    foreach ($list as $item) {
37        $day = intval($item['birth_day']);
38        $res[$day][] = $item;
39    }
40    return $res;
41}
42
43function db_schedule_event4c_member_id($year, $month, $c_member_id)
44{
45    $sql = 'SELECT c_commu_id FROM c_commu_member WHERE c_member_id = ?';
46    $params = array(intval($c_member_id));
47    $ids = db_get_col($sql, $params);
48    $ids = implode(', ', $ids);
49    if (!$ids) {
50        return array();
51    }
52
53    $sql = 'SELECT * FROM c_commu_topic WHERE c_commu_id IN ('.$ids.')' .
54            ' AND event_flag = 1 AND open_date > ? AND open_date <= ?';
55
56    $max_day = date("t", mktime(0,0,0,intval($month),1,intval($year) ));
57    $params = array(
58        sprintf('%04d-%02d', intval($year), intval($month)) . '-01',
59        sprintf('%04d-%02d', intval($year), intval($month)) . '-' . $max_day
60    );
61
62    $list = db_get_all($sql, $params);
63
64    $res = array();
65    foreach ($list as $item) {
66        $item['is_join'] = p_common_is_c_event_member($item['c_commu_topic_id'], $c_member_id);
67
68        $day = date('j', strtotime($item['open_date']));
69        $res[$day][] = $item;
70    }
71    return $res;
72}
73
74function db_schedule_c_member_list4mail()
75{
76    $sql = 'SELECT * FROM c_schedule WHERE start_date = ? AND is_receive_mail = 1';
77    $params = array(date('Y-m-d'));
78    return db_get_all($sql, $params);
79}
80
81?>
82<?php
83/**
84 * @copyright 2005-2007 OpenPNE Project
85 * @license   http://www.php.net/license/3_01.txt PHP License 3.01
86 */
87
88function db_schedule_add_insert_c_schedule(
89    $c_member_id, $title, $body,
90    $start_date, $start_time,
91    $end_date, $end_time,
92    $is_receive_mail)
93{
94    $data = array(
95        'c_member_id' => intval($c_member_id),
96        'title' => $title,
97        'body' => $body,
98        'start_date' => $start_date,
99        'start_time' => $start_time,
100        'end_date' => $end_date,
101        'end_time' => $end_time,
102        'u_datetime' => db_now(),
103        'is_receive_mail' => (bool)$is_receive_mail,
104    );
105    return db_insert('c_schedule', $data);
106}
107
108function db_schedule_edit_update_c_schedule(
109    $c_member_id, $title, $body,
110    $start_date, $start_time,
111    $end_date, $end_time,
112    $is_receive_mail,
113    $c_schedule_id)
114{
115    $data = array(
116        'c_member_id' => intval($c_member_id),
117        'title' => $title,
118        'body' => $body,
119        'start_date' => $start_date,
120        'start_time' => $start_time,
121        'end_date' => $end_date,
122        'end_time' => $end_time,
123        'u_datetime' => db_now(),
124        'is_receive_mail' => (bool)$is_receive_mail,
125    );
126    $where = array('c_schedule_id' => intval($c_schedule_id));
127    return db_update('c_schedule', $data, $where);
128}
129
130function db_schedule_delete_c_schedule4c_schedule_id($c_schedule_id)
131{
132    $sql = 'DELETE FROM c_schedule WHERE c_schedule_id = ?';
133    $params = array(intval($c_schedule_id));
134    return db_query($sql, $params);
135}
136
137?>
Note: See TracBrowser for help on using the repository browser.