arter/amos-community

此包最新版本(1.6.0)的许可信息不可用。

社区 AMOS 系统

1.6.0 2024-04-02 08:26 UTC

This package is auto-updated.

Last update: 2024-09-07 09:50:42 UTC


README

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

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

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

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

安装

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

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

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

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

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

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

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

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

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

可配置字段

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

 'community' => [
	'class' => 'arter\amos\community\AmosCommunity',
	'showSubcommunities' => false, //changed property (default was true)
 ],
 
  • showSubcommunities - 布尔值,默认 = true
    定义子社区是否在列表中可见(创建者、我的社区等)
  • showSubcommunitiesWidget - 布尔值,默认 = false
    定义子社区小部件是否在社区仪表板上可见
  • bypassWorkflow - 布尔值,默认 = false
    如果忽略社区工作流
  • enableWizard - 布尔值,默认 = true
    如果启用了社区创建向导
  • communityType - int,默认 = null
    如果所有社区类型都启用,则设置为 null,要设置固定社区类型,请设置此字段
    要更改默认值,请使用社区类型模型中的常量,例如
    'community' => [
      'class' => 'arter\amos\community\AmosCommunity',
      'communityType' => \arter\amos\community\models\CommunityType::COMMUNITY_TYPE_CLOSED,
    ],
    
  • viewTabContents - 布尔值,默认 = true
    定义在社区查看模式中是否可见选项卡内容
  • extendRoles - 布尔值,默认 = false
    如果为 true,则考虑额外的角色 Author 和 Reader,参与者将被视为编辑器
  • customInvitationForm - 布尔值,默认 = false
    如果为 true,则关联或创建用户。

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

    'community' => [
      'class' => 'arter\amos\community\AmosCommunity',
      'communityRequiredFields' => ['name', 'community_type_id']
    ],
    
  • hideContentsModels - 数组,默认 = [(ClassPath)ShowcaseProject, (ClassPath)EenPartnershipProposal,(ClassPath)Event']
    定义要在内容选项卡视图中隐藏的模型类路径,按以下方式重写 hideContentsModels 属性
    'community' => [
      'class' => 'arter\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 - 数组,默认 = [] 在此数组中具有平台角色的所有用户,在创建社区时都会被添加为社区管理员。