function execute($requests) { $u = $GLOBALS['KTAI_C_MEMBER_ID']; $this->set('tail', $GLOBALS['KTAI_URL_TAIL']); $c_member_secure = db_member_c_member_secure4c_member_id($u); $prof_id = $requests['prof_id']; $w = $requests['w']; if (empty($requests['target_id']) || $requests['target_id'] == $u) { //自分自身 $target_id = $u; $this->set('is_h', true); //判別フラグ } else { //他人 $target_id = $requests['target_id']; $this->set('is_f', true); //判別フラグ } require_once 'Calendar/Week.php'; $w = intval($requests['w']); if (empty($w)) { $w = 0; } $this->set('w', $w); $time = strtotime($w . " week"); $Week = new Calendar_Week(date('Y', $time), date('m', $time), date('d', $time), 0); $Week->build(); $calendar = array(); $schedule = array(); $dayofweek = array('日', '月', '火', '水', '木', '金', '土'); $i = 0; $n = 0; while ($Day = $Week->fetch()) { $y = sprintf("%02d", $Day->thisYear()); $m = sprintf("%02d", $Day->thisMonth()); $d = sprintf("%02d", $Day->thisDay()); $m_disp = sprintf("%2d", $Day->thisMonth()); if ($i == 0) { $this->set("y_disp", $y); $this->set("m_disp", $m_disp); } //イベント $event_list = db_commu_event4c_member_id($y, $m, $d, $target_id); // 誕生日 $birth_list = db_schedule_birth4c_member_id($m, $target_id); //スケジュール $schedule = biz_getDateMemberSchedule($y, $m, $d, $target_id, $u); $banner = biz_isBannerSchedule($y, $m, $d, $target_id); if (!empty($banner)) { foreach ($banner as $value) { array_push($schedule, $value); } } $item = array('year' => $y, 'month' => $m, 'day' => $d, 'dayofweek' => $dayofweek[$i++], 'now' => false, 'event' => $event_list, 'birth' => $birth_list[intval($d)], 'schedule' => $schedule); if ($w == 0 && $d == date('d')) { $item['now'] = true; } $calendar[] = $item; } $this->set("calendar", $calendar); $c_member = db_member_c_member4c_member_id($target_id); $this->set("pref_list", p_regist_prof_c_profile_pref_list4null()); $this->set("c_member", $c_member); $this->set("msg", $requests['msg']); return 'success'; }
function biz_getScheduleWeek($u, $member_id, $w, $cmd, $head = true, $value = true, $foot = true, $member_info = false, $start_day = 0) { $inc_smarty = new OpenPNE_Smarty($GLOBALS['SMARTY']); $inc_smarty->assign("PHPSESSID", md5(session_id())); $inc_smarty->templates_dir = 'biz/templates'; $inc_smarty->assign("cmd", $cmd); //操作の対象ページ $inc_smarty->assign("target_id", $member_id); //予定参加者 require_once 'Calendar/Week.php'; $w = intval($w); if (empty($w)) { $w = 0; } $inc_smarty->assign('w', $w); $time = strtotime($w . " week"); $Week = new Calendar_Week(date('Y', $time), date('m', $time), date('d', $time), $start_day); $Week->build(); $calendar = array(); $dayofweek = array('日', '月', '火', '水', '木', '金', '土'); $i = $start_day; $dayofweek = array_merge($dayofweek, array_slice($dayofweek, 0, $start_day + 1)); $schedule = array(); while ($Day = $Week->fetch()) { $y = sprintf("%02d", $Day->thisYear()); $m = sprintf("%02d", $Day->thisMonth()); $d = sprintf("%02d", $Day->thisDay()); $m_disp = sprintf("%2d", $Day->thisMonth()); $d_disp = sprintf("%2d", $Day->thisDay()); if ($cmd != 's_list') { $schedule = biz_getDateMemberSchedule($y, $m, $d, $member_id, $u); $banner = biz_isBannerSchedule($y, $m, $d, $member_id); if (!empty($banner)) { foreach ($banner as $value) { array_push($schedule, $value); } } } else { $schedule = biz_getShisetsuSchedule($y, $m, $d, $member_id); } $item = array('year' => $y, 'month' => $m, 'day' => $d, 'month_disp' => $m_disp, 'day_disp' => $d_disp, 'dayofweek' => $dayofweek[$i++], 'now' => false, 'birth' => db_member_birth4c_member_id($m, $d, $member_id), 'event' => db_commu_event4c_member_id($y, $m, $d, $member_id), 'schedule' => $schedule, 'todo' => biz_schedule_todo4c_member_id($u, $member_id, $y, $m, $d), 'holiday' => db_c_holiday_list4date($m, $d)); if ($w == 0 && $d == date('d')) { $item['now'] = true; } $calendar[] = $item; } $daylist = $calendar; //コピー for ($i = 1; $i <= 2; $i++) { $j = $start_day; //曜日ポインタを示す $time = strtotime($w + $i . " week"); $Week = new Calendar_Week(date('Y', $time), date('m', $time), date('d', $time), $start_day); $Week->build(); while ($Day = $Week->fetch()) { $y = sprintf("%02d", $Day->thisYear()); $m = sprintf("%02d", $Day->thisMonth()); $d = sprintf("%02d", $Day->thisDay()); $item = array('year' => $y, 'month' => $m, 'day' => $d, 'dayofweek' => $dayofweek[$j++]); $daylist[] = $item; } } $inc_smarty->assign("daylist", $daylist); if ($cmd == 's_list') { $hours = biz_makeSerialArray(23); //時 $inc_smarty->assign("hours", $hours); $mins = biz_makeSerialArray(300, 30, 30); //分 $inc_smarty->assign("mins", $mins); $inc_smarty->assign("list", biz_getShisetsuData($member_id)); $config = biz_getConfig(); $inc_smarty->assign('is_closed_shisetsu', $config['IS_CLOSED_SHISETSU']); } $inc_smarty->assign('calendar', $calendar); $inc_smarty->assign('head', $head); $inc_smarty->assign('value', $value); $inc_smarty->assign('foot', $foot); if ($member_info) { $inc_smarty->assign('member_info', $member_info); } if ($cmd == 'h') { if (OPENPNE_USE_POINT_RANK) { // ポイント $point = db_point_get_point($member_id); $inc_smarty->assign("point", $point); // ランク $inc_smarty->assign("rank", db_point_get_rank4point($point)); } } $content = $inc_smarty->fetch('file:' . OPENPNE_MODULES_BIZ_DIR . '/biz/templates/inc_biz_schedule_week.tpl'); return $content; }
function execute($requests) { $u = $GLOBALS['AUTH']->uid(); // --- リクエスト変数 $year = $requests['year']; $month = $requests['month']; $pref_id = $requests['pref_id']; // ---------- if (empty($requests['target_id']) || $requests['target_id'] == $u) { //自分自身 $target_id = $u; $this->set('is_h', true); //判別フラグ $this->set('inc_navi', fetch_inc_navi('h')); } else { //他人 $target_id = $requests['target_id']; $this->set('is_f', true); //判別フラグ $this->set('inc_navi', fetch_inc_navi('f', $target_id)); } if (!$year) { $year = date('Y'); } if (!$month) { $month = date('n'); } if ($year == date('Y') && $month == date('n')) { $is_curr = true; $curr_day = date('d'); } // イベント $event_list = db_schedule_event4c_member_id($year, $month, $target_id); // 誕生日 $birth_list = db_schedule_birth4c_member_id($month, $target_id); // Todo $todo_list = biz_schedule_todo4c_member_id($u, $target_id, $year, $month); require_once 'Calendar/Month/Weekdays.php'; $Month = new Calendar_Month_Weekdays($year, $month, 0); $Month->build(); $calendar = array(); $schedule = array(); $i = 0; while ($Day = $Month->fetch()) { if ($Day->isFirst()) { $i++; } if ($Day->isEmpty()) { $calendar[$i][] = array(); } else { $day = $Day->thisDay(); $schedule = biz_getDateMemberSchedule($year, sprintf("%02d", $month), sprintf("%02d", $day), $target_id, $u); $banner = biz_isBannerSchedule($year, sprintf("%02d", $month), sprintf("%02d", $day), $target_id); if (!empty($banner)) { foreach ($banner as $value) { array_push($schedule, $value); } } $item = array('day' => $day, 'now' => false, 'birth' => $birth_list[$day], 'event' => $event_list[$day], 'schedule' => $schedule, 'todo' => $todo_list[$day], 'holiday' => db_c_holiday_list4date($month, $day)); $item['day'] = $day; if ($is_curr && $item['day'] == $curr_day) { $item['now'] = true; } $calendar[$i][] = $item; } } $ym = array('year_disp' => $year, 'month_disp' => $month, 'year_prev' => date('Y', $Month->prevMonth(true)), 'month_prev' => date('n', $Month->prevMonth(true)), 'year_next' => date('Y', $Month->nextMonth(true)), 'month_next' => date('n', $Month->nextMonth(true))); $this->set("ym", $ym); $this->set("year", $year); $this->set("month", $month); $this->set("calendar", $calendar); $c_member = db_member_c_member4c_member_id($target_id); $this->set("pref_list", p_regist_prof_c_profile_pref_list4null()); $this->set("c_member", $c_member); return 'success'; }