Skip to content

Commit dc17f7d

Browse files
authored
Merge pull request creativecommons#43 from creativecommons/add_blog
Publish technical blog archives
2 parents b4aebf1 + 7e417d1 commit dc17f7d

File tree

6 files changed

+98
-0
lines changed

6 files changed

+98
-0
lines changed
+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
_model: blog
2+
---
3+
title: CC Technical Blog Archives
4+
---
5+
description:
6+
7+
Here are CC's technical blog posts from 2007-2014 for historical preservation. The information in the posts is probably inaccurate and links may be broken.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
title: Getting started with hacking on The List
2+
---
3+
author: Matt Lee
4+
---
5+
body:
6+
7+
One thing we want to do at Creative Commons is get people involved
8+
with our projects, and run them like true free software projects. As
9+
such, no code is internal for long -- it's just waiting to be checked
10+
in, and pushed. My style of programming is to check in often
11+
(sometimes too often) and with short, punchy comments about the
12+
changes. Sometimes, as we all do, I fail at good commit messages.
13+
14+
With that in mind, I thought I'd write up
15+
[some documentation on how to get started hacking](https://github.com/creativecommons/list/blob/master/www/_source/getting-started.md)
16+
on my most recent project, The List web app.
17+
---
18+
pub_date: 2014-12-15

models/blog-post.ini

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
[model]
2+
name = Blog Post
3+
label = {{ this.title }}
4+
hidden = yes
5+
6+
[fields.title]
7+
label = Title
8+
type = string
9+
size = large
10+
11+
[fields.pub_date]
12+
label = Publication date
13+
type = date
14+
width = 1/2
15+
16+
[fields.author]
17+
label = Author
18+
type = string
19+
width = 1/2
20+
21+
[fields.body]
22+
label = Body
23+
type = markdown

models/blog.ini

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
[model]
2+
name = Blog
3+
label = Blog
4+
hidden = yes
5+
protected = yes
6+
7+
[fields.title]
8+
label = Title
9+
type = string
10+
size = large
11+
12+
[fields.description]
13+
label = Description
14+
type = markdown
15+
16+
[children]
17+
model = blog-post
18+
order_by = -pub_date, title
19+
20+
[pagination]
21+
enabled = yes
22+
per_page = 10
23+
24+

templates/blog-post.html

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{% extends "layout.html" %}
2+
{% block title %}{{ this.title }}{% endblock %}
3+
{% block header %}{{ this.parent.title }}{% endblock %}
4+
{% block body %}
5+
<h2 class="mb-0">{{ this.title }}</h2>
6+
<p class="meta text-muted mt-0">by {{ this.author }} on {{ this.pub_date|dateformat('full') }}
7+
<div class="body">{{ this.body }}</div>
8+
{% endblock %}

templates/blog.html

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{% extends "layout.html" %}
2+
{% from "macros/pagination.html" import render_pagination %}
3+
{% block title %}{{ this.title }}{% endblock %}
4+
{% block body %}
5+
{{ this.description }}
6+
<ul class="blog-index list-unstyled">
7+
{% for post in this.pagination.items %}
8+
<li>
9+
<a href="{{ post|url }}">{{ post.title }}</a>
10+
<p class="text-muted small">by {{ post.author }} on {{ post.pub_date|dateformat("YYYY-MM-dd") }}</p>
11+
</li>
12+
{% endfor %}
13+
</ul>
14+
15+
{% if this.pagination.pages > 1 %}
16+
{{ render_pagination(this.pagination) }}
17+
{% endif %}
18+
{% endblock %}

0 commit comments

Comments
 (0)