Exemplo n.º 1
0
 /**
  * Creates the application.
  *
  * @return \Symfony\Component\HttpKernel\HttpKernel
  */
 public function createApplication()
 {
     $app = new Silex\Application();
     $app['foo'] = 'bar';
     $app->mount('/containerdoc', new ContainerDocProvider());
     return $app;
 }
 /**
  * @return Silex\Application
  */
 static function getApp()
 {
     $app = new \Silex\Application();
     $app['debug'] = TRUE;
     $app->register(new MonologServiceProvider(), array('monolog.logfile' => ROOT . '/log.txt'));
     $app->register(new UrlGeneratorServiceProvider());
     $app->register(new ConsoleServiceProvider());
     $app->register(new SessionServiceProvider(), array('session.test' => TRUE));
     $app->register(new TranslationServiceProvider());
     $app->register(new TwigServiceProvider(), array("twig.options" => array("path" => ROOT)));
     $app->register(new FormServiceProvider());
     $app->register(new DoctrineServiceProvider(), array("db.options" => array("driver" => "pdo_sqlite", "path" => 'url_shortener.sqlite')));
     $app->register(new DoctrineORMServiceProvider());
     $app->register(new UrlShortenerAppServiceProvider());
     $app->register(new ValidatorServiceProvider());
     /*$app->register(new ValidatorServiceProvider, array(
           "validator.mapping.chain_loader" => $app->share(function ($app) {
               return new CustomLoaderChain(
                   array(
                       new StaticMethodLoader,
                   )
               );
           }),
           "validator.mapping.class_metadata_factory" => $app->share(function ($app) {
               return new ClassMetadataFactory($app['validator.chain_loader']);
           })
       ));*/
     $app->mount("/", $app['url_shortener.controller']);
     $app->boot();
     /**
      * create the database
      */
     /* @var $em \Doctrine\ORM\EntityManager */
     $em = $app['orm.em'];
     $app['createDB'] = $app->protect(function () use($em) {
         $tool = new SchemaTool($em);
         $tool->dropDatabase();
         $tool->createSchema($em->getMetadataFactory()->getAllMetadata());
     });
     return $app;
 }
Exemplo n.º 3
0
<?php

