function execute($requests)
 {
     if (!OPENPNE_USE_POINT_RANK) {
         admin_client_redirect('top', '指定されたページにはアクセスできません');
     }
     $c_rank_id = $requests['c_rank_id'];
     $c_rank = db_admin_get_c_rank_one($c_rank_id);
     $image_filename = $c_rank['image_filename'];
     if (db_point_is_rank4point($requests['point']) && $c_rank['point'] != $requests['point']) {
         $tail = 'c_rank_id=' . $c_rank_id;
         admin_client_redirect('update_c_rank', '同一の到達ポイントのランクが既に存在します', $tail);
     }
     $upfile_obj = $_FILES['image_upfile'];
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             $tail = 'c_rank_id=' . $c_rank_id;
             admin_client_redirect('update_c_rank', '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください', $tail);
         }
         //以前のイメージを削除
         db_image_data_delete($image_filename);
         //新しいイメージを作成
         $ext = t_check_image_format($_FILES['image_upfile']);
         $image_filename = "r_{$c_rank_id}_" . time() . ".{$ext}";
         admin_insert_c_image($_FILES['image_upfile'], $image_filename);
     }
     db_admin_update_c_rank($c_rank_id, $requests['name'], $image_filename, $requests['point']);
     admin_client_redirect('list_c_rank', 'ランクを編集しました');
 }
 function execute($requests)
 {
     // ランク機能が無効
     if (!OPENPNE_USE_POINT_RANK) {
         admin_client_redirect('top', '指定されたページにはアクセスできません');
     }
     if (db_point_is_rank4point($requests['point'])) {
         admin_client_redirect('list_c_rank', '同一の到達ポイントのランクが既に存在します');
     }
     $upfile_obj = $_FILES['image_upfile'];
     // ランク画像が指定されていない
     if (empty($upfile_obj) || $upfile_obj['error'] === UPLOAD_ERR_NO_FILE) {
         admin_client_redirect('list_c_rank', 'ランク画像を指定してください');
     }
     // ランク画像の形式チェック
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             admin_client_redirect('list_c_rank', '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください');
         }
     }
     // ランクを追加
     $c_rank_id = db_admin_insert_c_rank($requests['name'], '', $requests['point']);
     if (!$c_rank_id) {
         admin_client_redirect('list_c_rank', 'ランクが追加できませんでした');
     }
     // ランク画像挿入
     $ext = t_check_image_format($upfile_obj);
     $image_filename = "r_{$c_rank_id}_" . time() . ".{$ext}";
     admin_insert_c_image($upfile_obj, $image_filename);
     // ランクとランク画像の関連付け
     db_admin_update_c_rank($c_rank_id, $requests['name'], $image_filename, $requests['point']);
     admin_client_redirect('list_c_rank', 'ランクを追加しました');
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $subject = $requests['subject'];
     $body = $requests['body'];
     $public_flag = util_cast_public_flag_diary($requests['public_flag']);
     $category = $requests['category'];
     $is_comment_input = $requests['is_comment_input'];
     // ----------
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     $upfiles = array(1 => $_FILES['upfile_1'], $_FILES['upfile_2'], $_FILES['upfile_3']);
     $tmpfiles = array(1 => '', '', '');
     $filesize = 0;
     foreach ($upfiles as $key => $upfile) {
         if (!empty($upfile) && $upfile['error'] !== UPLOAD_ERR_NO_FILE) {
             if (!($image = t_check_image($upfile))) {
                 $_REQUEST['msg'] = '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
                 openpne_forward('pc', 'page', 'h_diary_add');
                 exit;
             } else {
                 $filesize += $image['size'];
                 $tmpfiles[$key] = t_image_save2tmp($upfile, $sessid, "d_{$key}", $image['format']);
             }
         }
     }
     $category_list = array_unique(preg_split('/\\s+/', $category));
     if (count($category_list) > 5) {
         $_REQUEST['msg'] = 'カテゴリは5つまでしか指定できません';
         openpne_forward('pc', 'page', 'h_diary_add');
         exit;
     }
     foreach ($category_list as $value) {
         if (mb_strwidth($value) > 20) {
             $_REQUEST['msg'] = 'カテゴリはひとつにつき全角10文字(半角20文字)以内で入力してください';
             openpne_forward('pc', 'page', 'h_diary_add');
             exit;
         }
     }
     // 画像アップロード可能サイズチェック
     if ($filesize) {
         $result = util_image_check_add_image_upload($filesize, $u, 'diary');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $msg = util_image_get_upload_err_msg($result);
             $_REQUEST['msg'] = $msg;
             openpne_forward('pc', 'page', 'h_diary_add');
             exit;
         }
     }
     $this->set('inc_navi', fetch_inc_navi('h'));
     //プロフィール
     $this->set("member", db_member_c_member4c_member_id($u));
     $form_val = array("subject" => $subject, "body" => $body, "public_flag" => $public_flag, "upfile_1" => $_FILES['upfile_1'], "upfile_2" => $_FILES['upfile_2'], "upfile_3" => $_FILES['upfile_3'], "tmpfile_1" => $tmpfiles[1], "tmpfile_2" => $tmpfiles[2], "tmpfile_3" => $tmpfiles[3], "category" => join(" ", $category_list), "is_comment_input" => $is_comment_input);
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     if (!OPENPNE_USE_ALBUM) {
         handle_kengen_error();
     }
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_album_id = $requests['target_c_album_id'];
     $subject = $requests['subject'];
     $description = $requests['description'];
     $public_flag = $requests['public_flag'];
     // ----------
     //--- 権限チェック
     $c_album = db_album_get_c_album4c_album_id($target_c_album_id);
     if ($c_album['c_member_id'] != $u) {
         handle_kengen_error();
     }
     //---
     //写真データ一時ファイル削除
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     $upfiles = array(1 => $_FILES['upfile_1']);
     $tmpfiles = array(1 => '');
     $filesize = 0;
     foreach ($upfiles as $key => $upfile) {
         if ($upfile['error'] !== UPLOAD_ERR_NO_FILE) {
             if (!($image = t_check_image($upfile))) {
                 $_REQUEST['msg'] = '写真は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
                 openpne_forward('pc', 'page', 'h_album_cover_edit');
                 exit;
             } else {
                 $filesize += $image['size'];
                 $tmpfiles[$key] = t_image_save2tmp($upfile, $sessid, "a_{$target_c_album_id}_{$key}", $image['format']);
             }
         }
     }
     // 画像アップロード可能サイズチェック
     if ($filesize) {
         $del_file = array();
         if ($c_album['album_cover_image']) {
             $del_file[] = $c_album['album_cover_image'];
         }
         $result = util_image_check_change_image_upload($filesize, $del_file, $u, 'other');
         if ($result) {
             $sessid = session_id();
             t_image_clear_tmp($sessid);
             $_REQUEST['msg'] = util_image_get_upload_err_msg($result);
             openpne_forward('pc', 'page', 'h_album_cover_edit');
             exit;
         }
     }
     $this->set('inc_navi', fetch_inc_navi("h"));
     $form_val = array("target_c_album_id" => $target_c_album_id, "subject" => $subject, "description" => $description, "public_flag" => $public_flag, "upfile_1" => $_FILES['upfile_1'], "tmpfile_1" => $tmpfiles[1]);
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     $file = $_FILES['upfile'];
     if (empty($file) || $file['error'] === UPLOAD_ERR_NO_FILE) {
         admin_client_redirect('edit_c_image', '画像ファイルを指定してください');
     }
     if (!t_check_image($file)) {
         admin_client_redirect('edit_c_image', '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください');
     }
     db_image_data_delete($requests['filename']);
     if (!admin_insert_c_image($_FILES['upfile'], $requests['filename'])) {
         admin_client_redirect('edit_c_image', '画像が登録できませんでした');
     }
     admin_client_redirect('edit_c_image', '画像を登録しました', 'filename=' . $requests['filename']);
 }
 function execute($requests)
 {
     $upfile_obj = $_FILES['upfile'];
     if (empty($upfile_obj) || $upfile_obj['error'] === UPLOAD_ERR_NO_FILE) {
         admin_client_redirect('insert_c_banner', '画像は必ず指定してください');
     }
     if (!($image = t_check_image($upfile_obj))) {
         admin_client_redirect('insert_c_banner', '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください');
     }
     $c_banner_id = db_admin_insert_c_banner($requests['a_href'], $requests['type'], $requests['nickname']);
     $ext = t_check_image_format($upfile_obj);
     $c_banner['image_filename'] = sprintf('b_%d_%d.%s', $c_banner_id, time(), $ext);
     admin_insert_c_image($upfile_obj, $c_banner['image_filename']);
     db_admin_update_c_banner($c_banner_id, $c_banner);
     admin_client_redirect('edit_c_banner', 'バナーを追加しました');
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     $upfile_obj = $_FILES['upfile'];
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             $p = array('msg' => '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください');
             openpne_redirect('pc', 'page_h_config_image', $p);
         }
         // 画像アップロード可能サイズチェック
         $filesize = $image['size'];
         $result = util_image_check_add_image_upload($filesize, $u, 'other');
         if ($result) {
             $msg = util_image_get_upload_err_msg($result);
             $p = array('msg' => $msg);
             openpne_redirect('pc', 'page_h_config_image', $p);
         }
     } elseif (empty($upfile_obj) || $upfile_obj['error'] === UPLOAD_ERR_NO_FILE) {
         $p = array('msg' => '画像を指定してください');
         openpne_redirect('pc', 'page_h_config_image', $p);
     }
     $c_member = db_member_c_member4c_member_id($u);
     if (!$c_member['image_filename_1']) {
         $img_num = 1;
     } elseif (!$c_member['image_filename_2']) {
         $img_num = 2;
     } elseif (!$c_member['image_filename_3']) {
         $img_num = 3;
     } else {
         $p = array('msg' => '画像は3枚までアップロードできます');
         openpne_redirect('pc', 'page_h_config_image', $p);
     }
     // 画像をDBに格納
     $image_filename = image_insert_c_image_direct($upfile_obj, 'm_' . $u, $u);
     if ($image_filename) {
         if (!($image_filename == $c_member['image_filename'] || $image_filename == $c_member['image_filename_1'] || $image_filename == $c_member['image_filename_2'] || $image_filename == $c_member['image_filename_3'])) {
             // c_memberのフィールドに登録
             db_member_config_image_new($u, $image_filename, $img_num);
             // 画像1の時(最初の画像)メイン画像に
             if ($img_num == 1) {
                 db_member_change_c_member_main_image($u, 1);
             }
         }
     }
     openpne_redirect('pc', 'page_h_config_image');
 }
 function execute($requests)
 {
     $file = $_FILES['upfile'];
     $target_area = $requests['target_area'];
     $tail = 'target_area=' . $target_area;
     if (empty($file) || $file['error'] === UPLOAD_ERR_NO_FILE) {
         portal_client_redirect('edit_portal_image', '画像ファイルを指定してください', $tail);
     }
     $file_info = t_check_image($file);
     if (!$file_info) {
         portal_client_redirect('edit_portal_image', '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください', $tail);
     }
     $filename = sprintf('module_portal_%d.%s', time(), $file_info['format']);
     db_image_data_delete($filename);
     db_portal_delete_portal_image($filename);
     if (!admin_insert_c_image($_FILES['upfile'], $filename)) {
         portal_client_redirect('edit_portal_image', '画像が登録できませんでした', $tail);
     }
     db_portal_insert_portal_image($filename);
     portal_client_redirect('edit_portal_image', '画像を登録しました', $tail);
 }
 function execute($requests)
 {
     if (!OPENPNE_USE_ALBUM) {
         handle_kengen_error();
     }
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $subject = $requests['subject'];
     $description = $requests['description'];
     $public_flag = $requests['public_flag'];
     // ----------
     $upfile_obj = $_FILES['image_filename'];
     //表紙の写真
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             $err_msg[] = '写真は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         } else {
             // 画像アップロード可能サイズチェック
             $result = util_image_check_add_image_upload($image['size'], $u, 'other');
             if ($result) {
                 $err_msg[] = util_image_get_upload_err_msg($result);
             }
         }
     }
     if ($err_msg) {
         $_REQUEST['err_msg'] = $err_msg;
         openpne_forward('pc', 'page', "h_album_add");
         exit;
     }
     $this->set('inc_navi', fetch_inc_navi('h'));
     //写真をvar/tmpフォルダにコピー
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     if (file_exists($upfile_obj["tmp_name"])) {
         $tmpfile = t_image_save2tmp($upfile_obj, $sessid, "c");
     }
     $form_val = array("subject" => $subject, "description" => $description, "public_flag" => $public_flag, 'tmpfile' => $tmpfile, 'image_filename' => $upfile_obj['name']);
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     $c_banner_id = $requests['c_banner_id'];
     $upfile_obj = $_FILES['upfile'];
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             $tail = '&c_banner_id=' . $c_banner_id;
             admin_client_redirect('update_c_banner', '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください', $tail);
         }
         db_admin_delete_c_image4c_banner_id($c_banner_id);
         $ext = t_check_image_format($upfile_obj);
         $c_banner['image_filename'] = sprintf('b_%d_%d.%s', $c_banner_id, time(), $ext);
         admin_insert_c_image($upfile_obj, $c_banner['image_filename']);
     }
     $c_banner['a_href'] = $requests['a_href'];
     $c_banner['type'] = $requests['type'];
     $c_banner['nickname'] = $requests['nickname'];
     $c_banner['is_hidden_before'] = $requests['is_hidden_before'];
     $c_banner['is_hidden_after'] = $requests['is_hidden_after'];
     db_admin_update_c_banner($c_banner_id, $c_banner);
     admin_client_redirect('edit_c_banner', 'バナーを変更しました');
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $form_val['target_c_member_id'] = $requests['target_c_member_id'];
     $form_val['subject'] = $requests['subject'];
     $form_val['body'] = $requests['body'];
     $form_val['target_c_message_id'] = $requests['target_c_message_id'];
     $form_val['jyusin_c_message_id'] = $requests['jyusin_c_message_id'];
     $save = $requests['save'];
     // ----------
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     if ($form_val['target_c_member_id'] == $u) {
         // 自分にメッセージは送れない
         handle_kengen_error();
     }
     $upfiles = array(1 => $_FILES['upfile_1'], $_FILES['upfile_2'], $_FILES['upfile_3']);
     $tmpfiles = array(1 => '', '', '');
     //添付ファイル
     $upfile_4 = $_FILES['uploadfile'];
     $target_member = db_member_c_member4c_member_id($form_val['target_c_member_id']);
     if (empty($target_member)) {
         handle_kengen_error();
     }
     $filesize = 0;
     foreach ($upfiles as $key => $upfile) {
         if (!empty($upfile) && $upfile['error'] !== UPLOAD_ERR_NO_FILE) {
             if (!($image = t_check_image($upfile))) {
                 $_REQUEST['msg'] = '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
                 openpne_forward('pc', 'page', 'f_message_send');
                 exit;
             } else {
                 $filesize += $image['size'];
                 $tmpfiles[$key] = t_image_save2tmp($upfile, $sessid, "d_{$key}", $image['format']);
             }
         }
     }
     //---画像アップロードサイズチェック
     if ($filesize) {
         $result = util_image_check_add_image_upload($filesize, $u, 'other');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $_REQUEST['msg'] = util_image_get_upload_err_msg($result);
             openpne_forward('pc', 'page', 'f_message_send');
             exit;
         }
     }
     if (OPENPNE_USE_FILEUPLOAD) {
         if (!empty($upfile_4) && $upfile_4['error'] !== UPLOAD_ERR_NO_FILE) {
             // ファイルサイズ制限
             if ($upfile_4['size'] === 0 || $upfile_4['size'] > FILE_MAX_FILESIZE * 1024) {
                 $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
             }
             // 拡張子制限
             if (!util_check_file_extention($upfile_4['name'])) {
                 $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
             }
         }
     }
     $form_val['upfile_1'] = $_FILES['upfile_1'];
     $form_val['upfile_2'] = $_FILES['upfile_2'];
     $form_val['upfile_3'] = $_FILES['upfile_3'];
     $form_val['tmpfile_1'] = $tmpfiles[1];
     $form_val['tmpfile_2'] = $tmpfiles[2];
     $form_val['tmpfile_3'] = $tmpfiles[3];
     if (OPENPNE_USE_FILEUPLOAD) {
         $form_val['upfile_4'] = $upfile_4;
         $form_val['tmpfile_4'] = t_file_save2tmp($upfile_4, $sessid, "tc_4");
     }
     $target_c_member_id = $form_val['target_c_member_id'];
     if (db_member_is_access_block($u, $target_c_member_id)) {
         openpne_redirect('pc', 'page_h_access_block');
     }
     $this->set('inc_navi', fetch_inc_navi("f", $target_c_member_id));
     //ターゲット情報
     $this->set("target_member", $target_member);
     //ターゲットのid
     $this->set("target_c_member_id", $form_val['target_c_member_id']);
     $this->set("form_val", $form_val);
     //下書き保存
     if (!empty($save)) {
         //下書き保存が存在しない
         if ($form_val['target_c_message_id'] == $form_val['jyusin_c_message_id']) {
             db_message_insert_message_to_is_save($form_val['target_c_member_id'], $u, $form_val['subject'], $form_val['body'], $_REQUEST['jyusin_c_message_id']);
         } else {
             //下書き保存が存在する
             db_message_update_message_to_is_save($form_val['target_c_message_id'], $form_val['subject'], $form_val['body']);
         }
         $p = array('msg' => 2);
         openpne_redirect('pc', 'page_h_reply_message', $p);
     }
     return 'success';
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $c_commu_topic_id = $requests['target_c_commu_topic_id'];
     $body = $requests['body'];
     $title = $requests['title'];
     // ----------
     $upfile_obj1 = $_FILES['image_filename1'];
     $upfile_obj2 = $_FILES['image_filename2'];
     $upfile_obj3 = $_FILES['image_filename3'];
     $upfile_obj4 = $_FILES['filename4'];
     //--- 権限チェック
     //トピック作成者 or コミュニティ管理者
     $c_topic = db_commu_c_topic4c_commu_topic_id($c_commu_topic_id);
     $c_commu_id = $c_topic['c_commu_id'];
     if (!db_commu_is_c_topic_admin($c_commu_topic_id, $u) && !db_commu_is_c_commu_admin($c_commu_id, $u)) {
         handle_kengen_error();
     }
     $c_commu = db_commu_c_commu4c_commu_id2($c_commu_id);
     if ($c_commu['is_topic'] == 'admin_only' && !db_commu_is_c_commu_admin($c_commu_id, $u)) {
         handle_kengen_error();
     }
     if ($c_commu['is_topic'] == 'member' && !db_commu_is_c_commu_member($c_commu_id, $u)) {
         handle_kengen_error();
     }
     //---
     //エラーチェック
     $err_msg = array();
     $filesize = 0;
     $del_file = array();
     if (is_null($title) || $title === '') {
         $err_msg[] = "タイトルを入力してください";
     }
     if (is_null($body) || $body === '') {
         $err_msg[] = "本文を入力してください";
     }
     if (!empty($upfile_obj1) && $upfile_obj1['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj1))) {
             $err_msg[] = '画像1は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
         if ($c_topic['image_filename1']) {
             $del_file[] = $c_topic['image_filename1'];
         }
     }
     if (!empty($upfile_obj2) && $upfile_obj2['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj2))) {
             $err_msg[] = '画像2は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
         if ($c_topic['image_filename2']) {
             $del_file[] = $c_topic['image_filename2'];
         }
     }
     if (!empty($upfile_obj3) && $upfile_obj3['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj3))) {
             $err_msg[] = '画像3は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
         if ($c_topic['image_filename3']) {
             $del_file[] = $c_topic['image_filename3'];
         }
     }
     // 画像アップロード可能サイズチェック
     if (!$err_msg && $filesize) {
         $result = util_image_check_change_image_upload($filesize, $del_file, $u, 'commu');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if (OPENPNE_USE_FILEUPLOAD) {
         if (!empty($upfile_obj4) && $upfile_obj4['error'] !== UPLOAD_ERR_NO_FILE) {
             // ファイルサイズ制限
             if ($upfile_obj4['size'] === 0 || $upfile_obj4['size'] > FILE_MAX_FILESIZE * 1024) {
                 $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
             }
             // 拡張子制限
             if (!util_check_file_extention($upfile_obj4['name'])) {
                 $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
             }
         }
     }
     if ($err_msg) {
         $_REQUEST['err_msg'] = $err_msg;
         $_REQUEST['target_c_commu_topic_id'] = $c_commu_topic_id;
         $_REQUEST['title'] = $title;
         $_REQUEST['body'] = $body;
         openpne_forward('pc', 'page', "c_topic_edit");
         exit;
     }
     // 画像アップデート
     $filename1 = image_insert_c_image_direct($upfile_obj1, "t_{$c_commu_topic_id}_1", $u);
     $filename2 = image_insert_c_image_direct($upfile_obj2, "t_{$c_commu_topic_id}_2", $u);
     $filename3 = image_insert_c_image_direct($upfile_obj3, "t_{$c_commu_topic_id}_3", $u);
     //ファイルアップロード
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     if (OPENPNE_USE_FILEUPLOAD) {
         $tmpfile4 = t_file_save2tmp($upfile_obj4, $sessid, "t_4");
     }
     if ($tmpfile4) {
         $filename4 = file_insert_c_file4tmp("t_{$c_commu_topic_id}_4", $tmpfile4, $upfile_obj4['name']);
     }
     t_file_clear_tmp(session_id());
     $update_c_commu_topic = array('name' => $title, 'event_flag' => 0);
     db_commu_update_c_commu_topic($c_commu_topic_id, $update_c_commu_topic);
     $update_c_commu_topic_comment = array('body' => $body);
     $c_topic = db_commu_c_topic4c_commu_topic_id($c_commu_topic_id);
     if ($filename1) {
         $update_c_commu_topic_comment["image_filename1"] = $filename1;
         db_image_data_delete($c_topic['image_filename1'], $u);
     }
     if ($filename2) {
         $update_c_commu_topic_comment["image_filename2"] = $filename2;
         db_image_data_delete($c_topic['image_filename2'], $u);
     }
     if ($filename3) {
         $update_c_commu_topic_comment["image_filename3"] = $filename3;
         db_image_data_delete($c_topic['image_filename3'], $u);
     }
     if ($filename4) {
         $update_c_commu_topic_comment['filename4'] = $filename4;
         db_file_delete_c_file($c_topic['filename']);
     }
     db_commu_update_c_commu_topic_comment($c_commu_topic_id, $update_c_commu_topic_comment);
     $p = array('target_c_commu_topic_id' => $c_commu_topic_id);
     openpne_redirect('pc', 'page_c_topic_detail', $p);
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $c_commu_topic_id = $requests['target_c_commu_topic_id'];
     $body = $requests['body'];
     $button = $requests['button'];
     // ----------
     $upfile_obj1 = $_FILES['image_filename1'];
     $upfile_obj2 = $_FILES['image_filename2'];
     $upfile_obj3 = $_FILES['image_filename3'];
     //添付ファイル
     $upfile_obj4 = $_FILES['uploadfile'];
     $c_topic = db_commu_c_topic4c_commu_topic_id_2($c_commu_topic_id);
     $c_commu_id = $c_topic['c_commu_id'];
     //--- 権限チェック
     if (!db_commu_is_c_commu_view4c_commu_idAc_member_id($c_commu_id, $u)) {
         handle_kengen_error();
     }
     if (!db_commu_is_writable_c_commu_topic_comment4c_commu_topic_id($c_commu_topic_id)) {
         $err_msg[] = 'コメントが1000番に達したので、このイベントにはコメントできません';
         $_REQUEST['err_msg'] = $err_msg;
         openpne_forward('pc', 'page', "c_event_detail");
         exit;
     }
     //---
     if ($button == "イベントに参加する") {
         $event_write['add_event_member'] = 1;
     } elseif ($button == "参加をキャンセルする") {
         $event_write['add_event_member'] = -1;
     }
     //エラーチェック
     $err_msg = array();
     $filesize = 0;
     if (trim($body) == '') {
         $err_msg[] = "本文を入力してください";
     }
     if (!empty($upfile_obj1) && $upfile_obj1['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj1))) {
             $err_msg[] = '画像1は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     if (!empty($upfile_obj2) && $upfile_obj2['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj2))) {
             $err_msg[] = '画像2は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     if (!empty($upfile_obj3) && $upfile_obj3['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj3))) {
             $err_msg[] = '画像3は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     //---画像アップロードサイズチェック
     if ($filesize) {
         $result = util_image_check_add_image_upload($filesize, $u, 'commu');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if (OPENPNE_USE_FILEUPLOAD) {
         if (!empty($upfile_obj4) && $upfile_obj4['error'] !== UPLOAD_ERR_NO_FILE) {
             // ファイルサイズ制限
             if ($upfile_obj4['size'] === 0 || $upfile_obj4['size'] > FILE_MAX_FILESIZE * 1024) {
                 $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
             }
             // 拡張子制限
             if (!util_check_file_extention($upfile_obj4['name'])) {
                 $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
             }
         }
     }
     if ($event_write['add_event_member'] === 1 && $c_topic['capacity'] && $c_topic['capacity'] <= $c_topic['member_num']) {
         $err_msg[] = 'イベントの参加者数制限を超えています';
     }
     if ($event_write['add_event_member']) {
         if (!db_commu_is_event_join_date($c_commu_topic_id)) {
             $err_msg[] = '現在このイベントへの参加・キャンセルの変更はできません';
         }
     }
     if ($err_msg) {
         $_REQUEST['err_msg'] = $err_msg;
         $_REQUEST['body'] = $body;
         openpne_forward('pc', 'page', "c_event_detail");
         exit;
     }
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     t_file_clear_tmp($sessid);
     $tmpfile1 = t_image_save2tmp($upfile_obj1, $sessid, "tc_1");
     $tmpfile2 = t_image_save2tmp($upfile_obj2, $sessid, "tc_2");
     $tmpfile3 = t_image_save2tmp($upfile_obj3, $sessid, "tc_3");
     if (OPENPNE_USE_FILEUPLOAD) {
         // 一時ファイルをvar/tmpにコピー
         $tmpfile4 = t_file_save2tmp($upfile_obj4, $sessid, "tc_4");
     }
     $this->set('inc_navi', fetch_inc_navi("c", $c_commu_id));
     $event_write['target_c_commu_id'] = $c_commu_id;
     $event_write['target_c_commu_topic_id'] = $c_commu_topic_id;
     $event_write['body'] = $body;
     $event_write['image_filename1_tmpfile'] = $tmpfile1;
     $event_write['image_filename2_tmpfile'] = $tmpfile2;
     $event_write['image_filename3_tmpfile'] = $tmpfile3;
     $event_write['image_filename1'] = $upfile_obj1["name"];
     $event_write['image_filename2'] = $upfile_obj2["name"];
     $event_write['image_filename3'] = $upfile_obj3["name"];
     $event_write['filename4_tmpfile'] = $tmpfile4;
     $event_write['filename4_original_filename'] = $upfile_obj4["name"];
     $this->set('event_write', $event_write);
     return 'success';
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_commu_id = $requests['target_c_commu_id'];
     $name = $requests['name'];
     $c_commu_category_id = $requests['c_commu_category_id'];
     $info = $requests['info'];
     $is_admit = $requests['is_admit'];
     $is_open = $requests['is_open'];
     $is_topic = $requests['is_topic'];
     $is_comment = $requests['is_comment'];
     $is_send_join_mail = $requests['is_send_join_mail'];
     // ----------
     $upfile_obj = $_FILES['image_filename'];
     //--- 権限チェック
     //コミュニティ管理者
     $status = db_common_commu_status($u, $target_c_commu_id);
     if (!$status['is_commu_admin']) {
         handle_kengen_error();
     }
     //---
     $err_msg = array();
     $filesize = 0;
     $del_file = array();
     if (!$name) {
         $err_msg[] = WORD_COMMUNITY . "名を入力してください";
     }
     if (!$info) {
         $err_msg[] = WORD_COMMUNITY . "の説明を入力してください";
     }
     if (db_commu_is_changed_c_commu_name($target_c_commu_id, $name) && db_commu_is_commu4c_commu_name($name)) {
         $err_msg[] = 'その' . WORD_COMMUNITY . 'はすでに存在します';
     }
     $c_commu = db_commu_c_commu4c_commu_id($target_c_commu_id);
     if ($c_commu_category_id != $c_commu['c_commu_category_id'] && !db_commu_c_commu_category_is_create_commu($c_commu_category_id)) {
         $_REQUEST['c_commu_category_id'] = $c_commu['c_commu_category_id'];
         $err_msg[] = '指定されたカテゴリは選択できません';
     }
     if ($is_open == 'member') {
         if ($is_topic == 'public') {
             $err_msg[] = '公開範囲とトピック作成権限が指定できない組み合わせです';
         }
         if ($is_comment == 'public') {
             $err_msg[] = '公開範囲とコメント作成権限が指定できない組み合わせです';
         }
     }
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             $err_msg[] = '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize = $image['size'];
         if ($c_commu['image_filename']) {
             $del_file[] = $c_commu['image_filename'];
         }
     }
     //---画像アップロードサイズチェック
     if (!$err_msg && $filesize) {
         $result = util_image_check_change_image_upload($filesize, $del_file, $u, 'other');
         if ($result) {
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if ($err_msg) {
         $_REQUEST['err_msg'] = $err_msg;
         $_REQUEST['target_c_commu_id'] = $target_c_commu_id;
         $_REQUEST['name'] = $name;
         $_REQUEST['info'] = $info;
         openpne_forward('pc', 'page', "c_edit");
         exit;
     }
     $c_commu = db_commu_c_commu4c_commu_id($target_c_commu_id);
     //画像アップデート
     $image_filename = image_insert_c_image_direct($upfile_obj, 'c_' . $target_c_commu_id, $u);
     if ($image_filename) {
         //画像削除
         db_image_data_delete($c_commu['image_filename'], $u);
     }
     // 承認待ちメンバー登録処理
     if ($is_admit == 'public' && $is_admit != $c_commu['is_admit']) {
         $member_confirm_list = db_commu_c_commu_member_confirm4c_commu_id($target_c_commu_id);
         foreach ($member_confirm_list as $confirm_id => $c_member_id) {
             db_commu_join_c_commu($target_c_commu_id, $c_member_id);
             do_inc_join_c_commu_send_mail($target_c_commu_id, $c_member_id);
             db_commu_delete_c_commu_member_confirm($confirm_id);
         }
     }
     db_commu_update_c_commu($target_c_commu_id, $name, $is_topic, $is_comment, $c_commu_category_id, $info, $is_admit, $is_open, $image_filename, $is_send_join_mail);
     $p = array('target_c_commu_id' => $target_c_commu_id);
     openpne_redirect('pc', 'page_c_home', $p);
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $c_commu_id = $requests['target_c_commu_id'];
     $title = $requests['title'];
     $body = $requests['body'];
     // ----------
     //--- 権限チェック
     $c_commu = db_commu_c_commu4c_commu_id2($c_commu_id);
     switch ($c_commu['is_topic']) {
         case 'public':
             //誰でも作成可能
             break;
         case 'member':
             if (!db_commu_is_c_commu_view4c_commu_idAc_member_id($c_commu_id, $u)) {
                 handle_kengen_error();
             }
             break;
         case 'admin_only':
             //トピック作成権限チェック
             if (!db_commu_is_c_commu_admin($c_commu_id, $u)) {
                 handle_kengen_error();
             }
             break;
     }
     //画像ファイル
     $upfile_obj1 = $_FILES['image_filename1'];
     $upfile_obj2 = $_FILES['image_filename2'];
     $upfile_obj3 = $_FILES['image_filename3'];
     //添付ファイル
     $upfile_obj4 = $_FILES['uploadfile'];
     $err_msg = array();
     $filesize = 0;
     if (!empty($upfile_obj1) && $upfile_obj1['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj1))) {
             $err_msg[] = '画像1は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     if (!empty($upfile_obj2) && $upfile_obj2['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj2))) {
             $err_msg[] = '画像2は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     if (!empty($upfile_obj3) && $upfile_obj3['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj3))) {
             $err_msg[] = '画像3は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     // 画像アップロードサイズチェック
     if ($filesize) {
         $result = util_image_check_add_image_upload($filesize, $u, 'commu');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if (OPENPNE_USE_FILEUPLOAD) {
         if (!empty($upfile_obj4) && $upfile_obj4['error'] !== UPLOAD_ERR_NO_FILE) {
             // ファイルサイズ制限
             if ($upfile_obj4['size'] === 0 || $upfile_obj4['size'] > FILE_MAX_FILESIZE * 1024) {
                 $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
             }
             // 拡張子制限
             if (!util_check_file_extention($upfile_obj4['name'])) {
                 $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
             }
         }
     }
     if ($err_msg) {
         $_REQUEST['err_msg'] = $err_msg;
         openpne_forward('pc', 'page', "c_topic_add");
         exit;
     }
     $sessid = session_id();
     //-----
     t_image_clear_tmp($sessid);
     t_file_clear_tmp($sessid);
     //画像をvar/tmpフォルダにコピー
     $tmpfile1 = t_image_save2tmp($upfile_obj1, $sessid, "t_1");
     $tmpfile2 = t_image_save2tmp($upfile_obj2, $sessid, "t_2");
     $tmpfile3 = t_image_save2tmp($upfile_obj3, $sessid, "t_3");
     if (OPENPNE_USE_FILEUPLOAD) {
         // 一次ファイルをvar/tmpにコピー
         $tmpfile4 = t_file_save2tmp($upfile_obj4, $sessid, "t_4");
     }
     $this->set('inc_navi', fetch_inc_navi("c", $c_commu_id));
     $c_topic = array('c_commu_id' => $c_commu_id, 'title' => $title, 'body' => $body, 'image_filename1_tmpfile' => $tmpfile1, 'image_filename2_tmpfile' => $tmpfile2, 'image_filename3_tmpfile' => $tmpfile3, 'image_filename1' => $upfile_obj1["name"], 'image_filename2' => $upfile_obj2["name"], 'image_filename3' => $upfile_obj3["name"], 'filename4_tmpfile' => $tmpfile4, 'filename4_original_filename' => $upfile_obj4["name"]);
     $this->set('c_topic', $c_topic);
     return 'success';
 }
function biz_saveImage($upfile, $filename, $c_member_id = 0, $deletefile = '')
{
    if (!$upfile) {
        $image = array('filename' => false, 'up_size_chk_result' => 0);
        return $image;
    }
    if (!$filename) {
        $image = array('filename' => false, 'up_size_chk_result' => 0);
        return $image;
    }
    if (!t_check_image($upfile)) {
        $image = array('filename' => false, 'up_size_chk_result' => 0);
        return $image;
    }
    $image = t_check_image($upfile);
    $filepath = $upfile["tmp_name"];
    $path_parts = pathinfo($upfile["name"]);
    $ext = $path_parts["extension"];
    $ext = strtolower($ext);
    $filename = $filename . "_" . time() . "." . $ext;
    $fp = fopen($filepath, "rb");
    $image_data = fread($fp, filesize($filepath));
    fclose($fp);
    // 画像かどうかのチェック
    if (!@imagecreatefromstring($image_data)) {
        $image = array('filename' => false, 'up_size_chk_result' => 0);
        return $image;
    }
    // アップロード可能サイズかチェック
    if (!$deletefile) {
        // 画像追加
        $result = util_image_check_add_image_upload(filesize($filepath), $c_member_id, 'other');
        if ($result) {
            $image = array('filename' => false, 'up_size_chk_result' => $result);
            return $image;
        }
    } else {
        // 画像置換
        $del_files = array($deletefile);
        $result = util_image_check_change_image_upload(filesize($filepath), $del_files, $c_member_id, 'other');
        if ($result) {
            $image = array('filename' => false, 'up_size_chk_result' => $result);
            return $image;
        }
    }
    $image_data = base64_encode($image_data);
    $sql = "INSERT INTO c_image (filename, bin, r_datetime, type)" . " VALUES (?, ?, NOW(), ?)";
    $params = array($filename, $image_data, $image['format']);
    $result = db_query($sql, $params);
    if ($result) {
        db_image_insert_c_image_size($filename, $c_member_id, filesize($filepath));
    }
    $image = array('filename' => $filename, 'up_size_chk_result' => 0);
    return $image;
}
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $c_commu_topic_id = $requests['target_c_commu_topic_id'];
     // ----------
     $upfile_obj1 = $_FILES['image_filename1'];
     $upfile_obj2 = $_FILES['image_filename2'];
     $upfile_obj3 = $_FILES['image_filename3'];
     $upfile_obj4 = $_FILES['filename4'];
     list($event, $errors) = p_c_event_add_confirm_event4request(true);
     if ($event['invite_period_year'] . $event['invite_period_month'] . $event['invite_period_day'] != '') {
         $invite_period = $event['invite_period_year'] . "-" . $event['invite_period_month'] . "-" . $event['invite_period_day'];
     } else {
         $invite_period = "";
     }
     $c_commu_id = $event['c_commu_id'];
     //--- 権限チェック
     //イベント管理者 or コミュニティ管理者
     if (!db_commu_is_c_event_admin($c_commu_topic_id, $u) && !db_commu_is_c_commu_admin($c_commu_id, $u)) {
         handle_kengen_error();
     }
     $c_commu = db_commu_c_commu4c_commu_id2($c_commu_id);
     if ($c_commu['is_topic'] == 'admin_only' && !db_commu_is_c_commu_admin($c_commu_id, $u)) {
         handle_kengen_error();
     }
     if ($c_commu['is_topic'] == 'member' && !db_commu_is_c_commu_member($c_commu_id, $u)) {
         handle_kengen_error();
     }
     //---
     //エラーチェック
     $err_msg = $errors;
     $filesize = 0;
     $del_file = array();
     if (!$event['open_date_month'] || !$event['open_date_day'] || !$event['open_date_year']) {
         $err_msg[] = "開催日時を入力してください";
     } elseif (!t_checkdate($event['open_date_month'], $event['open_date_day'], $event['open_date_year'])) {
         $err_msg[] = "開催日時は存在しません";
     } elseif (mktime(0, 0, 0, $event['open_date_month'], $event['open_date_day'], $event['open_date_year']) < mktime(0, 0, 0)) {
         $err_msg[] = "開催日時は過去に指定できません";
     }
     if ($event['invite_period_month'] . $event['invite_period_day'] . $event['invite_period_year'] != "") {
         if (!$event['invite_period_month'] || !$event['invite_period_day'] || !$event['invite_period_year']) {
             $err_msg[] = "募集期限は存在しません";
         } elseif (!t_checkdate($event['invite_period_month'], $event['invite_period_day'], $event['invite_period_year'])) {
             $err_msg[] = "募集期限は存在しません";
         } elseif (mktime(0, 0, 0, $event['invite_period_month'], $event['invite_period_day'], $event['invite_period_year']) < mktime(0, 0, 0)) {
             $err_msg[] = "募集期限は過去に指定できません";
         } elseif (mktime(0, 0, 0, $event['open_date_month'], $event['open_date_day'], $event['open_date_year']) < mktime(0, 0, 0, $event['invite_period_month'], $event['invite_period_day'], $event['invite_period_year'])) {
             $err_msg[] = "募集期限は開催日時より未来に指定できません";
         }
     }
     $c_topic = db_commu_c_topic4c_commu_topic_id_2($c_commu_topic_id);
     if (!empty($upfile_obj1) && $upfile_obj1['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj1))) {
             $err_msg[] = '画像1は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
         if ($c_topic['image_filename1']) {
             $del_file[] = $c_topic['image_filename1'];
         }
     }
     if (!empty($upfile_obj2) && $upfile_obj2['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj2))) {
             $err_msg[] = '画像2は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
         if ($c_topic['image_filename2']) {
             $del_file[] = $c_topic['image_filename2'];
         }
     }
     if (!empty($upfile_obj3) && $upfile_obj3['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj3))) {
             $err_msg[] = '画像3は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
         if ($c_topic['image_filename3']) {
             $del_file[] = $c_topic['image_filename3'];
         }
     }
     // 画像アップロード可能サイズチェック
     if (!$err_msg && $filesize) {
         $result = util_image_check_change_image_upload($filesize, $del_file, $u, 'commu');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if (OPENPNE_USE_FILEUPLOAD) {
         if (!empty($upfile_obj4) && $upfile_obj4['error'] !== UPLOAD_ERR_NO_FILE) {
             // ファイルサイズ制限
             if ($upfile_obj4['size'] === 0 || $upfile_obj4['size'] > FILE_MAX_FILESIZE * 1024) {
                 $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
             }
             // 拡張子制限
             if (!util_check_file_extention($upfile_obj4['name'])) {
                 $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
             }
         }
     }
     if ($err_msg) {
         $_REQUEST = $event;
         $_REQUEST['err_msg'] = $err_msg;
         $_REQUEST['target_c_commu_topic_id'] = $c_commu_topic_id;
         openpne_forward('pc', 'page', "c_event_edit");
         exit;
     }
     // 画像アップデート
     $filename1 = image_insert_c_image_direct($upfile_obj1, "t_{$c_commu_topic_id}_1", $u);
     $filename2 = image_insert_c_image_direct($upfile_obj2, "t_{$c_commu_topic_id}_2", $u);
     $filename3 = image_insert_c_image_direct($upfile_obj3, "t_{$c_commu_topic_id}_3", $u);
     //ファイルアップロード
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     if (OPENPNE_USE_FILEUPLOAD) {
         $tmpfile4 = t_file_save2tmp($upfile_obj4, $sessid, "t_4");
     }
     if ($tmpfile4) {
         $filename4 = file_insert_c_file4tmp("t_{$c_commu_topic_id}_4", $tmpfile4, $upfile_obj4['name']);
     }
     t_file_clear_tmp(session_id());
     $update_c_commu_topic = array('name' => $event['title'], 'open_date' => $event['open_date_year'] . "-" . $event['open_date_month'] . "-" . $event['open_date_day'], 'open_date_comment' => $event['open_date_comment'], 'open_pref_id' => $event['open_pref_id'], 'open_pref_comment' => $event['open_pref_comment'], 'invite_period' => $invite_period, 'event_flag' => 1, 'capacity' => $event['capacity']);
     db_commu_update_c_commu_topic($c_commu_topic_id, $update_c_commu_topic);
     $update_c_commu_topic_comment = array('body' => $event['detail']);
     // 画像アップロード可能サイズチェックで使用するため移動
     //        $c_topic = db_commu_c_topic4c_commu_topic_id_2($c_commu_topic_id);
     if ($filename1) {
         $update_c_commu_topic_comment["image_filename1"] = $filename1;
         db_image_data_delete($c_topic['image_filename1'], $u);
     }
     if ($filename2) {
         $update_c_commu_topic_comment["image_filename2"] = $filename2;
         db_image_data_delete($c_topic['image_filename2'], $u);
     }
     if ($filename3) {
         $update_c_commu_topic_comment["image_filename3"] = $filename3;
         db_image_data_delete($c_topic['image_filename3'], $u);
     }
     if ($filename4) {
         $update_c_commu_topic_comment['filename4'] = $filename4;
         db_file_delete_c_file($c_topic['filename']);
     }
     db_commu_update_c_commu_topic_comment($c_commu_topic_id, $update_c_commu_topic_comment);
     $p = array('target_c_commu_topic_id' => $c_commu_topic_id);
     openpne_redirect('pc', 'page_c_event_detail', $p);
 }
 function execute($requests)
 {
     if (!OPENPNE_USE_ALBUM) {
         handle_kengen_error();
     }
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_album_image_id = $requests['target_c_album_image_id'];
     $image_description = $requests['image_description'];
     // ----------
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     // アルバムの写真データ取得
     $c_album_image = db_album_image_get_c_album_image4id($target_c_album_image_id);
     $target_c_album_id = $c_album_image['c_album_id'];
     //アルバムデータ取得
     $c_album = db_album_get_c_album4c_album_id($target_c_album_id);
     //--- 権限チェック
     if ($u != $c_album['c_member_id']) {
         handle_kengen_error();
     }
     $upfile = $_FILES['upfile_1'];
     $tmpfile = '';
     if ($upfile['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile))) {
             $_REQUEST['msg'] = '写真は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
             openpne_forward('pc', 'page', 'h_album_image_edit');
             exit;
         }
         $tmpfile = t_image_save2tmp($upfile, $sessid, "a_{$target_c_album_id}_1", $image['format']);
         // 画像アップロード可能サイズチェック
         $del_file = array();
         if ($c_album_image['image_filename']) {
             $del_file[] = $c_album_image['image_filename'];
         }
         $result = util_image_check_change_image_upload($image['size'], $del_file, $u, 'album');
         if ($result) {
             t_image_clear_tmp($sessid);
             $msg = util_image_get_upload_err_msg($result);
             $p = array('msg' => $msg, 'target_c_album_id' => $target_c_album_id, 'target_c_album_image_id' => $target_c_album_image_id);
             openpne_redirect('pc', 'page_h_album_image_edit', $p);
         }
         // 置き換えたときのファイルサイズを出すために、追加ファイルサイズから置き換わるファイルサイズを減算
         $filesize = $upfile['size'] - $c_album_image['filesize'];
         if (!db_album_is_insertable4c_member_id($u, $filesize)) {
             t_image_clear_tmp($sessid);
             $msg = 'これ以上写真を投稿することができません。';
             if (!db_album_is_insertable4c_member_id($u)) {
                 $msg .= '登録済みの写真を削除してからやり直してください。';
             } else {
                 $msg .= 'ファイルサイズを変更してやり直してください。';
             }
             $p = array('msg' => $msg, 'target_c_album_id' => $target_c_album_id, 'target_c_album_image_id' => $target_c_album_image_id);
             openpne_redirect('pc', 'page_h_album_image_edit', $p);
         }
     }
     $this->set('inc_navi', fetch_inc_navi("h"));
     $form_val = array("target_c_album_id" => $target_c_album_id, "target_c_album_image_id" => $target_c_album_image_id, "image_description" => $image_description, "upfile_1" => $upfile, "tmpfile_1" => $tmpfile);
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_diary_id = $requests['target_c_diary_id'];
     $body = $requests['body'];
     // ----------
     $target_diary = db_diary_get_c_diary4id($target_c_diary_id);
     $target_c_member_id = $target_diary['c_member_id'];
     if (!$target_c_member_id) {
         $target_c_member_id = $u;
     }
     if ($target_c_member_id == $u) {
         $type = 'h';
     } else {
         $type = 'f';
         $target_c_member = db_member_c_member4c_member_id($target_c_member_id);
         // check public_flag
         if (!pne_check_diary_public_flag($target_c_diary_id, $u)) {
             openpne_redirect('pc', 'page_h_err_diary_access');
         }
         // アクセスブロック
         if (db_member_is_access_block($u, $target_c_member_id)) {
             openpne_redirect('pc', 'page_h_access_block');
         }
     }
     //日記コメント停止設定
     if (OPENPNE_USE_DIARY_COMMENT && !$target_diary['is_comment_input']) {
         openpne_forward('pc', 'page', 'fh_diary');
         exit;
     }
     if (!db_diary_is_writable_comment4c_diary_id($target_c_diary_id)) {
         $_REQUEST['msg'] = 'コメントが1000番に達したので、この' . WORD_DIARY . 'にはコメントできません';
         openpne_forward('pc', 'page', 'fh_diary');
         exit;
     }
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     $upfiles = array(1 => $_FILES['upfile_1'], $_FILES['upfile_2'], $_FILES['upfile_3']);
     $tmpfiles = array(1 => '', '', '');
     $filesize = 0;
     foreach ($upfiles as $key => $upfile) {
         if (!empty($upfile) && $upfile['error'] !== UPLOAD_ERR_NO_FILE) {
             if (!($image = t_check_image($upfile))) {
                 $_REQUEST['msg'] = '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
                 openpne_forward('pc', 'page', 'fh_diary');
                 exit;
             } else {
                 $filesize += $image['size'];
                 $tmpfiles[$key] = t_image_save2tmp($upfile, $sessid, "dc_{$key}", $image['format']);
             }
         }
     }
     //---画像アップロードサイズチェック
     if ($filesize) {
         $result = util_image_check_add_image_upload($filesize, $u, 'diary');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $_REQUEST['msg'] = util_image_get_upload_err_msg($result);
             openpne_forward('pc', 'page', 'fh_diary');
             exit;
         }
     }
     $this->set('inc_navi', fetch_inc_navi($type, $target_c_member_id));
     $form_val = array("target_c_diary_id" => $target_c_diary_id, "body" => $body, "upfile_1" => $_FILES['upfile_1'], "upfile_2" => $_FILES['upfile_2'], "upfile_3" => $_FILES['upfile_3'], "tmpfile_1" => $tmpfiles[1], "tmpfile_2" => $tmpfiles[2], "tmpfile_3" => $tmpfiles[3]);
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     if (!OPENPNE_USE_ALBUM) {
         handle_kengen_error();
     }
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_album_id = $requests['target_c_album_id'];
     $subject = $requests['subject'];
     $image_description1 = $requests['image_description1'];
     $image_description2 = $requests['image_description2'];
     $image_description3 = $requests['image_description3'];
     $image_description4 = $requests['image_description4'];
     $image_description5 = $requests['image_description5'];
     // ----------
     $c_album = db_album_get_c_album4c_album_id($target_c_album_id);
     if ($c_album['c_member_id'] != $u) {
         handle_kengen_error();
     }
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     $upfiles = array(1 => $_FILES['upfile_1'], $_FILES['upfile_2'], $_FILES['upfile_3'], $_FILES['upfile_4'], $_FILES['upfile_5']);
     $tmpfiles = array(1 => '', '', '', '', '');
     $is_set_file = false;
     foreach ($upfiles as $key => $upfile) {
         if ($upfile['name']) {
             $is_set_file = true;
             break;
         }
     }
     if (!$is_set_file) {
         $_REQUEST['msg'] = '写真を指定してください';
         openpne_forward('pc', 'page', 'h_album_image_add');
         exit;
     }
     $filesize_all = 0;
     foreach ($upfiles as $key => $upfile) {
         if ($upfile['error'] !== UPLOAD_ERR_NO_FILE) {
             if (!($image = t_check_image($upfile))) {
                 $_REQUEST['msg'] = '写真は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
                 openpne_forward('pc', 'page', 'h_album_image_add');
                 exit;
             } else {
                 $filesize_all += $image['size'];
                 $tmpfiles[$key] = t_image_save2tmp($upfile, $sessid, "a_{$target_c_album_id}_{$key}", $image['format']);
             }
         }
     }
     // 画像アップロード可能サイズチェック
     $result = util_image_check_add_image_upload($filesize_all, $u, 'album');
     if ($result) {
         if ($result == 2) {
             $result = 3;
         }
         t_image_clear_tmp($sessid);
         $msg = util_image_get_upload_err_msg($result);
         $p = array('msg' => $msg, 'target_c_album_id' => $target_c_album_id);
         openpne_redirect('pc', 'page_h_album_image_add', $p);
     }
     if (!db_album_is_insertable4c_member_id($u, $filesize_all)) {
         t_image_clear_tmp($sessid);
         $msg = 'これ以上写真を投稿することができません。';
         if (!db_album_is_insertable4c_member_id($u)) {
             $msg .= '登録済みの写真を削除してからやり直してください。';
         } else {
             $msg .= '投稿する写真を減らすか、ファイルサイズを変更してやり直してください。';
         }
         $p = array('msg' => $msg, 'target_c_album_id' => $target_c_album_id);
         openpne_redirect('pc', 'page_h_album_image_add', $p);
     }
     $this->set('inc_navi', fetch_inc_navi('h'));
     $form_val = array("target_c_album_id" => $target_c_album_id, "subject" => $subject, "upfile_1" => $_FILES['upfile_1'], "upfile_2" => $_FILES['upfile_2'], "upfile_3" => $_FILES['upfile_3'], "upfile_4" => $_FILES['upfile_4'], "upfile_5" => $_FILES['upfile_5'], "tmpfile_1" => $tmpfiles[1], "tmpfile_2" => $tmpfiles[2], "tmpfile_3" => $tmpfiles[3], "tmpfile_4" => $tmpfiles[4], "tmpfile_5" => $tmpfiles[5]);
     //ファイル写真を指定しているものだけ説明文を設定
     foreach ($tmpfiles as $key => $tmpfile) {
         $name = "image_description{$key}";
         if ($tmpfile) {
             $form_val["{$name}"] = ${$name};
         }
     }
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $name = $requests['name'];
     $c_commu_category_id = $requests['c_commu_category_id'];
     $info = $requests['info'];
     $is_admit = $requests['is_admit'];
     $is_open = $requests['is_open'];
     // ----------
     $upfile_obj = $_FILES['image_filename'];
     //Category Check
     if (!db_commu_c_commu_category4is_create_commu()) {
         openpne_redirect('pc', 'page_h_err_c_commu_add');
     }
     //TODO:
     $err_msg = array();
     if (db_commu_is_commu4c_commu_name($name)) {
         $err_msg[] = 'その' . WORD_COMMUNITY . 'はすでに存在します';
     }
     if (!db_commu_c_commu_category_is_create_commu($c_commu_category_id)) {
         $err_msg[] = '指定されたカテゴリは選択できません';
     }
     if (!empty($upfile_obj) && $upfile_obj['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj))) {
             $err_msg[] = '画像は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         // 画像アップロード可能サイズチェック
         $filesize = $image['size'];
         $result = util_image_check_add_image_upload($filesize, $u, 'other');
         if ($result) {
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if ($err_msg) {
         $_REQUEST['err_msg'] = $err_msg;
         openpne_forward('pc', 'page', "h_com_add");
         exit;
     }
     //-----
     $this->set('inc_navi', fetch_inc_navi('h'));
     $c_commu_category_list = db_commu_c_commu_category4null();
     $public_flag_list = array('is_admit' => array('public' => '誰でも参加可能', 'auth' => '管理者の承認が必要'), 'is_open' => array('public' => '全員に公開', 'member' => WORD_COMMUNITY . '参加者にのみ公開'));
     foreach ($c_commu_category_list as $each_c_commu_categfory) {
         if ($each_c_commu_categfory['c_commu_category_id'] == $c_commu_category_id) {
             $c_commu_category_value = $each_c_commu_categfory['name'];
         }
     }
     $is_admit_value = $public_flag_list['is_admit'][$is_admit];
     $is_open_value = $public_flag_list['is_open'][$is_open];
     $this->set("c_commu_category_value", $c_commu_category_value);
     $this->set("is_admit_value", $is_admit_value);
     $this->set("is_open_value", $is_open_value);
     //画像をvar/tmpフォルダにコピー
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     if (file_exists($upfile_obj["tmp_name"])) {
         $tmpfile = t_image_save2tmp($upfile_obj, $sessid, "c");
     }
     $form_val = array('name' => $name, 'c_commu_category_id' => $c_commu_category_id, 'info' => $info, 'is_admit' => $is_admit, 'is_open' => $is_open, 'tmpfile' => $tmpfile, 'image_filename' => $upfile_obj['name']);
     $this->set("form_val", $form_val);
     return 'success';
 }
 function execute($requests)
 {
     $u = $GLOBALS['AUTH']->uid();
     // --- リクエスト変数
     $target_c_commu_id = $requests['target_c_commu_id'];
     // ----------
     //--- 権限チェック
     $c_commu = db_commu_c_commu4c_commu_id2($target_c_commu_id);
     switch ($c_commu['is_topic']) {
         case 'public':
             //誰でも作成可能
             break;
         case 'member':
             //コミュニティメンバー
             if (!db_commu_is_c_commu_member($target_c_commu_id, $u)) {
                 handle_kengen_error();
             }
             break;
         case 'admin_only':
             //トピック作成権限チェック
             if (!db_commu_is_c_commu_admin($target_c_commu_id, $u)) {
                 handle_kengen_error();
             }
             break;
     }
     //---
     list($event, $errors) = p_c_event_add_confirm_event4request(true);
     $upfile_obj1 = $_FILES['image_filename1'];
     $upfile_obj2 = $_FILES['image_filename2'];
     $upfile_obj3 = $_FILES['image_filename3'];
     $upfile_obj4 = $_FILES['uploadfile'];
     // エラーチェック
     $err_msg = $errors;
     $filesize = 0;
     if (!$event['open_date_month'] || !$event['open_date_day'] || !$event['open_date_year']) {
         $err_msg[] = "開催日時を入力してください";
     } elseif (!t_checkdate($event['open_date_month'], $event['open_date_day'], $event['open_date_year'])) {
         $err_msg[] = "開催日時は存在しません";
     } elseif (mktime(0, 0, 0, $event['open_date_month'], $event['open_date_day'], $event['open_date_year']) < mktime(0, 0, 0)) {
         $err_msg[] = "開催日時は過去に指定できません";
     }
     if ($event['invite_period_month'] . $event['invite_period_day'] . $event['invite_period_year'] != "") {
         if (!$event['invite_period_month'] || !$event['invite_period_day'] || !$event['invite_period_year']) {
             $err_msg[] = "募集期限は存在しません";
         } elseif (!t_checkdate($event['invite_period_month'], $event['invite_period_day'], $event['invite_period_year'])) {
             $err_msg[] = "募集期限は存在しません";
         } elseif (mktime(0, 0, 0, $event['invite_period_month'], $event['invite_period_day'], $event['invite_period_year']) < mktime(0, 0, 0)) {
             $err_msg[] = "募集期限は過去に指定できません";
         } elseif (mktime(0, 0, 0, $event['open_date_month'], $event['open_date_day'], $event['open_date_year']) < mktime(0, 0, 0, $event['invite_period_month'], $event['invite_period_day'], $event['invite_period_year'])) {
             $err_msg[] = "募集期限は開催日時より未来に指定できません";
         }
     }
     if (!empty($upfile_obj1) && $upfile_obj1['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj1))) {
             $err_msg[] = '画像1は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     if (!empty($upfile_obj2) && $upfile_obj2['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj2))) {
             $err_msg[] = '画像2は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     if (!empty($upfile_obj3) && $upfile_obj3['error'] !== UPLOAD_ERR_NO_FILE) {
         if (!($image = t_check_image($upfile_obj3))) {
             $err_msg[] = '画像3は' . IMAGE_MAX_FILESIZE . 'KB以内のGIF・JPEG・PNGにしてください';
         }
         $filesize += $image['size'];
     }
     // 画像アップロード可能サイズチェック
     if ($filesize) {
         $result = util_image_check_add_image_upload($filesize, $u, 'commu');
         if ($result) {
             if ($result == 2) {
                 $result = 3;
             }
             $err_msg[] = util_image_get_upload_err_msg($result);
         }
     }
     if (OPENPNE_USE_FILEUPLOAD) {
         if (!empty($upfile_obj4) && $upfile_obj4['error'] !== UPLOAD_ERR_NO_FILE) {
             // ファイルサイズ制限
             if ($upfile_obj4['size'] === 0 || $upfile_obj4['size'] > FILE_MAX_FILESIZE * 1024) {
                 $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
             }
             // 拡張子制限
             if (!util_check_file_extention($upfile_obj4['name'])) {
                 $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
             }
         }
     }
     if ($err_msg) {
         $_REQUEST = $event;
         $_REQUEST['target_c_commu_id'] = $event['c_commu_id'];
         $_REQUEST['err_msg'] = $err_msg;
         openpne_forward('pc', 'page', "c_event_add");
         exit;
     }
     //画像をvar/tmpフォルダにコピー
     $sessid = session_id();
     t_image_clear_tmp($sessid);
     $tmpfile1 = t_image_save2tmp($upfile_obj1, $sessid, "t_1");
     $tmpfile2 = t_image_save2tmp($upfile_obj2, $sessid, "t_2");
     $tmpfile3 = t_image_save2tmp($upfile_obj3, $sessid, "t_3");
     if (OPENPNE_USE_FILEUPLOAD) {
         // 一次ファイルをvar/tmpにコピー
         $tmpfile4 = t_file_save2tmp($upfile_obj4, $sessid, "t_4");
     }
     $this->set('inc_navi', fetch_inc_navi("c", $target_c_commu_id));
     $pref_list = p_regist_prof_c_profile_pref_list4null();
     $event = p_c_event_add_confirm_event4request();
     $event['open_pref_value'] = $pref_list[$event['open_pref_id']];
     $event['image_filename1_tmpfile'] = $tmpfile1;
     $event['image_filename2_tmpfile'] = $tmpfile2;
     $event['image_filename3_tmpfile'] = $tmpfile3;
     $event['filename4_tmpfile'] = $tmpfile4;
     $event['image_filename1'] = $upfile_obj1['name'];
     $event['image_filename2'] = $upfile_obj2['name'];
     $event['image_filename3'] = $upfile_obj3['name'];
     $event['filename4_original_filename'] = $upfile_obj4['name'];
     $this->set('event', $event);
     return 'success';
 }