From 5ecdfcd041767c9e3244a92bb0a6cc3c3f80fea3 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 8 Mar 2016 17:02:34 +0100 Subject: manage assets through npm first draft remote assetic totally work nearly there use at least nodejs > 0.12 use proper version of grunt bump nodejs version for travis update npm workaround for materialize install node 5.0 add grunt-cli baggy theme & cache node modules cache bower & npm make travis build assets on php7 only exclude installing node & npm if not needed & use bash clean & try to make icomoon work on baggy ready config for travis rebase make travis work more travis work impove travis & update deps add missing pixrem deps add module through oddly lost ui updates install latest nodejs add install_dev.sh, link local binaries for npm/bower/grunt ui improvements (mostly baggy) fix travis build no need to install on travis Add unread filter to entries pages Add the ability to filter for unread pages in the filters menu. Add unread filter test to EntryControllerTest Add a new test to the EntryControllerTest collection which checks that only entries which have not been archived (and are treated as "unread") are retrieved. Improve English translation Update FAQ -Fix grammar -Add notes about MTA, firewall, and SELinux Update installation instructions -Fix grammar -Add SELinux section add screenshots of android docu in English Fix the deletion of Tags/Entries relation when delete an entry Fix #2121 Move fixtures to the right place Display a message when saving an entry failed When saving an entry fail because of database error we previously just returned `false`. Now we got an error in the log and the displayed notice to the user is updated too. Change ManyToMany between entry & tag Following https://gist.github.com/Ocramius/3121916 Be sure to remove the related entity when removing an entity. Let say you have Entry -> EntryTag -> Tag. If you remove the entry: - before that commit, the EntryTag will stay (at least using SQLite). - with that commit, the related entity is removed Prepare wallabag 2.0.5 enforce older materialize version --- .../_global/img/appicon/apple-touch-icon-114.png | Bin 0 -> 2281 bytes .../_global/img/appicon/apple-touch-icon-120.png | Bin 0 -> 2318 bytes .../_global/img/appicon/apple-touch-icon-144.png | Bin 0 -> 2718 bytes .../_global/img/appicon/apple-touch-icon-152.png | Bin 0 -> 2835 bytes .../_global/img/appicon/apple-touch-icon-57.png | Bin 0 -> 1582 bytes .../_global/img/appicon/apple-touch-icon-72.png | Bin 0 -> 1709 bytes .../_global/img/appicon/apple-touch-icon-76.png | Bin 0 -> 1838 bytes .../_global/img/appicon/apple-touch-icon.png | Bin 0 -> 1579 bytes .../static/themes/_global/img/appicon/favicon.ico | Bin 0 -> 34494 bytes .../static/themes/_global/img/bg-select.png | Bin 0 -> 1095 bytes .../_global/img/icons/carrot-icon--black.png | Bin 0 -> 1538 bytes .../_global/img/icons/carrot-icon--white.png | Bin 0 -> 1605 bytes .../_global/img/icons/diaspora-icon--black.png | Bin 0 -> 1555 bytes .../_global/img/icons/diaspora-icon--white.png | Bin 0 -> 612 bytes .../themes/_global/img/logo-other_themes.png | Bin 0 -> 3058 bytes .../static/themes/_global/img/logo-square.png | Bin 0 -> 3314 bytes app/Resources/static/themes/_global/img/logo-w.png | Bin 0 -> 4916 bytes .../static/themes/_global/img/logo-wallabag.svg | 300 +++++ .../static/themes/_global/js/bookmarklet.js | 2 + .../static/themes/_global/js/restoreScroll.js | 25 + app/Resources/static/themes/baggy/css/font.css | 6 + app/Resources/static/themes/baggy/css/main.css | 1233 ++++++++++++++++++++ app/Resources/static/themes/baggy/css/messages.css | 19 + app/Resources/static/themes/baggy/css/print.css | 64 + .../static/themes/baggy/css/ratatouille.css | 225 ++++ app/Resources/static/themes/baggy/font/icomoon.eot | Bin 0 -> 97236 bytes app/Resources/static/themes/baggy/font/icomoon.svg | 501 ++++++++ app/Resources/static/themes/baggy/font/icomoon.ttf | Bin 0 -> 97072 bytes .../static/themes/baggy/font/icomoon.woff | Bin 0 -> 97148 bytes app/Resources/static/themes/baggy/img/blank.png | Bin 0 -> 141 bytes app/Resources/static/themes/baggy/img/down.png | Bin 0 -> 216 bytes app/Resources/static/themes/baggy/img/list.png | Bin 0 -> 201 bytes app/Resources/static/themes/baggy/img/table.png | Bin 0 -> 229 bytes app/Resources/static/themes/baggy/img/top.png | Bin 0 -> 212 bytes app/Resources/static/themes/baggy/js/autoClose.js | 6 + .../static/themes/baggy/js/autoCompleteTags.js | 47 + .../static/themes/baggy/js/closeMessage.js | 17 + app/Resources/static/themes/baggy/js/init.js | 101 ++ app/Resources/static/themes/baggy/js/popupForm.js | 100 ++ app/Resources/static/themes/baggy/js/saveLink.js | 78 ++ app/Resources/static/themes/material/css/main.css | 611 ++++++++++ app/Resources/static/themes/material/css/print.css | 64 + app/Resources/static/themes/material/js/init.js | 116 ++ 43 files changed, 3515 insertions(+) create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-114.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-120.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-144.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-152.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-57.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-72.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon-76.png create mode 100755 app/Resources/static/themes/_global/img/appicon/apple-touch-icon.png create mode 100755 app/Resources/static/themes/_global/img/appicon/favicon.ico create mode 100644 app/Resources/static/themes/_global/img/bg-select.png create mode 100644 app/Resources/static/themes/_global/img/icons/carrot-icon--black.png create mode 100644 app/Resources/static/themes/_global/img/icons/carrot-icon--white.png create mode 100644 app/Resources/static/themes/_global/img/icons/diaspora-icon--black.png create mode 100644 app/Resources/static/themes/_global/img/icons/diaspora-icon--white.png create mode 100755 app/Resources/static/themes/_global/img/logo-other_themes.png create mode 100644 app/Resources/static/themes/_global/img/logo-square.png create mode 100755 app/Resources/static/themes/_global/img/logo-w.png create mode 100644 app/Resources/static/themes/_global/img/logo-wallabag.svg create mode 100644 app/Resources/static/themes/_global/js/bookmarklet.js create mode 100644 app/Resources/static/themes/_global/js/restoreScroll.js create mode 100755 app/Resources/static/themes/baggy/css/font.css create mode 100755 app/Resources/static/themes/baggy/css/main.css create mode 100755 app/Resources/static/themes/baggy/css/messages.css create mode 100755 app/Resources/static/themes/baggy/css/print.css create mode 100644 app/Resources/static/themes/baggy/css/ratatouille.css create mode 100644 app/Resources/static/themes/baggy/font/icomoon.eot create mode 100644 app/Resources/static/themes/baggy/font/icomoon.svg create mode 100644 app/Resources/static/themes/baggy/font/icomoon.ttf create mode 100644 app/Resources/static/themes/baggy/font/icomoon.woff create mode 100755 app/Resources/static/themes/baggy/img/blank.png create mode 100644 app/Resources/static/themes/baggy/img/down.png create mode 100755 app/Resources/static/themes/baggy/img/list.png create mode 100755 app/Resources/static/themes/baggy/img/table.png create mode 100644 app/Resources/static/themes/baggy/img/top.png create mode 100644 app/Resources/static/themes/baggy/js/autoClose.js create mode 100755 app/Resources/static/themes/baggy/js/autoCompleteTags.js create mode 100644 app/Resources/static/themes/baggy/js/closeMessage.js create mode 100755 app/Resources/static/themes/baggy/js/init.js create mode 100644 app/Resources/static/themes/baggy/js/popupForm.js create mode 100755 app/Resources/static/themes/baggy/js/saveLink.js create mode 100755 app/Resources/static/themes/material/css/main.css create mode 100755 app/Resources/static/themes/material/css/print.css create mode 100755 app/Resources/static/themes/material/js/init.js (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-114.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-114.png new file mode 100755 index 00000000..0e96edd5 Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-114.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-120.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-120.png new file mode 100755 index 00000000..dc5aab1c Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-120.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-144.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-144.png new file mode 100755 index 00000000..1d005db6 Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-144.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-152.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-152.png new file mode 100755 index 00000000..f915231f Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-152.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-57.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-57.png new file mode 100755 index 00000000..5aa19ed9 Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-57.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-72.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-72.png new file mode 100755 index 00000000..b8b48e1b Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-72.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-76.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-76.png new file mode 100755 index 00000000..9f9dba27 Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon-76.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/apple-touch-icon.png b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon.png new file mode 100755 index 00000000..9cf29e2b Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/apple-touch-icon.png differ diff --git a/app/Resources/static/themes/_global/img/appicon/favicon.ico b/app/Resources/static/themes/_global/img/appicon/favicon.ico new file mode 100755 index 00000000..0346558b Binary files /dev/null and b/app/Resources/static/themes/_global/img/appicon/favicon.ico differ diff --git a/app/Resources/static/themes/_global/img/bg-select.png b/app/Resources/static/themes/_global/img/bg-select.png new file mode 100644 index 00000000..95120441 Binary files /dev/null and b/app/Resources/static/themes/_global/img/bg-select.png differ diff --git a/app/Resources/static/themes/_global/img/icons/carrot-icon--black.png b/app/Resources/static/themes/_global/img/icons/carrot-icon--black.png new file mode 100644 index 00000000..6da7925b Binary files /dev/null and b/app/Resources/static/themes/_global/img/icons/carrot-icon--black.png differ diff --git a/app/Resources/static/themes/_global/img/icons/carrot-icon--white.png b/app/Resources/static/themes/_global/img/icons/carrot-icon--white.png new file mode 100644 index 00000000..a70044b6 Binary files /dev/null and b/app/Resources/static/themes/_global/img/icons/carrot-icon--white.png differ diff --git a/app/Resources/static/themes/_global/img/icons/diaspora-icon--black.png b/app/Resources/static/themes/_global/img/icons/diaspora-icon--black.png new file mode 100644 index 00000000..32bca194 Binary files /dev/null and b/app/Resources/static/themes/_global/img/icons/diaspora-icon--black.png differ diff --git a/app/Resources/static/themes/_global/img/icons/diaspora-icon--white.png b/app/Resources/static/themes/_global/img/icons/diaspora-icon--white.png new file mode 100644 index 00000000..fc48d47c Binary files /dev/null and b/app/Resources/static/themes/_global/img/icons/diaspora-icon--white.png differ diff --git a/app/Resources/static/themes/_global/img/logo-other_themes.png b/app/Resources/static/themes/_global/img/logo-other_themes.png new file mode 100755 index 00000000..c90aa46f Binary files /dev/null and b/app/Resources/static/themes/_global/img/logo-other_themes.png differ diff --git a/app/Resources/static/themes/_global/img/logo-square.png b/app/Resources/static/themes/_global/img/logo-square.png new file mode 100644 index 00000000..d5e05977 Binary files /dev/null and b/app/Resources/static/themes/_global/img/logo-square.png differ diff --git a/app/Resources/static/themes/_global/img/logo-w.png b/app/Resources/static/themes/_global/img/logo-w.png new file mode 100755 index 00000000..65dc607b Binary files /dev/null and b/app/Resources/static/themes/_global/img/logo-w.png differ diff --git a/app/Resources/static/themes/_global/img/logo-wallabag.svg b/app/Resources/static/themes/_global/img/logo-wallabag.svg new file mode 100644 index 00000000..40193e1c --- /dev/null +++ b/app/Resources/static/themes/_global/img/logo-wallabag.svg @@ -0,0 +1,300 @@ + + + +]> + + + + + + diff --git a/app/Resources/static/themes/_global/js/bookmarklet.js b/app/Resources/static/themes/_global/js/bookmarklet.js new file mode 100644 index 00000000..2afdfc3c --- /dev/null +++ b/app/Resources/static/themes/_global/js/bookmarklet.js @@ -0,0 +1,2 @@ + +top["bookmarklet-url@wallabag.org"]=""+""+""+""+"bag it!"+''+""+""+"'; diff --git a/app/Resources/static/themes/_global/js/restoreScroll.js b/app/Resources/static/themes/_global/js/restoreScroll.js deleted file mode 100644 index 9c4d7e20..00000000 --- a/app/Resources/static/themes/_global/js/restoreScroll.js +++ /dev/null @@ -1,25 +0,0 @@ -function supportsLocalStorage() { - try { - return 'localStorage' in window && window.localStorage !== null; - } catch (e) { - return false; - } -} - -function savePercent(id, percent) { - if (!supportsLocalStorage()) { return false; } - localStorage['wallabag.article.' + id + '.percent'] = percent; - return true; -} - -function retrievePercent(id) { - if (!supportsLocalStorage()) { return false; } - - var bheight = $(document).height(); - var percent = localStorage['wallabag.article.' + id + '.percent']; - var scroll = bheight * percent; - - $('html,body').animate({ scrollTop: scroll }, 'fast'); - - return true; -} diff --git a/app/Resources/static/themes/_global/js/tools.js b/app/Resources/static/themes/_global/js/tools.js new file mode 100644 index 00000000..ab30deb1 --- /dev/null +++ b/app/Resources/static/themes/_global/js/tools.js @@ -0,0 +1,50 @@ +const $ = require('jquery'); + +function supportsLocalStorage() { + try { + return 'localStorage' in window && window.localStorage !== null; + } catch (e) { + return false; + } +} + +function savePercent(id, percent) { + if (!supportsLocalStorage()) { return false; } + localStorage[`wallabag.article.${id}.percent`] = percent; + return true; +} + +function retrievePercent(id) { + if (!supportsLocalStorage()) { return false; } + + const bheight = $(document).height(); + const percent = localStorage[`wallabag.article.${id}.percent`]; + const scroll = bheight * percent; + + $('html,body').animate({ scrollTop: scroll }, 'fast'); + + return true; +} + +function initFilters() { + // no display if filters not available + if ($('div').is('#filters')) { + $('#button_filters').show(); + $('.button-collapse-right').sideNav({ edge: 'right' }); + $('#clear_form_filters').on('click', () => { + $('#filters input').val(''); + $('#filters :checked').removeAttr('checked'); + return false; + }); + } +} + +function initExport() { + // no display if export not available + if ($('div').is('#export')) { + $('#button_export').show(); + $('.button-collapse-right').sideNav({ edge: 'right' }); + } +} + +export { savePercent, retrievePercent, initFilters, initExport }; diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index 7ffaa12c..58f0eb82 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -481,9 +481,6 @@ footer a { text-transform: none; margin-bottom: 0; line-height: 1.2; - text-align: justify; - -moz-text-align-last: center; - text-align-last: center; } .entry h2::after { @@ -1071,7 +1068,7 @@ pre code { font-family: "Courier New", Courier, monospace; } -#filter-form { +#filters { position: fixed; width: 20%; height: 100%; @@ -1086,7 +1083,7 @@ pre code { min-width: 300px; } -#filter-form form .filter-group { +#filters form .filter-group { margin: 5px; } @@ -1125,9 +1122,11 @@ pre code { .entry { width: 49%; } + .entry:nth-child(3n+1) { margin-left: 1.5%; } + .entry:nth-child(2n+1) { margin-left: 0; } @@ -1137,6 +1136,7 @@ pre code { #article { width: 80%; } + .topPosF { right: 2.5em; } @@ -1147,6 +1147,7 @@ pre code { width: 100%; margin-left: 0; } + #display-mode { display: none; } @@ -1197,7 +1198,6 @@ pre code { height: auto; top: 0.5em; width: 75px; - height: 75px; margin-left: -37.5px; } @@ -1214,6 +1214,7 @@ pre code { background-color: #999; font-size: 1.2em; } + .desktopHide:hover, .desktopHide:focus { background-color: #fff; diff --git a/app/Resources/static/themes/baggy/css/ratatouille.css b/app/Resources/static/themes/baggy/css/ratatouille.css index b5aeb54e..a6167f34 100644 --- a/app/Resources/static/themes/baggy/css/ratatouille.css +++ b/app/Resources/static/themes/baggy/css/ratatouille.css @@ -63,7 +63,9 @@ pre { max-width: 61.25em; /* 980px */ } -table, img, figure { +table, +img, +figure { max-width: 100%; height: auto; } diff --git a/app/Resources/static/themes/baggy/js/autoClose.js b/app/Resources/static/themes/baggy/js/autoClose.js deleted file mode 100644 index b0dafab2..00000000 --- a/app/Resources/static/themes/baggy/js/autoClose.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = global.jquery = require('jquery'); - -$(document).ready(function () { - var currentUrl = window.location.href; - if (currentUrl.match('&closewin=true')) { - window.close(); - } -}); diff --git a/app/Resources/static/themes/baggy/js/autoCompleteTags.js b/app/Resources/static/themes/baggy/js/autoCompleteTags.js index edd0a421..f287ebfa 100755 --- a/app/Resources/static/themes/baggy/js/autoCompleteTags.js +++ b/app/Resources/static/themes/baggy/js/autoCompleteTags.js @@ -1,46 +1,8 @@ -var $ = global.jquery = require('jquery'); +function split(val) { + return val.split(/,\s*/); +} +function extractLast(term) { + return split(term).pop(); +} -jQuery(function ($) { - function split(val) { - return val.split(/,\s*/); - } - function extractLast(term) { - return split(term).pop(); - } - - - $('#value').bind('keydown', function (event) { - if (event.keyCode === $.ui.keyCode.TAB && $(this).data('ui-autocomplete').menu.active) { - event.preventDefault(); - } - }).autocomplete({ - source: function (request, response) { - $.getJSON('./?view=tags', { - term: extractLast(request.term), - //id: $(':hidden#entry_id').val() - }, response); - }, - search: function () { - // custom minLength - var term = extractLast(this.value); - if (term.length < 1) { - return false; - } - }, - focus: function () { - // prevent value inserted on focus - return false; - }, - select: function (event, ui) { - var terms = split(this.value); - // remove the current input - terms.pop(); - // add the selected item - terms.push(ui.item.value); - // add placeholder to get the comma-and-space at the end - terms.push(''); - this.value = terms.join(', '); - return false; - }, - }); -}); +export { split, extractLast }; diff --git a/app/Resources/static/themes/baggy/js/closeMessage.js b/app/Resources/static/themes/baggy/js/closeMessage.js deleted file mode 100644 index ae4b1791..00000000 --- a/app/Resources/static/themes/baggy/js/closeMessage.js +++ /dev/null @@ -1,19 +0,0 @@ -var $ = global.jquery = require('jquery'); - -$(function () { - //--------------------------------------------------------------------------- - // Show the close icon when the user hover over a message - //--------------------------------------------------------------------------- - // $('.messages').on('mouseenter', function(){ - // $(this).find('a.closeMessage').stop(true, true).show(); - // }).on('mouseleave', function(){ - // $(this).find('a.closeMessage').stop(true, true).hide(); - // }); - //--------------------------------------------------------------------------- - // Close the message box when the user clicks the close icon - //--------------------------------------------------------------------------- - $('a.closeMessage').on('click', function () { - $(this).parents('div.messages').slideUp(300, function () { $(this).remove(); }); - return false; - }); -}); diff --git a/app/Resources/static/themes/baggy/js/init.js b/app/Resources/static/themes/baggy/js/init.js index d7d4b166..c6a54f6f 100755 --- a/app/Resources/static/themes/baggy/js/init.js +++ b/app/Resources/static/themes/baggy/js/init.js @@ -1,21 +1,25 @@ -var $ = global.jquery = require('jquery'); +const $ = global.jquery = require('jquery'); require('jquery.cookie'); require('jquery-ui'); -var annotator = require('annotator'); +const annotator = require('annotator'); +import { savePercent, retrievePercent } from '../../_global/js/tools.js'; +import { split, extractLast } from './autoCompleteTags.js'; +import { toggleSaveLinkForm } from './uiTools.js'; -$.fn.ready(function () { - var $listmode = $('#listmode'); - var $listentries = $('#list-entries'); +$.fn.ready(() => { + const $listmode = $('#listmode'); + const $listentries = $('#list-entries'); /* ========================================================================== Menu ========================================================================== */ - $('#menu').click(function () { + $('#menu').click(() => { $('#links').toggleClass('menu--open'); - if ($('#content').hasClass('opacity03')) { - $('#content').removeClass('opacity03'); + const content = $('#content'); + if (content.hasClass('opacity03')) { + content.removeClass('opacity03'); } }); @@ -23,8 +27,8 @@ $.fn.ready(function () { List mode or Table Mode ========================================================================== */ - $listmode.click(function () { - if (jquery.cookie('listmode') === 1) { + $listmode.click(() => { + if ($.cookie('listmode') === 1) { // Cookie $.removeCookie('listmode'); @@ -33,7 +37,7 @@ $.fn.ready(function () { $listmode.addClass('listmode'); } else { // Cookie - jquery.cookie('listmode', 1, { expires: 365 }); + $.cookie('listmode', 1, { expires: 365 }); $listentries.addClass('listmode'); $listmode.removeClass('listmode'); @@ -45,7 +49,7 @@ $.fn.ready(function () { Cookie listmode ========================================================================== */ - if (jquery.cookie('listmode') === 1) { + if ($.cookie('listmode') === 1) { $listentries.addClass('listmode'); $listmode.removeClass('listmode'); $listmode.addClass('tablemode'); @@ -56,43 +60,250 @@ $.fn.ready(function () { ========================================================================== */ - $('#nav-btn-add-tag').on('click', function () { + $('#nav-btn-add-tag').on('click', () => { $('.nav-panel-add-tag').toggle(100); $('.nav-panel-menu').addClass('hidden'); $('#tag_label').focus(); return false; }); + /** + * Filters & Export + */ + // no display if filters not available + if ($('div').is('#filters')) { + $('#button_filters').show(); + $('#clear_form_filters').on('click', () => { + $('#filters input').val(''); + $('#filters :checked').removeAttr('checked'); + return false; + }); + } + /* ========================================================================== Annotations & Remember position ========================================================================== */ - if ($('article').length) { - var app = new annotator.App(); + if ($('article').length) { + const app = new annotator.App(); + + app.include(annotator.ui.main, { + element: document.querySelector('article'), + }); - app.include(annotator.ui.main, { - element: document.querySelector('article'), - }); + const x = JSON.parse($('#annotationroutes').html()); + app.include(annotator.storage.http, x); - var x = JSON.parse($('#annotationroutes').html()); - app.include(annotator.storage.http, x); + app.start().then(() => { + app.annotations.load({ entry: x.entryId }); + }); - app.start().then(function () { - app.annotations.load({ entry: x.entryId }); - }); + $(window).scroll(() => { + const scrollTop = $(window).scrollTop(); + const docHeight = $(document).height(); + const scrollPercent = (scrollTop) / (docHeight); + const scrollPercentRounded = Math.round(scrollPercent * 100) / 100; + savePercent(x.entryId, scrollPercentRounded); + }); - $(window).scroll(function (e) { - var scrollTop = $(window).scrollTop(); - var docHeight = $(document).height(); - var scrollPercent = (scrollTop) / (docHeight); - var scrollPercentRounded = Math.round(scrollPercent * 100) / 100; - savePercent(x.entryId, scrollPercentRounded); - }); + retrievePercent(x.entryId); + $(window).resize(() => { retrievePercent(x.entryId); + }); + } + + /** + * Close window after adding entry if popup + */ + const currentUrl = window.location.href; + if (currentUrl.match('&closewin=true')) { + window.close(); + } + + /** + * Tags autocomplete + */ + $('#value').bind('keydown', (event) => { + if (event.keyCode === $.ui.keyCode.TAB && $(this).data('ui-autocomplete').menu.active) { + event.preventDefault(); + } + }).autocomplete({ + source: function source(request, response) { + $.getJSON('./?view=tags', { + term: extractLast(request.term), + //id: $(':hidden#entry_id').val() + }, response); + }, + search: function search() { + // custom minLength + const term = extractLast(this.value); + return term.length >= 1; + }, + focus: function focus() { + // prevent value inserted on focus + return false; + }, + select: function select(event, ui) { + const terms = split(this.value); + // remove the current input + terms.pop(); + // add the selected item + terms.push(ui.item.value); + // add placeholder to get the comma-and-space at the end + terms.push(''); + this.value = terms.join(', '); + return false; + }, + }); + + //--------------------------------------------------------------------------- + // Close the message box when the user clicks the close icon + //--------------------------------------------------------------------------- + $('a.closeMessage').on('click', () => { + $(this).parents('div.messages').slideUp(300, () => { $(this).remove(); }); + return false; + }); + + $('#search-form').hide(); + $('#bagit-form').hide(); + $('#filters').hide(); + $('#download-form').hide(); - $(window).resize(function () { - retrievePercent(x.entryId); - }); + //--------------------------------------------------------------------------- + // Toggle the 'Search' popup in the sidebar + //--------------------------------------------------------------------------- + function toggleSearch() { + $('#search-form').toggle(); + $('#search').toggleClass('current'); + $('#search').toggleClass('active-current'); + $('#search-arrow').toggleClass('arrow-down'); + if ($('#search').hasClass('current')) { + $('#content').addClass('opacity03'); + } else { + $('#content').removeClass('opacity03'); + } + } + + //--------------------------------------------------------------------------- + // Toggle the 'Filter' popup on entries list + //--------------------------------------------------------------------------- + function toggleFilter() { + $('#filters').toggle(); + } + + //--------------------------------------------------------------------------- + // Toggle the 'Download' popup on entries list + //--------------------------------------------------------------------------- + function toggleDownload() { + $('#download-form').toggle(); + } + + //--------------------------------------------------------------------------- + // Toggle the 'Save a Link' popup in the sidebar + //--------------------------------------------------------------------------- + function toggleBagit() { + $('#bagit-form').toggle(); + $('#bagit').toggleClass('current'); + $('#bagit').toggleClass('active-current'); + $('#bagit-arrow').toggleClass('arrow-down'); + if ($('#bagit').hasClass('current')) { + $('#content').addClass('opacity03'); + } else { + $('#content').removeClass('opacity03'); } + } + + //--------------------------------------------------------------------------- + // Close all #links popups in the sidebar + //--------------------------------------------------------------------------- + function closePopups() { + $('#links .messages').hide(); + $('#links > li > a').removeClass('active-current'); + $('#links > li > a').removeClass('current'); + $('[id$=-arrow]').removeClass('arrow-down'); + $('#content').removeClass('opacity03'); + } + + $('#search').click(() => { + closePopups(); + toggleSearch(); + $('#searchfield').focus(); + }); + + $('.filter-btn').click(() => { + closePopups(); + toggleFilter(); + }); + + $('.download-btn').click(() => { + closePopups(); + toggleDownload(); + }); + + $('#bagit').click(() => { + closePopups(); + toggleBagit(); + $('#plainurl').focus(); + }); + + $('#search-form-close').click(() => { + toggleSearch(); + }); + + $('#filter-form-close').click(() => { + toggleFilter(); + }); + + $('#download-form-close').click(() => { + toggleDownload(); + }); + + $('#bagit-form-close').click(() => { + toggleBagit(); + }); + + const $bagitFormForm = $('#bagit-form-form'); + + /* ========================================================================== + bag it link and close button + ========================================================================== */ + + // send 'bag it link' form request via ajax + $bagitFormForm.submit((event) => { + $('body').css('cursor', 'wait'); + $('#add-link-result').empty(); + + $.ajax({ + type: $bagitFormForm.attr('method'), + url: $bagitFormForm.attr('action'), + data: $bagitFormForm.serialize(), + success: function success() { + $('#add-link-result').html('Done!'); + $('#plainurl').val(''); + $('#plainurl').blur(''); + $('body').css('cursor', 'auto'); + }, + error: function error() { + $('#add-link-result').html('Failed!'); + $('body').css('cursor', 'auto'); + }, + }); + + event.preventDefault(); + }); + + /* ========================================================================== + Process all links inside an article + ========================================================================== */ + + $('article a[href^="http"]').after( + () => `' + ); + + $('.add-to-wallabag-link-after').click((event) => { + toggleSaveLinkForm($(this).attr('href'), event); + event.preventDefault(); + }); }); diff --git a/app/Resources/static/themes/baggy/js/popupForm.js b/app/Resources/static/themes/baggy/js/popupForm.js deleted file mode 100644 index 95ba60ee..00000000 --- a/app/Resources/static/themes/baggy/js/popupForm.js +++ /dev/null @@ -1,101 +0,0 @@ -var $ = global.jquery = require('jquery'); - -$(document).ready(function () { - $('#search-form').hide(); - $('#bagit-form').hide(); - $('#filter-form').hide(); - $('#download-form').hide(); - - //--------------------------------------------------------------------------- - // Toggle the 'Search' popup in the sidebar - //--------------------------------------------------------------------------- - function toggleSearch() { - $('#search-form').toggle(); - $('#search').toggleClass('current'); - $('#search').toggleClass('active-current'); - $('#search-arrow').toggleClass('arrow-down'); - if ($('#search').hasClass('current')) { - $('#content').addClass('opacity03'); - } else { - $('#content').removeClass('opacity03'); - } - } - - //--------------------------------------------------------------------------- - // Toggle the 'Filter' popup on entries list - //--------------------------------------------------------------------------- - function toggleFilter() { - $('#filter-form').toggle(); - } - - //--------------------------------------------------------------------------- - // Toggle the 'Download' popup on entries list - //--------------------------------------------------------------------------- - function toggleDownload() { - $('#download-form').toggle(); - } - - //--------------------------------------------------------------------------- - // Toggle the 'Save a Link' popup in the sidebar - //--------------------------------------------------------------------------- - function toggleBagit() { - $('#bagit-form').toggle(); - $('#bagit').toggleClass('current'); - $('#bagit').toggleClass('active-current'); - $('#bagit-arrow').toggleClass('arrow-down'); - if ($('#bagit').hasClass('current')) { - $('#content').addClass('opacity03'); - } else { - $('#content').removeClass('opacity03'); - } - } - - //--------------------------------------------------------------------------- - // Close all #links popups in the sidebar - //--------------------------------------------------------------------------- - function closePopups() { - $('#links .messages').hide(); - $('#links > li > a').removeClass('active-current'); - $('#links > li > a').removeClass('current'); - $('[id$=-arrow]').removeClass('arrow-down'); - $('#content').removeClass('opacity03'); - } - - $('#search').click(function () { - closePopups(); - toggleSearch(); - $('#searchfield').focus(); - }); - - $('.filter-btn').click(function () { - closePopups(); - toggleFilter(); - }); - - $('.download-btn').click(function () { - closePopups(); - toggleDownload(); - }); - - $('#bagit').click(function () { - closePopups(); - toggleBagit(); - $('#plainurl').focus(); - }); - - $('#search-form-close').click(function () { - toggleSearch(); - }); - - $('#filter-form-close').click(function () { - toggleFilter(); - }); - - $('#download-form-close').click(function () { - toggleDownload(); - }); - - $('#bagit-form-close').click(function () { - toggleBagit(); - }); -}); diff --git a/app/Resources/static/themes/baggy/js/saveLink.js b/app/Resources/static/themes/baggy/js/saveLink.js deleted file mode 100755 index 5c720886..00000000 --- a/app/Resources/static/themes/baggy/js/saveLink.js +++ /dev/null @@ -1,75 +0,0 @@ -var $ = global.jquery = require('jquery'); - -$.fn.ready(function () { - var $bagit = $('#bagit'); - var $bagitForm = $('#bagit-form'); - var $bagitFormForm = $('#bagit-form-form'); - - /* ========================================================================== - bag it link and close button - ========================================================================== */ - - function toggleSaveLinkForm(url, event) { - $('#add-link-result').empty(); - - $bagit.toggleClass('active-current'); - - // only if bag-it link is not presented on page - if ($bagit.length === 0) { - if (event !== 'undefined' && event) { - $bagitForm.css({ position: 'absolute', top: event.pageY, left: event.pageX - 200 }); - } else { - $bagitForm.css({ position: 'relative', top: 'auto', left: 'auto' }); - } - } - - if ($('#search-form').length !== 0) { - $('#search').removeClass('current'); - $('#search-arrow').removeClass('arrow-down'); - $('#search-form').hide(); - } - $bagitForm.toggle(); - $('#content').toggleClass('opacity03'); - if (url !== 'undefined' && url) { - $('#plainurl').val(url); - } - $('#plainurl').focus(); - } - - // send 'bag it link' form request via ajax - $bagitFormForm.submit(function (event) { - $('body').css('cursor', 'wait'); - $('#add-link-result').empty(); - - $.ajax({ - type: $bagitFormForm.attr('method'), - url: $bagitFormForm.attr('action'), - data: $bagitFormForm.serialize(), - success: function (data) { - $('#add-link-result').html('Done!'); - $('#plainurl').val(''); - $('#plainurl').blur(''); - $('body').css('cursor', 'auto'); - }, - error: function (data) { - $('#add-link-result').html('Failed!'); - $('body').css('cursor', 'auto'); - }, - }); - - event.preventDefault(); - }); - - /* ========================================================================== - Process all links inside an article - ========================================================================== */ - - $('article a[href^="http"]').after(function () { - return ' '; - }); - - $('.add-to-wallabag-link-after').click(function (event) { - toggleSaveLinkForm($(this).attr('href'), event); - event.preventDefault(); - }); -}); diff --git a/app/Resources/static/themes/baggy/js/uiTools.js b/app/Resources/static/themes/baggy/js/uiTools.js new file mode 100644 index 00000000..900b2707 --- /dev/null +++ b/app/Resources/static/themes/baggy/js/uiTools.js @@ -0,0 +1,35 @@ +const $ = require('jquery'); + +function toggleSaveLinkForm(url, event) { + $('#add-link-result').empty(); + + const $bagit = $('#bagit'); + const $bagitForm = $('#bagit-form'); + + $bagit.toggleClass('active-current'); + + // only if bag-it link is not presented on page + if ($bagit.length === 0) { + if (event !== 'undefined' && event) { + $bagitForm.css({ position: 'absolute', top: event.pageY, left: event.pageX - 200 }); + } else { + $bagitForm.css({ position: 'relative', top: 'auto', left: 'auto' }); + } + } + + const searchForm = $('#search-form'); + const plainUrl = $('#plainurl'); + if (searchForm.length !== 0) { + $('#search').removeClass('current'); + $('#search-arrow').removeClass('arrow-down'); + searchForm.hide(); + } + $bagitForm.toggle(); + $('#content').toggleClass('opacity03'); + if (url !== 'undefined' && url) { + plainUrl.val(url); + } + plainUrl.focus(); +} + +export { toggleSaveLinkForm }; diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 65b708c7..1d14448f 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -174,7 +174,7 @@ div.pagination ul .next.disabled { footer.page-footer { margin-top: 10px; - padding-top: 0px; + padding-top: 0; } footer .row { @@ -257,8 +257,9 @@ nav input { display: none; } -.input-field.nav-panel-add, .input-field.nav-panel-add form { - height: 100%; +.input-field.nav-panel-add, +.input-field.nav-panel-add form { + height: 100%; } /* ========================================================================== @@ -355,8 +356,9 @@ main ul.row { display: block; } -.card .card-content i.right, .card .card-reveal i.right { - margin-left: 0; +.card .card-content i.right, +.card .card-reveal i.right { + margin-left: 0; } .card .card-entry-labels { @@ -528,30 +530,38 @@ main ul.row { footer { padding-left: 0; } + nav, main, footer { padding-left: 0; } + .pagination { width: auto; } + .reader-mode { width: 240px !important; } + .reader-mode span { opacity: 1; } + .tabs { display: inline-block; height: auto; } + .tab { min-width: 100%; } + .indicator { display: none; } + .pagination li.prev, .pagination li.next { width: auto; @@ -569,38 +579,47 @@ main ul.row { width: 25%; margin-left: 0; } + .row .col.l2 { width: 33.33333%; margin-left: 0; } + .row .col.l3 { width: 41.66667%; margin-left: 0; } + .row .col.l4 { width: 50%; margin-left: 0; } + .row .col.l5 { width: 58.33333%; margin-left: 0; } + .row .col.l6 { width: 66.66667%; margin-left: 0; } + .row .col.l7 { width: 75%; margin-left: 0; } + .row .col.l8 { width: 83.33333%; margin-left: 0; } + .row .col.l9 { width: 91.66667%; margin-left: 0; } + .row .col.l10 { width: 100%; margin-left: 0; @@ -646,7 +665,7 @@ main ul.row { } .icon-link::before { - content: "\e9cb"; + content: "\e9cb"; } footer [class^="icon-"], @@ -677,5 +696,5 @@ div.settings div.file-field div { } .input-field label.active { - font-size: 1rem; + font-size: 1rem; } diff --git a/app/Resources/static/themes/material/css/print.css b/app/Resources/static/themes/material/css/print.css index 1eb96735..98505aae 100755 --- a/app/Resources/static/themes/material/css/print.css +++ b/app/Resources/static/themes/material/css/print.css @@ -28,10 +28,10 @@ .messages, .entry + .results, #slide-out, - .progress, .hide-on-large-only, + .progress, + .hide-on-large-only, #article > aside, - #article .mbm a - { + #article .mbm a { display: none !important; } diff --git a/app/Resources/static/themes/material/js/init.js b/app/Resources/static/themes/material/js/init.js index d6a87941..18f7b40a 100755 --- a/app/Resources/static/themes/material/js/init.js +++ b/app/Resources/static/themes/material/js/init.js @@ -1,29 +1,10 @@ -var $ = require('jquery'); -require('materialize'); -var annotator = require('annotator'); +const $ = require('jquery'); +global.jQuery = $; +require('materialize'); // eslint-disable-line +const annotator = require('annotator'); +import { savePercent, retrievePercent, initFilters, initExport } from '../../_global/js/tools.js'; -function initFilters() { - // no display if filters not aviable - if ($('div').is('#filters')) { - $('#button_filters').show(); - $('.button-collapse-right').sideNav({ edge: 'right' }); - $('#clear_form_filters').on('click', function () { - $('#filters input').val(''); - $('#filters :checked').removeAttr('checked'); - return false; - }); - } -} - -function initExport() { - // no display if export not aviable - if ($('div').is('#export')) { - $('#button_export').show(); - $('.button-collapse-right').sideNav({ edge: 'right' }); - } -} - -$(document).ready(function () { +$(document).ready(() => { // sideNav $('.button-collapse').sideNav(); $('select').material_select(); @@ -40,13 +21,13 @@ $(document).ready(function () { initFilters(); initExport(); - $('#nav-btn-add-tag').on('click', function () { + $('#nav-btn-add-tag').on('click', () => { $('.nav-panel-add-tag').toggle(100); $('.nav-panel-menu').addClass('hidden'); $('#tag_label').focus(); return false; }); - $('#nav-btn-add').on('click', function () { + $('#nav-btn-add').on('click', () => { $('.nav-panel-buttom').hide(100); $('.nav-panel-add').show(100); $('.nav-panels .action').hide(100); @@ -55,7 +36,7 @@ $(document).ready(function () { $('#entry_url').focus(); return false; }); - $('#nav-btn-search').on('click', function () { + $('#nav-btn-search').on('click', () => { $('.nav-panel-buttom').hide(100); $('.nav-panel-search').show(100); $('.nav-panels .action').hide(100); @@ -64,7 +45,7 @@ $(document).ready(function () { $('#searchfield').focus(); return false; }); - $('.close').on('click', function () { + $('.close').on('click', () => { $('.nav-panel-add').hide(100); $('.nav-panel-search').hide(100); $('.nav-panel-buttom').show(100); @@ -73,12 +54,12 @@ $(document).ready(function () { $('.nav-panels').css('background', 'transparent'); return false; }); - $(window).scroll(function () { - var s = $(window).scrollTop(); - var d = $(document).height(); - var c = $(window).height(); - var scrollPercent = (s / (d - c)) * 100; - $('.progress .determinate').css('width', scrollPercent + '%'); + $(window).scroll(() => { + const s = $(window).scrollTop(); + const d = $(document).height(); + const c = $(window).height(); + const scrollPercent = (s / (d - c)) * 100; + $('.progress .determinate').css('width', `${scrollPercent}%`); }); /* ========================================================================== @@ -86,9 +67,8 @@ $(document).ready(function () { ========================================================================== */ if ($('article').length) { - var app = new annotator.App(); - var x = JSON.parse($('#annotationroutes').html()); - + const app = new annotator.App(); + const x = JSON.parse($('#annotationroutes').html()); app.include(annotator.ui.main, { element: document.querySelector('article'), @@ -96,21 +76,21 @@ $(document).ready(function () { app.include(annotator.storage.http, x); - app.start().then(function () { + app.start().then(() => { app.annotations.load({ entry: x.entryId }); }); - $(window).scroll(function (e) { - var scrollTop = $(window).scrollTop(); - var docHeight = $(document).height(); - var scrollPercent = (scrollTop) / (docHeight); - var scrollPercentRounded = Math.round(scrollPercent * 100) / 100; + $(window).scroll(() => { + const scrollTop = $(window).scrollTop(); + const docHeight = $(document).height(); + const scrollPercent = (scrollTop) / (docHeight); + const scrollPercentRounded = Math.round(scrollPercent * 100) / 100; savePercent(x.entryId, scrollPercentRounded); }); retrievePercent(x.entryId); - $(window).resize(function () { + $(window).resize(() => { retrievePercent(x.entryId); }); } -- cgit v1.2.3 From 8f234d0156cc6f2eb6e3c9f692e4633b35fafc41 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Wed, 28 Sep 2016 18:59:15 +0200 Subject: remove autocomplete and bring fonts through npm --- app/Resources/static/themes/baggy/js/init.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/js/init.js b/app/Resources/static/themes/baggy/js/init.js index c6a54f6f..8da9a859 100755 --- a/app/Resources/static/themes/baggy/js/init.js +++ b/app/Resources/static/themes/baggy/js/init.js @@ -1,6 +1,6 @@ const $ = global.jquery = require('jquery'); require('jquery.cookie'); -require('jquery-ui'); +require('jquery-ui-browserify'); const annotator = require('annotator'); import { savePercent, retrievePercent } from '../../_global/js/tools.js'; import { split, extractLast } from './autoCompleteTags.js'; @@ -124,6 +124,10 @@ $.fn.ready(() => { /** * Tags autocomplete */ + /** + * Not working on v2 + * + $('#value').bind('keydown', (event) => { if (event.keyCode === $.ui.keyCode.TAB && $(this).data('ui-autocomplete').menu.active) { event.preventDefault(); @@ -156,6 +160,7 @@ $.fn.ready(() => { return false; }, }); + */ //--------------------------------------------------------------------------- // Close the message box when the user clicks the close icon -- cgit v1.2.3 From 0471e905b8b37ac226176ee9a708624c869bb046 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Thu, 29 Sep 2016 09:18:46 +0200 Subject: fonts & ligatures --- app/Resources/static/themes/baggy/css/font.css | 2 +- app/Resources/static/themes/baggy/css/main.css | 7 +------ app/Resources/static/themes/material/css/main.css | 7 +------ 3 files changed, 3 insertions(+), 13 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/css/font.css b/app/Resources/static/themes/baggy/css/font.css index cae7904a..47edcb83 100755 --- a/app/Resources/static/themes/baggy/css/font.css +++ b/app/Resources/static/themes/baggy/css/font.css @@ -2,5 +2,5 @@ font-family: "PT Sans"; font-style: normal; font-weight: 700; - src: local("PT Sans Bold"), local("PTSans-Bold"), url("../fonts/pt_sans/regular/PTS55F.woff") format("woff"); + src: local("PT Sans Bold"), local("PTSans-Bold"), url("../fonts/ptsansbold.woff") format("woff"); } diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index 58f0eb82..eeedd277 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -732,12 +732,7 @@ a.add-to-wallabag-link-after::after { @font-face { font-family: icomoon; - src: url("../fonts/icomoon.eot?-s0mcsx"); - src: - url("../fonts/icomoon.eot?#iefix-s0mcsx") format("embedded-opentype"), - url("../fonts/icomoon.woff?-s0mcsx") format("woff"), - url("../fonts/icomoon.ttf?-s0mcsx") format("truetype"), - url("../fonts/icomoon.svg?-s0mcsx#icomoon") format("svg"); + src: url("../fonts/IcoMoon-Free.ttf"); font-weight: normal; font-style: normal; } diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 1d14448f..67be1d22 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -19,12 +19,7 @@ @font-face { font-family: icomoon; - src: url("../fonts/icomoon.eot"); - src: - url("../fonts/icomoon.eot#iefix") format("embedded-opentype"), - url("../fonts/icomoon.ttf") format("truetype"), - url("../fonts/icomoon.woff") format("woff"), - url("../fonts/icomoon.svg#icomoon") format("svg"); + src: url("../fonts/IcoMoon-Free.ttf"); font-weight: normal; font-style: normal; } -- cgit v1.2.3 From a44d2613c730b8933ba17a1295ae6c170345cad5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sat, 1 Oct 2016 16:09:31 +0200 Subject: Changed quickstart layout --- app/Resources/static/themes/material/css/main.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 9ea59eb0..005cc302 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -411,12 +411,12 @@ main ul.row { } .card .card-action a { - color: #fff; + color: #fff !important; margin: 0; } .card .card-action a:hover { - color: #fff; + color: #fff !important; } .settings .div_tabs { -- cgit v1.2.3 From 0f70abd695136f6cfcfaf3c755223cf2d61af090 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Mon, 3 Oct 2016 10:27:01 +0200 Subject: Fixed CSS for quickstart links --- app/Resources/static/themes/material/css/main.css | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 00d7a869..397622bd 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -408,12 +408,16 @@ main ul.row { } .card .card-action a { - color: #fff !important; + color: #fff; margin: 0; } .card .card-action a:hover { - color: #fff !important; + color: #fff; +} + +.quickstart .card .card-action a, .quickstart .card .card-action a:hover { + color: #fff !important; } .settings .div_tabs { -- cgit v1.2.3 From a494c33ef7e574e68ab5bb83d0bdbd67348af0ef Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Mon, 3 Oct 2016 23:08:26 +0200 Subject: Basically, fix everything * Remove install.sh * Assets are now provided * Icons font issues are fixed --- .../static/themes/_global/img/icons/shaarli.png | Bin 0 -> 2143 bytes app/Resources/static/themes/baggy/css/main.css | 35 +++++++++++-- app/Resources/static/themes/material/css/main.css | 54 +++++++++++++++++++-- 3 files changed, 83 insertions(+), 6 deletions(-) create mode 100644 app/Resources/static/themes/_global/img/icons/shaarli.png (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/_global/img/icons/shaarli.png b/app/Resources/static/themes/_global/img/icons/shaarli.png new file mode 100644 index 00000000..0e83c46e Binary files /dev/null and b/app/Resources/static/themes/_global/img/icons/shaarli.png differ diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index eeedd277..52186818 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -796,6 +796,15 @@ a.add-to-wallabag-link-after::after { text-transform: none; line-height: 1; + /* Enable Ligatures ================ */ + letter-spacing: 0; + -webkit-font-feature-settings: "liga"; + -moz-font-feature-settings: "liga=1"; + -moz-font-feature-settings: "liga"; + -ms-font-feature-settings: "liga" 1; + -o-font-feature-settings: "liga"; + font-feature-settings: "liga"; + /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; @@ -838,7 +847,7 @@ a.add-to-wallabag-link-after::after { } .icon-twitter::before { - content: "\ea91"; + content: "\ea96"; } .icon-down-open::before { @@ -877,13 +886,28 @@ a.add-to-wallabag-link-after::after { content: "\e936"; } +.icon-eye::before { + content: "\e9ce"; +} + +.icon-no-eye::before { + content: "\e9d1"; +} + +.icon-calendar::before { + content: "\e953"; +} + +.icon-time::before { + content: "\e952"; +} + /* .icon-image class, for image-based icons ========================================================================== */ .icon-image { background-size: 16px 16px; - background-repeat: no-repeat; - background-position: center; + background: no-repeat center; padding-right: 1em !important; padding-left: 1em !important; } @@ -898,6 +922,11 @@ a.add-to-wallabag-link-after::after { background-image: url("../../_global/img/icons/diaspora-icon--black.png"); } +/* Diaspora */ +.icon-image--shaarli { + background-image: url("../../_global/img/icons/shaarli.png"); +} + /* ========================================================================== Icon selected ========================================================================== */ diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 397622bd..20d1dded 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -62,8 +62,8 @@ font-feature-settings: 'liga'; } -[class^="icon-"], -[class*=" icon-"] { +[class^="icon-"]::before, +[class*=" icon-"]::before { font-family: icomoon; speak: none; font-style: normal; @@ -72,11 +72,59 @@ text-transform: none; line-height: 1; + /* Enable Ligatures ================ */ + letter-spacing: 0; + -webkit-font-feature-settings: "liga"; + -moz-font-feature-settings: "liga=1"; + -moz-font-feature-settings: "liga"; + -ms-font-feature-settings: "liga" 1; + -o-font-feature-settings: "liga"; + font-feature-settings: "liga"; + /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } +.icon-image { + background-size: 16px 16px; + background: no-repeat center; + padding-right: 1em !important; + padding-left: 1em !important; +} + +.icon-eye::before { + content: "\e9ce"; +} + +.icon-no-eye::before { + content: "\e9d1"; +} + +.icon-calendar::before { + content: "\e953"; +} + +.icon-time::before { + content: "\e952"; +} + +/* Carrot (http://carrot.org) */ +.icon-image--carrot { + background-image: url("../../_global/img/icons/carrot-icon--black.png"); +} + +/* Diaspora */ +.icon-image--diaspora { + background-image: url("../../_global/img/icons/diaspora-icon--black.png"); +} + +/* Shaarli */ +.icon-image--shaarli { + background-image: url("../../_global/img/icons/shaarli.png"); +} + + body { display: flex; min-height: 100vh; @@ -643,7 +691,7 @@ main ul.row { } .icon-twitter::before { - content: "\ea91"; + content: "\ea96"; } .icon-apple::before { -- cgit v1.2.3 From 9f3a1cd20c13ad3384d079641c7bd079b4c1d6ae Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Tue, 4 Oct 2016 07:26:18 +0200 Subject: shaarli instead of Diaspora --- app/Resources/static/themes/baggy/css/main.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index 52186818..522c4833 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -922,7 +922,7 @@ a.add-to-wallabag-link-after::after { background-image: url("../../_global/img/icons/diaspora-icon--black.png"); } -/* Diaspora */ +/* shaarli */ .icon-image--shaarli { background-image: url("../../_global/img/icons/shaarli.png"); } -- cgit v1.2.3 From 9f7d154e3451f1ccc1d69f0013e98acf4639c63b Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 4 Oct 2016 12:14:28 +0200 Subject: Add eslint & stylelint tests (fix a few things) and move dependencies to dev --- app/Resources/static/themes/baggy/css/main.css | 3 ++- app/Resources/static/themes/baggy/js/init.js | 1 - app/Resources/static/themes/material/css/main.css | 11 ++++++----- 3 files changed, 8 insertions(+), 7 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index 522c4833..99ea6c6b 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -907,7 +907,8 @@ a.add-to-wallabag-link-after::after { .icon-image { background-size: 16px 16px; - background: no-repeat center; + background-repeat: no-repeat; + background-position: center; padding-right: 1em !important; padding-left: 1em !important; } diff --git a/app/Resources/static/themes/baggy/js/init.js b/app/Resources/static/themes/baggy/js/init.js index 8da9a859..07afd311 100755 --- a/app/Resources/static/themes/baggy/js/init.js +++ b/app/Resources/static/themes/baggy/js/init.js @@ -3,7 +3,6 @@ require('jquery.cookie'); require('jquery-ui-browserify'); const annotator = require('annotator'); import { savePercent, retrievePercent } from '../../_global/js/tools.js'; -import { split, extractLast } from './autoCompleteTags.js'; import { toggleSaveLinkForm } from './uiTools.js'; diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 20d1dded..5a46ec09 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -87,8 +87,9 @@ } .icon-image { - background-size: 16px 16px; - background: no-repeat center; + background-size: 16px; + background-repeat: no-repeat; + background-position: center; padding-right: 1em !important; padding-left: 1em !important; } @@ -124,7 +125,6 @@ background-image: url("../../_global/img/icons/shaarli.png"); } - body { display: flex; min-height: 100vh; @@ -464,8 +464,9 @@ main ul.row { color: #fff; } -.quickstart .card .card-action a, .quickstart .card .card-action a:hover { - color: #fff !important; +.quickstart .card .card-action a, +.quickstart .card .card-action a:hover { + color: #fff !important; } .settings .div_tabs { -- cgit v1.2.3 From 46d78f87d934bbc7679b85d0c78178444ff1b28e Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 4 Oct 2016 14:48:22 +0200 Subject: fix icons --- app/Resources/static/themes/material/css/main.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 5a46ec09..4751c645 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -71,6 +71,7 @@ font-variant: normal; text-transform: none; line-height: 1; + background-size: 24px; /* Enable Ligatures ================ */ letter-spacing: 0; @@ -87,7 +88,7 @@ } .icon-image { - background-size: 16px; + background-size: 24px; background-repeat: no-repeat; background-position: center; padding-right: 1em !important; -- cgit v1.2.3 From 0c7f1ba79615be00d07a3fd4e9671f3c2356d38b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Tue, 4 Oct 2016 14:58:06 +0200 Subject: Fixed icon position in share menu --- app/Resources/static/themes/material/css/main.css | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 4751c645..f3d09973 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -88,9 +88,8 @@ } .icon-image { - background-size: 24px; + background-size: 16px; background-repeat: no-repeat; - background-position: center; padding-right: 1em !important; padding-left: 1em !important; } @@ -107,6 +106,10 @@ content: "\e953"; } +.icon-mail::before { + content: "\ea86"; +} + .icon-time::before { content: "\e952"; } -- cgit v1.2.3 From 6cb364a2c123b96d245b1ca3c330fd0042c74cd1 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 4 Oct 2016 15:30:05 +0200 Subject: use airbnb base rules and update eslint --- app/Resources/static/themes/baggy/js/init.js | 5 +++-- app/Resources/static/themes/material/js/init.js | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/js/init.js b/app/Resources/static/themes/baggy/js/init.js index 07afd311..dc11043a 100755 --- a/app/Resources/static/themes/baggy/js/init.js +++ b/app/Resources/static/themes/baggy/js/init.js @@ -1,9 +1,10 @@ +import { savePercent, retrievePercent } from '../../_global/js/tools'; +import { toggleSaveLinkForm } from './uiTools'; + const $ = global.jquery = require('jquery'); require('jquery.cookie'); require('jquery-ui-browserify'); const annotator = require('annotator'); -import { savePercent, retrievePercent } from '../../_global/js/tools.js'; -import { toggleSaveLinkForm } from './uiTools.js'; $.fn.ready(() => { diff --git a/app/Resources/static/themes/material/js/init.js b/app/Resources/static/themes/material/js/init.js index 18f7b40a..a68269e0 100755 --- a/app/Resources/static/themes/material/js/init.js +++ b/app/Resources/static/themes/material/js/init.js @@ -1,8 +1,10 @@ +import { savePercent, retrievePercent, initFilters, initExport } from '../../_global/js/tools'; + const $ = require('jquery'); + global.jQuery = $; require('materialize'); // eslint-disable-line const annotator = require('annotator'); -import { savePercent, retrievePercent, initFilters, initExport } from '../../_global/js/tools.js'; $(document).ready(() => { // sideNav -- cgit v1.2.3 From c10adc1f762d004350a7921250c6821baa866e2d Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 4 Oct 2016 15:59:56 +0200 Subject: typo and build on test --- app/Resources/static/themes/material/css/main.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index f3d09973..9c501de5 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -107,7 +107,7 @@ } .icon-mail::before { - content: "\ea86"; + content: "\ea86"; } .icon-time::before { -- cgit v1.2.3 From 645c0d5bce85be0dfcb7b58c31ce96a47ceb99e3 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 4 Oct 2016 20:11:10 +0200 Subject: better tags on baggy --- app/Resources/static/themes/baggy/css/main.css | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index 99ea6c6b..61e7b22a 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -383,9 +383,11 @@ footer a { max-height: 2em; overflow-y: hidden; padding: 0; + margin: 0; } -.card-entry-tags li { +.card-entry-tags li, +.card-entry-tags span { display: inline-block; margin: 0 5px; padding: 5px 12px; @@ -394,9 +396,19 @@ footer a { max-height: 2em; overflow: hidden; text-overflow: ellipsis; +} + +.card-entry-tags a, +.card-entry-labels a { + text-decoration: none; + font-weight: normal; color: #fff; } +.nav-panel-add-tag { + margin-top: 10px; +} + .list-entries + .results { margin-bottom: 2em; } @@ -509,6 +521,7 @@ img.preview { color: #666; font-size: 0.9em; line-height: 1.7; + margin-top: 5px; } .entry h2 a::first-letter { @@ -1021,6 +1034,7 @@ blockquote { #article_toolbar li { display: inline-block; + margin: 3px auto; } #article_toolbar a { -- cgit v1.2.3 From 15f1352ef8761d3e083fc17c8354c30ca3542050 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Wed, 5 Oct 2016 14:06:55 +0200 Subject: better tags on material --- app/Resources/static/themes/material/css/main.css | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 9c501de5..b66c88f9 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -445,6 +445,15 @@ main ul.row { white-space: nowrap; } +.card-entry-tags a, +.card-entry-labels a, +.card-entry-labels-hidden a, +#list .chip a { + text-decoration: none; + font-weight: normal; + color: #fff; +} + .card .card-content .estimatedTime { margin-bottom: 10px; } -- cgit v1.2.3 From 28bb48905a2104adad65508f51737f987dc1ad4c Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sun, 9 Oct 2016 18:41:19 +0200 Subject: Optimize the way tag list is rendered MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Instead of retrieve all informations about entries of a tag to just count them, we’ll count them before with a fastest query. Also change the layout of the tag list in material design --- app/Resources/static/themes/material/css/main.css | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index b66c88f9..121e7bf4 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -414,9 +414,9 @@ main ul.row { max-width: 50%; } -.card .card-entry-labels li { +.card .card-entry-labels li, .card-tag-labels li { margin: 10px 10px 10px auto; - padding: 5px 12px 5px 16px; + padding: 5px 12px 5px 16px !important; background-color: rgba(0, 151, 167, 0.85); border-radius: 0 3px 3px 0; color: #fff; @@ -447,6 +447,7 @@ main ul.row { .card-entry-tags a, .card-entry-labels a, +.card-tag-labels a, .card-entry-labels-hidden a, #list .chip a { text-decoration: none; -- cgit v1.2.3 From e08477803079d0097885e026797256da7fd30f6c Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sun, 9 Oct 2016 19:35:27 +0200 Subject: CS --- app/Resources/static/themes/material/css/main.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 121e7bf4..d91b469f 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -414,7 +414,8 @@ main ul.row { max-width: 50%; } -.card .card-entry-labels li, .card-tag-labels li { +.card .card-entry-labels li, +.card-tag-labels li { margin: 10px 10px 10px auto; padding: 5px 12px 5px 16px !important; background-color: rgba(0, 151, 167, 0.85); -- cgit v1.2.3 From 38dc91be8ed04f14c180a729a0deb7a57e5cc64a Mon Sep 17 00:00:00 2001 From: Alexandr Danilov Date: Sat, 15 Oct 2016 11:17:55 +0300 Subject: Improved side menu, reduced the font size on small screens, fixed a form to add links on small screens --- app/Resources/static/themes/material/css/main.css | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index d91b469f..7c83d45d 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -360,6 +360,10 @@ span.numberItems { float: right; } +nav ul a:hover { + background-color: initial; +} + /* ========================================================================== * 3 = Filters slider * ========================================================================== */ @@ -522,7 +526,7 @@ main ul.row { } #article > header > h1 { - font-size: 2em; + font-size: 1.6em; } .reader-mode { @@ -603,6 +607,18 @@ main ul.row { width: auto; } + #article { + padding: 15px; + max-width: 35em; + margin-left: auto; + margin-right: auto; + font-size: 18px; + } + + #article > header > h1 { + font-size: 1.33em; + } + .reader-mode { width: 240px !important; } @@ -760,3 +776,7 @@ div.settings div.file-field div { .input-field label.active { font-size: 1rem; } + +nav .input-field input { + margin: 0; +} -- cgit v1.2.3 From 08f5a5b6bd4442b8aaed597fedbea5fc87cfc3cf Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Sat, 15 Oct 2016 15:25:46 +0200 Subject: fix stylelint --- app/Resources/static/themes/material/css/main.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/material/css/main.css b/app/Resources/static/themes/material/css/main.css index 7c83d45d..2cc2e8a0 100755 --- a/app/Resources/static/themes/material/css/main.css +++ b/app/Resources/static/themes/material/css/main.css @@ -361,7 +361,7 @@ span.numberItems { } nav ul a:hover { - background-color: initial; + background-color: initial; } /* ========================================================================== -- cgit v1.2.3 From d32e1c424adb6722706245fe91071594a8c7c826 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Sat, 15 Oct 2016 19:04:53 +0200 Subject: Fix baggy on small screens --- app/Resources/static/themes/baggy/css/main.css | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'app/Resources/static/themes') diff --git a/app/Resources/static/themes/baggy/css/main.css b/app/Resources/static/themes/baggy/css/main.css index 61e7b22a..44db2070 100755 --- a/app/Resources/static/themes/baggy/css/main.css +++ b/app/Resources/static/themes/baggy/css/main.css @@ -1192,6 +1192,14 @@ pre code { } } +@media screen and (max-height: 770px) { + .menu.users, + .menu.internal, + .menu.developer { + display: none; + } +} + @media screen and (max-width: 500px) { .entry { width: 100%; -- cgit v1.2.3