ini_set('error_reporting', E_ALL);
ini_set('display_errors', E_ALL);
require_once dirname(dirname(__FILE__)) . '/vendor/autoload.php';
use Symfony\Component\Translation\Loader\YamlFileLoader;
$app = new Silex\Application();
$app['debug'] = true;
$app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => dirname(dirname(__FILE__)) . '/src/views'));
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());
$app->register(new Silex\Provider\TranslationServiceProvider(), array('locale' => 'pl', 'locale_fallbacks' => array('pl')));
$app['translator'] = $app->share($app->extend('translator', function ($translator, $app) {
    $translator->addLoader('yaml', new YamlFileLoader());
    $translator->addResource('yaml', dirname(dirname(__FILE__)) . '/config/locales/pl.yml', 'pl');
    return $translator;
}));
$app->register(new Silex\Provider\SessionServiceProvider());
$app->register(new Silex\Provider\FormServiceProvider());
$app->register(new Silex\Provider\ValidatorServiceProvider());
$app->register(new Silex\Provider\SecurityServiceProvider(), array('security.firewalls' => array('admin' => array('pattern' => '^.*$', 'form' => array('login_path' => 'auth_login', 'check_path' => 'auth_login_check', 'default_target_path' => '/', 'username_parameter' => 'loginForm[login]', 'password_parameter' => 'loginForm[password]'), 'anonymous' => true, 'logout' => array('logout_path' => 'auth_logout', 'target_url' => '/'), 'users' => $app->share(function () use($app) {
    return new Provider\UserProvider($app);
}))), 'security.access_rules' => array(array('^/.+$', 'IS_AUTHENTICATED_ANONYMOUSLY'), array('^/images/u/add', 'ROLE_USER'), array('^/admin/.+$', 'ROLE_ADMIN')), 'security.role_hierarchy' => array('ROLE_ADMIN' => array('ROLE_USER'))));
//var_dump($app['security.encoder.digest']->encodePassword('password', ''));
$app->mount('/hello', new Controller\HelloController());
$app->mount('/', new Controller\IndexController());
$app->mount('auth', new Controller\AuthController());
$app->mount('/registration', new Controller\RegistrationController());
$app->mount('/comments', new Controller\CommentsController());
$app->mount('/images', new Controller\ImagesController());
$app->mount('/photos', new Controller\PhotosController());
$app->run();
Exemplo n.º 4
0
    $app->register(new DerAlex\Silex\YamlConfigServiceProvider(CONFIG_FILE));
    $app['debug'] = $app['config']['debug'];
    Symfony\Component\Debug\ExceptionHandler::register(!$app['debug']);
    if (in_array($app['config']['timezone'], DateTimeZone::listIdentifiers())) {
        date_default_timezone_set($app['config']['timezone']);
    }
}
$app->register(new Silex\Provider\TwigServiceProvider(), ['twig.path' => APP_ROOT . '/views', 'twig.options' => ['debug' => $app['debug']]]);
$app->register(new Silex\Provider\SessionServiceProvider());
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());
$app->register(new Silex\Provider\SecurityServiceProvider(), ['security.firewalls' => ['admin' => ['pattern' => '^/(logs|api)', 'form' => ['login_path' => '/login', 'check_path' => '/logs/login_check'], 'users' => ['user' => ['ROLE_USER', is_file(PASSWD_FILE) ? file_get_contents(PASSWD_FILE) : null]], 'logout' => ['logout_path' => '/logs/logout', 'invalidate_session' => true]]]]);
$app['security.encoder.digest'] = $app->share(function ($app) {
    return new \Symfony\Component\Security\Core\Encoder\BCryptPasswordEncoder(10);
});
if (!is_file(PASSWD_FILE)) {
    $app->mount('/', include 'guest.php');
} else {
    $app->mount('/api', include 'api.php');
    $app->mount('/', include 'user.php');
}
$app->error(function (\Syonix\LogViewer\Exceptions\ConfigFileMissingException $e, $code) use($app) {
    return $app['twig']->render('error/config_file_missing.html.twig');
});
$app->error(function (\Syonix\LogViewer\Exceptions\NoLogsConfiguredException $e, $code) use($app) {
    return $app['twig']->render('error/no_log_files.html.twig');
});
$app->error(function (\Symfony\Component\HttpKernel\Exception\HttpException $e) use($app) {
    if ($app['debug']) {
        return;
    }
    switch ($e->getStatusCode()) {
Exemplo n.º 5
0
<?php

define('APPLICATION_PATH', __DIR__ . '/../');
define('CONFIG', APPLICATION_PATH . '/configs/config.json');
require_once APPLICATION_PATH . "vendor/autoload.php";
$config = new \Noodlehaus\Config(CONFIG);
$app = new Silex\Application();
$app['debug'] = $config->get('debug');
$dbOptions = $config->get('db');
define('APP_KEY', $config->get('app_key'));
$app->register(new Silex\Provider\DoctrineServiceProvider(), ['db.options' => $dbOptions]);
\Sasik\Db\DbSingleton::setDb($app['db']);
$app->mount('/', new Sasik\Controllers\IndexControllerProvider());
$app->run();
Exemplo n.º 6
0
<?php

set_include_path('src');
require_once __DIR__ . '/vendor/autoload.php';
use Mavericks\Controller\API\Provider\TrackRoutes as TrackAPI;
use Mavericks\Controller\Web\Provider\TrackRoutes as TrackWeb;
use Mavericks\Controller\Web\Provider\HomeRoutes;
$app = new Silex\Application();
$app['debug'] = true;
include __DIR__ . '/config/config.php';
// register the necessary services and controllers
include __DIR__ . '/registry.php';
// mount the group routes
$app->mount("/", new HomeRoutes());
$app->mount("/api/track", new TrackAPI());
$app->mount("/track", new TrackWeb());
$app->run();
Exemplo n.º 7
0
<?php

$app = new Silex\Application();
$app['debug'] = true;
// https://github.com/silexphp/Silex/wiki/Third-Party-ServiceProviders#database
$app->register(new \Arseniew\Silex\Provider\IdiormServiceProvider(), ['idiorm.db.options' => ['connection_string' => 'mysql:host=localhost;dbname=Prueba', 'username' => 'root', 'password' => '1234']]);
// Descomentar si se desea usar Doctrine
//$app->register(
//    new Silex\Provider\DoctrineServiceProvider(),
//    [
//        'dbs.options' => [
//            'default' => [
//                'driver' => 'pdo_mysql',
//                'host' => 'localhost',
//                'dbname' => 'Prueba',
//                'user' => 'root',
//                'password' => '1234',
//                'charset' => 'utf8',
//            ]
//        ],
//    ]
//);
$app->mount('/', new TS\Controller\StockcodeController());
return $app;
Exemplo n.º 8
0
// Set path for pages.
$app['pages.path'] = __DIR__ . '/pages';
// Set path for docs local repository.
$app['docs.path'] = __DIR__ . '/_documentation';
// Set path for recipes local repository.
$app['recipes.path'] = __DIR__ . '/_recipes';
// Set path for releases.
$app['releases.path'] = __DIR__ . '/releases';
// Set cli file.
$app['cli'] = __FILE__;
// Set schedule file.
$app['schedule'] = __DIR__ . '/logs/schedule.log';
#########################
#   Mount controller    #
#########################
$app->mount('/', include __DIR__ . '/controllers/update.php');
$app->mount('/', include __DIR__ . '/controllers/docs.php');
$app->mount('/', include __DIR__ . '/controllers/recipes.php');
$app->mount('/', include __DIR__ . '/controllers/download.php');
$app->mount('/', include __DIR__ . '/controllers/sitemap.php');
$app->mount('/', include __DIR__ . '/controllers/pages.php');
// Must be last, because match everything.
#########################
#   Start application   #
#########################
if (php_sapi_name() == "cli") {
    require __DIR__ . '/cli.php';
} else {
    if ($app['cache']) {
        $app['http_cache']->run();
    } else {
Exemplo n.º 9
0
<?php

include __DIR__ . '/../src/Messaging/bootstrap.php';
$app = new Silex\Application();
$app['debug'] = true;
// api v1
$app->mount('/api/1.0', new \Messaging\Controllers\APIVersion1());
// index page
$app->get('/', function () {
    ob_start();
    include __DIR__ . '/../src/Messaging/views/layout.php';
    return ob_get_clean();
});
$app->run();
Exemplo n.º 10
0
<?php

require_once __DIR__ . '/../vendor/autoload.php';
$app = new Silex\Application();
$app->register(new Silex\Provider\MonologServiceProvider());
$app->register(new Silex\Provider\DoctrineServiceProvider());
$app->register(new SilexRestApi\Providers\ConfigProvider(__DIR__ . '/../config.php'));
$app->register($restapi = new SilexRestApi\Providers\RestApiProvider());
$app->mount('/', $restapi);
$app->run();
Exemplo n.º 11
0
<?php

require_once __DIR__ . '/../../vendor/silex.phar';
require_once __DIR__ . '/../../src/Statme/Application.php';
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
Statme\Application::bootstrap();
$entityManager = Statme\Application::getEntityManager();
$app = new Silex\Application();
$app->mount('/user', new Controller\User('user', $entityManager));
/** Error handler */
$app->error(function (\Exception $e) {
    return new Response($e->getMessage(), $e->getCode());
});
$app->run();
Exemplo n.º 12
0
    require_once __DIR__ . '/../bootstrap/auth.php';
}
/*
|--------------------------------------------------------------------------
| Provide all of our various routes
|--------------------------------------------------------------------------
|
| These are the various post authentication paths that will return results.
| We prefer to use mount points instead of routes right in this file.
|
*/
$app->get('/discovery', function () use($app) {
    return $app->json(array("server_id" => require_once __DIR__ . '/../config/server_id.php', "hostname" => trim(`hostname`)));
});
if (!in_array('/tools', $config['disabled'])) {
    $app->mount('/tools', new Snapr\Routers\ToolsController());
}
if (!in_array('/haproxy/stats', $config['disabled'])) {
    $app->mount('/haproxy/stats', new Snapr\Routers\HAProxyStatsController());
}
if (!in_array('/haproxy/program', $config['disabled'])) {
    $app->mount('/haproxy/program', new Snapr\Routers\HAProxyProgramController());
}
/*
|--------------------------------------------------------------------------
| Run the app
|--------------------------------------------------------------------------
|
| Let Silex do it's thing
|
*/
Exemplo n.º 13
0
$app['user'] = $app->share(function ($app) {
    $token = $app['security.token_storage']->getToken();
    if ($token !== null) {
        return $token->getUser();
    }
    return null;
});
$app['comments'] = $app->share(function ($app) {
    return new Pamplemousse\Comments\Service($app);
});
$app['photos'] = $app->share(function ($app) {
    return new Pamplemousse\Photos\Service($app);
});
$app['slug'] = $app->share(function ($app) {
    return new Cocur\Slugify\Slugify();
});
$app['tags'] = $app->share(function ($app) {
    return new Pamplemousse\Tags\Service($app);
});
$app['imagine'] = $app->share(function ($app) {
    $imagine = new \Imagine\Gd\Imagine();
    $imagine->setMetadataReader(new \Imagine\Image\Metadata\ExifMetadataReader());
    return $imagine;
});
/** Controller */
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
$app->mount('/', new Pamplemousse\Router());
$app->mount('/photo/', new Pamplemousse\Photos\Router());
$app->mount('/admin/', new Pamplemousse\Admin\Router());
return $app;
Exemplo n.º 14
0
    foreach ($results as $value) {
        $myObject = new myObject();
        $myObject->setId($value['id']);
        $myObject->setTitle($value['title']);
        $myObject->setSummary($value['summary']);
        $myObject->setText($value['text']);
        $myObject->setImg($value['img']);
        $arrayObj[] = $myObject;
    }
    return $app['twig']->render('search.twig', array('search' => 'true', 'results' => $results, 'keyword' => $keyword));
})->method('POST');
$app['twig'] = $app->share($app->extend('twig', function ($twig, $app) {
    $twig->addFunction(new \Twig_SimpleFunction('asset', function ($asset) {
        // implement whatever logic you need to determine the asset path
        return sprintf('http://localhost/webcup2015/web/views/%s', ltrim($asset, '/'));
    }));
    return $twig;
}));
$blogPosts = array(1 => array('date' => '2011-03-29', 'author' => 'igorw', 'title' => 'Using Silex', 'body' => '...'), 2 => array('date' => '2011-03-30', 'author' => 'hgignore', 'title' => 'Using Silex 1.2', 'body' => '...'));
$blog = $app['controllers_factory'];
$blog->get('/', function () {
    return 'Blog home page';
});
$forum = $app['controllers_factory'];
$forum->get('/', function () {
    return 'Forum home page';
});
$app->mount('/blog', $blog);
$app->mount('/forum', $forum);
$app['debug'] = true;
$app->run();
Exemplo n.º 15
0
<?php

require_once __DIR__ . '/vendor/autoload.php';
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Validator\Constraints as Assert;
$app = new Silex\Application();
$app['debug'] = true;
//Register validator service
$app->register(new Silex\Provider\ValidatorServiceProvider());
// Register Provider to DB
$app->register(new Silex\Provider\DoctrineServiceProvider(), array('db.options' => array('driver' => 'pdo_sqlite', 'path' => __DIR__ . '/db/messenger.sqlite')));
// Make json accepting functionality
$app->before(function (Request $request) {
    if (0 === strpos($request->headers->get('Content-Type'), 'application/json')) {
        $data = json_decode($request->getContent(), true);
        $request->request->replace(is_array($data) ? $data : array());
    }
});
//Mount needed controllers
$app->mount('/users', new Messenger\UserController());
$app->mount('/users/{user_id}/messages', new Messenger\MessageController());
$app->error(function (\Exception $e, $code) use($app) {
    return $app->json(array("error" => $e->getMessage()), $code);
});
$app->run();
Exemplo n.º 16
0
<?php

require_once __DIR__ . '/../vendor/autoload.php';
$app = new Silex\Application();
// Providers
$app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => __DIR__ . '/../views'));
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());
// Controllers
$app->mount('/', new App\Controllers\IndexController());
return $app;
Exemplo n.º 17
0
<?php

