Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App;
- use Nette;
- use Nette\Application\Routers\Route;
- use Nette\Application\Routers\RouteList;
- use Nette\Database\Context;
- use App\Model\DodavateleManager;
- class RouterFactory
- {
- use Nette\StaticClass;
- /**
- * @return Nette\Application\IRouter
- */
- public static function createRouter(Context $database, DodavateleManager $dodavateleManager)
- {
- $router = new RouteList;
- $router[] = new Route('clanky/<id>/', array(
- 'presenter' => 'Clanky',
- 'action' => 'kategorie',
- 'id' => array(
- Route::FILTER_IN => function ($id) use ($database) {
- $fetch = $database->table('url_names')->where('object_name', 'article_category')->where('url_name', $id)->fetch();
- return (!empty($fetch->object_id)) ? $fetch->object_id : false;
- },
- Route::FILTER_OUT => function ($id) use ($database) {
- $fetch = $database->table('url_names')->where('object_name', 'article_category')->where('object_id', $id)->fetch();
- return (!empty($fetch->url_name)) ? $fetch->url_name : false;
- }
- )
- ));
- $router[] = new Route('clanek/<id>.html', array(
- 'presenter' => 'Clanky',
- 'action' => 'detail',
- 'id' => array(
- Route::FILTER_IN => function ($id) use ($database) {
- $fetch = $database->table('url_names')->where('object_name', 'article')->where('url_name', $id)->fetch();
- return (!empty($fetch->object_id)) ? $fetch->object_id : false;
- },
- Route::FILTER_OUT => function ($id) use ($database) {
- $fetch = $database->table('url_names')->where('object_name', 'article')->where('object_id', $id)->fetch();
- return (!empty($fetch->url_name)) ? $fetch->url_name : false;
- }
- )
- ));
- $router[] = new Route('dodavatele/<id>/', array(
- 'presenter' => 'Dodavatele',
- 'action' => 'kategorie',
- 'id' => array(
- Route::FILTER_IN => function ($id) use ($database) {
- $fetch = $database->table('url_names')->select('object_id')->where('object_name', 'company_category')->where('url_name', $id)->fetch();
- return (!empty($fetch->object_id)) ? $fetch->object_id : false;
- },
- Route::FILTER_OUT => function ($id) use ($database) {
- $fetch = $database->table('url_names')->select('url_name')->where('object_name', 'company_category')->where('object_id', $id)->fetch();
- return (!empty($fetch->url_name)) ? $fetch->url_name : false;
- }
- )
- ));
- $router[] = new Route('dodavatel/<id>.html', array(
- 'presenter' => 'Dodavatele',
- 'action' => 'detail',
- 'id' => array(
- Route::FILTER_IN => function ($id) use ($database) {
- $fetch = $database->table('url_names')->where('object_name', 'company')->where('url_name', $id)->fetch();
- return (!empty($fetch->object_id)) ? $fetch->object_id : false;
- },
- Route::FILTER_OUT => function ($id) use ($database) {
- $fetch = $database->table('url_names')->where('object_name', 'company')->where('object_id', $id)->fetch();
- return (!empty($fetch->url_name)) ? $fetch->url_name : false;
- }
- )
- ));
- $router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
- return $router;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement