function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     $start = $requests['start_date'];
     $target_id = $requests['target_id'];
     $text = $requests['title'];
     //書式チェック
     preg_match("/([0-2][0-9].*?[0-5][0-9]).*?([0-2][0-9].*?[0-5][0-9])\\s*(.*)/", $text, $matches);
     if ($matches) {
         //クイック入力に対応した書式
         $title = $matches[3];
         $begin_date = $finish_date = $start;
         $begin_time = date("H:i", strtotime($matches[1]));
         if (empty($matches[2])) {
             $finish_time = null;
         } else {
             $finish_time = date("H:i", strtotime($matches[2]));
         }
     } else {
         //通常の予定入力
         $title = $text;
         $begin_date = $finish_date = $start;
         $begin_time = $finish_time = null;
     }
     $members = biz_getGroupMember($target_id);
     $members_id = array();
     foreach ($members as $key => $values) {
         array_push($members_id, $values['c_member_id']);
     }
     if (empty($text)) {
         $p = array('target_c_commu_id' => $target_id, 'msg' => 'タイトルを入力してください。');
         openpne_redirect('biz', 'page_g_home', $p);
         exit;
         //強制的にスクリプトを終了しなければいけない
     }
     biz_insertSchedule($title, $u, $begin_date, $finish_date, $begin_time, $finish_time, '', 0, 0, $target_id, 'group', $members_id);
     //予定の登録
     biz_readSchedule($u, biz_getScheduleMax());
     //既読済みに
     $p = array('target_c_commu_id' => $target_id);
     openpne_redirect('biz', 'page_g_home', $p);
 }
Esempio n. 2
0
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_id = $requests['target_c_commu_id'];
     // ----------
     $group = biz_getGroupData($target_id);
     if (!$group) {
         $p = array();
         openpne_redirect('pc', 'page_h_err_c_home', $p);
         exit;
     }
     $this->set("group", $group);
     $member_list = biz_getGroupMember($target_id, 9);
     $member_list_full = biz_getGroupMember($target_id);
     foreach ($member_list as $key => $value) {
         $member_list[$key] = db_member_c_member4c_member_id_LIGHT($value['c_member_id']);
     }
     foreach ($member_list_full as $key => $value) {
         $member_list_full[$key] = db_member_c_member4c_member_id($value['c_member_id']);
         $member_list_full[$key]['last_login'] = p_f_home_last_login4access_date($member_list_full[$key]['access_date']);
     }
     $this->set('inc_navi', fetch_inc_navi('h'));
     $this->set("member_list", $member_list);
     $this->set("member_count", count($member_list_full));
     $this->set("admin_data", db_member_c_member4c_member_id_LIGHT($group['admin_id']));
     $this->set('calendar_head', biz_getScheduleWeek($u, $target_id, $requests['w'], 'g', ture, false, false));
     foreach ($member_list_full as $key => $value) {
         $calendar_value .= biz_getScheduleWeek($u, $value['c_member_id'], $requests['w'], 'g', false, true, false, $value);
     }
     $this->set('calendar_value', $calendar_value);
     $this->set('calendar_foot', biz_getScheduleWeek($u, $target_id, $requests['w'], 'g', false, false, true));
     if ($u == $group['admin_id']) {
         $this->set("is_admin", true);
     }
     return 'success';
 }