require __DIR__ . '/../vendor/autoload.php';
$app = new Silex\Application();
//$app->register(new DerAlex\Silex\YamlConfigServiceProvider(__DIR__ . '/../config.build.yaml'));
$app->register(new DerAlex\Silex\YamlConfigServiceProvider(__DIR__ . '/../config.yaml'));
$app['debug'] = true;
//$app['config']['debug'];
$app->register(new Silex\Provider\TwigServiceProvider(), ['twig.path' => __DIR__ . '/../views']);
$app->register(new Silex\Provider\DoctrineServiceProvider(), ['db.options' => $app['config']['database']]);
$app->mount('/login', new PrintApp\Controllers\LoginControllerProvider());
$app->mount('/logout', new PrintApp\Controllers\LogoutControllerProvider());
$app->mount('/print', new PrintApp\Controllers\PrintControllerProvider());
$app->run();
Exemplo n.º 18
0
<?php

require_once __DIR__ . '/../vendor/autoload.php';
umask(00);
//This will let the permissions be 0777
$app = new Silex\Application();
$app->register(new Digex\Provider\DigexServiceProvider());
$app['translator'] = $app->share($app->extend('translator', function ($translator, $app) {
    $translator->addLoader('yaml', new Symfony\Component\Translation\Loader\YamlFileLoader());
    $filename = __DIR__ . '/trans/' . $app['locale'] . '.yml';
    if (file_exists($filename)) {
        $translator->addResource('yaml', $filename, $app['locale']);
    }
    return $translator;
}));
/** CUSTOMIZE HERE **/
$app->mount('/', new Digitas\Demo\Controller\DefaultControllerProvider());
$app->mount('/admin', new Digitas\Admin\Controller\SecurityControllerProvider());
$app->mount('/admin', new Digitas\Admin\Controller\DefaultControllerProvider());
return $app;
Exemplo n.º 19
0
    if (!isset($app[$k])) {
        $app[$k] = $v;
    }
}
$app->register(new MonologServiceProvider());
$app->register(new DoctrineServiceProvider());
$app->register(new SecurityServiceProvider());
$app->register(new RememberMeServiceProvider());
$app->register(new SessionServiceProvider());
$app->register(new ServiceControllerServiceProvider());
$app->register(new UrlGeneratorServiceProvider());
$app->register(new TwigServiceProvider());
$app->register(new SwiftmailerServiceProvider());
// Register the SimpleUser service provider.
$simpleUserProvider = new SimpleUser\UserServiceProvider();
$app->register($simpleUserProvider);
$app->register(new TwigServiceProvider(), ['twig.path' => dirname(__DIR__) . '/views']);
//$app->register(new TwigExtensionsServiceProvider());
$app->mount('/', new \Phase\TakeATicket\ControllerProvider($app));
$app->mount('/user', $simpleUserProvider);
// SimpleUser options. See https://github.com/jasongrimes/silex-simpleuser for details.
$app['user.options'] = ['mailer' => ['enabled' => false], 'emailConfirmation' => ['required' => true], 'templates' => ['layout' => 'simpleuser/layout.html.twig']];
// Security config. See http://silex.sensiolabs.org/doc/providers/security.html for details.
$app['security.firewalls'] = array('secured_area' => array('pattern' => '^.*$', 'anonymous' => true, 'remember_me' => array(), 'form' => array('login_path' => '/user/login', 'check_path' => '/user/login_check'), 'logout' => array('logout_path' => '/user/logout'), 'users' => $app->share(function ($app) {
    return $app['user.manager'];
})));
// Mailer config. See http://silex.sensiolabs.org/doc/providers/swiftmailer.html
$app['swiftmailer.options'] = array();
// not actually using it at the moment
// end simpleuser stuff
return $app;
Exemplo n.º 20
0
$app = new Silex\Application();
$app["debug"] = true;
$db = ["driver" => "pdo_mysql", "dbname" => "tickets", "host" => "127.0.0.1", "port" => 3306, "user" => "root", "password" => "123456"];
$sc = ['login' => ['pattern' => '^/login-form'], 'secured' => ['pattern' => '^/user', 'form' => ['login_path' => '/login-form', 'check_path' => '/user/login-save'], 'logout' => ['logout_path' => '/user/logout', 'invalidate_session' => true], 'users' => $app->share(function () use($app) {
    return new \Tickets\SecurityProvider($app['db']);
})]];
$sa = [['^/ticket.+$', 'ROLE_USER'], ['^/user.+$', 'ROLE_USER'], ['^/admin.+$', 'ROLE_ADMIN']];
$app->register(new Silex\Provider\SessionServiceProvider());
$app->register(new Silex\Provider\TwigServiceProvider(), ['twig.path' => __DIR__ . '/../views']);
$app->register(new Silex\Provider\DoctrineServiceProvider(), ['db.options' => $db]);
$app->register(new Silex\Provider\SecurityServiceProvider(), ['security.firewalls' => $sc, 'security.access_rules' => $sa]);
$app->before(function ($request) use($app) {
    $sh = new \Tickets\SecurityProvider($app["db"]);
    $app["user"] = $sh->loadUserByUsername($app["session"]->get("username"));
});
$app->mount('/ticket', new Tickets\TicketProvider());
$app->mount('/user', new Tickets\UserProvider());
$app->mount('/admin', new Tickets\AdminProvider());
$app->get('/', function () use($app) {
    $user = isset($app["user"]) ? $app["user"] : null;
    if ($user == null) {
        return $app->redirect("/login-form");
    }
    if (array_search('ROLE_ADMIN', $user->getRoles()) !== false) {
        return $app->redirect("/admin/home");
    }
    if (array_search('ROLE_USER', $user->getRoles()) !== false) {
        return $app->redirect("/user/home");
    }
    return $app->redirect("/login-form");
});
Exemplo n.º 21
0
<?php

