function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 対象となるコミュニティIDを取得
     $community_id = $request->ACSgetParameter('community_id');
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_row($community_id);
     $form = $request->ACSGetParameters();
     $form['community_id'] = $community_row['community_id'];
     // 更新
     ACSCommunity::update_community_admin($acs_user_info_row, $form);
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'EditCommunityAdminAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('Community', 'EditCommunityAdminAction.class.php', 'M002'));
     $done_obj->add_link(ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'EditCommunityAdminAction.class.php', 'BACK_TO_CM'), array("{COMMUNITY_NAME}" => $community_row['community_name'])), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     $form = $request->ACSGetParameters();
     $form['user_community_id'] = $acs_user_info_row['user_community_id'];
     if ($form['community_ml_address'] != '') {
         // コミュニティMLにプレフィックス・サフィックスを追加
         $form['community_ml_address'] = ACS_COMMUNITY_ML_ADDR_PREFIX . $form['community_ml_address'] . ACS_COMMUNITY_ML_ADDR_SUFFIX;
     }
     // コミュニティ作成
     $community_id = ACSCommunity::set_community($form);
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_row($community_id);
     // forward
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'CreateCommunityAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('Community', 'CreateCommunityAction.class.php', 'M002'));
     $done_obj->add_link($community_row['community_name'] . ' ' . ACSMsg::get_msg('Community', 'CreateCommunityAction.class.php', 'M003'), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     /* コミュニティ情報取得 */
     $target_community_id = $request->getParameter('community_id');
     $target_community_row = ACSCommunity::get_community_row($request->getParameter('community_id'));
     /* 削除処理 */
     $delete_user_community_id_array = $request->getParameter('delete_user_community_id_array');
     $ret = ACSCommunity::delete_community_member($target_community_id, $delete_user_community_id_array);
     if (!$ret) {
         "ERROR : delete community member failed";
         exit;
     }
     /* 完了画面表示 */
     // 引数セット
     $community_top_url = $this->getControllerPath('Community', '');
     $community_top_url .= '&community_id=' . $target_community_row['community_id'];
     $community_top_link_name = ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'DeleteCommunityMemberAction.class.php', 'BACK_TO_CM'), array("{COMMUNITY_NAME}" => $target_community_row['community_name']));
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'DeleteCommunityMemberAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('Community', 'DeleteCommunityMemberAction.class.php', 'M002'));
     $done_obj->add_link($community_top_link_name, $community_top_url);
     $request->setAttribute('done_obj', $done_obj);
     // 画面呼び出し
     $controller->forward('Common', 'Done');
 }
 /**
  * コミュニティ削除処理
  */
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     /* コミュニティ情報取得 */
     $target_community_id = $request->getParameter('community_id');
     $target_community_row = ACSCommunity::get_community_row($request->getParameter('community_id'));
     /* 削除処理 */
     ACSDB::_do_query("BEGIN");
     $ret = ACSCommunity::delete_community($target_community_id);
     if (!$ret) {
         ACSDB::_do_query("ROLLBACK");
         "ERROR : delete community failed";
         exit;
     }
     // フォルダのディレクトリ移動
     $from_dir = ACS_FOLDER_DIR . "/";
     $from_dir .= ACSFile::get_upload_file_save_path($target_community_id);
     if (file_exists($from_dir)) {
         $to_dir = ACS_TRASH_FOLDER_DIR . "/";
         $to_dir .= ACSFile::get_upload_file_save_path($target_community_id);
         if (!file_exists(ACS_TRASH_FOLDER_DIR)) {
             // 置き場所ディレクトリがなければ作成する
             mkdir(ACS_TRASH_FOLDER_DIR);
             chmod(ACS_TRASH_FOLDER_DIR, 0777);
         }
         $ret = rename($from_dir, $to_dir);
         if (!$ret) {
             ACSDB::_do_query("ROLLBACK");
             "ERROR : delete community failed";
             exit;
         }
     }
     ACSDB::_do_query("COMMIT");
     /* 完了画面表示 */
     // 引数セット
     $message = ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'DeleteCommunityAction.class.php', 'DELETECM'), array('{TARGET_COMMUNITY_NAME}' => $target_community_row['community_name']));
     $top_page_url = $this->getControllerPath('User', 'Index');
     $top_page_link_name = ACSMsg::get_msg('Community', 'DeleteCommunityAction.class.php', 'M001');
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'DeleteCommunityAction.class.php', 'M002'));
     $done_obj->set_message($message);
     $done_obj->add_link($top_page_link_name, $top_page_url);
     $request->setAttribute('done_obj', $done_obj);
     // 画面呼び出し
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     $form = $form = $request->ACSGetParameters();
     // 対象となるコミュニティIDを取得
     $community_id = $request->ACSgetParameter('community_id');
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_profile_row($community_id);
     ACSDB::_do_query("BEGIN");
     // 生成されたwaiting_idの配列
     $waiting_id_array = array();
     foreach ($form['user_community_id_array'] as $invited_user_community_id) {
         // コミュニティ招待承認待ち登録
         $waiting_id = ACSWaiting::set_waiting_for_invite_to_community($invited_user_community_id, $community_id, $acs_user_info_row['user_community_id'], $form['message']);
         if (!$waiting_id) {
             ACSDB::_do_query("ROLLBACK");
             break;
         }
         // 生成されたwaiting情報を保持
         array_push($waiting_id_array, $waiting_id);
     }
     if ($waiting_id) {
         ACSDB::_do_query("COMMIT");
     }
     // 生成されたwaiting情報を元に複数メール送信
     foreach ($waiting_id_array as $waiting_id) {
         // コミュニティ招待承認依頼通知メール
         ACSWaiting::send_admission_request_notify_mail($waiting_id);
     }
     // forward
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'InviteToCommunityAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('Community', 'InviteToCommunityAction.class.php', 'M002'));
     $done_obj->add_link(ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'InviteToCommunityAction.class.php', 'BACK_TO_CM'), array("{COMMUNITY_NAME}" => $community_row['community_name'])), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     // 対象となるユーザコミュニティIDを取得
     $user_community_id = $request->ACSgetParameter('id');
     $delete_user_community_id = $request->ACSgetParameter('delete_user_community_id');
     $form = $request->ACSGetParameters();
     // フレンズ削除
     ACSUser::delete_friends($user_community_id, $delete_user_community_id);
     $friends_list_top_page_url = $this->getControllerPath('User', 'FriendsList') . '&id=' . $user_community_id;
     // ACSDone
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('User', 'DeleteFriendsAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('User', 'DeleteFriendsAction.class.php', 'M002'));
     $done_obj->add_link(ACSMsg::get_msg('User', 'DeleteFriendsAction.class.php', 'M003'), $friends_list_top_page_url);
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 対象となるコミュニティIDを取得
     $community_id = $request->ACSgetParameter('community_id');
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_row($community_id);
     $form = $request->ACSGetParameters();
     $ret = ACSExternalRSS::set_external_rss_contents($community_id, $form);
     // forward
     $done_obj = new ACSDone();
     if ($ret) {
         $done_obj->set_title(ACSMsg::get_msg('Community', 'EditExternalRSSAction.class.php', 'M001'));
         $done_obj->set_message(ACSMsg::get_msg('Community', 'EditExternalRSSAction.class.php', 'M002'));
         $done_obj->add_link($community_row['community_name'] . ' ' . ACSMsg::get_msg('Community', 'EditExternalRSSAction.class.php', 'M003'), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     } else {
         $done_obj->set_title(ACSMsg::get_msg('Community', 'EditExternalRSSAction.class.php', 'M004'));
     }
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     $form = $form = $request->ACSGetParameters();
     // 対象となるコミュニティIDを取得
     $community_id = $request->ACSgetParameter('community_id');
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_profile_row($community_id);
     // 承認が必要か
     $is_admission_required = ACSCommunity::is_admission_required_for_join_community($acs_user_info_row['user_community_id'], $community_id);
     // forward
     $done_obj = new ACSDone();
     $done_obj->set_message(ACSMsg::get_msg('Community', 'JoinCommunityAction.class.php', 'M003'));
     $done_obj->add_link($community_row['community_name'] . ' ' . ACSMsg::get_msg('Community', 'JoinCommunityAction.class.php', 'M004'), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     if ($is_admission_required) {
         // コミュニティ参加承認待ち登録
         $waiting_id = ACSWaiting::set_waiting_for_join_community($community_id, $acs_user_info_row['user_community_id'], $form['message']);
         // 参加承認依頼通知メール
         ACSWaiting::send_admission_request_notify_mail($waiting_id);
         $done_obj->set_title(ACSMsg::get_msg('Community', 'JoinCommunityAction.class.php', 'M001'));
     } else {
         // コミュニティメンバ登録
         $community_member_form = array();
         $community_member_form['community_id'] = $community_id;
         $community_member_form['user_community_id'] = $acs_user_info_row['user_community_id'];
         ACSCommunity::set_community_member($community_member_form);
         $done_obj->set_title(ACSMsg::get_msg('Community', 'JoinCommunityAction.class.php', 'M002'));
     }
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 対象となるコミュニティIDを取得
     $community_id = $request->ACSgetParameter('community_id');
     $form = $request->ACSGetParameters();
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_profile_row($community_id);
     if ($form['mode'] == 'parent') {
         $parent_community_id = $form['delete_community_id'];
         $sub_community_id = $community_id;
     } elseif ($form['mode'] == 'sub') {
         $parent_community_id = $community_id;
         $sub_community_id = $form['delete_community_id'];
     }
     // 削除
     ACSCommunity::delete_community_link($parent_community_id, $sub_community_id);
     // forward
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'DeleteCommunityLinkAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('Community', 'DeleteCommunityLinkAction.class.php', 'M002'));
     $done_obj->add_link(ACSMsg::get_msg('Community', 'DeleteCommunityLinkAction.class.php', 'M003'), $this->getControllerPath('Community', 'CommunityLink') . '&community_id=' . $community_row['community_id']);
     $done_obj->add_link(ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'DeleteCommunityLinkAction.class.php', 'BACK_TO_CM'), array("{COMMUNITY_NAME}" => $community_row['community_name'])), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
Пример #10
0
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 表示対象となるユーザコミュニティIDを取得
     $user_community_id = $request->getParameter('id');
     $form = $request->ACSGetParameters();
     // マイフレンズ追加 承認待ち を登録する
     $waiting_id = ACSWaiting::set_waiting_for_add_friends($user_community_id, $acs_user_info_row['user_community_id'], $form['message']);
     // マイフレンズ追加 承認依頼通知メール
     ACSWaiting::send_admission_request_notify_mail($waiting_id);
     // forward
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('User', 'AddFriendsAction.class.php', 'M001'));
     $done_obj->set_message(ACSMsg::get_msg('User', 'AddFriendsAction.class.php', 'M002'));
     $done_obj->add_link(ACSMsg::get_msg('User', 'AddFriendsAction.class.php', 'M003'), './');
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 /**
  * コミュニティ削除処理
  */
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     /* アクセスしているユーザ情報 */
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     /* コミュニティ情報取得 */
     $target_community_id = $request->getParameter('community_id');
     $target_community_row = ACSCommunity::get_community_row($request->getParameter('community_id'));
     /* 削除処理 */
     ACSDB::_do_query("BEGIN");
     $ret = ACSCommunity::delete_community_member($target_community_id, array($acs_user_info_row['user_community_id']));
     if (!$ret) {
         ACSDB::_do_query("ROLLBACK");
         "ERROR : Delete community member failed.";
         exit;
     }
     ACSDB::_do_query("COMMIT");
     /* 完了画面表示 */
     // 引数セット
     $message = ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'LeaveCommunityAction.class.php', 'LEAVE_CM'), array("{COMMUNITY_NAME}" => $target_community_row['community_name']));
     // マイページトップページURL
     $top_page_url = $this->getControllerPath('User', 'Index');
     $top_page_link_name = ACSMsg::get_msg('Community', 'LeaveCommunityAction.class.php', 'M001');
     // コミュニティURL
     $community_top_page_url = $this->getControllerPath('Community', 'Index');
     $community_top_page_url .= '&community_id=' . $target_community_row['community_id'];
     $community_top_page_link_name = ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'LeaveCommunityAction.class.php', 'BACK_TO_CM'), array("{COMMUNITY_NAME}" => $target_community_row['community_name']));
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('Community', 'LeaveCommunityAction.class.php', 'M002'));
     $done_obj->set_message($message);
     $done_obj->add_link($top_page_link_name, $top_page_url);
     $done_obj->add_link($community_top_page_link_name, $community_top_page_url);
     $request->setAttribute('done_obj', $done_obj);
     // 画面呼び出し
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 対象となるコミュニティIDを取得
     $community_id = $request->ACSgetParameter('community_id');
     $form = $request->ACSGetParameters();
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_profile_row($community_id);
     // forward
     $done_obj = new ACSDone();
     ACSDB::_do_query("BEGIN");
     // 生成されたwaiting_idの配列
     $waiting_id_array = array();
     $ret = 1;
     // 1:成功 / 0:失敗
     foreach ($form['trusted_community_id_array'] as $link_community_id) {
         if (ACSCommunity::is_community_admin($acs_user_info_row['user_community_id'], $link_community_id)) {
             // リンク依頼先コミュニティの管理者である場合は承認待ち登録せずに、即座にリンクを追加する
             if ($form['link_type'] == 'parent') {
                 $ret = ACSCommunity::set_community_link($link_community_id, $community_id);
             } elseif ($form['link_type'] == 'sub') {
                 $ret = ACSCommunity::set_community_link($community_id, $link_community_id);
             }
         } else {
             if ($form['link_type'] == 'parent') {
                 // 親コミュニティ追加承認待ち登録
                 $waiting_id = ACSWaiting::set_waiting_for_parent_community_link($link_community_id, $community_id, $acs_user_info_row['user_community_id'], $form['message']);
             } elseif ($form['link_type'] == 'sub') {
                 // サブコミュニティ追加承認待ち登録
                 $waiting_id = ACSWaiting::set_waiting_for_sub_community_link($link_community_id, $community_id, $acs_user_info_row['user_community_id'], $form['message']);
             }
             if ($waiting_id) {
                 // 生成されたwaiting情報を保持
                 array_push($waiting_id_array, $waiting_id);
             } else {
                 $ret = 0;
             }
         }
         if (!$ret) {
             ACSDB::_do_query("ROLLBACK");
             break;
         }
     }
     if ($ret) {
         // COMMIT
         ACSDB::_do_query("COMMIT");
         // 生成されたwaiting情報を元に複数メール送信
         foreach ($waiting_id_array as $waiting_id) {
             // コミュニティ間リンク追加依頼通知メール
             ACSWaiting::send_admission_request_notify_mail($waiting_id);
         }
         $done_obj->set_title(ACSMsg::get_msg('Community', 'AddCommunityLinkAction.class.php', 'M001'));
         $done_obj->set_message(ACSMsg::get_msg('Community', 'AddCommunityLinkAction.class.php', 'M002'));
         $done_obj->add_link(ACSMsg::get_msg('Community', 'AddCommunityLinkAction.class.php', 'M003'), $this->getControllerPath('Community', 'CommunityLink') . '&community_id=' . $community_row['community_id']);
         $done_obj->add_link($community_row['community_name'] . ' ' . ACSMsg::get_msg('Community', 'AddCommunityLinkAction.class.php', 'M004'), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     } else {
         $done_obj->set_message('失敗しました。');
     }
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
Пример #13
0
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 対象となるユーザコミュニティIDを取得
     $form = $request->ACSgetParameters();
     // 待機情報
     $waiting_row = ACSWaiting::get_waiting_row($form['waiting_id']);
     // ACSDone
     $done_obj = new ACSDone();
     if ($form['accept_button']) {
         // 承認ボタン押下時 //
         ACSDB::_do_query("BEGIN");
         if ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D10')) {
             $ret = ACSUser::set_friends($waiting_row['community_id'], $waiting_row['waiting_community_id']);
         } elseif ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D30')) {
             $community_member_form = array('community_id' => $waiting_row['waiting_community_id'], 'user_community_id' => $waiting_row['community_id']);
             $ret = ACSCommunity::set_community_member($community_member_form);
         }
         if ($ret) {
             // 承認済みをセット
             $ret = ACSWaiting::update_waiting_waiting_status_code($form['waiting_id'], ACSMsg::get_mst('waiting_status_master', 'D20'), $acs_user_info_row['user_community_id'], $form['reply_message']);
             if ($ret) {
                 ACSDB::_do_query("COMMIT");
                 // 整合性保持
                 if ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D10')) {
                     // マイフレンズ追加の双方向の重複を解除
                     ACSWaiting::update_waiting_for_add_friends($waiting_row['community_id'], $waiting_row['waiting_community_id']);
                 } elseif ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D30')) {
                     // 招待の重複を解除
                     ACSWaiting::update_waiting_for_invite_to_community($waiting_row['community_id'], $waiting_row['waiting_community_id']);
                     // 参加の重複を解除
                     ACSWaiting::update_waiting_for_join_community($waiting_row['waiting_community_id'], $waiting_row['community_id']);
                 }
                 // 返信メッセージ
                 if ($form['reply_message'] != '') {
                     $ret = ACSWaiting::send_admission_accept_notify_mail($form['waiting_id']);
                 }
                 //$done_obj->set_title("$waiting_row[waiting_type_name] 承認完了");
                 $done_obj->set_title(ACSMsg::get_tag_replace(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'FIN_ADM'), array("{WAITING_TYPE_NAME}" => $waiting_row[waiting_type_name])));
                 $done_obj->set_message(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'M001'));
             } else {
                 $done_obj->set_message(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'M002'));
             }
         } else {
             ACSDB::_do_query("ROLLBACK");
         }
     } elseif ($form['reject_button']) {
         // 拒否ボタン押下時 //
         $ret = ACSWaiting::update_waiting_waiting_status_code($form['waiting_id'], ACSMsg::get_mst('waiting_status_master', 'D30'), $acs_user_info_row['user_community_id']);
         if ($ret) {
             //$done_obj->set_title("$waiting_row[waiting_type_name] 拒否完了");
             $done_obj->set_title(ACSMsg::get_tag_replace(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'FIN_DIS'), array("{WAITING_TYPE_NAME}" => $waiting_row[waiting_type_name])));
             $done_obj->set_message(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'M001'));
         } else {
             $done_obj->set_message(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'M002'));
         }
     }
     $done_obj->add_link(ACSMsg::get_msg('User', 'WaitingListAction.class.php', 'M003'), './');
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     // 管理者かどうか確認
     if (!$this->get_execute_privilege()) {
         $controller->forward(SECURE_MODULE, SECURE_ACTION);
         return;
     }
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     $form = $request->ACSGetParameters();
     // システム設定データ取得(全件)
     $system_config_obj = new ACSSystemConfig();
     // Validatorで出来ないエラーチェックを行う //
     $err_flg = false;
     foreach ($system_config_obj->get_system_config_keyword_data_obj_array() as $get_system_config_keyword_data_obj) {
         $keyword = $get_system_config_keyword_data_obj->get_keyword();
         $system_config_group_name = $get_system_config_keyword_data_obj->get_system_config_group_name();
         $name = $get_system_config_keyword_data_obj->get_name();
         $type = $get_system_config_keyword_data_obj->get_type();
         // numberの項目は自然数
         if ($type == 'number' && !ACSErrorCheck::is_natural_number($form[$keyword])) {
             //$this->setError($controller, $request, $user, $keyword, "[$system_config_group_name] -> [$name] の値が正しくありません。(1以上)");
             $this->setError($controller, $request, $user, $keyword, ACSMsg::get_tag_replace(ACSMsg::get_msg('System', 'EditSystemConfigAction.class.php', 'M_WRONG_VALUE'), array("{GROUP_NAME}" => $system_config_group_name, "{NAME}" => $name, "{VAL}" => 1)));
             $err_flg = true;
         }
         // number0の項目は自然数(0を含む)
         if ($type == 'number0' && !ACSErrorCheck::is_natural_number($form[$keyword], true)) {
             $this->setError($controller, $request, $user, $keyword, ACSMsg::get_tag_replace(ACSMsg::get_msg('System', 'EditSystemConfigAction.class.php', 'M_WRONG_VALUE'), array("{GROUP_NAME}" => $system_config_group_name, "{NAME}" => $name, "{VAL}" => 0)));
             $err_flg = true;
         }
     }
     if ($err_flg) {
         return $this->handleError();
     }
     $ret = true;
     ACSDB::_do_query("BEGIN");
     foreach ($system_config_obj->get_system_config_keyword_data_obj_array() as $system_config_keyword_data_obj) {
         $_system_config_row = array();
         $param_key = $system_config_keyword_data_obj->get_keyword();
         //$param_key = $system_config_keyword_data_obj->get_system_config_group() . ',' . $system_config_keyword_data_obj->get_keyword();
         // parameter 取得
         $update_value = $request->getParameter($param_key, 'NO_KEY');
         if ($update_value == 'NO_KEY') {
             // POST にキーがない場合、無視する
             continue;
         }
         // 必須チェック
         //if (!$update_value) {
         if (trim($update_value) == '') {
             $ret = false;
             break;
         }
         // 値チェック
         // number 型のデータの場合、数値チェック(1 以上)を行う
         if ($system_config_keyword_data_obj->get_type() == 'number') {
             if (!is_numeric($update_value) or $update_value < 1) {
                 $ret = false;
                 break;
             }
         }
         // number0 型のデータの場合、数値チェック(0 以上)を行う
         if ($system_config_keyword_data_obj->get_type() == 'number0') {
             if (!is_numeric($update_value) or $update_value < 0) {
                 $ret = false;
                 break;
             }
         }
         // 更新処理
         $ret = ACSSystemConfig::update_value($system_config_keyword_data_obj->get_system_config_group_name(), $system_config_keyword_data_obj->get_keyword(), $update_value);
         if (!$ret) {
             break;
         }
     }
     if (!$ret) {
         // rollback
         ACSDB::_do_query("ROLLBACK");
         print "ERROR: Update configuration failed.";
         exit;
     }
     // commit
     ACSDB::_do_query("COMMIT");
     // ログ登録: システム設定変更
     ACSLog::set_log($acs_user_info_row, 'Change System Settings', $ret);
     // 完了画面表示
     // 引数セット
     $message = ACSMsg::get_msg('System', 'EditSystemConfigAction.class.php', 'M005');
     $system_config_url = $this->getControllerPath('System', 'EditSystemConfig');
     $system_config_link_name = ACSMsg::get_msg('System', 'EditSystemConfigAction.class.php', 'M002');
     $system_top_page_url = $this->getControllerPath('System', DEFAULT_ACTION);
     $system_top_page_link_name = ACSMsg::get_msg('System', 'EditSystemConfigAction.class.php', 'M003');
     $done_obj = new ACSDone();
     $done_obj->set_title(ACSMsg::get_msg('System', 'EditSystemConfigAction.class.php', 'M004'));
     $done_obj->set_message($message);
     $done_obj->add_link($system_config_link_name, $system_config_url);
     $done_obj->add_link($system_top_page_link_name, $system_top_page_url);
     $request->setAttribute('done_obj', $done_obj);
     // 画面呼び出し
     $controller->forward('Common', 'Done');
 }
