init staticcms
Signed-off-by: Nico Schottelius <nico@nico-notebook.schottelius.org>
This commit is contained in:
		
				commit
				
					
						57d66eb0c1
					
				
			
		
					 16 changed files with 221 additions and 0 deletions
				
			
		
							
								
								
									
										42
									
								
								assets/static/style.css
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								assets/static/style.css
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,42 @@
 | 
				
			||||||
 | 
					body {
 | 
				
			||||||
 | 
					    font-family: 'Verdana', sans-serif;
 | 
				
			||||||
 | 
					    margin: 50px 25px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a {
 | 
				
			||||||
 | 
					    color: #2a99b6;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a:hover {
 | 
				
			||||||
 | 
					    color: #33bbdf;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					header, footer, div.page {
 | 
				
			||||||
 | 
					    width: 760px;
 | 
				
			||||||
 | 
					    margin: 0 auto;
 | 
				
			||||||
 | 
					    background: #daeef3;
 | 
				
			||||||
 | 
					    padding: 20px 30px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					header h1 {
 | 
				
			||||||
 | 
					    color: #169bbd;
 | 
				
			||||||
 | 
					    margin: 0;
 | 
				
			||||||
 | 
					    font-weight: normal;
 | 
				
			||||||
 | 
					    font-size: 42px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					header nav ul {
 | 
				
			||||||
 | 
					    list-style: none;
 | 
				
			||||||
 | 
					    margin: 0;
 | 
				
			||||||
 | 
					    padding: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					header nav ul li {
 | 
				
			||||||
 | 
					    display: inline;
 | 
				
			||||||
 | 
					    margin: 0 8px 0 0;
 | 
				
			||||||
 | 
					    padding: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					div.page {
 | 
				
			||||||
 | 
					    background: #f1fbfe;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										7
									
								
								content/about/contents.lr
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								content/about/contents.lr
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,7 @@
 | 
				
			||||||
 | 
					title: About this Website
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					body:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This is a website that was made with the Lektor quickstart.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					And it does not contain a lot of information.
 | 
				
			||||||
							
								
								
									
										3
									
								
								content/blog/contents.lr
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								content/blog/contents.lr
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,3 @@
 | 
				
			||||||
 | 
					_model: blog
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					title: Blog
 | 
				
			||||||
							
								
								
									
										9
									
								
								content/blog/first-post/contents.lr
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								content/blog/first-post/contents.lr
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,9 @@
 | 
				
			||||||
 | 
					title: Hello Website
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					pub_date: 2019-09-24
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					author: ungleich
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					body:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This is an example blog post.  Not much here but that's not the point :)
 | 
				
			||||||
							
								
								
									
										6
									
								
								content/contents.lr
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								content/contents.lr
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,6 @@
 | 
				
			||||||
 | 
					title: Welcome to ungleich static cms!
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					body:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This is a basic demo website that shows how to use Lektor for a basic
 | 
				
			||||||
 | 
					website with some pages and a blog.
 | 
				
			||||||
							
								
								
									
										9
									
								
								content/projects/contents.lr
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								content/projects/contents.lr
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,9 @@
 | 
				
			||||||
 | 
					title: Projects
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					body:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This is a list of the projects:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Project 1
 | 
				
			||||||
 | 
					* Project 2
 | 
				
			||||||
 | 
					* Project 3
 | 
				
			||||||
							
								
								
									
										29
									
								
								models/blog-post.ini
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								models/blog-post.ini
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,29 @@
 | 
				
			||||||
 | 
					[model]
 | 
				
			||||||
 | 
					name = Blog Post
 | 
				
			||||||
 | 
					label = {{ this.title }}
 | 
				
			||||||
 | 
					hidden = yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.title]
 | 
				
			||||||
 | 
					label = Title
 | 
				
			||||||
 | 
					type = string
 | 
				
			||||||
 | 
					size = large
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.author]
 | 
				
			||||||
 | 
					label = Author
 | 
				
			||||||
 | 
					type = string
 | 
				
			||||||
 | 
					width = 1/2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.twitter_handle]
 | 
				
			||||||
 | 
					label = Twitter Handle
 | 
				
			||||||
 | 
					type = string
 | 
				
			||||||
 | 
					width = 1/4
 | 
				
			||||||
 | 
					addon_label = @
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.pub_date]
 | 
				
			||||||
 | 
					label = Publication date
 | 
				
			||||||
 | 
					type = date
 | 
				
			||||||
 | 
					width = 1/4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.body]
 | 
				
			||||||
 | 
					label = Body
 | 
				
			||||||
 | 
					type = markdown
 | 
				
			||||||
							
								
								
									
										16
									
								
								models/blog.ini
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								models/blog.ini
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,16 @@
 | 
				
			||||||
 | 
					[model]
 | 
				
			||||||
 | 
					name = Blog
 | 
				
			||||||
 | 
					label = Blog
 | 
				
			||||||
 | 
					hidden = yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.title]
 | 
				
			||||||
 | 
					label = Title
 | 
				
			||||||
 | 
					type = string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[children]
 | 
				
			||||||
 | 
					model = blog-post
 | 
				
			||||||
 | 
					order_by = -pub_date, title
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[pagination]
 | 
				
			||||||
 | 
					enabled = yes
 | 
				
			||||||
 | 
					per_page = 10
 | 
				
			||||||
							
								
								
									
										11
									
								
								models/page.ini
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								models/page.ini
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					[model]
 | 
				
			||||||
 | 
					name = Page
 | 
				
			||||||
 | 
					label = {{ this.title }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.title]
 | 
				
			||||||
 | 
					label = Title
 | 
				
			||||||
 | 
					type = string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fields.body]
 | 
				
			||||||
 | 
					label = Body
 | 
				
			||||||
 | 
					type = markdown
 | 
				
			||||||
							
								
								
									
										6
									
								
								templates/blog-post.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								templates/blog-post.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,6 @@
 | 
				
			||||||
 | 
					{% extends "layout.html" %}
 | 
				
			||||||
 | 
					{% from "macros/blog.html" import render_blog_post %}
 | 
				
			||||||
 | 
					{% block title %}{{ this.title }}{% endblock %}
 | 
				
			||||||
 | 
					{% block body %}
 | 
				
			||||||
 | 
					  {{ render_blog_post(this) }}
 | 
				
			||||||
 | 
					{% endblock %}
 | 
				
			||||||
							
								
								
									
										11
									
								
								templates/blog.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								templates/blog.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					{% extends "layout.html" %}
 | 
				
			||||||
 | 
					{% from "macros/blog.html" import render_blog_post %}
 | 
				
			||||||
 | 
					{% from "macros/pagination.html" import render_pagination %}
 | 
				
			||||||
 | 
					{% block title %}{{ this.title }}{% endblock %}
 | 
				
			||||||
 | 
					{% block body %}
 | 
				
			||||||
 | 
					  {% for child in this.pagination.items %}
 | 
				
			||||||
 | 
					    {{ render_blog_post(child, from_index=true) }}
 | 
				
			||||||
 | 
					  {% endfor %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  {{ render_pagination(this.pagination) }}
 | 
				
			||||||
 | 
					{% endblock %}
 | 
				
			||||||
							
								
								
									
										29
									
								
								templates/layout.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								templates/layout.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,29 @@
 | 
				
			||||||
 | 
					<!doctype html>
 | 
				
			||||||
 | 
					<meta charset="utf-8">
 | 
				
			||||||
 | 
					<link rel="stylesheet" href="{{ '/static/style.css'|url }}">
 | 
				
			||||||
 | 
					<title>{% block title %}Welcome{% endblock %} — ungleich static cms</title>
 | 
				
			||||||
 | 
					<body>
 | 
				
			||||||
 | 
					  <header>
 | 
				
			||||||
 | 
					    <h1>ungleich static cms</h1>
 | 
				
			||||||
 | 
					    <nav>
 | 
				
			||||||
 | 
					      <ul class="nav navbar-nav">
 | 
				
			||||||
 | 
					        <li{% if this._path == '/' %} class="active"{% endif
 | 
				
			||||||
 | 
					          %}><a href="{{ '/'|url }}">Welcome</a></li>
 | 
				
			||||||
 | 
					        {% for href, title in [
 | 
				
			||||||
 | 
					          ['/blog', 'Blog'],
 | 
				
			||||||
 | 
					          ['/projects', 'Projects'],
 | 
				
			||||||
 | 
					          ['/about', 'About']
 | 
				
			||||||
 | 
					        ] %}
 | 
				
			||||||
 | 
					          <li{% if this.is_child_of(href) %} class="active"{% endif
 | 
				
			||||||
 | 
					            %}><a href="{{ href|url }}">{{ title }}</a></li>
 | 
				
			||||||
 | 
					        {% endfor %}
 | 
				
			||||||
 | 
					      </ul>
 | 
				
			||||||
 | 
					    </nav>
 | 
				
			||||||
 | 
					  </header>
 | 
				
			||||||
 | 
					  <div class="page">
 | 
				
			||||||
 | 
					    {% block body %}{% endblock %}
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					  <footer>
 | 
				
			||||||
 | 
					    © Copyright 2019 by ungleich.
 | 
				
			||||||
 | 
					  </footer>
 | 
				
			||||||
 | 
					</body>
 | 
				
			||||||
							
								
								
									
										20
									
								
								templates/macros/blog.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								templates/macros/blog.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,20 @@
 | 
				
			||||||
 | 
					{% macro render_blog_post(post, from_index=false) %}
 | 
				
			||||||
 | 
					  <div class="blog-post">
 | 
				
			||||||
 | 
					  {% if from_index %}
 | 
				
			||||||
 | 
					    <h2><a href="{{ post|url }}">{{ post.title }}</a></h2>
 | 
				
			||||||
 | 
					  {% else %}
 | 
				
			||||||
 | 
					    <h2>{{ post.title }}</h2>
 | 
				
			||||||
 | 
					  {% endif %}
 | 
				
			||||||
 | 
					  <p class="meta">
 | 
				
			||||||
 | 
					    written by
 | 
				
			||||||
 | 
					    {% if post.twitter_handle %}
 | 
				
			||||||
 | 
					      <a href="https://twitter.com/{{ post.twitter_handle
 | 
				
			||||||
 | 
					        }}">{{ post.author or post.twitter_handle }}</a>
 | 
				
			||||||
 | 
					    {% else %}
 | 
				
			||||||
 | 
					      {{ post.author }}
 | 
				
			||||||
 | 
					    {% endif %}
 | 
				
			||||||
 | 
					    on {{ post.pub_date }}
 | 
				
			||||||
 | 
					  </p>
 | 
				
			||||||
 | 
					  {{ post.body }}
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					{% endmacro %}
 | 
				
			||||||
							
								
								
									
										15
									
								
								templates/macros/pagination.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								templates/macros/pagination.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					{% macro render_pagination(pagination) %}
 | 
				
			||||||
 | 
					  <div class="pagination">
 | 
				
			||||||
 | 
					    {% if pagination.has_prev %}
 | 
				
			||||||
 | 
					      <a href="{{ pagination.prev|url }}">« Previous</a>
 | 
				
			||||||
 | 
					    {% else %}
 | 
				
			||||||
 | 
					      <span class="disabled">« Previous</span>
 | 
				
			||||||
 | 
					    {% endif %}
 | 
				
			||||||
 | 
					    | {{ pagination.page }} |
 | 
				
			||||||
 | 
					    {% if pagination.has_next %}
 | 
				
			||||||
 | 
					      <a href="{{ pagination.next|url }}">Next »</a>
 | 
				
			||||||
 | 
					    {% else %}
 | 
				
			||||||
 | 
					      <span class="disabled">Next »</span>
 | 
				
			||||||
 | 
					    {% endif %}
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					{% endmacro %}
 | 
				
			||||||
							
								
								
									
										6
									
								
								templates/page.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								templates/page.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,6 @@
 | 
				
			||||||
 | 
					{% extends "layout.html" %}
 | 
				
			||||||
 | 
					{% block title %}{{ this.title }}{% endblock %}
 | 
				
			||||||
 | 
					{% block body %}
 | 
				
			||||||
 | 
					  <h2>{{ this.title }}</h2>
 | 
				
			||||||
 | 
					  {{ this.body }}
 | 
				
			||||||
 | 
					{% endblock %}
 | 
				
			||||||
							
								
								
									
										2
									
								
								ungleich static cms.lektorproject
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ungleich static cms.lektorproject
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,2 @@
 | 
				
			||||||
 | 
					[project]
 | 
				
			||||||
 | 
					name = ungleich static cms
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue