PHPackages                             lopatin96/laravel-subscription - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. lopatin96/laravel-subscription

AbandonedLibrary

lopatin96/laravel-subscription
==============================

Laravel subscription

1.0.38(1y ago)08.9kMITPHPPHP &gt;=8.1

Since Apr 17Pushed 1y ago1 watchersCompare

[ Source](https://github.com/lopatin96/laravel-subscription)[ Packagist](https://packagist.org/packages/lopatin96/laravel-subscription)[ RSS](/packages/lopatin96-laravel-subscription/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (40)Used By (0)

Install
=======

[](#install)

### Migration

[](#migration)

Run migration

```
php artisan migrate
```

### Trait

[](#trait)

Add **fillable**, **casts** and **HasSubscription** trait to User model

```
use Atin\LaravelSubscription\Traits\HasSubscription;

class User extends Authenticatable
{
    use HasSubscription, …

    protected $fillable = [
        …
        'billing_visited_at',
    ];

    protected $casts = [
        …
        'billing_visited_at' => 'datetime',
    ];
```

### Nova

[](#nova)

Fields

```
Boolean::make('Billing', 'billing_visited_at')
    ->onlyOnIndex()
    ->sortable(),

DateTime::make('Billing Visited At', 'billing_visited_at')
    ->hideFromIndex()
    ->nullable()
    ->readonly(),
```

### Register

[](#register)

For example, in `spark/app.blade.php`:

```
@php
    auth()->user()->update([
        'billing_visited_at' => now(),
    ]);

    activity()
        ->causedBy(auth()->user())
        ->log('billing:visited');
@endphp
```

### Views

[](#views)

Add subscription info component to *resources/views/layouts/app.blade.php*:

```

    @include('laravel-subscription::subscription.info')
    …
```

### Console

[](#console)

Add `IncompleteSubscriptions` to `app/Console/Kernel.php`

```
use Atin\LaravelSubscription\Console\IncompleteSubscriptions;

class Kernel extends ConsoleKernel
{
    protected function schedule(Schedule $schedule): void
    {
        $schedule->call(new IncompleteSubscriptions)->hourly()->between('6:00', '24:00');
```

### Config

[](#config)

Publish config to manage limited version of config:

```
php artisan vendor:publish --tag="laravel-subscription-config"
```

Nova
====

[](#nova-1)

### Resource

[](#resource)

```
