82 lines
2.5 KiB
PHP
82 lines
2.5 KiB
PHP
<?php
|
|
|
|
namespace App\Providers;
|
|
|
|
use App\Http\Helpers\Helper;
|
|
use App\Http\Services\SignRSA;
|
|
use App\Models\ModuleVmware;
|
|
use App\Models\ModuleIpAddress;
|
|
use App\Observers\ModuleVmwareObserver;
|
|
use App\Observers\ModuleIpAddressObserver;
|
|
use Illuminate\Pagination\Paginator;
|
|
use Illuminate\Support\Facades\Blade;
|
|
use Illuminate\Support\Facades\Cache;
|
|
use Illuminate\Support\ServiceProvider;
|
|
|
|
class AppServiceProvider extends ServiceProvider
|
|
{
|
|
/**
|
|
* Register any application services.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function register()
|
|
{
|
|
$this->app->bind('signrsa', function () {
|
|
return new SignRSA();
|
|
});
|
|
$this->app->bind('helper', function () {
|
|
return new Helper();
|
|
});
|
|
|
|
// Register Whois Repository binding
|
|
$this->app->bind(
|
|
\App\Repositories\Whois\WhoisRepositoryInterface::class,
|
|
\App\Repositories\Whois\CachedWhoisRepository::class
|
|
);
|
|
|
|
// Admin API Repositories
|
|
$this->app->bind(
|
|
\App\Repositories\Admin\Customer\AdminCustomerRepositoryInterface::class,
|
|
\App\Repositories\Admin\Customer\AdminCustomerRepository::class
|
|
);
|
|
$this->app->bind(
|
|
\App\Repositories\Admin\Order\AdminOrderRepositoryInterface::class,
|
|
\App\Repositories\Admin\Order\AdminOrderRepository::class
|
|
);
|
|
$this->app->bind(
|
|
\App\Repositories\Admin\Invoice\AdminInvoiceRepositoryInterface::class,
|
|
\App\Repositories\Admin\Invoice\AdminInvoiceRepository::class
|
|
);
|
|
$this->app->bind(
|
|
\App\Repositories\Admin\Product\AdminProductRepositoryInterface::class,
|
|
\App\Repositories\Admin\Product\AdminProductRepository::class
|
|
);
|
|
$this->app->bind(
|
|
\App\Repositories\Employee\EmployeeRepositoryInterface::class,
|
|
\App\Repositories\Employee\EmployeeRepository::class
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Bootstrap any application services.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function boot()
|
|
{
|
|
Paginator::useBootstrap();
|
|
|
|
// Register observers
|
|
ModuleVmware::observe(ModuleVmwareObserver::class);
|
|
ModuleIpAddress::observe(ModuleIpAddressObserver::class);
|
|
|
|
Blade::directive('time', function ($time) {
|
|
return "<?php echo Illuminate\Support\Carbon::parse($time)->format('d-m-Y H:i:s'); ?>";
|
|
});
|
|
Blade::directive('money', function ($price) {
|
|
return "<?php echo number_format($price,0,',','.')?>";
|
|
});
|
|
}
|
|
}
|