Esempio n. 3
0
function biz_getJoinGroupList($c_member_id, $page, $page_size)
{
    $start = ($page - 1) * $page_size;
    $sql = "SELECT biz_group.*" . " FROM biz_group_member , biz_group";
    $sql .= " WHERE biz_group_member.c_member_id = ?";
    $sql .= " AND biz_group.biz_group_id=biz_group_member.biz_group_id";
    $sql .= " ORDER BY biz_group.biz_group_id DESC ";
    $params = array(intval($c_member_id));
    $biz_group_list = db_get_all_limit($sql, $start, $page_size, $params);
    foreach ($biz_group_list as $key => $value) {
        $biz_group_list[$key]['count_members'] = count(biz_getGroupMember($value['biz_group_id']));
    }
    $pager = array("total_num" => biz_getGroupCount($c_member_id), "disp_num" => count($biz_group_list), "start_num" => 0, "end_num" => 0, "total_page" => 0, "prev_page" => 0, "next_page" => 0);
    if ($pager['disp_num'] > 0) {
        $pager['start_num'] = $start + 1;
        $pager['end_num'] = $pager['start_num'] + $pager['disp_num'] - 1;
    }
    if ($pager['total_num']) {
        $pager['total_page'] = ceil($pager['total_num'] / $page_size);
        if ($page < $pager['total_page']) {
            $pager['next_page'] = max($page + 1, 1);
        }
        if ($page > 1) {
            $pager['prev_page'] = min($page - 1, $pager['total_page']);
        }
    }
    return array($biz_group_list, $pager);
}
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     $form_val['subject'] = $requests['subject'];
     $form_val['body'] = $requests['body'];
     $form_val['biz_group_id'] = $requests['target_biz_group_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'));
     }
     $sessid = session_id();
     $target_member = db_member_c_member4c_member_id($u);
     //プロフィール
     $this->set("target_member", $target_member);
     $this->set("form_val", $form_val);
     //カレンダー関係
     //カレンダー開始用変数
     $year = date("Y");
     $month = date("n");
     //カレンダー用変数
     $date_val = array('year' => $year, 'month' => $month, 'day' => null);
     $this->set("date_val", $date_val);
     //日記のカレンダー
     $calendar = db_common_diary_monthly_calendar($year, $month, $u);
     $this->set("calendar", $calendar['days']);
     $this->set("ym", $calendar['ym']);
     $this->set("begin_date", $begin_date);
     $this->set("finish_date", $finish_date);
     $this->set("sc_title", $requests['sc_title']);
     $this->set("sc_memo", $requests['sc_memo']);
     //日付関連
     if ($requests['begin_date']) {
         $nowyear = date("Y", strtotime($requests['begin_date']));
         $nowmonth = date("m", strtotime($requests['begin_date']));
         $nowday = date("d", strtotime($requests['begin_date']));
         if ($requests['begin_time']) {
             $this->set('begin_hour', date("H", strtotime($requests['begin_time'])));
             $this->set('begin_min', date("i", strtotime($requests['begin_time'])));
         }
         if ($requests['finish_time']) {
             $this->set('finish_hour', date("H", strtotime($requests['finish_time'])));
             $this->set('finish_min', date("i", strtotime($requests['finish_time'])));
         }
     } else {
         $nowyear = date("Y");
         $nowmonth = date("m");
         $nowday = date("d");
     }
     for ($i = $nowyear; $i <= $nowyear + 10; $i++) {
         if ($i == $nowyear) {
             //現在年をデフォルトに
             $years = '<option value="' . $i . '" selected="selected">';
         } else {
             $years .= '<option value="' . $i . '">';
         }
         $years .= $i . '年';
         $years .= '</option>';
     }
     for ($i = 1; $i <= 12; $i++) {
         $i_f = sprintf("%02d", $i);
         //月は常に二桁
         if ($i == $nowmonth) {
             //現在月をデフォルトに
             $monthes .= '<option value="' . $i_f . '" selected="selected">';
         } else {
             $monthes .= '<option value="' . $i_f . '">';
         }
         $monthes .= $i . '月';
         $monthes .= '</option>';
     }
     for ($i = 1; $i <= 31; $i++) {
         $i_f = sprintf("%02d", $i);
         //日は常に二桁
         if ($i == $nowday) {
             $days .= '<option value="' . $i_f . '" selected="selected">';
         } else {
             $days .= '<option value="' . $i_f . '">';
         }
         $days .= $i . '日';
         $days .= '</option>';
     }
     $hours = biz_makeSerialArray(23);
     //時
     $mins = biz_makeSerialArray(55, 0, 5);
     //分
     $wk = array('日', '月', '火', '水', '木', '金', '土');
     //週
     $rp_count = biz_makeSerialArray(12, 1);
     //繰り返し回数
     $bn_num = biz_makeSerialArray(31, 1);
     //日数
     $this->set('years', $years);
     $this->set('monthes', $monthes);
     $this->set('days', $days);
     $this->set('hours', $hours);
     $this->set('mins', $mins);
     $this->set('wk', $wk);
     $this->set('rp_count', $rp_count);
     $this->set('bn_num', $bn_num);
     $this->set('my_id', $u);
     $this->set('is_h', true);
     $this->set('sc_rcount', $requests["sc_rcount"]);
     $this->set('sc_bn', $requests["sc_bn"]);
     $this->set('sc_rp', $requests["sc_rp"]);
     $sc_rwk_enc = array();
     if (isset($requests['sc_rwk_enc'])) {
         $sc_rwk_enc = unserialize($requests['sc_rwk_enc']);
     }
     foreach ($wk as $key => $value) {
         if (in_array($key, $sc_rwk_enc)) {
             $sc_rwk_chk[$key]['checkflag'] = 1;
         } else {
             $sc_rwk_chk[$key]['chekflag'] = 0;
         }
     }
     $this->set('sc_rwk_chk', $sc_rwk_chk);
     $biz_group_count = biz_getGroupCount($target_id);
     $biz_group_list = biz_getJoinGroupList($target_id, 1, $biz_group_count);
     $this->set('biz_group_list', $biz_group_list[0]);
     $this->set('target_c_member_id', $target_id);
     // グループのメンバーリストを取得
     $biz_group_member_list = biz_getGroupMember($form_val['biz_group_id']);
     $biz_group_member_id_list = array();
     foreach ($biz_group_member_list as $biz_group_member) {
         $biz_group_member_id_list[] = $biz_group_member['c_member_id'];
     }
     //追加
     $members = array();
     $sql = 'SELECT c_member_id, nickname FROM c_member WHERE c_member_id != ' . $target_id;
     $members = db_get_all($sql);
     $sql = 'SELECT c_member_id, nickname FROM c_member WHERE c_member_id = ' . $target_id;
     $my_info = db_get_row($sql);
     array_unshift($members, $my_info);
     $members[0]['checkflag'] = 1;
     $jmembers = unserialize($requests['sc_j_mem_enc']);
     $i = 0;
     if (empty($jmembers)) {
         foreach ($members as $key => $value) {
             if (in_array($value['c_member_id'], $biz_group_member_id_list)) {
                 $members[$key]['checkflag'] = 1;
             }
         }
     } else {
         foreach ($members as $key => $value) {
             if ($jmembers[$i] == $value['c_member_id']) {
                 $members[$key]['checkflag'] = 1;
                 $i++;
             }
             if (count($jmembers) < $i) {
                 break;
             }
         }
     }
     $this->set('members', $members);
     return 'success';
 }