Skip to content

Commit

Permalink
Merge branch 'feature/expressive' into develop
Browse files Browse the repository at this point in the history
Rewrites the site to use zend-expressive.
  • Loading branch information
weierophinney committed Aug 10, 2015
2 parents 582ae2d + 1630c23 commit 1082688
Show file tree
Hide file tree
Showing 70 changed files with 870 additions and 631 deletions.
2 changes: 1 addition & 1 deletion .gitignore
@@ -1,5 +1,5 @@
config/autoload/*local.php
data/cache/posts/*.html
data/cache/posts/*
data/comics/*.html
data/comics.mustache
data/feeds/*.xml
Expand Down
2 changes: 2 additions & 0 deletions Makefile
Expand Up @@ -73,6 +73,8 @@ node_cleanup : grunt
zpk : composer sitesub pagerules node_cleanup
@echo "Creating zpk..."
-$(CURDIR)/vendor/zfcampus/zf-deploy/bin/zfdeploy.php build mwop-$(VERSION).zpk --configs=$(CONFIGS) --zpkdata=$(CURDIR)/zpk --version=$(VERSION)
@echo " cleaning up..."
-rm $(CURDIR)/zpk/scripts/pagecache_rules.xml
@echo "[DONE] Creating zpk."

deploy : zpk
Expand Down
17 changes: 10 additions & 7 deletions bin/mwop.net.php
Expand Up @@ -5,6 +5,8 @@
use Zend\Console\Console;
use Zend\Feed\Reader\Reader as FeedReader;
use Zend\Http\Client as HttpClient;
use Zend\ServiceManager\Config;
use Zend\ServiceManager\ServiceManager;
use ZF\Console\Application;

chdir(__DIR__ . '/../');
Expand All @@ -13,7 +15,8 @@
define('VERSION', '0.0.1');

$config = include 'config/config.php';
$services = createServiceContainer($config);
$services = new ServiceManager(new Config($config['services']));
$services->setService('Config', $config);

$routes = [
[
Expand All @@ -29,7 +32,7 @@
'output' => 'data/github-links.mustache',
],
'handler' => function ($route, $console) use ($services) {
$handler = $services->get('Mwop\Github\Fetch');
$handler = $services->get('Mwop\Github\Console\Fetch');
return $handler($route, $console);
},
],
Expand All @@ -45,7 +48,7 @@
'output' => 'data/tag-cloud.mustache',
],
'handler' => function ($route, $console) use ($services) {
$handler = $services->get('Mwop\Blog\TagCloud');
$handler = $services->get('Mwop\Blog\Console\TagCloud');
return $handler($route, $console);
},
],
Expand All @@ -63,7 +66,7 @@
'baseUri' => 'http://mwop.net/blog',
],
'handler' => function ($route, $console) use ($services) {
$handler = $services->get('Mwop\Blog\FeedGenerator');
$handler = $services->get('Mwop\Blog\Console\FeedGenerator');
return $handler($route, $console);
},
],
Expand All @@ -81,7 +84,7 @@
'dbPath' => realpath(getcwd()) . '/data/posts.db',
],
'handler' => function ($route, $console) use ($services) {
$handler = $services->get('Mwop\Blog\SeedBlogDatabase');
$handler = $services->get('Mwop\Blog\Console\SeedBlogDatabase');
return $handler($route, $console);
},
],
Expand All @@ -97,7 +100,7 @@
'path' => realpath(getcwd()),
],
'handler' => function ($route, $console) use ($services) {
$handler = $services->get('Mwop\CachePosts');
$handler = $services->get('Mwop\Blog\Console\CachePosts');
return $handler($route, $console);
},
],
Expand All @@ -111,7 +114,7 @@
'--site' => 'Base URL of site to which to deploy',
],
'handler' => function ($route, $console) use ($services) {
$handler = new PrepPageCacheRules();
$handler = $services->get('Mwop\Console\PrepPageCacheRules');
return $handler($route, $console);
},
],
Expand Down
4 changes: 3 additions & 1 deletion composer.json
Expand Up @@ -26,7 +26,9 @@
"zendframework/zend-paginator": "~2.3",
"zendframework/zend-stdlib": "~2.3",
"zendframework/zend-tag": "~2.3",
"zfcampus/zf-console": "~1.0"
"zfcampus/zf-console": "~1.0",
"zendframework/zend-expressive": "*@dev",
"zendframework/zend-servicemanager": "^2.6"
},
"require-dev": {
"zfcampus/zf-deploy": "~1.0@stable"
Expand Down
111 changes: 110 additions & 1 deletion composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

119 changes: 86 additions & 33 deletions config/autoload/global.php
Expand Up @@ -34,6 +34,34 @@
],
],
],
'middleware_pipeline' => [
'pre_routing' => [
['middleware' => 'Mwop\Redirects'],
['middleware' => 'Mwop\BodyParams'],
],
'post_routing' => [
[
'path' => '/blog',
'middleware' => 'Mwop\Blog\Middleware',
],
[
'middleware' => 'Mwop\Auth\Middleware',
'path' => '/auth',
],
[
'middleware' => 'Mwop\Contact\Middleware',
'path' => '/contact',
],
[
'middleware' => 'Mwop\Job\Middleware',
'path' => '/jobs',
],
['middleware' => 'Mwop\Unauthorized', 'error' => true],
['middleware' => 'Mwop\NotAllowed', 'error' => true],
['middleware' => 'Mwop\NotFound', 'error' => true],
['middleware' => 'Mwop\ErrorHandler', 'error' => true],
],
],
'opauth' => [
'path' => '/auth/',
'callback_url' => '/auth/callback',
Expand All @@ -56,43 +84,68 @@
],
],
],
'routes' => [
[
'path' => '/',
'middleware' => 'Mwop\HomePage',
'allowed_methods' => ['GET'],
],
[
'path' => '/comics',
'middleware' => 'Mwop\ComicsPage',
'allowed_methods' => ['GET'],
],
[
'path' => '/resume',
'middleware' => 'Mwop\ResumePage',
'allowed_methods' => ['GET'],
],
],
'services' => [
'delegators' => [
'Mwop\Blog\DisplayPostMiddleware' => [
'Mwop\Blog\CachingDelegatorFactory',
],
],
'invokables' => [
'Mwop\BodyParams',
'Mwop\NotAllowed',
'Mwop\Blog\SeedBlogDatabase',
'Mwop\Redirects',
'Mwop\Blog\FeedMiddleware' => 'Mwop\Blog\FeedMiddleware',
'Mwop\Blog\Console\SeedBlogDatabase' => 'Mwop\Blog\Console\SeedBlogDatabase',
'Mwop\BodyParams' => 'Mwop\BodyParams',
'Mwop\Console\PrepPageCacheRules' => 'Mwop\Console\PrepPageCacheRules',
'Mwop\NotAllowed' => 'Mwop\NotAllowed',
'Mwop\NotFound' => 'Mwop\NotFound',
'Mwop\Redirects' => 'Mwop\Redirects',
],
'factories' => [
'http' => 'Mwop\Factory\HttpClient',
'mail.transport' => 'Mwop\Factory\MailTransport',
'renderer' => 'Mwop\Factory\Renderer',
'session' => 'Mwop\Factory\Session',
'Mwop\Auth\AuthCallback' => 'Mwop\Auth\AuthCallbackFactory',
'Mwop\Auth\Auth' => 'Mwop\Auth\AuthFactory',
'Mwop\Auth\Logout' => 'Mwop\Auth\LogoutFactory',
'Mwop\Auth\Middleware' => 'Mwop\Auth\MiddlewareFactory',
'Mwop\Auth\UserSession' => 'Mwop\Auth\UserSessionFactory',
'Mwop\Blog\CachingMiddleware'=> 'Mwop\Blog\CachingMiddlewareFactory',
'Mwop\Blog\EngineMiddleware'=> 'Mwop\Blog\EngineMiddlewareFactory',
'Mwop\Blog\FeedGenerator' => 'Mwop\Blog\FeedGeneratorFactory',
'Mwop\Blog\Mapper' => 'Mwop\Blog\MapperFactory',
'Mwop\Blog\Middleware' => 'Mwop\Blog\MiddlewareFactory',
'Mwop\Blog\TagCloud' => 'Mwop\Blog\TagCloudFactory',
'Mwop\CachePosts' => 'Mwop\Factory\CachePosts',
'Mwop\ComicsPage' => 'Mwop\Factory\ComicsPage',
'Mwop\Contact\LandingPage' => 'Mwop\Contact\LandingPageFactory',
'Mwop\Contact\Middleware' => 'Mwop\Contact\MiddlewareFactory',
'Mwop\Contact\Process' => 'Mwop\Contact\ProcessFactory',
'Mwop\Contact\ThankYouPage' => 'Mwop\Contact\ThankYouPageFactory',
'Mwop\ErrorHandler' => 'Mwop\Factory\ErrorHandler',
'Mwop\Github\AtomReader' => 'Mwop\Github\AtomReaderFactory',
'Mwop\Github\Fetch' => 'Mwop\Github\FetchFactory',
'Mwop\HomePage' => 'Mwop\Factory\HomePage',
'Mwop\ResumePage' => 'Mwop\Factory\ResumePage',
'Mwop\Site' => 'Mwop\Factory\Site',
'Mwop\Templated' => 'Mwop\Factory\Templated',
'Mwop\Unauthorized' => 'Mwop\Factory\Unauthorized',
'http' => 'Mwop\Factory\HttpClient',
'mail.transport' => 'Mwop\Factory\MailTransport',
'session' => 'Mwop\Factory\Session',
'Mwop\Auth\AuthCallback' => 'Mwop\Auth\AuthCallbackFactory',
'Mwop\Auth\Auth' => 'Mwop\Auth\AuthFactory',
'Mwop\Auth\Logout' => 'Mwop\Auth\LogoutFactory',
'Mwop\Auth\Middleware' => 'Mwop\Auth\MiddlewareFactory',
'Mwop\Auth\UserSession' => 'Mwop\Auth\UserSessionFactory',
'Mwop\Blog\Console\CachePosts' => 'Mwop\Blog\Console\CachePostsFactory',
'Mwop\Blog\Console\FeedGenerator' => 'Mwop\Blog\Console\FeedGeneratorFactory',
'Mwop\Blog\Console\TagCloud' => 'Mwop\Blog\Console\TagCloudFactory',
'Mwop\Blog\DisplayPostMiddleware' => 'Mwop\Blog\DisplayPostMiddlewareFactory',
'Mwop\Blog\ListPostsMiddleware' => 'Mwop\Blog\ListPostsMiddlewareFactory',
'Mwop\Blog\Mapper' => 'Mwop\Blog\MapperFactory',
'Mwop\Blog\Middleware' => 'Mwop\Blog\MiddlewareFactory',
'Mwop\ComicsPage' => 'Mwop\Factory\ComicsPage',
'Mwop\Contact\LandingPage' => 'Mwop\Contact\LandingPageFactory',
'Mwop\Contact\Middleware' => 'Mwop\Contact\MiddlewareFactory',
'Mwop\Contact\Process' => 'Mwop\Contact\ProcessFactory',
'Mwop\Contact\ThankYouPage' => 'Mwop\Contact\ThankYouPageFactory',
'Mwop\ErrorHandler' => 'Mwop\Factory\ErrorHandler',
'Mwop\Github\AtomReader' => 'Mwop\Github\AtomReaderFactory',
'Mwop\Github\Console\Fetch' => 'Mwop\Github\Console\FetchFactory',
'Mwop\HomePage' => 'Mwop\Factory\PageFactory',
'Mwop\Job\Middleware' => 'Mwop\Job\MiddlewareFactory',
'Mwop\ResumePage' => 'Mwop\Factory\PageFactory',
'Mwop\Site' => 'Zend\Expressive\Container\ApplicationFactory',
'Mwop\Template\TemplateInterface' => 'Mwop\Template\MustacheTemplateFactory',
'Mwop\Unauthorized' => 'Mwop\Factory\Unauthorized',
],
],
// Trick zf-deploy into thinking this is a ZF2 app so it can build a package.
Expand Down

0 comments on commit 1082688

Please sign in to comment.