Merge pull request #5 from datalets/55-beta-corrections
55 beta corrections
1
.gitignore
vendored
|
@ -15,3 +15,4 @@
|
|||
/docs/_build/
|
||||
/node_modules/
|
||||
/publichealth/static/libs/
|
||||
/mockup/assets/css/*.css
|
||||
|
|
|
@ -29,7 +29,7 @@ module.exports = function(grunt) {
|
|||
sourcemap: 'none'
|
||||
},
|
||||
files: { // Dictionary of files
|
||||
"publichealth/static/mockup/assets/css/main.css": "publichealth/static/css/main.scss"
|
||||
"./assets/css/main.css": "publichealth/static/css/main.scss"
|
||||
}
|
||||
},
|
||||
dist: {
|
||||
|
@ -38,7 +38,7 @@ module.exports = function(grunt) {
|
|||
sourcemap: 'none'
|
||||
},
|
||||
files: {
|
||||
"publichealth/static/mockup/assets/css/main.min.css": "publichealth/static/css/main.scss"
|
||||
"./assets/css/main.min.css": "publichealth/static/css/main.scss"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -58,8 +58,8 @@ module.exports = function(grunt) {
|
|||
dev: {
|
||||
bsFiles: {
|
||||
src: [
|
||||
"publichealth/static/mockup/assets/css/*.css",
|
||||
"publichealth/static/mockup/*.html"
|
||||
"./assets/css/*.css",
|
||||
"./*.html"
|
||||
]
|
||||
},
|
||||
options: {
|
||||
|
|
|
@ -29,7 +29,7 @@ bower install
|
|||
|
||||
The first command (`..install -g..`) may require `sudo` if you installed node.js as a system package.
|
||||
|
||||
If you are only working on the frontend, you can start a local webserver and work on frontend assets without the backend setup described below. Mock content is at `publichealth/static/mockup`
|
||||
If you are only working on the frontend, you can start a local webserver and work on frontend assets without the backend setup described below. Mock content is at `mockup`, and there is a `grunt browser-sync` setup for working with frontend assets.
|
||||
|
||||
**Backend setup**
|
||||
|
||||
|
@ -57,13 +57,12 @@ If you have one installed, also start your local redis server (`service redis st
|
|||
Run this after completing setup:
|
||||
|
||||
```
|
||||
./manage.py runserver &
|
||||
grunt browser-sync
|
||||
./manage.py runserver
|
||||
```
|
||||
|
||||
A default browser should open pointing to the default home page.
|
||||
|
||||
Now access the admin panel with the user account you created earlier: http://localhost:3000/admin/
|
||||
Now access the admin panel with the user account you created earlier: http://localhost:8000/admin/
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
|
|
|
@ -48,6 +48,10 @@ server {
|
|||
proxy_redirect off;
|
||||
proxy_pass http://wagtail-site;
|
||||
}
|
||||
|
||||
location /logicio/pmws/ {
|
||||
return 301 /;
|
||||
}
|
||||
}
|
||||
|
||||
# TODO: parameterize
|
||||
|
|
5423
config.codekit3
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 106 KiB |
Before Width: | Height: | Size: 382 KiB After Width: | Height: | Size: 382 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
@ -7,7 +7,7 @@
|
|||
|
||||
{% if articles|length is 1 %}
|
||||
|
||||
<section id="news-details">
|
||||
<section id="news-details" class="article-index-page">
|
||||
<div class="container">
|
||||
{% for page in articles %}
|
||||
{% include 'home/page_content.html' %}
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
{% else %}
|
||||
|
||||
<section id="article-index">
|
||||
<section id="article-index" class="article-index-page">
|
||||
<div class="container">
|
||||
<h2>{{ page.trans_title }}</h2>
|
||||
<p class="lead">{{ page.trans_intro|richtext }}</p>
|
||||
|
@ -50,7 +50,6 @@
|
|||
<h3>{{ block.trans_title }}</h3>
|
||||
</header>
|
||||
</a>
|
||||
{{ block.trans_intro|richtext }}
|
||||
</article>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
{% block body_class %}template-{{ self.get_verbose_name|slugify }}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<section id="news-details">
|
||||
<section id="news-details" class="article-page">
|
||||
<div class="container">
|
||||
|
||||
{% include 'home/page_content.html' %}
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
<h1 class="title">{{ page.trans_title }}</h1>
|
||||
|
||||
<p class="lead">{{ page.trans_intro|richtext }}</p>
|
||||
<div class="lead">{{ page.trans_intro|richtext }}</div>
|
||||
|
||||
{% if page.date %}
|
||||
<p class="date">{{ page.date }}</p>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
<form action="https://formspree.io/{{ contact.email }}" method="POST">
|
||||
<form action="mailto:{{ contact.email }}" enctype="text/plain" method="GET">
|
||||
<div class="form-group">
|
||||
<input name="name" id="name" type="text" placeholder="Name / Nom" class="form-control">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<!--<div class="form-group">
|
||||
<input name="_replyto" id="email" type="email" placeholder="E-Mail" class="form-control">
|
||||
</div>
|
||||
</div>-->
|
||||
<div class="form-group">
|
||||
<textarea name="message" id="message" rows="3" placeholder="" class="form-control"></textarea>
|
||||
</div>
|
||||
|
|
|
@ -8,7 +8,7 @@ register = template.Library()
|
|||
@register.inclusion_tag('tags/language.html', takes_context=True)
|
||||
def language_switcher(context):
|
||||
url = context['page'].url.split('/')
|
||||
if len(url) > 2 and len(url[1]) == 2:
|
||||
if len(url) > 2 and len(url[1]) >= 2:
|
||||
url[1] = '$lang$'
|
||||
url = '/'.join(url)
|
||||
return {
|
||||
|
|
|
@ -26,11 +26,15 @@ section {
|
|||
.article-body > div {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.infoblocks article:nth-child(4) {
|
||||
.infoblocks article:nth-child(3n+0) {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
// Special article layout
|
||||
.article-page .lead {
|
||||
h2,h3,h4,h5 { text-align: center; }
|
||||
}
|
||||
|
||||
// Responsive image/video classes
|
||||
.rich-text img {
|
||||
max-width: 100%;
|
||||
|
|
|
@ -5,7 +5,7 @@ footer#footer {
|
|||
color: white;
|
||||
|
||||
a {
|
||||
color: lighten($brand-secondary, 10%);
|
||||
color: lighten($brand-secondary, 25%);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
form {
|
||||
label {
|
||||
width: 15em;
|
||||
border-bottom: 1px dashed #ccc;
|
||||
border-bottom: 1px dashed $gray-light;
|
||||
line-height: 166%;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
@ -24,6 +24,10 @@
|
|||
display: block;
|
||||
font-size: 90%;
|
||||
}
|
||||
input[type='text'], textarea {
|
||||
border: 1px solid $gray-light;
|
||||
padding: 3px;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,204 +0,0 @@
|
|||
@charset "UTF-8";
|
||||
/* Slider */
|
||||
.slick-slider {
|
||||
position: relative;
|
||||
display: block;
|
||||
box-sizing: border-box;
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
-ms-touch-action: pan-y;
|
||||
touch-action: pan-y;
|
||||
-webkit-tap-highlight-color: transparent; }
|
||||
|
||||
.slick-list {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0;
|
||||
padding: 0; }
|
||||
.slick-list:focus {
|
||||
outline: none; }
|
||||
.slick-list.dragging {
|
||||
cursor: pointer;
|
||||
cursor: hand; }
|
||||
|
||||
.slick-slider .slick-track,
|
||||
.slick-slider .slick-list {
|
||||
-webkit-transform: translate3d(0, 0, 0);
|
||||
-moz-transform: translate3d(0, 0, 0);
|
||||
-ms-transform: translate3d(0, 0, 0);
|
||||
-o-transform: translate3d(0, 0, 0);
|
||||
transform: translate3d(0, 0, 0); }
|
||||
|
||||
.slick-track {
|
||||
position: relative;
|
||||
left: 0;
|
||||
top: 0;
|
||||
display: block; }
|
||||
.slick-track:before, .slick-track:after {
|
||||
content: "";
|
||||
display: table; }
|
||||
.slick-track:after {
|
||||
clear: both; }
|
||||
.slick-loading .slick-track {
|
||||
visibility: hidden; }
|
||||
|
||||
.slick-slide {
|
||||
float: left;
|
||||
height: 100%;
|
||||
min-height: 1px;
|
||||
display: none; }
|
||||
[dir="rtl"] .slick-slide {
|
||||
float: right; }
|
||||
.slick-slide img {
|
||||
display: block; }
|
||||
.slick-slide.slick-loading img {
|
||||
display: none; }
|
||||
.slick-slide.dragging img {
|
||||
pointer-events: none; }
|
||||
.slick-initialized .slick-slide {
|
||||
display: block; }
|
||||
.slick-loading .slick-slide {
|
||||
visibility: hidden; }
|
||||
.slick-vertical .slick-slide {
|
||||
display: block;
|
||||
height: auto;
|
||||
border: 1px solid transparent; }
|
||||
|
||||
.slick-arrow.slick-hidden {
|
||||
display: none; }
|
||||
|
||||
/* Slider */
|
||||
.slick-loading .slick-list {
|
||||
background: #fff url("./ajax-loader.gif") center center no-repeat; }
|
||||
|
||||
/* Icons */
|
||||
@font-face {
|
||||
font-family: "slick";
|
||||
src: url("../fonts/slick.eot");
|
||||
src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/slick.svg#slick") format("svg");
|
||||
font-weight: normal;
|
||||
font-style: normal; }
|
||||
|
||||
/* Arrows */
|
||||
.slick-prev,
|
||||
.slick-next {
|
||||
z-index: 1;
|
||||
position: absolute;
|
||||
display: block;
|
||||
height: 30px;
|
||||
width: 30px;
|
||||
line-height: 0px;
|
||||
font-size: 0px;
|
||||
cursor: pointer;
|
||||
background: transparent;
|
||||
color: transparent;
|
||||
top: 50%;
|
||||
-webkit-transform: translate(0, -50%);
|
||||
-ms-transform: translate(0, -50%);
|
||||
transform: translate(0, -50%);
|
||||
padding: 0;
|
||||
border: none;
|
||||
outline: none; }
|
||||
.slick-prev:hover, .slick-prev:focus,
|
||||
.slick-next:hover,
|
||||
.slick-next:focus {
|
||||
outline: none;
|
||||
background: transparent;
|
||||
color: transparent; }
|
||||
.slick-prev:hover:before, .slick-prev:focus:before,
|
||||
.slick-next:hover:before,
|
||||
.slick-next:focus:before {
|
||||
opacity: 1; }
|
||||
.slick-prev.slick-disabled:before,
|
||||
.slick-next.slick-disabled:before {
|
||||
opacity: 0.25; }
|
||||
.slick-prev:before,
|
||||
.slick-next:before {
|
||||
font-family: "slick";
|
||||
font-size: 30px;
|
||||
line-height: 1;
|
||||
color: white;
|
||||
opacity: 0.75;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale; }
|
||||
|
||||
.slick-prev {
|
||||
left: 25px; }
|
||||
[dir="rtl"] .slick-prev {
|
||||
left: auto;
|
||||
right: -25px; }
|
||||
.slick-prev:before {
|
||||
content: "←"; }
|
||||
[dir="rtl"] .slick-prev:before {
|
||||
content: "→"; }
|
||||
|
||||
.slick-next {
|
||||
right: 25px; }
|
||||
[dir="rtl"] .slick-next {
|
||||
left: -25px;
|
||||
right: auto; }
|
||||
.slick-next:before {
|
||||
content: "→"; }
|
||||
[dir="rtl"] .slick-next:before {
|
||||
content: "←"; }
|
||||
|
||||
/* Dots */
|
||||
.slick-dotted.slick-slider {
|
||||
margin-bottom: 30px; }
|
||||
|
||||
.slick-dots {
|
||||
position: absolute;
|
||||
bottom: -25px;
|
||||
list-style: none;
|
||||
display: block;
|
||||
text-align: center;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
width: 100%; }
|
||||
.slick-dots li {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
margin: 0 5px;
|
||||
padding: 0;
|
||||
cursor: pointer; }
|
||||
.slick-dots li button {
|
||||
border: 0;
|
||||
background: transparent;
|
||||
display: block;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
outline: none;
|
||||
line-height: 0px;
|
||||
font-size: 0px;
|
||||
color: transparent;
|
||||
padding: 5px;
|
||||
cursor: pointer; }
|
||||
.slick-dots li button:hover, .slick-dots li button:focus {
|
||||
outline: none; }
|
||||
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
|
||||
opacity: 1; }
|
||||
.slick-dots li button:before {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
content: "•";
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
font-family: "slick";
|
||||
font-size: 13px;
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
color: black;
|
||||
opacity: 0.25;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale; }
|
||||
.slick-dots li.slick-active button:before {
|
||||
color: black;
|
||||
opacity: 0.75; }
|
|
@ -5,7 +5,7 @@
|
|||
<div class="container">
|
||||
<div class="nav">
|
||||
<span class="contact-nav">
|
||||
<a class="link" href="#contact">Kontakt</a>
|
||||
<a class="link" href="#contact-info">Kontakt</a>
|
||||
{% contact_links %}
|
||||
</span>
|
||||
<span class="language-nav">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# Updated: 5.4.2017
|
||||
# Updated: 3.5.2017
|
||||
|
||||
# Core
|
||||
wagtail==1.9
|
||||
wagtail==1.9.1
|
||||
Django==1.10.7
|
||||
|
||||
# Database
|
||||
|
@ -15,12 +15,12 @@ puput==0.8
|
|||
elasticsearch>=5.0.0,<6.0.0
|
||||
|
||||
# Caching
|
||||
django-redis==4.7.0
|
||||
django-redis==4.8.0
|
||||
|
||||
# Frontend
|
||||
django-libsass==0.7
|
||||
libsass==0.12.3
|
||||
Pillow==4.1.0
|
||||
Pillow==4.1.1
|
||||
|
||||
# Development tools
|
||||
stellar==0.4.3
|
||||
|
|
|
@ -54,6 +54,6 @@ cd $PROJECT_DIR
|
|||
npm install -g bower grunt-cli
|
||||
npm install
|
||||
bower install
|
||||
alias liverun="grunt browser-sync"
|
||||
alias bower="bower install"
|
||||
|
||||
EOF
|
||||
|
|