/** * ファイル履歴情報を登録する * * @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; }
/** * ファイル履歴コメントを登録する * * @param $file_history_id ファイル履歴ID * @param $entry_user_community_id 登録者のユーザコミュニティID * @param $comment コメント * @return */ static function set_file_history_comment($file_history_id, $entry_user_community_id, $comment) { $file_history_comment_id_seq = ACSDB::get_next_seq('file_history_comment_id_seq'); $comment = ACSLib::get_sql_value(pg_escape_string($comment)); $sql = "INSERT INTO file_history_comment"; $sql .= " (file_history_comment_id, file_history_id, user_community_id, comment)"; $sql .= " VALUES ({$file_history_comment_id_seq}, {$file_history_id}, '{$entry_user_community_id}', {$comment})"; $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; }
/** * スケジュール情報の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 $user ユーザ情報 * @return 成功(true) / 失敗(false) */ static function set_login_date(&$user) { $acs_user_info_row = $user->getAttribute('acs_user_info_row'); $user_community_id = $acs_user_info_row['user_community_id']; // BEGIN ACSDB::_do_query("BEGIN"); // ログイン情報のインサート $login_id_seq = ACSDB::get_next_seq('login_id_seq'); $sql = "INSERT INTO login_info"; $sql .= " (logout_id, community_id, login_date, logout_date)"; $sql .= " VALUES (" . $login_id_seq . "," . $user_community_id . ", CURRENT_TIMESTAMP, CURRENT_TIMESTAMP)"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // COMMIT ACSDB::_do_query("COMMIT"); $user->setAttribute('logout_id', $login_id_seq); return $ret; }
/** * 掲示板の返信記事を登録する * * @param 返信記事情報の配列 * @return 成功(true) / 失敗(false) */ static function set_bbs_res($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); $bbs_res_id_seq = ACSDB::get_next_seq('bbs_res_id_seq'); $sql = "INSERT INTO bbs_res"; $sql .= " (bbs_id, bbs_res_id, user_community_id, subject, body ,bbs_res_delete_flag)"; $sql .= " VALUES ({$form['bbs_id']}, {$bbs_res_id_seq},{$form['user_community_id']}, {$form['subject']}, {$form['body']},'f')"; $ret = ACSDB::_do_query($sql); return $ret; }
/** * ルートフォルダ挿入 * * @param $community_id */ static function insert_root_folder($community_id) { $folder_row = array(); $timestamp = ACSLib::convert_timestamp_to_pg_date(); $folder_row['folder_id'] = ACSDB::get_next_seq('folder_id_seq'); $folder_row['community_id'] = $community_id; $folder_row['folder_name'] = ACSMsg::get_mdmsg(__FILE__, 'M001'); $folder_row['comment'] = ""; $folder_row['parent_folder_id'] = ""; $folder_row['entry_user_community_id'] = $community_id; $folder_row['entry_date'] = $timestamp; $folder_row['update_user_community_id'] = $community_id; $folder_row['update_date'] = $timestamp; $folder_row['open_level_code'] = ""; ACSDB::_do_query("BEGIN"); $ret = ACSFolderModel::insert_folder($folder_row); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } ACSDB::_do_query("COMMIT"); 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; } }
/** * ダイアリーコメントを登録する * * @param $form ダイアリーコメント情報の配列 * @return 成功(true) / 失敗(false) */ static function set_diary_comment($form) { ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); //一意指定のためのコメントID $diary_comment_id_seq = ACSDB::get_next_seq('diary_comment_id_seq'); $sql = "INSERT INTO diary_comment"; $sql .= " (diary_comment_id, diary_id, user_community_id, body,diary_comment_delete_flag)"; $sql .= " VALUES ({$diary_comment_id_seq}, {$form['diary_id']}, {$form['user_community_id']}, {$form['body']},'f')"; $ret = ACSDB::_do_query($sql); return $ret; }
/** * ファイルID取得 * * @param none */ static function get_next_file_id_seq() { $file_id = ACSDB::get_next_seq('file_id_seq'); return $file_id; }
/** * コミュニティを登録する * * @param $form コミュニティ情報 * return 成功(コミュニティID) / 失敗(false) */ static function set_community($form) { // コミュニティ種別マスタ $community_type_master_array = ACSDB::get_master_array('community_type'); //$community_type_code = array_search('コミュニティ', $community_type_master_array); $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'); $org_form = $form; ACSLib::escape_sql_array($form); ACSLib::get_sql_value_array($form); // BEGIN ACSDB::_do_query("BEGIN"); // (1) コミュニティ (community) $community_id_seq = ACSDB::get_next_seq('community_id_seq'); $admission_flag = ACSLib::get_pg_boolean($org_form['admission_flag']); $sql = "INSERT INTO community"; $sql .= " (community_id, community_name, community_type_code, category_code, admission_flag)"; $sql .= " VALUES ('{$community_id_seq}', {$form['community_name']}, '{$community_type_code}', {$form['category_code']}, '{$admission_flag}')"; $ret = ACSDB::_do_query($sql); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // contents // (2-1) (コミュニティ全体) $contents_form = array(); $contents_form['community_id'] = $community_id_seq; //$contents_form['contents_type_code'] = array_search('全体', $contents_type_master_array); $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'] = ACSAccessControl::get_default_open_level_code(ACSMsg::get_mst('community_type_master', 'D40'), ACSMsg::get_mst('contents_type_master', 'D00')); $ret = ACSCommunity::set_contents($contents_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // (2-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) if (is_array($org_form['join_trusted_community_id_array'])) { $join_trusted_community_form = array(); $join_trusted_community_form['community_id'] = $community_id_seq; 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']; 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']; 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('全体', $contents_type_master_array); $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) コミュニティ管理者をセットする $community_admin_form = array(); $community_admin_form['community_id'] = $community_id_seq; $community_admin_form['user_community_id'] = $org_form['user_community_id']; $ret = ACSCommunity::set_community_admin($community_admin_form); if (!$ret) { ACSDB::_do_query("ROLLBACK"); return $ret; } // (8) コミュニティ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; }
/** * 親コミュニティ追加 承認待ち を登録する * * @param $user_community_id 対象のコミュニティID (承認側) * @param $waiting_community_id 待機コミュニティID (依頼側) * @param $entry_user_community_id 登録したユーザコミュニティID * @param $message メッセージ * @return 成功(true) / 失敗(false) */ static function set_waiting_for_sub_community_link($community_id, $waiting_community_id, $entry_user_community_id, $message) { // 待機種別マスタ $waiting_type_master_array = ACSDB::get_master_array('waiting_type'); // 待機状態マスタ $waiting_status_master_array = ACSDB::get_master_array('waiting_status'); $waiting_form = array(); $waiting_form['waiting_id'] = ACSDB::get_next_seq('waiting_id_seq'); $waiting_form['community_id'] = $community_id; $waiting_form['waiting_community_id'] = $waiting_community_id; $waiting_form['waiting_type_code'] = array_search(ACSMsg::get_mst('waiting_type_master', 'D50'), $waiting_type_master_array); $waiting_form['waiting_status_code'] = array_search(ACSMsg::get_mst('waiting_status_master', 'D10'), $waiting_status_master_array); $waiting_form['message'] = $message; $waiting_form['entry_user_community_id'] = $entry_user_community_id; $ret = ACSWaitingModel::insert_waiting($waiting_form); if ($ret) { $ret = $waiting_form['waiting_id']; } return $ret; }
/** * フォルダ作成 * * @param $input_folder_row * * @return $ret */ function create_folder($input_folder_row) { $acs_user_info_row = $this->get_acs_user_info_row(); $acs_user_community_id = $acs_user_info_row['user_community_id']; // フォルダの値セット $folder_row = array(); $timestamp_pg_date = ACSLib::convert_timestamp_to_pg_date(); $folder_id = ACSDB::get_next_seq('folder_id_seq'); if ($input_folder_row['entry_date']) { $entry_date = $input_folder_row['entry_date']; } else { $entry_date = $timestamp_pg_date; } $update_date = $entry_date; $folder_row['folder_id'] = $folder_id; $folder_row['community_id'] = $this->get_community_id(); $folder_row['folder_name'] = $input_folder_row['folder_name']; $folder_row['comment'] = $input_folder_row['comment']; $folder_row['parent_folder_id'] = $this->get_folder_id(); $folder_row['entry_user_community_id'] = $acs_user_community_id; $folder_row['entry_date'] = $entry_date; $folder_row['update_user_community_id'] = $acs_user_community_id; $folder_row['update_date'] = $update_date; $folder_row['open_level_code'] = $input_folder_row['open_level_code']; $trusted_community_id_array = $input_folder_row['trusted_community_id_array']; /* フォルダ作成 */ $ret = ACSFolderModel::insert_folder($folder_row, $trusted_community_id_array); if (!$ret) { return $ret; } /* 親フォルダの更新日を更新 */ $ret = ACSFolderModel::update_folder_update_date($this->get_folder_id(), $acs_user_community_id, $update_date); if (!$ret) { return $ret; } /* フォルダリストに追加 */ $folder_obj = ACSFolder::get_folder_instance($folder_row); array_push($this->folder_obj_array, $folder_obj); return $ret; }