diff options
Diffstat (limited to 'themes')
110 files changed, 1135 insertions, 1554 deletions
diff --git a/themes/default/css/jquery-ui-1.10.4.custom.css b/themes/_global/css/jquery-ui-1.10.4.custom.css index 5690172f..5690172f 100644 --- a/themes/default/css/jquery-ui-1.10.4.custom.css +++ b/themes/_global/css/jquery-ui-1.10.4.custom.css | |||
diff --git a/themes/default/css/jquery-ui-1.10.4.custom.min.css b/themes/_global/css/jquery-ui-1.10.4.custom.min.css index 4dba92a8..4dba92a8 100644 --- a/themes/default/css/jquery-ui-1.10.4.custom.min.css +++ b/themes/_global/css/jquery-ui-1.10.4.custom.min.css | |||
diff --git a/themes/baggy/img/apple-touch-icon-114.png b/themes/_global/img/appicon/apple-touch-icon-114.png index 0e96edd5..0e96edd5 100755 --- a/themes/baggy/img/apple-touch-icon-114.png +++ b/themes/_global/img/appicon/apple-touch-icon-114.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon-120.png b/themes/_global/img/appicon/apple-touch-icon-120.png index dc5aab1c..dc5aab1c 100755 --- a/themes/baggy/img/apple-touch-icon-120.png +++ b/themes/_global/img/appicon/apple-touch-icon-120.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon-144.png b/themes/_global/img/appicon/apple-touch-icon-144.png index 1d005db6..1d005db6 100755 --- a/themes/baggy/img/apple-touch-icon-144.png +++ b/themes/_global/img/appicon/apple-touch-icon-144.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon-152.png b/themes/_global/img/appicon/apple-touch-icon-152.png index f915231f..f915231f 100755 --- a/themes/baggy/img/apple-touch-icon-152.png +++ b/themes/_global/img/appicon/apple-touch-icon-152.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon-57.png b/themes/_global/img/appicon/apple-touch-icon-57.png index 5aa19ed9..5aa19ed9 100755 --- a/themes/baggy/img/apple-touch-icon-57.png +++ b/themes/_global/img/appicon/apple-touch-icon-57.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon-72.png b/themes/_global/img/appicon/apple-touch-icon-72.png index b8b48e1b..b8b48e1b 100755 --- a/themes/baggy/img/apple-touch-icon-72.png +++ b/themes/_global/img/appicon/apple-touch-icon-72.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon-76.png b/themes/_global/img/appicon/apple-touch-icon-76.png index 9f9dba27..9f9dba27 100755 --- a/themes/baggy/img/apple-touch-icon-76.png +++ b/themes/_global/img/appicon/apple-touch-icon-76.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/apple-touch-icon.png b/themes/_global/img/appicon/apple-touch-icon.png index 9cf29e2b..9cf29e2b 100755 --- a/themes/baggy/img/apple-touch-icon.png +++ b/themes/_global/img/appicon/apple-touch-icon.png | |||
Binary files differ | |||
diff --git a/themes/baggy/img/favicon.ico b/themes/_global/img/appicon/favicon.ico index 0346558b..0346558b 100755 --- a/themes/baggy/img/favicon.ico +++ b/themes/_global/img/appicon/favicon.ico | |||
Binary files differ | |||
diff --git a/themes/_global/img/icons/carrot-icon--black.png b/themes/_global/img/icons/carrot-icon--black.png new file mode 100644 index 00000000..6da7925b --- /dev/null +++ b/themes/_global/img/icons/carrot-icon--black.png | |||
Binary files differ | |||
diff --git a/themes/_global/img/icons/carrot-icon--white.png b/themes/_global/img/icons/carrot-icon--white.png new file mode 100644 index 00000000..a70044b6 --- /dev/null +++ b/themes/_global/img/icons/carrot-icon--white.png | |||
Binary files differ | |||
diff --git a/themes/_global/img/icons/diaspora-icon--black.png b/themes/_global/img/icons/diaspora-icon--black.png new file mode 100644 index 00000000..32bca194 --- /dev/null +++ b/themes/_global/img/icons/diaspora-icon--black.png | |||
Binary files differ | |||
diff --git a/themes/_global/img/icons/diaspora-icon--white.png b/themes/_global/img/icons/diaspora-icon--white.png new file mode 100644 index 00000000..fc48d47c --- /dev/null +++ b/themes/_global/img/icons/diaspora-icon--white.png | |||
Binary files differ | |||
diff --git a/themes/default/js/autoClose.js b/themes/_global/js/autoClose.js index e9145b7e..e9145b7e 100644 --- a/themes/default/js/autoClose.js +++ b/themes/_global/js/autoClose.js | |||
diff --git a/themes/default/js/autoCompleteTags.js b/themes/_global/js/autoCompleteTags.js index 90bc982c..90bc982c 100755 --- a/themes/default/js/autoCompleteTags.js +++ b/themes/_global/js/autoCompleteTags.js | |||
diff --git a/themes/default/js/jquery-2.0.3.min.js b/themes/_global/js/jquery-2.0.3.min.js index a4dd0a2f..a4dd0a2f 100644 --- a/themes/default/js/jquery-2.0.3.min.js +++ b/themes/_global/js/jquery-2.0.3.min.js | |||
diff --git a/themes/default/js/jquery-ui-1.10.4.custom.js b/themes/_global/js/jquery-ui-1.10.4.custom.js index 6f599fca..6f599fca 100644 --- a/themes/default/js/jquery-ui-1.10.4.custom.js +++ b/themes/_global/js/jquery-ui-1.10.4.custom.js | |||
diff --git a/themes/default/js/jquery-ui-1.10.4.custom.min.js b/themes/_global/js/jquery-ui-1.10.4.custom.min.js index 31635026..31635026 100644 --- a/themes/default/js/jquery-ui-1.10.4.custom.min.js +++ b/themes/_global/js/jquery-ui-1.10.4.custom.min.js | |||
diff --git a/themes/_global/js/popupForm.js b/themes/_global/js/popupForm.js new file mode 100644 index 00000000..d233e600 --- /dev/null +++ b/themes/_global/js/popupForm.js | |||
@@ -0,0 +1,72 @@ | |||
1 | $(document).ready(function() { | ||
2 | |||
3 | $("#search-form").hide(); | ||
4 | $("#bagit-form").hide(); | ||
5 | |||
6 | //--------------------------------------------------------------------------- | ||
7 | // Toggle the "Search" popup in the sidebar | ||
8 | //--------------------------------------------------------------------------- | ||
9 | function toggleSearch() { | ||
10 | $("#search-form").toggle(); | ||
11 | $("#search").toggleClass("current"); | ||
12 | $("#search").toggleClass("active-current"); | ||
13 | $("#search-arrow").toggleClass("arrow-down"); | ||
14 | if ($("#search").hasClass("current")) { | ||
15 | $("#content").addClass("opacity03"); | ||
16 | } else { | ||
17 | $("#content").removeClass("opacity03"); | ||
18 | } | ||
19 | } | ||
20 | |||
21 | //--------------------------------------------------------------------------- | ||
22 | // Toggle the "Save a Link" popup in the sidebar | ||
23 | //--------------------------------------------------------------------------- | ||
24 | function toggleBagit() { | ||
25 | $("#bagit-form").toggle(); | ||
26 | $("#bagit").toggleClass("current"); | ||
27 | $("#bagit").toggleClass("active-current"); | ||
28 | $("#bagit-arrow").toggleClass("arrow-down"); | ||
29 | if ($("#bagit").hasClass("current")) { | ||
30 | $("#content").addClass("opacity03"); | ||
31 | } else { | ||
32 | $("#content").removeClass("opacity03"); | ||
33 | } | ||
34 | } | ||
35 | |||
36 | //--------------------------------------------------------------------------- | ||
37 | // Close all #links popups in the sidebar | ||
38 | //--------------------------------------------------------------------------- | ||
39 | function closePopups() { | ||
40 | $("#links .messages").hide(); | ||
41 | $("#links > li > a").removeClass("active-current"); | ||
42 | $("#links > li > a").removeClass("current"); | ||
43 | $("[id$=-arrow]").removeClass("arrow-down"); | ||
44 | $("#content").removeClass("opacity03"); | ||
45 | } | ||
46 | |||
47 | $("#search").click(function(){ | ||
48 | closePopups(); | ||
49 | toggleSearch(); | ||
50 | $("#searchfield").focus(); | ||
51 | }); | ||
52 | |||
53 | $("#bagit").click(function(){ | ||
54 | closePopups(); | ||
55 | toggleBagit(); | ||
56 | $("#plainurl").focus(); | ||
57 | }); | ||
58 | |||
59 | $("#search-form-close").click(function(){ | ||
60 | toggleSearch(); | ||
61 | }); | ||
62 | |||
63 | $("#bagit-form-close").click(function(){ | ||
64 | toggleBagit(); | ||
65 | }); | ||
66 | |||
67 | // $("#").click(function(){ | ||
68 | // toggleSearch(); | ||
69 | // }); | ||
70 | |||
71 | |||
72 | }); | ||
diff --git a/themes/courgette/js/restoreScroll.js b/themes/_global/js/restoreScroll.js index 331c9e19..331c9e19 100755..100644 --- a/themes/courgette/js/restoreScroll.js +++ b/themes/_global/js/restoreScroll.js | |||
diff --git a/themes/default/js/saveLink.js b/themes/_global/js/saveLink.js index 6dbce97e..a7acd84c 100755 --- a/themes/default/js/saveLink.js +++ b/themes/_global/js/saveLink.js | |||
@@ -13,7 +13,7 @@ $.fn.ready(function() { | |||
13 | 13 | ||
14 | $bagit.toggleClass("active-current"); | 14 | $bagit.toggleClass("active-current"); |
15 | 15 | ||
16 | //only if bagiti link is not presented on page | 16 | //only if bag-it link is not presented on page |
17 | if ( $bagit.length === 0 ) { | 17 | if ( $bagit.length === 0 ) { |
18 | if ( event !== 'undefined' && event ) { | 18 | if ( event !== 'undefined' && event ) { |
19 | $bagitForm.css( {position:"absolute", top:event.pageY, left:event.pageX-200}); | 19 | $bagitForm.css( {position:"absolute", top:event.pageY, left:event.pageX-200}); |
@@ -23,6 +23,11 @@ $.fn.ready(function() { | |||
23 | } | 23 | } |
24 | } | 24 | } |
25 | 25 | ||
26 | if ($("#search-form").length != 0) { | ||
27 | $("#search").removeClass("current"); | ||
28 | $("#search-arrow").removeClass("arrow-down"); | ||
29 | $("#search-form").hide(); | ||
30 | } | ||
26 | $bagitForm.toggle(); | 31 | $bagitForm.toggle(); |
27 | $('#content').toggleClass("opacity03"); | 32 | $('#content').toggleClass("opacity03"); |
28 | if (url !== 'undefined' && url) { | 33 | if (url !== 'undefined' && url) { |
@@ -31,18 +36,21 @@ $.fn.ready(function() { | |||
31 | $('#plainurl').focus(); | 36 | $('#plainurl').focus(); |
32 | } | 37 | } |
33 | 38 | ||
34 | 39 | //--------------------------------------------------------------------------- | |
35 | $bagit.click(function(){ | 40 | // These two functions are now taken care of in popupForm.js |
36 | $bagit.toggleClass("current"); | 41 | //--------------------------------------------------------------------------- |
37 | $("#bagit-arrow").toggleClass("arrow-down"); | 42 | |
38 | toggleSaveLinkForm(); | 43 | // $bagit.click(function(){ |
39 | }); | 44 | // $bagit.toggleClass("current"); |
40 | 45 | // $("#bagit-arrow").toggleClass("arrow-down"); | |
41 | $("#bagit-form-close").click(function(){ | 46 | // toggleSaveLinkForm(); |
42 | $bagit.removeClass("current"); | 47 | // }); |
43 | $("#bagit-arrow").removeClass("arrow-down"); | 48 | |
44 | toggleSaveLinkForm(); | 49 | // $("#bagit-form-close").click(function(){ |
45 | }); | 50 | // $bagit.removeClass("current"); |
51 | // $("#bagit-arrow").removeClass("arrow-down"); | ||
52 | // toggleSaveLinkForm(); | ||
53 | // }); | ||
46 | 54 | ||
47 | 55 | ||
48 | //send "bag it link" form request via ajax | 56 | //send "bag it link" form request via ajax |
diff --git a/themes/baggy/_head.twig b/themes/baggy/_head.twig index be11673f..a88d4186 100755 --- a/themes/baggy/_head.twig +++ b/themes/baggy/_head.twig | |||
@@ -1,16 +1,39 @@ | |||
1 | <link rel="shortcut icon" type="image/x-icon" href="{{ poche_url }}themes/{{theme}}/img/favicon.ico" /> | 1 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-152.png" sizes="152x152"> |
2 | <link rel="apple-touch-icon-precomposed" sizes="144x144" href="{{ poche_url }}themes/{{theme}}/img/apple-touch-icon-144x144-precomposed.png"> | 2 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-152.png" sizes="152x152"> |
3 | <link rel="apple-touch-icon-precomposed" sizes="72x72" href="{{ poche_url }}themes/{{theme}}/img/apple-touch-icon-72x72-precomposed.png"> | 3 | |
4 | <link rel="apple-touch-icon-precomposed" href="{{ poche_url }}themes/{{theme}}/img/apple-touch-icon-precomposed.png"> | 4 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-144.png" sizes="144x144"> |
5 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-144.png" sizes="144x144"> | ||
6 | |||
7 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-120.png" sizes="120x120"> | ||
8 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-120.png" sizes="120x120"> | ||
9 | |||
10 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-114.png" sizes="114x114"> | ||
11 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-114.png" sizes="114x114"> | ||
12 | |||
13 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-76.png" sizes="76x76"> | ||
14 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-76.png" sizes="76x76"> | ||
15 | |||
16 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-72.png" sizes="72x72"> | ||
17 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-72.png" sizes="72x72"> | ||
18 | |||
19 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-57.png" sizes="57x57"> | ||
20 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-57.png" sizes="57x57"> | ||
21 | |||
22 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon.png"> | ||
23 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon.png"> | ||
24 | |||
25 | <link rel="shortcut icon" type="image/x-icon" href="{{ poche_url }}themes/_global/img/appicon/favicon.ico" sizes="16x16"> | ||
26 | |||
5 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/ratatouille.css" media="all"> | 27 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/ratatouille.css" media="all"> |
6 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/font.css" media="all"> | 28 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/font.css" media="all"> |
7 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/main.css" media="all"> | 29 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/main.css" media="all"> |
8 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/messages.css" media="all"> | 30 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/messages.css" media="all"> |
9 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/print.css" media="print"> | 31 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/print.css" media="print"> |
10 | <script src="{{ poche_url }}themes/default/js/jquery-2.0.3.min.js"></script> | 32 | |
11 | <script src="{{ poche_url }}themes/default/js/autoClose.js"></script> | 33 | <script src="{{ poche_url }}themes/_global/js/jquery-2.0.3.min.js"></script> |
34 | <script src="{{ poche_url }}themes/_global/js/autoClose.js"></script> | ||
12 | <script src="{{ poche_url }}themes/{{theme}}/js/jquery.cookie.js"></script> | 35 | <script src="{{ poche_url }}themes/{{theme}}/js/jquery.cookie.js"></script> |
13 | <script src="{{ poche_url }}themes/{{theme}}/js/init.js"></script> | 36 | <script src="{{ poche_url }}themes/{{theme}}/js/init.js"></script> |
14 | <script src="{{ poche_url }}themes/default/js/saveLink.js"></script> | 37 | <script src="{{ poche_url }}themes/_global/js/saveLink.js"></script> |
15 | <script src="{{ poche_url }}themes/default/js/popupForm.js"></script> | 38 | <script src="{{ poche_url }}themes/_global/js/popupForm.js"></script> |
16 | <script src="{{ poche_url }}themes/{{theme}}/js/closeMessage.js"></script> | 39 | <script src="{{ poche_url }}themes/{{theme}}/js/closeMessage.js"></script> |
diff --git a/themes/baggy/_menu.twig b/themes/baggy/_menu.twig index 59b6a46b..8b80f65d 100644 --- a/themes/baggy/_menu.twig +++ b/themes/baggy/_menu.twig | |||
@@ -11,6 +11,7 @@ | |||
11 | {% include '_search-form.twig' %} | 11 | {% include '_search-form.twig' %} |
12 | </li> | 12 | </li> |
13 | <li><a href="./?view=config" {% if view == 'config' %}class="current"{% endif %}>{% trans "config" %}</a></li> | 13 | <li><a href="./?view=config" {% if view == 'config' %}class="current"{% endif %}>{% trans "config" %}</a></li> |
14 | <li><a href="./?view=about" {% if view == 'about' %}class="current"{% endif %}>{% trans "about" %}</a></li> | ||
14 | <li><a class="icon icon-power" href="./?logout" title="{% trans "logout" %}">{% trans "logout" %}</a></li> | 15 | <li><a class="icon icon-power" href="./?logout" title="{% trans "logout" %}">{% trans "logout" %}</a></li> |
15 | </ul> | 16 | </ul> |
16 | 17 | ||
diff --git a/themes/baggy/_pocheit-form.twig b/themes/baggy/_pocheit-form.twig index 505ec368..bf2ae903 100755 --- a/themes/baggy/_pocheit-form.twig +++ b/themes/baggy/_pocheit-form.twig | |||
@@ -1,10 +1,10 @@ | |||
1 | <div id="bagit-form" class="messages info"> | 1 | <div id="bagit-form" class="messages info popup-form"> |
2 | <form method="get" action="index.php" target="_blank" id="bagit-form-form"> | 2 | <form method="get" action="index.php" target="_blank" id="bagit-form-form"> |
3 | <h2><a href="javascript: void(null);" id="bagit-form-close">X</a> | 3 | <h2>{% trans "Save a link" %}</h2> |
4 | {% trans "Save a link" %}</h2> | 4 | <a href="javascript: void(null);" id="bagit-form-close" class="close-button--popup close-button">×</a> |
5 | <input type="hidden" name="autoclose" value="1" /> | 5 | <input type="hidden" name="autoclose" value="1" /> |
6 | <input required placeholder="example.com/article" class="addurl" id="plainurl" name="plainurl" type="url" /> | 6 | <input required placeholder="example.com/article" class="addurl" id="plainurl" name="plainurl" type="url" /> |
7 | <span id="add-link-result"></span> | ||
7 | <input type="submit" value="{% trans "save link!" %}" /> | 8 | <input type="submit" value="{% trans "save link!" %}" /> |
8 | <div id="add-link-result"></div> | ||
9 | </form> | 9 | </form> |
10 | </div> | 10 | </div> |
diff --git a/themes/baggy/_search-form.twig b/themes/baggy/_search-form.twig index b8ac3bfa..73f7951f 100644 --- a/themes/baggy/_search-form.twig +++ b/themes/baggy/_search-form.twig | |||
@@ -1,7 +1,9 @@ | |||
1 | <div id="search-form" class="messages info"> | 1 | <div id="search-form" class="messages info popup-form"> |
2 | <form method="get" action="index.php"> | 2 | <form method="get" action="index.php"> |
3 | <h2>{%trans "Search" %}</h2> | ||
4 | <a href="javascript: void(null);" id="search-form-close" class="close-button--popup close-button">×</a> | ||
3 | <input type="hidden" name="view" value="search"></input> | 5 | <input type="hidden" name="view" value="search"></input> |
4 | <label><a href="javascript: void(null);" id="search-form-close">X</a>{% trans "Search" %}</label> : <input type="text" name="search" /> | 6 | <input required placeholder="{% trans "Enter your search here" %}" type="text" name="search" id="searchfield"><br> |
5 | <input id="submit-search" type="submit" value="{% trans "Search" %} !"></input> | 7 | <input id="submit-search" type="submit" value="{% trans "Search" %}"></input> |
6 | </form> | 8 | </form> |
7 | </div> \ No newline at end of file | 9 | </div> |
diff --git a/themes/baggy/about.twig b/themes/baggy/about.twig new file mode 100755 index 00000000..7e19a900 --- /dev/null +++ b/themes/baggy/about.twig | |||
@@ -0,0 +1,74 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | |||
3 | {% block title %}{% trans "About" %}{% endblock %} | ||
4 | {% block menu %} | ||
5 | {% include '_menu.twig' %} | ||
6 | {% endblock %} | ||
7 | {% block content %} | ||
8 | <h2>{% trans "About wallabag" %}</h2> | ||
9 | |||
10 | <dl> | ||
11 | <dt>{% trans "Project website" %}</dt> | ||
12 | <dd><a href="http://www.wallabag.org">http://www.wallabag.org</a></dd> | ||
13 | |||
14 | <dt>{% trans "Main developer" %}</dt> | ||
15 | <dd><a href="mailto:nicolas@loeuillet.org">Nicolas Lœuillet</a> — <a href="http://cdetc.fr">{% trans "website" %}</a></dd> | ||
16 | |||
17 | <dt>{% trans "Contributors:" %}</dt> | ||
18 | <dd><a href="https://github.com/wallabag/wallabag/graphs/contributors">{% trans "on Github" %}</a></dd> | ||
19 | |||
20 | <dt>{% trans "Bug reports" %}</dt> | ||
21 | <dd><a href="http://support.wallabag.org">{% trans "On our support website" %}</a> {% trans "or" %} <a href="https://github.com/wallabag/wallabag/issues">{% trans "on Github" %}</a></dd> | ||
22 | |||
23 | <dt>{% trans "License" %}</dt> | ||
24 | <dd><a href="http://en.wikipedia.org/wiki/MIT_License">MIT</a></dd> | ||
25 | |||
26 | <dt>{% trans "Version" %}</dt> | ||
27 | <dd>{{ constant('POCHE') }}</dd> | ||
28 | </dl> | ||
29 | |||
30 | <p>{% trans "wallabag is a read-it-later application: you can save a web page by keeping only content. Elements like ads or menus are deleted." %}</p> | ||
31 | |||
32 | <h2>{% trans "Helping wallabag" %}</h2> | ||
33 | |||
34 | <p>{% trans "wallabag is free and opensource. You can help us:" %}</p> | ||
35 | |||
36 | <dl> | ||
37 | <dt><a href="http://www.wallabag.org">{% trans "via Paypal" %}</a></dt> | ||
38 | |||
39 | <dt><a href="http://www.wallabag.org">{% trans "via Flattr" %}</a></dt> | ||
40 | </dl> | ||
41 | |||
42 | <h2>{% trans "Credits" %}</h2> | ||
43 | <dl> | ||
44 | <dt>PHP Readability</dt> | ||
45 | <dd><a href="https://bitbucket.org/fivefilters/php-readability">https://bitbucket.org/fivefilters/php-readability</a></dd> | ||
46 | |||
47 | <dt>Full Text RSS</dt> | ||
48 | <dd><a href="http://code.fivefilters.org/full-text-rss/src">http://code.fivefilters.org/full-text-rss/src</a></dd> | ||
49 | |||
50 | <dt>logo by Maylis Agniel</dt> | ||
51 | <dd><a href="https://github.com/wallabag/logo">https://github.com/wallabag/logo</a></dd> | ||
52 | |||
53 | <dt>icons</dt> | ||
54 | <dd><a href="http://icomoon.io">http://icomoon.io</a></dd> | ||
55 | |||
56 | <dt>PHP Simple HTML DOM Parser</dt> | ||
57 | <dd><a href="http://simplehtmldom.sourceforge.net/">http://simplehtmldom.sourceforge.net/</a></dd> | ||
58 | |||
59 | <dt>Session</dt> | ||
60 | <dd><a href="https://github.com/tontof/kriss_feed/blob/master/src/class/Session.php">https://github.com/tontof/kriss_feed/blob/master/src/class/Session.php</a></dd> | ||
61 | |||
62 | <dt>Twig</dt> | ||
63 | <dd><a href="http://twig.sensiolabs.org">http://twig.sensiolabs.org</a></dd> | ||
64 | |||
65 | <dt>Flash messages</dt> | ||
66 | <dd><a href="https://github.com/plasticbrain/PHP-Flash-Messages">https://github.com/plasticbrain/PHP-Flash-Messages</a></dd> | ||
67 | |||
68 | <dt>Pagination</dt> | ||
69 | <dd><a href="https://github.com/daveismyname/pagination">https://github.com/daveismyname/pagination</a></dd> | ||
70 | |||
71 | <dt>PHPePub</dt> | ||
72 | <dd><a href="https://github.com/Grandt/PHPePub/">https://github.com/Grandt/PHPePub/</a></dd> | ||
73 | </dl> | ||
74 | {% endblock %} | ||
diff --git a/themes/baggy/config.twig b/themes/baggy/config.twig index dda05c29..a5a61559 100755 --- a/themes/baggy/config.twig +++ b/themes/baggy/config.twig | |||
@@ -6,30 +6,29 @@ | |||
6 | {% endblock %} | 6 | {% endblock %} |
7 | {% block content %} | 7 | {% block content %} |
8 | <h2>{% trans "Saving articles" %}</h2> | 8 | <h2>{% trans "Saving articles" %}</h2> |
9 | <p>{% trans "There are several ways to save an article:" %} (<a href="http://doc.wallabag.org/" title="{% trans "read the documentation" %}">?</a>)</p> | 9 | <p>{% trans "There are several ways to save an article:" %} {% trans "(<a href=\"http://doc.wallabag.org/en/User_documentation/Save_your_first_article\" target=\"_blank\" title=\"Documentation\">?</a>)" %}</p> |
10 | <p> | ||
11 | <form method="get" action="index.php"> | ||
12 | <label class="addurl" for="config_plainurl">{% trans "By filling this field" %}:</label><br> | ||
13 | <input required placeholder="example.com/article" class="addurl" id="config_plainurl" name="plainurl" type="url" /> | ||
14 | <input type="submit" value="{% trans "bag it!" %}" /> | ||
15 | </form> | ||
16 | </p> | ||
17 | <h3>Browser Plugins</h3> | ||
10 | <ul> | 18 | <ul> |
11 | <li>Firefox: <a href="https://addons.mozilla.org/firefox/addon/wallabag/" title="download the firefox extension">{% trans "download the extension" %}</a></li> | 19 | <li><a href="https://addons.mozilla.org/firefox/addon/wallabag/" target="_blank">{% trans "Firefox Add-On" %}</a></li> |
12 | <li>Chrome: <a href="http://doc.wallabag.org/doku.php?id=users:chrome_extension" title="download the chrome extension">{% trans "download the extension" %}</a></li> | 20 | <li><a href="https://chrome.google.com/webstore/detail/wallabag/bepdcjnnkglfjehplaogpoonpffbdcdj" target="_blank">{% trans "Chrome Extension" %}</a></li> |
13 | <li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" title="download the application">{% trans "via F-Droid" %}</a> {% trans " or " %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" title="download the application">{% trans "via Google Play" %}</a></li> | ||
14 | <li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" title="download the iOS application">{% trans "download the application" %}</a></li> | ||
15 | <li>Windows Phone: <a href="http://www.windowsphone.com/en-us/store/app/wallabag/ff890514-348c-4d0b-9b43-153fff3f7450" title="download the window phone application">{% trans "download the application" %}</a></li> | ||
16 | <li> | ||
17 | <form method="get" action="index.php"> | ||
18 | <label class="addurl" for="config_plainurl">{% trans "By filling this field" %}:</label> | ||
19 | <input required placeholder="example.com/article" class="addurl" id="config_plainurl" name="plainurl" type="url" /> | ||
20 | <input type="submit" value="{% trans "bag it!" %}" /> | ||
21 | </form> | ||
22 | </li> | ||
23 | <li>{% trans "Bookmarklet: drag & drop this link to your bookmarks bar" %} <a id="bookmarklet" ondragend="this.click();" title="i am a bookmarklet, use me !" href="javascript:if(top['bookmarklet-url@wallabag.org']){top['bookmarklet-url@wallabag.org'];}else{(function(){var%20url%20=%20location.href%20||%20url;window.open('{{ poche_url }}?action=add&url='%20+%20btoa(url),'_self');})();void(0);}">{% trans "bag it!" %}</a></li> | ||
24 | </ul> | 21 | </ul> |
25 | 22 | <h3>Mobile Apps</h3> | |
26 | <h2>{% trans "Upgrading wallabag" %}</h2> | ||
27 | <ul> | 23 | <ul> |
28 | <li>{% trans "Installed version" %} : <strong>{{ constant('POCHE') }}</strong></li> | 24 | <li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">{% trans "via F-Droid" %}</a> {% trans " or " %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">{% trans "via Google Play" %}</a></li> |
29 | <li>{% trans "Latest stable version" %} : {{ prod }}. {% if compare_prod == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent stable version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_prod }})</li> | 25 | <li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" target="_blank">{% trans "download the application" %}</a></li> |
30 | {% if constant('DEBUG_POCHE') == 1 %}<li>{% trans "Latest dev version" %} : {{ dev }}. {% if compare_dev == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent development version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_dev }}){% endif %}</li> | 26 | <li>Windows Phone: <a href="http://www.windowsphone.com/en-us/store/app/wallabag/ff890514-348c-4d0b-9b43-153fff3f7450" target="_blank">{% trans "download the application" %}</a></li> |
31 | </ul> | 27 | </ul> |
32 | <p>{% trans "You can clear cache to check the latest release." %}</p> | 28 | <h3>{% trans "Bookmarklet" %}</h3> |
29 | <p> | ||
30 | {% trans "Drag & drop this link to your bookmarks bar:" %} <a id="bookmarklet" ondragend="this.click();" href="javascript:if(top['bookmarklet-url@wallabag.org']){top['bookmarklet-url@wallabag.org'];}else{(function(){var%20url%20=%20location.href%20||%20url;window.open('{{ poche_url }}?action=add&url='%20+%20btoa(url),'_self');})();void(0);}">{% trans "bag it!" %}</a> | ||
31 | </p> | ||
33 | 32 | ||
34 | <h2>{% trans "Feeds" %}</h2> | 33 | <h2>{% trans "Feeds" %}</h2> |
35 | {% if token == '' %} | 34 | {% if token == '' %} |
@@ -40,9 +39,11 @@ | |||
40 | <li><a href="?feed&type=fav&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Favorites feed" %}</a></li> | 39 | <li><a href="?feed&type=fav&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Favorites feed" %}</a></li> |
41 | <li><a href="?feed&type=archive&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Archive feed" %}</a></li> | 40 | <li><a href="?feed&type=archive&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Archive feed" %}</a></li> |
42 | </ul> | 41 | </ul> |
43 | <p>{% trans "Your token:" %} <strong>{{token}}</strong></p> | 42 | <p class="more-info"> |
44 | <p>{% trans "Your user id:" %} <strong>{{user_id}}</strong></p> | 43 | {% trans "Your token:" %} <strong>{{token}}</strong><br> |
45 | <p>{% trans "You can regenerate your token: <a href='?feed&action=generate'>generate!</a>." %}</p> | 44 | {% trans "Your user id:" %} <strong>{{user_id}}</strong><br> |
45 | {% trans "You can regenerate your token: <a href='?feed&action=generate'>generate!</a>." %} | ||
46 | </p> | ||
46 | {% endif %} | 47 | {% endif %} |
47 | 48 | ||
48 | <h2>{% trans "Change your theme" %}</h2> | 49 | <h2>{% trans "Change your theme" %}</h2> |
@@ -83,35 +84,14 @@ | |||
83 | <input type="hidden" name="token" value="{{ token }}"> | 84 | <input type="hidden" name="token" value="{{ token }}"> |
84 | </form> | 85 | </form> |
85 | 86 | ||
86 | {% if http_auth == 0 %} | 87 | <h2><a name="import"></a>{% trans "Import" %}</h2> |
87 | <h2>{% trans "Change your password" %}</h2> | ||
88 | <form method="post" action="?config" name="loginform"> | ||
89 | <fieldset class="w500p"> | ||
90 | <div class="row"> | ||
91 | <label class="col w150p" for="password">{% trans "New password:" %}</label> | ||
92 | <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2"> | ||
93 | </div> | ||
94 | <div class="row"> | ||
95 | <label class="col w150p" for="password_repeat">{% trans "Repeat your new password:" %}</label> | ||
96 | <input class="col" type="password" id="password_repeat" name="password_repeat" placeholder="{% trans "Password" %}" tabindex="3"> | ||
97 | </div> | ||
98 | <div class="row mts txtcenter"> | ||
99 | <button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button> | ||
100 | </div> | ||
101 | </fieldset> | ||
102 | <input type="hidden" name="returnurl" value="{{ referer }}"> | ||
103 | <input type="hidden" name="token" value="{{ token }}"> | ||
104 | </form> | ||
105 | {% endif %} | ||
106 | |||
107 | <h2>{% trans "Import" %}</h2> | ||
108 | <p>{% trans "You can import your Pocket, Readability, Instapaper, Wallabag or any data in appropriate json or html format." %}</p> | 88 | <p>{% trans "You can import your Pocket, Readability, Instapaper, Wallabag or any data in appropriate json or html format." %}</p> |
109 | <p>{% trans "Please select export file on your computer and press \"Import\" button below.<br>Wallabag will parse your file, insert all URLs and start fetching of articles if required.<br>Fetching process is controlled by two constants in your config file: IMPORT_LIMIT (how many articles are fetched at once) and IMPORT_DELAY (delay between fetch of next batch of articles)." %}</p> | 89 | <p>{% trans "Please select export file on your computer and press \"Import\" button below. Wallabag will parse your file, insert all URLs and start fetching of articles if required." %}</p> |
110 | <form method="post" action="?import" name="uploadfile" enctype="multipart/form-data"> | 90 | <form method="post" action="?import" name="uploadfile" enctype="multipart/form-data"> |
111 | <fieldset class="w500p"> | 91 | <fieldset class="w500p"> |
112 | <div class="row"> | 92 | <div class="row"> |
113 | <label class="col w150p" for="file">{% trans "File:" %}</label> | 93 | <label class="col w150p" for="file">{% trans "File:" %}</label> |
114 | <input class="col" type="file" id="file" name="file" tabindex="4"> | 94 | <input class="col" type="file" id="file" name="file" tabindex="4" required="required"> |
115 | </div> | 95 | </div> |
116 | <div class="row mts txtcenter"> | 96 | <div class="row mts txtcenter"> |
117 | <button class="bouton" type="submit" tabindex="4">{% trans "Import" %}</button> | 97 | <button class="bouton" type="submit" tabindex="4">{% trans "Import" %}</button> |
@@ -119,12 +99,12 @@ | |||
119 | </fieldset> | 99 | </fieldset> |
120 | </form> | 100 | </form> |
121 | <p><a href="?import">{% trans "You can click here to fetch content for articles with no content." %}</a></p> | 101 | <p><a href="?import">{% trans "You can click here to fetch content for articles with no content." %}</a></p> |
122 | 102 | <p class="more-info">{% trans "Fetching process is controlled by two constants in your config file: IMPORT_LIMIT (how many articles are fetched at once) and IMPORT_DELAY (delay between fetch of next batch of articles)." %}</p> | |
103 | |||
123 | <h2>{% trans "Export your wallabag data" %}</h2> | 104 | <h2>{% trans "Export your wallabag data" %}</h2> |
124 | {% if constant('STORAGE') == 'sqlite' %} | 105 | <p><a href="?export" target="_blank">{% trans "Export JSON" %}</a><br> |
125 | <p><a href="?download" target="_blank">{% trans "Click here" %}</a> {% trans "to download your database." %}</p>{% endif %} | 106 | <span class="more-info">Data will be exported in a single JSON file.</span></p> |
126 | <p><a href="?export" target="_blank">{% trans "Click here" %}</a> {% trans "to export your wallabag data." %}</p> | 107 | |
127 | |||
128 | <h2>{% trans "Fancy an E-Book ?" %}</h2> | 108 | <h2>{% trans "Fancy an E-Book ?" %}</h2> |
129 | <p>{% trans "Click to get all your articles in one ebook :" %} | 109 | <p>{% trans "Click to get all your articles in one ebook :" %} |
130 | <ul> | 110 | <ul> |
@@ -133,25 +113,50 @@ | |||
133 | <li><a href="./?pdf&method=all" title="{% trans 'Generate PDF file' %}">PDF</a></li> | 113 | <li><a href="./?pdf&method=all" title="{% trans 'Generate PDF file' %}">PDF</a></li> |
134 | </ul> | 114 | </ul> |
135 | 115 | ||
136 | <br>{% trans "This can <b>take a while</b> and can <b>even fail</b> if you have too many articles, depending on your server configuration." %}</p> | 116 | <span class="more-info">{% trans "This can <b>take a while</b> and can <b>even fail</b> if you have too many articles, depending on your server configuration." %}</span></p> |
137 | 117 | ||
138 | <h2>{% trans "Cache" %}</h2> | 118 | <h2><a name="cache"></a>{% trans "Cache" %}</h2> |
139 | <p><a href="?empty-cache">{% trans "Click here" %}</a> {% trans "to delete cache." %}</p> | 119 | <p><a href="?empty-cache">{% trans "Delete Cache" %}</a><br> |
120 | <span class="more-info">Deleting the cache may help with display or other problems.</span></p> | ||
121 | |||
122 | {% if http_auth == 0 %} | ||
123 | <h2>{% trans "Change your password" %}</h2> | ||
124 | <form method="post" action="?config" name="loginform"> | ||
125 | <fieldset class="w500p"> | ||
126 | <div class="row"> | ||
127 | <label class="col w150p" for="password">{% trans "New password:" %}</label> | ||
128 | <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2"> | ||
129 | </div> | ||
130 | <div class="row"> | ||
131 | <label class="col w150p" for="password_repeat">{% trans "Repeat your new password:" %}</label> | ||
132 | <input class="col" type="password" id="password_repeat" name="password_repeat" placeholder="{% trans "Password" %}" tabindex="3"> | ||
133 | </div> | ||
134 | <div class="row mts txtcenter"> | ||
135 | <button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button> | ||
136 | </div> | ||
137 | </fieldset> | ||
138 | <input type="hidden" name="returnurl" value="{{ referer }}"> | ||
139 | <input type="hidden" name="token" value="{{ token }}"> | ||
140 | </form> | ||
141 | {% endif %} | ||
140 | 142 | ||
141 | <h2>{% trans 'Add user' %}</h2> | 143 | <h2>{% trans 'Add user' %}</h2> |
142 | <p>{% trans 'Add a new user :' %}</p> | ||
143 | <form method="post" action="?newuser"> | 144 | <form method="post" action="?newuser"> |
144 | <fieldset class="w500p"> | 145 | <fieldset class="w500p"> |
145 | <div class="row"> | 146 | <div class="row"> |
146 | <label class="col w150p" for="newusername">{% trans 'Login for new user' %}</label> | 147 | <label class="col w150p" for="newusername">{% trans 'Login for new user' %}</label> |
147 | <input class="col" type="text" id="newusername" name="newusername" placeholder="{% trans 'Login' %}"> | 148 | <input class="col" type="text" id="newusername" name="newusername" placeholder="{% trans 'Login' %}" required> |
148 | </div> | 149 | </div> |
149 | <div class="row"> | 150 | <div class="row"> |
150 | <label class="col w150p" for="password4newuser">{% trans "Password for new user" %}</label> | 151 | <label class="col w150p" for="password4newuser">{% trans "Password for new user" %}</label> |
151 | <input class="col" type="password" id="password4newuser" name="password4newuser" placeholder="{% trans "Password" %}"> | 152 | <input class="col" type="password" id="password4newuser" name="password4newuser" placeholder="{% trans 'Password' %}" required> |
153 | </div> | ||
154 | <div class="row"> | ||
155 | <label class="col w150p" for="newuseremail">{% trans 'Email for new user (not required)' %}</label> | ||
156 | <input class="col" type="email" id="newuseremail" name="newuseremail" placeholder="{% trans 'Email' %}"> | ||
152 | </div> | 157 | </div> |
153 | <div class="row mts txtcenter"> | 158 | <div class="row mts txtcenter"> |
154 | <button type="submit">{% trans "Send" %}</button> | 159 | <button type="submit">{% trans "Add user" %}</button> |
155 | </div> | 160 | </div> |
156 | </fieldset> | 161 | </fieldset> |
157 | </form> | 162 | </form> |
@@ -165,9 +170,18 @@ | |||
165 | <input class="col" type="password" id="password4deletinguser" name="password4deletinguser" placeholder="{% trans "Password" %}"> | 170 | <input class="col" type="password" id="password4deletinguser" name="password4deletinguser" placeholder="{% trans "Password" %}"> |
166 | </div> | 171 | </div> |
167 | <div class="row mts txtcenter"> | 172 | <div class="row mts txtcenter"> |
168 | <button type="submit">{% trans "Send" %}</button> | 173 | <button type="submit">{% trans "Delete account" %}</button> |
169 | </div> | 174 | </div> |
170 | </form> | 175 | </form> |
171 | {% else %}<p>{% trans "You are the only user, you cannot delete your own account." %}<br /> | 176 | {% else %}<p>{% trans "You are the only user, you cannot delete your own account." %}</p> |
172 | {% trans "To completely remove wallabag, delete the wallabag folder on your web server." %}</p>{% endif %} | 177 | <p>{% trans "To completely remove wallabag, delete the wallabag folder on your web server (and eventual databases)." %}</p>{% endif %} |
178 | |||
179 | <h2>{% trans "Upgrading wallabag" %}</h2> | ||
180 | <ul> | ||
181 | <li>{% trans "Installed version" %}: <strong>{{ constant('POCHE') }}</strong></li> | ||
182 | <li>{% trans "Latest stable version" %}: {{ prod }}. {% if compare_prod == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent stable version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_prod }})</li> | ||
183 | {% if constant('DEBUG_POCHE') == 1 %}<li>{% trans "Latest dev version" %}: {{ dev }}. {% if compare_dev == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent development version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_dev }}){% endif %}</li> | ||
184 | </ul> | ||
185 | <p class="more-info">{% trans "You can clear cache to check the latest release." %}</p> | ||
186 | |||
173 | {% endblock %} | 187 | {% endblock %} |
diff --git a/themes/baggy/css/main.css b/themes/baggy/css/main.css index 6d320cd2..1df82910 100755 --- a/themes/baggy/css/main.css +++ b/themes/baggy/css/main.css | |||
@@ -15,11 +15,11 @@ html { | |||
15 | } | 15 | } |
16 | 16 | ||
17 | body { | 17 | body { |
18 | background: #EEE; | 18 | background-color: #EEE; |
19 | } | 19 | } |
20 | 20 | ||
21 | .login { | 21 | .login { |
22 | background: #333; | 22 | background-color: #333; |
23 | } | 23 | } |
24 | 24 | ||
25 | .login #main { | 25 | .login #main { |
@@ -28,7 +28,7 @@ body { | |||
28 | } | 28 | } |
29 | 29 | ||
30 | .login form { | 30 | .login form { |
31 | background: #FFF; | 31 | background-color: #FFF; |
32 | padding: 1.5em; | 32 | padding: 1.5em; |
33 | box-shadow: 0 1px 8px rgba(0,0,0,0.9); | 33 | box-shadow: 0 1px 8px rgba(0,0,0,0.9); |
34 | width: 20em; | 34 | width: 20em; |
@@ -51,7 +51,7 @@ body { | |||
51 | 51 | ||
52 | ::selection { | 52 | ::selection { |
53 | color: #FFF; | 53 | color: #FFF; |
54 | background: #000; | 54 | background-color: #000; |
55 | } | 55 | } |
56 | 56 | ||
57 | .desktopHide { | 57 | .desktopHide { |
@@ -70,7 +70,7 @@ h2, h3, h4 { | |||
70 | text-transform: uppercase; | 70 | text-transform: uppercase; |
71 | } | 71 | } |
72 | 72 | ||
73 | p, li { | 73 | p, li, label { |
74 | color: #666; | 74 | color: #666; |
75 | } | 75 | } |
76 | 76 | ||
@@ -89,7 +89,7 @@ form fieldset { | |||
89 | margin: 0; | 89 | margin: 0; |
90 | } | 90 | } |
91 | 91 | ||
92 | form input[type="text"], select, form input[type="password"], form input[type="url"] { | 92 | form input[type="text"], select, form input[type="password"], form input[type="url"], form input[type="email"] { |
93 | border: 1px solid #999; | 93 | border: 1px solid #999; |
94 | padding: 0.5em 1em; | 94 | padding: 0.5em 1em; |
95 | min-width: 12em; | 95 | min-width: 12em; |
@@ -104,10 +104,6 @@ form input[type="text"], select, form input[type="password"], form input[type="u | |||
104 | } | 104 | } |
105 | } | 105 | } |
106 | 106 | ||
107 | fieldset label { | ||
108 | min-width: 12.5em; | ||
109 | } | ||
110 | |||
111 | .inline .row { | 107 | .inline .row { |
112 | display: inline-block; | 108 | display: inline-block; |
113 | margin-right: 0.5em; | 109 | margin-right: 0.5em; |
@@ -119,17 +115,21 @@ fieldset label { | |||
119 | 115 | ||
120 | fieldset label { | 116 | fieldset label { |
121 | display: inline-block; | 117 | display: inline-block; |
122 | margin-right: 0.5em; | 118 | min-width: 12.5em; |
123 | color: #666; | 119 | color: #666; |
124 | } | 120 | } |
125 | 121 | ||
122 | label { | ||
123 | margin-right: 0.5em; | ||
124 | } | ||
125 | |||
126 | form .row { | 126 | form .row { |
127 | margin-bottom: 0.5em; | 127 | margin-bottom: 0.5em; |
128 | } | 128 | } |
129 | 129 | ||
130 | form button, input[type="submit"] { | 130 | form button, input[type="submit"] { |
131 | cursor:pointer; | 131 | cursor:pointer; |
132 | background: #000; | 132 | background-color: #000; |
133 | color: #FFF; | 133 | color: #FFF; |
134 | border:0; | 134 | border:0; |
135 | padding: 0.5em 1em; | 135 | padding: 0.5em 1em; |
@@ -138,7 +138,7 @@ form button, input[type="submit"] { | |||
138 | } | 138 | } |
139 | 139 | ||
140 | form button:hover, form button:focus, input[type="submit"]:hover, input[type="submit"]:focus { | 140 | form button:hover, form button:focus, input[type="submit"]:hover, input[type="submit"]:focus { |
141 | background: #FFF; | 141 | background-color: #FFF; |
142 | color: #000; | 142 | color: #000; |
143 | -webkit-transition: all 0.5s ease; | 143 | -webkit-transition: all 0.5s ease; |
144 | -moz-transition: all 0.5s ease; | 144 | -moz-transition: all 0.5s ease; |
@@ -155,7 +155,7 @@ h2:after { | |||
155 | content: ""; | 155 | content: ""; |
156 | height: 4px; | 156 | height: 4px; |
157 | width: 70px; | 157 | width: 70px; |
158 | background: #000; | 158 | background-color: #000; |
159 | display: block; | 159 | display: block; |
160 | } | 160 | } |
161 | 161 | ||
@@ -176,11 +176,11 @@ h2:after { | |||
176 | width: 10em; | 176 | width: 10em; |
177 | left: 0; | 177 | left: 0; |
178 | text-align: right; | 178 | text-align: right; |
179 | background: #333; | 179 | background-color: #333; |
180 | padding-top: 9.5em; | 180 | padding-top: 9.5em; |
181 | height: 100%; | 181 | height: 100%; |
182 | box-shadow:inset -4px 0 20px rgba(0,0,0,0.6); | 182 | box-shadow:inset -4px 0 20px rgba(0,0,0,0.6); |
183 | z-index: 10; | 183 | z-index: 15; |
184 | } | 184 | } |
185 | 185 | ||
186 | #main { | 186 | #main { |
@@ -191,7 +191,7 @@ h2:after { | |||
191 | padding-bottom: 1em; | 191 | padding-bottom: 1em; |
192 | } | 192 | } |
193 | 193 | ||
194 | #links a { | 194 | #links > li > a { |
195 | display: block; | 195 | display: block; |
196 | padding: 0.5em 2em 0.5em 1em; | 196 | padding: 0.5em 2em 0.5em 1em; |
197 | color: #FFF; | 197 | color: #FFF; |
@@ -207,8 +207,8 @@ h2:after { | |||
207 | transition: all 0.5s ease; | 207 | transition: all 0.5s ease; |
208 | } | 208 | } |
209 | 209 | ||
210 | #links a:hover, #links a:focus { | 210 | #links > li > a:hover, #links > li > a:focus { |
211 | background: #999; | 211 | background-color: #999; |
212 | color: #000; | 212 | color: #000; |
213 | } | 213 | } |
214 | 214 | ||
@@ -281,12 +281,12 @@ h2:after { | |||
281 | #listmode a:hover { | 281 | #listmode a:hover { |
282 | opacity: 1; | 282 | opacity: 1; |
283 | } | 283 | } |
284 | .tablemode { | 284 | #listmode.tablemode { |
285 | background-image: url("../img/baggy/table.png"); | 285 | background-image: url("../img/baggy/table.png"); |
286 | background-repeat: no-repeat; | 286 | background-repeat: no-repeat; |
287 | background-position: bottom; | 287 | background-position: bottom; |
288 | } | 288 | } |
289 | .listmode { | 289 | #listmode.listmode { |
290 | background-image: url("../img/baggy/list.png"); | 290 | background-image: url("../img/baggy/list.png"); |
291 | background-repeat: no-repeat; | 291 | background-repeat: no-repeat; |
292 | background-position: bottom; | 292 | background-position: bottom; |
@@ -327,15 +327,11 @@ footer a { | |||
327 | margin-left: 0!important; | 327 | margin-left: 0!important; |
328 | } | 328 | } |
329 | 329 | ||
330 | .listmode .entrie p { | ||
331 | display: none; | ||
332 | } | ||
333 | |||
334 | .list-entries + .results { | 330 | .list-entries + .results { |
335 | margin-bottom: 2em; | 331 | margin-bottom: 2em; |
336 | } | 332 | } |
337 | 333 | ||
338 | .estimatedTime a { | 334 | .estimatedTime .reading-time { |
339 | color: #999; | 335 | color: #999; |
340 | font-style: italic; | 336 | font-style: italic; |
341 | font-weight: normal; | 337 | font-weight: normal; |
@@ -348,7 +344,7 @@ footer a { | |||
348 | } | 344 | } |
349 | 345 | ||
350 | .entrie { | 346 | .entrie { |
351 | background: #FFF; | 347 | background-color: #FFF; |
352 | letter-spacing:normal; | 348 | letter-spacing:normal; |
353 | box-shadow: 0 3px 7px rgba(0,0,0,0.3); | 349 | box-shadow: 0 3px 7px rgba(0,0,0,0.3); |
354 | display: inline-block; | 350 | display: inline-block; |
@@ -359,11 +355,15 @@ footer a { | |||
359 | position: relative; | 355 | position: relative; |
360 | overflow: hidden; | 356 | overflow: hidden; |
361 | padding: 1.5em 1.5em 3em 1.5em; | 357 | padding: 1.5em 1.5em 3em 1.5em; |
362 | -webkit-transition: all 0.5s ease; | 358 | |
363 | -moz-transition: all 0.5s ease; | 359 | /* Removing CSS transitions because they make the switch from list view to |
364 | -ms-transition: all 0.5s ease; | 360 | * table view jerky |
365 | -o-transition: all 0.5s ease; | 361 | */ |
366 | transition: all 0.5s ease; | 362 | /* -webkit-transition: all 0.5s ease; */ |
363 | /* -moz-transition: all 0.5s ease; */ | ||
364 | /* -ms-transition: all 0.5s ease; */ | ||
365 | /* -o-transition: all 0.5s ease; */ | ||
366 | /* transition: all 0.5s ease; */ | ||
367 | } | 367 | } |
368 | 368 | ||
369 | .entrie:before { | 369 | .entrie:before { |
@@ -391,7 +391,7 @@ footer a { | |||
391 | width: 100%; | 391 | width: 100%; |
392 | bottom: 0; | 392 | bottom: 0; |
393 | left: 0; | 393 | left: 0; |
394 | background: #000; | 394 | background-color: #000; |
395 | -webkit-transition: all 0.5s ease; | 395 | -webkit-transition: all 0.5s ease; |
396 | -moz-transition: all 0.5s ease; | 396 | -moz-transition: all 0.5s ease; |
397 | -ms-transition: all 0.5s ease; | 397 | -ms-transition: all 0.5s ease; |
@@ -418,6 +418,7 @@ footer a { | |||
418 | .entrie h2 { | 418 | .entrie h2 { |
419 | text-transform: none; | 419 | text-transform: none; |
420 | margin-bottom: 0; | 420 | margin-bottom: 0; |
421 | line-height: 1.2; | ||
421 | } | 422 | } |
422 | 423 | ||
423 | .entrie h2:after { | 424 | .entrie h2:after { |
@@ -540,7 +541,7 @@ footer a { | |||
540 | 2.1 = "save a link" related styles | 541 | 2.1 = "save a link" related styles |
541 | ========================================================================== */ | 542 | ========================================================================== */ |
542 | 543 | ||
543 | #bagit-form, #search-form { | 544 | .popup-form { |
544 | background: rgba(0,0,0,0.5); | 545 | background: rgba(0,0,0,0.5); |
545 | position: absolute; | 546 | position: absolute; |
546 | top: 0; | 547 | top: 0; |
@@ -549,37 +550,53 @@ footer a { | |||
549 | height: 100%; | 550 | height: 100%; |
550 | width: 100%; | 551 | width: 100%; |
551 | margin: 0; | 552 | margin: 0; |
552 | margin-top: -30%; | 553 | margin-top: -30% !important; /* TODO: get rid of !important here; overridden by .messages selector */ |
553 | padding: 2em; | 554 | padding: 2em; |
554 | display: none; | 555 | display: none; |
555 | border-left: 1px #EEE solid; | 556 | border-left: 1px #EEE solid; |
556 | } | 557 | } |
557 | 558 | ||
558 | #bagit-form form, #search-form form { | 559 | .popup-form form { |
559 | background: #FFF; | 560 | background-color: #FFF; |
560 | position: absolute; | 561 | position: absolute; |
561 | top: 0; | 562 | top: 0; |
562 | left: 0; | 563 | left: 0; |
563 | z-index: 20; | 564 | z-index: 20; |
564 | border: 10px solid #000; | 565 | border: 10px solid #000; |
565 | width: 400px; | 566 | width: 400px; |
566 | height: 200px; | 567 | height: 200px; |
567 | /* margin: -150px 0 0 -300px; */ | 568 | padding: 2em; |
568 | padding: 2em; | 569 | } |
570 | |||
571 | #bagit-form-form .addurl { | ||
572 | margin-left: 0; | ||
569 | } | 573 | } |
570 | 574 | ||
571 | a#bagit-form-close, a#search-form-close { | 575 | .closeMessage, |
572 | background: #000; | 576 | .close-button { |
577 | background-color: #000; | ||
573 | color: #FFF; | 578 | color: #FFF; |
574 | padding: 0.2em 0.5em; | 579 | font-size: 1.2em; |
580 | line-height: 1.6; | ||
581 | width: 1.6em; | ||
582 | height: 1.6em; | ||
583 | text-align: center; | ||
575 | text-decoration: none; | 584 | text-decoration: none; |
576 | display: inline-block; | ||
577 | float: right; | ||
578 | font-size: 0.6em; | ||
579 | } | 585 | } |
580 | a#bagit-form-close:hover, a#search-form-close:hover { | 586 | .closeMessage:hover, |
581 | background: #999; | 587 | .closeMessage:focus, |
582 | color: #000; | 588 | .close-button:hover, |
589 | .close-button:focus { | ||
590 | background-color: #999; | ||
591 | color: #000; | ||
592 | } | ||
593 | |||
594 | .close-button--popup { | ||
595 | display: inline-block; | ||
596 | position: absolute; | ||
597 | top: 0; | ||
598 | right: 0; | ||
599 | font-size: 1.4em; | ||
583 | } | 600 | } |
584 | 601 | ||
585 | .active-current { | 602 | .active-current { |
@@ -630,57 +647,7 @@ a.add-to-wallabag-link-after:after { | |||
630 | 647 | ||
631 | #add-link-result { | 648 | #add-link-result { |
632 | font-weight: bold; | 649 | font-weight: bold; |
633 | margin-top: 10px; | 650 | font-size: 0.9em; |
634 | } | ||
635 | |||
636 | /* ========================================================================== | ||
637 | 2.2 = "search for articles" popup div related styles | ||
638 | ========================================================================== */ | ||
639 | #search-form { | ||
640 | background: rgba(0,0,0,0.5); | ||
641 | position: absolute; | ||
642 | top: 0; | ||
643 | left: 10em; | ||
644 | z-index: 20; | ||
645 | height: 100%; | ||
646 | width: 100%; | ||
647 | margin: 0; | ||
648 | margin-top: -30%; | ||
649 | padding: 2em; | ||
650 | display: none; | ||
651 | border-left: 1px #EEE solid; | ||
652 | } | ||
653 | |||
654 | #search-form form { | ||
655 | background: #FFF; | ||
656 | position: absolute; | ||
657 | top: 0; | ||
658 | left: 0; | ||
659 | z-index: 20; | ||
660 | border: 10px solid #000; | ||
661 | width: 400px; | ||
662 | height: 200px; | ||
663 | /* margin: -150px 0 0 -300px; */ | ||
664 | padding: 2em; | ||
665 | } | ||
666 | |||
667 | a#search-form-close { | ||
668 | background: #000; | ||
669 | color: #FFF; | ||
670 | padding: 0.2em 0.5em; | ||
671 | text-decoration: none; | ||
672 | display: inline-block; | ||
673 | float: right; | ||
674 | font-size: 1.2em; | ||
675 | } | ||
676 | a#search-form-close:hover { | ||
677 | background: #999; | ||
678 | color: #000; | ||
679 | } | ||
680 | |||
681 | #submit-search{ | ||
682 | margin-left: 4em; | ||
683 | margin-top:1em; | ||
684 | } | 651 | } |
685 | 652 | ||
686 | /* ========================================================================== | 653 | /* ========================================================================== |
@@ -690,15 +657,16 @@ margin-top:1em; | |||
690 | @font-face { | 657 | @font-face { |
691 | font-family: 'icomoon'; | 658 | font-family: 'icomoon'; |
692 | src:url('../fonts/icomoon.eot?-s0mcsx'); | 659 | src:url('../fonts/icomoon.eot?-s0mcsx'); |
693 | src:url('../fonts/icomoon.eot?#iefix-s0mcsx') format('embedded-opentype'), | 660 | src:url('../fonts/icomoon.eot?#iefix-s0mcsx') format('embedded-opentype'), |
694 | url('../fonts/icomoon.woff?-s0mcsx') format('woff'), | 661 | url('../fonts/icomoon.woff?-s0mcsx') format('woff'), |
695 | url('../fonts/icomoon.ttf?-s0mcsx') format('truetype'), | 662 | url('../fonts/icomoon.ttf?-s0mcsx') format('truetype'), |
696 | url('../fonts/icomoon.svg?-s0mcsx#icomoon') format('svg'); | 663 | url('../fonts/icomoon.svg?-s0mcsx#icomoon') format('svg'); |
697 | font-weight: normal; | 664 | font-weight: normal; |
698 | font-style: normal; | 665 | font-style: normal; |
699 | } | 666 | } |
700 | 667 | ||
701 | .icon span { | 668 | .icon span, |
669 | .icon-image span { | ||
702 | position: absolute; | 670 | position: absolute; |
703 | top: -9999px; | 671 | top: -9999px; |
704 | } | 672 | } |
@@ -769,6 +737,28 @@ margin-top:1em; | |||
769 | content: "\e80d"; | 737 | content: "\e80d"; |
770 | } | 738 | } |
771 | 739 | ||
740 | |||
741 | /* .icon-image class, for image-based icons | ||
742 | ========================================================================== */ | ||
743 | |||
744 | .icon-image { | ||
745 | background-size: 16px 16px; | ||
746 | background-repeat: no-repeat; | ||
747 | background-position: center; | ||
748 | padding-right: 1em !important; | ||
749 | padding-left: 1em !important; | ||
750 | } | ||
751 | |||
752 | /* Carrot (http://carrot.org) */ | ||
753 | .icon-image--carrot { | ||
754 | background-image: url('../../_global/img/icons/carrot-icon--white.png'); | ||
755 | } | ||
756 | |||
757 | /* Diaspora */ | ||
758 | .icon-image--diaspora { | ||
759 | background-image: url('../../_global/img/icons/diaspora-icon--black.png'); | ||
760 | }} | ||
761 | |||
772 | /* ========================================================================== | 762 | /* ========================================================================== |
773 | Icon selected | 763 | Icon selected |
774 | ========================================================================== */ | 764 | ========================================================================== */ |
@@ -777,6 +767,10 @@ margin-top:1em; | |||
777 | color: #FFF; | 767 | color: #FFF; |
778 | } | 768 | } |
779 | 769 | ||
770 | .icon-check.archive:before { | ||
771 | color: #FFF; | ||
772 | } | ||
773 | |||
780 | /* ========================================================================== | 774 | /* ========================================================================== |
781 | 4 = Messages | 775 | 4 = Messages |
782 | ========================================================================== */ | 776 | ========================================================================== */ |
@@ -788,18 +782,6 @@ margin-top:1em; | |||
788 | 782 | ||
789 | .messages > * { display: inline-block;} | 783 | .messages > * { display: inline-block;} |
790 | 784 | ||
791 | .closeMessage { | ||
792 | background: #000; | ||
793 | color: #FFF; | ||
794 | padding: 0.2em 0.5em; | ||
795 | text-decoration: none; | ||
796 | } | ||
797 | |||
798 | .closeMessage:hover, .closeMessage:focus { | ||
799 | background: #FFF; | ||
800 | color: #000; | ||
801 | } | ||
802 | |||
803 | .warning { | 785 | .warning { |
804 | /* font-size: 3em; | 786 | /* font-size: 3em; |
805 | color: #999; | 787 | color: #999; |
@@ -816,6 +798,16 @@ margin-top:1em; | |||
816 | width: 100%; | 798 | width: 100%; |
817 | } | 799 | } |
818 | 800 | ||
801 | .more-info { | ||
802 | font-size: 0.85em; | ||
803 | line-height: 1.5; | ||
804 | color: #aaa; | ||
805 | } | ||
806 | |||
807 | .more-info a { | ||
808 | color: #aaa; | ||
809 | } | ||
810 | |||
819 | /* ========================================================================== | 811 | /* ========================================================================== |
820 | 5 = Article | 812 | 5 = Article |
821 | ========================================================================== */ | 813 | ========================================================================== */ |
@@ -836,11 +828,15 @@ margin-top:1em; | |||
836 | 828 | ||
837 | blockquote { | 829 | blockquote { |
838 | border:1px solid #999; | 830 | border:1px solid #999; |
839 | background: #FFF; | 831 | background-color: #FFF; |
840 | padding: 1em; | 832 | padding: 1em; |
841 | margin: 0; | 833 | margin: 0; |
842 | } | 834 | } |
843 | 835 | ||
836 | #article h1 { | ||
837 | text-align: left; | ||
838 | } | ||
839 | |||
844 | #article h2, #article h3, #article h4 { | 840 | #article h2, #article h3, #article h4 { |
845 | text-transform: none; | 841 | text-transform: none; |
846 | } | 842 | } |
@@ -865,14 +861,14 @@ blockquote { | |||
865 | } | 861 | } |
866 | 862 | ||
867 | #article_toolbar a { | 863 | #article_toolbar a { |
868 | background: #000; | 864 | background-color: #000; |
869 | padding: 0.3em 0.5em 0.2em; | 865 | padding: 0.3em 0.5em 0.2em; |
870 | color: #FFF; | 866 | color: #FFF; |
871 | text-decoration: none; | 867 | text-decoration: none; |
872 | } | 868 | } |
873 | 869 | ||
874 | #article_toolbar a:hover, #article_toolbar a:focus { | 870 | #article_toolbar a:hover, #article_toolbar a:focus { |
875 | background: #999; | 871 | background-color: #999; |
876 | } | 872 | } |
877 | 873 | ||
878 | .shaarli:before { | 874 | .shaarli:before { |
@@ -895,7 +891,7 @@ blockquote { | |||
895 | } | 891 | } |
896 | 892 | ||
897 | .icon-rss { | 893 | .icon-rss { |
898 | background: #000; | 894 | background-color: #000; |
899 | color: #FFF; | 895 | color: #FFF; |
900 | padding: 0.2em 0.5em; | 896 | padding: 0.2em 0.5em; |
901 | } | 897 | } |
@@ -910,7 +906,7 @@ blockquote { | |||
910 | } | 906 | } |
911 | 907 | ||
912 | .list-tags .icon-rss:hover, .list-tags .icon-rss:focus { | 908 | .list-tags .icon-rss:hover, .list-tags .icon-rss:focus { |
913 | background: #FFF; | 909 | background-color: #FFF; |
914 | color: #000; | 910 | color: #000; |
915 | text-decoration: none; | 911 | text-decoration: none; |
916 | } | 912 | } |
@@ -923,6 +919,13 @@ blockquote { | |||
923 | text-decoration: underline; | 919 | text-decoration: underline; |
924 | } | 920 | } |
925 | 921 | ||
922 | pre code { | ||
923 | font-family: "Courier New", Courier, monospace; | ||
924 | border: 1px solid #ccc; | ||
925 | font-size: 0.96em; | ||
926 | } | ||
927 | |||
928 | |||
926 | /* ========================================================================== | 929 | /* ========================================================================== |
927 | 6 = Media Queries | 930 | 6 = Media Queries |
928 | ========================================================================== */ | 931 | ========================================================================== */ |
@@ -964,7 +967,7 @@ blockquote { | |||
964 | margin-left: 0; | 967 | margin-left: 0; |
965 | } | 968 | } |
966 | body > header { | 969 | body > header { |
967 | background: #333; | 970 | background-color: #333; |
968 | position: fixed; | 971 | position: fixed; |
969 | top: 0; | 972 | top: 0; |
970 | width: 100%; | 973 | width: 100%; |
@@ -1010,11 +1013,11 @@ blockquote { | |||
1010 | width: 2.5em; | 1013 | width: 2.5em; |
1011 | height: 2.5em; | 1014 | height: 2.5em; |
1012 | cursor: pointer; | 1015 | cursor: pointer; |
1013 | background: #999; | 1016 | background-color: #999; |
1014 | font-size: 1.2em; | 1017 | font-size: 1.2em; |
1015 | } | 1018 | } |
1016 | .desktopHide:hover, .desktopHide:focus { | 1019 | .desktopHide:hover, .desktopHide:focus { |
1017 | background: #FFF; | 1020 | background-color: #FFF; |
1018 | } | 1021 | } |
1019 | #links { | 1022 | #links { |
1020 | display: none; | 1023 | display: none; |
@@ -1022,6 +1025,9 @@ blockquote { | |||
1022 | height: auto; | 1025 | height: auto; |
1023 | padding-top: 3em; | 1026 | padding-top: 3em; |
1024 | } | 1027 | } |
1028 | #links.menu--open { | ||
1029 | display: block; | ||
1030 | } | ||
1025 | footer { | 1031 | footer { |
1026 | position: static; | 1032 | position: static; |
1027 | margin-right: 3em; | 1033 | margin-right: 3em; |
@@ -1051,7 +1057,15 @@ blockquote { | |||
1051 | display: none; | 1057 | display: none; |
1052 | } | 1058 | } |
1053 | 1059 | ||
1054 | #bagit-form, #search-form { | 1060 | .popup-form, #bagit-form, #search-form { |
1055 | left: 0; | 1061 | left: 0; |
1062 | width: 100%; | ||
1063 | border-left: none; | ||
1064 | } | ||
1065 | |||
1066 | .popup-form form, | ||
1067 | #bagit-form form, | ||
1068 | #search-form form { | ||
1069 | width: 100%; | ||
1056 | } | 1070 | } |
1057 | } | 1071 | } |
diff --git a/themes/baggy/edit-tags.twig b/themes/baggy/edit-tags.twig index 2113e964..15f15560 100755 --- a/themes/baggy/edit-tags.twig +++ b/themes/baggy/edit-tags.twig | |||
@@ -5,22 +5,22 @@ | |||
5 | {% endblock %} | 5 | {% endblock %} |
6 | {% block content %} | 6 | {% block content %} |
7 | 7 | ||
8 | <script src="{{ poche_url }}themes/default/js/jquery-ui-1.10.4.custom.min.js"></script> | 8 | <script src="{{ poche_url }}themes/_global/js/jquery-ui-1.10.4.custom.min.js"></script> |
9 | <script src="{{ poche_url }}themes/default/js/autoCompleteTags.js"></script> | 9 | <script src="{{ poche_url }}themes/_global/js/autoCompleteTags.js"></script> |
10 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/jquery-ui-1.10.4.custom.min.css" media="all"> | 10 | <link rel="stylesheet" href="{{ poche_url }}themes/_global/css/jquery-ui-1.10.4.custom.min.css" media="all"> |
11 | 11 | ||
12 | <div id="article"> | 12 | <div id="article"> |
13 | <h2>{{ entry.title|raw }}</21> | 13 | <h2>{{ entry.title|raw }}</21> |
14 | </div> | 14 | </div> |
15 | {% if tags is empty %} | 15 | {% if tags is empty %} |
16 | <div class="notags">no tags</div> | 16 | <div class="notags">{% trans "no tags" %}</div> |
17 | {% endif %} | 17 | {% endif %} |
18 | <ul> | 18 | <ul> |
19 | {% for tag in tags %}<li>{{ tag.value }} <a href="./?action=remove_tag&tag_id={{ tag.id }}&id={{ entry_id }}">✘</a></li>{% endfor %} | 19 | {% for tag in tags %}<li>{{ tag.value }} <a href="./?action=remove_tag&tag_id={{ tag.id }}&id={{ entry_id }}">✘</a></li>{% endfor %} |
20 | </ul> | 20 | </ul> |
21 | <form method="post" action="./?action=add_tag"> | 21 | <form method="post" action="./?action=add_tag"> |
22 | <input type="hidden" name="entry_id" value="{{ entry_id }}" /> | 22 | <input type="hidden" name="entry_id" value="{{ entry_id }}" /> |
23 | <label for="value">Add tags: </label><input type="text" placeholder="interview, editorial, video" id="value" name="value" required="required" /> | 23 | <label for="value">{% trans "Add tags:" %}</label><input type="text" placeholder="{% trans "interview" %}, {% trans "editorial" %}, {% trans "video" %}" id="value" name="value" required="required" /> |
24 | <input type="submit" value="Tag" /> | 24 | <input type="submit" value="Tag" /> |
25 | <p>{% trans "Start typing for auto complete." %}<br> | 25 | <p>{% trans "Start typing for auto complete." %}<br> |
26 | {% trans "You can enter multiple tags, separated by commas." %}</p> | 26 | {% trans "You can enter multiple tags, separated by commas." %}</p> |
diff --git a/themes/baggy/home.twig b/themes/baggy/home.twig index 4f415220..426ead1d 100755 --- a/themes/baggy/home.twig +++ b/themes/baggy/home.twig | |||
@@ -38,12 +38,12 @@ | |||
38 | {% endblock %} | 38 | {% endblock %} |
39 | <div id="list-entries" class="list-entries"> | 39 | <div id="list-entries" class="list-entries"> |
40 | {% for entry in entries %} | 40 | {% for entry in entries %} |
41 | <div id="entry-{{ entry.id|e }}" class="entrie"{% if listmode %} style="width:100%; margin-left:0;"{% endif %}> | 41 | <div id="entry-{{ entry.id|e }}" class="entrie"> |
42 | <h2><a href="index.php?view=view&id={{ entry.id|e }}">{{ entry.title|raw }}</a></h2> | 42 | <h2><a href="index.php?view=view&id={{ entry.id|e }}">{{ entry.title|raw }}</a></h2> |
43 | {% if entry.content| getReadingTime > 0 %} | 43 | {% if entry.content| getReadingTime > 0 %} |
44 | <div class="estimatedTime"><a target="_blank" title="{% trans "estimated reading time:" %} {{ entry.content| getReadingTime }} min" class="tool reading-time"><span>{% trans "estimated reading time :" %} {{ entry.content| getReadingTime }} min</span></div> | 44 | <div class="estimatedTime"><span class="tool reading-time">{% trans "estimated reading time :" %} {{ entry.content| getReadingTime }} min</span></div> |
45 | {% else %} | 45 | {% else %} |
46 | <div class="estimatedTime"><a target="_blank" title="{% trans "estimated reading time:" %} {{ entry.content| getReadingTime }} min" class="tool reading-time"><span>{% trans "estimated reading time :" %} <small class="inferieur"></small> 1 min</span></div> | 46 | <div class="estimatedTime"><span class="tool reading-time">{% trans "estimated reading time :" %} <small class="inferieur"><</small> 1 min</span></div> |
47 | {% endif %} | 47 | {% endif %} |
48 | <ul class="tools links"> | 48 | <ul class="tools links"> |
49 | <li><a title="{% trans "Toggle mark as read" %}" class="tool icon-check icon {% if entry.is_read == 0 %}archive-off{% else %}archive{% endif %}" href="./?action=toggle_archive&id={{ entry.id|e }}"><span>{% trans "Toggle mark as read" %}</span></a></li> | 49 | <li><a title="{% trans "Toggle mark as read" %}" class="tool icon-check icon {% if entry.is_read == 0 %}archive-off{% else %}archive{% endif %}" href="./?action=toggle_archive&id={{ entry.id|e }}"><span>{% trans "Toggle mark as read" %}</span></a></li> |
@@ -57,23 +57,21 @@ | |||
57 | {% endfor %} | 57 | {% endfor %} |
58 | </div> | 58 | </div> |
59 | {{ block('pager') }} | 59 | {{ block('pager') }} |
60 | {% if view == 'home' %}{% if nb_results > 1 %}<a title="{% trans "Mark all the entries as read" %}" href="./?action=archive_all">{{ "Mark all the entries as read" }}</a>{% endif %}{% endif %} | 60 | {% if view == 'home' %}{% if nb_results > 1 %}<p><a title="{% trans "Mark all the entries as read" %}" href="./?action=archive_all">{% trans "Mark all the entries as read" %}</a></p>{% endif %}{% endif %} |
61 | 61 | {% if searchterm is defined %}<a title="{% trans "Tag these results as" %} {{ searchterm }}" href="./?action=add_tag&search={{ searchterm }}">{% trans "Tag these results as" %} {{ searchterm }}</a>{% endif %}<br /> | |
62 | {% if search_term is defined %}<a title="{% trans %} Apply the tag {{ search_term }} to this search {% endtrans %}" href="./?action=add_tag&search={{ search_term }}">{% trans %} Apply the tag {{ search_term }} to this search {% endtrans %}</a>{% endif %} | ||
63 | 62 | ||
64 | {% if tag %} | 63 | {% if tag %} |
65 | <a title="{% trans "Download the articles from this tag in an epub file" %}" href="./?epub&method=tag&value={{ tag.value }}">{% trans "Download as ePub3" %}</a> | 64 | <a title="{% trans "Download the articles from this tag in an epub file" %}" href="./?epub&method=tag&value={{ tag.value }}">{% trans "Download as ePub3" %}</a> |
66 | <a title="{% trans "Download the articles from this tag in a mobi file" %}" href="./?mobi&method=tag&value={{ tag.value }}">{% trans "Download as Mobi" %}</a> | 65 | <a title="{% trans "Download the articles from this tag in a mobi file" %}" href="./?mobi&method=tag&value={{ tag.value }}">{% trans "Download as Mobi" %}</a> |
67 | <a title="{% trans "Download the articles from this tag in a pdf file" %}" href="./?pdf&method=tag&value={{ tag.value }}">{% trans "Download as PDF" %}</a> | 66 | <a title="{% trans "Download the articles from this tag in a pdf file" %}" href="./?pdf&method=tag&value={{ tag.value }}">{% trans "Download as PDF" %}</a> |
68 | {% elseif search_term is defined %} | 67 | {% elseif searchterm is defined %} |
69 | <a title="{% trans "Download the articles from this search in an epub" %}" href="./?epub&method=search&value={{ search_term }}">{% trans "Download as ePub3" %}</a> | 68 | <a title="{% trans "Download the articles from this search in an epub" %}" href="./?epub&method=search&value={{ searchterm }}">{% trans "Download as ePub3" %}</a> |
70 | <a title="{% trans "Download the articles from this search in a mobi file" %}" href="./?mobi&method=search&value={{ search_term }}">{% trans "Download as Mobi" %}</a> | 69 | <a title="{% trans "Download the articles from this search in a mobi file" %}" href="./?mobi&method=search&value={{ searchterm }}">{% trans "Download as Mobi" %}</a> |
71 | <a title="{% trans "Download the articles from this search in a pdf file" %}" href="./?pdf&method=search&value={{ search_term }}">{% trans "Download as PDF" %}</a> | 70 | <a title="{% trans "Download the articles from this search in a pdf file" %}" href="./?pdf&method=search&value={{ searchterm }}">{% trans "Download as PDF" %}</a> |
72 | {% else %} | 71 | {% else %} |
73 | <a title="{% trans "Download the articles from this category in an epub" %}" href="./?epub&method=category&value={{ view }}">{% trans "Download as ePub3" %}</a> | 72 | <a title="{% trans "Download the articles from this category in an epub" %}" href="./?epub&method=category&value={{ view }}">{% trans "Download as ePub3" %}</a> |
74 | <a title="{% trans "Download the articles from this category in a mobi file" %}" href="./?mobi&method=category&value={{ view }}">{% trans "Download as Mobi" %}</a> | 73 | <a title="{% trans "Download the articles from this category in a mobi file" %}" href="./?mobi&method=category&value={{ view }}">{% trans "Download as Mobi" %}</a> |
75 | <a title="{% trans "Download the articles from this category in a pdf file" %}" href="./?pdf&method=category&value={{ view }}">{% trans "Download as PDF" %}</a> | 74 | <a title="{% trans "Download the articles from this category in a pdf file" %}" href="./?pdf&method=category&value={{ view }}">{% trans "Download as PDF" %}</a> |
76 | {% endif %} | 75 | {% endif %} |
77 | 76 | {% endif %} | |
78 | {% endif %} | ||
79 | {% endblock %} | 77 | {% endblock %} |
diff --git a/themes/baggy/js/init.js b/themes/baggy/js/init.js index 00470fbf..74cbae68 100755 --- a/themes/baggy/js/init.js +++ b/themes/baggy/js/init.js | |||
@@ -8,7 +8,10 @@ $.fn.ready(function() { | |||
8 | ========================================================================== */ | 8 | ========================================================================== */ |
9 | 9 | ||
10 | $("#menu").click(function(){ | 10 | $("#menu").click(function(){ |
11 | $("#links").toggle(); | 11 | $("#links").toggleClass('menu--open'); |
12 | if ($('#content').hasClass('opacity03')) { | ||
13 | $('#content').removeClass('opacity03'); | ||
14 | } | ||
12 | }); | 15 | }); |
13 | 16 | ||
14 | /* ========================================================================== | 17 | /* ========================================================================== |
diff --git a/themes/baggy/login.twig b/themes/baggy/login.twig index 645db376..58290e9c 100644 --- a/themes/baggy/login.twig +++ b/themes/baggy/login.twig | |||
@@ -9,17 +9,17 @@ | |||
9 | {% if constant('MODE_DEMO') == 1 %}<p>{% trans "you are in demo mode, some features may be disabled." %}</p>{% endif %} | 9 | {% if constant('MODE_DEMO') == 1 %}<p>{% trans "you are in demo mode, some features may be disabled." %}</p>{% endif %} |
10 | <div class="row"> | 10 | <div class="row"> |
11 | <label class="col w150p" for="login">{% trans "Username" %}</label> | 11 | <label class="col w150p" for="login">{% trans "Username" %}</label> |
12 | <input class="col" type="text" id="login" name="login" placeholder="Login" tabindex="1" autofocus {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} /> | 12 | <input class="col" type="text" id="login" name="login" placeholder="{% trans "Username" %}" tabindex="1" autofocus {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} /> |
13 | </div> | 13 | </div> |
14 | 14 | ||
15 | <div class="row"> | 15 | <div class="row"> |
16 | <label class="col w150p" for="password">{% trans "Password" %}</label> | 16 | <label class="col w150p" for="password">{% trans "Password" %}</label> |
17 | <input class="col" type="password" id="password" name="password" placeholder="Password" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} /> | 17 | <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} /> |
18 | </div> | 18 | </div> |
19 | <div class="row"> | 19 | <div class="row"> |
20 | <label class="col w150p" for="longlastingsession">{% trans "Stay signed in" %}</label> | 20 | |
21 | <div class="col"> | 21 | <div class="col"> |
22 | <input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3"> | 22 | <input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3" /> <label for="longlastingsession">{% trans "Stay signed in" %}</label><br /> |
23 | <small class="inbl">{% trans "(Do not check on public computers)" %}</small> | 23 | <small class="inbl">{% trans "(Do not check on public computers)" %}</small> |
24 | </div> | 24 | </div> |
25 | </div> | 25 | </div> |
diff --git a/themes/baggy/tags.twig b/themes/baggy/tags.twig index 9bb93a45..65930eb2 100755 --- a/themes/baggy/tags.twig +++ b/themes/baggy/tags.twig | |||
@@ -1,5 +1,5 @@ | |||
1 | {% extends "layout.twig" %} | 1 | {% extends "layout.twig" %} |
2 | {% block title %}tags{% endblock %} | 2 | {% block title %}Tags{% endblock %} |
3 | {% block menu %} | 3 | {% block menu %} |
4 | {% include '_menu.twig' %} | 4 | {% include '_menu.twig' %} |
5 | {% endblock %} | 5 | {% endblock %} |
@@ -10,4 +10,4 @@ | |||
10 | </li> | 10 | </li> |
11 | {% endfor %} | 11 | {% endfor %} |
12 | </ul> | 12 | </ul> |
13 | {% endblock %} \ No newline at end of file | 13 | {% endblock %} |
diff --git a/themes/baggy/view.twig b/themes/baggy/view.twig index 3f151592..dd274327 100755 --- a/themes/baggy/view.twig +++ b/themes/baggy/view.twig | |||
@@ -4,6 +4,7 @@ | |||
4 | {% endblock %} | 4 | {% endblock %} |
5 | {% block title %}{{ entry.title|raw }} ({{ entry.url | e | getDomain }}){% endblock %} | 5 | {% block title %}{{ entry.title|raw }} ({{ entry.url | e | getDomain }}){% endblock %} |
6 | {% block content %} | 6 | {% block content %} |
7 | {% include '_highlight.twig' %} | ||
7 | <div id="article_toolbar"> | 8 | <div id="article_toolbar"> |
8 | <ul class="links"> | 9 | <ul class="links"> |
9 | <li class="topPosF"><a href="#top" title="{% trans "Back to top" %}" class="tool top icon icon-arrow-up-thick"><span>{% trans "Back to top" %}</span></a></li> | 10 | <li class="topPosF"><a href="#top" title="{% trans "Back to top" %}" class="tool top icon icon-arrow-up-thick"><span>{% trans "Back to top" %}</span></a></li> |
@@ -14,7 +15,9 @@ | |||
14 | {% if constant('SHARE_TWITTER') == 1 %}<li><a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter icon icon-twitter" title="{% trans "Tweet" %}"><span>{% trans "Tweet" %}</span></a></li>{% endif %} | 15 | {% if constant('SHARE_TWITTER') == 1 %}<li><a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter icon icon-twitter" title="{% trans "Tweet" %}"><span>{% trans "Tweet" %}</span></a></li>{% endif %} |
15 | {% if constant('SHARE_MAIL') == 1 %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email icon icon-mail" title="{% trans "Email" %}"><span>{% trans "Email" %}</span></a></li>{% endif %} | 16 | {% if constant('SHARE_MAIL') == 1 %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email icon icon-mail" title="{% trans "Email" %}"><span>{% trans "Email" %}</span></a></li>{% endif %} |
16 | {% if constant('SHARE_SHAARLI') == 1 %}<li><a href="{{ constant('SHAARLI_URL') }}/index.php?post={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="{% trans "shaarli" %}"><span>{% trans "shaarli" %}</span></a></li>{% endif %} | 17 | {% if constant('SHARE_SHAARLI') == 1 %}<li><a href="{{ constant('SHAARLI_URL') }}/index.php?post={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="{% trans "shaarli" %}"><span>{% trans "shaarli" %}</span></a></li>{% endif %} |
17 | {% if constant('FLATTR') == 1 %}{% if flattr.status == constant('FLATTRABLE') %}<li><a href="http://flattr.com/submit/auto?url={{ entry.url }}" class="tool flattr icon icon-flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span></a></li>{% elseif flattr.status == constant('FLATTRED') %}<li><a href="{{ flattr.flattrItemURL }}" class="tool flattr icon icon-flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span> ({{ flattr.numflattrs }})</a></li>{% endif %}{% endif %} | 18 | {% if constant('SHARE_DIASPORA') == 1 %}<li><a href="{{ constant('DIASPORA_URL') }}/bookmarklet?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}¬es=&v=1&noui=1&jump=doclose" target="_blank" class="tool diaspora icon-image icon-image--diaspora" title="{% trans "diaspora" %}"><span>{% trans "diaspora" %}</span></a></li>{% endif %} |
19 | {% if constant('FLATTR') == 1 %}{% if flattr.status == constant('FLATTRABLE') %}<li><a href="http://flattr.com/submit/auto?url={{ entry.url }}" class="tool flattr icon icon-flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span></a></li>{% elseif flattr.status == constant('FLATTRED') %}<li><a href="{{ flattr.flattrItemURL }}" class="tool flattr icon icon-flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span> ({{ flattr.numFlattrs }})</a></li>{% endif %}{% endif %} | ||
20 | {% if constant('CARROT') == 1 %}<li><a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" class="tool carrot icon-image icon-image--carrot" target="_blank" title="{% trans "carrot" %}"><span>Carrot</span></a></li>{% endif %} | ||
18 | {% if constant('SHOW_PRINTLINK') == 1 %}<li><a title="{% trans "Print" %}" class="tool icon icon-print" href="javascript: window.print();"><span>{% trans "Print" %}</span></a></li>{% endif %} | 21 | {% if constant('SHOW_PRINTLINK') == 1 %}<li><a title="{% trans "Print" %}" class="tool icon icon-print" href="javascript: window.print();"><span>{% trans "Print" %}</span></a></li>{% endif %} |
19 | <li><a href="./?epub&method=id&value={{ entry.id|e }}" title="Generate ePub file">EPUB</a></li> | 22 | <li><a href="./?epub&method=id&value={{ entry.id|e }}" title="Generate ePub file">EPUB</a></li> |
20 | <li><a href="./?mobi&method=id&value={{ entry.id|e }}" title="Generate Mobi file">MOBI</a></li> | 23 | <li><a href="./?mobi&method=id&value={{ entry.id|e }}" title="Generate Mobi file">MOBI</a></li> |
@@ -33,7 +36,7 @@ | |||
33 | {{ content | raw }} | 36 | {{ content | raw }} |
34 | </article> | 37 | </article> |
35 | </div> | 38 | </div> |
36 | <script src="{{ poche_url }}themes/{{theme}}/js/restoreScroll.js"></script> | 39 | <script src="{{ poche_url }}themes/_global/js/restoreScroll.js"></script> |
37 | <script type="text/javascript"> | 40 | <script type="text/javascript"> |
38 | $(document).ready(function() { | 41 | $(document).ready(function() { |
39 | 42 | ||
diff --git a/themes/courgette/README.md b/themes/courgette/README.md deleted file mode 100755 index e13d3900..00000000 --- a/themes/courgette/README.md +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | # Courgette Theme | ||
2 | |||
3 | theme created by Thomas LEBEAU alias Courgette http://thomaslebeau.fr/ \ No newline at end of file | ||
diff --git a/themes/courgette/_head.twig b/themes/courgette/_head.twig deleted file mode 100755 index 059936d9..00000000 --- a/themes/courgette/_head.twig +++ /dev/null | |||
@@ -1,11 +0,0 @@ | |||
1 | <link rel="shortcut icon" type="image/x-icon" href="{{ poche_url }}themes/{{theme}}/img/favicon.ico" /> | ||
2 | <link rel="apple-touch-icon-precomposed" sizes="144x144" href="{{ poche_url }}themes/{{theme}}/img/apple-touch-icon-144x144-precomposed.png"> | ||
3 | <link rel="apple-touch-icon-precomposed" sizes="72x72" href="{{ poche_url }}themes/{{theme}}/img/apple-touch-icon-72x72-precomposed.png"> | ||
4 | <link rel="apple-touch-icon-precomposed" href="{{ poche_url }}themes/{{theme}}/img/apple-touch-icon-precomposed.png"> | ||
5 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/font.css" media="all"> | ||
6 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/style.css" media="all"> | ||
7 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/messages.css" media="all"> | ||
8 | <link rel="stylesheet" href="{{ poche_url }}themes/{{theme}}/css/print.css" media="print"> | ||
9 | <link href='//fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'> | ||
10 | <script src="//codeorigin.jquery.com/jquery-2.0.3.min.js"></script> | ||
11 | <script src="{{ poche_url }}themes/{{theme}}/js/init.js"></script> | ||
diff --git a/themes/courgette/_menu.twig b/themes/courgette/_menu.twig deleted file mode 100755 index 0e37660a..00000000 --- a/themes/courgette/_menu.twig +++ /dev/null | |||
@@ -1,10 +0,0 @@ | |||
1 | <div id="menuContainer"> | ||
2 | <ul id="links"> | ||
3 | <li><a href="./" {% if view == 'home' %}class="current"{% endif %}>{% trans "unread" %}</a></li> | ||
4 | <li><a href="./?view=fav" {% if view == 'fav' %}class="current"{% endif %}>{% trans "favorites" %}</a></li> | ||
5 | <li><a href="./?view=archive" {% if view == 'archive' %}class="current"{% endif %}>{% trans "archive" %}</a></li> | ||
6 | <li><a href="./?view=tags" {% if view == 'tags' %}class="current"{% endif %}>{% trans "tags" %}</a></li> | ||
7 | <li><a href="./?view=config" {% if view == 'config' %}class="current"{% endif %}>{% trans "config" %}</a></li> | ||
8 | <li><a href="./?logout" title="{% trans "logout" %}">{% trans "logout" %}</a></li> | ||
9 | </ul> | ||
10 | </div> \ No newline at end of file | ||
diff --git a/themes/courgette/_top.twig b/themes/courgette/_top.twig deleted file mode 100755 index 2d41db17..00000000 --- a/themes/courgette/_top.twig +++ /dev/null | |||
@@ -1,9 +0,0 @@ | |||
1 | <header> | ||
2 | <h1> | ||
3 | {% if view == 'home' %}{% block logo %}<img src="{{ poche_url }}themes/{{theme}}/img/logo.svg" alt="wallabag logo" />{% endblock %} | ||
4 | {% elseif view == 'fav' %}<a href="./" title="{% trans "back to home" %}" >{{ block('logo') }} <span>Favoris</span></a> | ||
5 | {% elseif view == 'archive' %}<a href="./" title="{% trans "back to home" %}" >{{ block('logo') }} <span>Archive</span></a> | ||
6 | {% else %}<a href="./" title="{% trans "back to home" %}" >{{ block('logo') }}</a> | ||
7 | {% endif %} | ||
8 | </h1> | ||
9 | </header> \ No newline at end of file | ||
diff --git a/themes/courgette/_view.twig b/themes/courgette/_view.twig deleted file mode 100755 index c5c916c0..00000000 --- a/themes/courgette/_view.twig +++ /dev/null | |||
@@ -1,46 +0,0 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | {% block title %}{{ entry.title|raw }} ({{ entry.url | e | getDomain }}){% endblock %} | ||
3 | {% block content %} | ||
4 | <div id="article_toolbar"> | ||
5 | <ul> | ||
6 | <li><a href="./" title="{% trans "back to home" %}" class="tool back"><span>{% trans "back to home" %}</span></a></li> | ||
7 | <li><a href="{{ entry.url|e }}" target="_blank" title="{% trans "original" %} : {{ entry.title|e }}" class="tool link"><span>{{ entry.url | e | getDomain }}</span></a></li> | ||
8 | <li><a title="{% trans "toggle mark as read" %}" class="tool {% if entry.is_read == 0 %}archive-off{% else %}archive{% endif %}" href="./?action=toggle_archive&id={{ entry.id|e }}"><span>{% trans "toggle mark as read" %}</span></a></li> | ||
9 | <li><a title="{% trans "toggle favorite" %}" class="tool {% if entry.is_fav == 0 %}fav-off{% else %}fav{% endif %}" href="./?action=toggle_fav&id={{ entry.id|e }}"><span>{% trans "toggle favorite" %}</span></a></li> | ||
10 | <li><a title="{% trans "delete" %}" class="tool delete" href="./?action=delete&id={{ entry.id|e }}"><span>{% trans "delete" %}</span></a></li> | ||
11 | {% if constant('SHARE_TWITTER') == 1 %}<li><a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter" title="{% trans "tweet" %}"><span>{% trans "tweet" %}</span></a></li>{% endif %} | ||
12 | {% if constant('SHARE_MAIL') == 1 %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email" title="{% trans "email" %}"><span>{% trans "email" %}</span></a></li>{% endif %} | ||
13 | {% if constant('SHARE_SHAARLI') == 1 %}<li><a href="{{ constant('SHAARLI_URL') }}/index.php?post={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="{% trans "shaarli" %}"><span>{% trans "shaarli" %}</span></a></li>{% endif %} | ||
14 | {% if constant('FLATTR') == 1 %}{% if flattr.status == constant('FLATTRABLE') %}<li class="flattrli"><a href="http://flattr.com/submit/auto?url={{ entry.url }}" class="tool flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span></a></li>{% elseif flattr.status == constant('FLATTRED') %}<li><a href="{{ flattr.flattrItemURL }}" class="tool flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span>{{ flattr.numflattrs }}</a></li>{% endif %}{% endif %} | ||
15 | <li><a href="./?epub&method=id&value={{ entry.id|e }}" title="Generate epub file">EPUB</a></li> | ||
16 | <li><a href="mailto:hello@wallabag.org?subject=Wrong%20display%20in%20wallabag&body={{ entry.url|url_encode }}" title="{% trans "this article appears wrong?" %}" class="tool bad-display"><span>{% trans "this article appears wrong?" %}</span></a></li> | ||
17 | </ul> | ||
18 | </div> | ||
19 | <div id="article"> | ||
20 | <header class="mbm"> | ||
21 | <h1>{{ entry.title|raw }}</h1> | ||
22 | </header> | ||
23 | <article> | ||
24 | {{ content | raw }} | ||
25 | </article> | ||
26 | </div> | ||
27 | <script src="{{ poche_url }}themes/{{theme}}/js/restoreScroll.js"></script> | ||
28 | <script type="text/javascript"> | ||
29 | $(document).ready(function() { | ||
30 | |||
31 | $(window).scroll(function(e){ | ||
32 | var scrollTop = $(window).scrollTop(); | ||
33 | var docHeight = $(document).height(); | ||
34 | var scrollPercent = (scrollTop) / (docHeight); | ||
35 | var scrollPercentRounded = Math.round(scrollPercent*100)/100; | ||
36 | savePercent({{ entry.id|e }}, scrollPercentRounded); | ||
37 | }); | ||
38 | |||
39 | retrievePercent({{ entry.id|e }}); | ||
40 | |||
41 | $(window).resize(function(){ | ||
42 | retrievePercent({{ entry.id|e }}); | ||
43 | }); | ||
44 | }); | ||
45 | </script> | ||
46 | {% endblock %} \ No newline at end of file | ||
diff --git a/themes/courgette/css/font.css b/themes/courgette/css/font.css deleted file mode 100755 index 849ff85b..00000000 --- a/themes/courgette/css/font.css +++ /dev/null | |||
@@ -1,22 +0,0 @@ | |||
1 | @font-face { | ||
2 | font-family: 'fontello'; | ||
3 | src: url('../font/fontello.eot?97381924'); | ||
4 | src: url('../font/fontello.eot?97381924#iefix') format('embedded-opentype'), | ||
5 | url('../font/fontello.woff?97381924') format('woff'), | ||
6 | url('../font/fontello.ttf?97381924') format('truetype'), | ||
7 | url('../font/fontello.svg?97381924#fontello') format('svg'); | ||
8 | font-weight: normal; | ||
9 | font-style: normal; | ||
10 | } | ||
11 | |||
12 | @font-face { | ||
13 | font-family: 'icomoon'; | ||
14 | src:url('../font/icomoon.eot?-72nnzw'); | ||
15 | src:url('../font/icomoon.eot?#iefix-72nnzw') format('embedded-opentype'), | ||
16 | url('../font/icomoon.woff?-72nnzw') format('woff'), | ||
17 | url('../font/comoon.ttf?-72nnzw') format('truetype'), | ||
18 | url('../font/icomoon.svg?-72nnzw#icomoon') format('svg'); | ||
19 | font-weight: normal; | ||
20 | font-style: normal; | ||
21 | } | ||
22 | |||
diff --git a/themes/courgette/css/knacss.css b/themes/courgette/css/knacss.css deleted file mode 100755 index e69de29b..00000000 --- a/themes/courgette/css/knacss.css +++ /dev/null | |||
diff --git a/themes/courgette/css/messages.css b/themes/courgette/css/messages.css deleted file mode 100755 index fe6fbbe8..00000000 --- a/themes/courgette/css/messages.css +++ /dev/null | |||
@@ -1,75 +0,0 @@ | |||
1 | .messages { | ||
2 | display: block; | ||
3 | clear: both; | ||
4 | width: 400px; | ||
5 | margin: 10px auto 10px; | ||
6 | padding: 10px 0; | ||
7 | -moz-border-radius: 4px; | ||
8 | border-radius: 4px; | ||
9 | } | ||
10 | |||
11 | .messages a.closeMessage { | ||
12 | display: none; | ||
13 | float: right; | ||
14 | width: 16px; | ||
15 | height: 16px; | ||
16 | margin: -14px -8px 0 0; | ||
17 | background: url(../img/messages/close.png) no-repeat; | ||
18 | } | ||
19 | |||
20 | /*.messages:hover a.closeMessage { visibility:visible; }*/ | ||
21 | |||
22 | .messages p { | ||
23 | margin: 3px 0 3px 10px !important; | ||
24 | padding: 0 10px 0 23px !important; | ||
25 | font-size: 14px; | ||
26 | line-height: 16px; | ||
27 | } | ||
28 | |||
29 | .messages.error { | ||
30 | border: 1px solid #c42608; | ||
31 | color: #c00 !important; | ||
32 | background: #fff0ef; | ||
33 | } | ||
34 | |||
35 | .messages.error p { | ||
36 | color: #c00 !important; | ||
37 | background: url(../img/messages/cross.png) no-repeat 0 50%; | ||
38 | } | ||
39 | |||
40 | .messages.success { | ||
41 | border: 1px solid #6dc70c; | ||
42 | background: #e0fbcc; | ||
43 | } | ||
44 | |||
45 | .messages.success p { | ||
46 | color: #2b6301 !important; | ||
47 | background: url(../img/messages/tick.png) no-repeat 0 50%; | ||
48 | } | ||
49 | |||
50 | .messages.warning { | ||
51 | border: 1px solid #ebcd41; | ||
52 | color: #000; | ||
53 | background: #fffcd3; | ||
54 | } | ||
55 | |||
56 | .messages.warning p { | ||
57 | color: #5f4e01; | ||
58 | background: url(../img/messages/warning.png) no-repeat 0 50%; | ||
59 | } | ||
60 | |||
61 | .messages.information, | ||
62 | .messages.info { | ||
63 | border: 1px solid #82aee7; | ||
64 | background: #dfebfb; | ||
65 | } | ||
66 | |||
67 | .messages.information p, | ||
68 | .messages.info p { | ||
69 | color: #064393; | ||
70 | background: url(../img/messages/help.png) no-repeat 0 50%; | ||
71 | } | ||
72 | |||
73 | .messages.information a { | ||
74 | text-decoration: underline; | ||
75 | } \ No newline at end of file | ||
diff --git a/themes/courgette/css/print.css b/themes/courgette/css/print.css deleted file mode 100755 index 9aefa779..00000000 --- a/themes/courgette/css/print.css +++ /dev/null | |||
@@ -1,48 +0,0 @@ | |||
1 | /* ### Layout ### */ | ||
2 | |||
3 | body { | ||
4 | font-family: Serif; | ||
5 | background-color: #fff; | ||
6 | } | ||
7 | |||
8 | @page { | ||
9 | margin: 1cm; | ||
10 | } | ||
11 | |||
12 | img { | ||
13 | max-width: 100% !important; | ||
14 | } | ||
15 | |||
16 | /* ### Content ### */ | ||
17 | |||
18 | /* Hide useless blocks */ | ||
19 | body > header, | ||
20 | #links, | ||
21 | #sort, | ||
22 | body > footer, | ||
23 | .top_link, | ||
24 | div.tools, | ||
25 | header div, | ||
26 | .messages, | ||
27 | .entrie + .results { | ||
28 | display: none !important; | ||
29 | } | ||
30 | |||
31 | article { | ||
32 | border: none !important; | ||
33 | } | ||
34 | |||
35 | /* Add URL after links */ | ||
36 | .vieworiginal a:after { | ||
37 | content: " (" attr(href) ")"; | ||
38 | } | ||
39 | |||
40 | /* Add explanation after abbr */ | ||
41 | abbr[title]:after { | ||
42 | content: " (" attr(title) ")"; | ||
43 | } | ||
44 | |||
45 | /* Change border on current pager item */ | ||
46 | .pagination span.current { | ||
47 | border-style: dashed; | ||
48 | } | ||
diff --git a/themes/courgette/css/style-default.css b/themes/courgette/css/style-default.css deleted file mode 100755 index 3377a75b..00000000 --- a/themes/courgette/css/style-default.css +++ /dev/null | |||
@@ -1,59 +0,0 @@ | |||
1 | a.back span { | ||
2 | background-image: url('../img/default/left.png'); | ||
3 | } | ||
4 | |||
5 | a.top span { | ||
6 | background-image: url('../img/default/top.png'); | ||
7 | } | ||
8 | |||
9 | a.fav span, | ||
10 | a.fav-off span:hover { | ||
11 | background-image: url('../img/default/star-on.png'); | ||
12 | } | ||
13 | |||
14 | a.fav span:hover, | ||
15 | a.fav-off span { | ||
16 | background-image: url('../img/default/star-off.png'); | ||
17 | } | ||
18 | |||
19 | a.archive span, | ||
20 | a.archive-off span:hover { | ||
21 | background-image: url('../img/default/checkmark-on.png'); | ||
22 | } | ||
23 | |||
24 | a.archive span:hover, | ||
25 | a.archive-off span { | ||
26 | background-image: url('../img/default/checkmark-off.png'); | ||
27 | } | ||
28 | |||
29 | a.twitter span { | ||
30 | background-image: url('../img/default/twitter.png'); | ||
31 | } | ||
32 | |||
33 | a.shaarli span { | ||
34 | background-image: url('../img/default/shaarli.png'); | ||
35 | } | ||
36 | |||
37 | a.flattr span { | ||
38 | background-image: url('../img/default/flattr.png'); | ||
39 | } | ||
40 | |||
41 | a.email span { | ||
42 | background-image: url('../img/default/envelop.png'); | ||
43 | } | ||
44 | |||
45 | a.delete span { | ||
46 | background-image: url('../img/default/remove.png'); | ||
47 | } | ||
48 | |||
49 | a.link span { | ||
50 | background-image: url('../img/default/link.png'); | ||
51 | } | ||
52 | |||
53 | a.bad-display span { | ||
54 | background-image: url('../img/default/bad-display.png'); | ||
55 | } | ||
56 | |||
57 | a.reading-time span { | ||
58 | background-image: url('../img/default/clock.png'); | ||
59 | } | ||
diff --git a/themes/courgette/css/style.css b/themes/courgette/css/style.css deleted file mode 100755 index edd09c78..00000000 --- a/themes/courgette/css/style.css +++ /dev/null | |||
@@ -1,684 +0,0 @@ | |||
1 | * { | ||
2 | -webkit-box-sizing: border-box; | ||
3 | -moz-box-sizing: border-box; | ||
4 | box-sizing: border-box; | ||
5 | } | ||
6 | |||
7 | body { | ||
8 | margin: 10px; | ||
9 | font-family: 'Roboto',Verdana,Geneva,sans-serif; | ||
10 | font-size: 16px; | ||
11 | color: #000; | ||
12 | } | ||
13 | |||
14 | h1 span { | ||
15 | color #FFF; | ||
16 | background: #000; | ||
17 | display: inline-block; | ||
18 | padding: 0.2em 1em 0.2em 1.2em; | ||
19 | font-size: 0.7em; | ||
20 | position: relative; | ||
21 | top: -1em; | ||
22 | left: -1em; | ||
23 | } | ||
24 | |||
25 | h1 a { | ||
26 | color: #FFF; | ||
27 | text-decoration: none; | ||
28 | } | ||
29 | |||
30 | #menu { | ||
31 | font-family: 'fontello'; | ||
32 | position:fixed; | ||
33 | z-index: 11; | ||
34 | top: 0.7em; | ||
35 | right: 0.5em; | ||
36 | border:0; | ||
37 | font-size: 2em; | ||
38 | background: #000; | ||
39 | color:#FFF; | ||
40 | height: 58px; | ||
41 | width: 58px; | ||
42 | line-height:58px; | ||
43 | border-radius:120px; | ||
44 | } | ||
45 | |||
46 | #menu:hover, #menu:focus { | ||
47 | background: #FFF; | ||
48 | color:#000; | ||
49 | cursor: pointer; | ||
50 | } | ||
51 | |||
52 | #menu span { | ||
53 | position: absolute; | ||
54 | top: -99999px; | ||
55 | } | ||
56 | |||
57 | #menuContainer ul, #article_toolbar ul { | ||
58 | position:fixed; | ||
59 | top: 0; | ||
60 | left:0; | ||
61 | width: 100%; | ||
62 | padding: 0; | ||
63 | margin: 0; | ||
64 | text-align:center; | ||
65 | height:80px; | ||
66 | } | ||
67 | |||
68 | /*Inspired by http://tympanus.net/Tutorials/AnimatedBorderMenus/index.html */ | ||
69 | |||
70 | #menuContainer, #article_toolbar { | ||
71 | position: fixed; | ||
72 | top: 0; | ||
73 | left:0; | ||
74 | width: 100%; | ||
75 | height: 0; | ||
76 | overflow: hidden; | ||
77 | border-width:0; | ||
78 | border-style: solid; | ||
79 | border-color:#000; | ||
80 | background-color: transparent; | ||
81 | -webkit-transition: border-width 0.3s, background-color 0.3s, height 0s 0.3s; | ||
82 | -moz-transition: border-width 0.3s, background-color 0.3s, height 0s 0.3s; | ||
83 | transition: border-width 0.3s, background-color 0.3s, height 0s 0.3s; | ||
84 | } | ||
85 | |||
86 | #article_toolbar ul { | ||
87 | padding: 1.7em; | ||
88 | } | ||
89 | |||
90 | #menuContainer.open, #article_toolbar.open { | ||
91 | border-width:80px; | ||
92 | height: 100%; | ||
93 | background: rgba(0,0,0,0.5); | ||
94 | -webkit-transition: border-width 0.3s, background-color 0.3s; | ||
95 | -moz-transition: border-width 0.3s, background-color 0.3s; | ||
96 | transition: border-width 0.3s, background-color 0.3s; | ||
97 | z-index: 1; | ||
98 | } | ||
99 | |||
100 | #links li, #article_toolbar li { | ||
101 | list-style: none; | ||
102 | display: inline-block; | ||
103 | } | ||
104 | |||
105 | #links li a, #article_toolbar a { | ||
106 | color:#FFF; | ||
107 | display: block; | ||
108 | position:relative; | ||
109 | top: -200px; | ||
110 | -webkit-transition: top 0.3s ease; | ||
111 | -moz-transition: top 0.3s ease; | ||
112 | transition: top 0.3s ease; | ||
113 | padding:1.85em 1em; | ||
114 | } | ||
115 | |||
116 | #links li a { | ||
117 | text-decoration:none; | ||
118 | text-transform:uppercase; | ||
119 | } | ||
120 | |||
121 | #links li a:hover, #links li a:focus { | ||
122 | background: #FFF; | ||
123 | color:#000; | ||
124 | } | ||
125 | |||
126 | #menuContainer.open li a, #article_toolbar.open a { | ||
127 | top: 0; | ||
128 | -webkit-transition: top 0.3s ease; | ||
129 | -moz-transition: top 0.3s ease; | ||
130 | transition: top 0.3s ease; | ||
131 | -webkit-transition-delay:0.25ms; | ||
132 | -moz-transition-delay:0.25ms; | ||
133 | transition-delay:0.25ms; | ||
134 | } | ||
135 | |||
136 | #menuContainer.open li:nth-child(2) a { | ||
137 | -webkit-transition-delay:0.50ms; | ||
138 | -moz-transition-delay:0.50ms; | ||
139 | transition-delay:0.50ms; | ||
140 | } | ||
141 | |||
142 | #menuContainer.open li:nth-child(3) a { | ||
143 | -webkit-transition-delay:1ms; | ||
144 | -moz-transition-delay:1ms; | ||
145 | transition-delay:1ms; | ||
146 | } | ||
147 | |||
148 | #menuContainer.open li:nth-child(4) a { | ||
149 | -webkit-transition-delay:1.25ms; | ||
150 | -moz-transition-delay:1.25ms; | ||
151 | transition-delay:1.25ms; | ||
152 | } | ||
153 | |||
154 | #menuContainer.open li:nth-child(5) a { | ||
155 | -webkit-transition-delay:1.55ms; | ||
156 | -moz-transition-delay:1.55ms; | ||
157 | transition-delay:1.55ms; | ||
158 | } | ||
159 | |||
160 | #article_toolbar li:nth-child(2) { display: none; } | ||
161 | |||
162 | #menu:before { | ||
163 | content: "\e801"; | ||
164 | display: block; | ||
165 | text-indent: 0; | ||
166 | } | ||
167 | |||
168 | body > header { | ||
169 | position: fixed; | ||
170 | top: 0; | ||
171 | left: 1em; | ||
172 | z-index: 10; | ||
173 | } | ||
174 | |||
175 | #main { | ||
176 | padding:6em; | ||
177 | } | ||
178 | |||
179 | /* ========================================================================== | ||
180 | entrie | ||
181 | ========================================================================== */ | ||
182 | |||
183 | .entrie, #article { | ||
184 | width: 45em; | ||
185 | margin: auto; | ||
186 | position:relative; | ||
187 | padding: 0 0 1em 0; | ||
188 | margin-bottom: 1.5em; | ||
189 | } | ||
190 | |||
191 | #article a { | ||
192 | text-decoration: underline; | ||
193 | color:#000; | ||
194 | } | ||
195 | |||
196 | #article a:hover, #article a:focus { | ||
197 | text-decoration: none; | ||
198 | } | ||
199 | |||
200 | .entrie:after { | ||
201 | content:""; | ||
202 | position: absolute; | ||
203 | width: 100%; | ||
204 | height: 4px; | ||
205 | background: #000; | ||
206 | bottom:0; | ||
207 | left: -1em; | ||
208 | } | ||
209 | |||
210 | .entrie p { | ||
211 | padding:0 0 0 1.5em; | ||
212 | } | ||
213 | |||
214 | .entrie:before { | ||
215 | content:''; | ||
216 | position: absolute; | ||
217 | top: 0; | ||
218 | left: -1em; | ||
219 | width: 4px; | ||
220 | height: 100%; | ||
221 | background: #000; | ||
222 | } | ||
223 | |||
224 | .entrie h2:after { | ||
225 | content:""; | ||
226 | display: block; | ||
227 | width: 0; | ||
228 | height: 0; | ||
229 | border-color: #000; | ||
230 | border-width:7px; | ||
231 | border-color:transparent transparent transparent #000; | ||
232 | border-style: solid; | ||
233 | position: absolute; | ||
234 | top: 0.8em; | ||
235 | right: -0.58em; | ||
236 | } | ||
237 | |||
238 | .entrie h2 { | ||
239 | margin:0; | ||
240 | display: inline-block; | ||
241 | position: relative; | ||
242 | max-width: 78%; | ||
243 | } | ||
244 | |||
245 | .entrie h2 a { | ||
246 | color:#000; | ||
247 | text-decoration:none; | ||
248 | display: block; | ||
249 | background: #000; | ||
250 | padding: 0.4em 1em; | ||
251 | color:#FFF; | ||
252 | margin-left: -0.5em; | ||
253 | -webkit-transition: all 0.3s ease-out; | ||
254 | -moz-transition: all 0.3s ease-out; | ||
255 | transition: all 0.3s ease-out; | ||
256 | } | ||
257 | |||
258 | .entrie h2 a:hover, .entrie h2 a:focus { | ||
259 | padding:0.4em 1em 0.4em 2em; | ||
260 | } | ||
261 | |||
262 | ul { | ||
263 | padding:0; | ||
264 | margin:0; | ||
265 | } | ||
266 | |||
267 | ul li { | ||
268 | list-style: none; | ||
269 | } | ||
270 | |||
271 | .tools { | ||
272 | display: inline-block; | ||
273 | margin-left: 1em; | ||
274 | vertical-align: top; | ||
275 | padding-top: 1em; | ||
276 | } | ||
277 | |||
278 | .tools a span { | ||
279 | position:absolute; | ||
280 | top: -99999px; | ||
281 | } | ||
282 | |||
283 | .tools li { | ||
284 | display: inline-block; | ||
285 | } | ||
286 | |||
287 | .tools a { | ||
288 | display: block; | ||
289 | color:#FFF; | ||
290 | background: #000; | ||
291 | text-decoration:none; | ||
292 | height: 1.5em; | ||
293 | width: 1.5em; | ||
294 | text-align: center; | ||
295 | line-height:1.5em; | ||
296 | border-radius: 90px; | ||
297 | } | ||
298 | |||
299 | .tools a:hover, .tools a:focus { | ||
300 | background: #FFF; | ||
301 | color:#000; | ||
302 | } | ||
303 | |||
304 | .tools a:before { display: block; font-family: 'icomoon'; } | ||
305 | |||
306 | |||
307 | .fav-off:before, .fav:before { content: '\e805'; } /* '' */ | ||
308 | .archive-off:before, .archive:before { content: '\e804'; } /* '' */ | ||
309 | .tools .archive, .tools .fav { | ||
310 | background: #FFF; | ||
311 | color:#000; | ||
312 | } | ||
313 | .link:before { content: '\e801'; } /* '' */ | ||
314 | .delete:before { content: '\e80c'; } /* '' */ | ||
315 | .reading-time:before { content: '\e803'; } /* '' */ | ||
316 | |||
317 | #article_toolbar a:before { | ||
318 | display: block; | ||
319 | font-family: 'icomoon'; | ||
320 | } | ||
321 | |||
322 | #article_toolbar a { | ||
323 | display: block; | ||
324 | color:#000; | ||
325 | background: #FFF; | ||
326 | text-decoration:none; | ||
327 | height: 1.5em; | ||
328 | width: 1.5em; | ||
329 | text-align: center; | ||
330 | line-height:1.5em; | ||
331 | border-radius: 90px; | ||
332 | padding: 0; | ||
333 | } | ||
334 | |||
335 | #article_toolbar a:hover, #article_toolbar a:focus { | ||
336 | background: #000; | ||
337 | color:#FFF; | ||
338 | } | ||
339 | |||
340 | #article_toolbar span { | ||
341 | position: absolute; | ||
342 | top: -99999px; | ||
343 | } | ||
344 | |||
345 | .email:before { content: '\e80a'; } /* '' */ | ||
346 | .icon-check:before { content: '\e804'; } /* '' */ | ||
347 | .back:before { content: '\e806'; } /* '' */ | ||
348 | .flattr:before { content: '\e800'; } /* '' */ | ||
349 | .bad-display:before { content: '\e600'; } /* '' */ | ||
350 | .twitter:before { content: '\e807'; } /* '' */ | ||
351 | |||
352 | #article_toolbar .flattrli { | ||
353 | display: none; | ||
354 | } | ||
355 | |||
356 | #article_toolbar li { | ||
357 | margin: 0 0 0 1em; | ||
358 | } | ||
359 | |||
360 | |||
361 | footer { | ||
362 | position: fixed; | ||
363 | bottom: 0; | ||
364 | width: 100%; | ||
365 | padding: 0 2%; | ||
366 | left: 0; | ||
367 | text-align:right; | ||
368 | font-size: 0.8em; | ||
369 | font-style: italic; | ||
370 | background: rgba(255,255,255,0.5); | ||
371 | } | ||
372 | |||
373 | footer a { | ||
374 | color:#000; | ||
375 | } | ||
376 | |||
377 | footer a:hover,footer a:focus { | ||
378 | text-decoration: none; | ||
379 | } | ||
380 | |||
381 | footer p:first-child { | ||
382 | float:left; | ||
383 | } | ||
384 | |||
385 | #loginForm fieldset { | ||
386 | border:5px solid #000; | ||
387 | padding: 1.5em; | ||
388 | } | ||
389 | |||
390 | fieldset { | ||
391 | border:0; | ||
392 | padding: 0; | ||
393 | } | ||
394 | |||
395 | #loginForm { | ||
396 | max-width: 25em; | ||
397 | margin: auto; | ||
398 | } | ||
399 | |||
400 | #loginForm .row { | ||
401 | margin-bottom: 0.5em; | ||
402 | } | ||
403 | |||
404 | form h2 { | ||
405 | margin-top: 0; | ||
406 | } | ||
407 | |||
408 | form label { | ||
409 | width: 40%; | ||
410 | display: inline-block; | ||
411 | } | ||
412 | |||
413 | form input[type="text"], form input[type="password"], form input[type='url'], form select { | ||
414 | border:1px solid #000; | ||
415 | padding:0.5em 1em; | ||
416 | } | ||
417 | |||
418 | @media screen and (-webkit-min-device-pixel-ratio:0){ | ||
419 | form select{ | ||
420 | -webkit-appearance: none; | ||
421 | background: url(../img/bg-select.png) no-repeat right center; | ||
422 | padding-right: 2.2em; | ||
423 | border-radius: 0; | ||
424 | } | ||
425 | } | ||
426 | |||
427 | form button, form input[type="submit"] { | ||
428 | background: #000; | ||
429 | color:#FFF; | ||
430 | border:0; | ||
431 | font-size:1em; | ||
432 | padding:0.5em 1em; | ||
433 | margin-top: 1em; | ||
434 | cursor: pointer; | ||
435 | } | ||
436 | |||
437 | form button:hover, form button:focus, form input[type="submit"]:hover, form input[type="submit"]:focus { | ||
438 | background: #FFF; | ||
439 | color: #000; | ||
440 | } | ||
441 | |||
442 | /* ========================================================================== | ||
443 | Config | ||
444 | ========================================================================== */ | ||
445 | |||
446 | #config { | ||
447 | max-width: 60%; | ||
448 | margin: auto; | ||
449 | } | ||
450 | |||
451 | #config a { | ||
452 | background: #000; | ||
453 | text-decoration: none; | ||
454 | color:#FFF; | ||
455 | padding: 0.2em 1em; | ||
456 | } | ||
457 | |||
458 | #config .special { | ||
459 | background: none; | ||
460 | padding:0; | ||
461 | color: #000; | ||
462 | } | ||
463 | |||
464 | #config a:hover, #config a:focus { | ||
465 | background: #FFF; | ||
466 | color:#000; | ||
467 | } | ||
468 | |||
469 | #config li { | ||
470 | margin-bottom: 1em; | ||
471 | } | ||
472 | |||
473 | #plainurl { | ||
474 | font-size: 1em; | ||
475 | } | ||
476 | |||
477 | #config label { | ||
478 | width: 20%; | ||
479 | } | ||
480 | |||
481 | .results { | ||
482 | max-width: 62.5%; | ||
483 | font-style:italic; | ||
484 | margin: 1em auto 2.5em; | ||
485 | } | ||
486 | |||
487 | #sort { | ||
488 | max-width: 62.5%; | ||
489 | margin: 0 auto -2.5em; | ||
490 | text-align: right; | ||
491 | border-bottom:1px dotted #000; | ||
492 | } | ||
493 | |||
494 | #sort li { | ||
495 | display: inline-block; | ||
496 | vertical-align: top; | ||
497 | position: relative; | ||
498 | top: -0.1em; | ||
499 | margin-left: 1em; | ||
500 | } | ||
501 | |||
502 | #sort li img { | ||
503 | display: none; | ||
504 | } | ||
505 | |||
506 | #sort a { | ||
507 | display: inline-block; | ||
508 | font-family: 'fontello'; | ||
509 | color:#000; | ||
510 | text-decoration: none; | ||
511 | } | ||
512 | |||
513 | #sort a:hover, #sort a:focus { | ||
514 | text-decoration: underline; | ||
515 | } | ||
516 | |||
517 | #sort a:before { | ||
518 | display: block; | ||
519 | } | ||
520 | |||
521 | #sort li a:first-child:before { | ||
522 | content: '\e809'; | ||
523 | } | ||
524 | |||
525 | #sort li a:first-child + a:before { | ||
526 | content: '\e80b'; | ||
527 | } | ||
528 | |||
529 | @media screen and (max-width: 860px) { | ||
530 | .entrie, #article { | ||
531 | width: 30em; | ||
532 | } | ||
533 | } | ||
534 | |||
535 | @media screen and (max-width: 650px) { | ||
536 | #menuContainer ul, #article_toolbar ul { | ||
537 | width: 120px; | ||
538 | height: 100%; | ||
539 | } | ||
540 | |||
541 | body > header { | ||
542 | position: static; | ||
543 | } | ||
544 | |||
545 | #main { | ||
546 | padding: 0 0.5em 6em; | ||
547 | } | ||
548 | |||
549 | #menu { | ||
550 | display: none; | ||
551 | } | ||
552 | |||
553 | #main:before { | ||
554 | content:none; | ||
555 | } | ||
556 | |||
557 | #menuContainer, #article_toolbar, #menuContainer ul, #article_toolbar ul { | ||
558 | position: static; | ||
559 | width: 100%; | ||
560 | height: auto; | ||
561 | } | ||
562 | |||
563 | #links li a, #article_toolbar a { | ||
564 | position: static; | ||
565 | color: #000; | ||
566 | } | ||
567 | |||
568 | #links li a { | ||
569 | padding: 1em; | ||
570 | min-width: 120px; | ||
571 | text-align: left; | ||
572 | } | ||
573 | |||
574 | #article_toolbar li { | ||
575 | margin-bottom: 1em; | ||
576 | margin-left: 0.5em; | ||
577 | } | ||
578 | |||
579 | } | ||
580 | |||
581 | @media screen and (max-width: 500px) { | ||
582 | .entrie, #article { | ||
583 | width: 17em; | ||
584 | } | ||
585 | .entrie h2 { | ||
586 | width: 100%; | ||
587 | max-width: none; | ||
588 | } | ||
589 | .entrie h2 a:hover, .entrie h2 a:focus { | ||
590 | padding-left: 1em; | ||
591 | background: #FFF; | ||
592 | color: #000; | ||
593 | } | ||
594 | .entrie h2:after { | ||
595 | content:none; | ||
596 | } | ||
597 | |||
598 | .messages { | ||
599 | width: 100%!important; | ||
600 | } | ||
601 | |||
602 | #sort { | ||
603 | margin: 3em auto 0; | ||
604 | max-width: none; | ||
605 | text-align: center; | ||
606 | } | ||
607 | #config { | ||
608 | margin: 7em auto 0; | ||
609 | max-width: none; | ||
610 | } | ||
611 | #config label { width: 100%; } | ||
612 | .results { | ||
613 | max-width: none; | ||
614 | margin-bottom: 1em; | ||
615 | } | ||
616 | |||
617 | footer p:first-child { | ||
618 | float: none; | ||
619 | } | ||
620 | footer { | ||
621 | position:static; | ||
622 | } | ||
623 | } | ||
624 | |||
625 | |||
626 | .w600p { | ||
627 | width: 70%; | ||
628 | margin: auto; | ||
629 | } | ||
630 | |||
631 | .tagForm { | ||
632 | margin: 1em 0; | ||
633 | } | ||
634 | |||
635 | .tagForm p { | ||
636 | font-style: italic; | ||
637 | margin: 0; | ||
638 | font-size: 0.8em; | ||
639 | color: #999; | ||
640 | } | ||
641 | |||
642 | .tagForm label { | ||
643 | width: auto; | ||
644 | margin-right: 1em; | ||
645 | } | ||
646 | |||
647 | .back:before { | ||
648 | font-family: "icomoon"; | ||
649 | } | ||
650 | |||
651 | .back.link { | ||
652 | color: #000; | ||
653 | text-decoration: none; | ||
654 | } | ||
655 | |||
656 | .back.link:before { | ||
657 | margin-right: 0.5em; | ||
658 | } | ||
659 | |||
660 | .tag-list a { | ||
661 | color: #000; | ||
662 | text-decoration: none; | ||
663 | } | ||
664 | |||
665 | .tag-list li { | ||
666 | display: inline-block; | ||
667 | margin-right: 1em; | ||
668 | } | ||
669 | |||
670 | a:hover { | ||
671 | text-decoration: underline; | ||
672 | } | ||
673 | |||
674 | .tag { | ||
675 | background: #000; | ||
676 | color: #FFF; | ||
677 | padding: 0.5em 1em; | ||
678 | text-decoration: none; | ||
679 | } | ||
680 | |||
681 | .tag:hover, .tag:focus { | ||
682 | background: #FFF; | ||
683 | color: #000; | ||
684 | } \ No newline at end of file | ||
diff --git a/themes/courgette/edit-tags.twig b/themes/courgette/edit-tags.twig deleted file mode 100644 index bcddbe46..00000000 --- a/themes/courgette/edit-tags.twig +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | {% block title %}edit tags{% endblock %} | ||
3 | {% block menu %} | ||
4 | {% include '_menu.twig' %} | ||
5 | {% endblock %} | ||
6 | {% block content %} | ||
7 | {% if tags is empty %} | ||
8 | <em>no tags</em> | ||
9 | {% endif %} | ||
10 | <ul class='tag-list'> | ||
11 | {% for tag in tags %}<li>{{ tag.value }} <a href="./?action=remove_tag&tag_id={{ tag.id }}&id={{ entry_id }}">✘</a></li>{% endfor %} | ||
12 | </ul> | ||
13 | <form method="post" action="./?action=add_tag" class="tagForm"> | ||
14 | <label for="value">Add tags: </label><input type="text" placeholder="interview, editorial, video" id="value" name="value" required="required" /> | ||
15 | <p>{% trans "You can enter multiple tags, separated by commas." %}</p> | ||
16 | <input type="hidden" name="entry_id" value="{{ entry_id }}" /> | ||
17 | <input type="submit" value="Tag" /> | ||
18 | </form> | ||
19 | <a class="back link" href="./?view=view&id={{ entry_id }}">{% trans "return to article" %}</a> | ||
20 | {% endblock %} | ||
diff --git a/themes/courgette/error.twig b/themes/courgette/error.twig deleted file mode 100755 index 4d4db1f3..00000000 --- a/themes/courgette/error.twig +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | {% block title %}{% trans "plop" %}{% endblock %} | ||
3 | {% block content %} | ||
4 | {{ msg|raw }} | ||
5 | <p>Don't forget <a href="http://doc.wallabag.org">the documentation</a>.</p> | ||
6 | {% endblock %} \ No newline at end of file | ||
diff --git a/themes/courgette/font/icomoon.eot b/themes/courgette/font/icomoon.eot deleted file mode 100755 index ff2d109d..00000000 --- a/themes/courgette/font/icomoon.eot +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/font/icomoon.svg b/themes/courgette/font/icomoon.svg deleted file mode 100755 index 8968452d..00000000 --- a/themes/courgette/font/icomoon.svg +++ /dev/null | |||
@@ -1,23 +0,0 @@ | |||
1 | <?xml version="1.0" standalone="no"?> | ||
2 | <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > | ||
3 | <svg xmlns="http://www.w3.org/2000/svg"> | ||
4 | <metadata>Generated by IcoMoon</metadata> | ||
5 | <defs> | ||
6 | <font id="icomoon" horiz-adv-x="512"> | ||
7 | <font-face units-per-em="512" ascent="480" descent="-32" /> | ||
8 | <missing-glyph horiz-adv-x="512" /> | ||
9 | <glyph unicode=" " d="" horiz-adv-x="256" /> | ||
10 | <glyph unicode="" d="M256 389.333c-94.272 0-170.667-76.416-170.667-170.666s76.394-170.667 170.667-170.667 170.667 76.416 170.667 170.667-76.394 170.666-170.667 170.666zM335.082 169.749c8.341-8.341 8.341-21.824 0-30.166-4.16-4.16-9.622-6.25-15.082-6.25s-10.923 2.091-15.082 6.25l-48.918 48.918-48.917-48.918c-4.16-4.16-9.621-6.25-15.083-6.25s-10.923 2.091-15.083 6.25c-8.341 8.341-8.341 21.824 0 30.166l48.917 48.918-48.917 48.917c-8.341 8.341-8.341 21.824 0 30.166s21.824 8.341 30.166 0l48.917-48.917 48.918 48.917c8.341 8.341 21.824 8.341 30.166 0s8.341-21.824 0-30.166l-48.918-48.917 48.918-48.918z" /> | ||
11 | <glyph unicode="" d="M0 25.856v263.168q0 91.648 43.52 142.336t132.608 50.688h280.576q-2.56-2.56-26.624-27.136t-51.2-51.712-55.808-55.808-48.64-47.616-21.504-18.944q-7.68 0-7.68 8.192v79.872h-24.576q-30.208 0-48.128-3.072t-32.256-13.312-19.968-29.184-6.144-49.152v-134.144zM34.304-34.048q2.56 2.56 27.136 27.136t51.2 51.712 55.808 56.32 48.64 47.616 20.992 18.432q7.68 0 7.68-8.192v-79.872h24.576q59.392 0 82.944 18.432t23.040 76.288v134.144l114.688 114.176v-263.168q0-91.648-43.008-142.336t-133.12-50.688h-280.576z" horiz-adv-x="491" /> | ||
12 | <glyph unicode="" d="M150.528 104.192q7.168 7.168 17.408 7.168t18.432-7.168q16.384-17.408 0-35.84l-21.504-20.48q-28.672-28.672-67.584-28.672-39.936 0-68.608 28.672t-28.672 67.584q0 39.936 28.672 68.608l75.776 75.776q35.84 34.816 73.728 39.424t65.536-22.016q8.192-8.192 8.192-18.432t-8.192-18.432q-18.432-16.384-35.84 0-25.6 24.576-67.584-17.408l-75.776-74.752q-13.312-13.312-13.312-32.768t13.312-31.744q13.312-13.312 32.256-13.312t32.256 13.312zM380.928 398.080q28.672-28.672 28.672-67.584 0-39.936-28.672-68.608l-80.896-80.896q-37.888-36.864-76.8-36.864-31.744 0-57.344 25.6-7.168 7.168-7.168 17.408t7.168 18.432q7.168 7.168 17.92 7.168t17.92-7.168q25.6-24.576 62.464 12.288l80.896 79.872q14.336 14.336 14.336 32.768 0 19.456-14.336 31.744-12.288 13.312-28.672 15.872t-30.72-10.752l-25.6-25.6q-8.192-7.168-18.432-7.168t-17.408 7.168q-17.408 17.408 0 35.84l25.6 25.6q27.648 27.648 65.024 26.112t66.048-31.232z" horiz-adv-x="410" /> | ||
13 | <glyph unicode="" d="M438.784 96v-36.352q0-7.68-5.12-12.8t-13.312-5.632h-401.92q-7.68 0-12.8 5.632t-5.632 12.8v36.352q0 7.68 5.632 12.8t12.8 5.632h401.92q7.68 0 13.312-5.632t5.12-12.8zM438.784 242.432v-36.864q0-7.168-5.12-12.8t-13.312-5.12h-401.92q-7.68 0-12.8 5.12t-5.632 12.8v36.864q0 7.168 5.632 12.8t12.8 5.12h401.92q7.68 0 13.312-5.12t5.12-12.8zM438.784 388.352v-36.352q0-7.68-5.12-12.8t-13.312-5.632h-401.92q-7.68 0-12.8 5.632t-5.632 12.8v36.352q0 7.68 5.632 13.312t12.8 5.12h401.92q7.68 0 13.312-5.12t5.12-13.312z" horiz-adv-x="439" /> | ||
14 | <glyph unicode="" d="M235.52 459.52q97.28 0 166.4-69.12t69.12-166.4-69.12-166.4-166.4-69.12-166.4 69.12-69.12 166.4 69.12 166.4 166.4 69.12zM235.52 39.68q76.8 0 130.56 54.272t53.76 130.048q0 76.8-53.76 130.56t-130.56 53.76q-75.776 0-130.048-53.76t-54.272-130.56q0-75.776 54.272-130.048t130.048-54.272zM253.952 357.12v-124.928l76.8-76.8-25.6-25.6-87.040 87.040v140.288h35.84z" horiz-adv-x="471" /> | ||
15 | <glyph unicode="" d="M127.488 44.8q-17.408 0-28.672 14.336l-92.16 120.832q-8.192 12.288-6.144 26.624t13.312 23.552 26.112 7.168 24.064-14.336l60.416-78.848 151.552 242.688q8.192 12.288 22.016 15.36t27.136-4.096q12.288-8.192 15.36-22.016t-4.096-27.136l-179.2-286.72q-10.24-16.384-28.672-16.384z" horiz-adv-x="342" /> | ||
16 | <glyph unicode="" d="M225.28 449.28l61.44-172.032h163.84l-134.144-100.352 48.128-178.176-139.264 106.496-139.264-106.496 48.128 178.176-134.144 100.352h163.84z" horiz-adv-x="451" /> | ||
17 | <glyph unicode="" d="M460.8 49.92q-44.032 77.824-106.496 100.864t-168.96 23.040v-111.616l-185.344 171.008 185.344 164.864v-98.304q46.080 0 86.016-13.824t67.072-35.84 49.152-48.64 35.328-53.248 22.528-48.64 12.288-35.328z" horiz-adv-x="461" /> | ||
18 | <glyph unicode="" d="M471.040 370.432q-18.432-27.648-48.128-50.176v-12.288q0-66.56-30.72-128t-95.232-103.936-148.48-42.496q-81.92 0-148.48 43.008 7.168-1.024 23.552-1.024 67.584 0 119.808 40.96-31.744 1.024-56.32 19.456t-33.792 48.128q5.12-2.048 17.408-2.048 13.312 0 25.6 3.072-33.792 7.168-55.296 33.792t-21.504 61.44v1.024q18.432-10.24 43.008-12.288-43.008 29.696-43.008 80.896 0 24.576 13.312 48.128 78.848-96.256 199.68-100.352-3.072 9.216-3.072 21.504 0 39.936 28.16 68.096t69.12 28.16q41.984 0 69.632-29.696 30.72 6.144 61.44 22.528-10.24-33.792-41.984-53.248 28.672 4.096 55.296 15.36z" horiz-adv-x="471" /> | ||
19 | <glyph unicode="" d="M0 314.112l75.776 75.776 180.224-179.712 180.224 179.712 75.776-75.776-256-256-75.776 75.776z" /> | ||
20 | <glyph unicode="" d="M475.648 50.432v219.136q-9.216-10.24-19.968-18.944-76.288-58.368-121.856-96.256-14.336-12.288-23.552-19.456t-24.576-13.824-29.184-6.656h-1.024q-13.312 0-29.184 6.656t-24.576 13.824-23.552 19.456q-45.056 37.888-121.856 96.256-10.752 8.704-19.968 18.944v-219.136q0-4.096 3.072-6.656t6.144-2.56h420.864q3.584 0 6.144 2.56t3.072 6.656zM475.648 350.464v7.168t-0.512 3.584-0.512 3.584-1.536 2.56-2.56 2.048-4.096 1.024h-420.864q-3.584 0-6.144-3.072t-3.072-6.144q0-48.128 41.984-81.408 55.296-43.52 114.688-90.624 2.048-1.024 10.24-8.192t12.8-10.752 12.8-9.216 14.336-7.68 12.288-2.56h1.024q5.632 0 12.288 2.56t14.336 7.68 12.8 9.216 12.8 10.752 10.24 8.192q59.392 47.104 114.688 90.624 15.36 12.288 28.672 33.28t13.312 37.376zM512 361.216v-310.784q0-18.944-13.312-32.256t-32.256-13.824h-420.864q-18.432 0-32.256 13.824t-13.312 32.256v310.784q0 18.944 13.312 32.256t32.256 13.312h420.864q18.944 0 32.256-13.312t13.312-32.256z" /> | ||
21 | <glyph unicode="" d="M0 133.888l256 256 256-256-75.776-75.776-180.224 179.712-180.224-179.712z" /> | ||
22 | <glyph unicode="" d="M25.6 279.296q62.464-35.84 168.96-35.84t168.96 35.84l-27.648-248.832q-1.024-7.168-17.92-18.432t-51.2-22.016-72.192-10.752-71.68 10.752-51.2 22.016-18.432 18.432zM275.456 432.896q48.128-9.216 80.896-28.16t32.768-36.352v-5.12q0-29.696-57.344-50.688t-137.216-20.992-137.216 20.992-57.344 50.688v5.12q0 17.408 32.768 36.352t80.896 28.16l21.504 24.576q11.264 13.312 35.84 13.312h47.104q26.624 0 35.84-13.312zM247.808 375.552h43.008q-47.104 56.32-53.248 64.512-7.168 8.192-16.384 8.192h-52.224q-11.264 0-16.384-8.192l-54.272-64.512h43.008l32.768 33.792h41.984z" horiz-adv-x="389" /> | ||
23 | </font></defs></svg> \ No newline at end of file | ||
diff --git a/themes/courgette/font/icomoon.ttf b/themes/courgette/font/icomoon.ttf deleted file mode 100755 index 52463a87..00000000 --- a/themes/courgette/font/icomoon.ttf +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/font/icomoon.woff b/themes/courgette/font/icomoon.woff deleted file mode 100755 index ddb96f29..00000000 --- a/themes/courgette/font/icomoon.woff +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/home.twig b/themes/courgette/home.twig deleted file mode 100755 index 811298eb..00000000 --- a/themes/courgette/home.twig +++ /dev/null | |||
@@ -1,62 +0,0 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | {% block title %} | ||
3 | {% if view == 'fav' %} | ||
4 | {% trans "favoris" %} | ||
5 | {% elseif view == 'archive' %} | ||
6 | {% trans "archive" %} | ||
7 | {% else %} | ||
8 | {% trans "unread" %} | ||
9 | {% endif %} | ||
10 | {% endblock %} | ||
11 | {% block menu %} | ||
12 | {% include '_menu.twig' %} | ||
13 | {% endblock %} | ||
14 | {% block precontent %} | ||
15 | {% if entries|length > 1 %} | ||
16 | <ul id="sort"> | ||
17 | <li><a href="./?sort=ia&view={{ view }}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/top.png" alt="{% trans "by date asc" %}" title="{% trans "by date asc" %}" /></a> {% trans "by date" %} <a href="./?sort=id&view={{ view }}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/down.png" alt="{% trans "by date desc" %}" title="{% trans "by date desc" %}" /></a></li> | ||
18 | <li><a href="./?sort=ta&view={{ view }}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/top.png" alt="{% trans "by title asc" %}" title="{% trans "by title asc" %}" /></a> {% trans "by title" %} <a href="./?sort=td&view={{ view }}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/down.png" alt="{% trans "by title desc" %}" title="{% trans "by title desc" %}" /></a></li> | ||
19 | </ul> | ||
20 | {% endif %} | ||
21 | {% endblock %} | ||
22 | {% block content %} | ||
23 | {% if entries is empty %} | ||
24 | <div class="messages warning"><p>{% trans "No link available here!" %}</p></div> | ||
25 | {% else %} | ||
26 | {% block pager %} | ||
27 | {% if nb_results > 1 %} | ||
28 | <div class="results"> | ||
29 | <div class="nb-results">{{ nb_results }} {% trans "results" %}{% if search_term is defined %}{% trans " found for « " %} {{ search_term }} »{% endif %}</div> | ||
30 | {{ page_links | raw }} | ||
31 | </div> | ||
32 | {% elseif nb_results == 1 %} | ||
33 | {% if search_term is defined %} | ||
34 | <div class="results"> | ||
35 | <div class="nb-results">{% trans "Only one result found for " %} « {{ search_term }} »</div> | ||
36 | </div> | ||
37 | {% endif %} | ||
38 | {% endif %} | ||
39 | {% endblock %} | ||
40 | {% for entry in entries %} | ||
41 | <div id="entry-{{ entry.id|e }}" class="entrie"> | ||
42 | <h2><a href="index.php?view=view&id={{ entry.id|e }}">{{ entry.title|raw }}</a></h2> | ||
43 | <ul class="tools"> | ||
44 | <li><a title="{% trans "toggle mark as read" %}" class="tool {% if entry.is_read == 0 %}archive-off{% else %}archive{% endif %}" href="./?action=toggle_archive&id={{ entry.id|e }}"><span>{% trans "toggle mark as read" %}</span></a></li> | ||
45 | <li><a title="{% trans "toggle favorite" %}" class="tool {% if entry.is_fav == 0 %}fav-off{% else %}fav{% endif %}" href="./?action=toggle_fav&id={{ entry.id|e }}"><span>{% trans "toggle favorite" %}</span></a></li> | ||
46 | <li><a title="{% trans "delete" %}" class="tool delete" href="./?action=delete&id={{ entry.id|e }}"><span>{% trans "delete" %}</span></a></li> | ||
47 | <li><a href="{{ entry.url|e }}" target="_blank" title="{% trans "original" %} : {{ entry.title|e }}" class="tool link"><span>{{ entry.url | e | getDomain }}</span></a></li> | ||
48 | <li><a target="_blank" title="{% trans "estimated reading time:" %} {{ entry.content| getReadingTime }} min" class="tool reading-time"><span>{{ entry.content| getReadingTime }} min</span></a></li> | ||
49 | </ul> | ||
50 | <p>{{ entry.content|striptags|slice(0, 300) }}...</p> | ||
51 | </div> | ||
52 | {% endfor %} | ||
53 | |||
54 | {{ block('pager') }} | ||
55 | |||
56 | {% if tag %}<a title="{% trans "Download the articles from this tag in an epub" %}" href="./?epub&method=tag&value={{ tag.value }}">{% trans "Download the articles from this tag in an epub" %}</a> | ||
57 | {% elseif search_term is defined %}<a title="{% trans "Download the articles from this search in an epub" %}" href="./?epub&method=search&value={{ search_term }}">{% trans "Download the articles from this search in an epub" %}</a> | ||
58 | {% else %}<a title="{% trans "Download the articles from this category in an epub" %}" href="./?epub&method=category&value={{ view }}">{% trans "Download the articles from this category in an epub" %}</a>{% endif %} | ||
59 | |||
60 | {% endif %} | ||
61 | |||
62 | {% endblock %} \ No newline at end of file | ||
diff --git a/themes/courgette/img/apple-touch-icon-144x144-precomposed.png b/themes/courgette/img/apple-touch-icon-144x144-precomposed.png deleted file mode 100755 index 557b479c..00000000 --- a/themes/courgette/img/apple-touch-icon-144x144-precomposed.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/apple-touch-icon-72x72-precomposed.png b/themes/courgette/img/apple-touch-icon-72x72-precomposed.png deleted file mode 100755 index e167d3a4..00000000 --- a/themes/courgette/img/apple-touch-icon-72x72-precomposed.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/apple-touch-icon.png b/themes/courgette/img/apple-touch-icon.png deleted file mode 100755 index 4d222fba..00000000 --- a/themes/courgette/img/apple-touch-icon.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/bg-select.png b/themes/courgette/img/bg-select.png deleted file mode 100644 index 3a77d0eb..00000000 --- a/themes/courgette/img/bg-select.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/backtotop.png b/themes/courgette/img/default/backtotop.png deleted file mode 100755 index 051238ef..00000000 --- a/themes/courgette/img/default/backtotop.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/bad-display.png b/themes/courgette/img/default/bad-display.png deleted file mode 100755 index 6866799f..00000000 --- a/themes/courgette/img/default/bad-display.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/checkmark-off.png b/themes/courgette/img/default/checkmark-off.png deleted file mode 100755 index 3db5a06d..00000000 --- a/themes/courgette/img/default/checkmark-off.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/checkmark-on.png b/themes/courgette/img/default/checkmark-on.png deleted file mode 100755 index cd3abb2c..00000000 --- a/themes/courgette/img/default/checkmark-on.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/clock.png b/themes/courgette/img/default/clock.png deleted file mode 100755 index 6164e92b..00000000 --- a/themes/courgette/img/default/clock.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/down.png b/themes/courgette/img/default/down.png deleted file mode 100755 index b9d536a7..00000000 --- a/themes/courgette/img/default/down.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/envelop.png b/themes/courgette/img/default/envelop.png deleted file mode 100755 index 6be1c886..00000000 --- a/themes/courgette/img/default/envelop.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/flattr.png b/themes/courgette/img/default/flattr.png deleted file mode 100755 index 0404aaea..00000000 --- a/themes/courgette/img/default/flattr.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/left.png b/themes/courgette/img/default/left.png deleted file mode 100755 index a0a53631..00000000 --- a/themes/courgette/img/default/left.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/link.png b/themes/courgette/img/default/link.png deleted file mode 100755 index db62819d..00000000 --- a/themes/courgette/img/default/link.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/remove.png b/themes/courgette/img/default/remove.png deleted file mode 100755 index f8ad56a3..00000000 --- a/themes/courgette/img/default/remove.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/shaarli.png b/themes/courgette/img/default/shaarli.png deleted file mode 100755 index 1eb30f60..00000000 --- a/themes/courgette/img/default/shaarli.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/star-off.png b/themes/courgette/img/default/star-off.png deleted file mode 100755 index 6a0133a7..00000000 --- a/themes/courgette/img/default/star-off.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/star-on.png b/themes/courgette/img/default/star-on.png deleted file mode 100755 index a9f96eaa..00000000 --- a/themes/courgette/img/default/star-on.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/top.png b/themes/courgette/img/default/top.png deleted file mode 100755 index 954a8c0a..00000000 --- a/themes/courgette/img/default/top.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/default/twitter.png b/themes/courgette/img/default/twitter.png deleted file mode 100755 index cfcfe419..00000000 --- a/themes/courgette/img/default/twitter.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/favicon.ico b/themes/courgette/img/favicon.ico deleted file mode 100755 index 0e9ff779..00000000 --- a/themes/courgette/img/favicon.ico +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/logo.png b/themes/courgette/img/logo.png deleted file mode 100755 index 5305c77d..00000000 --- a/themes/courgette/img/logo.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/logo.svg b/themes/courgette/img/logo.svg deleted file mode 100644 index 865da440..00000000 --- a/themes/courgette/img/logo.svg +++ /dev/null | |||
@@ -1,8 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="64" height="64"> | ||
3 | <circle cx="32" cy="32" r="29.5" style="fill:#000" /> | ||
4 | <path d="m 16,18 33,0 0,26 -16.5,6 -16.5,-6 z" fill="#fff" /> | ||
5 | <rect width="9" height="2.5" x="17.5" y="24.5" fill="#000" /> | ||
6 | <rect width="9" height="2.5" x="28" y="24.5" fill="#000" /> | ||
7 | <rect width="9" height="2.5" x="38.5" y="24.5" fill="#000" /> | ||
8 | </svg> | ||
diff --git a/themes/courgette/img/messages/close.png b/themes/courgette/img/messages/close.png deleted file mode 100755 index 731aa018..00000000 --- a/themes/courgette/img/messages/close.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/messages/cross.png b/themes/courgette/img/messages/cross.png deleted file mode 100755 index 1514d51a..00000000 --- a/themes/courgette/img/messages/cross.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/messages/help.png b/themes/courgette/img/messages/help.png deleted file mode 100755 index 5c870176..00000000 --- a/themes/courgette/img/messages/help.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/messages/tick.png b/themes/courgette/img/messages/tick.png deleted file mode 100755 index a9925a06..00000000 --- a/themes/courgette/img/messages/tick.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/img/messages/warning.png b/themes/courgette/img/messages/warning.png deleted file mode 100755 index 628cf2da..00000000 --- a/themes/courgette/img/messages/warning.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/js/init.js b/themes/courgette/js/init.js deleted file mode 100755 index dca83906..00000000 --- a/themes/courgette/js/init.js +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | $.fn.ready(function () { | ||
2 | $('#menu').on('click', function(){ | ||
3 | $('body').toggleClass('menuOpen'); | ||
4 | $('#menuContainer, #article_toolbar').toggleClass('open'); | ||
5 | }); | ||
6 | }) \ No newline at end of file | ||
diff --git a/themes/courgette/layout.twig b/themes/courgette/layout.twig deleted file mode 100755 index 57c2cc98..00000000 --- a/themes/courgette/layout.twig +++ /dev/null | |||
@@ -1,32 +0,0 @@ | |||
1 | <!DOCTYPE html> | ||
2 | <!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="{{ lang }}"><![endif]--> | ||
3 | <!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="{{ lang }}"><![endif]--> | ||
4 | <!--[if IE 8]><html class="no-js ie8 ie678" lang="{{ lang }}"><![endif]--> | ||
5 | <!--[if gt IE 8]><html class="no-js" lang="{{ lang }}"><![endif]--> | ||
6 | <html lang="{{ lang }}"> | ||
7 | <head> | ||
8 | <meta name="viewport" content="initial-scale=1.0"> | ||
9 | <meta charset="utf-8"> | ||
10 | <!--[if IE]> | ||
11 | <meta http-equiv="X-UA-Compatible" content="IE=10"> | ||
12 | <![endif]--> | ||
13 | <title>{% block title %}{% endblock %} - wallabag</title> | ||
14 | {% include '_head.twig' %} | ||
15 | {% include '_bookmarklet.twig' %} | ||
16 | </head> | ||
17 | <body> | ||
18 | {% include '_top.twig' %} | ||
19 | <div id="main"> | ||
20 | <button id="menu"><span>Menu</span></button> | ||
21 | {% block menu %}{% endblock %} | ||
22 | {% block precontent %}{% endblock %} | ||
23 | {% block messages %} | ||
24 | {% include '_messages.twig' %} | ||
25 | {% endblock %} | ||
26 | <div id="content" class="w600p center"> | ||
27 | {% block content %}{% endblock %} | ||
28 | </div> | ||
29 | </div> | ||
30 | {% include '_footer.twig' %} | ||
31 | </body> | ||
32 | </html> \ No newline at end of file | ||
diff --git a/themes/courgette/login.twig b/themes/courgette/login.twig deleted file mode 100755 index 1fec0fc9..00000000 --- a/themes/courgette/login.twig +++ /dev/null | |||
@@ -1,32 +0,0 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | |||
3 | {% block title %}{% trans "login to your wallabag" %}{% endblock %} | ||
4 | {% block content %} | ||
5 | <form method="post" action="?login" name="loginform" id="loginForm"> | ||
6 | <fieldset class="w500p center"> | ||
7 | <h2 class="mbs txtcenter">{% trans "login to your wallabag" %}</h2> | ||
8 | {% if constant('MODE_DEMO') == 1 %}<p>{% trans "you are in demo mode, some features may be disabled." %}</p>{% endif %} | ||
9 | <div class="row"> | ||
10 | <label class="col w150p" for="login">{% trans "Login" %}</label> | ||
11 | <input class="col" type="text" id="login" name="login" placeholder="Login" tabindex="1" autofocus {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} /> | ||
12 | </div> | ||
13 | |||
14 | <div class="row"> | ||
15 | <label class="col w150p" for="password">{% trans "Password" %}</label> | ||
16 | <input class="col" type="password" id="password" name="password" placeholder="Password" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} /> | ||
17 | </div> | ||
18 | <div class="row"> | ||
19 | <label class="col w150p" for="longlastingsession">{% trans "Stay signed in" %}</label> | ||
20 | <div class="col"> | ||
21 | <input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3"> | ||
22 | <small class="inbl">{% trans "(Do not check on public computers)" %}</small> | ||
23 | </div> | ||
24 | </div> | ||
25 | <div class="row mts txtcenter"> | ||
26 | <button class="bouton" type="submit" tabindex="4">{% trans "Login" %}</button> | ||
27 | </div> | ||
28 | </fieldset> | ||
29 | <input type="hidden" name="returnurl" value="{{ referer }}"> | ||
30 | <input type="hidden" name="token" value="{{ token }}"> | ||
31 | </form> | ||
32 | {% endblock %} \ No newline at end of file | ||
diff --git a/themes/courgette/screenshot.jpg b/themes/courgette/screenshot.jpg deleted file mode 100755 index 44ee4b63..00000000 --- a/themes/courgette/screenshot.jpg +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/courgette/tags.twig b/themes/courgette/tags.twig deleted file mode 100755 index b11dce28..00000000 --- a/themes/courgette/tags.twig +++ /dev/null | |||
@@ -1,8 +0,0 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | {% block title %}tags{% endblock %} | ||
3 | {% block menu %} | ||
4 | {% include '_menu.twig' %} | ||
5 | {% endblock %} | ||
6 | {% block content %} | ||
7 | {% for tag in tags %}<a class="tag" href="./?view=tag&id={{ tag.id }}">{{ tag.value }}</a> {% if token != '' %}<a href="?feed&type=tag&user_id={{ user_id }}&tag_id={{ tag.id }}&token={{ token }}" target="_blank"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/rss.png" /></a>{% endif %} {% endfor %} | ||
8 | {% endblock %} \ No newline at end of file | ||
diff --git a/themes/courgette/theme.ini b/themes/courgette/theme.ini deleted file mode 100644 index 996d171f..00000000 --- a/themes/courgette/theme.ini +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | name = Courgette | ||
2 | description = Responsive black and white theme especially adapted to smartphones. | ||
3 | requirements[] = default | ||
diff --git a/themes/default/_head.twig b/themes/default/_head.twig index 8c939e30..277e3833 100755 --- a/themes/default/_head.twig +++ b/themes/default/_head.twig | |||
@@ -1,14 +1,36 @@ | |||
1 | <link rel="shortcut icon" type="image/x-icon" href="{{ poche_url }}themes/default/img/favicon.ico" /> | 1 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-152.png" sizes="152x152"> |
2 | <link rel="apple-touch-icon-precomposed" sizes="144x144" href="{{ poche_url }}themes/default/img/apple-touch-icon-144x144-precomposed.png"> | 2 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-152.png" sizes="152x152"> |
3 | <link rel="apple-touch-icon-precomposed" sizes="72x72" href="{{ poche_url }}themes/default/img/apple-touch-icon-72x72-precomposed.png"> | 3 | |
4 | <link rel="apple-touch-icon-precomposed" href="{{ poche_url }}themes/default/img/apple-touch-icon-precomposed.png"> | 4 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-144.png" sizes="144x144"> |
5 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-144.png" sizes="144x144"> | ||
6 | |||
7 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-120.png" sizes="120x120"> | ||
8 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-120.png" sizes="120x120"> | ||
9 | |||
10 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-114.png" sizes="114x114"> | ||
11 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-114.png" sizes="114x114"> | ||
12 | |||
13 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-76.png" sizes="76x76"> | ||
14 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-76.png" sizes="76x76"> | ||
15 | |||
16 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-72.png" sizes="72x72"> | ||
17 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-72.png" sizes="72x72"> | ||
18 | |||
19 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-57.png" sizes="57x57"> | ||
20 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon-57.png" sizes="57x57"> | ||
21 | |||
22 | <link rel="apple-touch-icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon.png"> | ||
23 | <link rel="icon" type="image/png" href="{{ poche_url }}themes/_global/img/appicon/apple-touch-icon.png"> | ||
24 | |||
25 | <link rel="shortcut icon" type="image/x-icon" href="{{ poche_url }}themes/_global/img/appicon/favicon.ico"> | ||
26 | |||
5 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/knacss.css" media="all"> | 27 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/knacss.css" media="all"> |
6 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/style.css" media="all"> | 28 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/style.css" media="all"> |
7 | <link rel="stylesheet" href="{{ poche_url }}themes/{{ theme }}/css/style-{{ theme }}.css" media="all" title="{{ theme }} theme"> | 29 | <link rel="stylesheet" href="{{ poche_url }}themes/{{ theme }}/css/style-{{ theme }}.css" media="all" title="{{ theme }} theme"> |
8 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/messages.css" media="all"> | 30 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/messages.css" media="all"> |
9 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/print.css" media="print"> | 31 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/print.css" media="print"> |
10 | <script src="{{ poche_url }}themes/default/js/jquery-2.0.3.min.js"></script> | 32 | <script src="{{ poche_url }}themes/_global/js/jquery-2.0.3.min.js"></script> |
11 | <script src="{{ poche_url }}themes/default/js/autoClose.js"></script> | 33 | <script src="{{ poche_url }}themes/_global/js/autoClose.js"></script> |
12 | <script src="{{ poche_url }}themes/default/js/closeMessage.js"></script> | 34 | <script src="{{ poche_url }}themes/default/js/closeMessage.js"></script> |
13 | <script src="{{ poche_url }}themes/default/js/saveLink.js"></script> | 35 | <script src="{{ poche_url }}themes/_global/js/saveLink.js"></script> |
14 | <script src="{{ poche_url }}themes/default/js/popupForm.js"></script> \ No newline at end of file | 36 | <script src="{{ poche_url }}themes/_global/js/popupForm.js"></script> |
diff --git a/themes/default/_highlight.twig b/themes/default/_highlight.twig new file mode 100755 index 00000000..cdb7c6bf --- /dev/null +++ b/themes/default/_highlight.twig | |||
@@ -0,0 +1,4 @@ | |||
1 | {# include excelent highlight.js library for code highligting, see http://highlightjs.org/ #} | ||
2 | <link rel="stylesheet" href="{{ poche_url }}themes/default/highlightjs/styles/github.css"> | ||
3 | <script src="{{ poche_url }}themes/default/highlightjs/highlight.pack.js"></script> | ||
4 | <script>hljs.initHighlightingOnLoad();</script> | ||
diff --git a/themes/default/_menu.twig b/themes/default/_menu.twig index 9b9a6062..eedf84f1 100644 --- a/themes/default/_menu.twig +++ b/themes/default/_menu.twig | |||
@@ -6,6 +6,7 @@ | |||
6 | <li><a href="javascript: void(null);" id="bagit">{% trans "save a link" %}</a><span id="bagit-arrow"></span></li> | 6 | <li><a href="javascript: void(null);" id="bagit">{% trans "save a link" %}</a><span id="bagit-arrow"></span></li> |
7 | <li><a href="javascript: void(null);" id="search">{% trans "search" %}</a><span id="search-arrow"></span></li> | 7 | <li><a href="javascript: void(null);" id="search">{% trans "search" %}</a><span id="search-arrow"></span></li> |
8 | <li><a href="./?view=config" {% if view == 'config' %}class="current"{% endif %}>{% trans "config" %}</a></li> | 8 | <li><a href="./?view=config" {% if view == 'config' %}class="current"{% endif %}>{% trans "config" %}</a></li> |
9 | <li><a href="./?view=about" {% if view == 'about' %}class="current"{% endif %}>{% trans "about" %}</a></li> | ||
9 | <li><a href="./?logout" title="{% trans "logout" %}">{% trans "logout" %}</a></li> | 10 | <li><a href="./?logout" title="{% trans "logout" %}">{% trans "logout" %}</a></li> |
10 | </ul> | 11 | </ul> |
11 | {% include '_pocheit-form.twig' %} | 12 | {% include '_pocheit-form.twig' %} |
diff --git a/themes/default/_search-form.twig b/themes/default/_search-form.twig index 33bea20d..0cf6097a 100755 --- a/themes/default/_search-form.twig +++ b/themes/default/_search-form.twig | |||
@@ -2,7 +2,7 @@ | |||
2 | <form method="get" action="index.php"> | 2 | <form method="get" action="index.php"> |
3 | <p> | 3 | <p> |
4 | <input type="hidden" name="view" value="search"></input> | 4 | <input type="hidden" name="view" value="search"></input> |
5 | <label>{% trans "Search" %}</label> : <input type="text" placeholder="{% trans "Enter your search here" %}" name="search" /> | 5 | <label>{% trans "Search" %}</label> : <input type="text" required placeholder="{% trans "Enter your search here" %}" name="search" id="searchfield" /> |
6 | <input type="submit" value="{% trans "Search" %} !"></input> | 6 | <input type="submit" value="{% trans "Search" %} !"></input> |
7 | </p> | 7 | </p> |
8 | </form> | 8 | </form> |
diff --git a/themes/default/_sorting.twig b/themes/default/_sorting.twig index ce3d38bc..3ce9b949 100755 --- a/themes/default/_sorting.twig +++ b/themes/default/_sorting.twig | |||
@@ -1,6 +1,6 @@ | |||
1 | {% if entries|length > 1 %} | 1 | {% if entries|length > 1 %} |
2 | <ul id="sort"> | 2 | <ul id="sort"> |
3 | <li><a href="./?sort=ia&view={{ view }}{% if search_term is defined %}&search={{ search_term }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/top.png" alt="{% trans "by date asc" %}" title="{% trans "by date asc" %}" /></a> {% trans "by date" %} <a href="./?sort=id&view={{ view }}{% if search_term is defined %}&search={{ search_term }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/down.png" alt="{% trans "by date desc" %}" title="{% trans "by date desc" %}" /></a></li> | 3 | <li><a href="./?sort=ia&view={{ view }}{% if searchterm is defined %}&search={{ searchterm }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/top.png" alt="{% trans "by date asc" %}" title="{% trans "by date asc" %}" /></a> {% trans "by date" %} <a href="./?sort=id&view={{ view }}{% if searchterm is defined %}&search={{ searchterm }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/down.png" alt="{% trans "by date desc" %}" title="{% trans "by date desc" %}" /></a></li> |
4 | <li><a href="./?sort=ta&view={{ view }}{% if search_term is defined %}&search={{ search_term }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/top.png" alt="{% trans "by title asc" %}" title="{% trans "by title asc" %}" /></a> {% trans "by title" %} <a href="./?sort=td&view={{ view }}{% if search_term is defined %}&search={{ search_term }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/down.png" alt="{% trans "by title desc" %}" title="{% trans "by title desc" %}" /></a></li> | 4 | <li><a href="./?sort=ta&view={{ view }}{% if searchterm is defined %}&search={{ searchterm }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/top.png" alt="{% trans "by title asc" %}" title="{% trans "by title asc" %}" /></a> {% trans "by title" %} <a href="./?sort=td&view={{ view }}{% if searchterm is defined %}&search={{ searchterm }}{% endif %}&id={{ id }}"><img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/down.png" alt="{% trans "by title desc" %}" title="{% trans "by title desc" %}" /></a></li> |
5 | </ul> | 5 | </ul> |
6 | {% endif %} | 6 | {% endif %} |
diff --git a/themes/default/about.twig b/themes/default/about.twig new file mode 100755 index 00000000..5ca3217c --- /dev/null +++ b/themes/default/about.twig | |||
@@ -0,0 +1,74 @@ | |||
1 | {% extends "layout.twig" %} | ||
2 | |||
3 | {% block title %}{% trans "About wallabag" %}{% endblock %} | ||
4 | {% block menu %} | ||
5 | {% include '_menu.twig' %} | ||
6 | {% endblock %} | ||
7 | {% block content %} | ||
8 | <h2>{% trans "About wallabag" %}</h2> | ||
9 | |||
10 | <dl> | ||
11 | <dt>{% trans "Project website" %}</dt> | ||
12 | <dd><a href="http://www.wallabag.org">http://www.wallabag.org</a></dd> | ||
13 | |||
14 | <dt>{% trans "Main developer" %}</dt> | ||
15 | <dd><a href="mailto:nicolas@loeuillet.org">Nicolas Lœuillet</a> — <a href="http://cdetc.fr">{% trans "website" %}</a></dd> | ||
16 | |||
17 | <dt>{% trans "Contributors:" %}</dt> | ||
18 | <dd><a href="https://github.com/wallabag/wallabag/graphs/contributors">{% trans "on Github" %}</a></dd> | ||
19 | |||
20 | <dt>{% trans "Bug reports" %}</dt> | ||
21 | <dd><a href="http://support.wallabag.org">{% trans "On our support website" %}</a> {% trans "or" %} <a href="https://github.com/wallabag/wallabag/issues">{% trans "on Github" %}</a></dd> | ||
22 | |||
23 | <dt>{% trans "License" %}</dt> | ||
24 | <dd><a href="http://en.wikipedia.org/wiki/MIT_License">MIT</a></dd> | ||
25 | |||
26 | <dt>{% trans "Version" %}</dt> | ||
27 | <dd>{{ constant('POCHE') }}</dd> | ||
28 | </dl> | ||
29 | |||
30 | <p>{% trans "wallabag is a read-it-later application: you can save a web page by keeping only content. Elements like ads or menus are deleted." %}</p> | ||
31 | |||
32 | <h2>{% trans "Helping wallabag" %}</h2> | ||
33 | |||
34 | <p>{% trans "wallabag is free and opensource. You can help us:" %}</p> | ||
35 | |||
36 | <dl> | ||
37 | <dt><a href="http://www.wallabag.org">{% trans "via Paypal" %}</a></dt> | ||
38 | |||
39 | <dt><a href="http://www.wallabag.org">{% trans "via Flattr" %}</a></dt> | ||
40 | </dl> | ||
41 | |||
42 | <h2>{% trans "Credits" %}</h2> | ||
43 | <dl> | ||
44 | <dt>PHP Readability</dt> | ||
45 | <dd><a href="https://bitbucket.org/fivefilters/php-readability">https://bitbucket.org/fivefilters/php-readability</a></dd> | ||
46 | |||
47 | <dt>Full Text RSS</dt> | ||
48 | <dd><a href="http://code.fivefilters.org/full-text-rss/src">http://code.fivefilters.org/full-text-rss/src</a></dd> | ||
49 | |||
50 | <dt>logo by Maylis Agniel</dt> | ||
51 | <dd><a href="https://github.com/wallabag/logo">https://github.com/wallabag/logo</a></dd> | ||
52 | |||
53 | <dt>icons</dt> | ||
54 | <dd><a href="http://icomoon.io">http://icomoon.io</a></dd> | ||
55 | |||
56 | <dt>PHP Simple HTML DOM Parser</dt> | ||
57 | <dd><a href="http://simplehtmldom.sourceforge.net/">http://simplehtmldom.sourceforge.net/</a></dd> | ||
58 | |||
59 | <dt>Session</dt> | ||
60 | <dd><a href="https://github.com/tontof/kriss_feed/blob/master/src/class/Session.php">https://github.com/tontof/kriss_feed/blob/master/src/class/Session.php</a></dd> | ||
61 | |||
62 | <dt>Twig</dt> | ||
63 | <dd><a href="http://twig.sensiolabs.org">http://twig.sensiolabs.org</a></dd> | ||
64 | |||
65 | <dt>Flash messages</dt> | ||
66 | <dd><a href="https://github.com/plasticbrain/PHP-Flash-Messages">https://github.com/plasticbrain/PHP-Flash-Messages</a></dd> | ||
67 | |||
68 | <dt>Pagination</dt> | ||
69 | <dd><a href="https://github.com/daveismyname/pagination">https://github.com/daveismyname/pagination</a></dd> | ||
70 | |||
71 | <dt>PHPePub</dt> | ||
72 | <dd><a href="https://github.com/Grandt/PHPePub/">https://github.com/Grandt/PHPePub/</a></dd> | ||
73 | </dl> | ||
74 | {% endblock %} | ||
diff --git a/themes/default/config.twig b/themes/default/config.twig index a65d2b2c..bac563cf 100755 --- a/themes/default/config.twig +++ b/themes/default/config.twig | |||
@@ -6,29 +6,29 @@ | |||
6 | {% endblock %} | 6 | {% endblock %} |
7 | {% block content %} | 7 | {% block content %} |
8 | <h2>{% trans "Saving articles" %}</h2> | 8 | <h2>{% trans "Saving articles" %}</h2> |
9 | <p>{% trans "There are several ways to save an article:" %} (<a href="http://doc.wallabag.org/" title="{% trans "read the documentation" %}">?</a>)</p> | 9 | <p>{% trans "There are several ways to save an article:" %} {% trans "(<a href=\"http://doc.wallabag.org/en/User_documentation/Save_your_first_article\" target=\"_blank\" title=\"Documentation\">?</a>)" %}</p> |
10 | <p> | ||
11 | <form method="get" action="index.php"> | ||
12 | <label class="addurl" for="config_plainurl">{% trans "By filling this field" %}:</label><br> | ||
13 | <input required placeholder="example.com/article" class="addurl" id="config_plainurl" name="plainurl" type="url" /> | ||
14 | <input type="submit" value="{% trans "bag it!" %}" /> | ||
15 | </form> | ||
16 | </p> | ||
17 | <h3>Browser Plugins</h3> | ||
10 | <ul> | 18 | <ul> |
11 | <li>Firefox: <a href="https://addons.mozilla.org/firefox/addon/wallabag/" title="download the firefox extension">{% trans "download the extension" %}</a></li> | 19 | <li><a href="https://addons.mozilla.org/firefox/addon/wallabag/" target="_blank">{% trans "Firefox Add-On" %}</a></li> |
12 | <li>Chrome: <a href="http://doc.wallabag.org/doku.php?id=users:chrome_extension" title="download the chrome extension">{% trans "download the extension" %}</a></li> | 20 | <li><a href="https://chrome.google.com/webstore/detail/wallabag/bepdcjnnkglfjehplaogpoonpffbdcdj" target="_blank">{% trans "Chrome Extension" %}</a></li> |
13 | <li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" title="download the application">{% trans "via F-Droid" %}</a> {% trans " or " %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" title="download the application">{% trans "via Google Play" %}</a></li> | ||
14 | <li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" title="download the iOS application">{% trans "download the application" %}</a></li> | ||
15 | <li>Windows Phone: <a href="http://www.windowsphone.com/en-us/store/app/wallabag/ff890514-348c-4d0b-9b43-153fff3f7450" title="download the window phone application">{% trans "download the application" %}</a></li> | ||
16 | <li> | ||
17 | <form method="get" action="index.php"> | ||
18 | <label class="addurl" for="config_plainurl">{% trans "By filling this field" %}:</label> | ||
19 | <input required placeholder="example.com/article" class="addurl" id="config_plainurl" name="plainurl" type="url" /> | ||
20 | <input type="submit" value="{% trans "bag it!" %}" /> | ||
21 | </form> | ||
22 | </li> | ||
23 | <li>{% trans "Bookmarklet: drag & drop this link to your bookmarks bar" %} <a id="bookmarklet" ondragend="this.click();" title="i am a bookmarklet, use me !" href="javascript:if(top['bookmarklet-url@wallabag.org']){top['bookmarklet-url@wallabag.org'];}else{(function(){var%20url%20=%20location.href%20||%20url;window.open('{{ poche_url }}?action=add&url='%20+%20btoa(url),'_self');})();void(0);}">{% trans "bag it!" %}</a></li> | ||
24 | </ul> | 21 | </ul> |
25 | 22 | <h3>Mobile Apps</h3> | |
26 | <h2>{% trans "Upgrading wallabag" %}</h2> | ||
27 | <ul> | 23 | <ul> |
28 | <li>{% trans "Installed version" %} : <strong>{{ constant('POCHE') }}</strong></li> | 24 | <li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">{% trans "via F-Droid" %}</a> {% trans " or " %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">{% trans "via Google Play" %}</a></li> |
29 | <li>{% trans "Latest stable version" %} : {{ prod }}. {% if compare_prod == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent stable version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %}</li> | 25 | <li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" target="_blank">{% trans "download the application" %}</a></li> |
30 | {% if constant('DEBUG_POCHE') == 1 %}<li>{% trans "Latest dev version" %} : {{ dev }}. {% if compare_dev == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent development version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %}</li>{% endif %} | 26 | <li>Windows Phone: <a href="http://www.windowsphone.com/en-us/store/app/wallabag/ff890514-348c-4d0b-9b43-153fff3f7450" target="_blank">{% trans "download the application" %}</a></li> |
31 | </ul> | 27 | </ul> |
28 | <h3>{% trans "Bookmarklet" %}</h3> | ||
29 | <p> | ||
30 | {% trans "Drag & drop this link to your bookmarks bar:" %} <a id="bookmarklet" ondragend="this.click();" href="javascript:if(top['bookmarklet-url@wallabag.org']){top['bookmarklet-url@wallabag.org'];}else{(function(){var%20url%20=%20location.href%20||%20url;window.open('{{ poche_url }}?action=add&url='%20+%20btoa(url),'_self');})();void(0);}">{% trans "bag it!" %}</a> | ||
31 | </p> | ||
32 | 32 | ||
33 | <h2>{% trans "Feeds" %}</h2> | 33 | <h2>{% trans "Feeds" %}</h2> |
34 | {% if token == '' %} | 34 | {% if token == '' %} |
@@ -39,14 +39,16 @@ | |||
39 | <li><a href="?feed&type=fav&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Favorites feed" %}</a></li> | 39 | <li><a href="?feed&type=fav&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Favorites feed" %}</a></li> |
40 | <li><a href="?feed&type=archive&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Archive feed" %}</a></li> | 40 | <li><a href="?feed&type=archive&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Archive feed" %}</a></li> |
41 | </ul> | 41 | </ul> |
42 | <p>{% trans "Your token:" %} <strong>{{token}}</strong></p> | 42 | <p class="more-info"> |
43 | <p>{% trans "Your user id:" %} <strong>{{user_id}}</strong></p> | 43 | {% trans "Your token:" %} <strong>{{token}}</strong><br> |
44 | <p>{% trans "You can regenerate your token: <a href='?feed&action=generate'>generate!</a>." %}</p> | 44 | {% trans "Your user id:" %} <strong>{{user_id}}</strong><br> |
45 | {% trans "You can regenerate your token: <a href='?feed&action=generate'>generate!</a>." %} | ||
46 | </p> | ||
45 | {% endif %} | 47 | {% endif %} |
46 | 48 | ||
47 | <h2>{% trans "Change your theme" %}</h2> | 49 | <h2>{% trans "Change your theme" %}</h2> |
48 | <form method="post" action="?updatetheme" name="changethemeform"> | 50 | <form method="post" action="?updatetheme" name="changethemeform"> |
49 | <fieldset class="w500p"> | 51 | <fieldset class="w500p inline"> |
50 | <div class="row"> | 52 | <div class="row"> |
51 | <label class="col w150p" for="theme">{% trans "Theme:" %}</label> | 53 | <label class="col w150p" for="theme">{% trans "Theme:" %}</label> |
52 | <select class="col" id="theme" name="theme"> | 54 | <select class="col" id="theme" name="theme"> |
@@ -65,7 +67,7 @@ | |||
65 | 67 | ||
66 | <h2>{% trans "Change your language" %}</h2> | 68 | <h2>{% trans "Change your language" %}</h2> |
67 | <form method="post" action="?updatelanguage" name="changelanguageform"> | 69 | <form method="post" action="?updatelanguage" name="changelanguageform"> |
68 | <fieldset class="w500p"> | 70 | <fieldset class="w500p inline"> |
69 | <div class="row"> | 71 | <div class="row"> |
70 | <label class="col w150p" for="language">{% trans "Language:" %}</label> | 72 | <label class="col w150p" for="language">{% trans "Language:" %}</label> |
71 | <select class="col" id="language" name="language"> | 73 | <select class="col" id="language" name="language"> |
@@ -82,35 +84,14 @@ | |||
82 | <input type="hidden" name="token" value="{{ token }}"> | 84 | <input type="hidden" name="token" value="{{ token }}"> |
83 | </form> | 85 | </form> |
84 | 86 | ||
85 | {% if http_auth == 0 %} | 87 | <h2><a name="import"></a>{% trans "Import" %}</h2> |
86 | <h2>{% trans "Change your password" %}</h2> | ||
87 | <form method="post" action="?config" name="loginform"> | ||
88 | <fieldset class="w500p"> | ||
89 | <div class="row"> | ||
90 | <label class="col w150p" for="password">{% trans "New password:" %}</label> | ||
91 | <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2"> | ||
92 | </div> | ||
93 | <div class="row"> | ||
94 | <label class="col w150p" for="password_repeat">{% trans "Repeat your new password:" %}</label> | ||
95 | <input class="col" type="password" id="password_repeat" name="password_repeat" placeholder="{% trans "Password" %}" tabindex="3"> | ||
96 | </div> | ||
97 | <div class="row mts txtcenter"> | ||
98 | <button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button> | ||
99 | </div> | ||
100 | </fieldset> | ||
101 | <input type="hidden" name="returnurl" value="{{ referer }}"> | ||
102 | <input type="hidden" name="token" value="{{ token }}"> | ||
103 | </form> | ||
104 | {% endif %} | ||
105 | |||
106 | <h2>{% trans "Import" %}</h2> | ||
107 | <p>{% trans "You can import your Pocket, Readability, Instapaper, Wallabag or any data in appropriate json or html format." %}</p> | 88 | <p>{% trans "You can import your Pocket, Readability, Instapaper, Wallabag or any data in appropriate json or html format." %}</p> |
108 | <p>{% trans "Please select export file on your computer and press \"Import\" button below.<br>Wallabag will parse your file, insert all URLs and start fetching of articles if required.<br>Fetching process is controlled by two constants in your config file: IMPORT_LIMIT (how many articles are fetched at once) and IMPORT_DELAY (delay between fetch of next batch of articles)." %}</p> | 89 | <p>{% trans "Please select export file on your computer and press \"Import\" button below. Wallabag will parse your file, insert all URLs and start fetching of articles if required." %}</p> |
109 | <form method="post" action="?import" name="uploadfile" enctype="multipart/form-data"> | 90 | <form method="post" action="?import" name="uploadfile" enctype="multipart/form-data"> |
110 | <fieldset class="w500p"> | 91 | <fieldset class="w500p"> |
111 | <div class="row"> | 92 | <div class="row"> |
112 | <label class="col w150p" for="file">{% trans "File:" %}</label> | 93 | <label class="col w150p" for="file">{% trans "File:" %}</label> |
113 | <input class="col" type="file" id="file" name="file" tabindex="4"> | 94 | <input class="col" type="file" id="file" name="file" tabindex="4" required="required"> |
114 | </div> | 95 | </div> |
115 | <div class="row mts txtcenter"> | 96 | <div class="row mts txtcenter"> |
116 | <button class="bouton" type="submit" tabindex="4">{% trans "Import" %}</button> | 97 | <button class="bouton" type="submit" tabindex="4">{% trans "Import" %}</button> |
@@ -118,11 +99,11 @@ | |||
118 | </fieldset> | 99 | </fieldset> |
119 | </form> | 100 | </form> |
120 | <p><a href="?import">{% trans "You can click here to fetch content for articles with no content." %}</a></p> | 101 | <p><a href="?import">{% trans "You can click here to fetch content for articles with no content." %}</a></p> |
102 | <p class="more-info">{% trans "Fetching process is controlled by two constants in your config file: IMPORT_LIMIT (how many articles are fetched at once) and IMPORT_DELAY (delay between fetch of next batch of articles)." %}</p> | ||
121 | 103 | ||
122 | <h2>{% trans "Export your wallabag data" %}</h2> | 104 | <h2>{% trans "Export your wallabag data" %}</h2> |
123 | {% if constant('STORAGE') == 'sqlite' %} | 105 | <p><a href="?export" target="_blank">{% trans "Export JSON" %}</a><br> |
124 | <p><a href="?download" target="_blank">{% trans "Click here" %}</a> {% trans "to download your database." %}</p>{% endif %} | 106 | <span class="more-info">Data will be exported in a single JSON file.</span></p> |
125 | <p><a href="?export" target="_blank">{% trans "Click here" %}</a> {% trans "to export your wallabag data." %}</p> | ||
126 | 107 | ||
127 | <h2>{% trans "Fancy an E-Book ?" %}</h2> | 108 | <h2>{% trans "Fancy an E-Book ?" %}</h2> |
128 | <p>{% trans "Click to get all your articles in one ebook :" %} | 109 | <p>{% trans "Click to get all your articles in one ebook :" %} |
@@ -131,31 +112,56 @@ | |||
131 | <li><a href="./?mobi&method=all" title="Generate Mobi file">Mobi</a></li> | 112 | <li><a href="./?mobi&method=all" title="Generate Mobi file">Mobi</a></li> |
132 | <li><a href="./?pdf&method=all" title="Generate PDF file">PDF</a></li> | 113 | <li><a href="./?pdf&method=all" title="Generate PDF file">PDF</a></li> |
133 | </ul> | 114 | </ul> |
115 | </p> | ||
134 | 116 | ||
135 | <br>{% trans "This can <b>take a while</b> and can <b>even fail</b> if you have too many articles, depending on your server configuration." %}</p> | 117 | <span class="more-info">{% trans "This can <b>take a while</b> and can <b>even fail</b> if you have too many articles, depending on your server configuration." %}</span></p> |
136 | 118 | ||
119 | <h2><a name="cache"></a>{% trans "Cache" %}</h2> | ||
120 | <p><a href="?empty-cache">{% trans "Delete Cache" %}</a><br> | ||
121 | <span class="more-info">Deleting the cache may help with display or other problems.</span></p> | ||
122 | |||
123 | {% if http_auth == 0 %} | ||
124 | <h2>{% trans "Change your password" %}</h2> | ||
125 | <form method="post" action="?config" name="loginform"> | ||
126 | <fieldset class="w500p"> | ||
127 | <div class="row"> | ||
128 | <label class="col w150p" for="password">{% trans "New password:" %}</label> | ||
129 | <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2"> | ||
130 | </div> | ||
131 | <div class="row"> | ||
132 | <label class="col w150p" for="password_repeat">{% trans "Repeat your new password:" %}</label> | ||
133 | <input class="col" type="password" id="password_repeat" name="password_repeat" placeholder="{% trans "Password" %}" tabindex="3"> | ||
134 | </div> | ||
135 | <div class="row mts txtcenter"> | ||
136 | <button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button> | ||
137 | </div> | ||
138 | </fieldset> | ||
139 | <input type="hidden" name="returnurl" value="{{ referer }}"> | ||
140 | <input type="hidden" name="token" value="{{ token }}"> | ||
141 | </form> | ||
142 | {% endif %} | ||
137 | 143 | ||
138 | <h2>{% trans "Cache" %}</h2> | ||
139 | <p><a href="?empty-cache">{% trans "Click here" %}</a> {% trans "to delete cache." %}</p> | ||
140 | |||
141 | <h2>{% trans 'Add user' %}</h2> | 144 | <h2>{% trans 'Add user' %}</h2> |
142 | <p>{% trans 'Add a new user :' %}</p> | ||
143 | <form method="post" action="?newuser"> | 145 | <form method="post" action="?newuser"> |
144 | <fieldset class="w500p"> | 146 | <fieldset class="w500p"> |
145 | <div class="row"> | 147 | <div class="row"> |
146 | <label class="col w150p" for="newusername">{% trans 'Login for new user' %}</label> | 148 | <label class="col w150p" for="newusername">{% trans 'Login for new user' %}</label> |
147 | <input class="col" type="text" id="newusername" name="newusername" placeholder="{% trans 'Login' %}"> | 149 | <input class="col" type="text" id="newusername" name="newusername" placeholder="{% trans 'Login' %}" required> |
148 | </div> | 150 | </div> |
149 | <div class="row"> | 151 | <div class="row"> |
150 | <label class="col w150p" for="password4newuser">{% trans "Password for new user" %}</label> | 152 | <label class="col w150p" for="password4newuser">{% trans "Password for new user" %}</label> |
151 | <input class="col" type="password" id="password4newuser" name="password4newuser" placeholder="{% trans "Password" %}"> | 153 | <input class="col" type="password" id="password4newuser" name="password4newuser" placeholder="{% trans 'Password' %}" required> |
154 | </div> | ||
155 | <div class="row"> | ||
156 | <label class="col w150p" for="newuseremail">{% trans 'Email for new user (not required)' %}</label> | ||
157 | <input class="col" type="email" id="newuseremail" name="newuseremail" placeholder="{% trans 'Email' %}"> | ||
152 | </div> | 158 | </div> |
153 | <div class="row mts txtcenter"> | 159 | <div class="row mts txtcenter"> |
154 | <button type="submit">{% trans "Send" %}</button> | 160 | <button type="submit">{% trans "Add user" %}</button> |
155 | </div> | 161 | </div> |
156 | </fieldset> | 162 | </fieldset> |
157 | </form> | 163 | </form> |
158 | 164 | ||
159 | <h2>{% trans "Delete account" %}</h2> | 165 | <h2>{% trans "Delete account" %}</h2> |
160 | {% if not only_user %}<form method="post" action="?deluser"> | 166 | {% if not only_user %}<form method="post" action="?deluser"> |
161 | <p>{% trans "You can delete your account by entering your password and validating." %}<br /><b>{% trans "Be careful, data will be erased forever (that is a very long time)." %}</b></p> | 167 | <p>{% trans "You can delete your account by entering your password and validating." %}<br /><b>{% trans "Be careful, data will be erased forever (that is a very long time)." %}</b></p> |
@@ -165,9 +171,18 @@ | |||
165 | <input class="col" type="password" id="password4deletinguser" name="password4deletinguser" placeholder="{% trans "Password" %}"> | 171 | <input class="col" type="password" id="password4deletinguser" name="password4deletinguser" placeholder="{% trans "Password" %}"> |
166 | </div> | 172 | </div> |
167 | <div class="row mts txtcenter"> | 173 | <div class="row mts txtcenter"> |
168 | <button type="submit">{% trans "Send" %}</button> | 174 | <button type="submit">{% trans "Delete account" %}</button> |
169 | </div> | 175 | </div> |
170 | </form> | 176 | </form> |
171 | {% else %}<p>{% trans "You are the only user, you cannot delete your own account." %}<br /> | 177 | {% else %}<p>{% trans "You are the only user, you cannot delete your own account." %}</p> |
172 | {% trans "To completely remove wallabag, delete the wallabag folder on your web server." %}</p>{% endif %} | 178 | <p>{% trans "To completely remove wallabag, delete the wallabag folder on your web server (and eventual databases)." %}</p>{% endif %} |
179 | |||
180 | <h2>{% trans "Upgrading wallabag" %}</h2> | ||
181 | <ul> | ||
182 | <li>{% trans "Installed version" %}: <strong>{{ constant('POCHE') }}</strong></li> | ||
183 | <li>{% trans "Latest stable version" %}: {{ prod }}. {% if compare_prod == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent stable version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_prod }})</li> | ||
184 | {% if constant('DEBUG_POCHE') == 1 %}<li>{% trans "Latest dev version" %}: {{ dev }}. {% if compare_dev == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent development version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_dev }}){% endif %}</li> | ||
185 | </ul> | ||
186 | <p class="more-info">{% trans "You can clear cache to check the latest release." %}</p> | ||
187 | |||
173 | {% endblock %} | 188 | {% endblock %} |
diff --git a/themes/default/css/style-default.css b/themes/default/css/style-default.css index 889a9f5c..4406d48f 100755 --- a/themes/default/css/style-default.css +++ b/themes/default/css/style-default.css | |||
@@ -38,6 +38,16 @@ a.flattr span { | |||
38 | background-image: url('../img/default/flattr.png'); | 38 | background-image: url('../img/default/flattr.png'); |
39 | } | 39 | } |
40 | 40 | ||
41 | a.carrot span { | ||
42 | background-image: url('../../_global/img/icons/carrot-icon--black.png'); | ||
43 | background-size: 16px 16px; | ||
44 | } | ||
45 | |||
46 | a.diaspora span { | ||
47 | background-image: url('../../_global/img/icons/diaspora-icon--black.png'); | ||
48 | background-size: 16px 16px; | ||
49 | } | ||
50 | |||
41 | a.email span { | 51 | a.email span { |
42 | background-image: url('../img/default/envelop.png'); | 52 | background-image: url('../img/default/envelop.png'); |
43 | } | 53 | } |
@@ -56,4 +66,4 @@ a.bad-display span { | |||
56 | 66 | ||
57 | a.print span { | 67 | a.print span { |
58 | background-image: url('../img/default/print.png'); | 68 | background-image: url('../img/default/print.png'); |
59 | } \ No newline at end of file | 69 | } |
diff --git a/themes/default/css/style.css b/themes/default/css/style.css index e58ef81a..b25373d6 100755 --- a/themes/default/css/style.css +++ b/themes/default/css/style.css | |||
@@ -417,6 +417,15 @@ a.add-to-wallabag-link-after:after { | |||
417 | padding-left: 10px; | 417 | padding-left: 10px; |
418 | } | 418 | } |
419 | 419 | ||
420 | /* ========================================================================== | ||
421 | "Search" popup div related styles | ||
422 | ========================================================================== */ | ||
423 | |||
424 | /* Search form message needs a little more width, depending on translations */ | ||
425 | #search-form { | ||
426 | width: 420px; | ||
427 | } | ||
428 | |||
420 | .opacity03 { | 429 | .opacity03 { |
421 | /*opacity: 0.3;*/ | 430 | /*opacity: 0.3;*/ |
422 | } | 431 | } |
@@ -429,4 +438,10 @@ a.add-to-wallabag-link-after:after { | |||
429 | text-indent: 0; | 438 | text-indent: 0; |
430 | color: black; | 439 | color: black; |
431 | width: 50px; | 440 | width: 50px; |
432 | } \ No newline at end of file | 441 | } |
442 | |||
443 | pre code { | ||
444 | font-family: "Courier New", Courier, monospace; | ||
445 | border: 1px solid #ddd; | ||
446 | font-size: 0.96em; | ||
447 | } | ||
diff --git a/themes/default/edit-tags.twig b/themes/default/edit-tags.twig index bd498d26..c29427e0 100755 --- a/themes/default/edit-tags.twig +++ b/themes/default/edit-tags.twig | |||
@@ -5,9 +5,9 @@ | |||
5 | {% endblock %} | 5 | {% endblock %} |
6 | {% block content %} | 6 | {% block content %} |
7 | 7 | ||
8 | <script src="{{ poche_url }}themes/default/js/jquery-ui-1.10.4.custom.min.js"></script> | 8 | <script src="{{ poche_url }}themes/_global/js/jquery-ui-1.10.4.custom.min.js"></script> |
9 | <script src="{{ poche_url }}themes/default/js/autoCompleteTags.js"></script> | 9 | <script src="{{ poche_url }}themes/_global/js/autoCompleteTags.js"></script> |
10 | <link rel="stylesheet" href="{{ poche_url }}themes/default/css/jquery-ui-1.10.4.custom.min.css" media="all"> | 10 | <link rel="stylesheet" href="{{ poche_url }}themes/_global/css/jquery-ui-1.10.4.custom.min.css" media="all"> |
11 | 11 | ||
12 | <div id="article"> | 12 | <div id="article"> |
13 | <header class="mbm"> | 13 | <header class="mbm"> |
@@ -16,15 +16,15 @@ | |||
16 | </div> | 16 | </div> |
17 | 17 | ||
18 | {% if tags is empty %} | 18 | {% if tags is empty %} |
19 | no tags | 19 | {% trans "no tags" %} |
20 | {% endif %} | 20 | {% endif %} |
21 | <ul> | 21 | <ul> |
22 | {% for tag in tags %}<li>{{ tag.value }} <a href="./?action=remove_tag&tag_id={{ tag.id }}&id={{ entry_id }}">✘</a></li>{% endfor %} | 22 | {% for tag in tags %}<li>{{ tag.value }} <a href="./?action=remove_tag&tag_id={{ tag.id }}&id={{ entry_id }}">✘</a></li>{% endfor %} |
23 | </ul> | 23 | </ul> |
24 | <form method="post" action="./?action=add_tag" id="editTags"> | 24 | <form method="post" action="./?action=add_tag" id="editTags"> |
25 | <input type="hidden" name="entry_id" value="{{ entry_id }}" /> | 25 | <input type="hidden" name="entry_id" value="{{ entry_id }}" /> |
26 | <label for="value">Add tags: </label> | 26 | <label for="value">{% trans "Add tags:" %}</label> |
27 | <input type="text" placeholder="interview, editorial, video" id="value" name="value" required="required" /> | 27 | <input type="text" placeholder="{% trans "interview" %}, {% trans "editorial" %}, {% trans "video" %}" id="value" name="value" required="required" /> |
28 | <input type="submit" value="Tag" /> | 28 | <input type="submit" value="Tag" /> |
29 | <p>{% trans "Start typing for auto complete." %}<br> | 29 | <p>{% trans "Start typing for auto complete." %}<br> |
30 | {% trans "You can enter multiple tags, separated by commas." %}</p> | 30 | {% trans "You can enter multiple tags, separated by commas." %}</p> |
diff --git a/themes/default/highlightjs/highlight.pack.js b/themes/default/highlightjs/highlight.pack.js new file mode 100644 index 00000000..10a21c34 --- /dev/null +++ b/themes/default/highlightjs/highlight.pack.js | |||
@@ -0,0 +1 @@ | |||
var hljs=new function(){function j(v){return v.replace(/&/gm,"&").replace(/</gm,"<").replace(/>/gm,">")}function t(v){return v.nodeName.toLowerCase()}function h(w,x){var v=w&&w.exec(x);return v&&v.index==0}function r(w){var v=(w.className+" "+(w.parentNode?w.parentNode.className:"")).split(/\s+/);v=v.map(function(x){return x.replace(/^lang(uage)?-/,"")});return v.filter(function(x){return i(x)||x=="no-highlight"})[0]}function o(x,y){var v={};for(var w in x){v[w]=x[w]}if(y){for(var w in y){v[w]=y[w]}}return v}function u(x){var v=[];(function w(y,z){for(var A=y.firstChild;A;A=A.nextSibling){if(A.nodeType==3){z+=A.nodeValue.length}else{if(t(A)=="br"){z+=1}else{if(A.nodeType==1){v.push({event:"start",offset:z,node:A});z=w(A,z);v.push({event:"stop",offset:z,node:A})}}}}return z})(x,0);return v}function q(w,y,C){var x=0;var F="";var z=[];function B(){if(!w.length||!y.length){return w.length?w:y}if(w[0].offset!=y[0].offset){return(w[0].offset<y[0].offset)?w:y}return y[0].event=="start"?w:y}function A(H){function G(I){return" "+I.nodeName+'="'+j(I.value)+'"'}F+="<"+t(H)+Array.prototype.map.call(H.attributes,G).join("")+">"}function E(G){F+="</"+t(G)+">"}function v(G){(G.event=="start"?A:E)(G.node)}while(w.length||y.length){var D=B();F+=j(C.substr(x,D[0].offset-x));x=D[0].offset;if(D==w){z.reverse().forEach(E);do{v(D.splice(0,1)[0]);D=B()}while(D==w&&D.length&&D[0].offset==x);z.reverse().forEach(A)}else{if(D[0].event=="start"){z.push(D[0].node)}else{z.pop()}v(D.splice(0,1)[0])}}return F+j(C.substr(x))}function m(y){function v(z){return(z&&z.source)||z}function w(A,z){return RegExp(v(A),"m"+(y.cI?"i":"")+(z?"g":""))}function x(D,C){if(D.compiled){return}D.compiled=true;D.k=D.k||D.bK;if(D.k){var z={};var E=function(G,F){if(y.cI){F=F.toLowerCase()}F.split(" ").forEach(function(H){var I=H.split("|");z[I[0]]=[G,I[1]?Number(I[1]):1]})};if(typeof D.k=="string"){E("keyword",D.k)}else{Object.keys(D.k).forEach(function(F){E(F,D.k[F])})}D.k=z}D.lR=w(D.l||/\b[A-Za-z0-9_]+\b/,true);if(C){if(D.bK){D.b="\\b("+D.bK.split(" ").join("|")+")\\b"}if(!D.b){D.b=/\B|\b/}D.bR=w(D.b);if(!D.e&&!D.eW){D.e=/\B|\b/}if(D.e){D.eR=w(D.e)}D.tE=v(D.e)||"";if(D.eW&&C.tE){D.tE+=(D.e?"|":"")+C.tE}}if(D.i){D.iR=w(D.i)}if(D.r===undefined){D.r=1}if(!D.c){D.c=[]}var B=[];D.c.forEach(function(F){if(F.v){F.v.forEach(function(G){B.push(o(F,G))})}else{B.push(F=="self"?D:F)}});D.c=B;D.c.forEach(function(F){x(F,D)});if(D.starts){x(D.starts,C)}var A=D.c.map(function(F){return F.bK?"\\.?("+F.b+")\\.?":F.b}).concat([D.tE,D.i]).map(v).filter(Boolean);D.t=A.length?w(A.join("|"),true):{exec:function(F){return null}};D.continuation={}}x(y)}function c(S,L,J,R){function v(U,V){for(var T=0;T<V.c.length;T++){if(h(V.c[T].bR,U)){return V.c[T]}}}function z(U,T){if(h(U.eR,T)){return U}if(U.eW){return z(U.parent,T)}}function A(T,U){return !J&&h(U.iR,T)}function E(V,T){var U=M.cI?T[0].toLowerCase():T[0];return V.k.hasOwnProperty(U)&&V.k[U]}function w(Z,X,W,V){var T=V?"":b.classPrefix,U='<span class="'+T,Y=W?"":"</span>";U+=Z+'">';return U+X+Y}function N(){if(!I.k){return j(C)}var T="";var W=0;I.lR.lastIndex=0;var U=I.lR.exec(C);while(U){T+=j(C.substr(W,U.index-W));var V=E(I,U);if(V){H+=V[1];T+=w(V[0],j(U[0]))}else{T+=j(U[0])}W=I.lR.lastIndex;U=I.lR.exec(C)}return T+j(C.substr(W))}function F(){if(I.sL&&!f[I.sL]){return j(C)}var T=I.sL?c(I.sL,C,true,I.continuation.top):e(C);if(I.r>0){H+=T.r}if(I.subLanguageMode=="continuous"){I.continuation.top=T.top}return w(T.language,T.value,false,true)}function Q(){return I.sL!==undefined?F():N()}function P(V,U){var T=V.cN?w(V.cN,"",true):"";if(V.rB){D+=T;C=""}else{if(V.eB){D+=j(U)+T;C=""}else{D+=T;C=U}}I=Object.create(V,{parent:{value:I}})}function G(T,X){C+=T;if(X===undefined){D+=Q();return 0}var V=v(X,I);if(V){D+=Q();P(V,X);return V.rB?0:X.length}var W=z(I,X);if(W){var U=I;if(!(U.rE||U.eE)){C+=X}D+=Q();do{if(I.cN){D+="</span>"}H+=I.r;I=I.parent}while(I!=W.parent);if(U.eE){D+=j(X)}C="";if(W.starts){P(W.starts,"")}return U.rE?0:X.length}if(A(X,I)){throw new Error('Illegal lexeme "'+X+'" for mode "'+(I.cN||"<unnamed>")+'"')}C+=X;return X.length||1}var M=i(S);if(!M){throw new Error('Unknown language: "'+S+'"')}m(M);var I=R||M;var D="";for(var K=I;K!=M;K=K.parent){if(K.cN){D+=w(K.cN,D,true)}}var C="";var H=0;try{var B,y,x=0;while(true){I.t.lastIndex=x;B=I.t.exec(L);if(!B){break}y=G(L.substr(x,B.index-x),B[0]);x=B.index+y}G(L.substr(x));for(var K=I;K.parent;K=K.parent){if(K.cN){D+="</span>"}}return{r:H,value:D,language:S,top:I}}catch(O){if(O.message.indexOf("Illegal")!=-1){return{r:0,value:j(L)}}else{throw O}}}function e(y,x){x=x||b.languages||Object.keys(f);var v={r:0,value:j(y)};var w=v;x.forEach(function(z){if(!i(z)){return}var A=c(z,y,false);A.language=z;if(A.r>w.r){w=A}if(A.r>v.r){w=v;v=A}});if(w.language){v.second_best=w}return v}function g(v){if(b.tabReplace){v=v.replace(/^((<[^>]+>|\t)+)/gm,function(w,z,y,x){return z.replace(/\t/g,b.tabReplace)})}if(b.useBR){v=v.replace(/\n/g,"<br>")}return v}function p(z){var y=b.useBR?z.innerHTML.replace(/\n/g,"").replace(/<br>|<br [^>]*>/g,"\n").replace(/<[^>]*>/g,""):z.textContent;var A=r(z);if(A=="no-highlight"){return}var v=A?c(A,y,true):e(y);var w=u(z);if(w.length){var x=document.createElementNS("http://www.w3.org/1999/xhtml","pre");x.innerHTML=v.value;v.value=q(w,u(x),y)}v.value=g(v.value);z.innerHTML=v.value;z.className+=" hljs "+(!A&&v.language||"");z.result={language:v.language,re:v.r};if(v.second_best){z.second_best={language:v.second_best.language,re:v.second_best.r}}}var b={classPrefix:"hljs-",tabReplace:null,useBR:false,languages:undefined};function s(v){b=o(b,v)}function l(){if(l.called){return}l.called=true;var v=document.querySelectorAll("pre code");Array.prototype.forEach.call(v,p)}function a(){addEventListener("DOMContentLoaded",l,false);addEventListener("load",l,false)}var f={};var n={};function d(v,x){var w=f[v]=x(this);if(w.aliases){w.aliases.forEach(function(y){n[y]=v})}}function k(){return Object.keys(f)}function i(v){return f[v]||f[n[v]]}this.highlight=c;this.highlightAuto=e;this.fixMarkup=g;this.highlightBlock=p;this.configure=s;this.initHighlighting=l;this.initHighlightingOnLoad=a;this.registerLanguage=d;this.listLanguages=k;this.getLanguage=i;this.inherit=o;this.IR="[a-zA-Z][a-zA-Z0-9_]*";this.UIR="[a-zA-Z_][a-zA-Z0-9_]*";this.NR="\\b\\d+(\\.\\d+)?";this.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";this.BNR="\\b(0b[01]+)";this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";this.BE={b:"\\\\[\\s\\S]",r:0};this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE]};this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE]};this.PWM={b:/\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/};this.CLCM={cN:"comment",b:"//",e:"$",c:[this.PWM]};this.CBCM={cN:"comment",b:"/\\*",e:"\\*/",c:[this.PWM]};this.HCM={cN:"comment",b:"#",e:"$",c:[this.PWM]};this.NM={cN:"number",b:this.NR,r:0};this.CNM={cN:"number",b:this.CNR,r:0};this.BNM={cN:"number",b:this.BNR,r:0};this.CSSNM={cN:"number",b:this.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0};this.RM={cN:"regexp",b:/\//,e:/\/[gim]*/,i:/\n/,c:[this.BE,{b:/\[/,e:/\]/,r:0,c:[this.BE]}]};this.TM={cN:"title",b:this.IR,r:0};this.UTM={cN:"title",b:this.UIR,r:0}}();hljs.registerLanguage("bash",function(b){var a={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)\}/}]};var d={cN:"string",b:/"/,e:/"/,c:[b.BE,a,{cN:"variable",b:/\$\(/,e:/\)/,c:[b.BE]}]};var c={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/-?[a-z\.]+/,k:{keyword:"if then else elif fi for break continue while in do done exit return set declare case esac export exec",literal:"true false",built_in:"printf echo read cd pwd pushd popd dirs let eval unset typeset readonly getopts source shopt caller type hash bind help sudo",operator:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"shebang",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:true,c:[b.inherit(b.TM,{b:/\w[\w\d_]*/})],r:0},b.HCM,b.NM,d,c,a]}});hljs.registerLanguage("cs",function(b){var a="abstract as base bool break byte case catch char checked const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal is lock long new null object operator out override params private protected public readonly ref return sbyte sealed short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual volatile void while async await ascending descending from get group into join let orderby partial select set value var where yield";return{aliases:["csharp"],k:a,i:/::/,c:[{cN:"comment",b:"///",e:"$",rB:true,c:[{cN:"xmlDocTag",v:[{b:"///",r:0},{b:"<!--|-->"},{b:"</?",e:">"}]}]},b.CLCM,b.CBCM,{cN:"preprocessor",b:"#",e:"$",k:"if else elif endif define undef warning error line region endregion pragma checksum"},{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},b.ASM,b.QSM,b.CNM,{bK:"protected public private internal",e:/[{;=]/,k:a,c:[{bK:"class namespace interface",starts:{c:[b.TM]}},{b:b.IR+"\\s*\\(",rB:true,c:[b.TM]}]}]}});hljs.registerLanguage("ruby",function(f){var j="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?";var i="and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor";var b={cN:"yardoctag",b:"@[A-Za-z]+"};var c={cN:"value",b:"#<",e:">"};var k={cN:"comment",v:[{b:"#",e:"$",c:[b]},{b:"^\\=begin",e:"^\\=end",c:[b],r:10},{b:"^__END__",e:"\\n$"}]};var d={cN:"subst",b:"#\\{",e:"}",k:i};var e={cN:"string",c:[f.BE,d],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:"%[qw]?\\(",e:"\\)"},{b:"%[qw]?\\[",e:"\\]"},{b:"%[qw]?{",e:"}"},{b:"%[qw]?<",e:">"},{b:"%[qw]?/",e:"/"},{b:"%[qw]?%",e:"%"},{b:"%[qw]?-",e:"-"},{b:"%[qw]?\\|",e:"\\|"},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/}]};var a={cN:"params",b:"\\(",e:"\\)",k:i};var h=[e,c,k,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[f.inherit(f.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{cN:"inheritance",b:"<\\s*",c:[{cN:"parent",b:"("+f.IR+"::)?"+f.IR}]},k]},{cN:"function",bK:"def",e:" |$|;",r:0,c:[f.inherit(f.TM,{b:j}),a,k]},{cN:"constant",b:"(::)?(\\b[A-Z]\\w*(::)?)+",r:0},{cN:"symbol",b:":",c:[e,{b:j}],r:0},{cN:"symbol",b:f.UIR+"(\\!|\\?)?:",r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{cN:"variable",b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{b:"("+f.RSR+")\\s*",c:[c,k,{cN:"regexp",c:[f.BE,d],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}],r:0}];d.c=h;a.c=h;var g=[{r:1,cN:"output",b:"^\\s*=> ",e:"$",rB:true,c:[{cN:"status",b:"^\\s*=>"},{b:" ",e:"$",c:h}]},{r:1,cN:"input",b:"^[^ ][^=>]*>+ ",e:"$",rB:true,c:[{cN:"prompt",b:"^[^ ][^=>]*>+"},{b:" ",e:"$",c:h}]}];return{aliases:["rb","gemspec","podspec","thor","irb"],k:i,c:g.concat(h)}});hljs.registerLanguage("diff",function(a){return{aliases:["patch"],c:[{cN:"chunk",r:10,v:[{b:/^\@\@ +\-\d+,\d+ +\+\d+,\d+ +\@\@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"header",v:[{b:/Index: /,e:/$/},{b:/=====/,e:/=====$/},{b:/^\-\-\-/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+\+\+/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"change",b:"^\\!",e:"$"}]}});hljs.registerLanguage("javascript",function(a){return{aliases:["js"],k:{keyword:"in if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const class",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document"},c:[{cN:"pi",b:/^\s*('|")use strict('|")/,r:10},a.ASM,a.QSM,a.CLCM,a.CBCM,a.CNM,{b:"("+a.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[a.CLCM,a.CBCM,a.RM,{b:/</,e:/>;/,r:0,sL:"xml"}],r:0},{cN:"function",bK:"function",e:/\{/,eE:true,c:[a.inherit(a.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,c:[a.CLCM,a.CBCM],i:/["'\(]/}],i:/\[|%/},{b:/\$[(.]/},{b:"\\."+a.IR,r:0}]}});hljs.registerLanguage("xml",function(a){var c="[A-Za-z0-9\\._:-]+";var d={b:/<\?(php)?(?!\w)/,e:/\?>/,sL:"php",subLanguageMode:"continuous"};var b={eW:true,i:/</,r:0,c:[d,{cN:"attribute",b:c,r:0},{b:"=",r:0,c:[{cN:"value",v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s\/>]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:true,c:[{cN:"doctype",b:"<!DOCTYPE",e:">",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"<!--",e:"-->",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"<style(?=\\s|>|$)",e:">",k:{title:"style"},c:[b],starts:{e:"</style>",rE:true,sL:"css"}},{cN:"tag",b:"<script(?=\\s|>|$)",e:">",k:{title:"script"},c:[b],starts:{e:"<\/script>",rE:true,sL:"javascript"}},{b:"<%",e:"%>",sL:"vbscript"},d,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"</?",e:"/?>",c:[{cN:"title",b:"[^ /><]+",r:0},b]}]}});hljs.registerLanguage("markdown",function(a){return{aliases:["md","mkdown","mkd"],c:[{cN:"header",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"blockquote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"`.+?`"},{b:"^( {4}|\t)",e:"$",r:0}]},{cN:"horizontal_rule",b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].+?[\\)\\]]",rB:true,c:[{cN:"link_label",b:"\\[",e:"\\]",eB:true,rE:true,r:0},{cN:"link_url",b:"\\]\\(",e:"\\)",eB:true,eE:true},{cN:"link_reference",b:"\\]\\[",e:"\\]",eB:true,eE:true}],r:10},{b:"^\\[.+\\]:",e:"$",rB:true,c:[{cN:"link_reference",b:"\\[",e:"\\]",eB:true,eE:true},{cN:"link_url",b:"\\s",e:"$"}]}]}});hljs.registerLanguage("css",function(a){var b="[a-zA-Z-][a-zA-Z0-9_-]*";var c={cN:"function",b:b+"\\(",rB:true,eE:true,e:"\\("};return{cI:true,i:"[=/|']",c:[a.CBCM,{cN:"id",b:"\\#[A-Za-z0-9_-]+"},{cN:"class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"attr_selector",b:"\\[",e:"\\]",i:"$"},{cN:"pseudo",b:":(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\\\"\\']+"},{cN:"at_rule",b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{cN:"at_rule",b:"@",e:"[{;]",c:[{cN:"keyword",b:/\S+/},{b:/\s/,eW:true,eE:true,r:0,c:[c,a.ASM,a.QSM,a.CSSNM]}]},{cN:"tag",b:b,r:0},{cN:"rules",b:"{",e:"}",i:"[^\\s]",r:0,c:[a.CBCM,{cN:"rule",b:"[^\\s]",rB:true,e:";",eW:true,c:[{cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:true,i:"[^\\s]",starts:{cN:"value",eW:true,eE:true,c:[c,a.CSSNM,a.QSM,a.ASM,a.CBCM,{cN:"hexcolor",b:"#[0-9A-Fa-f]+"},{cN:"important",b:"!important"}]}}]}]}]}});hljs.registerLanguage("http",function(a){return{i:"\\S",c:[{cN:"status",b:"^HTTP/[0-9\\.]+",e:"$",c:[{cN:"number",b:"\\b\\d{3}\\b"}]},{cN:"request",b:"^[A-Z]+ (.*?) HTTP/[0-9\\.]+$",rB:true,e:"$",c:[{cN:"string",b:" ",e:" ",eB:true,eE:true}]},{cN:"attribute",b:"^\\w",e:": ",eE:true,i:"\\n|\\s|=",starts:{cN:"string",e:"$"}},{b:"\\n\\n",starts:{sL:"",eW:true}}]}});hljs.registerLanguage("java",function(b){var a="false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws";return{aliases:["jsp"],k:a,i:/<\//,c:[{cN:"javadoc",b:"/\\*\\*",e:"\\*/",c:[{cN:"javadoctag",b:"(^|\\s)@[A-Za-z]+"}],r:10},b.CLCM,b.CBCM,b.ASM,b.QSM,{bK:"protected public private",e:/[{;=]/,k:a,c:[{cN:"class",bK:"class interface",eW:true,eE:true,i:/[:"\[\]]/,c:[{bK:"extends implements",r:10},b.UTM]},{b:b.UIR+"\\s*\\(",rB:true,c:[b.UTM]}]},b.CNM,{cN:"annotation",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("php",function(b){var e={cN:"variable",b:"(\\$|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"};var a={cN:"preprocessor",b:/<\?(php)?|\?>/};var c={cN:"string",c:[b.BE,a],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},b.inherit(b.ASM,{i:null}),b.inherit(b.QSM,{i:null})]};var d={v:[b.BNM,b.CNM]};return{aliases:["php3","php4","php5","php6"],cI:true,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[b.CLCM,b.HCM,{cN:"comment",b:"/\\*",e:"\\*/",c:[{cN:"phpdoc",b:"\\s@[A-Za-z]+"},a]},{cN:"comment",b:"__halt_compiler.+?;",eW:true,k:"__halt_compiler",l:b.UIR},{cN:"string",b:"<<<['\"]?\\w+['\"]?$",e:"^\\w+;",c:[b.BE]},a,e,{cN:"function",bK:"function",e:/[;{]/,eE:true,i:"\\$|\\[|%",c:[b.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",e,b.CBCM,c,d]}]},{cN:"class",bK:"class interface",e:"{",eE:true,i:/[:\(\$"]/,c:[{bK:"extends implements",r:10},b.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[b.UTM]},{bK:"use",e:";",c:[b.UTM]},{b:"=>"},c,d]}});hljs.registerLanguage("python",function(a){var f={cN:"prompt",b:/^(>>>|\.\.\.) /};var b={cN:"string",c:[a.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[f],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[f],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},a.ASM,a.QSM]};var d={cN:"number",r:0,v:[{b:a.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:a.CNR+"[lLjJ]?"}]};var e={cN:"params",b:/\(/,e:/\)/,c:["self",f,d,b]};var c={e:/:/,i:/[${=;\n]/,c:[a.UTM,e]};return{aliases:["py","gyp"],k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)/,c:[f,d,b,a.HCM,a.inherit(c,{cN:"function",bK:"def",r:10}),a.inherit(c,{cN:"class",bK:"class"}),{cN:"decorator",b:/@/,e:/$/},{b:/\b(print|exec)\(/}]}});hljs.registerLanguage("sql",function(a){var b={cN:"comment",b:"--",e:"$"};return{cI:true,i:/[<>]/,c:[{cN:"operator",bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate savepoint release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup",e:/;/,eW:true,k:{keyword:"abs absolute acos action add adddate addtime aes_decrypt aes_encrypt after aggregate all allocate alter analyze and any are as asc ascii asin assertion at atan atan2 atn2 authorization authors avg backup before begin benchmark between bin binlog bit_and bit_count bit_length bit_or bit_xor both by cache call cascade cascaded case cast catalog ceil ceiling chain change changed char_length character_length charindex charset check checksum checksum_agg choose close coalesce coercibility collate collation collationproperty column columns columns_updated commit compress concat concat_ws concurrent connect connection connection_id consistent constraint constraints continue contributors conv convert convert_tz corresponding cos cot count count_big crc32 create cross cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime data database databases datalength date_add date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts datetimeoffsetfromparts day dayname dayofmonth dayofweek dayofyear deallocate declare decode default deferrable deferred degrees delayed delete des_decrypt des_encrypt des_key_file desc describe descriptor diagnostics difference disconnect distinct distinctrow div do domain double drop dumpfile each else elt enclosed encode encrypt end end-exec engine engines eomonth errors escape escaped event eventdata events except exception exec execute exists exp explain export_set extended external extract fast fetch field fields find_in_set first first_value floor flush for force foreign format found found_rows from from_base64 from_days from_unixtime full function get get_format get_lock getdate getutcdate global go goto grant grants greatest group group_concat grouping grouping_id gtid_subset gtid_subtract handler having help hex high_priority hosts hour ident_current ident_incr ident_seed identified identity if ifnull ignore iif ilike immediate in index indicator inet6_aton inet6_ntoa inet_aton inet_ntoa infile initially inner innodb input insert install instr intersect into is is_free_lock is_ipv4 is_ipv4_compat is_ipv4_mapped is_not is_not_null is_used_lock isdate isnull isolation join key kill language last last_day last_insert_id last_value lcase lead leading least leaves left len lenght level like limit lines ln load load_file local localtime localtimestamp locate lock log log10 log2 logfile logs low_priority lower lpad ltrim make_set makedate maketime master master_pos_wait match matched max md5 medium merge microsecond mid min minute mod mode module month monthname mutex name_const names national natural nchar next no no_write_to_binlog not now nullif nvarchar oct octet_length of old_password on only open optimize option optionally or ord order outer outfile output pad parse partial partition password patindex percent_rank percentile_cont percentile_disc period_add period_diff pi plugin position pow power pragma precision prepare preserve primary prior privileges procedure procedure_analyze processlist profile profiles public publishingservername purge quarter query quick quote quotename radians rand read references regexp relative relaylog release release_lock rename repair repeat replace replicate reset restore restrict return returns reverse revoke right rlike rollback rollup round row row_count rows rpad rtrim savepoint schema scroll sec_to_time second section select serializable server session session_user set sha sha1 sha2 share show sign sin size slave sleep smalldatetimefromparts snapshot some soname soundex sounds_like space sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_no_cache sql_small_result sql_variant_property sqlstate sqrt square start starting status std stddev stddev_pop stddev_samp stdev stdevp stop str str_to_date straight_join strcmp string stuff subdate substr substring subtime subtring_index sum switchoffset sysdate sysdatetime sysdatetimeoffset system_user sysutcdatetime table tables tablespace tan temporary terminated tertiary_weights then time time_format time_to_sec timediff timefromparts timestamp timestampadd timestampdiff timezone_hour timezone_minute to to_base64 to_days to_seconds todatetimeoffset trailing transaction translation trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse ucase uncompress uncompressed_length unhex unicode uninstall union unique unix_timestamp unknown unlock update upgrade upped upper usage use user user_resources using utc_date utc_time utc_timestamp uuid uuid_short validate_password_strength value values var var_pop var_samp variables variance varp version view warnings week weekday weekofyear weight_string when whenever where with work write xml xor year yearweek zon",literal:"true false null",built_in:"array bigint binary bit blob boolean char character date dec decimal float int integer interval number numeric real serial smallint varchar varying int8 serial8 text"},c:[{cN:"string",b:"'",e:"'",c:[a.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[a.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[a.BE]},a.CNM,a.CBCM,b]},a.CBCM,b]}});hljs.registerLanguage("ini",function(a){return{cI:true,i:/\S/,c:[{cN:"comment",b:";",e:"$"},{cN:"title",b:"^\\[",e:"\\]"},{cN:"setting",b:"^[a-z0-9\\[\\]_-]+[ \\t]*=[ \\t]*",e:"$",c:[{cN:"value",eW:true,k:"on off true false yes no",c:[a.QSM,a.NM],r:0}]}]}});hljs.registerLanguage("perl",function(c){var d="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when";var f={cN:"subst",b:"[$@]\\{",e:"\\}",k:d};var g={b:"->{",e:"}"};var a={cN:"variable",v:[{b:/\$\d/},{b:/[\$\%\@](\^\w\b|#\w+(\:\:\w+)*|{\w+}|\w+(\:\:\w*)*)/},{b:/[\$\%\@][^\s\w{]/,r:0}]};var e={cN:"comment",b:"^(__END__|__DATA__)",e:"\\n$",r:5};var h=[c.BE,f,a];var b=[a,c.HCM,e,{cN:"comment",b:"^\\=\\w",e:"\\=cut",eW:true},g,{cN:"string",c:h,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[c.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[c.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+c.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[c.HCM,e,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[c.BE],r:0}]},{cN:"sub",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",r:5},{cN:"operator",b:"-\\w\\b",r:0}];f.c=b;g.c=b;return{aliases:["pl"],k:d,c:b}});hljs.registerLanguage("objectivec",function(a){var d={keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"NSString NSDictionary CGRect CGPoint UIButton UILabel UITextView UIWebView MKMapView NSView NSViewController NSWindow NSWindowController NSSet NSUUID NSIndexSet UISegmentedControl NSObject UITableViewDelegate UITableViewDataSource NSThread UIActivityIndicator UITabbar UIToolBar UIBarButtonItem UIImageView NSAutoreleasePool UITableView BOOL NSInteger CGFloat NSException NSLog NSMutableString NSMutableArray NSMutableDictionary NSURL NSIndexPath CGSize UITableViewCell UIView UIViewController UINavigationBar UINavigationController UITabBarController UIPopoverController UIPopoverControllerDelegate UIImage NSNumber UISearchBar NSFetchedResultsController NSFetchedResultsChangeType UIScrollView UIScrollViewDelegate UIEdgeInsets UIColor UIFont UIApplication NSNotFound NSNotificationCenter NSNotification UILocalNotification NSBundle NSFileManager NSTimeInterval NSDate NSCalendar NSUserDefaults UIWindow NSRange NSArray NSError NSURLRequest NSURLConnection UIInterfaceOrientation MPMoviePlayerController dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"};var c=/[a-zA-Z@][a-zA-Z0-9_]*/;var b="@interface @class @protocol @implementation";return{aliases:["m","mm","objc","obj-c"],k:d,l:c,i:"</",c:[a.CLCM,a.CBCM,a.CNM,a.QSM,{cN:"string",v:[{b:'@"',e:'"',i:"\\n",c:[a.BE]},{b:"'",e:"[^\\\\]'",i:"[^\\\\][^']"}]},{cN:"preprocessor",b:"#",e:"$",c:[{cN:"title",v:[{b:'"',e:'"'},{b:"<",e:">"}]}]},{cN:"class",b:"("+b.split(" ").join("|")+")\\b",e:"({|$)",eE:true,k:b,l:c,c:[a.UTM]},{cN:"variable",b:"\\."+a.UIR,r:0}]}});hljs.registerLanguage("coffeescript",function(c){var b={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",reserved:"case default function var void with const let enum export import native __hasProp __extends __slice __bind __indexOf",built_in:"npm require console print module global window document"};var a="[A-Za-z$_][0-9A-Za-z$_]*";var f=c.inherit(c.TM,{b:a});var e={cN:"subst",b:/#\{/,e:/}/,k:b};var d=[c.BNM,c.inherit(c.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[c.BE]},{b:/'/,e:/'/,c:[c.BE]},{b:/"""/,e:/"""/,c:[c.BE,e]},{b:/"/,e:/"/,c:[c.BE,e]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[e,c.HCM]},{b:"//[gim]*",r:0},{b:"/\\S(\\\\.|[^\\n])*?/[gim]*(?=\\s|\\W|$)"}]},{cN:"property",b:"@"+a},{b:"`",e:"`",eB:true,eE:true,sL:"javascript"}];e.c=d;return{aliases:["coffee","cson","iced"],k:b,c:d.concat([{cN:"comment",b:"###",e:"###"},c.HCM,{cN:"function",b:"("+a+"\\s*=\\s*)?(\\(.*\\))?\\s*\\B[-=]>",e:"[-=]>",rB:true,c:[f,{cN:"params",b:"\\(",rB:true,c:[{b:/\(/,e:/\)/,k:b,c:["self"].concat(d)}]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:true,i:/[:="\[\]]/,c:[f]},f]},{cN:"attribute",b:a+":",e:":",rB:true,eE:true,r:0}])}});hljs.registerLanguage("nginx",function(c){var b={cN:"variable",v:[{b:/\$\d+/},{b:/\$\{/,e:/}/},{b:"[\\$\\@]"+c.UIR}]};var a={eW:true,l:"[a-z/_]+",k:{built_in:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},r:0,i:"=>",c:[c.HCM,{cN:"string",c:[c.BE,b],v:[{b:/"/,e:/"/},{b:/'/,e:/'/}]},{cN:"url",b:"([a-z]+):/",e:"\\s",eW:true,eE:true},{cN:"regexp",c:[c.BE,b],v:[{b:"\\s\\^",e:"\\s|{|;",rE:true},{b:"~\\*?\\s+",e:"\\s|{|;",rE:true},{b:"\\*(\\.[a-z\\-]+)+"},{b:"([a-z\\-]+\\.)+\\*"}]},{cN:"number",b:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{cN:"number",b:"\\b\\d+[kKmMgGdshdwy]*\\b",r:0},b]};return{aliases:["nginxconf"],c:[c.HCM,{b:c.UIR+"\\s",e:";|{",rB:true,c:[{cN:"title",b:c.UIR,starts:a}],r:0}],i:"[^\\s\\}]"}});hljs.registerLanguage("json",function(a){var e={literal:"true false null"};var d=[a.QSM,a.CNM];var c={cN:"value",e:",",eW:true,eE:true,c:d,k:e};var b={b:"{",e:"}",c:[{cN:"attribute",b:'\\s*"',e:'"\\s*:\\s*',eB:true,eE:true,c:[a.BE],i:"\\n",starts:c}],i:"\\S"};var f={b:"\\[",e:"\\]",c:[a.inherit(c,{cN:null})],i:"\\S"};d.splice(d.length,0,b,f);return{c:d,k:e,i:"\\S"}});hljs.registerLanguage("apache",function(a){var b={cN:"number",b:"[\\$%]\\d+"};return{aliases:["apacheconf"],cI:true,c:[a.HCM,{cN:"tag",b:"</?",e:">"},{cN:"keyword",b:/\w+/,r:0,k:{common:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{e:/$/,r:0,k:{literal:"on off all"},c:[{cN:"sqbracket",b:"\\s\\[",e:"\\]$"},{cN:"cbracket",b:"[\\$%]\\{",e:"\\}",c:["self",b]},b,a.QSM]}}],i:/\S/}});hljs.registerLanguage("cpp",function(a){var b={keyword:"false int float while private char catch export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long throw volatile static protected bool template mutable if public friend do return goto auto void enum else break new extern using true class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue wchar_t inline delete alignof char16_t char32_t constexpr decltype noexcept nullptr static_assert thread_local restrict _Bool complex _Complex _Imaginary",built_in:"std string cin cout cerr clog stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf"};return{aliases:["c","h","c++","h++"],k:b,i:"</",c:[a.CLCM,a.CBCM,a.QSM,{cN:"string",b:"'\\\\?.",e:"'",i:"."},{cN:"number",b:"\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"},a.CNM,{cN:"preprocessor",b:"#",e:"$",k:"if else elif endif define undef warning error line pragma",c:[{b:'include\\s*[<"]',e:'[>"]',k:"include",i:"\\n"},a.CLCM]},{cN:"stl_container",b:"\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",e:">",k:b,c:["self"]},{b:a.IR+"::"}]}});hljs.registerLanguage("makefile",function(a){var b={cN:"variable",b:/\$\(/,e:/\)/,c:[a.BE]};return{aliases:["mk","mak"],c:[a.HCM,{b:/^\w+\s*\W*=/,rB:true,r:0,starts:{cN:"constant",e:/\s*\W*=/,eE:true,starts:{e:/$/,r:0,c:[b]}}},{cN:"title",b:/^[\w]+:\s*$/},{cN:"phony",b:/^\.PHONY:/,e:/$/,k:".PHONY",l:/[\.\w]+/},{b:/^\t+/,e:/$/,c:[a.QSM,b]}]}}); \ No newline at end of file | |||
diff --git a/themes/default/highlightjs/styles/default.css b/themes/default/highlightjs/styles/default.css new file mode 100644 index 00000000..e5bd2801 --- /dev/null +++ b/themes/default/highlightjs/styles/default.css | |||
@@ -0,0 +1,152 @@ | |||
1 | /* | ||
2 | |||
3 | Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org> | ||
4 | |||
5 | */ | ||
6 | |||
7 | .hljs { | ||
8 | display: block; | ||
9 | overflow-x: auto; | ||
10 | padding: 0.5em; | ||
11 | background: #f0f0f0; | ||
12 | } | ||
13 | |||
14 | .hljs, | ||
15 | .hljs-subst, | ||
16 | .hljs-tag .hljs-title, | ||
17 | .lisp .hljs-title, | ||
18 | .clojure .hljs-built_in, | ||
19 | .nginx .hljs-title { | ||
20 | color: black; | ||
21 | } | ||
22 | |||
23 | .hljs-string, | ||
24 | .hljs-title, | ||
25 | .hljs-constant, | ||
26 | .hljs-parent, | ||
27 | .hljs-tag .hljs-value, | ||
28 | .hljs-rules .hljs-value, | ||
29 | .hljs-preprocessor, | ||
30 | .hljs-pragma, | ||
31 | .haml .hljs-symbol, | ||
32 | .ruby .hljs-symbol, | ||
33 | .ruby .hljs-symbol .hljs-string, | ||
34 | .hljs-template_tag, | ||
35 | .django .hljs-variable, | ||
36 | .smalltalk .hljs-class, | ||
37 | .hljs-addition, | ||
38 | .hljs-flow, | ||
39 | .hljs-stream, | ||
40 | .bash .hljs-variable, | ||
41 | .apache .hljs-tag, | ||
42 | .apache .hljs-cbracket, | ||
43 | .tex .hljs-command, | ||
44 | .tex .hljs-special, | ||
45 | .erlang_repl .hljs-function_or_atom, | ||
46 | .asciidoc .hljs-header, | ||
47 | .markdown .hljs-header, | ||
48 | .coffeescript .hljs-attribute { | ||
49 | color: #800; | ||
50 | } | ||
51 | |||
52 | .smartquote, | ||
53 | .hljs-comment, | ||
54 | .hljs-annotation, | ||
55 | .hljs-template_comment, | ||
56 | .diff .hljs-header, | ||
57 | .hljs-chunk, | ||
58 | .asciidoc .hljs-blockquote, | ||
59 | .markdown .hljs-blockquote { | ||
60 | color: #888; | ||
61 | } | ||
62 | |||
63 | .hljs-number, | ||
64 | .hljs-date, | ||
65 | .hljs-regexp, | ||
66 | .hljs-literal, | ||
67 | .hljs-hexcolor, | ||
68 | .smalltalk .hljs-symbol, | ||
69 | .smalltalk .hljs-char, | ||
70 | .go .hljs-constant, | ||
71 | .hljs-change, | ||
72 | .lasso .hljs-variable, | ||
73 | .makefile .hljs-variable, | ||
74 | .asciidoc .hljs-bullet, | ||
75 | .markdown .hljs-bullet, | ||
76 | .asciidoc .hljs-link_url, | ||
77 | .markdown .hljs-link_url { | ||
78 | color: #080; | ||
79 | } | ||
80 | |||
81 | .hljs-label, | ||
82 | .hljs-javadoc, | ||
83 | .ruby .hljs-string, | ||
84 | .hljs-decorator, | ||
85 | .hljs-filter .hljs-argument, | ||
86 | .hljs-localvars, | ||
87 | .hljs-array, | ||
88 | .hljs-attr_selector, | ||
89 | .hljs-important, | ||
90 | .hljs-pseudo, | ||
91 | .hljs-pi, | ||
92 | .haml .hljs-bullet, | ||
93 | .hljs-doctype, | ||
94 | .hljs-deletion, | ||
95 | .hljs-envvar, | ||
96 | .hljs-shebang, | ||
97 | .apache .hljs-sqbracket, | ||
98 | .nginx .hljs-built_in, | ||
99 | .tex .hljs-formula, | ||
100 | .erlang_repl .hljs-reserved, | ||
101 | .hljs-prompt, | ||
102 | .asciidoc .hljs-link_label, | ||
103 | .markdown .hljs-link_label, | ||
104 | .vhdl .hljs-attribute, | ||
105 | .clojure .hljs-attribute, | ||
106 | .asciidoc .hljs-attribute, | ||
107 | .lasso .hljs-attribute, | ||
108 | .coffeescript .hljs-property, | ||
109 | .hljs-phony { | ||
110 | color: #88f; | ||
111 | } | ||
112 | |||
113 | .hljs-keyword, | ||
114 | .hljs-id, | ||
115 | .hljs-title, | ||
116 | .hljs-built_in, | ||
117 | .css .hljs-tag, | ||
118 | .hljs-javadoctag, | ||
119 | .hljs-phpdoc, | ||
120 | .hljs-yardoctag, | ||
121 | .smalltalk .hljs-class, | ||
122 | .hljs-winutils, | ||
123 | .bash .hljs-variable, | ||
124 | .apache .hljs-tag, | ||
125 | .go .hljs-typename, | ||
126 | .tex .hljs-command, | ||
127 | .asciidoc .hljs-strong, | ||
128 | .markdown .hljs-strong, | ||
129 | .hljs-request, | ||
130 | .hljs-status { | ||
131 | font-weight: bold; | ||
132 | } | ||
133 | |||
134 | .asciidoc .hljs-emphasis, | ||
135 | .markdown .hljs-emphasis { | ||
136 | font-style: italic; | ||
137 | } | ||
138 | |||
139 | .nginx .hljs-built_in { | ||
140 | font-weight: normal; | ||
141 | } | ||
142 | |||
143 | .coffeescript .javascript, | ||
144 | .javascript .xml, | ||
145 | .lasso .markup, | ||
146 | .tex .hljs-formula, | ||
147 | .xml .javascript, | ||
148 | .xml .vbscript, | ||
149 | .xml .css, | ||
150 | .xml .hljs-cdata { | ||
151 | opacity: 0.5; | ||
152 | } | ||
diff --git a/themes/default/highlightjs/styles/github.css b/themes/default/highlightjs/styles/github.css new file mode 100644 index 00000000..47fc2651 --- /dev/null +++ b/themes/default/highlightjs/styles/github.css | |||
@@ -0,0 +1,127 @@ | |||
1 | /* | ||
2 | |||
3 | github.com style (c) Vasily Polovnyov <vast@whiteants.net> | ||
4 | |||
5 | */ | ||
6 | |||
7 | .hljs { | ||
8 | display: block; | ||
9 | overflow-x: auto; | ||
10 | padding: 0.5em; | ||
11 | color: #333; | ||
12 | background: #f8f8f8; | ||
13 | } | ||
14 | |||
15 | .hljs-comment, | ||
16 | .hljs-template_comment, | ||
17 | .diff .hljs-header, | ||
18 | .hljs-javadoc { | ||
19 | color: #998; | ||
20 | font-style: italic; | ||
21 | } | ||
22 | |||
23 | .hljs-keyword, | ||
24 | .css .rule .hljs-keyword, | ||
25 | .hljs-winutils, | ||
26 | .javascript .hljs-title, | ||
27 | .nginx .hljs-title, | ||
28 | .hljs-subst, | ||
29 | .hljs-request, | ||
30 | .hljs-status { | ||
31 | color: #333; | ||
32 | font-weight: bold; | ||
33 | } | ||
34 | |||
35 | .hljs-number, | ||
36 | .hljs-hexcolor, | ||
37 | .ruby .hljs-constant { | ||
38 | color: #099; | ||
39 | } | ||
40 | |||
41 | .hljs-string, | ||
42 | .hljs-tag .hljs-value, | ||
43 | .hljs-phpdoc, | ||
44 | .tex .hljs-formula { | ||
45 | color: #d14; | ||
46 | } | ||
47 | |||
48 | .hljs-title, | ||
49 | .hljs-id, | ||
50 | .coffeescript .hljs-params, | ||
51 | .scss .hljs-preprocessor { | ||
52 | color: #900; | ||
53 | font-weight: bold; | ||
54 | } | ||
55 | |||
56 | .javascript .hljs-title, | ||
57 | .lisp .hljs-title, | ||
58 | .clojure .hljs-title, | ||
59 | .hljs-subst { | ||
60 | font-weight: normal; | ||
61 | } | ||
62 | |||
63 | .hljs-class .hljs-title, | ||
64 | .haskell .hljs-type, | ||
65 | .vhdl .hljs-literal, | ||
66 | .tex .hljs-command { | ||
67 | color: #458; | ||
68 | font-weight: bold; | ||
69 | } | ||
70 | |||
71 | .hljs-tag, | ||
72 | .hljs-tag .hljs-title, | ||
73 | .hljs-rules .hljs-property, | ||
74 | .django .hljs-tag .hljs-keyword { | ||
75 | color: #000080; | ||
76 | font-weight: normal; | ||
77 | } | ||
78 | |||
79 | .hljs-attribute, | ||
80 | .hljs-variable, | ||
81 | .lisp .hljs-body { | ||
82 | color: #008080; | ||
83 | } | ||
84 | |||
85 | .hljs-regexp { | ||
86 | color: #009926; | ||
87 | } | ||
88 | |||
89 | .hljs-symbol, | ||
90 | .ruby .hljs-symbol .hljs-string, | ||
91 | .lisp .hljs-keyword, | ||
92 | .tex .hljs-special, | ||
93 | .hljs-prompt { | ||
94 | color: #990073; | ||
95 | } | ||
96 | |||
97 | .hljs-built_in, | ||
98 | .lisp .hljs-title, | ||
99 | .clojure .hljs-built_in { | ||
100 | color: #0086b3; | ||
101 | } | ||
102 | |||
103 | .hljs-preprocessor, | ||
104 | .hljs-pragma, | ||
105 | .hljs-pi, | ||
106 | .hljs-doctype, | ||
107 | .hljs-shebang, | ||
108 | .hljs-cdata { | ||
109 | color: #999; | ||
110 | font-weight: bold; | ||
111 | } | ||
112 | |||
113 | .hljs-deletion { | ||
114 | background: #fdd; | ||
115 | } | ||
116 | |||
117 | .hljs-addition { | ||
118 | background: #dfd; | ||
119 | } | ||
120 | |||
121 | .diff .hljs-change { | ||
122 | background: #0086b3; | ||
123 | } | ||
124 | |||
125 | .hljs-chunk { | ||
126 | color: #aaa; | ||
127 | } | ||
diff --git a/themes/default/highlightjs/styles/googlecode.css b/themes/default/highlightjs/styles/googlecode.css new file mode 100644 index 00000000..fd237367 --- /dev/null +++ b/themes/default/highlightjs/styles/googlecode.css | |||
@@ -0,0 +1,148 @@ | |||
1 | /* | ||
2 | |||
3 | Google Code style (c) Aahan Krish <geekpanth3r@gmail.com> | ||
4 | |||
5 | */ | ||
6 | |||
7 | .hljs { | ||
8 | display: block; | ||
9 | overflow-x: auto; | ||
10 | padding: 0.5em; | ||
11 | background: white; | ||
12 | color: black; | ||
13 | } | ||
14 | |||
15 | .hljs-comment, | ||
16 | .hljs-template_comment, | ||
17 | .hljs-javadoc { | ||
18 | color: #800; | ||
19 | } | ||
20 | |||
21 | .hljs-keyword, | ||
22 | .method, | ||
23 | .hljs-list .hljs-title, | ||
24 | .clojure .hljs-built_in, | ||
25 | .nginx .hljs-title, | ||
26 | .hljs-tag .hljs-title, | ||
27 | .setting .hljs-value, | ||
28 | .hljs-winutils, | ||
29 | .tex .hljs-command, | ||
30 | .http .hljs-title, | ||
31 | .hljs-request, | ||
32 | .hljs-status { | ||
33 | color: #008; | ||
34 | } | ||
35 | |||
36 | .hljs-envvar, | ||
37 | .tex .hljs-special { | ||
38 | color: #660; | ||
39 | } | ||
40 | |||
41 | .hljs-string, | ||
42 | .hljs-tag .hljs-value, | ||
43 | .hljs-cdata, | ||
44 | .hljs-filter .hljs-argument, | ||
45 | .hljs-attr_selector, | ||
46 | .apache .hljs-cbracket, | ||
47 | .hljs-date, | ||
48 | .hljs-regexp, | ||
49 | .coffeescript .hljs-attribute { | ||
50 | color: #080; | ||
51 | } | ||
52 | |||
53 | .hljs-sub .hljs-identifier, | ||
54 | .hljs-pi, | ||
55 | .hljs-tag, | ||
56 | .hljs-tag .hljs-keyword, | ||
57 | .hljs-decorator, | ||
58 | .ini .hljs-title, | ||
59 | .hljs-shebang, | ||
60 | .hljs-prompt, | ||
61 | .hljs-hexcolor, | ||
62 | .hljs-rules .hljs-value, | ||
63 | .hljs-literal, | ||
64 | .hljs-symbol, | ||
65 | .ruby .hljs-symbol .hljs-string, | ||
66 | .hljs-number, | ||
67 | .css .hljs-function, | ||
68 | .clojure .hljs-attribute { | ||
69 | color: #066; | ||
70 | } | ||
71 | |||
72 | .hljs-class .hljs-title, | ||
73 | .haskell .hljs-type, | ||
74 | .smalltalk .hljs-class, | ||
75 | .hljs-javadoctag, | ||
76 | .hljs-yardoctag, | ||
77 | .hljs-phpdoc, | ||
78 | .hljs-typename, | ||
79 | .hljs-tag .hljs-attribute, | ||
80 | .hljs-doctype, | ||
81 | .hljs-class .hljs-id, | ||
82 | .hljs-built_in, | ||
83 | .setting, | ||
84 | .hljs-params, | ||
85 | .hljs-variable, | ||
86 | .clojure .hljs-title { | ||
87 | color: #606; | ||
88 | } | ||
89 | |||
90 | .css .hljs-tag, | ||
91 | .hljs-rules .hljs-property, | ||
92 | .hljs-pseudo, | ||
93 | .hljs-subst { | ||
94 | color: #000; | ||
95 | } | ||
96 | |||
97 | .css .hljs-class, | ||
98 | .css .hljs-id { | ||
99 | color: #9b703f; | ||
100 | } | ||
101 | |||
102 | .hljs-value .hljs-important { | ||
103 | color: #ff7700; | ||
104 | font-weight: bold; | ||
105 | } | ||
106 | |||
107 | .hljs-rules .hljs-keyword { | ||
108 | color: #c5af75; | ||
109 | } | ||
110 | |||
111 | .hljs-annotation, | ||
112 | .apache .hljs-sqbracket, | ||
113 | .nginx .hljs-built_in { | ||
114 | color: #9b859d; | ||
115 | } | ||
116 | |||
117 | .hljs-preprocessor, | ||
118 | .hljs-preprocessor *, | ||
119 | .hljs-pragma { | ||
120 | color: #444; | ||
121 | } | ||
122 | |||
123 | .tex .hljs-formula { | ||
124 | background-color: #eee; | ||
125 | font-style: italic; | ||
126 | } | ||
127 | |||
128 | .diff .hljs-header, | ||
129 | .hljs-chunk { | ||
130 | color: #808080; | ||
131 | font-weight: bold; | ||
132 | } | ||
133 | |||
134 | .diff .hljs-change { | ||
135 | background-color: #bccff9; | ||
136 | } | ||
137 | |||
138 | .hljs-addition { | ||
139 | background-color: #baeeba; | ||
140 | } | ||
141 | |||
142 | .hljs-deletion { | ||
143 | background-color: #ffc8bd; | ||
144 | } | ||
145 | |||
146 | .hljs-comment .hljs-yardoctag { | ||
147 | font-weight: bold; | ||
148 | } | ||
diff --git a/themes/default/home.twig b/themes/default/home.twig index 093c2dc5..59615691 100755 --- a/themes/default/home.twig +++ b/themes/default/home.twig | |||
@@ -31,13 +31,13 @@ | |||
31 | {% block pager %} | 31 | {% block pager %} |
32 | {% if nb_results > 1 %} | 32 | {% if nb_results > 1 %} |
33 | <div class="results"> | 33 | <div class="results"> |
34 | <div class="nb-results">{{ nb_results }} {% trans "results" %}{% if search_term is defined %}{% trans " found for « " %} {{ search_term }} »{% endif %}</div> | 34 | <div class="nb-results">{{ nb_results }} {% trans "results" %}{% if searchterm is defined %}{% trans " found for « " %} {{ searchterm }} »{% endif %}</div> |
35 | {{ page_links | raw }} | 35 | {{ page_links | raw }} |
36 | </div> | 36 | </div> |
37 | {% elseif nb_results == 1 %} | 37 | {% elseif nb_results == 1 %} |
38 | {% if search_term is defined %} | 38 | {% if searchterm is defined %} |
39 | <div class="results"> | 39 | <div class="results"> |
40 | <div class="nb-results">{% trans "Only one result found for " %} « {{ search_term }} »</div> | 40 | <div class="nb-results">{% trans "Only one result found for " %} « {{ searchterm }} »</div> |
41 | </div> | 41 | </div> |
42 | {% endif %} | 42 | {% endif %} |
43 | {% endif %} | 43 | {% endif %} |
@@ -57,12 +57,22 @@ | |||
57 | {% endfor %} | 57 | {% endfor %} |
58 | 58 | ||
59 | {{ block('pager') }} | 59 | {{ block('pager') }} |
60 | {% if view == 'home' %}{% if nb_results > 1 %}<p><a title="{% trans "Mark all the entries as read" %}" href="./?action=archive_all">{% trans "Mark all the entries as read" %}</a></p>{% endif %}{% endif %} | ||
61 | {% if searchterm is defined %}<a title="{% trans "Tag these results as" %} {{ searchterm }}" href="./?action=add_tag&search={{ searchterm }}">{% trans "Tag these results as" %} {{ searchterm }}</a>{% endif %}<br /> | ||
60 | 62 | ||
61 | {% if view == 'home' %}{% if nb_results > 1 %}<a title="{% trans "mark all the entries as read" %}" href="./?action=archive_all">{% trans "mark all the entries as read" %}</a>{% endif %}{% endif %} | 63 | {% if tag %} |
62 | 64 | <a title="{% trans "Download the articles from this tag in an epub file" %}" href="./?epub&method=tag&value={{ tag.value }}">{% trans "Download as ePub3" %}</a> | |
63 | {% if tag %}<a title="{% trans "Download the articles from this tag in an epub" %}" href="./?epub&method=tag&value={{ tag.value }}">{% trans "Download the articles from this tag in an epub" %}</a> | 65 | <a title="{% trans "Download the articles from this tag in a mobi file" %}" href="./?mobi&method=tag&value={{ tag.value }}">{% trans "Download as Mobi" %}</a> |
64 | {% elseif search_term is defined %}<a title="{% trans "Download the articles from this search in an epub" %}" href="./?epub&method=search&value={{ search_term }}">{% trans "Download the articles from this search in an epub" %}</a> | 66 | <a title="{% trans "Download the articles from this tag in a pdf file" %}" href="./?pdf&method=tag&value={{ tag.value }}">{% trans "Download as PDF" %}</a> |
65 | {% else %}<a title="{% trans "Download the articles from this category in an epub" %}" href="./?epub&method=category&value={{ view }}">{% trans "Download the articles from this category in an epub" %}</a>{% endif %} | 67 | {% elseif searchterm is defined %} |
68 | <a title="{% trans "Download the articles from this search in an epub" %}" href="./?epub&method=search&value={{ searchterm }}">{% trans "Download as ePub3" %}</a> | ||
69 | <a title="{% trans "Download the articles from this search in a mobi file" %}" href="./?mobi&method=search&value={{ searchterm }}">{% trans "Download as Mobi" %}</a> | ||
70 | <a title="{% trans "Download the articles from this search in a pdf file" %}" href="./?pdf&method=search&value={{ searchterm }}">{% trans "Download as PDF" %}</a> | ||
71 | {% else %} | ||
72 | <a title="{% trans "Download the articles from this category in an epub" %}" href="./?epub&method=category&value={{ view }}">{% trans "Download as ePub3" %}</a> | ||
73 | <a title="{% trans "Download the articles from this category in a mobi file" %}" href="./?mobi&method=category&value={{ view }}">{% trans "Download as Mobi" %}</a> | ||
74 | <a title="{% trans "Download the articles from this category in a pdf file" %}" href="./?pdf&method=category&value={{ view }}">{% trans "Download as PDF" %}</a> | ||
75 | {% endif %} | ||
66 | 76 | ||
67 | {% endif %} | 77 | {% endif %} |
68 | {% endblock %} | 78 | {% endblock %} |
diff --git a/themes/default/img/apple-touch-icon-144x144-precomposed.png b/themes/default/img/apple-touch-icon-144x144-precomposed.png deleted file mode 100644 index 9e951230..00000000 --- a/themes/default/img/apple-touch-icon-144x144-precomposed.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/default/img/apple-touch-icon-72x72-precomposed.png b/themes/default/img/apple-touch-icon-72x72-precomposed.png deleted file mode 100644 index 263419b1..00000000 --- a/themes/default/img/apple-touch-icon-72x72-precomposed.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/default/img/apple-touch-icon.png b/themes/default/img/apple-touch-icon.png deleted file mode 100644 index ac8a1cf0..00000000 --- a/themes/default/img/apple-touch-icon.png +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/default/img/favicon.ico b/themes/default/img/favicon.ico deleted file mode 100644 index 0e9ff779..00000000 --- a/themes/default/img/favicon.ico +++ /dev/null | |||
Binary files differ | |||
diff --git a/themes/default/js/popupForm.js b/themes/default/js/popupForm.js deleted file mode 100644 index 06be3f0c..00000000 --- a/themes/default/js/popupForm.js +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | $(document).ready(function() { | ||
2 | |||
3 | $("#search-form").hide(); | ||
4 | |||
5 | function closeSearch() { | ||
6 | $("#search-form").toggle(); | ||
7 | $("#search").toggleClass("current"); | ||
8 | $("#search-arrow").toggleClass("arrow-down"); | ||
9 | } | ||
10 | |||
11 | $("#search").click(function(){ | ||
12 | closeSearch(); | ||
13 | }); | ||
14 | |||
15 | $("#search-form-close").click(function(){ | ||
16 | closeSearch(); | ||
17 | }); | ||
18 | |||
19 | |||
20 | }); \ No newline at end of file | ||
diff --git a/themes/default/js/restoreScroll.js b/themes/default/js/restoreScroll.js deleted file mode 100644 index 331c9e19..00000000 --- a/themes/default/js/restoreScroll.js +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | function supportsLocalStorage() { | ||
2 | try { | ||
3 | return 'localStorage' in window && window['localStorage'] !== null; | ||
4 | } catch (e) { | ||
5 | return false; | ||
6 | } | ||
7 | } | ||
8 | |||
9 | function savePercent(id, percent) { | ||
10 | if (!supportsLocalStorage()) { return false; } | ||
11 | localStorage["poche.article." + id + ".percent"] = percent; | ||
12 | return true; | ||
13 | } | ||
14 | |||
15 | function retrievePercent(id) { | ||
16 | if (!supportsLocalStorage()) { return false; } | ||
17 | |||
18 | var bheight = $(document).height(); | ||
19 | var percent = localStorage["poche.article." + id + ".percent"]; | ||
20 | var scroll = bheight * percent; | ||
21 | |||
22 | $('html,body').animate({scrollTop: scroll}, 'fast'); | ||
23 | |||
24 | return true; | ||
25 | } \ No newline at end of file | ||
diff --git a/themes/default/view.twig b/themes/default/view.twig index 90b11839..181e1284 100755 --- a/themes/default/view.twig +++ b/themes/default/view.twig | |||
@@ -1,6 +1,7 @@ | |||
1 | {% extends "layout.twig" %} | 1 | {% extends "layout.twig" %} |
2 | {% block title %}{{ entry.title|raw }} ({{ entry.url | e | getDomain }}){% endblock %} | 2 | {% block title %}{{ entry.title|raw }} ({{ entry.url | e | getDomain }}){% endblock %} |
3 | {% block content %} | 3 | {% block content %} |
4 | {% include '_highlight.twig' %} | ||
4 | {% include '_pocheit-form.twig' %} | 5 | {% include '_pocheit-form.twig' %} |
5 | <div id="article_toolbar"> | 6 | <div id="article_toolbar"> |
6 | <ul> | 7 | <ul> |
@@ -13,7 +14,9 @@ | |||
13 | {% if constant('SHARE_TWITTER') == 1 %}<li><a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter" title="{% trans "Tweet" %}"><span>{% trans "Tweet" %}</span></a></li>{% endif %} | 14 | {% if constant('SHARE_TWITTER') == 1 %}<li><a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter" title="{% trans "Tweet" %}"><span>{% trans "Tweet" %}</span></a></li>{% endif %} |
14 | {% if constant('SHARE_MAIL') == 1 %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email" title="{% trans "Email" %}"><span>{% trans "Email" %}</span></a></li>{% endif %} | 15 | {% if constant('SHARE_MAIL') == 1 %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email" title="{% trans "Email" %}"><span>{% trans "Email" %}</span></a></li>{% endif %} |
15 | {% if constant('SHARE_SHAARLI') == 1 %}<li><a href="{{ constant('SHAARLI_URL') }}/index.php?post={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="{% trans "shaarli" %}"><span>{% trans "shaarli" %}</span></a></li>{% endif %} | 16 | {% if constant('SHARE_SHAARLI') == 1 %}<li><a href="{{ constant('SHAARLI_URL') }}/index.php?post={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="{% trans "shaarli" %}"><span>{% trans "shaarli" %}</span></a></li>{% endif %} |
16 | {% if constant('FLATTR') == 1 %}{% if flattr.status == constant('FLATTRABLE') %}<li><a href="http://flattr.com/submit/auto?url={{ entry.url }}" class="tool flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span></a></li>{% elseif flattr.status == constant('FLATTRED') %}<li><a href="{{ flattr.flattrItemURL }}" class="tool flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span>{{ flattr.numflattrs }}</a></li>{% endif %}{% endif %} | 17 | {% if constant('SHARE_DIASPORA') == 1 %}<li><a href="{{ constant('DIASPORA_URL') }}/bookmarklet?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}¬es=&v=1&noui=1&jump=doclose" target="_blank" class="tool diaspora" title="{% trans "diaspora" %}"><span>{% trans "diaspora" %}</span></a></li>{% endif %} |
18 | {% if constant('FLATTR') == 1 %}{% if flattr.status == constant('FLATTRABLE') %}<li><a href="http://flattr.com/submit/auto?url={{ entry.url }}" class="tool flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span></a></li>{% elseif flattr.status == constant('FLATTRED') %}<li><a href="{{ flattr.flattrItemURL }}" class="tool flattr" target="_blank" title="{% trans "flattr" %}"><span>{% trans "flattr" %}</span>{{ flattr.numFlattrs }}</a></li>{% endif %}{% endif %} | ||
19 | {% if constant('CARROT') == 1 %}<li><a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" class="tool carrot icon" target="_blank" title="{% trans "carrot" %}"><span>{% trans "carrot" %}</span></a></li>{% endif %} | ||
17 | {% if constant('SHOW_PRINTLINK') == 1 %}<li><a title="{% trans "Print" %}" class="tool print" href="javascript: window.print();"><span>{% trans "Print" %}</span></a></li>{% endif %} | 20 | {% if constant('SHOW_PRINTLINK') == 1 %}<li><a title="{% trans "Print" %}" class="tool print" href="javascript: window.print();"><span>{% trans "Print" %}</span></a></li>{% endif %} |
18 | <li><a href="./?epub&method=id&value={{ entry.id|e }}" title="Generate epub file">EPUB</a></li> | 21 | <li><a href="./?epub&method=id&value={{ entry.id|e }}" title="Generate epub file">EPUB</a></li> |
19 | <li><a href="mailto:hello@wallabag.org?subject=Wrong%20display%20in%20wallabag&body={{ entry.url|url_encode }}" title="{% trans "Does this article appear wrong?" %}" class="tool bad-display"><span>{% trans "Does this article appear wrong?" %}</span></a></li> | 22 | <li><a href="mailto:hello@wallabag.org?subject=Wrong%20display%20in%20wallabag&body={{ entry.url|url_encode }}" title="{% trans "Does this article appear wrong?" %}" class="tool bad-display"><span>{% trans "Does this article appear wrong?" %}</span></a></li> |
@@ -34,7 +37,7 @@ | |||
34 | </article> | 37 | </article> |
35 | {{ block('tags') }} | 38 | {{ block('tags') }} |
36 | </div> | 39 | </div> |
37 | <script src="{{ poche_url }}themes/{{theme}}/js/restoreScroll.js"></script> | 40 | <script src="{{ poche_url }}themes/_global/js/restoreScroll.js"></script> |
38 | <script type="text/javascript"> | 41 | <script type="text/javascript"> |
39 | $(document).ready(function() { | 42 | $(document).ready(function() { |
40 | 43 | ||
@@ -117,4 +120,3 @@ | |||
117 | }); | 120 | }); |
118 | </script> | 121 | </script> |
119 | {% endblock %} | 122 | {% endblock %} |
120 | |||