restore composer.json, add mysqli extension

This commit is contained in:
2026-04-15 17:02:52 +05:00
commit 77cf56a348
4317 changed files with 1397107 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\App;
use URL;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
//
}
/**
* Bootstrap any application services.
*/
public function boot(): void
{
// change timezone
date_default_timezone_set('Asia/Tashkent');
// set lang to uz
if (App::environment(['staging', 'production'])) {
URL::forceScheme('https');
}
}
}

View File

@@ -0,0 +1,59 @@
<?php
namespace App\Providers;
use Illuminate\Auth\Access\Response;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Gate;
class AuthServiceProvider extends ServiceProvider
{
/**
* The policy mappings for the application.
*
* @var array
*/
protected $policies = [
// 'App\Model' => 'App\Policies\ModelPolicy',
];
/**
* Register any authentication / authorization services.
*
* @return void
*/
public function boot()
{
Gate::before(function ($user, $ability) {
if ($user->isAdmin()) {
return true;
}
});
$this->registerPolicies();
Gate::define('view', function ($user, $type) {
return !empty($user->role->permissions[$type]['view']) && $user->role->permissions[$type]['view']//unnecessary condition, just to be clear
? Response::allow()
: Response::deny('Вы не можете совершить это действие.', 403);
});
Gate::define('create', function ($user, $type) {
return !empty($user->role->permissions[$type]['create']) && $user->role->permissions[$type]['create']//unnecessary condition, just to be clear
? Response::allow()
: Response::deny('Вы не можете совершить это действие.', 403);
});
Gate::define('update', function ($user, $type) {
return !empty($user->role->permissions[$type]['update']) && $user->role->permissions[$type]['update']//unnecessary condition, just to be clear
? Response::allow()
: Response::deny('Вы не можете совершить это действие.', 403);
});
Gate::define('delete', function ($user, $type) {
return !empty($user->role->permissions[$type]['delete']) && $user->role->permissions[$type]['delete']//unnecessary condition, just to be clear
? Response::allow()
: Response::deny('Вы не можете совершить это действие.', 403);
});
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Providers;
use Illuminate\Support\Facades\Broadcast;
use Illuminate\Support\ServiceProvider;
class BroadcastServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Broadcast::routes();
require base_path('routes/channels.php');
}
}

View File

@@ -0,0 +1,27 @@
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class CustomRouteServiceProvider extends ServiceProvider
{
public const HOME = '/home';
public const DASHBOARD = '/dashboard';
/**
* Register services.
*/
public function register(): void
{
//
}
/**
* Bootstrap services.
*/
public function boot(): void
{
//
}
}

View File

@@ -0,0 +1,37 @@
<?php
namespace App\Providers;
use Illuminate\Auth\Events\Registered;
use Illuminate\Auth\Listeners\SendEmailVerificationNotification;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
use App\Models\Partner;
use App\Models\Brand;
use App\Observers\PartnerObserver;
use App\Observers\BrandObServer;
class EventServiceProvider extends ServiceProvider
{
/**
* The event listener mappings for the application.
*
* @var array
*/
protected $listen = [
Registered::class => [
SendEmailVerificationNotification::class,
],
];
/**
* Register any events for your application.
*
* @return void
*/
public function boot()
{
parent::boot();
Partner::observe(PartnerObserver::class);
Brand::observe(BrandObServer::class);
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace App\Providers;
use App\Models\Setting;
use Illuminate\Support\ServiceProvider;
class SettingProvider extends ServiceProvider
{
/**
* Register services.
*
* @return void
*/
public function register()
{
//
}
/**
* Bootstrap services.
*
* @return void
*/
public function boot()
{
view()->composer('*', function ($view) {
$view->with('setting', Setting::first());
});
}
}