plutuss / amember-pro-laravel
aMember allows you to receive and send information about users, products and payments
1.2.2
2024-12-06 17:31 UTC
Requires
- php: ^8.1|^8.2|^8.3
README
Laravel:
composer require plutuss/amember-pro-laravel
php artisan vendor:publish --provider="Plutuss\AMember\Providers\AMemberServiceProvider"
.env
AMEMBER_URL=http://g00dsdw5vib.amdemo.com/api AMEMBER_API_KEY=F1dbbZd3453sdfneqdsfhw
#default collection #collection|array|json AMEMBER_TYPE_RESPONSE=collection
Use Facade AMember
- auth()
- invoice()
- payment()
- users()
- products()
- refunds()
- forms()
- access()
- affiliate()
<?php class AMemberController extends Controller { public function index() { \Plutuss\AMember\Facades\AMember::users()->getUsers(); } public function invoice_all() { \Plutuss\AMember\Facades\AMember::invoice()->getInvoice(); } public function invoice_by_id() { \Plutuss\AMember\Facades\AMember::invoice()->getInvoice(8); } public function auth() { \Plutuss\AMember\Facades\AMember::auth()->byLoginPass( login: 'admin', pass: '12341234' ); } public function store() { \Plutuss\AMember\Facades\AMember::users()->addUsers( login: 'admin', pass: '12341234', email: 'admin@admin.com', params: [ 'name_f' => 'John', 'name_l' => 'Smith', ... ] ); } public function update() { \Plutuss\AMember\Facades\AMember::users() ->updateUser( id: 8, fieldsAndValue: [ 'email' => 'max@admin.com', 'name_f' => 'Max', 'name_l' => 'Smith', ] ); } }
Parameters
You can pass additional parameters to control output: Docs
<?php public function index() { \Plutuss\AMember\Facades\AMember::users()->count(12)->page(2)->getUsers(); }
It is also possible to make a custom query
<?php public function index() { (new AMemberClient())->setOption('/users') ->format('json') ->filter(['user_id' => 1]) ->count(12) ->sendGet(); // Or you can AMemberClient::getInstance() ->setOption('/users') ->format('json') ->filter(['user_id' => 1]) ->count(12) ->sendGet(); } public function auth() { (new AMemberClient())->setOption('/check-access/by-login-pass', [ 'login' => 'admin', 'pass' => '12341234', ])->sendPost(); // Or you can AMemberClient::getInstance() ->setOption('/check-access/by-login-pass', [ 'login' => 'admin', 'pass' => '12341234', ])->sendPost(); }