Project

General

Profile

Enhancement(機能追加・改善) #626

Enable open communities to outwards of SNS (コミュニティを外部公開できるようにする)

Added by Eitarow Fukamachi over 9 years ago. Updated over 7 years ago.

Status:
Accepted(着手)
Priority:
Normal(通常)
Assignee:
Target version:
Start date:
2010-02-12
Due date:
% Done:

0%


Description

コミュニティにpublic_flagを追加し、外部公開できるようにする。その際、opCommunityTopicPluginのトピック公開範囲を廃止し、トピック・イベントの公開範囲はコミュニティの公開範囲に準じるものにする。


Related issues

Related to OpenPNE 3 - Enhancement(機能追加・改善) #1546: サークルの外部公開機能を追加 Invalid(無効) 2010-09-01
Related to opCommunityTopicPlugin - Enhancement(機能追加・改善) #1547: コミュニティトピック外部公開機能の取り込み New(新規) 2010-09-01
Related to OpenPNE 3 - Bug(バグ) #1912: OpenPNE3.7.xのコミュニティメンバー画面にグローバルナビとローカルナビが表示されていない New(新規) 2011-02-08

Associated revisions

Revision 63682026 (diff)
Added by Itsuro Tajima about 9 years ago

(refs #626) added untracked file

Revision c9fea286 (diff)
Added by Itsuro Tajima about 9 years ago

(refs #626) fixed not to show community to community member when user is a community member

Revision 5568e82d (diff)
Added by Shouta Kashiwagi over 7 years ago

Revert "(refs #626) fixed not to show community to community member when user is a community member"

This reverts commit c9fea286397c46302ff92405ed6c63b26b03a682.

Revision 731de86d (diff)
Added by Shouta Kashiwagi over 7 years ago

Revert "(refs #626) added untracked file"

This reverts commit 63682026ee0149dd75c9ec3b763ef79c4f418b21.

Revision 7cd03243 (diff)
Added by Shouta Kashiwagi over 7 years ago

Revert "(refs #626) reflected http://github.com/fukamachi/OpenPNE3/tree/open-community"

This reverts commit 80e214e47e3cc8007a4a6d11c5d5372fc2d7032a.

Conflicts:

lib/action/opCommunityAction.class.php
test/functional/pc_frontend/communityActionsTest.php

History

#1 Updated by Eitarow Fukamachi over 9 years ago

  • Subject changed from Enabled open communities to outwards of SNS (コミュニティを外部公開できるようにする) to Enable open communities to outwards of SNS (コミュニティを外部公開できるようにする)
  • Status changed from Accepted(着手) to Pending Review(レビュー待ち)

http://github.com/fukamachi/OpenPNE3/tree/open-community にコミットしました。

opCommunityTopicPlugin側は http://trac.openpne.jp/changeset/13373 で実装しました

#2 Updated by Eitarow Fukamachi over 9 years ago

  • % Done changed from 0 to 90

#3 Updated by Yuki Kan over 9 years ago

○ログインしていない状態でアクセスした場合に
・イベントのページへ移動すると「アクセスできません」とでるので ログインしてくださいと促すように変更したほうがよさげです

#4 Updated by Shinichi Urabe about 9 years ago

  • Status changed from Pending Review(レビュー待ち) to Accepted(着手)
  • Assignee changed from Eitarow Fukamachi to Itsuro Tajima
  • % Done changed from 50 to 90

田島さん #1546 のチケットでオーナつけてもらっているのですが、こちらで対応をお願いします

#5 Updated by Shinichi Urabe about 9 years ago

  • Target version set to OpenPNE 3.7.0

#6 Updated by Itsuro Tajima about 9 years ago

当該ブランチを反映したところ、
コミュニティ設定を「コミュニティ参加者のみ公開」にするとコミュニティ参加者(作成者)にもアクセスできなくなりました。

#7 Updated by Itsuro Tajima about 9 years ago

上記問題は修正されました。
現状で
  1. 非ログイン、Web全体に公開→表示
  2. 非ログイン、全員に公開→表示せず
  3. 非ログイン、コミュニティ参加者のみ公開→表示せず
  4. 非メンバー、Web全体に公開→表示
  5. 非メンバー、全員に公開→表示
  6. 非メンバー、コミュニティ参加者のみ公開→表示せず
  7. メンバー、Web全体に公開→表示
  8. メンバー、全員に公開→表示
  9. メンバー、コミュニティ参加者のみ公開→表示

のように正常な振る舞いをしています。ただし、文言に不自然なところがあることと、本来あるべき選択肢がない(「SNS参加者のみ公開」がない)などの問題があるため、これを解消します。

#8 Updated by Itsuro Tajima almost 9 years ago

  • Status changed from Accepted(着手) to Pending Review(レビュー待ち)
  • % Done changed from 90 to 50

選択肢の問題は今調べたところありませんでした。
■コミュニティ参加者のみ公開
■SNS参加者のみ公開
■Web全体に公開
の3つとなっています。
一番上の選択肢の「コミュニティ」の部分でtermが使われていませんが、opCommunityTopicPlugin側の問題のため、本チケットでは対応しませんでした。

#9 Updated by Kiwa Sakai over 8 years ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

コミュニティの公開範囲は「トピックの公開範囲」という項目で扱われています。
まず、コミュニティの公開範囲 = トピックの公開範囲 という認識で問題ないのか確認させてください。

コミュニティの公開範囲 = トピックの公開範囲 の場合

トピックの公開範囲を「コミュニティ参加者のみ公開」に変更するとコミュニティトップすら閲覧できないという現象が発生してしいまいます。
以下のような変更をお願いします。

diff --git a/lib/acl/opCommunityAclBuilder.class.php b/lib/acl/opCommunityAclBuilder.class.php
index e54daac..d58bee8 100644
--- a/lib/acl/opCommunityAclBuilder.class.php
+++ b/lib/acl/opCommunityAclBuilder.class.php
@@ -59,7 +59,7 @@ class opCommunityAclBuilder extends opAclBuilder
}
else if ('auth_commu_member' === $resource->getConfig('public_flag'))
{
- $acl->allow('member', null, 'view');
+ $acl->allow('alien', null, 'view');
}
else
{

コミュニティの公開範囲 ≠ トピックの公開範囲 の場合

  • コミュニティ公開範囲のフラグを「public_flag」ではなく、別のフラグを使ってください
    • もしくは、トピック公開範囲用のフラグを作成し、現在の公開範囲をそのフラグに変更するためのスクリプトを提供してください
  • コミュニティ公開範囲が「コミュニティ参加者のみ公開」のコミュニティがコミュニティ検索に表示されています。除外する処理を追加してください
  • コミュニティ公開範囲が「コミュニティ参加者のみ公開」の場合にコミュニティに参加するための導線がありません

#10 Updated by Itsuro Tajima over 8 years ago

  • Status changed from Rejected(差し戻し) to Accepted(着手)

基本的に、「コミュニティの公開範囲 ≠ トピックの公開範囲」という認識です。
つまり、トピックの公開範囲の制御はopCommunityTopicPluginで行うという方針です。

■フラグの問題
現在のopCommunityTopicPluginと同じフラグを見ている、ということが問題の焦点だと認識します。
このチケットには「opCommunityTopicPluginのトピック公開範囲を廃止し」とあるのですが、
これはopCommunityTopicPluginで扱うべき事項なので、このチケットの範囲ではpublic_flagがトピックで使われることは避けられません。
このため、別のフラグを使う方針に変更します。

■検索に表示される問題
除外処理を実装します。

■導線の問題
「コミュニティ参加者のみ公開」の場合は「管理人の承認」を求めるような処理を実装します。

#11 Updated by Shouta Kashiwagi over 7 years ago

  • Target version changed from OpenPNE 3.7.0 to 252

#12 Updated by Shouta Kashiwagi over 7 years ago

  • Target version changed from 252 to OpenPNE 3.8.x

Also available in: Atom PDF