/*
 * This file is part of the "EloGank League of Legends Replay Observer Silex" package.
 *
 * https://github.com/EloGank/lol-replay-observer-silex
 *
 * For the full license information, please view the LICENSE
 * file that was distributed with this source code.
 */
require '../vendor/autoload.php';
$app = new \Silex\Application(['debug' => true]);
$app->register(new \Silex\Provider\MonologServiceProvider(), array('monolog.logfile' => __DIR__ . '/../logs/error.log', 'monolog.name' => 'Elogank Replay Observer', 'monolog.level' => $app['debug'] ? \Monolog\Logger::INFO : \Monolog\Logger::ERROR));
$app->register(new \EloGank\Replay\Observer\Provider\ObserverServiceProvider(['replay.dir_path' => __DIR__ . '/../../lol-replay-downloader-cli/replays', 'cache' => new \EloGank\Replay\Observer\Cache\Adapter\RedisCacheAdapter(new \Predis\Client(['host' => '127.0.0.1', 'port' => 6379]))], $app['logger']));
$app->mount('/', new \EloGank\Replay\Observer\Provider\ObserverControllerProvider());
$app->run();
Exemplo n.º 22
0
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';
use Kisphp\Core\Factory;
use Kisphp\Core\Config;
use Symfony\Component\Yaml\Parser;
$yaml = new Parser();
$params = $yaml->parse(file_get_contents(dirname(__DIR__) . '/app/config/parameters.yml'));
$config = Config::getInstance()->setParams($params['parameters']);
$app = new Silex\Application();
$app['debug'] = true;
$app['factory'] = new Factory($app);
$app->register(new \Silex\Provider\TwigServiceProvider(), ['twig.path' => dirname(__DIR__) . '/src/Kisphp/Views/']);
$app->register(new \Silex\Provider\SwiftmailerServiceProvider(), ['host' => 'localhost', 'port' => '25', 'username' => '', 'password' => '', 'encryption' => null, 'auth_mode' => null]);
$app->mount('/', new \Kisphp\Core\KisphpControllerProvider());
$app->run();
Exemplo n.º 23
0
<?php

