/** * ファイル履歴情報を登録する * * @param $file_info_row ファイル情報 * @param $update_user_community_id 登録/更新者のユーザコミュニティID * @param $comment コメント * @param $file_history_operation_name ファイル履歴操作名 * @return 成功(file_history_id) / 失敗(false) */ static function set_file_history($file_info_row, $update_user_community_id, $comment, $file_history_operation_name) { $file_history_operation_master_array = ACSDB::get_master_array('file_history_operation'); $file_history_id_seq = ACSDB::get_next_seq('file_history_id_seq'); $file_history_operation_code = array_search($file_history_operation_name, $file_history_operation_master_array); ACSLib::escape_sql_array($file_info_row); ACSLib::get_sql_value_array($file_info_row); // ファイル履歴を登録 $sql = "INSERT INTO file_history"; $sql .= " (file_history_id, file_id, display_file_name, server_file_name, thumbnail_server_file_name, mime_type, file_size, update_date, update_user_community_id, file_history_operation_code)"; $sql .= " VALUES ({$file_history_id_seq}, {$file_info_row['file_id']}, {$file_info_row['display_file_name']}, {$file_info_row['server_file_name']}, {$file_info_row['thumbnail_server_file_name']}, {$file_info_row['mime_type']}, {$file_info_row['file_size']}, {$file_info_row['update_date']}, '{$update_user_community_id}', '{$file_history_operation_code}')"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // ファイル履歴コメントを登録 $ret = ACSFileHistoryComment::set_file_history_comment($file_history_id_seq, $update_user_community_id, $comment); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // trueの場合はファイル履歴IDをセット if ($ret) { $ret = $file_history_id_seq; } return $ret; }
/** * file_access_history UPDATE * * @param $form ファイルアクセス履歴情報 * @return 成功(true) / 失敗(false) */ static function update_file_access_history($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $sql = "UPDATE file_access_history" . " SET" . " access_date = " . $form['access_date'] . " WHERE user_community_id = " . $form['user_community_id'] . " AND file_id = " . $form['file_id']; $ret = ACSDB::_do_query($sql); return $ret; }
/** * waiting INSERT * * @param $form 待機コミュニティメンバ情報 * @return 成功(true) / 失敗(false) */ static function insert_waiting($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $sql = "INSERT INTO waiting"; $sql .= " (waiting_id, community_id, waiting_community_id, waiting_type_code, waiting_status_code, message, entry_user_community_id)"; $sql .= " VALUES ({$form['waiting_id']}, {$form['community_id']}, {$form['waiting_community_id']}, {$form['waiting_type_code']}, {$form['waiting_status_code']}, {$form['message']}, {$form['entry_user_community_id']})"; $ret = ACSDB::_do_query($sql); return $ret; }
static function insert_community_member($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $sql = "INSERT INTO community_member"; $sql .= " (community_id, user_community_id, community_member_type_code)"; $sql .= " VALUES ({$form['community_id']}, {$form['user_community_id']}, {$form['community_member_type_code']})"; $ret = ACSDB::_do_query($sql); return $ret; }
/** * システムアナウンスを登録する * * @param システムアナウンス情報 * @return 成功(true) / 失敗(false) */ static function set_system_announce($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $system_announce_id_seq = ACSDB::get_next_seq('system_announce_id_seq'); $sql = "INSERT INTO system_announce"; $sql .= " (system_announce_id, user_community_id, subject, body, expire_date)"; $sql .= " VALUES ({$system_announce_id_seq}, {$form['user_community_id']}, {$form['subject']}, {$form['body']}, {$form['expire_date']})"; ACSDB::_do_query($sql); return $ret; }
/** * bbs_access_history UPDATE * * @param $form 掲示板アクセス履歴情報 * @return 成功(true) / 失敗(false) */ static function update_bbs_access_history($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $sql = "UPDATE bbs_access_history"; $sql .= " SET"; $sql .= " access_date = {$form['access_date']}"; $sql .= " WHERE user_community_id = {$form['user_community_id']}"; $sql .= " AND bbs_id = {$form['bbs_id']}"; $ret = ACSDB::_do_query($sql); return $ret; }
/** * ファイル公開情報を登録する * * @param file_id ファイルID * form 設定値 * @return true(正常)/false(失敗) */ static function insert_file_public_access($file_id, $form = false) { ACSLib::escape_sql_array($form); if ($form === false) { $form = array(); } ACSDB::_do_query("BEGIN"); $ret = ACSDB::_do_query("DELETE FROM file_public_access\n\t\t\t\t\t WHERE file_id = " . $file_id); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // ハッシュ文字列作成 $form['access_code'] = md5(uniqid(rand()) . $file_id); $form['update_date'] = 'now'; if (!$form['all_access_count']) { $form['all_access_count'] = 0; } if (!$form['access_count']) { $form['access_count'] = 0; } if (!$form['access_start_date']) { $form['access_start_date'] = 'now'; } $sql = "INSERT INTO file_public_access \n\t\t\t\t\t(file_id, folder_id, community_id, access_code, \n\t\t\t\t\t all_access_count, access_count, access_start_date, \n\t\t\t\t\t update_date)\n\t\t\t\tVALUES\n\t\t\t\t\t(" . $file_id . ", " . $form['folder_id'] . ", " . $form['community_id'] . ", '" . $form['access_code'] . "'," . $form['all_access_count'] . "," . $form['access_count'] . ", '" . $form['access_start_date'] . "', '" . $form['update_date'] . "')"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } ACSDB::_do_query("COMMIT"); return $ret; }
/** * スケジュール情報のDB更新 * * スケジュール情報のDB更新を実施します。<br> * 更新されるテーブルは以下の通り<br> * schedule<br> * schedule_adjustment_dates<br> * schedule_answer_selection<br> * 候補日時は、set_schdedule_adjustment_datetime_append() および <br> * set_schdedule_adjustment_datetime_delete() で指定された内容が反映されあます。 * * @return boolean TRUE...成功/FALSE...失敗 */ function update_schedule() { // BEGIN ACSDB::_do_query("BEGIN"); if ($this->is_new()) { // スケジュールidの取得 $this->schedule_id = ACSDB::get_next_seq('schedule_id_seq'); $sql = "INSERT INTO schedule (" . " schedule_id, " . " community_id, " . " user_community_id, " . " schedule_name, " . " schedule_place, " . " schedule_detail, " . " schedule_closing_datetime, " . " schedule_target_kind, " . " decide_adjustment_date_id " . ") VALUES (" . " " . pg_escape_string($this->schedule_id) . "," . " " . pg_escape_string($this->community_id) . "," . " " . pg_escape_string($this->user_community_id) . "," . " '" . pg_escape_string($this->schedule_name) . "'," . " '" . pg_escape_string($this->schedule_place) . "'," . " '" . pg_escape_string($this->schedule_detail) . "'," . " '" . $this->schedule_closing_datetime . "'," . " '" . pg_escape_string($this->schedule_target_kind) . "'," . " " . pg_escape_string($this->decide_adjustment_date_id) . " " . ")"; // Update } else { $sql = "UPDATE schedule SET " . " schedule_name " . "= '" . pg_escape_string($this->schedule_name) . "'," . " schedule_place " . "= '" . pg_escape_string($this->schedule_place) . "'," . " schedule_detail " . "= '" . pg_escape_string($this->schedule_detail) . "'," . " schedule_closing_datetime " . "= '" . $this->schedule_closing_datetime . "'," . " schedule_target_kind " . "= '" . pg_escape_string($this->schedule_target_kind) . "', " . " update_datetime = CURRENT_TIMESTAMP " . "WHERE schedule_id " . "= " . pg_escape_string($this->schedule_id) . " AND user_community_id " . "= " . pg_escape_string($this->user_community_id); } $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // 候補日時の登録(削除) if (is_array($this->_adjustment_dates_stack['delete'])) { $sql = "UPDATE schedule_adjustment_dates " . "SET adjustment_date_delete_flag = TRUE "; $where = ""; foreach ($this->_adjustment_dates_stack['delete'] as $delete_dates) { $where .= ($where != "" ? "," : "") . $delete_dates; } $sql .= "WHERE schedule_id = " . pg_escape_string($this->schedule_id) . " AND adjustment_date_id IN (" . $where . ")"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } // 候補日時の登録(追加) if (is_array($this->_adjustment_dates_stack['append'])) { foreach ($this->_adjustment_dates_stack['append'] as $append_str) { // スケジュール候補日時idの取得 $seq = ACSDB::get_next_seq('adjustment_date_id_seq'); $sql = "INSERT INTO schedule_adjustment_dates " . "(schedule_id, adjustment_date_id, adjustment_date_string" . ") VALUES (" . "" . pg_escape_string($this->schedule_id) . "," . "" . $seq . "," . "'" . pg_escape_string($append_str) . "')"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } } // 選択肢の登録(Delete&Insert) if (is_array($this->_answer_selection_array)) { // 一旦Delete $sql = "DELETE FROM schedule_answer_selection " . "WHERE schedule_id " . "= " . pg_escape_string($this->schedule_id); $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // すべてInsert foreach ($this->_answer_selection_array as $answer_no => $selection) { ACSLib::escape_sql_array($selection); if ($selection['answer_score'] == '') { $selection['answer_score'] = "null"; } $sql = "INSERT INTO schedule_answer_selection ( " . " schedule_id,answer_no,answer_char," . " answer_score, answer_detail, answer_default " . ") VALUES (" . " " . pg_escape_string($this->schedule_id) . ", " . " " . pg_escape_string($answer_no) . ", " . "'" . $selection['answer_char'] . "', " . "" . $selection['answer_score'] . ", " . "'" . $selection['answer_detail'] . "', " . "'" . $selection['answer_default'] . "') "; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } } // COMMIT $ret = ACSDB::_do_query("COMMIT"); return $ret; }
/** * 足跡情報を登録する * * @param $form 足跡情報 * @return 成功(true) / 失敗(false) */ static function set_footprint($form) { ACSLib::escape_sql_array($form); $sql = "INSERT INTO footprint \n\t\t\t\t\t(community_id, visitor_community_id, contents_type_code,\n\t\t\t\t\t contents_title, contents_link_url, contents_date, post_date) \n\t\t\t\tVALUES\n\t\t\t\t\t(" . $form['community_id'] . ", " . $form['visitor_community_id'] . ", " . "'" . $form['contents_type_code'] . "', '" . $form['contents_title'] . "', " . "'" . $form['contents_link_url'] . "', '" . $form['contents_date'] . "', " . "'" . $form['post_date'] . "')"; $ret = ACSDB::_do_query($sql); return $ret; }
/** * BBSを検索するためのwhere句の1部を作成 * * @param $form 条件 [id] => 1000 [move_id] => 2 [q_text] => 検索条件 //条件(※必須) [search_title] => title_in_serch //件名を選択 [search_all] => subject_in_serch //本文を選択 [open_level_code] => 00 //公開範囲(00は選択なし)(※必須) [search_all_about] => all_in_serch //すべてのCommunityを選択 * @return str_array($like_sql , $err_str , $str_count) */ static function set_bbs_where_list($form, $flag) { $str_array = array(); $str_array['like_sql'] = ""; //成功時の戻り値 $str_array['err_str'] = ""; //失敗時の戻り値 $str_array['str_count'] = 1; //成功時のキーワード数 // 検索キーワードの取得(注意!バイト単位で処理) $search_text = $form['q_text']; //formから検索文字列を取得 //〜〜〜〜〜〜〜〜〜〜〜〜〜〜配列として利用(Likeの作成)〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 if ($search_text != '') { $search_args = ACSLib::get_query_array_array($search_text); //検索文字列配列に変換 } if (count($search_args) > 0) { //検索文字列が存在する場合 $search_args = ACSLib::escape_sql_array($search_args); //キーワードwhere句の追記 //次のいずれかは必須 $str_like = ''; //件名を選択している場合 if ($form['search_title']) { $str_title = " bbs.subject"; $str_like_array = ACSDiary::create_sql_where_field($search_args, $str_title, $flag); $str_like = " (" . $str_like_array['str_like'] . ") "; $str_array['str_count'] = $str_like_array['str_count']; } //本文を選択している場合 if ($form['search_all']) { $str_body = " bbs.body"; if ($str_like != "") { $str_like = $str_like . " OR "; //件名と共に選択している場合 } $where_sql_array = ACSDiary::create_sql_where_field($search_args, $str_body, $flag); $where_sql = " (" . $where_sql_array['str_like'] . ") "; $str_like = $str_like . $where_sql; $str_array['str_count'] = $where_sql_array['str_count']; } //キーワードwhere句の追記終了 if ($str_like == "") { //キーワードがあるのに、対象がない場合 $str_array['err_str'] = ACSMsg::get_mdmsg(__FILE__, 'M005'); } else { $str_array['like_sql'] = $str_array['like_sql'] . $str_array['like_sql'] . " AND (" . $str_like . ") "; } } //〜〜〜〜〜〜〜〜〜〜〜〜〜〜特定日記検索〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 //必ずAND if (!$form['search_all_about']) { //すべての Communityを選択していない場合 $str_array['like_sql'] = $str_array['like_sql'] . " AND bbs.community_id = " . $form['community_id']; } // エラーメッセージが配列になってしまう暫定対処 return $str_array; }
/** * フォルダ挿入 * * @param $folder_row * @param $trusted_community_id_array * @return true / false */ static function insert_folder($folder_row, $trusted_community_id_array = '') { ACSLib::escape_sql_array($folder_row); ACSLib::get_sql_value_array($folder_row); $sql = "INSERT INTO folder"; $sql .= " (folder_id, community_id, folder_name, comment, parent_folder_id, "; $sql .= "entry_user_community_id, entry_date, "; $sql .= "update_user_community_id, update_date, open_level_code)"; $sql .= " VALUES ("; $sql .= $folder_row['folder_id'] . ","; $sql .= $folder_row['community_id'] . ","; $sql .= $folder_row['folder_name'] . ","; $sql .= $folder_row['comment'] . ","; $sql .= $folder_row['parent_folder_id'] . ","; $sql .= $folder_row['entry_user_community_id'] . ","; $sql .= $folder_row['entry_date'] . ","; $sql .= $folder_row['update_user_community_id'] . ","; $sql .= $folder_row['update_date'] . ","; $sql .= $folder_row['open_level_code']; $sql .= ")"; $ret = ACSDB::_do_query($sql); if (!$ret) { return $ret; } // フォルダ閲覧許可コミュニティ挿入 if ($trusted_community_id_array) { $ret = ACSFolderModel::insert_folder_trusted_community($folder_row['folder_id'], $trusted_community_id_array); if (!$ret) { return $ret; } } return $ret; }
/** * ログを登録する * * @param $acs_user_info_row ACSユーザ情報 * @param $operation_type_name 操作名 * @param $operation_result 操作結果 (true/false) * @param $message メッセージ * @return 成功(true) / 失敗(false) */ static function set_log_debug($user_community_id, $message) { // ログIDのシーケンス取得 $log_id_seq = ACSDB::get_next_seq('log_id_seq'); // INSERTデータ $form['log_id'] = $log_id_seq; $form['log_date'] = 'now'; $form['user_id'] = 'debug'; $form['user_name'] = 'anonymous'; $form['user_community_id'] = $user_community_id; $form['community_name'] = 'DEBUG'; $form['administrator_flag'] = false; $form['operation_code'] = '9999'; $form['operation_result'] = true; $form['message'] = $message; // escape ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $sql = "INSERT INTO log (log_id, log_date, user_id, user_name, user_community_id, community_name, administrator_flag, operation_code, operation_result, message)"; $sql .= " VALUES ( {$log_id_seq}, 'now', 'debug', 'anonymous', {$user_community_id}, 'DEBUG', false, '9999', true, '{$message}')"; $ret = ACSDB::_do_query($sql); // return $ret; return null; }
/** * RSS情報を登録する * * @param $form フォーム情報 * @param $rss_channel_row <channel> * @param $rss_item_row <item> * @return 成功(true) / 失敗(false) */ static function set_bbs_and_external_rss($form, $rss_channel_row, $rss_item_row) { $org_form = $form; ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); // BEGIN ACSDB::_do_query("BEGIN"); $bbs_id_seq = ACSDB::get_next_seq('bbs_id_seq'); // bbs $sql = "INSERT INTO bbs"; $sql .= " (bbs_id, community_id, user_community_id, subject, body, open_level_code, expire_date, ml_send_flag)"; $sql .= " VALUES ({$bbs_id_seq}, {$form['community_id']}, {$form['user_community_id']}, {$form['subject']}, {$form['body']}, {$form['open_level_code']}, "; $sql .= ($org_form['expire_date'] != NULL ? $org_form['expire_date'] : "null") . ", {$form['ml_send_flag']})"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } $form = $org_form; // bbs_trusted_community $open_level_master_array = ACSDB::get_master_array('open_level'); // 非公開 (メンバのみ) if ($open_level_master_array[$form['open_level_code']] == ACSMsg::get_mst('open_level_master', 'D04')) { foreach ($form['trusted_community_row_array'] as $trusted_community_row) { $trusted_community_id = pg_escape_string($trusted_community_row['community_id']); $sql = "INSERT INTO bbs_trusted_community"; $sql .= " (bbs_id, trusted_community_id)"; $sql .= " VALUES ({$bbs_id_seq}, {$trusted_community_id})"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } } // external_rss ACSLib::escape_sql_array($rss_item_row); ACSLib::get_sql_value_array($rss_item_row); ACSLib::escape_sql_array($rss_channel_row); ACSLib::get_sql_value_array($rss_channel_row); $sql = "INSERT INTO external_rss"; $sql .= " (bbs_id, rss_url, rss_channel_title, rss_item_title, rss_item_content, rss_item_date, rss_item_link)"; $sql .= " VALUES ({$bbs_id_seq}, {$rss_channel_row['rss_url']}, {$rss_channel_row['rss_channel_title']}, {$rss_item_row['rss_item_title']}, {$rss_item_row['rss_item_content']}, {$rss_item_row['rss_item_date']}, {$rss_item_row['rss_item_link']})"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } if ($ret) { $ret = $bbs_id_seq; } // COMMIT ACSDB::_do_query("COMMIT"); return $ret; }
/** * メッセージを登録する * * @param $form メッセージ情報の配列 * @return 成功(登録されたメッセージID) / 失敗(false) */ static function set_message($form) { $org_form = $form; ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); // BEGIN //ACSDB::_do_query("BEGIN"); $message_id_seq = ACSDB::get_next_seq('message_id_seq'); $message_sender_id_seq = ACSDB::get_next_seq('message_sender_id_seq'); $message_receiver_id_seq = ACSDB::get_next_seq('message_receiver_id_seq'); // messege $sql1 = "INSERT INTO message"; $sql1 .= " (message_id, subject, body)"; $sql1 .= " VALUES ({$message_id_seq}, {$form['subject']}, {$form['body']})"; $ret = ACSDB::_do_query($sql1); if (!$ret) { //ACSDB::_do_query("ROLLBACK"); echo "ERROR: insert message error"; return $ret; } $form = $org_form; // messege_sender $sql2 = "INSERT INTO message_sender"; $sql2 .= " (message_sender_id, message_id, community_id, message_delete_flag)"; $sql2 .= " VALUES ({$message_sender_id_seq}, {$message_id_seq}, {$form['acs_user_info_id']}, 'f')"; $ret = ACSDB::_do_query($sql2); if (!$ret) { //ACSDB::_do_query("ROLLBACK"); echo "ERROR: insert message_sender error"; return $ret; } $form = $org_form; // messege_receiver $sql3 = "INSERT INTO message_receiver"; $sql3 .= " (message_receiver_id, message_id, community_id, read_flag, message_delete_flag)"; $sql3 .= " VALUES ({$message_receiver_id_seq}, {$message_id_seq}, {$form['user_community_id']}, 'f', 'f')"; $ret = ACSDB::_do_query($sql3); if (!$ret) { //ACSDB::_do_query("ROLLBACK"); echo "ERROR: insert message_receiver error"; return $ret; } if ($ret) { return $message_id_seq; } else { return false; } }
/** * コミュニティを更新する * 2006/3/9 * @param $form コミュニティ情報 * return 成功(コミュニティID) / 失敗(false) */ static function update_community($form) { // コミュニティ種別マスタ $community_type_master_array = ACSDB::get_master_array('community_type'); $community_type_code = array_search(ACSMsg::get_mst('community_type_master', 'D40'), $community_type_master_array); // コンテンツ種別マスタ $contents_type_master_array = ACSDB::get_master_array('contents_type'); // コミュニティメンバ種別マスタ $community_member_type_master_array = ACSDB::get_master_array('community_member_type'); $community_id_seq = $form['community_id']; $org_form = $form; ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); // BEGIN ACSDB::_do_query("BEGIN"); // (1) コミュニティ (community) $admission_flag = ACSLib::get_pg_boolean($org_form['admission_flag']); $sql = "UPDATE community"; $sql .= " SET community_name = {$form['community_name']},"; $sql .= " category_code = {$form['category_code']},"; $sql .= " admission_flag = {$form['admission_flag']}"; $sql .= " WHERE community_id = {$community_id_seq}"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // (2) コミュニティプロフィール $contents_form = array(); $contents_form['community_id'] = $community_id_seq; $contents_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D07'), $contents_type_master_array); $contents_form['contents_value'] = $org_form['community_profile']; $contents_form['open_level_code'] = ACSAccessControl::get_default_open_level_code(ACSMsg::get_mst('community_type_master', 'D40'), ACSMsg::get_mst('contents_type_master', 'D07')); $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // (3) 参加資格 (join_trusted_community) $join_trusted_community_form = array(); $join_trusted_community_form['community_id'] = $community_id_seq; // join_trusted_community 前準備 旧データの一括削除 $ret = ACSCommunity::delete_join_trusted_community($join_trusted_community_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } //登録 if (is_array($org_form['join_trusted_community_id_array'])) { foreach ($org_form['join_trusted_community_id_array'] as $trusted_community_id) { $join_trusted_community_form['trusted_community_id'] = $trusted_community_id; $ret = ACSCommunity::set_join_trusted_community($join_trusted_community_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } } // (4) 公開範囲 電子掲示板 // contents $contents_form = array(); $contents_form['community_id'] = $community_id_seq; $contents_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D41'), $contents_type_master_array); $contents_form['contents_value'] = ''; $contents_form['open_level_code'] = $org_form['bbs_open_level_code']; $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // contents_trusted_community if (is_array($org_form['bbs_trusted_community_id_array'])) { $contents_trusted_community_form = array(); $contents_trusted_community_form['community_id'] = $community_id_seq; $contents_trusted_community_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D41'), $contents_type_master_array); $contents_trusted_community_form['open_level_code'] = $org_form['bbs_open_level_code']; // contents_trusted_community 前準備 旧データの一括削除 $ret = ACSCommunity::update_contents_trusted_community($contents_trusted_community_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } //登録 foreach ($org_form['bbs_trusted_community_id_array'] as $trusted_community_id) { $contents_trusted_community_form['trusted_community_id'] = $trusted_community_id; $ret = ACSCommunity::set_contents_trusted_community($contents_trusted_community_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } } // (5) 公開範囲 コミュニティフォルダ (cotents) // contents $contents_form = array(); $contents_form['community_id'] = $community_id_seq; $contents_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D31'), $contents_type_master_array); $contents_form['contents_value'] = ''; $contents_form['open_level_code'] = $org_form['community_folder_open_level_code']; $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // contents_trusted_community if (is_array($org_form['community_folder_trusted_community_id_array'])) { $contents_trusted_community_form = array(); $contents_trusted_community_form['community_id'] = $community_id_seq; $contents_trusted_community_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D31'), $contents_type_master_array); $contents_trusted_community_form['open_level_code'] = $org_form['community_folder_open_level_code']; // contents_trusted_community 前準備 旧データの一括削除 $ret = ACSCommunity::update_contents_trusted_community($contents_trusted_community_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // 登録 foreach ($org_form['community_folder_trusted_community_id_array'] as $trusted_community_id) { $contents_trusted_community_form['trusted_community_id'] = $trusted_community_id; $ret = ACSCommunity::set_contents_trusted_community($contents_trusted_community_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } } // (6) 公開範囲 全体 // contents $contents_form = array(); $contents_form['community_id'] = $community_id_seq; $contents_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D00'), $contents_type_master_array); $contents_form['contents_value'] = ''; $contents_form['open_level_code'] = $org_form['self_open_level_code']; $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // (7) コミュニティML // contents // コミュニティMLアドレス if ($org_form['community_ml_address']) { $contents_form = array(); $contents_form['community_id'] = $community_id_seq; $contents_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D61'), $contents_type_master_array); $contents_form['contents_value'] = $org_form['community_ml_address']; $contents_form['open_level_code'] = ACSAccessControl::get_default_open_level_code(ACSMsg::get_mst('community_type_master', 'D40'), ACSMsg::get_mst('contents_type_master', 'D61')); $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // コミュニティMLステータス $contents_form = array(); $contents_form['community_id'] = $community_id_seq; $contents_form['contents_type_code'] = array_search(ACSMsg::get_mst('contents_type_master', 'D62'), $contents_type_master_array); $contents_form['contents_value'] = 'QUEUE'; $contents_form['open_level_code'] = ACSAccessControl::get_default_open_level_code(ACSMsg::get_mst('community_type_master', 'D40'), ACSMsg::get_mst('contents_type_master', 'D62')); $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } } // COMMIT ACSDB::_do_query("COMMIT"); return $community_id_seq; }