Skip to content

Commit

Permalink
Rename package
Browse files Browse the repository at this point in the history
  • Loading branch information
arrilot committed Jul 30, 2021
1 parent 3a974c2 commit 43ec14c
Show file tree
Hide file tree
Showing 57 changed files with 284 additions and 297 deletions.
37 changes: 12 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,21 @@
# Laravel Ensi Audit
# Laravel Auditing

Пакет для работы с историей изменений данных Ensi в Laravel приложениях.
Является форком [owen-it/laravel-auditing](https://github.com/owen-it/laravel-auditing).
Opiniated fork of [owen-it/laravel-auditing](https://github.com/owen-it/laravel-auditing)

## Установка

1. Добавьте в composer.json в repositories

```
repositories: [
{
"type": "vcs",
"url": "https://gitlab.com/greensight/ensi/packages/laravel-ensi-audit.git"
}
],
```

2. `composer require ensi/laravel-ensi-audit`
3. `php artisan vendor:publish --provider="Ensi\LaravelEnsiAudit\EnsiAuditServiceProvider"`
4. Добавьте в `config/app` класс провайдера `Ensi\LaravelEnsiAudit\EnsiAuditServiceProvider::class`
1. `composer require greensight/laravel-auditing`
2. `php artisan vendor:publish --provider="Greensight\LaravelAuditing\LaravelAuditingServiceProvider"`
3. Добавьте в `config/app` класс провайдера `Greensight\LaravelAuditing\LaravelAuditingServiceProvider::class`

## Использование

По-умолчанию никакая история изменения для моделей не сохраняется.
Чтобы включить логирование для конкретной модели надо добавить ей трейт `SupportsAudit` и интерфейс `Auditable`

```php
use Ensi\LaravelEnsiAudit\Contracts\Auditable;
use Ensi\LaravelEnsiAudit\SupportsAudit;
use Greensight\LaravelAuditing\Contracts\Auditable;
use Greensight\LaravelAuditing\SupportsAudit;

class Something extends Model implements Auditable {
use SupportsAudit;
Expand All @@ -37,7 +24,7 @@ class Something extends Model implements Auditable {
```

В случае, если мы меняем данные дочерних с логической точки зрения моделей и хотим чтобы в истории это изменение проходило под родительской моделью, необходимо в транзакции до изменения данных задать корневую сущность (т.е модель).
Делается это через фасад `Transaction` или менеджер `\\Ensi\\LaravelEnsiAudit\\Transactions\\ExtendedTransactionManager`
Делается это через фасад `Transaction` или менеджер `\\Greensight\\LaravelAuditing\\Transactions\\ExtendedTransactionManager`

```php
DB::transaction(function () {
Expand All @@ -47,10 +34,10 @@ DB::transaction(function () {
});
```

Для добавления в историю данных о том кто произвел изменения (конкретный пользователь, или, например, консольная команда) опять же нужно это сделать до изменения данных, но уже через фасад `Subject` или инъекцию `\\Ensi\\LaravelEnsiAudit\\Resolvers\\SubjectManager`
Для добавления в историю данных о том кто произвел изменения (конкретный пользователь, или, например, консольная команда) опять же нужно это сделать до изменения данных, но уже через фасад `Subject` или инъекцию `\\Greensight\\LaravelAuditing\\Resolvers\\SubjectManager`

```php
Subject::attach($subject); // $subject - объект реализующий Ensi\LaravelEnsiAudit\Contracts
Subject::attach($subject); // $subject - объект реализующий Greensight\LaravelAuditing\Contracts
```

Субъект не отвязывается после завершения транзакции.
Expand All @@ -59,7 +46,7 @@ Subject::attach($subject); // $subject - объект реализующий Ens
При обработке http запросов, можно задавать субъекта в middleware. В консольных командах и
обработчиках очереди событий переназначать в процессе выполнения.

Субъектом может являться любая сущность, поддерживающая интерфейс `\Ensi\LaravelEnsiAudit\Contracts\Principal`.
Субъектом может являться любая сущность, поддерживающая интерфейс `\Greensight\LaravelAuditing\Contracts\Principal`.
Если субъектом является выполняемое задание, например, импорт из файла, то оно может возвращать идентификатор
пользователя, создавшего задание в методе `getUserIdentifier()`, а в качестве наименования возвращать имя
импортируемого файла.
Expand All @@ -70,4 +57,4 @@ Subject::attach($subject); // $subject - объект реализующий Ens

## Лицензия

[Открытая лицензия на право использования программы для ЭВМ Greensight Ecom Platform (GEP)](LICENSE.md).
[The MIT License (MIT)](LICENSE.md).
10 changes: 5 additions & 5 deletions composer.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "ensi/laravel-ensi-audit",
"name": "greensight/laravel-auditing",
"description": "",
"type": "library",
"license": "MIT",
Expand All @@ -19,19 +19,19 @@
},
"autoload": {
"psr-4": {
"Ensi\\LaravelEnsiAudit\\": "src/"
"Greensight\\LaravelAuditing\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"Ensi\\LaravelEnsiAudit\\Tests\\": "tests/",
"Ensi\\LaravelEnsiAudit\\Database\\Factories\\": "tests/database/factories/"
"Greensight\\LaravelAuditing\\Tests\\": "tests/",
"Greensight\\LaravelAuditing\\Database\\Factories\\": "tests/database/factories/"
}
},
"extra": {
"laravel": {
"providers": [
"Ensi\\LaravelEnsiAudit\\EnsiAuditServiceProvider"
"Greensight\\LaravelAuditing\\LaravelAuditingServiceProvider"
]
}
},
Expand Down
10 changes: 5 additions & 5 deletions config/ensi-audit.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
|
*/

'implementation' => Ensi\LaravelEnsiAudit\Models\Audit::class,
'implementation' => Greensight\LaravelAuditing\Models\Audit::class,

/*
|--------------------------------------------------------------------------
Expand All @@ -37,10 +37,10 @@
|
*/
'resolver' => [
'user' => Ensi\LaravelEnsiAudit\Facades\Subject::class,
'ip_address' => Ensi\LaravelEnsiAudit\Resolvers\IpAddressResolver::class,
'user_agent' => Ensi\LaravelEnsiAudit\Resolvers\UserAgentResolver::class,
'url' => Ensi\LaravelEnsiAudit\Resolvers\UrlResolver::class,
'user' => Greensight\LaravelAuditing\Facades\Subject::class,
'ip_address' => Greensight\LaravelAuditing\Resolvers\IpAddressResolver::class,
'user_agent' => Greensight\LaravelAuditing\Resolvers\UserAgentResolver::class,
'url' => Greensight\LaravelAuditing\Resolvers\UrlResolver::class,
],

/*
Expand Down
10 changes: 5 additions & 5 deletions src/Audit.php
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?php

namespace Ensi\LaravelEnsiAudit;
namespace Greensight\LaravelAuditing;

use DateTimeInterface;
use Ensi\LaravelEnsiAudit\Contracts\Principal;
use Greensight\LaravelAuditing\Contracts\Principal;
use Illuminate\Database\Eloquent\Relations\MorphTo;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Config;
use Illuminate\Database\Eloquent\Model;
use Ensi\LaravelEnsiAudit\Contracts\AttributeEncoder;
use Greensight\LaravelAuditing\Contracts\AttributeEncoder;

trait Audit
{
Expand Down Expand Up @@ -53,15 +53,15 @@ public function root(): MorphTo
*/
public function getConnectionName()
{
return Config::get('ensi-audit.drivers.database.connection');
return Config::get('laravel-auditing.drivers.database.connection');
}

/**
* {@inheritdoc}
*/
public function getTable(): string
{
return Config::get('ensi-audit.drivers.database.table', parent::getTable());
return Config::get('laravel-auditing.drivers.database.table', parent::getTable());
}

/**
Expand Down
18 changes: 9 additions & 9 deletions src/AuditableObserver.php
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<?php

namespace Ensi\LaravelEnsiAudit;
namespace Greensight\LaravelAuditing;

use Ensi\LaravelEnsiAudit\Contracts\Auditable;
use Ensi\LaravelEnsiAudit\Facades\Auditor;
use Greensight\LaravelAuditing\Contracts\Auditable;
use Greensight\LaravelAuditing\Facades\Auditor;

class AuditableObserver
{
Expand All @@ -17,7 +17,7 @@ class AuditableObserver
/**
* Handle the retrieved event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return void
*/
Expand All @@ -29,7 +29,7 @@ public function retrieved(Auditable $model)
/**
* Handle the created event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return void
*/
Expand All @@ -41,7 +41,7 @@ public function created(Auditable $model)
/**
* Handle the updated event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return void
*/
Expand All @@ -56,7 +56,7 @@ public function updated(Auditable $model)
/**
* Handle the deleted event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return void
*/
Expand All @@ -68,7 +68,7 @@ public function deleted(Auditable $model)
/**
* Handle the restoring event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return void
*/
Expand All @@ -83,7 +83,7 @@ public function restoring(Auditable $model)
/**
* Handle the restored event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return void
*/
Expand Down
20 changes: 10 additions & 10 deletions src/Auditor.php
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
<?php

namespace Ensi\LaravelEnsiAudit;
namespace Greensight\LaravelAuditing;

use Ensi\LaravelEnsiAudit\Contracts\Auditable;
use Ensi\LaravelEnsiAudit\Contracts\AuditDriver;
use Ensi\LaravelEnsiAudit\Drivers\Database;
use Ensi\LaravelEnsiAudit\Events\Audited;
use Ensi\LaravelEnsiAudit\Events\Auditing;
use Ensi\LaravelEnsiAudit\Exceptions\AuditingException;
use Greensight\LaravelAuditing\Contracts\Auditable;
use Greensight\LaravelAuditing\Contracts\AuditDriver;
use Greensight\LaravelAuditing\Drivers\Database;
use Greensight\LaravelAuditing\Events\Audited;
use Greensight\LaravelAuditing\Events\Auditing;
use Greensight\LaravelAuditing\Exceptions\AuditingException;
use Illuminate\Support\Manager;
use InvalidArgumentException;

Expand Down Expand Up @@ -78,7 +78,7 @@ public function execute(Auditable $model)
/**
* Create an instance of the Database audit driver.
*
* @return \Ensi\LaravelEnsiAudit\Drivers\Database
* @return \Greensight\LaravelAuditing\Drivers\Database
*/
protected function createDatabaseDriver(): Database
{
Expand All @@ -88,8 +88,8 @@ protected function createDatabaseDriver(): Database
/**
* Fire the Auditing event.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Ensi\LaravelEnsiAudit\Contracts\AuditDriver $driver
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\AuditDriver $driver
*
* @return bool
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Console/AuditDriverCommand.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Console;
namespace Greensight\LaravelAuditing\Console;

use Illuminate\Console\GeneratorCommand;

Expand Down
6 changes: 3 additions & 3 deletions src/Console/InstallCommand.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Console;
namespace Greensight\LaravelAuditing\Console;

use Illuminate\Console\Command;
use Illuminate\Container\Container;
Expand Down Expand Up @@ -45,13 +45,13 @@ protected function registerAuditingServiceProvider()

$appConfig = file_get_contents(config_path('app.php'));

if (Str::contains($appConfig, 'Ensi\\LaravelEnsiAudit\\EnsiAuditServiceProvider::class')) {
if (Str::contains($appConfig, 'Greensight\\LaravelAuditing\\LaravelAuditingServiceProvider::class')) {
return;
}

file_put_contents(config_path('app.php'), str_replace(
"{$namespace}\\Providers\EventServiceProvider::class,".PHP_EOL,
"{$namespace}\\Providers\EventServiceProvider::class,".PHP_EOL." Ensi\LaravelEnsiAudit\EnsiAuditServiceProvider::class,".PHP_EOL,
"{$namespace}\\Providers\EventServiceProvider::class,".PHP_EOL." Greensight\LaravelAuditing\LaravelAuditingServiceProvider::class,".PHP_EOL,
$appConfig
));
}
Expand Down
2 changes: 1 addition & 1 deletion src/Contracts/AttributeEncoder.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Contracts;
namespace Greensight\LaravelAuditing\Contracts;

interface AttributeEncoder extends AttributeModifier
{
Expand Down
2 changes: 1 addition & 1 deletion src/Contracts/AttributeModifier.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Contracts;
namespace Greensight\LaravelAuditing\Contracts;

interface AttributeModifier
{
Expand Down
2 changes: 1 addition & 1 deletion src/Contracts/AttributeRedactor.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Contracts;
namespace Greensight\LaravelAuditing\Contracts;

interface AttributeRedactor extends AttributeModifier
{
Expand Down
2 changes: 1 addition & 1 deletion src/Contracts/Audit.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Contracts;
namespace Greensight\LaravelAuditing\Contracts;

interface Audit
{
Expand Down
8 changes: 4 additions & 4 deletions src/Contracts/AuditDriver.php
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
<?php

namespace Ensi\LaravelEnsiAudit\Contracts;
namespace Greensight\LaravelAuditing\Contracts;

interface AuditDriver
{
/**
* Perform an audit.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return \Ensi\LaravelEnsiAudit\Contracts\Audit
* @return \Greensight\LaravelAuditing\Contracts\Audit
*/
public function audit(Auditable $model): Audit;

/**
* Remove older audits that go over the threshold.
*
* @param \Ensi\LaravelEnsiAudit\Contracts\Auditable $model
* @param \Greensight\LaravelAuditing\Contracts\Auditable $model
*
* @return bool
*/
Expand Down
6 changes: 3 additions & 3 deletions src/Contracts/Auditable.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?php

namespace Ensi\LaravelEnsiAudit\Contracts;
namespace Greensight\LaravelAuditing\Contracts;

use Illuminate\Database\Eloquent\Relations\MorphMany;

Expand Down Expand Up @@ -46,7 +46,7 @@ public function readyForAuditing(): bool;
/**
* Return data for an Audit.
*
* @throws \Ensi\LaravelEnsiAudit\Exceptions\AuditingException
* @throws \Greensight\LaravelAuditing\Exceptions\AuditingException
*
* @return array
*/
Expand Down Expand Up @@ -123,7 +123,7 @@ public function generateTags(): array;
* @param Audit $audit
* @param bool $old
*
* @throws \Ensi\LaravelEnsiAudit\Exceptions\AuditableTransitionException
* @throws \Greensight\LaravelAuditing\Exceptions\AuditableTransitionException
*
* @return Auditable
*/
Expand Down
Loading

0 comments on commit 43ec14c

Please sign in to comment.