$loader = (require_once __DIR__ . '/../vendor/autoload.php');
$loader->addPsr4('Jtest\\', array(__DIR__ . '/../app/controllers'));
use Symfony\Component\HttpFoundation\Request;
Request::enableHttpMethodParameterOverride();
$app = new Silex\Application();
$app['debug'] = true;
require __DIR__ . '/../app/registers.php';
//I'd rather mount to /contact but I haven't succeed to make this strange trailing-slash routing work correctly with Angular $resource
$app->mount('/', new Jtest\ContactController());
$app->run();
Exemplo n.º 24
0
$app->register(new Silex\Provider\SessionServiceProvider());
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());
$app->register(new Silex\Provider\ValidatorServiceProvider());
$app->register(new Silex\Provider\ServiceControllerServiceProvider());
$app->register(new Silex\Provider\TranslationServiceProvider(), array('localefallback' => 'fr'));
$app->register(new Silex\Provider\SwiftmailerServiceProvider());
$app->register(new FormServiceProvider());
$app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => array(__DIR__ . '/../views/app')));
//db
$app->register(new Silex\Provider\DoctrineServiceProvider(), array('db.options' => array('driver' => 'pdo_mysql', 'dbhost' => 'localhost', 'dbname' => 'master', 'user' => 'root', 'password' => '')));
// $app['session.db_options'] = array(
//     'db_table'      => 'session',
//     'db_id_col'     => 'session_id',
//     'db_data_col'   => 'session_value',
//     'db_time_col'   => 'session_time'
// );
// $app['session.storage.handler'] = $app->share(function () use ($app) {
//     return new PdoSessionHandler(
//         $app['db']->getWrappedConnection(),
//         $app['session.db_options'],
//         $app['session.storage.options']
//     );
// });
// Front
$frontServiceProvider = new Front\FrontServiceProvider();
$app->register($frontServiceProvider);
$app->mount(null, $frontServiceProvider);
$app->before(function (Request $request) use($app) {
});
$app->boot();
return $app;
Exemplo n.º 25
0
<?php

