remove old blog example
This commit is contained in:
parent
3eb894ee85
commit
08eb5c9a88
7 changed files with 0 additions and 193 deletions
|
@ -1,71 +0,0 @@
|
||||||
|
|
||||||
/**
|
|
||||||
* Module dependencies.
|
|
||||||
*/
|
|
||||||
|
|
||||||
var render = require('./lib/render');
|
|
||||||
var logger = require('koa-logger');
|
|
||||||
var route = require('koa-route');
|
|
||||||
var views = require('co-views');
|
|
||||||
var parse = require('co-body');
|
|
||||||
var koa = require('../..');
|
|
||||||
var app = koa();
|
|
||||||
|
|
||||||
// "database"
|
|
||||||
|
|
||||||
var posts = [];
|
|
||||||
|
|
||||||
// middleware
|
|
||||||
|
|
||||||
app.use(logger());
|
|
||||||
|
|
||||||
// route middleware
|
|
||||||
|
|
||||||
app.use(route.get('/', list));
|
|
||||||
app.use(route.get('/post/new', add));
|
|
||||||
app.use(route.get('/post/:id', show));
|
|
||||||
app.use(route.post('/post', create));
|
|
||||||
|
|
||||||
// route definitions
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Post listing.
|
|
||||||
*/
|
|
||||||
|
|
||||||
function *list() {
|
|
||||||
this.body = yield render('list', { posts: posts });
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Show creation form.
|
|
||||||
*/
|
|
||||||
|
|
||||||
function *add() {
|
|
||||||
this.body = yield render('new');
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Show post :id.
|
|
||||||
*/
|
|
||||||
|
|
||||||
function *show(id) {
|
|
||||||
var post = posts[id];
|
|
||||||
if (!post) this.throw(404, 'invalid post id');
|
|
||||||
this.body = yield render('show', { post: post });
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a post.
|
|
||||||
*/
|
|
||||||
|
|
||||||
function *create() {
|
|
||||||
var post = yield parse(this);
|
|
||||||
var id = posts.push(post) - 1;
|
|
||||||
post.created_at = new Date;
|
|
||||||
post.id = id;
|
|
||||||
this.redirect('/');
|
|
||||||
}
|
|
||||||
|
|
||||||
// listen
|
|
||||||
|
|
||||||
app.listen(3000);
|
|
|
@ -1,13 +0,0 @@
|
||||||
|
|
||||||
/**
|
|
||||||
* Module dependencies.
|
|
||||||
*/
|
|
||||||
|
|
||||||
var views = require('co-views');
|
|
||||||
|
|
||||||
// setup views mapping .html
|
|
||||||
// to the swig template engine
|
|
||||||
|
|
||||||
module.exports = views(__dirname + '/../views', {
|
|
||||||
map: { html: 'swig' }
|
|
||||||
});
|
|
|
@ -1,9 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>Blog</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
{% for post in posts %}
|
|
||||||
{% endfor %}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,62 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{% block title %}Blog{% endblock %}</title>
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
padding: 80px;
|
|
||||||
font: 16px Helvetica, Arial;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
font-size: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
h2 {
|
|
||||||
font-size: 1.2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
#posts {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#posts li {
|
|
||||||
margin: 40px 0;
|
|
||||||
padding: 0;
|
|
||||||
padding-bottom: 20px;
|
|
||||||
border-bottom: 1px solid #eee;
|
|
||||||
list-style: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#posts li:last-child {
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
textarea {
|
|
||||||
width: 500px;
|
|
||||||
height: 300px;
|
|
||||||
}
|
|
||||||
|
|
||||||
input[type=text],
|
|
||||||
textarea {
|
|
||||||
border: 1px solid #eee;
|
|
||||||
border-top-color: #ddd;
|
|
||||||
border-left-color: #ddd;
|
|
||||||
border-radius: 2px;
|
|
||||||
padding: 15px;
|
|
||||||
font-size: .8em;
|
|
||||||
}
|
|
||||||
|
|
||||||
input[type=text] {
|
|
||||||
width: 500px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<section id="content">
|
|
||||||
{% block content %}
|
|
||||||
<p>Missing content!</p>
|
|
||||||
{% endblock %}
|
|
||||||
</section>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,17 +0,0 @@
|
||||||
{% extends 'layout.html' %}
|
|
||||||
|
|
||||||
{% block title %}Posts{% endblock %}
|
|
||||||
|
|
||||||
{% block content %}
|
|
||||||
<h1>Posts</h1>
|
|
||||||
<p>You have <strong>{{ posts.length }}</strong> posts!</p>
|
|
||||||
<p><a href="/post/new">Create a Post</a></p>
|
|
||||||
<ul id="posts">
|
|
||||||
{% for post in posts %}
|
|
||||||
<li>
|
|
||||||
<h2>{{ post.title }}</h2>
|
|
||||||
<p><a href="/post/{{ post.id }}">Read post</a></p>
|
|
||||||
</li>
|
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
{% endblock %}
|
|
|
@ -1,13 +0,0 @@
|
||||||
{% extends 'layout.html' %}
|
|
||||||
|
|
||||||
{% block title %}New Post{% endblock %}
|
|
||||||
|
|
||||||
{% block content %}
|
|
||||||
<h1>New Post</h1>
|
|
||||||
<p>Create a new post.</p>
|
|
||||||
<form action="/post" method="post">
|
|
||||||
<p><input type="text" placeholder="Title" name="title"></p>
|
|
||||||
<p><textarea placeholder="Contents" name="body"></textarea></p>
|
|
||||||
<p><input type="submit" value="Create"></p>
|
|
||||||
</form>
|
|
||||||
{% endblock %}
|
|
|
@ -1,8 +0,0 @@
|
||||||
{% extends 'layout.html' %}
|
|
||||||
|
|
||||||
{% block title %}{{ post.title }}{% endblock %}
|
|
||||||
|
|
||||||
{% block content %}
|
|
||||||
<h1>{{ post.title }}</h1>
|
|
||||||
<p>{{ post.body }}</p>
|
|
||||||
{% endblock %}
|
|
Loading…
Reference in a new issue