/**
  * ファイル履歴情報を登録する
  *
  * @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;
 }
示例#8
0
 /**
  * スケジュール情報の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;
 }
示例#9
0
 /**
  * 足跡情報を登録する
  *
  * @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;
 }
示例#10
0
 /**
 * 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;
 }
示例#11
0
 /**
  * フォルダ挿入
  *
  * @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;
 }
示例#12
0
 /**
  * ログを登録する
  *
  * @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;
 }
示例#13
0
 /**
  * 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;
 }
示例#14
0
 /**
  * メッセージを登録する
  *
  * @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;
     }
 }
示例#15
0
 /**
  * コミュニティを更新する
  * 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;
 }