//On initialise le timeZone
ini_set('date.timezone', 'Europe/Brussels');
//On ajoute l'autoloader
$loader = (require_once __DIR__ . '/../vendor/autoload.php');
//dans l'autoloader nous ajoutons notre répertoire applicatif
$loader->add("App", dirname(__DIR__));
//Nous instancions un objet Silex\Application
$app = new Silex\Application();
//en dev, nous voulons voir les erreurs
$app['debug'] = true;
//ROUTE
$app->mount("/", new App\Controller\IndexController());
$app->mount("/ping", new App\Controller\PingController());
/*$app->get('/', function(){
	return new Symfony\Component\HttpFoundation\Response("Hello world !");
});*/
/* twig */
$app->register(new Silex\Provider\TwigServiceProvider(), array("twig.path" => dirname(__DIR__) . "/App/Views", 'twig.options' => array('cache' => dirname(__DIR__) . '/cache', 'strict_variables' => true)));
# url generator
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());
//On lance l'application
$app->run();
/*
$app->get('/', function(){
	return new Symfony\Component\HttpFoundation\Response("Hello world !");
});

$app->get("/users/{id}", function($id){
   return "User - {$id}";
Exemplo n.º 26
0
<?php

$loader = (require_once __DIR__ . "/../vendor/autoload.php");
$loader->add('app', __DIR__ . '/../');
$app = new Silex\Application();
//register providers
$app->register(new \Mongo\Silex\Provider\MongoServiceProvider(), ['mongo.connections' => ['default' => ['server' => 'mongodb://localhost:27017', 'options' => ['connect' => true]]]]);
$app->error(function (\app\exceptions\ApiException $e, $code) {
    $errors = ['message' => $e->getMessage(), 'code' => $e->getCode()];
    return new \Symfony\Component\HttpFoundation\JsonResponse(['errors' => $errors], $e->getCode());
});
$app->mount('/', new \app\controllers\IndexController());
$app->mount('/firms', new app\controllers\FirmController());
$app->mount('/buildings', new app\controllers\BuildingController());
$app->mount('/rubrics', new app\controllers\RubricsController());
$app->run();
Exemplo n.º 27
0
<?php

require __DIR__ . '/../vendor/autoload.php';
$config = \Symfony\Component\Yaml\Yaml::parse(file_get_contents(__DIR__ . '/../app/config.yml'));
$app = new \Silex\Application($config);
/**
 * register service provider
 */
