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 p_h_home_birth4c_member_id($month, $day, $c_member_id)
{
    return db_member_birth4c_member_id($month, $day, $c_member_id);
}
Beispiel #3
0
 function get_calendar($u, $week, $start_day)
 {
     include_once 'Calendar/Week.php';
     $w = intval($week);
     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), $start_day);
     $Week->build();
     $calendar = array();
     $dayofweek = array('日', '月', '火', '水', '木', '金', '土');
     $i = $start_day;
     $dayofweek = array_merge($dayofweek, array_slice($dayofweek, 0, $start_day + 1));
     while ($Day = $Week->fetch()) {
         $y = $Day->thisYear();
         $m = $Day->thisMonth();
         $d = $Day->thisDay();
         $birth = db_member_birth4c_member_id($m, $d, $u);
         $item = array('year' => $y, 'month' => $m, 'day' => $d, 'dayofweek' => $dayofweek[$i++], 'now' => false, 'birth' => $birth, 'event' => db_commu_event4c_member_id($y, $m, $d, $u), 'schedule' => db_schedule_c_schedule_list4date($y, $m, $d, $u), 'holiday' => db_c_holiday_list4date($m, $d));
         if ($w == 0 && $d == date('d')) {
             $item['now'] = true;
         }
         $calendar[] = $item;
     }
     return $calendar;
 }