Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Url/UrlServiceProvider.php
Строк: 86
<?php
namespace ConcreteCoreUrl;

use 
ConcreteCoreFoundationServiceProvider;
use 
ConcreteCoreUrlResolverManagerResolverManager;
use 
ConcreteCoreUrlResolverRouteUrlResolver;

class 
UrlServiceProvider extends Provider
{

    
/**
     * Registers the services provided by this provider.
     *
     * @return void
     */
    
public function register()
    {
        
$this->app->singleton('ConcreteCoreUrlResolverCanonicalUrlResolver');
        
$this->app->bind('url/canonical/resolver', 'ConcreteCoreUrlResolverCanonicalUrlResolver');

        
$this->app->bind('url/canonical', function ($app) {
            return 
$app->make('ConcreteCoreUrlResolverCanonicalUrlResolver')->resolve(array());
        });

        
// Share the path url resolver
        
$this->app->singleton('ConcreteCoreUrlResolverPathUrlResolver');
        
$this->app->bind('url/resolver/path', 'ConcreteCoreUrlResolverPathUrlResolver');

        
// Share the Page url resolver
        
$this->app->singleton('ConcreteCoreUrlResolverPageUrlResolver');
        
$this->app->bind('url/resolver/page', 'ConcreteCoreUrlResolverPageUrlResolver');

        
// Share the route url resolver
        
$this->app->singleton('ConcreteCoreUrlResolverRouterUrlResolver');
        
$this->app->bind('url/resolver/route', 'ConcreteCoreUrlResolverRouterUrlResolver');

        
$this->app->bindShared('ConcreteCoreUrlResolverManagerResolverManager',
            function(
$app, $default_handle= '', $default_resolver = null) {
                
$manager = new ResolverManager($default_handle ?: 'concrete.path', $default_resolver);

                
$manager->addResolver('concrete.path', $app->make('ConcreteCoreUrlResolverPathUrlResolver'));
                
$manager->addResolver('concrete.page', $app->make('ConcreteCoreUrlResolverPageUrlResolver'));
                
$manager->addResolver('concrete.route', $app->make('ConcreteCoreUrlResolverRouterUrlResolver'));

                return 
$manager;
            });
        
$this->app->bind('ConcreteCoreUrlResolverManagerResolverManagerInterface', 'ConcreteCoreUrlResolverManagerResolverManager');
        
$this->app->bind('url/manager', 'ConcreteCoreUrlResolverManagerResolverManager');
    }

}
Онлайн: 2
Реклама