function execute($requests) { $u = $GLOBALS['KTAI_C_MEMBER_ID']; // --- リクエスト変数 $target_c_commu_id = $requests['target_c_commu_id']; // ---------- $c_commu = db_commu_c_commu4c_commu_id($target_c_commu_id); //--- 権限チェック if ($c_commu['c_member_id_admin'] != $u && $c_commu['c_member_id_sub_admin'] != $u) { handle_kengen_error(); } //--- //カテゴリのリスト $c_commu_category_list = db_commu_c_commu_category4is_create_commu($c_commu['c_commu_category_id']); // 現在設定されているカテゴリが作成不可ならば、別途取得 if (!db_commu_c_commu_category_is_create_commu($c_commu['c_commu_category_id'])) { array_push($c_commu_category_list, db_commu_get_c_commu_category4id($c_commu['c_commu_category_id'])); asort($c_commu_category_list); } $this->set('c_commu_category_list', $c_commu_category_list); $this->set('is_topic', db_commu_is_topic4c_commu_id($target_c_commu_id)); $this->set('c_commu', $c_commu); if ($c_commu['c_member_id_sub_admin'] == $u) { $this->set('is_sub_admin', 1); } return 'success'; }
function execute($requests) { $tail = $GLOBALS['KTAI_URL_TAIL']; $u = $GLOBALS['KTAI_C_MEMBER_ID']; // --- リクエスト変数 $c_commu_category_id = $requests['c_commu_category_id']; $name = $requests['name']; $info = $requests['info']; $is_admit = $requests['is_admit']; $is_open = $requests['is_open']; if (db_commu_is_commu4c_commu_name($name)) { $p = array('msg' => 49); openpne_redirect('ktai', 'page_h_com_add', $p); } if (!db_commu_c_commu_category_is_create_commu($c_commu_category_id)) { $p = array('msg' => 50); openpne_redirect('ktai', 'page_h_com_add', $p); } // ---------- $c_member_id = $u; $c_commu_id = db_commu_insert_c_commu($c_member_id, $name, $c_commu_category_id, $info, $is_admit, $is_open); //作成者をコミュメンバーにする db_commu_join_c_commu($c_commu_id, $c_member_id); $p = array('target_c_commu_id' => $c_commu_id); openpne_redirect('ktai', 'page_c_home', $p); }
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']; $err_msg = $requests['err_msg']; // ---------- //--- 権限チェック //コミュニティ管理者 if (!db_commu_is_c_commu_admin($target_c_commu_id, $u)) { handle_kengen_error(); } //--- $this->set('inc_navi', fetch_inc_navi('c', $target_c_commu_id)); //コミュニティデータ取得 $c_commu = db_commu_c_commu4c_commu_id($target_c_commu_id); $c_commu_category_id_now = $c_commu['c_commu_category_id']; if ($name) { $c_commu['name'] = $name; } if ($c_commu_category_id) { $c_commu['c_commu_category_id'] = $c_commu_category_id; } if ($info) { $c_commu['info'] = $info; } if ($public_flag) { $c_commu['public_flag'] = $public_flag; } $this->set('target_c_commu_id', $target_c_commu_id); if ($err_msg) { $c_commu['name'] = $name; $c_commu['info'] = $info; } $this->set('c_commu', $c_commu); // カテゴリリスト $c_commu_category_list = db_commu_c_commu_category4is_create_commu(); // 現在設定されているカテゴリが作成不可ならば、別途取得 if (!db_commu_c_commu_category_is_create_commu($c_commu_category_id_now)) { array_push($c_commu_category_list, db_commu_get_c_commu_category4id($c_commu_category_id_now)); asort($c_commu_category_list); } $this->set('c_commu_category_list', $c_commu_category_list); $this->set('is_topic', db_commu_is_topic4c_commu_id($target_c_commu_id)); $this->set('err_msg', $err_msg); $this->set('is_unused_join_commu', util_is_unused_mail('m_pc_join_commu')); return 'success'; }
function execute($requests) { $tail = $GLOBALS['KTAI_URL_TAIL']; $u = $GLOBALS['KTAI_C_MEMBER_ID']; // --- リクエスト変数 $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']; if (db_commu_is_changed_c_commu_name($target_c_commu_id, $name) && db_commu_is_commu4c_commu_name($name)) { $p = array('target_c_commu_id' => $target_c_commu_id, 'msg' => 49); openpne_redirect('ktai', 'page_c_edit', $p); } $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)) { $p = array('target_c_commu_id' => $target_c_commu_id, 'msg' => 50); openpne_redirect('ktai', 'page_c_edit', $p); } if ($is_open == 'member') { if ($is_topic == 'public') { $p = array('target_c_commu_id' => $target_c_commu_id, 'msg' => 53); openpne_redirect('ktai', 'page_c_edit', $p); } if ($is_comment == 'public') { $p = array('target_c_commu_id' => $target_c_commu_id, 'msg' => 54); openpne_redirect('ktai', 'page_c_edit', $p); } } // ---------- //--- 権限チェック //コミュニティ管理者 $status = db_common_commu_status($u, $target_c_commu_id); if (!$status['is_commu_admin']) { handle_kengen_error(); } //--- // 承認待ちメンバー登録処理 $c_commu = db_commu_c_commu4c_commu_id($target_c_commu_id); if ($is_admit == 'public' && $is_admit != $c_commu['is_admit']) { $c_commu_member_confirm_list = db_commu_c_commu_member_confirm4c_commu_id($target_c_commu_id); foreach ($c_commu_member_confirm_list as $c_commu_member_confirm) { db_commu_join_c_commu($target_c_commu_id, $c_commu_member_confirm['c_member_id']); do_inc_join_c_commu_send_mail($target_c_commu_id, $c_commu_member_confirm['c_member_id']); db_commu_delete_c_commu_member_confirm($c_commu_member_confirm['c_commu_member_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); $p = array('target_c_commu_id' => $target_c_commu_id); openpne_redirect('ktai', 'page_c_home', $p); }
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']; $tmpfile = $requests['tmpfile']; $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 ($tmpfile) { $filesize = util_image_get_c_tmp_filesize4filename("c_{$c_commu_id}", $tmpfile); $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; } // ---------- // コミュニティ作成 $c_commu_id = db_commu_insert_c_commu($u, $name, $c_commu_category_id, $info, $is_admit, $is_open); if ($tmpfile) { $filename = image_insert_c_image4tmp("c_{$c_commu_id}", $tmpfile, $u); t_image_clear_tmp(session_id()); // 画像更新 if ($filename) { db_commu_update_c_commu_image_filename($c_commu_id, $filename); } } //作成者をコミュメンバーにする db_commu_join_c_commu($c_commu_id, $u); $p = array('target_c_commu_id' => $c_commu_id); openpne_redirect('pc', 'page_c_home', $p); }
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']; $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); }
/** * コミュニティを作成できるカテゴリかどうか * * @param int $c_commu_category_id * @return bool */ function db_commu_c_commu_category_is_create_flag($c_commu_category_id) { return db_commu_c_commu_category_is_create_commu($c_commu_category_id); }