118 lines
3.5 KiB
Markdown
118 lines
3.5 KiB
Markdown
User Activity Log plugin for [Vanguard - Advanced PHP Login and User Management](https://vanguardapp.io)
|
|
system.
|
|
|
|
This plugin was originally part of the Vanguard itself, but it has been extracted as a separate plugin starting from Vanguard 4.
|
|
|
|
## Installation
|
|
|
|
This plugin requires Vanguard `5.0.0` or greater.
|
|
|
|
### Installation via Composer
|
|
|
|
To install the plugin first you will need to pull it via composer
|
|
by running the following command
|
|
|
|
```
|
|
composer require vanguardapp/activity-log
|
|
```
|
|
|
|
The composer will install the plugin for you as well as it's dependencies.
|
|
|
|
The next step is to register the plugin by adding the
|
|
`\Vanguard\UserActivity\UserActivity::class`
|
|
to the list of Vanguard plugins inside the `VanguardServiceProvider`:
|
|
|
|
```php
|
|
protected function plugins()
|
|
{
|
|
return [
|
|
//...
|
|
\Vanguard\UserActivity\UserActivity::class,
|
|
];
|
|
}
|
|
```
|
|
|
|
As soon as your plugin is registered, you should publish the
|
|
plugins migrations by running the following command:
|
|
|
|
```
|
|
php artisan vendor:publish --provider="Vanguard\UserActivity\UserActivity" --tag="migrations"
|
|
```
|
|
|
|
And, as the last step of the installation, you will need to
|
|
run the following commands to make all the necessary database modifications:
|
|
|
|
```
|
|
php artisan migrate
|
|
php artisan db:seed --class="ActivityPermissionsSeeder"
|
|
```
|
|
|
|
At this point the plugin will be fully installed and ready to go.
|
|
It is configured to listen for most of the events that are coming from
|
|
Vanguard and to put the into the activity log.
|
|
|
|
### Manual Installation
|
|
|
|
If you plan to make the modifications to the plugin and customize it to
|
|
fit your needs, it's much easier if you add it to your project manually.
|
|
|
|
To do so, you will need to download the ZIP archive from GitHub
|
|
by clicking the green "Clone or download" button and then choosing
|
|
the "Download ZIP" option from the dropdown.
|
|
|
|
Once you have the ZIP file on your computer, extract it to the
|
|
`plugins/ActivityLog` folder (you will need to create this folder
|
|
since it probably won't be present in your Vanguard installation).
|
|
|
|
Next step is to update your main `composer.json` file located in
|
|
Vanguard's root directory and add the following object to the `repositories`
|
|
array:
|
|
|
|
```
|
|
{
|
|
"type": "path",
|
|
"url": "./plugins/ActivityLog"
|
|
}
|
|
```
|
|
|
|
This will tell the composer that your plugin is located in `/plugins/ActivityLog`
|
|
directory and that it should be installed from there.
|
|
|
|
Now, add the following to the composer's `require` section
|
|
|
|
```
|
|
"vanguardapp/activity-log": "*"
|
|
```
|
|
|
|
And run `composer update`.
|
|
|
|
Composer will now install the plugin from your local directory instead
|
|
of pulling it from GitHub, which means that you will be able to make
|
|
the changes to the plugin itself and customize it to fit your needs.
|
|
|
|
The rest of the process is the same as when the plugin is installed
|
|
by directly fetching it via composer from the GitHub repository, so you
|
|
will need to do all the same steps as above, which in short involves
|
|
updating the `VanguardServiceProvider` and running the commands to
|
|
publish plugin's static assets and to update the database.
|
|
|
|
## Dashboard Widgets
|
|
|
|
A plugin provides user activity dashboard widget that is visible for all users with a role `User`.
|
|
|
|
To activate the widget add the `Vanguard\UserActivity\Widgets\ActivityWidget::class` to the widgets array in `VanguardServiceProvider`:
|
|
|
|
```php
|
|
protected function widgets()
|
|
{
|
|
return [
|
|
//...
|
|
\Vanguard\UserActivity\Widgets\ActivityWidget::class,
|
|
];
|
|
}
|
|
```
|
|
|
|
## License
|
|
|
|
This plugin is an open-source software licensed under the [MIT license](https://opensource.org/licenses/MIT).
|