$app->register(new \Silex\Provider\DoctrineServiceProvider());
$app->register(new \Silex\Provider\TwigServiceProvider(), ['twig.path' => __DIR__ . '/../src/Templates', 'twig.options' => ['cache' => __DIR__ . '/../app/cache/app_template', 'auto_reload' => true]]);
$app->register(new \Silex\Provider\FormServiceProvider());
$app->register(new \Silex\Provider\SessionServiceProvider());
$app->register(new \Silex\Provider\UrlGeneratorServiceProvider());
$app->register(new \Silex\Provider\ServiceControllerServiceProvider());
$app->register(new \Silex\Provider\HttpFragmentServiceProvider());
$app->register(new \Silex\Provider\ValidatorServiceProvider());
$app->register(new \Silex\Provider\MonologServiceProvider(), ['monolog.logfile' => __DIR__ . '/../app/logs/development.log']);
$app->register(new \Silex\Provider\TranslationServiceProvider());
$app->mount('/', new \ExpressLibrary\Controllers\Front($app));
$app->mount('/admin', new \ExpressLibrary\Controllers\Back($app));
$app['db'] = function () {
    return \Doctrine\DBAL\DriverManager::getConnection(['dbname' => 'perpus', 'user' => 'root', 'password' => 'root', 'host' => 'localhost', 'driver' => 'pdo_mysql'], new \Doctrine\DBAL\Configuration());
};
if ($app['debug']) {
    Symfony\Component\Debug\Debug::enable(E_ALL, true);
    $app->register(new Silex\Provider\WebProfilerServiceProvider(), ['profiler.cache_dir' => __DIR__ . '/../app/cache/profiler']);
}
$app->run();
Exemplo n.º 28
0
#------------------------------------------------------------------
# Add Parse for json requests body
#
#------------------------------------------------------------------
$app->before(function (Symfony\Component\HttpFoundation\Request $request) {
    if (0 === strpos($request->headers->get('Content-Type'), 'application/json')) {
        $data = json_decode($request->getContent(), true);
        $request->request->replace(is_array($data) ? $data : array());
    }
});
#------------------------------------------------------------------
# Load the Configuration
#
#------------------------------------------------------------------
require __DIR__ . "/resources/config/application.php";
# ----------------------------------------------------
# Load ValidatorServiceProvider
#
# ---------------------------------------------------
$app->register(new Silex\Provider\ValidatorServiceProvider());
# ----------------------------------------------------
# Setup Tags
#
# ---------------------------------------------------
$app->register(new QuickTag\Silex\Provider\TagServiceProvider('qtag'), array('qtag.options' => array('tableName' => 'quicktag_tags')));
#------------------------------------------------------------------
# Setup Routes / Controllers
#
#------------------------------------------------------------------
$app->mount('/', new QuickTag\Silex\Controllers\TagProvider('qtag'));
return $app;
Exemplo n.º 29
0
        $data = json_decode($request->getContent(), true);
        $request->request->replace(is_array($data) ? $data : array());
    }
});
// Add correct headers before it is sent to the client
$app->after(function (Request $request, Response $response) {
    $response->headers->set("Access-Control-Allow-Origin", "*");
    $response->headers->set("Access-Control-Allow-Methods", "GET,POST,PUT,DELETE,OPTIONS");
});
$app->register(new ServiceControllerServiceProvider());
$connection = new RestApp\Service\PDOConnection($app);
$app['todo.repo'] = $app->share(function () use($connection) {
    return new RestApp\Repository\TodoRepository($connection);
});
$app['todo.controller'] = $app->share(function () use($app) {
    return new RestApp\Controller\TodoController($app['todo.repo']);
});
$app['converter.user'] = $app->share(function () use($app) {
    return new RestApp\Service\UserAuthentication($app['api.validtoken']);
});
$api = $app["controllers_factory"];
$api->get('/todo/get', "todo.controller:getAllTodo")->convert('token', 'converter.user:authorize');
$api->post('/todo/save', "todo.controller:saveTodo")->convert('token', 'converter.user:authorize');
$api->put('/todo/update', "todo.controller:updateTodo")->convert('token', 'converter.user:authorize');
$api->delete('/todo/delete', "todo.controller:deleteTodo")->convert('token', 'converter.user:authorize');
$app->mount($app["api.endpoint"] . '/' . $app["api.version"] . '/{token}', $api);
// Proper way to handler error in app
$app->error(function (\Exception $e, $code) use($app) {
    return new JsonResponse(array("statusCode" => $code, "message" => $e->getMessage()));
});
$app->run();
Exemplo n.º 30
0
    $app['twig']->addGlobal('config', $app['config']);
    $app['twig']->addGlobal('utils', $app['utils']);
    $authRequired = !empty($app['config']['authenticate']) && !empty($app['config']['authenticate']['username']) && !empty($app['config']['authenticate']['password']) ? true : false;
    if (!in_array($app['request']->getRequestUri(), $authPage)) {
        if ($authRequired) {
            $currentUser = $app['session']->get($app['config']['prefix'] . 'authed-user');
            $userHash = sha1($app['config']['authenticate']['username'] . $app['config']['authenticate']['password']);
            if (empty($currentUser) || $currentUser !== $userHash) {
                return $app->redirect($app['uri']->generate('authenticate'));
                // not logged in, redirect to auth page
            }
        }
    } elseif (!$authRequired) {
        // redirect visits to the auth pages to the homepage if no auth is required.
        return $app->redirect('/');
    }
});
$app->error(function (\Exception $e, $code) use($app) {
    switch ($code) {
        case '404':
            $template = 'PT/pages/404.html';
            break;
        default:
            $template = 'PT/pages/error.html';
            break;
    }
    return new Response($app['twig']->render($template, array('message' => $e->getMessage())), $code);
});
$app->mount('/_system/', new Prontotype\Controller\SystemController());
$app->mount('/', new Prontotype\Controller\MainController());
return $app;