open20/amos-community

本包最新版本(1.15.4)没有可用的许可证信息。

AMOS社区系统


README

社区是由具有共同目标/兴趣的人组成的网络。可以与社区成员共享常用内容,并在社区仪表板中查看。非成员对社区内容的可见性取决于表字段 contents_visibility,默认值为0(内容对非成员不可用)。

默认情况下,社区可以是以下类型

  • 公开:任何用户都可以订阅(社区在社区列表中可见)
  • 私人:访问权限仅限于社区管理者接受的用户或受邀用户(可见但需要接受)
  • 仅限成员(封闭)- 订阅仅限邀请:社区仅对社区成员可见。

可以在另一个社区域名下创建子社区。

安装

在您的 composer.json 中添加社区需求

"open20/amos-community": "dev-master",

在 modules-amos.php 中启用社区模块,添加

 'community' => [
	'class' => 'open20\amos\community\AmosCommunity',
 ],

将社区迁移添加到控制台模块(console/config/migrations-amos.php)

'@vendor/open20/amos-community/src/migrations'

社区适合与cwh作为网络一起使用。为此

  • 激活cwh插件
  • 打开cwh配置向导(需要管理员权限)网址:/cwh/configuration/wizard
  • 在网络配置部分搜索社区
  • 如有需要,编辑社区配置并保存

如果需要标签,在 "modules-amos.php" 中启用此模块(主项目的 backend/config 文件夹)中的标签部分。之后,在标签管理器中启用树。

可配置字段

以下是可配置字段的列表,模块 AmosCommunity 的属性。如果某些属性的默认值不适合您的项目,您可以在模块中配置它,例如

 'community' => [
	'class' => 'open20\amos\community\AmosCommunity',
	'showSubcommunities' => false, //changed property (default was true)
 ],
 
  • showSubcommunities - 布尔值,默认 = true
    定义子社区是否在列表(创建者、我的社区等)中可见
  • showSubcommunitiesWidget - 布尔值,默认 = false
    定义子社区小部件是否在社区仪表板中可见
  • bypassWorkflow - 布尔值,默认 = false
    如果忽略社区工作流
  • enableWizard - 布尔值,默认 = true
    如果启用了社区创建向导
  • communityType - 整数,默认 = null
    如果所有社区类型都启用,则为null,要设置固定社区类型,请设置此字段
    要更改默认值,请使用社区类型模型中的常量,例如
'community' => [
    'class' => 'open20\amos\community\AmosCommunity',
    'communityType' => \open20\amos\community\models\CommunityType::COMMUNITY_TYPE_CLOSED,
],
  • viewTabContents - 布尔值,默认 = true
    定义在社区查看模式下是否可见标签内容

  • extendRoles - 布尔值,默认 = false
    如果为true,则将作者和读者视为附加角色,参与者将是编辑器

  • customInvitationForm - 布尔值,默认 = false
    如果为true,则关联或创建用户。

  • communityRequiredFields - 数组,默认 = ['name', 'community_type_id', 'description']
    社区表单中的必填字段:默认情况下,社区名称、类型和描述是必填的。
    如果您的平台中,例如,您不想社区描述成为必填字段,则如下覆盖 communityRequiredFields 属性

'community' => [
    'class' => 'open20\amos\community\AmosCommunity',
    'communityRequiredFields' => ['name', 'community_type_id']
],
  • hideContentsModels - 数组,默认 = [(ClassPath)ShowcaseProject, (ClassPath)EenPartnershipProposal,(ClassPath)Event']
    定义在内容标签视图中要隐藏的模型类路径,如下覆盖 hideContentsModels 属性
'community' => [
    'class' => 'open20\amos\community\AmosCommunity',
    'communityRequiredFields' => [
        'model/class/path',
    ]
],
  • inviteUserOfcommunityParent - 布尔值,默认 = false
    只有在用户属于父社区的情况下,您才能在子社区中邀请用户

  • hideWidgetGraphicsActions - 布尔值,默认 = false

  • htmlMailContent - 数组,默认 = [] 您可以通过社区发送的电子邮件进行个性化设置,这些值在 EmailUtility 中的 getNumTypeEmail($type) 函数中存在,分别是 ('registration-notification', 'registration-request', 'invitation', 'accept-invitation', reject-invitation, 'registration-rejects', 'welcome', 'change-role' )

 'htmlMailContent' => [
        'welcome' => '@backend/mail/community/welcome'
        'change-role => '@backend/mail/community/change-role', //CHANGE_ROLE
    ],
  • htmlMailSubject - 数组,默认 = [] 它与上一个参数的工作方式相同

  • enableUserJoinedReportDownload - 布尔值,默认 = false 启用显示社区视图中的 "用户报告" 容器(这将在其中显示 "下载用户加入报告" 按钮)

  • enableConfigureCommunityDashboard - 布尔值,默认 = false 添加了配置社区仪表板中包含的部件的可能性

  • autoCommunityManagerRoles - 数组,默认 = [] 此数组中包含平台角色的所有用户,在创建社区时将被添加为社区管理员。