wdmg/yii2-activity

用户活动跟踪系统

安装: 945

依赖项: 1

建议者: 0

安全: 0

星星: 4

观察者: 4

分支: 3

开放性问题: 1

类型:yii2-extension

1.2.2 2023-07-07 09:23 UTC

This package is auto-updated.

Last update: 2024-09-07 11:50:25 UTC


README

Yii2 Downloads Packagist Version Progress GitHub license

Yii2 Activity

Yii2 Activity 模块

为 Yii2 提供用户活动跟踪系统。您可以使用扩展组件来注册任何活动。

此模块是 Butterfly.СMS 内容管理系统的组成部分,但也可以作为独立扩展使用。

版权所有 (c) 2019-2023 W.D.M.Group, Ukraine

要求

  • PHP 5.6 或更高版本
  • Yii2 v.2.0.40 及以上
  • Yii2 Base 模块(必需)
  • Yii2 Users 模块(必需)

安装

要在控制台安装模块,请运行以下命令

$ composer require "wdmg/yii2-activity"

配置数据库连接后,在控制台运行以下命令

$ php yii activity/init

然后选择您想要执行的操作

  1. 应用所有模块迁移
  2. 撤销所有模块迁移
  3. 清除用户活动日志

迁移

无论如何,您都可以在控制台运行以下命令来执行迁移和创建初始数据

$ php yii migrate --migrationPath=@vendor/wdmg/yii2-activity/migrations

配置

要将模块添加到项目中,在配置文件中添加以下数据

'modules' => [
    ...
    'activity' => [
        'class' => 'wdmg\activity\Module',
        'routePrefix' => 'admin',
        'surfingActivity': false, // Log of web-surfing activity
        'backendSurfing': true, // Log of web-surfing activity by backend.
        'frontendSurfing': false, // Log of web-surfing activity by frontend.
        'ignoringRoutes': [], // Ignoring activity by request route
        'ignoringUsers': [], // Ignoring activity by user ID
        'ignoringIp': [] // Ignoring activity by user IP
    ],
    ...
],

用例

使用 setActivity($message = null, $action = null, $type = null, $level = 1) 方法来记录事件和用户操作,您可以使用以下构造

<?php

    if($model->login()) {
        $activity = new Activity;
        $activity->setActivity('User has successfully login.', 'login', 'info', 2);
        ...
    }
    
    // or from component
    
    if($model->login()) {
        Yii::$app->activity->set('User has successfully login.', 'login', 'info', 2);
        ...
    }
    
?>

路由

使用模块的 Module::dashboardNavItems() 方法来生成导航项列表,例如

<?php
    echo Nav::widget([
    'options' => ['class' => 'navbar-nav navbar-right'],
        'label' => 'Modules',
        'items' => [
            Yii::$app->getModule('activity')->dashboardNavItems(),
            ...
        ]
    ]);
?>

状态和版本 [准备使用]

  • v.1.2.2 - 更新 README.md 和依赖项
  • v.1.2.1 - 添加筛选/排序顺序,将自动更新保存到用户选项
  • v.1.2.0 - 更新版权
  • v.1.1.13 - 列表的实时自动更新
  • v.1.1.12 - 更新 README.md,添加从控制台清除用户活动日志
  • v.1.1.11 - 更新 README.md 和依赖项
  • v.1.1.10 - 添加属性,重构 setActivity() 方法
  • v.1.1.9 - 添加分页,更新到日期的依赖项
  • v.1.1.8 - 修复过时的类声明
  • v.1.1.7 - 添加 composer.json 和 navbar 菜单图标的额外选项
  • v.1.1.6 - 添加非交互模式的参数选择