mirror of
https://github.com/c0de-archive/pelican-mg.git
synced 2024-12-22 08:22:40 +00:00
Getting rid of sass + adding <base href + adding image-process-thumb + styling mg-tag-filters + adding support for lang: tags
This commit is contained in:
parent
8d5d7491bc
commit
a3b1d218ad
13
Makefile
13
Makefile
@ -1,13 +0,0 @@
|
|||||||
SCSSDIR ?= scss
|
|
||||||
CSSDIR = static/css
|
|
||||||
|
|
||||||
sass:
|
|
||||||
@for i in $$(ls $(SCSSDIR)); do \
|
|
||||||
out="$(CSSDIR)/$${i%.*}.css"; \
|
|
||||||
sass "$(SCSSDIR)/$$i" "$$out"; \
|
|
||||||
sed -i '$$d' "$$out"; \
|
|
||||||
rm "$$out.map"; \
|
|
||||||
done
|
|
||||||
@echo 'SCSS files compiled'
|
|
||||||
|
|
||||||
|
|
@ -46,9 +46,9 @@ Features
|
|||||||
|
|
||||||
Install
|
Install
|
||||||
-------
|
-------
|
||||||
This template uses the [representative_image](https://github.com/getpelican/pelican-plugins/tree/master/representative_image) plugin, so you will need to:
|
This template uses the [representative_image](https://github.com/getpelican/pelican-plugins/tree/master/representative_image) and [image_process](https://github.com/getpelican/pelican-plugins/tree/master/image_process) plugins, so you will need to:
|
||||||
|
|
||||||
pip install beautifulsoup4
|
pip install beautifulsoup4 pillow
|
||||||
|
|
||||||
|
|
||||||
Settings
|
Settings
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 30 KiB |
Binary file not shown.
Before Width: | Height: | Size: 109 KiB |
Binary file not shown.
Before Width: | Height: | Size: 107 KiB |
Binary file not shown.
Before Width: | Height: | Size: 33 KiB |
Binary file not shown.
Before Width: | Height: | Size: 30 KiB |
247
scss/main.scss
247
scss/main.scss
@ -1,247 +0,0 @@
|
|||||||
$baseGreen: #39B39D;
|
|
||||||
$accentGreen: #28D1B2;
|
|
||||||
$feedOrange: #FF6600;
|
|
||||||
$twitterBlue: #00B0ED;
|
|
||||||
$facebookBlue: #3B5999;
|
|
||||||
$googleRed: #D34836;
|
|
||||||
$githubBlack: #333;
|
|
||||||
$mailBlue: #059;
|
|
||||||
$textGrey: #444;
|
|
||||||
$ancorBase: #33b5e5;
|
|
||||||
$ancorOver: #0099cc;
|
|
||||||
|
|
||||||
// Base style
|
|
||||||
|
|
||||||
html {
|
|
||||||
font: 400 14px / 20px "Oswald", "Helvetica Neue",Helvetica,Arial,sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: $ancorBase;
|
|
||||||
&:hover {
|
|
||||||
color: $ancorOver;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// uikit override
|
|
||||||
|
|
||||||
.uk-navbar-brand {
|
|
||||||
text-transform: uppercase;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-article-meta {
|
|
||||||
& > a {
|
|
||||||
color: $textGrey;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
color: $textGrey;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
& > .uk-icon-comment {
|
|
||||||
color: $textGrey;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-twitter {
|
|
||||||
color: $twitterBlue;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-facebook, .uk-icon-facebook-square {
|
|
||||||
color: $facebookBlue;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-google-plus, .uk-icon-google-plus-square {
|
|
||||||
color: $googleRed;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-github {
|
|
||||||
color: $githubBlack;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-envelope {
|
|
||||||
color: $textGrey;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-nav-side > li.uk-active > a {
|
|
||||||
background: $accentGreen;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-pagination>.uk-active>span {
|
|
||||||
background: $accentGreen;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-medium {
|
|
||||||
margin-right: 0.3em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-navbar-toggle {
|
|
||||||
color: white;
|
|
||||||
|
|
||||||
&:hover, &:focus {
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-nav-offcanvas {
|
|
||||||
& > li > a {
|
|
||||||
border-top: 1px solid rgba(0,0,0,.3);
|
|
||||||
box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
|
|
||||||
text-shadow: 0 1px 0 rgba(0,0,0,.5);
|
|
||||||
|
|
||||||
&:last-child {
|
|
||||||
border-bottom: 1px solid rgba(0,0,0,.3);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
& .uk-nav-divider {
|
|
||||||
border-top: 1px solid rgba(255,255,255,.01);
|
|
||||||
margin: 0;
|
|
||||||
height: 4px;
|
|
||||||
background: rgba(0,0,0,.2);
|
|
||||||
box-shadow: inset 0 1px 3px rgba(0,0,0,.3);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.uk-nav-offcanvas .uk-nav-header {
|
|
||||||
margin-top: 0;
|
|
||||||
background: #404040;
|
|
||||||
border-top: 1px solid rgba(0,0,0,.3);
|
|
||||||
box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
|
|
||||||
text-shadow: 0 1px 0 rgba(0,0,0,.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
// mg style
|
|
||||||
|
|
||||||
.mg-header {
|
|
||||||
padding: 1em 0;
|
|
||||||
// Green style
|
|
||||||
background-color: $baseGreen;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-brand {
|
|
||||||
font: {
|
|
||||||
family: "Open Sans", sans-serif;
|
|
||||||
style: italic;
|
|
||||||
size: 2.5em;
|
|
||||||
}
|
|
||||||
padding-left: 0;
|
|
||||||
|
|
||||||
// Green style
|
|
||||||
color: white;
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
&:hover, &:focus {
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
|
||||||
padding: 0;
|
|
||||||
max-width: 100%;
|
|
||||||
font-size: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-tagline {
|
|
||||||
font: {
|
|
||||||
family: "Open Sans", sans-serif;
|
|
||||||
weight: 800;
|
|
||||||
}
|
|
||||||
padding: 1em 0 0;
|
|
||||||
color: white;
|
|
||||||
|
|
||||||
@media (min-width: 1220px) {
|
|
||||||
padding-left: 0 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-main {
|
|
||||||
margin: {
|
|
||||||
top: 4em;
|
|
||||||
bottom: 3em;
|
|
||||||
}
|
|
||||||
min-height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-feed {
|
|
||||||
color: $feedOrange;
|
|
||||||
&:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
color: $feedOrange;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-list-title {
|
|
||||||
font-size: 2em;
|
|
||||||
line-height: 42px;
|
|
||||||
font-weight: 400;
|
|
||||||
text-transform: none;
|
|
||||||
margin-top: 0.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-footer {
|
|
||||||
margin-bottom: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-author {
|
|
||||||
margin-top: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-icon-link:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-icons-small {
|
|
||||||
margin-bottom: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-icons-small {
|
|
||||||
&>li>a {
|
|
||||||
color: white;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-rss {
|
|
||||||
background-color: $feedOrange;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-twitter {
|
|
||||||
background-color: $twitterBlue;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-facebook {
|
|
||||||
background-color: $facebookBlue;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-google-plus {
|
|
||||||
background-color: $googleRed;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-github {
|
|
||||||
background-color: $githubBlack;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uk-icon-envelope {
|
|
||||||
background-color: $mailBlue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.mg-badges li {
|
|
||||||
float: left;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Browser Upgrade
|
|
||||||
|
|
||||||
.browserupgrade {
|
|
||||||
margin: 0.2em 0;
|
|
||||||
background: #ccc;
|
|
||||||
color: #000;
|
|
||||||
padding: 0.2em 0;
|
|
||||||
}
|
|
@ -1,127 +0,0 @@
|
|||||||
/*!
|
|
||||||
* Tipue Search 4.0
|
|
||||||
* Copyright (c) 2014 Tipue
|
|
||||||
* Tipue Search is released under the MIT License
|
|
||||||
* http://www.tipue.com/search
|
|
||||||
*
|
|
||||||
* This is a modified version of the Tipue Search plugin style sheet,
|
|
||||||
* edited for the pelican mg theme.
|
|
||||||
* If you are looking for the original Tipue Search plugin style sheet
|
|
||||||
* check the project home at http://www.tipue.com/search.
|
|
||||||
*/
|
|
||||||
|
|
||||||
$baseText: #444;
|
|
||||||
|
|
||||||
@mixin animation($values) {
|
|
||||||
-webkit-animation: $values;
|
|
||||||
-moz-animation: $values;
|
|
||||||
-o-animation: $values;
|
|
||||||
animation: $values;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_content {
|
|
||||||
max-width: 650px;
|
|
||||||
padding-top: 15px;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_loading:before {
|
|
||||||
padding-top: 60px;
|
|
||||||
font-family: FontAwesome;
|
|
||||||
content: "\f013";
|
|
||||||
background: #fff no-repeat left;
|
|
||||||
@include animation(fa-spin 2s infinite linear);
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_warning_head {
|
|
||||||
font: 300 15px/1.6;
|
|
||||||
color: #555;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_warning {
|
|
||||||
font: 300 13px/1.6;
|
|
||||||
color: #333;
|
|
||||||
margin: 7px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_warning a {
|
|
||||||
color: #36c;
|
|
||||||
font-weight: 300;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_warning a:hover {
|
|
||||||
color: #333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tipue_search_content_title {
|
|
||||||
font-size: 2em;
|
|
||||||
line-height: 42px;
|
|
||||||
font-weight: 400;
|
|
||||||
text-transform: none;
|
|
||||||
margin-top: 0.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tipue_search_content_title a {
|
|
||||||
color: $baseText;
|
|
||||||
text-decoration: none;
|
|
||||||
&:hover {
|
|
||||||
color: $baseText;
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.tipue_search_content_url {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tipue_search_content_text {
|
|
||||||
margin-top: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.h01 {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_foot {
|
|
||||||
margin: 51px 0 21px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_foot_boxes {
|
|
||||||
font-size: 0.75em;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_foot_boxes li {
|
|
||||||
list-style: none;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_foot_boxes li a {
|
|
||||||
padding: 9px 15px 10px 15px;
|
|
||||||
background-color: #f1f1f1;
|
|
||||||
border: 1px solid #dcdcdc;
|
|
||||||
border-radius: 1px;
|
|
||||||
color: #333;
|
|
||||||
margin-right: 7px;
|
|
||||||
text-decoration: none;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_foot_boxes li.current {
|
|
||||||
padding: 9px 15px 10px 15px;
|
|
||||||
background: #fff;
|
|
||||||
border: 1px solid #dcdcdc;
|
|
||||||
border-radius: 1px;
|
|
||||||
color: #333;
|
|
||||||
margin-right: 7px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tipue_search_foot_boxes li a:hover {
|
|
||||||
border: 1px solid #ccc;
|
|
||||||
background-color: #f3f3f3;
|
|
||||||
}
|
|
@ -125,10 +125,17 @@ a {
|
|||||||
font: inherit;
|
font: inherit;
|
||||||
padding: .5rem 1.5rem;
|
padding: .5rem 1.5rem;
|
||||||
margin: .5rem 1rem;
|
margin: .5rem 1rem;
|
||||||
text-transform: uppercase; }
|
text-transform: uppercase;
|
||||||
.mg-tag-filter:hover {
|
cursor: pointer; }
|
||||||
border-color: #b2b2b2;
|
.mg-tag-filter:hover {
|
||||||
text-decoration: none;}
|
border-color: #b2b2b2;
|
||||||
|
text-decoration: none; }
|
||||||
|
.mg-tag-filter-enabled {
|
||||||
|
background-color: #33b5e5;
|
||||||
|
border-color: black; }
|
||||||
|
.mg-tag-filter-disabled {
|
||||||
|
background-color: #FF9148;
|
||||||
|
border-color: black; }
|
||||||
|
|
||||||
.mg-nav-small {
|
.mg-nav-small {
|
||||||
width: 100% }
|
width: 100% }
|
||||||
@ -268,3 +275,13 @@ a {
|
|||||||
.mg-cloud-tag-badge {
|
.mg-cloud-tag-badge {
|
||||||
color: #FF6600; }
|
color: #FF6600; }
|
||||||
|
|
||||||
|
|
||||||
|
.mg-fadeable {
|
||||||
|
max-height: 100vh;
|
||||||
|
overflow: hidden;
|
||||||
|
transition: max-height 1s ease-in;
|
||||||
|
}
|
||||||
|
.mg-faded {
|
||||||
|
max-height: 0;
|
||||||
|
transition: max-height 1s ease-out;
|
||||||
|
}
|
||||||
|
@ -16,50 +16,54 @@
|
|||||||
<!--[if gt IE 8]><!--> <html lang="{{ DEFAULT_LANG }}" class="no-js" prefix="og: http://ogp.me/ns#" itemscope itemtype="http://schema.org/Blog"> <!--<![endif]-->
|
<!--[if gt IE 8]><!--> <html lang="{{ DEFAULT_LANG }}" class="no-js" prefix="og: http://ogp.me/ns#" itemscope itemtype="http://schema.org/Blog"> <!--<![endif]-->
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<title>{% block title %}{{ SITENAME }}{% endblock %}</title>
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<base href="{{ SITEURL }}">
|
||||||
<meta name="description" content="{% block description %}{{ DESCRIPTION }}{% endblock %}">
|
|
||||||
{% if FAVICON %}<link rel="shortcut icon" href="{{ SITEURL }}/{{ FAVICON }}" type="{{ FAVICON_TYPE|default('image/x-icon') }}">{% endif %}
|
|
||||||
<meta name="author" content="{{ AUTHOR }}">
|
|
||||||
<meta name="copyright" content="{{ AUTHOR }}">
|
|
||||||
<meta name="twitter:card" content="summary" />
|
|
||||||
<meta name="twitter:site" content="@{{ TWITTER_USERNAME }}" />
|
|
||||||
<meta property="og:site_name" content="{{ SITENAME }}" />
|
|
||||||
{% block seo %}
|
|
||||||
<meta property="og:title" content="{{ SITENAME }}" />
|
|
||||||
<meta property="og:type" content="website" />
|
|
||||||
<meta property="og:url" content="{{ SITEURL }}" />
|
|
||||||
<meta name="twitter:url" content="{{ SITEURL }}" />
|
|
||||||
<meta itemprop="name" content="{{ SITENAME }}" />
|
|
||||||
<meta itemprop="url" content="{{ SITEURL }}"/>
|
|
||||||
{% if DESCRIPTION %}
|
|
||||||
<meta property="og:description" content="{{ DESCRIPTION }}" />
|
|
||||||
<meta name="twitter:description" content="{{ DESCRIPTION }}" />
|
|
||||||
<meta itemprop="description" content="{{ DESCRIPTION }}" />
|
|
||||||
{% endif %}
|
|
||||||
{% if META_IMAGE %}
|
|
||||||
<meta property="og:image" content="{{ META_IMAGE }}" />
|
|
||||||
<meta property="og:image:type" content="{{ META_IMAGE_TYPE }}" />
|
|
||||||
<meta name="twitter:image" content="{{ META_IMAGE }}" />
|
|
||||||
<meta itemprop="image" content="{{ META_IMAGE }}" />
|
|
||||||
{% endif %}
|
|
||||||
{% endblock %}
|
|
||||||
<link href="{{ SITEURL }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} ATOM Feed"/>
|
|
||||||
<link href='{{ SITEURL }}/theme/css/uikit-2.27.4.min.css' rel='stylesheet' type='text/css'>
|
|
||||||
{% if not DISABLE_SEARCH %}
|
|
||||||
<link href='{{ SITEURL }}/theme/css/uikit-2.27.4-search.min.css' rel='stylesheet' type='text/css'>
|
|
||||||
<link rel="stylesheet" href="{{ SITEURL }}/theme/css/tipuesearch.css">
|
|
||||||
{% endif %}
|
|
||||||
<link rel="stylesheet" href="{{ SITEURL }}/theme/css/solarized-highlight.css">
|
|
||||||
<link rel="stylesheet" href="{{ SITEURL }}/theme/css/main.css">
|
|
||||||
|
|
||||||
|
<title>{% block title %}{{ SITENAME }}{% endblock %}</title>
|
||||||
|
<meta name="description" content="{% block description %}{{ DESCRIPTION }}{% endblock %}">
|
||||||
|
{% if FAVICON %}<link rel="shortcut icon" href="{{ SITEURL }}/{{ FAVICON }}" type="{{ FAVICON_TYPE|default('image/x-icon') }}">{% endif %}
|
||||||
|
<link href="{{ SITEURL }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} ATOM Feed"/>
|
||||||
|
|
||||||
|
<meta name="author" content="{{ AUTHOR }}">
|
||||||
|
<meta name="copyright" content="{{ AUTHOR }}">
|
||||||
|
<meta name="twitter:card" content="summary" />
|
||||||
|
<meta name="twitter:site" content="@{{ TWITTER_USERNAME }}" />
|
||||||
|
<meta property="og:site_name" content="{{ SITENAME }}" />
|
||||||
|
|
||||||
|
{% block seo %}
|
||||||
|
<meta property="og:title" content="{{ SITENAME }}" />
|
||||||
|
<meta property="og:type" content="website" />
|
||||||
|
<meta property="og:url" content="{{ SITEURL }}" />
|
||||||
|
<meta name="twitter:url" content="{{ SITEURL }}" />
|
||||||
|
<meta itemprop="name" content="{{ SITENAME }}" />
|
||||||
|
<meta itemprop="url" content="{{ SITEURL }}"/>
|
||||||
|
{% if DESCRIPTION %}
|
||||||
|
<meta property="og:description" content="{{ DESCRIPTION }}" />
|
||||||
|
<meta name="twitter:description" content="{{ DESCRIPTION }}" />
|
||||||
|
<meta itemprop="description" content="{{ DESCRIPTION }}" />
|
||||||
|
{% endif %}
|
||||||
|
{% if META_IMAGE %}
|
||||||
|
<meta property="og:image" content="{{ META_IMAGE }}" />
|
||||||
|
<meta property="og:image:type" content="{{ META_IMAGE_TYPE }}" />
|
||||||
|
<meta name="twitter:image" content="{{ META_IMAGE }}" />
|
||||||
|
<meta itemprop="image" content="{{ META_IMAGE }}" />
|
||||||
|
{% endif %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
<link href='{{ SITEURL }}/theme/css/uikit-2.27.4.min.css' rel='stylesheet' type='text/css'>
|
||||||
|
{% if not DISABLE_SEARCH %}
|
||||||
|
<link href='{{ SITEURL }}/theme/css/uikit-2.27.4-search.min.css' rel='stylesheet' type='text/css'>
|
||||||
|
<link rel="stylesheet" href="{{ SITEURL }}/theme/css/tipuesearch.css">
|
||||||
|
{% endif %}
|
||||||
|
<link rel="stylesheet" href="{{ SITEURL }}/theme/css/solarized-highlight.css">
|
||||||
|
<link rel="stylesheet" href="{{ SITEURL }}/theme/css/main.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!--[if lt IE 7]>
|
<!--[if lt IE 7]>
|
||||||
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
|
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
|
|
||||||
<header class="mg-header uk-navbar uk-navbar-attached">
|
<header class="mg-header uk-navbar uk-navbar-attached">
|
||||||
|
|
||||||
@ -249,6 +253,7 @@
|
|||||||
<script src="{{ SITEURL }}/theme/js/html5shiv-3.7.2.min.js"></script>
|
<script src="{{ SITEURL }}/theme/js/html5shiv-3.7.2.min.js"></script>
|
||||||
<script src="{{ SITEURL }}/theme/js/jquery-1.10.2.min.js"></script>
|
<script src="{{ SITEURL }}/theme/js/jquery-1.10.2.min.js"></script>
|
||||||
<script src="{{ SITEURL }}/theme/js/uikit-2.27.4.min.js"></script>
|
<script src="{{ SITEURL }}/theme/js/uikit-2.27.4.min.js"></script>
|
||||||
|
|
||||||
{% if not DISABLE_SEARCH %}
|
{% if not DISABLE_SEARCH %}
|
||||||
<script src="{{ SITEURL }}/theme/js/uikit-2.27.4-search.min.js"></script>
|
<script src="{{ SITEURL }}/theme/js/uikit-2.27.4-search.min.js"></script>
|
||||||
<script src="{{ SITEURL }}/theme/js/tipuesearch_set.js"></script>
|
<script src="{{ SITEURL }}/theme/js/tipuesearch_set.js"></script>
|
||||||
@ -257,12 +262,14 @@
|
|||||||
{% include 'js/enable-search.js' %}
|
{% include 'js/enable-search.js' %}
|
||||||
</script>
|
</script>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if SHARE %}
|
{% if SHARE %}
|
||||||
<script src="{{ SITEURL }}/theme/js/jquery.sticky-kit.js"></script>
|
<script src="{{ SITEURL }}/theme/js/jquery.sticky-kit.js"></script>
|
||||||
<script>
|
<script>
|
||||||
{% include 'js/social.js' %}
|
{% include 'js/social.js' %}
|
||||||
</script>
|
</script>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if MG_FILTER_TAGS %}
|
{% if MG_FILTER_TAGS %}
|
||||||
<script>
|
<script>
|
||||||
{% include 'js/filter-tags.js' %}
|
{% include 'js/filter-tags.js' %}
|
||||||
|
@ -3,9 +3,12 @@
|
|||||||
{% block content_title %}{% endblock %}
|
{% block content_title %}{% endblock %}
|
||||||
|
|
||||||
{% block header_extra %}
|
{% block header_extra %}
|
||||||
|
{% if MG_LANG_FILTER_TAGS %}
|
||||||
|
<button class="mg-tag-filter" onclick='toggleLangTagFilter.bind(this)({{ MG_LANG_FILTER_TAGS|tojson }})'>lang</button>
|
||||||
|
{% endif %}
|
||||||
{% if MG_FILTER_TAGS %}
|
{% if MG_FILTER_TAGS %}
|
||||||
{% for filter_tag in MG_FILTER_TAGS %}
|
{% for filter_tag in MG_FILTER_TAGS %}
|
||||||
<button class="mg-tag-filter" onclick="toggleTagFilter('{{ filter_tag }}')">{{ filter_tag.replace('lang:', '') }}</button>
|
<button class="mg-tag-filter" onclick="toggleTagFilter.bind(this)('{{ filter_tag }}')">{{ filter_tag.replace('lang:', '') }}</button>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -6,19 +6,49 @@
|
|||||||
* */
|
* */
|
||||||
window.tagFilters = {}
|
window.tagFilters = {}
|
||||||
|
|
||||||
|
function indexOf(array, predicate) {
|
||||||
|
for (var i = 0; i < array.length; i++) if (predicate(array[i])) return array[i];
|
||||||
|
}
|
||||||
|
function startsWith(searchString, position) {
|
||||||
|
position = position || 0;
|
||||||
|
return this.substr(position, searchString.length) === searchString;
|
||||||
|
};
|
||||||
|
|
||||||
function toggleTagFilter(tag) {
|
function toggleTagFilter(tag) {
|
||||||
var filterState = window.tagFilters[tag]
|
var filterState = window.tagFilters[tag]
|
||||||
if (filterState === true) {
|
if (filterState === true) {
|
||||||
|
this.classList.remove('mg-tag-filter-enabled');
|
||||||
filterState = false;
|
filterState = false;
|
||||||
|
this.classList.add('mg-tag-filter-disabled');
|
||||||
} else if (filterState === false) {
|
} else if (filterState === false) {
|
||||||
|
this.classList.remove('mg-tag-filter-disabled');
|
||||||
filterState = undefined;
|
filterState = undefined;
|
||||||
} else {
|
} else {
|
||||||
filterState = true;
|
filterState = true;
|
||||||
|
this.classList.add('mg-tag-filter-enabled');
|
||||||
}
|
}
|
||||||
window.tagFilters[tag] = filterState;
|
window.tagFilters[tag] = filterState;
|
||||||
updateArticlesVisibility();
|
updateArticlesVisibility();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function toggleLangTagFilter(langs) {
|
||||||
|
var lang = this.textContent;
|
||||||
|
if (lang === 'lang') {
|
||||||
|
lang = langs[0];
|
||||||
|
window.tagFilters['lang:'+lang] = true;
|
||||||
|
} else {
|
||||||
|
window.tagFilters['lang:'+lang] = undefined;
|
||||||
|
lang = langs[langs.indexOf(lang) + 1];
|
||||||
|
if (typeof lang === 'undefined') {
|
||||||
|
lang = 'lang'
|
||||||
|
} else {
|
||||||
|
window.tagFilters['lang:'+lang] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.textContent = lang;
|
||||||
|
updateArticlesVisibility();
|
||||||
|
}
|
||||||
|
|
||||||
function updateArticlesVisibility() {
|
function updateArticlesVisibility() {
|
||||||
var anyTrueFilter = Object.keys(window.tagFilters).some(function (tagFilter) {
|
var anyTrueFilter = Object.keys(window.tagFilters).some(function (tagFilter) {
|
||||||
return !!window.tagFilters[tagFilter];
|
return !!window.tagFilters[tagFilter];
|
||||||
@ -38,9 +68,9 @@ function updateArticlesVisibility() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (shouldDisplay) {
|
if (shouldDisplay) {
|
||||||
article.classList.remove('uk-hidden');
|
article.classList.remove('mg-faded');
|
||||||
} else {
|
} else {
|
||||||
article.classList.add('uk-hidden');
|
article.classList.add('mg-faded');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<article class="uk-article" itemtype="http://schema.org/BlogPosting" itemscope="itemscope" itemprop="blogPost"
|
<article class="uk-article mg-fadeable" itemtype="http://schema.org/BlogPosting" itemscope="itemscope" itemprop="blogPost"
|
||||||
data-tags='{{ article.tags|map(attribute='name')|list|tojson }}'>
|
data-tags='{{ article.tags|map(attribute='name')|list|tojson }}'>
|
||||||
<div class="mg-article-short">
|
<div class="mg-article-short">
|
||||||
{% if article.featured_image %}
|
{% if article.featured_image %}
|
||||||
<img class="mg-article-image" src="{{ article.featured_image }}" alt="">
|
<img class="mg-article-image image-process-thumb" src="{{ article.featured_image }}" alt="">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<div class="mg-article-content">
|
<div class="mg-article-content">
|
||||||
<a href="{{ SITEURL }}/{{ article.url }}" class="uk-link-muted"><h1 class="uk-article-title" itemprop="name">{{ article.title|e }}</h1></a>
|
<a href="{{ SITEURL }}/{{ article.url }}" class="uk-link-muted"><h1 class="uk-article-title" itemprop="name">{{ article.title|e }}</h1></a>
|
||||||
|
@ -1,16 +1,14 @@
|
|||||||
{
|
{
|
||||||
"pages": [
|
"pages": [
|
||||||
{% set len = (articles + pages)| length %}
|
{% set comma = joiner(',') %}
|
||||||
{% for item in articles + pages %}
|
{% for item in articles + pages %}
|
||||||
|
{{comma()}}
|
||||||
{
|
{
|
||||||
"title": "{{item.title|striptags|e}}",
|
"title": "{{item.title|striptags|e}}",
|
||||||
"text":"{{item.content|striptags|e}}",
|
"text":"{{item.content|striptags|e}}",
|
||||||
"tags": "{{item.category}}",
|
"tags": "{{item.tags}}",
|
||||||
"loc": "{{ SITEURL }}/{{item.url}}"
|
"loc": "{{ SITEURL }}/{{item.url}}"
|
||||||
}{% if loop.index < len %},
|
}
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user