mirror of
https://github.com/GenZmeY/casper-i18n.git
synced 2025-07-13 17:26:08 +00:00
Compare commits
64 Commits
Author | SHA1 | Date | |
---|---|---|---|
1b86190c4d | |||
37d7d0b4f0 | |||
329dfef410 | |||
baea6bb2fd | |||
dffc9f3cb3 | |||
7f42eaabfe | |||
dcfddacfa1 | |||
031ac1fb40 | |||
9339635abd | |||
0d3bafde1e | |||
7af816a48e | |||
a5dcaf6cd5 | |||
e59dcaa256 | |||
8b35959ff6 | |||
94422fffe2 | |||
47e0b19562 | |||
8ec65a45e4 | |||
8e220b089b | |||
e4861a0d78 | |||
243192f0d9 | |||
c516c10383 | |||
46dc55769e | |||
191f5f74f1 | |||
e559857b12 | |||
8f9a185a80 | |||
bcb586b862 | |||
70ad5bde8b | |||
b064e9fc87 | |||
1e6e807f94 | |||
9cf7aea47c | |||
6db90c9fec | |||
bc7b44f01b | |||
db4979d32d | |||
dd4ca42280 | |||
3bdd10a37a | |||
56c766303f | |||
bf37631aa2 | |||
82253b06f2 | |||
969a20ef6d | |||
dbaaf955af | |||
de94edc8a8 | |||
1292f2e22b | |||
933ebb86ca | |||
cb1196630b | |||
bcdbdab861 | |||
9a1988aa6d | |||
e2911f2d46 | |||
df09b7c375 | |||
09d827249f | |||
ff591092e2 | |||
e264f609de | |||
12ad5f5404 | |||
ba798581ec | |||
8bf2b72e69 | |||
5968231807 | |||
e07d0d8775 | |||
63535cf5ce | |||
75c81be9c3 | |||
144be310a0 | |||
a149b03a2f | |||
72ba094f2f | |||
2cf5c0cb87 | |||
e669b29895 | |||
bcce1e9a08 |
2
LICENSE
2
LICENSE
@ -1,4 +1,4 @@
|
||||
Copyright (c) 2013-2014 Ghost Foundation - Released under The MIT License.
|
||||
Copyright (c) 2013-2015 Ghost Foundation
|
||||
|
||||
Permission is hereby granted, free of charge, to any person
|
||||
obtaining a copy of this software and associated documentation
|
||||
|
@ -6,7 +6,7 @@ To download, visit the [releases](https://github.com/TryGhost/Casper/releases) p
|
||||
|
||||
## Copyright & License
|
||||
|
||||
Copyright (c) 2013-2014 Ghost Foundation - Released under the MIT License.
|
||||
Copyright (c) 2013-2015 Ghost Foundation - Released under the MIT License.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -3,86 +3,52 @@
|
||||
*/
|
||||
|
||||
/* globals jQuery, document */
|
||||
(function ($) {
|
||||
(function ($, undefined) {
|
||||
"use strict";
|
||||
|
||||
$(document).ready(function(){
|
||||
var $document = $(document);
|
||||
|
||||
$(".post-content").fitVids();
|
||||
$document.ready(function () {
|
||||
|
||||
function casperFullImg() {
|
||||
$("img").each( function() {
|
||||
var contentWidth = $(".post-content").outerWidth(); // Width of the content
|
||||
var imageWidth = $(this)[0].naturalWidth; // Original image resolution
|
||||
|
||||
if (imageWidth >= contentWidth) {
|
||||
$(this).addClass('full-img');
|
||||
} else {
|
||||
$(this).removeClass('full-img');
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
casperFullImg();
|
||||
$(window).smartresize(casperFullImg);
|
||||
var $postContent = $(".post-content");
|
||||
$postContent.fitVids();
|
||||
|
||||
$(".scroll-down").arctic_scroll();
|
||||
|
||||
$(".menu-button, .nav-cover, .nav-close").on("click", function(e){
|
||||
e.preventDefault();
|
||||
$("body").toggleClass("nav-opened nav-closed");
|
||||
});
|
||||
|
||||
}(jQuery));
|
||||
|
||||
(function($,sr){
|
||||
|
||||
// debouncing function from John Hann
|
||||
// http://unscriptable.com/index.php/2009/03/20/debouncing-javascript-methods/
|
||||
var debounce = function (func, threshold, execAsap) {
|
||||
var timeout;
|
||||
|
||||
return function debounced () {
|
||||
var obj = this, args = arguments;
|
||||
function delayed () {
|
||||
if (!execAsap)
|
||||
func.apply(obj, args);
|
||||
timeout = null;
|
||||
};
|
||||
|
||||
if (timeout)
|
||||
clearTimeout(timeout);
|
||||
else if (execAsap)
|
||||
func.apply(obj, args);
|
||||
|
||||
timeout = setTimeout(delayed, threshold || 100);
|
||||
};
|
||||
}
|
||||
// smartresize
|
||||
jQuery.fn[sr] = function(fn){ return fn ? this.bind('resize', debounce(fn)) : this.trigger(sr); };
|
||||
|
||||
})(jQuery,'smartresize');
|
||||
});
|
||||
|
||||
// Arctic Scroll by Paul Adam Davis
|
||||
// https://github.com/PaulAdamDavis/Arctic-Scroll
|
||||
(function ($) {
|
||||
$.fn.arctic_scroll = function (options) {
|
||||
|
||||
var defaults = {
|
||||
elem: $(this),
|
||||
speed: 500
|
||||
};
|
||||
var options = $.extend(defaults, options);
|
||||
},
|
||||
|
||||
options.elem.click(function(event){
|
||||
allOptions = $.extend(defaults, options);
|
||||
|
||||
allOptions.elem.click(function (event) {
|
||||
event.preventDefault();
|
||||
var offset = ($(this).attr('data-offset')) ? $(this).attr('data-offset') : false,
|
||||
position = ($(this).attr('data-position')) ? $(this).attr('data-position') : false;
|
||||
var $this = $(this),
|
||||
$htmlBody = $('html, body'),
|
||||
offset = ($this.attr('data-offset')) ? $this.attr('data-offset') : false,
|
||||
position = ($this.attr('data-position')) ? $this.attr('data-position') : false,
|
||||
toMove;
|
||||
|
||||
if (offset) {
|
||||
var toMove = parseInt(offset);
|
||||
$('html,body').stop(true, false).animate({scrollTop: ($(this.hash).offset().top + toMove) }, options.speed);
|
||||
toMove = parseInt(offset);
|
||||
$htmlBody.stop(true, false).animate({scrollTop: ($(this.hash).offset().top + toMove) }, allOptions.speed);
|
||||
} else if (position) {
|
||||
var toMove = parseInt(position);
|
||||
$('html,body').stop(true, false).animate({scrollTop: toMove }, options.speed);
|
||||
toMove = parseInt(position);
|
||||
$htmlBody.stop(true, false).animate({scrollTop: toMove }, allOptions.speed);
|
||||
} else {
|
||||
$('html,body').stop(true, false).animate({scrollTop: ($(this.hash).offset().top) }, options.speed);
|
||||
$htmlBody.stop(true, false).animate({scrollTop: ($(this.hash).offset().top) }, allOptions.speed);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -7,8 +7,10 @@
|
||||
{{#author}}
|
||||
<header class="main-header author-head {{#if cover}}" style="background-image: url({{cover}}){{else}}no-cover{{/if}}">
|
||||
<nav class="main-nav overlay clearfix">
|
||||
<a class="back-button icon-arrow-left" href="{{@blog.url}}">Home</a>
|
||||
<a class="subscribe-button icon-feed" href="{{url}}rss/">{{name}}</a>
|
||||
{{#if @blog.logo}}<a class="blog-logo" href="{{@blog.url}}"><img src="{{@blog.logo}}" alt="Blog Logo" /></a>{{/if}}
|
||||
{{#if @blog.navigation}}
|
||||
<a class="menu-button" href="#"><span class="burger">☰</span><span class="word">Menu</span></a>
|
||||
{{/if}}
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
@ -19,7 +21,9 @@
|
||||
</figure>
|
||||
{{/if}}
|
||||
<h1 class="author-title">{{name}}</h1>
|
||||
{{#if bio}}
|
||||
<h2 class="author-bio">{{bio}}</h2>
|
||||
{{/if}}
|
||||
<div class="author-meta">
|
||||
{{#if location}}<span class="author-location icon-location">{{location}}</span>{{/if}}
|
||||
{{#if website}}<span class="author-link icon-link"><a href="{{website}}">{{website}}</a></span>{{/if}}
|
||||
|
10
default.hbs
10
default.hbs
@ -16,12 +16,16 @@
|
||||
|
||||
{{! Styles'n'Scripts }}
|
||||
<link rel="stylesheet" type="text/css" href="{{asset "css/screen.css"}}" />
|
||||
<link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=PT+Serif:400,700,400italic|Open+Sans:700,400" />
|
||||
<link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=Merriweather:300,700,700italic,300italic|Open+Sans:700,400" />
|
||||
|
||||
{{! Ghost outputs important style and meta data with this tag }}
|
||||
{{ghost_head}}
|
||||
</head>
|
||||
<body class="{{body_class}}">
|
||||
<body class="{{body_class}} nav-closed">
|
||||
|
||||
{{navigation}}
|
||||
|
||||
<div class="site-wrapper">
|
||||
|
||||
{{! Everything else gets inserted here }}
|
||||
{{{body}}}
|
||||
@ -31,6 +35,8 @@
|
||||
<section class="poweredby">Proudly published with <a href="https://ghost.org">Ghost</a></section>
|
||||
</footer>
|
||||
|
||||
</div>
|
||||
|
||||
{{! Ghost outputs important scripts and data with this tag }}
|
||||
{{ghost_foot}}
|
||||
|
||||
|
@ -5,7 +5,9 @@
|
||||
<header class="main-header {{#if @blog.cover}}" style="background-image: url({{@blog.cover}}){{else}}no-cover{{/if}}">
|
||||
<nav class="main-nav overlay clearfix">
|
||||
{{#if @blog.logo}}<a class="blog-logo" href="{{@blog.url}}"><img src="{{@blog.logo}}" alt="Blog Logo" /></a>{{/if}}
|
||||
<a class="subscribe-button icon-feed" href="{{@blog.url}}/rss/">Subscribe</a>
|
||||
{{#if @blog.navigation}}
|
||||
<a class="menu-button" href="#"><span class="burger">☰</span><span class="word">Menu</span></a>
|
||||
{{/if}}
|
||||
</nav>
|
||||
<div class="vertical">
|
||||
<div class="main-header-content inner">
|
||||
|
@ -1,5 +1,4 @@
|
||||
{
|
||||
"name": "Casper",
|
||||
"version": "1.0.1"
|
||||
|
||||
"version": "1.1.7"
|
||||
}
|
||||
|
27
page.hbs
27
page.hbs
@ -3,24 +3,29 @@
|
||||
{{! This is a page template. A page outputs content just like any other post, and has all the same
|
||||
attributes by default, but you can also customise it to behave differently if you prefer. }}
|
||||
|
||||
<nav class="main-nav clearfix">
|
||||
<a class="back-button icon-arrow-left" href="{{@blog.url}}">Home</a>
|
||||
<a class="subscribe-button icon-feed" href="{{@blog.url}}/rss/">Subscribe</a>
|
||||
</nav>
|
||||
|
||||
<main class="content" role="main">
|
||||
|
||||
<article class="{{post_class}}">
|
||||
{{! Everything inside the #post tags pulls data from the post }}
|
||||
{{! Everything inside the #post tags pulls data from the page }}
|
||||
{{#post}}
|
||||
|
||||
<header class="main-header post-head {{#if image}}" style="background-image: url({{image}}){{else}}no-cover{{/if}}">
|
||||
<nav class="main-nav {{#if image}}overlay{{/if}} clearfix">
|
||||
{{#if @blog.logo}}<a class="blog-logo" href="{{@blog.url}}"><img src="{{@blog.logo}}" alt="Blog Logo" /></a>{{/if}}
|
||||
{{#if @blog.navigation}}
|
||||
<a class="menu-button" href="#"><span class="burger">☰</span><span class="word">Menu</span></a>
|
||||
{{/if}}
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="content" role="main">
|
||||
<article class="{{post_class}}">
|
||||
|
||||
<header class="post-header">
|
||||
<h1 class="post-title">{{title}}</h1>
|
||||
</header>
|
||||
|
||||
<section class="post-content">
|
||||
{{content}}
|
||||
</section>
|
||||
|
||||
{{/post}}
|
||||
</article>
|
||||
|
||||
</main>
|
||||
{{/post}}
|
||||
|
@ -10,7 +10,7 @@
|
||||
<h2 class="post-title"><a href="{{url}}">{{{title}}}</a></h2>
|
||||
</header>
|
||||
<section class="post-excerpt">
|
||||
<p>{{excerpt words="30"}} <a class="read-more" href="{{url}}">»</a></p>
|
||||
<p>{{excerpt words="26"}} <a class="read-more" href="{{url}}">»</a></p>
|
||||
</section>
|
||||
<footer class="post-meta">
|
||||
{{#if author.image}}<img class="author-thumb" src="{{author.image}}" alt="Author image" nopin="nopin" />{{/if}}
|
||||
|
13
partials/navigation.hbs
Normal file
13
partials/navigation.hbs
Normal file
@ -0,0 +1,13 @@
|
||||
<div class="nav">
|
||||
<h3 class="nav-title">Menu</h3>
|
||||
<a href="#" class="nav-close">
|
||||
<span class="hidden">Close</span>
|
||||
</a>
|
||||
<ul>
|
||||
{{#foreach navigation}}
|
||||
<li class="nav-{{slug}}{{#if current}} nav-current{{/if}}" role="presentation"><a href="{{url absolute="true"}}">{{label}}</a></li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
<a class="subscribe-button icon-feed" href="{{@blog.url}}/rss/">Subscribe</a>
|
||||
</div>
|
||||
<span class="nav-cover"></span>
|
24
post.hbs
24
post.hbs
@ -3,17 +3,21 @@
|
||||
{{! The comment above "< default" means - insert everything in this file into
|
||||
the {body} of the default.hbs template, which contains our header/footer. }}
|
||||
|
||||
<nav class="main-nav clearfix">
|
||||
<a class="back-button icon-arrow-left" href="{{@blog.url}}">Home</a>
|
||||
<a class="subscribe-button icon-feed" href="{{@blog.url}}/rss/">Subscribe</a>
|
||||
</nav>
|
||||
|
||||
<main class="content" role="main">
|
||||
|
||||
<article class="{{post_class}}">
|
||||
{{! Everything inside the #post tags pulls data from the post }}
|
||||
{{#post}}
|
||||
|
||||
<header class="main-header post-head {{#if image}}" style="background-image: url({{image}}){{else}}no-cover{{/if}}">
|
||||
<nav class="main-nav {{#if image}}overlay{{/if}} clearfix">
|
||||
{{#if @blog.logo}}<a class="blog-logo" href="{{@blog.url}}"><img src="{{@blog.logo}}" alt="Blog Logo" /></a>{{/if}}
|
||||
{{#if @blog.navigation}}
|
||||
<a class="menu-button" href="#"><span class="burger">☰</span><span class="word">Menu</span></a>
|
||||
{{/if}}
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="content" role="main">
|
||||
<article class="{{post_class}}">
|
||||
|
||||
<header class="post-header">
|
||||
<h1 class="post-title">{{title}}</h1>
|
||||
<section class="post-meta">
|
||||
@ -70,7 +74,7 @@
|
||||
|
||||
</footer>
|
||||
|
||||
{{/post}}
|
||||
</article>
|
||||
|
||||
</main>
|
||||
|
||||
{{/post}}
|
||||
|
18
tag.hbs
18
tag.hbs
@ -1,16 +1,24 @@
|
||||
{{!< default}}
|
||||
{{! The tag above means - insert everything in this file into the {body} of the default.hbs template }}
|
||||
|
||||
{{! The big featured header }}
|
||||
<header class="main-header tag-head {{#if @blog.cover}}" style="background-image: url({{@blog.cover}}){{else}}no-cover{{/if}}">
|
||||
{{! If we have a tag cover, display that - else blog cover - else nothing }}
|
||||
<header class="main-header tag-head {{#if tag.image}}" style="background-image: url({{tag.image}}){{else}}{{#if @blog.cover}}" style="background-image: url({{@blog.cover}}){{else}}no-cover{{/if}}{{/if}}">
|
||||
<nav class="main-nav overlay clearfix">
|
||||
<a class="back-button icon-arrow-left" href="{{@blog.url}}">Home</a>
|
||||
<a class="subscribe-button icon-feed" href="{{@blog.url}}/tag/{{tag.slug}}/rss/">{{tag.name}}</a>
|
||||
{{#if @blog.logo}}<a class="blog-logo" href="{{@blog.url}}"><img src="{{@blog.logo}}" alt="Blog Logo" /></a>{{/if}}
|
||||
{{#if @blog.navigation}}
|
||||
<a class="menu-button" href="#"><span class="burger">☰</span><span class="word">Menu</span></a>
|
||||
{{/if}}
|
||||
</nav>
|
||||
<div class="vertical">
|
||||
<div class="main-header-content inner">
|
||||
<h1 class="page-title">{{tag.name}}</h1>
|
||||
<h2 class="page-description">A {{pagination.total}}-post collection</h2>
|
||||
<h2 class="page-description">
|
||||
{{#if tag.description}}
|
||||
{{tag.description}}
|
||||
{{else}}
|
||||
A {{pagination.total}}-post collection
|
||||
{{/if}}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
Reference in New Issue
Block a user