Пример #15
0
 function execute()
 {
     $context = $this->getContext();
     $controller = $context->getController();
     $request = $context->getRequest();
     $user = $context->getUser();
     $acs_user_info_row = $user->getAttribute('acs_user_info_row');
     // 対象となるコミュニティIDを取得
     $form = $request->ACSgetParameters();
     // 待機種別マスタ
     $waiting_type_master_array = ACSDB::get_master_array('waiting_type');
     // 待機状態マスタ
     $waiting_status_master_array = ACSDB::get_master_array('waiting_status');
     // 待機情報
     $waiting_row = ACSWaiting::get_waiting_row($form['waiting_id']);
     // コミュニティ情報
     $community_row = ACSCommunity::get_community_row($waiting_row['community_id']);
     // forward
     $done_obj = new ACSDone();
     if ($form['accept_button']) {
         // 承認ボタン押下時 //
         ACSDB::_do_query("BEGIN");
         if ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D20')) {
             // コミュニティメンバ追加
             $community_member_form = array();
             $community_member_form['community_id'] = $waiting_row['community_id'];
             $community_member_form['user_community_id'] = $waiting_row['waiting_community_id'];
             $ret = ACSCommunity::set_community_member($community_member_form);
         } elseif ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D40')) {
             // コミュニティ間リンク設定
             $ret = ACSCommunity::set_community_link($waiting_row['community_id'], $waiting_row['waiting_community_id']);
         } elseif ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D50')) {
             // コミュニティ間リンク設定
             $ret = ACSCommunity::set_community_link($waiting_row['waiting_community_id'], $waiting_row['community_id']);
         }
         if ($ret) {
             // 承認済みをセット
             $ret = ACSWaiting::update_waiting_waiting_status_code($form['waiting_id'], ACSMsg::get_mst('waiting_status_master', 'D20'), $acs_user_info_row['user_community_id'], $form['reply_message']);
             if ($ret) {
                 ACSDB::_do_query("COMMIT");
                 // 整合性保持
                 if ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D20')) {
                     // 参加の重複を解除
                     ACSWaiting::update_waiting_for_join_community($waiting_row['community_id'], $waiting_row['waiting_community_id']);
                     // 招待の重複を解除
                     ACSWaiting::update_waiting_for_invite_to_community($waiting_row['waiting_community_id'], $waiting_row['community_id']);
                 } elseif ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D40')) {
                     // 親コミュニティ追加の重複解除
                     ACSWaiting::update_waiting_for_parent_community_link($waiting_row['community_id'], $waiting_row['waiting_community_id']);
                     // サブコミュニティ追加の重複解除
                     ACSWaiting::update_waiting_for_sub_community_link($waiting_row['waiting_community_id'], $waiting_row['community_id']);
                 } elseif ($waiting_row['waiting_type_name'] == ACSMsg::get_mst('waiting_type_master', 'D50')) {
                     // サブコミュニティ追加の重複解除
                     ACSWaiting::update_waiting_for_sub_community_link($waiting_row['community_id'], $waiting_row['waiting_community_id']);
                     // 親コミュニティ追加の重複解除
                     ACSWaiting::update_waiting_for_parent_community_link($waiting_row['waiting_community_id'], $waiting_row['community_id']);
                 }
                 // 返信メッセージ
                 if ($form['reply_message'] != '') {
                     $ret = ACSWaiting::send_admission_accept_notify_mail($form['waiting_id']);
                 }
                 $done_obj->set_title(ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'FIN_ADM'), array("{WAITING_TYPE_NAME}" => $waiting_row[waiting_type_name])));
                 $done_obj->set_message(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'M001'));
             } else {
                 $done_obj->set_message(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'M002'));
             }
         } else {
             ACSDB::_do_query("ROLLBACK");
         }
     } elseif ($form['reject_button']) {
         // 拒否ボタン押下時
         $ret = ACSWaiting::update_waiting_waiting_status_code($form['waiting_id'], ACSMsg::get_mst('waiting_status_master', 'D30'), $acs_user_info_row['user_community_id']);
         if ($ret) {
             $done_obj->set_title(ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'FIN_DIS'), array("{WAITING_TYPE_NAME}" => $waiting_row[waiting_type_name])));
             $done_obj->set_message(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'M001'));
         } else {
             $done_obj->set_message(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'M002'));
         }
     }
     $done_obj->add_link(ACSMsg::get_tag_replace(ACSMsg::get_msg('Community', 'WaitingListAction.class.php', 'BACK_TO_CM'), array("{COMMUNITY_NAME}" => $community_row['community_name'])), $this->getControllerPath('Community', DEFAULT_ACTION) . '&community_id=' . $community_row['community_id']);
     $request->setAttribute('done_obj', $done_obj);
     $controller->forward('Common', 'Done');
 }