Download the PHP package minutemailer/laravel-honeypot without Composer
On this page you can find all versions of the php package minutemailer/laravel-honeypot. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download minutemailer/laravel-honeypot
More information about minutemailer/laravel-honeypot
Files in minutemailer/laravel-honeypot
Package laravel-honeypot
Short Description Flexible credits for Laravel
License MIT
Informations about the package laravel-honeypot
Credits for Laravel
Honeypot is a simple credit system for Laravel. With Honeypot, users can have credit buckets where credits can be deposited to or withdrawn from. It's perfect for creating simple virtual currency systems or implementing reward programs.
With Honeypot, you can easily manage credits for your users and keep track of all transactions. Whether you're building an e-commerce platform or a social network, Honeypot makes it easy to add a credit system to your Laravel application.
Installation
You can install the package via composer:
The HoneypotServiceProvider
will be auto-discovered and registered by Laravel.
Next, create and run the database migration:
Finally add the CanHaveCredits
trait to your User
model:
Usage
In Honeypot, credit buckets must have a name, but you can also choose to set an expiration date for each bucket. If no expiration date is set, the bucket will remain active indefinitely. Additionally, you have the option to set a validity date for each bucket.
Creating a bucket
To create a bucket, use the addCreditBucket
method on the User
model:
The name is unique for each user, so you can't create two buckets with the same name for the same user.
Depositing credits
To deposit credits to a bucket, you need to select the bucket by name and then call the add
method on the bucket:
Using credits
Same as depositing, but use the use
method instead:
Using credits will increment the used
column on the bucket and keep the amount
column intact.
Default bucket
Depending on your application, you might want to utilize the default bucket. You might only have one type of credits but multiple types of buckets. Say for example earned credits and bought credits. The default bucket is the bucket with the shortest expiration date. This helps the user to use the credits that are about to expire first.
Therefor, you could use this logic to dynamically withdraw credits from the user:
All versions of laravel-honeypot with dependencies
illuminate/console Version >=10.0
illuminate/database Version >=10.0
illuminate/queue Version >=10.0
illuminate/support Version >=10.0