From f8be8eb41b50d0bea6f6c362abc33fb4ac546f3d Mon Sep 17 00:00:00 2001 From: Alexis Degrugillier Date: Sat, 1 Feb 2014 16:23:43 -0500 Subject: Modification de l'affichage des modes de partage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout de la numérotation des modes de partage pour rendre l'utilisation des raccourcis plus aisée. --- p/themes/Origine/global.css | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'p/themes/Origine') diff --git a/p/themes/Origine/global.css b/p/themes/Origine/global.css index 58a3a52b1..c1892d042 100644 --- a/p/themes/Origine/global.css +++ b/p/themes/Origine/global.css @@ -419,6 +419,11 @@ input, select, textarea { padding: 0 25px; line-height: 30px; } + .dropdown-menu > .item.share > a { + display: list-item; + list-style-position:inside; + list-style-type:decimal; + } .dropdown-menu > .item:hover { background: #0062BE; color: #fff; -- cgit v1.2.3 From 178af19fb0e7c13015e991593feea6a5f4aafcc0 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 13 Feb 2014 21:01:12 +0100 Subject: Add possibility to open notification in JavaScript + new message Notifications can be opened directly in JavaScript Class .notification is now id #notification New message when there is no feed to refresh See 06abbd02c2d10934155b2464f73d8ecdb2a68de1 (comments) --- app/Controllers/feedController.php | 4 ++-- app/i18n/en.php | 1 + app/i18n/fr.php | 1 + app/layout/layout.phtml | 11 ++++++--- app/views/javascript/actualize.phtml | 1 + p/scripts/main.js | 46 +++++++++++++++++++++++++++++------- p/themes/Dark/freshrss.css | 15 +++++++----- p/themes/Flat/freshrss.css | 15 +++++++----- p/themes/Origine/freshrss.css | 11 +++++---- 9 files changed, 75 insertions(+), 30 deletions(-) (limited to 'p/themes/Origine') diff --git a/app/Controllers/feedController.php b/app/Controllers/feedController.php index d98c77558..264607216 100755 --- a/app/Controllers/feedController.php +++ b/app/Controllers/feedController.php @@ -283,8 +283,8 @@ class FreshRSS_feed_Controller extends Minz_ActionController { } else { // aucun flux n'a été mis à jour, oups $notif = array ( - 'type' => 'bad', - 'content' => Minz_Translate::t ('no_feed_actualized') + 'type' => 'good', + 'content' => Minz_Translate::t ('no_feed_to_refresh') ); } diff --git a/app/i18n/en.php b/app/i18n/en.php index af051673d..369853610 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -248,6 +248,7 @@ return array ( 'rss_feeds_of' => 'RSS feed of %s', 'refresh' => 'Refresh', + 'no_feed_to_refresh' => 'There is no feed to refresh…', 'today' => 'Today', 'yesterday' => 'Yesterday', diff --git a/app/i18n/fr.php b/app/i18n/fr.php index 5dc184aa3..275c3b1d8 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -248,6 +248,7 @@ return array ( 'rss_feeds_of' => 'Flux RSS de %s', 'refresh' => 'Actualisation', + 'no_feed_to_refresh' => 'Il n’y a aucun flux à actualiser…', 'today' => 'Aujourd’hui', 'yesterday' => 'Hier', diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index d6a1737ee..1501df3c3 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -36,13 +36,18 @@ notification)) { + $msg = $this->notification['content']; + $status = $this->notification['type']; + invalidateHttpCache(); + } ?> -
- notification['content']; ?> +
+
- diff --git a/app/views/javascript/actualize.phtml b/app/views/javascript/actualize.phtml index 58c3b7c8f..a2b076ea8 100644 --- a/app/views/javascript/actualize.phtml +++ b/app/views/javascript/actualize.phtml @@ -24,6 +24,7 @@ function updateProgressBar(i) { function updateFeeds() { if (feed_count === 0) { + openNotification("", "good"); return; } initProgressBar(true); diff --git a/p/scripts/main.js b/p/scripts/main.js index e94df2a39..88ef670cd 100644 --- a/p/scripts/main.js +++ b/p/scripts/main.js @@ -665,23 +665,51 @@ function init_actualize() { } } + +// +var notification = null, + notification_interval = null, + notification_working = false; + +function openNotification(msg, status) { + if (notification_working === true) { + return false; + } + + notification_working = true; + + notification.removeClass(); + notification.addClass(status); + notification.find(".msg").html(msg); + notification.fadeIn(300); + + notification_interval = window.setInterval(closeNotification, 4000); +} + function closeNotification() { - $(".notification").fadeOut(600, function () { - $(".notification").remove(); + notification.fadeOut(600, function() { + notification.removeClass(); + notification.addClass('closed'); + + window.clearInterval(notification_interval); + notification_working = false; }); } function init_notifications() { - var notif = $(".notification"); - if (notif.length > 0) { - window.setInterval(closeNotification, 4000); + notification = $("#notification"); - notif.find("a.close").click(function () { - closeNotification(); - return false; - }); + notification.find("a.close").click(function () { + closeNotification(); + return false; + }); + + if (notification.find(".msg").html().length > 0) { + notification_working = true; + notification_interval = window.setInterval(closeNotification, 4000); } } +// function refreshUnreads() { $.getJSON('./?c=javascript&a=nbUnreadsPerFeed').done(function (data) { diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index e54a0eadd..380dee877 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -558,7 +558,7 @@ } /*** NOTIFICATION ***/ -.notification { +#notification { position: absolute; top: 10px; left: 25%; right: 25%; @@ -573,13 +573,16 @@ font-weight: bold; z-index: 10; } - .notification.good { + #notification.closed { + display: none; + } + #notification.good { border:1px solid #f4f899; } - .notification.bad { + #notification.bad { border:1px solid #f4a899; } - .notification a.close { + #notification a.close { display: inline-block; width: 16px; height: 16px; @@ -590,10 +593,10 @@ border-radius: 50px; line-height: 16px; } - .notification.good a.close{ + #notification.good a.close{ border:1px solid #f4f899; } - .notification.bad a.close{ + #notification.bad a.close{ border:1px solid #f4a899; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 19f5967ea..edd67e17c 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -561,7 +561,7 @@ body { } /*** NOTIFICATION ***/ -.notification { +#notification { position: absolute; top: 10px; left: 25%; right: 25%; @@ -575,15 +575,18 @@ body { font-weight: bold; z-index: 10; } - .notification.good { + #notification.closed { + display: none; + } + #notification.good { background: #1abc9c; color: #fff; } - .notification.bad { + #notification.bad { background: #e74c3c; color: #fff; } - .notification a.close { + #notification a.close { display: inline-block; width: 16px; height: 16px; @@ -593,10 +596,10 @@ body { border-radius: 3px; line-height: 16px; } - .notification.good a.close { + #notification.good a.close { background: #1abc9c; } - .notification.bad a.close { + #notification.bad a.close { background: #e74c3c; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 85a23140c..80fac05cd 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -569,7 +569,7 @@ } /*** NOTIFICATION ***/ -.notification { +#notification { position: absolute; top: 10px; left: 25%; right: 25%; @@ -584,13 +584,16 @@ font-weight: bold; z-index: 10; } - .notification.good { + #notification.closed { + display: none; + } + #notification.good { background: #f4f899; } - .notification.bad { + #notification.bad { background: #f4a899; } - .notification a.close { + #notification a.close { display: inline-block; width: 16px; height: 16px; -- cgit v1.2.3 From cddec2d76f2c5d25d3008d5e2a60fddad6028a5d Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sat, 15 Feb 2014 12:25:06 +0100 Subject: Improve login page - if user cannot log in, a 403 error is showed (and it is done in controller) - 403 error message has been changed to match with the error - add blank spaces on persona login page --- app/Controllers/indexController.php | 5 ++++ app/i18n/en.php | 3 +- app/i18n/fr.php | 3 +- app/views/error/index.phtml | 10 ++++++- app/views/index/formLogin.phtml | 56 ++++++++++++++++++------------------- p/themes/Dark/global.css | 30 ++++++++++---------- p/themes/Flat/global.css | 30 ++++++++++---------- p/themes/Origine/global.css | 30 ++++++++++---------- 8 files changed, 93 insertions(+), 74 deletions(-) (limited to 'p/themes/Origine') diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php index a680c914a..38f4c0e7c 100755 --- a/app/Controllers/indexController.php +++ b/app/Controllers/indexController.php @@ -351,6 +351,11 @@ class FreshRSS_index_Controller extends Minz_ActionController { } $this->view->_useLayout(false); Minz_Request::forward(array('c' => 'index', 'a' => 'index'), true); + } elseif (!Minz_Configuration::canLogIn()) { + Minz_Error::error ( + 403, + array ('error' => array (Minz_Translate::t ('access_denied'))) + ); } invalidateHttpCache(); } diff --git a/app/i18n/en.php b/app/i18n/en.php index fd51eb1ca..790e853f5 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -3,6 +3,7 @@ return array ( // LAYOUT 'login' => 'Login', + 'login_with_persona' => 'Login with Persona', 'logout' => 'Logout', 'search' => 'Search words or #tags', 'search_short' => 'Search', @@ -276,7 +277,7 @@ return array ( 'logs_empty' => 'Log file is empty', 'clear_logs' => 'Clear the logs', - 'forbidden_access' => 'Access forbidden! (%s)', + 'forbidden_access' => 'Access is forbidden!', 'login_required' => 'Login required:', 'confirm_action' => 'Are you sure you want to perform this action? It cannot be cancelled!', diff --git a/app/i18n/fr.php b/app/i18n/fr.php index 17e26f493..572bc1628 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -3,6 +3,7 @@ return array ( // LAYOUT 'login' => 'Connexion', + 'login_with_persona' => 'Connexion avec Persona', 'logout' => 'Déconnexion', 'search' => 'Rechercher des mots ou des #tags', 'search_short' => 'Rechercher', @@ -276,7 +277,7 @@ return array ( 'logs_empty' => 'Les logs sont vides', 'clear_logs' => 'Effacer les logs', - 'forbidden_access' => 'Accès interdit ! (%s)', + 'forbidden_access' => 'L’accès vous est interdit !', 'login_required' => 'Accès protégé par mot de passe :', 'confirm_action' => 'Êtes-vous sûr(e) de vouloir continuer ? Cette action ne peut être annulée !', diff --git a/app/views/error/index.phtml b/app/views/error/index.phtml index 36fcb56f9..6a09c3aa2 100644 --- a/app/views/error/index.phtml +++ b/app/views/error/index.phtml @@ -3,7 +3,15 @@

code; ?>

-
+

diff --git a/app/views/index/formLogin.phtml b/app/views/index/formLogin.phtml index e4560c1a0..cc925ea59 100644 --- a/app/views/index/formLogin.phtml +++ b/app/views/index/formLogin.phtml @@ -1,34 +1,32 @@
-

-

- - -

- - -
- -

- -

-
+
+ + +
+
+ + +
+ +
+
+ +
+

FreshRSS

-

+ case 'persona': + ?>

+ + +

-

+

diff --git a/p/themes/Dark/global.css b/p/themes/Dark/global.css index a6acd740a..e296f2188 100644 --- a/p/themes/Dark/global.css +++ b/p/themes/Dark/global.css @@ -512,18 +512,20 @@ input, select, textarea { } /* Prompt (centré) */ -.prompt > h1, .prompt > p { - text-align:center; -} -.prompt > form { - margin:1em auto 2.5em auto; - width:10em; -} -.prompt .btn { - display:block; - margin:.5em auto; -} -.prompt input { - margin:.4em auto 1.1em auto; - width:99%; +.prompt { + text-align: center; } + .prompt label { + text-align: left; + } + .prompt form { + margin: 1em auto 2.5em auto; + width: 10em; + } + .prompt input { + margin: .4em auto 1.1em auto; + width: 100%; + } + .prompt p { + margin: 20px 0; + } diff --git a/p/themes/Flat/global.css b/p/themes/Flat/global.css index 75c328fcb..4044dd781 100644 --- a/p/themes/Flat/global.css +++ b/p/themes/Flat/global.css @@ -515,18 +515,20 @@ input, select, textarea { } /* Prompt (centré) */ -.prompt > h1, .prompt > p { - text-align:center; -} -.prompt > form { - margin:1em auto 2.5em auto; - width:10em; -} -.prompt .btn { - display:block; - margin:.5em auto; -} -.prompt input { - margin:.4em auto 1.1em auto; - width:99%; +.prompt { + text-align: center; } + .prompt label { + text-align: left; + } + .prompt form { + margin: 1em auto 2.5em auto; + width: 10em; + } + .prompt input { + margin: .4em auto 1.1em auto; + width: 100%; + } + .prompt p { + margin: 20px 0; + } diff --git a/p/themes/Origine/global.css b/p/themes/Origine/global.css index c1892d042..5792c9e4d 100644 --- a/p/themes/Origine/global.css +++ b/p/themes/Origine/global.css @@ -528,18 +528,20 @@ input, select, textarea { } /* Prompt (centré) */ -.prompt > h1, .prompt > p { - text-align:center; -} -.prompt > form { - margin:1em auto 2.5em auto; - width:10em; -} -.prompt .btn { - display:block; - margin:.5em auto; -} -.prompt input { - margin:.4em auto 1.1em auto; - width:99%; +.prompt { + text-align: center; } + .prompt label { + text-align: left; + } + .prompt form { + margin: 1em auto 2.5em auto; + width: 10em; + } + .prompt input { + margin: .4em auto 1.1em auto; + width: 100%; + } + .prompt p { + margin: 20px 0; + } -- cgit v1.2.3 From 1ab5fa83c3b25d773b203a54e319eb71bd3a69da Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sat, 15 Feb 2014 19:15:07 +0100 Subject: Update themes: global view and not read categories Category header is better when some articles are not read --- p/themes/Dark/freshrss.css | 6 ++++-- p/themes/Flat/freshrss.css | 6 ++++-- p/themes/Origine/freshrss.css | 8 ++++++-- 3 files changed, 14 insertions(+), 6 deletions(-) (limited to 'p/themes/Origine') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 380dee877..e448f081f 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -354,13 +354,15 @@ font-size: 120%; } #stream.global .btn:not([data-unread="0"]) { - font-weight:bold; + background: #34495e; + color: #fff; + font-weight: bold; } #stream.global .btn:first-child:not([data-unread="0"]):after { top: 0; right: 5px; border: 0; background: none; - color: #666; + color: #fff; font-weight: bold; box-shadow: none; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index edd67e17c..c23743843 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -350,13 +350,15 @@ body { font-size: 120%; } #stream.global .btn:not([data-unread="0"]) { - font-weight:bold; + background: #3498db; + color: #fff; + font-weight: bold; } #stream.global .btn:first-child:not([data-unread="0"]):after { top: 0; right: 5px; border: 0; background: none; - color: #333; + color: #fff; font-weight: bold; box-shadow: none; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 80fac05cd..e605465dc 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -364,15 +364,19 @@ font-size: 120%; } #stream.global .btn:not([data-unread="0"]) { - font-weight:bold; + background: #0084CC; + color: #fff; + font-weight: bold; + text-shadow: none; } #stream.global .btn:first-child:not([data-unread="0"]):after { top: 0; right: 5px; border: 0; background: none; - color: #666; + color: #fff; font-weight: bold; box-shadow: none; + text-shadow: none; } #stream.global .box-category .feeds { display: block; -- cgit v1.2.3 From e50fb4179f91ec3711b0fd602a749c447d0e141d Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Tue, 18 Feb 2014 19:56:26 +0100 Subject: Improve notification design on mobile Impact all themes: - Notification is extended from left to right and top (0px) - Close button is hidden: by clicking (or touching) notification it will close the notification See #427 --- p/themes/Dark/freshrss.css | 37 +++++++++++++++++++++---------------- p/themes/Flat/freshrss.css | 25 ++++++++++++++++++++----- p/themes/Origine/freshrss.css | 23 ++++++++++++++++++----- 3 files changed, 59 insertions(+), 26 deletions(-) (limited to 'p/themes/Origine') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index e448f081f..f6577c645 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -572,35 +572,25 @@ box-shadow: 0 0 5px #666; background: #1a1a1a; color: #888; + border: 1px solid #f4f899; font-weight: bold; z-index: 10; } #notification.closed { display: none; } - #notification.good { - border:1px solid #f4f899; - } - #notification.bad { - border:1px solid #f4a899; - } #notification a.close { + position: absolute; + top: -10px; right: -10px; display: inline-block; width: 16px; height: 16px; - float: right; - margin: -20px -20px 0 0; padding: 5px; background: #1a1a1a; border-radius: 50px; line-height: 16px; - } - #notification.good a.close{ border:1px solid #f4f899; } - #notification.bad a.close{ - border:1px solid #f4a899; - } .toggle_aside, .btn.toggle_aside { display: none; @@ -782,10 +772,25 @@ select.number option { text-shadow: none; } - .notification, + #notification, .actualizeProgress { - left: 10px; - right: 10px; + top: 0; + left: 0; + right: 0; + border-radius: 0; + border: none; + border-bottom: 1px solid #f4f899; + } + #notification a.close { + left: 0; right: 0; + top: 0; bottom: 0; + width: auto; + height: auto; + background: transparent; + border: none; + } + #notification a.close .icon { + display: none; } } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index c23743843..1d551d8fb 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -589,11 +589,11 @@ body { color: #fff; } #notification a.close { + position: absolute; + top: -6px; right: -6px; display: inline-block; width: 16px; height: 16px; - float: right; - margin: -16px -16px 0 0; padding: 5px; border-radius: 3px; line-height: 16px; @@ -790,10 +790,25 @@ select.number option { text-shadow: none; } - .notification, + #notification, .actualizeProgress { - left: 10px; - right: 10px; + top: 0; + left: 0; + right: 0; + border-radius: 0; + } + #notification a.close, + #notification.good a.close, + #notification.bad a.close { + left: 0; right: 0; + top: 0; bottom: 0; + width: auto; + height: auto; + background: transparent; + border: none; + } + #notification a.close .icon { + display: none; } } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index e605465dc..86bd508df 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -598,11 +598,11 @@ background: #f4a899; } #notification a.close { + position: absolute; + top: -10px; right: -10px; display: inline-block; width: 16px; height: 16px; - float: right; - margin: -20px -20px 0 0; padding: 5px; background: #fff; border-radius: 50px; @@ -790,10 +790,23 @@ select.number option { text-shadow: none; } - .notification, + #notification, .actualizeProgress { - left: 10px; - right: 10px; + top: 0; + left: 0; + right: 0; + border-radius: 0; + } + #notification a.close { + left: 0; right: 0; + top: 0; bottom: 0; + width: auto; + height: auto; + background: transparent; + border: none; + } + #notification a.close .icon { + display: none; } } -- cgit v1.2.3 From b5e60062a528f6ace5c67f280443819470e0225a Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sun, 6 Apr 2014 13:23:35 +0200 Subject: Add link to article title https://github.com/marienfressinaud/FreshRSS/issues/469 --- app/views/helpers/view/normal_view.phtml | 2 +- p/themes/Dark/freshrss.css | 2 +- p/themes/Flat/freshrss.css | 2 +- p/themes/Origine/freshrss.css | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'p/themes/Origine') diff --git a/app/views/helpers/view/normal_view.phtml b/app/views/helpers/view/normal_view.phtml index b0f90b4c9..b5cdd3039 100644 --- a/app/views/helpers/view/normal_view.phtml +++ b/app/views/helpers/view/normal_view.phtml @@ -88,7 +88,7 @@ if (!empty($this->entries)) {
-

title (); ?>

+

title (); ?>

author (); echo $author != '' ? '
' . Minz_Translate::t ('by_author', $author) . '
' : ''; diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index f6577c645..6275d8938 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -290,7 +290,7 @@ .flux .item.title { background: inherit; } - .flux .item.title a { + .flux .title a { color: #888; outline: none; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 1d551d8fb..1f297309b 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -286,7 +286,7 @@ body { .flux .item.title { background: inherit; } - .flux .item.title a { + .flux .title a { color: #333; outline: none; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 86bd508df..662e085d6 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -300,7 +300,7 @@ .flux .item.title { background: inherit; } - .flux .item.title a { + .flux .title a { color: #000; outline: none; } -- cgit v1.2.3 From 3e665bcf9aefe40499b5d16e901d0c7427e367af Mon Sep 17 00:00:00 2001 From: Alexis Degrugillier Date: Sat, 12 Apr 2014 11:51:44 -0400 Subject: Delete favorite button I extract drop-down menu actions to make them as button action in the page header. I removed the favorite button on the category list because it is a duplicate from the button action. Now button action act as filters and you can combine them. It is a test to see if we can keep it like that. There is still work to do to extract other actions from the drop-down list. I did not want to change everything if we don't keep it. See #376 and #277 --- app/Controllers/indexController.php | 7 +-- app/Models/Configuration.php | 9 +++- app/Models/EntryDAO.php | 32 ++++++----- app/i18n/en.php | 4 +- app/i18n/fr.php | 2 +- app/layout/aside_flux.phtml | 9 ---- app/layout/nav_menu.phtml | 102 +++++++++++++++++++++++------------- app/views/configure/reading.phtml | 2 +- p/themes/Dark/freshrss.css | 5 ++ p/themes/Dark/global.css | 6 --- p/themes/Flat/freshrss.css | 5 ++ p/themes/Flat/global.css | 6 --- p/themes/Origine/freshrss.css | 5 ++ p/themes/Origine/global.css | 6 --- 14 files changed, 111 insertions(+), 89 deletions(-) (limited to 'p/themes/Origine') diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php index 9da1e5022..243d887ac 100755 --- a/app/Controllers/indexController.php +++ b/app/Controllers/indexController.php @@ -91,14 +91,11 @@ class FreshRSS_index_Controller extends Minz_ActionController { $nb = Minz_Request::param ('nb', $this->view->conf->posts_per_page); $first = Minz_Request::param ('next', ''); - if ($state === 'not_read') { //Any unread article in this category at all? + if ($state === FreshRSS_Configuration::STATE_NOT_READ) { //Any unread article in this category at all? switch ($getType) { case 'a': $hasUnread = $this->view->nb_not_read > 0; break; - case 's': - $hasUnread = $this->view->nb_favorites['unread'] > 0; - break; case 'c': $hasUnread = (!isset($this->view->cat_aside[$getId])) || ($this->view->cat_aside[$getId]->nbNotRead() > 0); break; @@ -128,7 +125,7 @@ class FreshRSS_index_Controller extends Minz_ActionController { // Si on a récupéré aucun article "non lus" // on essaye de récupérer tous les articles - if ($state === 'not_read' && empty($entries) && ($state_param === null)) { + if ($state === FreshRSS_Configuration::STATE_NOT_READ && empty($entries) && ($state_param === null)) { Minz_Log::record ('Conflicting information about nbNotRead!', Minz_Log::DEBUG); $this->view->state = 'all'; $entries = $entryDAO->listWhere($getType, $getId, 'all', $order, $nb, $first, $filter, $date_min, true, $keepHistoryDefault); diff --git a/app/Models/Configuration.php b/app/Models/Configuration.php index 80031369e..f9ea47be6 100644 --- a/app/Models/Configuration.php +++ b/app/Models/Configuration.php @@ -1,6 +1,11 @@ '', //CRYPT_BLOWFISH 'posts_per_page' => 20, 'view_mode' => 'normal', - 'default_view' => 'not_read', + 'default_view' => self::STATE_NOT_READ, 'auto_load_more' => true, 'display_posts' => false, 'onread_jump_next' => true, @@ -131,7 +136,7 @@ class FreshRSS_Configuration { } } public function _default_view ($value) { - $this->data['default_view'] = $value === 'all' ? 'all' : 'not_read'; + $this->data['default_view'] = $value === 'all' ? 'all' : self::STATE_NOT_READ; } public function _display_posts ($value) { $this->data['display_posts'] = ((bool)$value) && $value !== 'no'; diff --git a/app/Models/EntryDAO.php b/app/Models/EntryDAO.php index 6d00967fc..2f5a9e1f6 100644 --- a/app/Models/EntryDAO.php +++ b/app/Models/EntryDAO.php @@ -415,9 +415,6 @@ class FreshRSS_EntryDAO extends Minz_ModelPdo { $where .= 'f.priority > 0 '; $joinFeed = true; break; - case 's': - $where .= 'e1.is_favorite = 1 '; - break; case 'c': $where .= 'f.category = ? '; $values[] = intval($id); @@ -433,21 +430,28 @@ class FreshRSS_EntryDAO extends Minz_ModelPdo { default: throw new FreshRSS_EntriesGetter_Exception ('Bad type in Entry->listByType: [' . $type . ']!'); } - switch ($state) { - case 'all': - break; - case 'not_read': + + if ($state & FreshRSS_Configuration::STATE_NOT_READ) { + if (!($state & FreshRSS_Configuration::STATE_READ)) { $where .= 'AND e1.is_read = 0 '; - break; - case 'read': + } + } + if ($state & FreshRSS_Configuration::STATE_READ) { + if (!($state & FreshRSS_Configuration::STATE_NOT_READ)) { $where .= 'AND e1.is_read = 1 '; - break; - case 'favorite': + } + } + if ($state & FreshRSS_Configuration::STATE_NOT_FAVORITE) { + if (!($state & FreshRSS_Configuration::STATE_FAVORITE)) { + $where .= 'AND e1.is_favorite = 0 '; + } + } + if ($state & FreshRSS_Configuration::STATE_FAVORITE) { + if (!($state & FreshRSS_Configuration::STATE_NOT_FAVORITE)) { $where .= 'AND e1.is_favorite = 1 '; - break; - default: - throw new FreshRSS_EntriesGetter_Exception ('Bad state in Entry->listByType: [' . $state . ']!'); + } } + switch ($order) { case 'DESC': case 'ASC': diff --git a/app/i18n/en.php b/app/i18n/en.php index d6096bbe8..01f31eca7 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -27,7 +27,6 @@ return array ( 'subscription_management' => 'Subscriptions management', 'main_stream' => 'Main stream', 'all_feeds' => 'All feeds', - 'favorite_feeds' => 'Favourites (%d)', 'not_read' => '%d unread', 'not_reads' => '%d unread', @@ -51,7 +50,8 @@ return array ( 'show_all_articles' => 'Show all articles', 'show_not_reads' => 'Show only unread', 'show_read' => 'Show only read', - 'show_favorite' => 'Show favorites', + 'show_favorite' => 'Show only favorites', + 'show_not_favorite' => 'Show all but favorites', 'older_first' => 'Oldest first', 'newer_first' => 'Newer first', diff --git a/app/i18n/fr.php b/app/i18n/fr.php index d89cbb098..299d4d242 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -27,7 +27,6 @@ return array ( 'subscription_management' => 'Gestion des abonnements', 'main_stream' => 'Flux principal', 'all_feeds' => 'Tous les flux', - 'favorite_feeds' => 'Favoris (%d)', 'not_read' => '%d non lu', 'not_reads' => '%d non lus', @@ -52,6 +51,7 @@ return array ( 'show_not_reads' => 'Afficher les non lus', 'show_read' => 'Afficher les lus', 'show_favorite' => 'Afficher les favoris', + 'show_not_favorite' => 'Afficher tout sauf les favoris', 'older_first' => 'Plus anciens en premier', 'newer_first' => 'Plus récents en premier', diff --git a/app/layout/aside_flux.phtml b/app/layout/aside_flux.phtml index 817dae676..0542e6b66 100644 --- a/app/layout/aside_flux.phtml +++ b/app/layout/aside_flux.phtml @@ -28,15 +28,6 @@
-
  • - -
  • - cat_aside as $cat) { $feeds = $cat->feeds (); diff --git a/app/layout/nav_menu.phtml b/app/layout/nav_menu.phtml index ffdc95b24..129647607 100644 --- a/app/layout/nav_menu.phtml +++ b/app/layout/nav_menu.phtml @@ -11,6 +11,70 @@ loginOk) { ?> + url; + if ($this->state & FreshRSS_Configuration::STATE_READ) { + $url_state['params']['state'] = $this->state - FreshRSS_Configuration::STATE_READ; + $checked = 'true'; + } else { + $url_state['params']['state'] = $this->state + FreshRSS_Configuration::STATE_READ; + $checked = 'false'; + } + ?> + + + + state & FreshRSS_Configuration::STATE_NOT_READ) { + $url_state['params']['state'] = $this->state - FreshRSS_Configuration::STATE_NOT_READ; + $checked = 'true'; + } else { + $url_state['params']['state'] = $this->state + FreshRSS_Configuration::STATE_NOT_READ; + $checked = 'false'; + } + ?> + + + + state & FreshRSS_Configuration::STATE_FAVORITE) { + $url_state['params']['state'] = $this->state - FreshRSS_Configuration::STATE_FAVORITE; + $checked = 'true'; + } else { + $url_state['params']['state'] = $this->state + FreshRSS_Configuration::STATE_FAVORITE; + $checked = 'false'; + } + ?> + + + + state & FreshRSS_Configuration::STATE_NOT_FAVORITE) { + $url_state['params']['state'] = $this->state - FreshRSS_Configuration::STATE_NOT_FAVORITE; + $checked = 'true'; + } else { + $url_state['params']['state'] = $this->state + FreshRSS_Configuration::STATE_NOT_FAVORITE; + $checked = 'false'; + } + ?> + + + -
  • +
  • today; @@ -132,42 +196,6 @@
  • - url; - $url_state['params']['state'] = 'all'; - ?> - - - - - - - - -
  • -
  • url; diff --git a/app/views/configure/reading.phtml b/app/views/configure/reading.phtml index c32c59305..b778a4d22 100644 --- a/app/views/configure/reading.phtml +++ b/app/views/configure/reading.phtml @@ -36,7 +36,7 @@
  • diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index be8d6b86a..d7da91bb8 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -88,6 +88,11 @@ .nav_menu .search { display:none; } + .nav_menu .btn[aria-checked="true"]:before{ + content: '✓'; + font-size: 2.5rem; + position: absolute; + } .favicon { height: 16px; diff --git a/p/themes/Dark/global.css b/p/themes/Dark/global.css index e296f2188..0f1baa216 100644 --- a/p/themes/Dark/global.css +++ b/p/themes/Dark/global.css @@ -416,12 +416,6 @@ input, select, textarea { background: #26303F; color: #888; } - .dropdown-menu > .item[aria-checked="true"] > a:before { - content: '✓ '; - font-weight: bold; - margin: 0 0 0 -1.2em; - padding: 0 0.2em 0 0; - } .dropdown-menu > .item:hover > a { color: #888; text-decoration: none; diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 1f297309b..f1737d23e 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -87,6 +87,11 @@ body { .nav_menu .search { display:none; } + .nav_menu .btn[aria-checked="true"]:before{ + content: '✓'; + font-size: 2.5rem; + position: absolute; + } .favicon { height: 16px; diff --git a/p/themes/Flat/global.css b/p/themes/Flat/global.css index 4044dd781..68e9fa359 100644 --- a/p/themes/Flat/global.css +++ b/p/themes/Flat/global.css @@ -412,12 +412,6 @@ input, select, textarea { background: #2980b9; color: #fff; } - .dropdown-menu > .item[aria-checked="true"] > a:before { - content: '✓ '; - font-weight: bold; - margin: 0 0 0 -1.2em; - padding: 0 0.2em 0 0; - } .dropdown-menu > .item:hover > a { color: #fff; text-decoration: none; diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 662e085d6..d33ee4f54 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -89,6 +89,11 @@ .nav_menu .search { display:none; } + .nav_menu .btn[aria-checked="true"]:before{ + content: '✓'; + font-size: 2.5rem; + position: absolute; + } .favicon { height: 16px; diff --git a/p/themes/Origine/global.css b/p/themes/Origine/global.css index 5792c9e4d..7fb3a8f95 100644 --- a/p/themes/Origine/global.css +++ b/p/themes/Origine/global.css @@ -428,12 +428,6 @@ input, select, textarea { background: #0062BE; color: #fff; } - .dropdown-menu > .item[aria-checked="true"] > a:before { - content: '✓ '; - font-weight: bold; - margin: 0 0 0 -1.2em; - padding: 0 0.2em 0 0; - } .dropdown-menu > .item:hover > a { color: #fff; text-decoration: none; -- cgit v1.2.3 From 135486f4ef89fee7eeaeec09e149948ddef1a4c8 Mon Sep 17 00:00:00 2001 From: Alexis Degrugillier Date: Sat, 12 Apr 2014 22:09:10 -0400 Subject: Change activate button layout --- p/themes/Dark/freshrss.css | 7 +++---- p/themes/Flat/freshrss.css | 7 +++---- p/themes/Origine/freshrss.css | 7 +++---- 3 files changed, 9 insertions(+), 12 deletions(-) (limited to 'p/themes/Origine') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index d7da91bb8..cd51b1a06 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -88,10 +88,9 @@ .nav_menu .search { display:none; } - .nav_menu .btn[aria-checked="true"]:before{ - content: '✓'; - font-size: 2.5rem; - position: absolute; + .nav_menu .btn[aria-checked="true"]{ + border-color: #2f2f2f; + box-shadow: 0 0 10px 3px #2f2f2f inset; } .favicon { diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index f1737d23e..91da094be 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -87,10 +87,9 @@ body { .nav_menu .search { display:none; } - .nav_menu .btn[aria-checked="true"]:before{ - content: '✓'; - font-size: 2.5rem; - position: absolute; + .nav_menu .btn[aria-checked="true"]{ + background-color: #2980B9; + border-bottom-color: #3498DB; } .favicon { diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index d33ee4f54..9cf1a7cba 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -89,10 +89,9 @@ .nav_menu .search { display:none; } - .nav_menu .btn[aria-checked="true"]:before{ - content: '✓'; - font-size: 2.5rem; - position: absolute; + .nav_menu .btn[aria-checked="true"]{ + border-color: #aaa #ddd #ddd #aaa; + box-shadow: 0 0 10px 3px #ddd inset; } .favicon { -- cgit v1.2.3 From 9b3673f945ba61059c4444a623ec16229d942fdc Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 5 Jun 2014 20:24:44 +0200 Subject: Rename Origine2 into Origine (v0.2) - Remove template files (will be moved into another repository later) - Rename Origine2 into Origine - Change version (0.1 -> 0.2) See https://github.com/marienfressinaud/FreshRSS/issues/320 --- p/themes/Origine/freshrss.css | 965 ------------------------------------- p/themes/Origine/global.css | 541 --------------------- p/themes/Origine/metadata.json | 4 +- p/themes/Origine/origine.css | 1006 +++++++++++++++++++++++++++++++++++++++ p/themes/Origine/template.css | 683 ++++++++++++++++++++++++++ p/themes/Origine2/loader.gif | Bin 4167 -> 0 bytes p/themes/Origine2/metadata.json | 7 - p/themes/Origine2/origine.css | 1006 --------------------------------------- p/themes/Origine2/template.css | 683 -------------------------- p/themes/template/loader.gif | Bin 4167 -> 0 bytes p/themes/template/metadata.json | 7 - p/themes/template/template.css | 683 -------------------------- 12 files changed, 1691 insertions(+), 3894 deletions(-) delete mode 100644 p/themes/Origine/freshrss.css delete mode 100644 p/themes/Origine/global.css create mode 100644 p/themes/Origine/origine.css create mode 100644 p/themes/Origine/template.css delete mode 100644 p/themes/Origine2/loader.gif delete mode 100644 p/themes/Origine2/metadata.json delete mode 100644 p/themes/Origine2/origine.css delete mode 100644 p/themes/Origine2/template.css delete mode 100644 p/themes/template/loader.gif delete mode 100644 p/themes/template/metadata.json delete mode 100644 p/themes/template/template.css (limited to 'p/themes/Origine') diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css deleted file mode 100644 index 9cf1a7cba..000000000 --- a/p/themes/Origine/freshrss.css +++ /dev/null @@ -1,965 +0,0 @@ -@charset "UTF-8"; - -/* STRUCTURE */ -.header { - display: table; - width: 100%; - background: #f4f4f4; - table-layout: fixed; -} - .header > .item { - display: table-cell; - padding: 10px 0; - border-bottom: 1px solid #aaa; - vertical-align: middle; - text-align: center; - } - .header > .item.title { - width: 250px; - white-space: nowrap; - } - .logo { - display: inline-block; - font-size: 48px; - height: 32px; - width: 32px; - padding: 10px; - } - .header > .item.title h1 { - display: inline-block; - margin: 0; - text-shadow: 1px -1px 0 #ccc; - } - .header > .item.search input { - width: 230px; - } - .header .item.search input:focus { - width: 330px; - } - .header > .item.configure { - width: 100px; - } - -.item a:hover { - text-decoration: none; -} - -#global { - display: table; - width: 100%; - height: 100%; - background: #fafafa; - table-layout: fixed; -} - .aside { - display: table-cell; - height: 100%; - width: 250px; - vertical-align: top; - border-right: 1px solid #aaa; - background: #fff; - } - .aside .nav-form input { - width: 180px; - } - .aside.aside_flux { - padding: 10px 0 40px; - } - .aside.aside_feed .nav-form input { - width: 140px; - } - .aside.aside_feed .nav-form .dropdown .dropdown-menu { - right: -20px; - } - .aside.aside_feed .nav-form .dropdown .dropdown-menu:after { - right: 33px; - } - - .nav-login { - display: none; - } - - .nav_menu { - width: 100%; - background: #fafafa; - border-bottom: 1px solid #aaa; - text-align: center; - padding: 5px 0; - } - .nav_menu .search { - display:none; - } - .nav_menu .btn[aria-checked="true"]{ - border-color: #aaa #ddd #ddd #aaa; - box-shadow: 0 0 10px 3px #ddd inset; - } - -.favicon { - height: 16px; - width: 16px; -} - -.categories { - margin: 0; - padding: 0; - text-align: center; - list-style: none; -} - .category { - display: block; - width: 220px; - margin: 10px auto; - text-align: left; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - .category .btn:first-child { - width: 195px; - position: relative; - } - .category.stick .btn:first-child { - width:160px; - } - .category .btn:first-child:not([data-unread="0"]):after { - content: attr(data-unread); - position: absolute; - top: 3px; right: 3px; - padding: 1px 5px; - background: #ccc; - color: #fff; - font-size: 90%; - border: 1px solid #bbb; - border-radius: 5px; - box-shadow: 1px 3px 3px #aaa inset; - text-shadow: 0 0 1px #aaa; - } - .category + .feeds:not(.active) { - display:none; - } - .categories .feeds { - width: 100%; - margin: 0; - list-style: none; - } - .categories .feeds .item.active { - background: #0062BE; - } - .categories .feeds .item.active .feed { - color: #fff; - } - .categories .feeds .item.empty .feed { - color: #e67e22; - } - .categories .feeds .item.empty.active { - background: #e67e22; - } - .categories .feeds .item.empty.active .feed { - color: #fff; - } - .categories .feeds .item.error .feed { - color: #BD362F; - } - .categories .feeds .item .feed { - display: inline-block; - margin: 0; - width: 165px; - line-height: 35px; - font-size: 90%; - vertical-align: middle; - text-align: left; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - .feed:not([data-unread="0"]) { - font-weight:bold; - } - .feed:not([data-unread="0"]):before { - content: "(" attr(data-unread) ") "; - } - .categories .feeds .dropdown-menu { - left: 0; - } - .categories .feeds .dropdown-menu:after { - left: 2px; - } - .categories .feeds .item .dropdown-toggle > .icon { - visibility: hidden; - cursor: pointer; - } - .categories .feeds .item .dropdown-target:target ~ .dropdown-toggle > .icon, - .categories .feeds .item:hover .dropdown-toggle > .icon, - .categories .feeds .item.active .dropdown-toggle > .icon { - background-color: #fff; - border-radius: 3px; - visibility: visible; - } - -.post { - padding: 10px 50px; -} - .post form { - margin: 10px 0; - } - -.day { - min-height: 50px; - padding: 0 10px; - font-size: 130%; - font-weight: bold; - line-height: 50px; - background: #fff; - border-top: 1px solid #aaa; - border-bottom: 1px solid #aaa; -} - #new-article + .day { - border-top: none; - } - .day .name { - position: absolute; - right: 0; - width: 50%; - height: 1.5em; - padding: 0 10px 0 0; - overflow: hidden; - color: #aab; - font-size: 1.8em; - opacity: .3; - text-shadow: 0px -1px 0px #333; - font-style: italic; - white-space: nowrap; - text-overflow: ellipsis; - text-align: right; - } - -#new-article { - display: none; - min-height: 40px; - background: #0084CC; - text-align: center; -} - #new-article:hover { - background: #0066CC; - } - #new-article > a { - display: block; - line-height: 40px; - color: #fff; - font-weight: bold; - } - #new-article > a:hover { - text-decoration: none; - } - -.flux { - border-left: 3px solid #aaa; - background: #fafafa; -} - .flux:hover { - background: #fff; - } - .flux.not_read { - border-left: 3px solid #FF5300; - background: #FFF3ED; - } - .flux.favorite { - border-left: 3px solid #FFC300; - background: #FFF6DA; - } - .flux.current { - border-left: 3px solid #0062BE; - background: #fff; - } - - .horizontal-list > .item:not(.title):not(.website) > a { - display: block; - } - - .flux_header { - background: inherit; - height: 25px; - font-size: 12px; - border-top: 1px solid #ddd; - cursor: pointer; - } - .flux .item { - line-height: 40px; - white-space: nowrap; - } - .flux_header > .item { - overflow: hidden; - text-overflow: ellipsis; - } - .flux .item.manage { - width: 40px; - text-align: center; - } - .flux .item.website { - width: 200px; - } - .website .favicon { - padding: 5px; - } - .flux .item.title { - background: inherit; - } - .flux .title a { - color: #000; - outline: none; - } - .flux.not_read .item.title, - .flux.current .item.title { - font-weight: bold; - } - .flux .item.date { - width: 145px; - padding:0 5px 0 0; - text-align: right; - font-size: 10px; - color: #666; - } - .link { - width: 40px; - text-align: center; - } - -#stream.reader .flux { - padding: 0 0 30px; - border: none; - background: #f0f0f0; - color: #333; -} - #stream.reader .flux .author { - margin: 0 0 10px; - font-size: 90%; - color: #666; - } - -#stream.global { - text-align: center; -} - #stream.global .box-category { - display: inline-block; - width: 280px; - margin: 20px 10px; - vertical-align: top; - background: #fff; - border: 1px solid #aaa; - border-radius: 5px; - text-align: left; - box-shadow: 0 0 5px #bbb; - } - #stream.global .category { - width: 100%; - margin: 0; - } - #stream.global .btn { - display: block; - width: auto; - height: 35px; - margin: 0; - padding: 0 10px; - background: #eee; - border: none; - border-bottom: 1px solid #aaa; - border-radius: 5px 5px 0 0; - line-height: 35px; - font-size: 120%; - } - #stream.global .btn:not([data-unread="0"]) { - background: #0084CC; - color: #fff; - font-weight: bold; - text-shadow: none; - } - #stream.global .btn:first-child:not([data-unread="0"]):after { - top: 0; right: 5px; - border: 0; - background: none; - color: #fff; - font-weight: bold; - box-shadow: none; - text-shadow: none; - } - #stream.global .box-category .feeds { - display: block; - max-height: 250px; - margin: 0; - list-style: none; - overflow: auto; - } - #stream.global .box-category .feeds .item { - padding: 2px 10px; - font-size: 90%; - } - #stream.global .box-category .feed { - width: 220px; - } - -.content { - min-height: 150px; - max-width: 550px; - margin: 0 auto; - padding: 20px 10px; - line-height: 170%; - word-wrap: break-word; -} - .content h1, .content h2, .content h3 { - margin: 20px 0 5px; - } - .content > .title { - font-size: x-large; - margin: 0; - } - - .content p { - margin: 0 0 20px; - } - img.big { - display: block; - margin: 10px auto; - } - figure img.big { - margin: 0; - } - .content hr { - margin: 30px 0; - height: 1px; - background: #ddd; - border: 0; - } - .content pre { - margin: 10px auto; - padding: 10px; - overflow: auto; - background: #000; - color: #fff; - font-size: 110%; - } - .content q, .content blockquote { - display: block; - margin: 5px 0; - padding: 5px 20px; - font-style: italic; - border-left: 4px solid #ccc; - color: #666; - } - .content blockquote p { - margin: 0; - } - -#panel { - display: none; - position: fixed; - top: 10px; bottom: 10px; - left: 100px; right: 100px; - overflow: auto; - background: #fff; - border: 1px solid #95a5a6; - border-radius: 5px; -} - #panel .close { - position: fixed; - top: 10px; right: 0; - display: inline-block; - width: 26px; - height: 26px; - margin: 0 10px 0 0; - border: 1px solid #ccc; - border-radius: 20px; - text-align: center; - line-height: 26px; - background: #fff; - } - -#overlay { - display: none; - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - background: rgba(0, 0, 0, 0.9); -} - -.flux_content .bottom { - font-size: 90%; - text-align: center; -} - -.hide_posts > :not(.active) > .flux_content { - display:none; -} - -/*** PAGINATION ***/ -.pagination { - display: table; - width: 100%; - margin: 0; - background: #fafafa; - text-align: center; - color: #333; - font-size: 80%; - line-height: 200%; - table-layout: fixed; -} - .pagination .item { - display: table-cell; - line-height: 40px; - } - .pagination .item.pager-current { - font-weight: bold; - font-size: 140%; - } - .pagination .pager-first, - .pagination .pager-previous, - .pagination .pager-next, - .pagination .pager-last { - width: 100px; - } - .pagination .item a { - display: block; - color: #333; - font-style: italic; - } - .pagination:first-child .item { - border-bottom: 1px solid #aaa; - } - .pagination:last-child .item { - border-top: 1px solid #aaa; - } - -#nav_entries { - display: table; - width: 250px; - height: 40px; - position: fixed; - bottom: 0; - left: 0; - margin: 0; - background: #fff; - border-top: 1px solid #ddd; - text-align: center; - line-height: 40px; - table-layout: fixed; -} - #nav_entries .item { - display: table-cell; - width: 30%; - } - #nav_entries a { - display: block; - } - #nav_entries .i_up { - margin: 5px 0 0; - vertical-align: top; - } - -.loading { - background: url("loader.gif") center center no-repeat; - font-size: 0; -} - -#bigMarkAsRead { - display: block; - font-style: normal; - padding: 32px 0 64px 0; - text-align: center; - text-decoration: none; - text-shadow: 0 -1px 0 #aaa; -} - #bigMarkAsRead:hover { - background: #333; - color: #fff; - } - .bigTick { - font-size: 72pt; - line-height: 1.6em; - } - -/*** NOTIFICATION ***/ -#notification { - position: absolute; - top: 10px; - left: 25%; right: 25%; - min-height: 30px; - padding: 10px; - line-height: 30px; - text-align: center; - border-radius: 5px; - box-shadow: 0 0 5px #666; - background: #ddd; - color: #666; - font-weight: bold; - z-index: 10; -} - #notification.closed { - display: none; - } - #notification.good { - background: #f4f899; - } - #notification.bad { - background: #f4a899; - } - #notification a.close { - position: absolute; - top: -10px; right: -10px; - display: inline-block; - width: 16px; - height: 16px; - padding: 5px; - background: #fff; - border-radius: 50px; - border: 1px solid #aaa; - line-height: 16px; - } - -.toggle_aside, .btn.toggle_aside { - display: none; -} - -.actualizeProgress { - position: fixed; - top: 10px; - left: 25%; right: 25%; - padding: 5px; - background: #fff; - text-align: center; - border: 1px solid #ddd; - border-radius: 5px; -} - .actualizeProgress progress { - max-width: 100%; - vertical-align: middle; - } - .actualizeProgress .progress { - color: #999; - font-size: 90%; - vertical-align: middle; - } - -.logs { - border: 1px solid #aaa; -} - .log { - padding: 5px 2%; - overflow: auto; - background: #fafafa; - border-bottom: 1px solid #999; - color: #333; - font-size: 90%; - } - .log .date { - display: block; - } - .log.error { - background: #fdd; - color: #844; - } - .log.warning { - background: #ffe; - color: #c95; - } - .log.notice { - background: #f4f4f4; - color: #aaa; - } - .log.debug { - background: #111; - color: #eee; - } - -.form-group table { - border-collapse:collapse; - margin:10px 0 0 220px; - text-align:center; -} - -.form-group tr, .form-group th, .form-group td { - border:1px solid #DDD; - font-weight:normal; - padding:.5em; -} - -select.number option { - text-align:right; -} - -@media(min-width: 841px) { - .flux:not(.current):hover .item.title { - max-width: calc(100% - 580px); - padding-right: 1.5em; - position: absolute; - } -} - -@media(max-width: 840px) { - .header, - .aside .btn-important, - .aside .feeds .dropdown, - .flux_header .item.website span, - .item.date { - display: none; - } - .flux_header .item.website { - width: 40px; - text-align: center; - } - .flux_header .item.website .favicon { - padding: 12px; - } - - .nav-login { - display: block; - } - - .pagination { - margin: 0 0 40px; - } - .pagination .pager-previous, .pagination .pager-next { - width: 100px; - } - - .toggle_aside, .btn.toggle_aside { - display: inline-block; - } - .aside { - position: fixed; - top: 0; left: 0; - width: 0; - overflow: hidden; - border-right: none; - z-index: 10; - transition: width 200ms linear; - } - .aside.aside_flux { - padding: 10px 0 0; - } - .aside:target { - width: 80%; - border-right: 1px solid #aaa; - overflow: auto; - } - .aside .toggle_aside { - position: absolute; - right: 0; - display: inline-block; - width: 26px; - height: 26px; - margin: 0 10px 0 0; - border: 1px solid #ccc; - border-radius: 20px; - text-align: center; - line-height: 26px; - } - .aside .categories { - margin: 30px 0; - } - - #nav_entries { - width: 100%; - } - - .nav_menu .btn { - margin: 5px 10px; - } - .nav_menu .stick { - margin: 0 10px; - } - .nav_menu .stick .btn { - margin: 5px 0; - } - .nav_menu .search { - display: inline-block; - max-width: 97%; - } - .nav_menu .search input { - max-width: 97%; - width: 90px; - } - .nav_menu .search input:focus { - width: 400px; - } - - #panel { - left: 5px; right: 5px; - } - - .day .date { - display: none; - } - .day .name { - height: 2.6em; - font-size: 1em; - text-shadow: none; - } - - #notification, - .actualizeProgress { - top: 0; - left: 0; - right: 0; - border-radius: 0; - } - #notification a.close { - left: 0; right: 0; - top: 0; bottom: 0; - width: auto; - height: auto; - background: transparent; - border: none; - } - #notification a.close .icon { - display: none; - } -} - -/*** FALLBACK ***/ -.btn { - background: #fff; - background: -moz-linear-gradient(top, #fff 0%, #eee 100%); - background: -webkit-linear-gradient(top, #fff 0%, #eee 100%); - background: -o-linear-gradient(top, #fff 0%, #eee 100%); - background: -ms-linear-gradient(top, #fff 0%, #eee 100%); -} - .btn:hover { - background: #f0f0f0; - background: -moz-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - background: -webkit-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - background: -o-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - background: -ms-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - } - .btn-important { - background: #0084CC; - background: -moz-linear-gradient(top, #0084CC 0%, #0045CC 100%); - background: -webkit-linear-gradient(top, #0084CC 0%, #0045CC 100%); - background: -o-linear-gradient(top, #0084CC 0%, #0045CC 100%); - background: -ms-linear-gradient(top, #0084CC 0%, #0045CC 100%); - } - .btn-important:hover { - background: -moz-linear-gradient(top, #0066CC 0%, #0045CC 100%); - background: -webkit-linear-gradient(top, #0066CC 0%, #0045CC 100%); - background: -o-linear-gradient(top, #0066CC 0%, #0045CC 100%); - background: -ms-linear-gradient(top, #0066CC 0%, #0045CC 100%); - } - .btn-attention { - background: #E95B57; - background: -moz-linear-gradient(top, #E95B57 0%, #BD362F 100%); - background: -webkit-linear-gradient(top, #E95B57 0%, #BD362F 100%); - background: -o-linear-gradient(top, #E95B57 0%, #BD362F 100%); - background: -ms-linear-gradient(top, #E95B57 0%, #BD362F 100%); - } - .btn-attention:hover { - background: -moz-linear-gradient(top, #D14641 0%, #BD362F 100%); - background: -webkit-linear-gradient(top, #D14641 0%, #BD362F 100%); - background: -o-linear-gradient(top, #D14641 0%, #BD362F 100%); - background: -ms-linear-gradient(top, #D14641 0%, #BD362F 100%); - } - -.dropdown-menu:after { - -moz-transform: rotate(45deg); - -webkit-transform: rotate(45deg); - -ms-transform: rotate(45deg); -} - -.nav-head { - background: #fff; - background: -moz-linear-gradient(top, #fff 0%, #f0f0f0 100%); - background: -webkit-linear-gradient(top, #fff 0%, #f0f0f0 100%); - background: -o-linear-gradient(top, #fff 0%, #f0f0f0 100%); - background: -ms-linear-gradient(top, #fff 0%, #f0f0f0 100%); -} - -input.extend { - -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; - -o-transition: width 200ms linear; - -ms-transition: width 200ms linear; -} - -@media(max-width: 840px) { - .aside { - -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; - -o-transition: width 200ms linear; - -ms-transition: width 200ms linear; - } -} - -@media print { - .header, - .aside, - .nav_menu, - .day, - .flux_header, - .flux_content .bottom, - .pagination { - display: none; - } - - html, body { - background: #fff; - color: #000; - font-family: Serif; - font-size: 12pt; - } - - #global, - .flux_content { - display: block !important; - } - - .flux_content .content { - width: 100% !important; - text-align: justify; - } - - .flux_content .content a { - color: #000; - } - .flux_content .content a:after { - content: " (" attr(href) ") "; - text-decoration: underline; - } -} - -.stat { - border:1px solid #aaa; - border-radius:10px; - box-shadow:2px 2px 5px #aaa; - margin:10px 0; - padding:0 5px; -} -.stat > h2 { - border-bottom:1px solid #aaa; - margin:0 -5px; - padding-left:5px; -} -.stat > div { - margin:5px 0; -} -.stat > table { - border-collapse:collapse; - margin:5px 0; - width:100%; -} -.stat > table > thead > tr { - border-bottom:2px solid #aaa; -} -.stat > table > tbody > tr { - border-bottom:1px solid #aaa; -} -.stat > table > tbody > tr:last-child { - border-bottom:0; -} -.stat > table th, .stat > table td { - border-left:2px solid #aaa; - padding:5px; -} -.stat > table th:first-child, .stat > table td:first-child { - border-left:0; -} -.stat > table td.numeric{ - margin:5px 0; - text-align:center; -} \ No newline at end of file diff --git a/p/themes/Origine/global.css b/p/themes/Origine/global.css deleted file mode 100644 index 7fb3a8f95..000000000 --- a/p/themes/Origine/global.css +++ /dev/null @@ -1,541 +0,0 @@ -@charset "UTF-8"; - -/* FONTS */ -@font-face { - font-family: "OpenSans"; - src: url("../fonts/openSans.woff") format("woff"); -} - - -* { - margin: 0; - padding: 0; -} -html, body { - height: 100%; - font-size: 95%; - font-family: "OpenSans", "Cantarell", "Helvetica", "Arial", sans-serif; -} - -/* LIENS */ -a { - color: #0062BE; - text-decoration: none; -} - a:hover { - text-decoration: underline; - } - -/* LISTES */ -ul, ol, dl { - margin: 10px 0 10px 30px; - line-height: 190%; -} - dd { - margin: 0 0 10px 30px; - } - -/* TITRES */ -h1, h2, h3 { - min-height: 40px; - margin: 15px 0 5px; - line-height: 40px; -} - -/* IMG */ -figure { - margin: 5px 0 10px; - text-align: center; -} - figcaption { - display: inline-block; - padding: 3px 20px; - color: #999; - font-style: italic; - border-bottom: 1px solid #ccc; - } -img { - height: auto; - max-width: 100%; - vertical-align: middle; -} - a img { - border: none; - } - -/* VIDEOS */ -iframe, embed, object, video { - max-width: 100%; -} - -/* FORMULAIRES */ -legend { - display: block; - width: 100%; - margin: 20px 0 5px; - padding: 5px 0; - border-bottom: 1px solid #ddd; - font-size: 150%; - clear: both; -} -label { - display: block; - min-height: 25px; - padding: 5px 0; - font-size: 14px; - line-height: 25px; - cursor: pointer; -} -input { - width: 180px; -} -textarea { - width: 360px; - height: 100px; -} -input, select, textarea { - display: inline-block; - max-width: 100%; - min-height: 25px; - padding: 5px; - background: #fdfdfd; - border: 1px solid #bbb; - border-radius: 3px; - color: #666; - line-height: 25px; - vertical-align: middle; - box-shadow: 0 2px 2px #eee inset; -} - option { - padding:0 .5em 0 .5em; - } - input[type="radio"], - input[type="checkbox"] { - width: 15px !important; - min-height: 15px !important; - } - input:focus, select:focus, textarea:focus { - color: #0062BE; - border-color: #33BBFF; - box-shadow: 0 2px 2px #DDDDFF inset; - } - input:invalid, select:invalid { - border-color: red; - box-shadow: 0 0 2px 1px red; - } - input:focus.extend { - width: 300px; - transition: width 200ms linear; - } - -.form-group { - margin: 0; -} - .form-group:after { - content: ""; - display: block; - clear: both; - } - .form-group.form-actions { - min-width: 250px; - padding: 5px 0; - background: #f4f4f4; - border-top: 1px solid #ddd; - } - .form-group.form-actions .btn { - margin: 0 10px; - } - .form-group .group-name { - display: block; - float: left; - width: 200px; - padding: 10px 0; - text-align: right; - } - .form-group .group-controls { - min-width: 250px; - min-height: 25px; - margin: 0 0 0 220px; - padding: 5px 0; - } - .form-group .group-controls .control { - display: block; - min-height: 30px; - padding: 5px 0; - line-height: 25px; - font-size: 14px; - } - -.stick { - display: inline-block; - white-space: nowrap; - font-size: 0px; - vertical-align: middle; -} - .stick input, - .stick .btn { - border-radius: 0; - font-size: 14px; - } - .stick .btn:first-child, - .stick input:first-child { - border-radius: 3px 0 0 3px; - } - .stick .btn-important:first-child { - border-right: 1px solid #06f; - } - .stick .btn:last-child, - .stick input:last-child { - border-radius: 0 3px 3px 0; - } - .stick .btn + .btn, - .stick .btn + input, - .stick .btn + .dropdown > .btn, - .stick input + .btn, - .stick input + input, - .stick input + .dropdown > .btn, - .stick .dropdown + .btn, - .stick .dropdown + input, - .stick .dropdown + .dropdown > .btn { - border-left: none; - } - .stick input + .btn { - border-top: 1px solid #bbb; - } - .stick .btn + .dropdown > .btn { - border-left: none; - border-radius: 0 3px 3px 0; - } - .stick .btn + .dropdown a { - font-size: 12px; - } - -.btn { - display: inline-block; - min-height: 37px; - min-width: 15px; - padding: 5px 10px; - background: linear-gradient(to bottom, #fff 0%, #eee 100%); - border-radius: 3px; - border: 1px solid #ddd; - border-bottom: 1px solid #aaa; - border-right: 1px solid #aaa; - color: #666; - text-shadow: 0px -1px 0 #ddd; - line-height: 20px; - vertical-align: middle; - cursor: pointer; - overflow: hidden; -} - a.btn { - min-height: 25px; - line-height: 25px; - } - .btn:hover { - background: linear-gradient(to bottom, #f8f8f8, #f0f0f0); - text-decoration: none; - } - .btn.active, - .btn:active, - .dropdown-target:target ~ .btn.dropdown-toggle { - box-shadow: 0px 2px 4px #e0e0e0 inset, 0px 1px 2px #fafafa; - background: #eee; - } - - .btn-important { - background: linear-gradient(to bottom, #0084CC, #0045CC); - color: #fff; - border: 1px solid #0062B7; - text-shadow: 0px -1px 0 #aaa; - } - .btn-important:hover { - background: linear-gradient(to bottom, #0066CC, #0045CC); - } - .btn-important:active { - background: #0044CB; - box-shadow: none; - } - - .btn-attention { - background: linear-gradient(to bottom, #E95B57, #BD362F); - color: #fff; - border: 1px solid #C44742; - text-shadow: 0px -1px 0px #666; - } - .btn-attention:hover { - background: linear-gradient(to bottom, #D14641, #BD362F); - } - .btn-attention:active { - background: #BD362F; - box-shadow: none; - } - -/* NAVIGATION */ -.nav-list .nav-header, -.nav-list .item { - display: block; - height: 35px; - line-height: 35px; -} - .nav-list .item:hover { - background: #fafafa; - } - .nav-list .item:hover a { - color: #003388; - } - .nav-list .item.active { - background: #0062BE; - color: #fff; - } - .nav-list .item.active a { - color: #fff; - } - .nav-list .disable { - color: #aaa; - background: #fafafa; - text-align: center; - } - .nav-list .item > * { - display: block; - padding: 0 10px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - .nav-list a:hover { - text-decoration: none; - } - .nav-list .item.error a { - color: #BD362F; - } - .nav-list .item.active.error a { - color: #fff; - background: #BD362F; - } - .nav-list .item.empty a { - color: #f39c12; - } - .nav-list .item.active.empty a { - color: #fff; - background: #f39c12; - } - - .nav-list .nav-header { - padding: 0 10px; - color: #888; - background: #f4f4f4; - border-bottom: 1px solid #ddd; - font-weight: bold; - text-shadow: 0 0 1px #ddd; - } - .nav-list .separator { - display: block; - height: 0; - margin: 5px 0; - border-bottom: 1px solid #ddd; - } - - .nav-list .nav-form { - padding: 3px; - text-align: center; - } - -.nav-head { - display: block; - margin: 0; - background: linear-gradient(to bottom, #fff, #f0f0f0); - border-bottom: 1px solid #ddd; - text-align: right; -} - .nav-head .item { - display: inline-block; - padding: 5px 10px; - } - -/* HORIZONTAL-LIST */ -.horizontal-list { - display: table; - table-layout: fixed; - margin: 0; - padding: 0; - width: 100%; -} - .horizontal-list .item { - display: table-cell; - vertical-align: middle; - } - -/* DROPDOWN */ -.dropdown { - position: relative; - display: inline-block; -} - .dropdown-target { - display: none; - } - - .dropdown-menu { - display: none; - min-width: 200px; - margin: 5px 0 0; - padding: 5px 0; - position: absolute; - right: 0px; - background: #fff; - border: 1px solid #ddd; - border-radius: 5px; - text-align: left; - box-shadow: 3px 3px 3px #ddd; - } - .dropdown-menu:after { - content: ""; - position: absolute; - top: -6px; - right: 13px; - width: 10px; - height: 10px; - background: #fff; - border-top: 1px solid #ddd; - border-left: 1px solid #ddd; - z-index: -10; - transform: rotate(45deg); - } - .dropdown-header { - display: block; - padding: 0 5px; - color: #888; - font-weight: bold; - font-size: 14px; - line-height: 30px; - } - .dropdown-menu > .item { - display: block; - height: 30px; - font-size: 90%; - line-height: 30px; - } - .dropdown-menu > .item > a { - display: block; - padding: 0 25px; - line-height: 30px; - } - .dropdown-menu > .item.share > a { - display: list-item; - list-style-position:inside; - list-style-type:decimal; - } - .dropdown-menu > .item:hover { - background: #0062BE; - color: #fff; - } - .dropdown-menu > .item:hover > a { - color: #fff; - text-decoration: none; - } - .dropdown-menu .input { - display: block; - height: 40px; - font-size: 90%; - line-height: 30px; - } - .dropdown-menu .input select, - .dropdown-menu .input input { - display: block; - height: 20px; - width: 95%; - margin: auto; - padding: 2px 5px; - border-radius: 3px; - } - .dropdown-menu .input select { - width: 70%; - height: auto; - } - .dropdown-menu .separator { - display: block; - height: 0; - margin: 5px 0; - border-bottom: 1px solid #ddd; - } - .dropdown-target:target ~ .dropdown-menu { - display: block; - z-index: 10; - } - .dropdown-close { - display: inline; - } - .dropdown-close a { - font-size: 0; - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - display: block; - z-index: -10; - } - -/* ALERTS */ -.alert { - display: block; - width: 90%; - margin: 15px auto; - padding: 10px 15px; - background: #f4f4f4; - border: 1px solid #ccc; - border-right: 1px solid #aaa; - border-bottom: 1px solid #aaa; - border-radius: 5px; - color: #aaa; - text-shadow: 0 0 1px #eee; -} - .alert-head { - margin: 0; - font-weight: bold; - font-size: 110%; - } - .alert > a { - color: inherit; - text-decoration: underline; - } - .alert-warn { - background: #ffe; - border: 1px solid #eeb; - color: #c95; - } - .alert-success { - background: #dfd; - border: 1px solid #cec; - color: #484; - } - .alert-error { - background: #fdd; - border: 1px solid #ecc; - color: #844; - } - -/* ICÔNES */ -.icon { - display: inline-block; - width: 16px; - height: 16px; - vertical-align: middle; - line-height: 16px; -} - -/* Prompt (centré) */ -.prompt { - text-align: center; -} - .prompt label { - text-align: left; - } - .prompt form { - margin: 1em auto 2.5em auto; - width: 10em; - } - .prompt input { - margin: .4em auto 1.1em auto; - width: 100%; - } - .prompt p { - margin: 20px 0; - } diff --git a/p/themes/Origine/metadata.json b/p/themes/Origine/metadata.json index f93dcbc3f..59a45e8f6 100644 --- a/p/themes/Origine/metadata.json +++ b/p/themes/Origine/metadata.json @@ -2,6 +2,6 @@ "name": "Origine", "author": "Marien Fressinaud", "description": "Le thème par défaut pour FreshRSS", - "version": 0.1, - "files": ["global.css", "freshrss.css"] + "version": 0.2, + "files": ["template.css", "origine.css"] } diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css new file mode 100644 index 000000000..3a32d54d3 --- /dev/null +++ b/p/themes/Origine/origine.css @@ -0,0 +1,1006 @@ +@charset "UTF-8"; + +/*=== FONTS */ +@font-face { + font-family: "OpenSans"; + src: url("../fonts/openSans.woff") format("woff"); +} + +/*=== GENERAL */ +/*============*/ +html, body { + height: 100%; + font-family: "OpenSans", "Cantarell", "Helvetica", "Arial", sans-serif; +} + +/*=== Links */ +a { + color: #0062be; +} + +/*=== Forms */ +legend { + margin: 20px 0 5px; + padding: 5px 0; + border-bottom: 1px solid #ddd; + font-size: 1.4em; +} +label { + min-height: 25px; + padding: 5px 0; + cursor: pointer; +} +textarea { + width: 360px; + height: 100px; +} +input, select, textarea { + min-height: 25px; + padding: 5px; + background: #fdfdfd; + border: 1px solid #bbb; + border-radius: 3px; + color: #666; + line-height: 25px; + vertical-align: middle; + box-shadow: 0 2px 2px #eee inset; +} +option { + padding: 0 .5em; +} +input:focus, select:focus, textarea:focus { + color: #0062be; + border-color: #33bbff; + box-shadow: 0 2px 2px #ddddff inset; +} +input:invalid, select:invalid { + border-color: #f00; + box-shadow: 0 0 2px 2px #fdd inset; +} +input:disabled, select:disabled { + background: #eee; +} +input.extend { + transition: width 200ms linear; + -moz-transition: width 200ms linear; + -webkit-transition: width 200ms linear; + -o-transition: width 200ms linear; + -ms-transition: width 200ms linear; +} + +/*=== Tables */ +table { + border-collapse: collapse; +} + +tr, th, td { + padding: 0.5em; + border: 1px solid #ddd; +} +th { + background: #f6f6f6; +} +form td, +form th { + font-weight: normal; + text-align: center; +} + +/*=== COMPONENTS */ +/*===============*/ +/*=== Forms */ +.form-group.form-actions { + padding: 5px 0; + background: #f4f4f4; + border-top: 1px solid #ddd; +} +.form-group.form-actions .btn { + margin: 0 10px; +} +.form-group .group-name { + padding: 10px 0; + text-align: right; +} +.form-group .group-controls { + min-height: 25px; + padding: 5px 0; +} +.form-group table { + margin: 10px 0 0 220px; +} + +/*=== Buttons */ +.stick { + vertical-align: middle; + font-size: 0; +} +.stick input, +.stick .btn { + border-radius: 0; +} +.stick .btn:first-child, +.stick input:first-child { + border-radius: 3px 0 0 3px; +} +.stick .btn-important:first-child { + border-right: 1px solid #06f; +} +.stick .btn:last-child, +.stick input:last-child { + border-radius: 0 3px 3px 0; +} +.stick .btn + .btn, +.stick .btn + input, +.stick .btn + .dropdown > .btn, +.stick input + .btn, +.stick input + input, +.stick input + .dropdown > .btn, +.stick .dropdown + .btn, +.stick .dropdown + input, +.stick .dropdown + .dropdown > .btn { + border-left: none; +} +.stick input + .btn { + border-top: 1px solid #bbb; +} +.stick .btn + .dropdown > .btn { + border-left: none; + border-radius: 0 3px 3px 0; +} + +.btn { + display: inline-block; + min-height: 37px; + min-width: 15px; + margin: 0; + padding: 5px 10px; + background: #fff; + background: linear-gradient(to bottom, #fff 0%, #eee 100%); + background: -moz-linear-gradient(top, #fff 0%, #eee 100%); + background: -webkit-linear-gradient(top, #fff 0%, #eee 100%); + background: -o-linear-gradient(top, #fff 0%, #eee 100%); + background: -ms-linear-gradient(top, #fff 0%, #eee 100%); + border-radius: 3px; + border: 1px solid #ddd; + border-bottom: 1px solid #aaa; + border-right: 1px solid #aaa; + color: #666; + text-shadow: 0px -1px 0 #ddd; + font-size: 0.9rem; + vertical-align: middle; + cursor: pointer; + overflow: hidden; +} +a.btn { + min-height: 25px; + line-height: 25px; +} +.btn:hover { + background: #f0f0f0; + background: linear-gradient(to bottom, #f8f8f8, #f0f0f0); + background: -moz-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); + background: -webkit-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); + background: -o-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); + background: -ms-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); + text-decoration: none; +} +.btn.active, +.btn:active, +.dropdown-target:target ~ .btn.dropdown-toggle { + box-shadow: 0px 2px 4px #e0e0e0 inset, 0px 1px 2px #fafafa; + background: #eee; +} + +.btn-important { + background: #0084CC; + background: linear-gradient(to bottom, #0084CC, #0045CC); + background: -moz-linear-gradient(top, #0084CC 0%, #0045CC 100%); + background: -webkit-linear-gradient(top, #0084CC 0%, #0045CC 100%); + background: -o-linear-gradient(top, #0084CC 0%, #0045CC 100%); + background: -ms-linear-gradient(top, #0084CC 0%, #0045CC 100%); + color: #fff; + border: 1px solid #0062B7; + text-shadow: 0px -1px 0 #aaa; + font-weight: normal; +} +.btn-important:hover { + background: linear-gradient(to bottom, #0066CC, #0045CC); + background: -moz-linear-gradient(top, #0066CC 0%, #0045CC 100%); + background: -webkit-linear-gradient(top, #0066CC 0%, #0045CC 100%); + background: -o-linear-gradient(top, #0066CC 0%, #0045CC 100%); + background: -ms-linear-gradient(top, #0066CC 0%, #0045CC 100%); +} +.btn-important:active { + background: #0044CB; + box-shadow: none; +} + +.btn-attention { + background: #E95B57; + background: linear-gradient(to bottom, #E95B57, #BD362F); + background: -moz-linear-gradient(top, #E95B57 0%, #BD362F 100%); + background: -webkit-linear-gradient(top, #E95B57 0%, #BD362F 100%); + background: -o-linear-gradient(top, #E95B57 0%, #BD362F 100%); + background: -ms-linear-gradient(top, #E95B57 0%, #BD362F 100%); + color: #fff; + border: 1px solid #C44742; + text-shadow: 0px -1px 0px #666; +} +.btn-attention:hover { + background: linear-gradient(to bottom, #D14641, #BD362F); + background: -moz-linear-gradient(top, #D14641 0%, #BD362F 100%); + background: -webkit-linear-gradient(top, #D14641 0%, #BD362F 100%); + background: -o-linear-gradient(top, #D14641 0%, #BD362F 100%); + background: -ms-linear-gradient(top, #D14641 0%, #BD362F 100%); +} +.btn-attention:active { + background: #BD362F; + box-shadow: none; +} + +/*=== Navigation */ +.nav-list .nav-header, +.nav-list .item { + height: 2.5em; + line-height: 2.5em; + font-size: 0.9rem; +} +.nav-list .item:hover { + background: #fafafa; +} +.nav-list .item:hover a { + color: #003388; +} +.nav-list .item.active { + background: #0062BE; + color: #fff; +} +.nav-list .item.active a { + color: #fff; +} +.nav-list .disable { + color: #aaa; + background: #fafafa; + text-align: center; +} +.nav-list .item > a { + padding: 0 10px; +} +.nav-list a:hover { + text-decoration: none; +} +.nav-list .item.empty a { + color: #f39c12; +} +.nav-list .item.active.empty a { + color: #fff; + background: #f39c12; +} +.nav-list .item.error a { + color: #BD362F; +} +.nav-list .item.active.error a { + color: #fff; + background: #BD362F; +} + +.nav-list .nav-header { + padding: 0 10px; + color: #888; + background: #f4f4f4; + border-bottom: 1px solid #ddd; + font-weight: bold; + text-shadow: 0 0 1px #ddd; +} + +.nav-list .nav-form { + padding: 3px; + text-align: center; +} + +.nav-head { + margin: 0; + background: #fff; + background: linear-gradient(to bottom, #fff, #f0f0f0); + background: -moz-linear-gradient(top, #fff 0%, #f0f0f0 100%); + background: -webkit-linear-gradient(top, #fff 0%, #f0f0f0 100%); + background: -o-linear-gradient(top, #fff 0%, #f0f0f0 100%); + background: -ms-linear-gradient(top, #fff 0%, #f0f0f0 100%); + border-bottom: 1px solid #ddd; + text-align: right; +} +.nav-head .item { + padding: 5px 10px; + font-size: 0.9rem; + line-height: 1.5rem; +} + +/*=== Horizontal-list */ +.horizontal-list { + margin: 0; + padding: 0; +} +.horizontal-list .item { + vertical-align: middle; +} + +/*=== Dropdown */ +.dropdown-menu { + margin: 5px 0 0; + padding: 5px 0; + border: 1px solid #ddd; + border-radius: 5px; + box-shadow: 3px 3px 3px #ddd; + font-size: 0.8rem; + text-align: left; +} +.dropdown-menu:after { + content: ""; + position: absolute; + top: -6px; + right: 13px; + width: 10px; + height: 10px; + background: #fff; + border-top: 1px solid #ddd; + border-left: 1px solid #ddd; + z-index: -10; + transform: rotate(45deg); + -moz-transform: rotate(45deg); + -webkit-transform: rotate(45deg); + -ms-transform: rotate(45deg); +} +.dropdown-header { + padding: 0 5px 5px; + color: #888; + font-weight: bold; + text-align: left; +} +.dropdown-menu > .item { +} +.dropdown-menu > .item > a { + padding: 0 25px; + line-height: 2.5em; +} +.dropdown-menu > .item:hover { + background: #0062BE; + color: #fff; +} +.dropdown-menu > .item[aria-checked="true"] > a:before { + font-weight: bold; + margin: 0 0 0 -14px; +} +.dropdown-menu > .item:hover > a { + color: #fff; + text-decoration: none; +} +.dropdown-menu .input select, +.dropdown-menu .input input { + margin: 0 auto 5px; + padding: 2px 5px; + border-radius: 3px; +} + +.separator { + margin: 5px 0; + border-bottom: 1px solid #ddd; +} + +/*=== Alerts */ +.alert { + margin: 15px auto; + padding: 10px 15px; + background: #f4f4f4; + border: 1px solid #ccc; + border-right: 1px solid #aaa; + border-bottom: 1px solid #aaa; + border-radius: 5px; + color: #aaa; + text-shadow: 0 0 1px #eee; + font-size: 0.9em; +} +.alert-head { + font-size: 1.2em; +} +.alert > a { + color: inherit; + text-decoration: underline; +} +.alert-warn { + background: #ffe; + border: 1px solid #eeb; + color: #c95; +} +.alert-success { + background: #dfd; + border: 1px solid #cec; + color: #484; +} +.alert-error { + background: #fdd; + border: 1px solid #ecc; + color: #844; +} + +/*=== Pagination */ +.pagination { + background: #fafafa; + text-align: center; + color: #333; + font-size: 0.8em; +} +.content .pagination { + margin: 0; + padding: 0; +} +.pagination .item.pager-current { + font-weight: bold; + font-size: 1.5em; +} +.pagination .item a { + display: block; + color: #333; + font-style: italic; + line-height: 3em; + text-decoration: none; +} +.pagination .item a:hover { + background: #ddd; +} +.pagination:first-child .item { + border-bottom: 1px solid #aaa; +} +.pagination:last-child .item { + border-top: 1px solid #aaa; +} + +/*=== STRUCTURE */ +/*===============*/ +/*=== Header */ +.header { + background: #f4f4f4; +} +.header > .item { + padding: 10px 0; + border-bottom: 1px solid #aaa; + vertical-align: middle; + text-align: center; +} +.header > .item.title h1 { + text-shadow: 1px -1px 0 #ccc; +} +.header > .item.title h1 a { + text-decoration: none; +} +.header > .item.search input { + width: 230px; +} +.header .item.search input:focus { + width: 350px; +} + +/*=== Body */ +#global { + background: #fafafa; +} +.aside { + border-right: 1px solid #aaa; + background: #fff; +} +.aside.aside_flux { + padding: 10px 0 40px; +} + +/*=== Aside main page (categories) */ +.categories { + text-align: center; +} +.category { + width: 220px; + margin: 10px auto; + text-align: left; +} +.category .btn:first-child { + position: relative; + width: 197px; +} +.category.stick .btn:first-child { + width: 160px; +} +.category .btn:first-child:not([data-unread="0"]):after { + position: absolute; + top: 3px; right: 3px; + padding: 1px 5px; + background: #ccc; + color: #fff; + border: 1px solid #bbb; + border-radius: 5px; + box-shadow: 1px 3px 3px #aaa inset; + text-shadow: 0 0 1px #aaa; +} + +/*=== Aside main page (feeds) */ +.categories .feeds .item.active { + background: #0062BE; +} +.categories .feeds .item.active .feed { + color: #fff; +} +.categories .feeds .item.empty .feed { + color: #e67e22; +} +.categories .feeds .item.empty.active { + background: #e67e22; +} +.categories .feeds .item.empty.active .feed { + color: #fff; +} +.categories .feeds .item.error .feed { + color: #BD362F; +} +.categories .feeds .item .feed { + margin: 0; + width: 165px; + line-height: 3em; + font-size: 0.8em; + text-align: left; + text-decoration: none; +} +.categories .feeds .feed:not([data-unread="0"]) { + font-weight: bold; +} +.categories .feeds .dropdown-menu:after { + left: 2px; +} +.categories .feeds .item .dropdown-target:target ~ .dropdown-toggle > .icon, +.categories .feeds .item:hover .dropdown-toggle > .icon, +.categories .feeds .item.active .dropdown-toggle > .icon { + background-color: #fff; + border-radius: 3px; + vertical-align: middle; +} + +/*=== Configuration pages */ +.post { + padding: 10px 50px; + font-size: 0.9em; +} +.post form { + margin: 10px 0; +} +.post.content { + max-width: 550px; +} + +/*=== Prompt (centered) */ +.prompt { + text-align: center; +} +.prompt label { + text-align: left; +} +.prompt form { + margin: 10px auto 20px auto; + width: 180px; +} +.prompt input { + margin: 5px auto; + width: 100%; +} +.prompt p { + margin: 20px 0; +} + +/*=== New article notification */ +#new-article { + background: #0084CC; + text-align: center; + font-size: 0.9em; +} +#new-article:hover { + background: #0066CC; +} +#new-article > a { + line-height: 3em; + color: #fff; + font-weight: bold; +} +#new-article > a:hover { + text-decoration: none; +} + +/*=== Day indication */ +.day { + padding: 0 10px; + font-weight: bold; + line-height: 3em; + background: #fff; + border-top: 1px solid #aaa; + border-bottom: 1px solid #aaa; +} +#new-article + .day { + border-top: none; +} +.day .name { + padding: 0 10px 0 0; + color: #aab; + font-size: 1.8em; + opacity: 0.3; + text-shadow: 0px -1px 0px #666; + font-style: italic; + text-align: right; +} + +/*=== Index menu */ +.nav_menu { + background: #fafafa; + border-bottom: 1px solid #aaa; + text-align: center; + padding: 5px 0; +} + +/*=== Feed articles */ +.flux { + border-left: 2px solid #aaa; + background: #fafafa; +} +.flux:hover { + background: #fff; +} +.flux.current { + border-left: 2px solid #0062BE; +} +.flux.not_read { + border-left: 2px solid #FF5300; + background: #FFF3ED; +} +.flux.not_read:not(.current):hover .item.title { + background: #FFF3ED; +} +.flux.favorite { + border-left: 2px solid #FFC300; + background: #FFF6DA; +} +.flux.favorite:not(.current):hover .item.title { + background: #FFF6DA; +} +.flux.current { + background: #fff; +} + + +.flux_header { + border-top: 1px solid #ddd; + font-size: 0.8rem; + cursor: pointer; +} +.flux .website .favicon { + padding: 5px; +} +.flux .date { + color: #666; + font-size: 0.7rem; +} +.flux:not(.current):hover .item.title { + top: 1px; +} + +.flux .bottom { + font-size: 0.8rem; + text-align: center; +} + +/*=== Content of feed articles */ +.content { + padding: 20px 10px; +} +.content > h1.title > a { + color: #000; +} + +.content hr { + margin: 30px 10px; + height: 1px; + background: #ddd; + border: 0; + box-shadow: 0 2px 5px #ccc; +} + +.content pre { + margin: 10px auto; + padding: 10px 20px; + overflow: auto; + background: #222; + color: #fff; + font-size: 0.9rem; + border-radius: 3px; +} +.content code { + padding: 2px 5px; + color: #dd1144; + background: #fafafa; + border: 1px solid #eee; + border-radius: 3px; +} +.content pre code { + background: transparent; + color: #fff; + border: none; +} + +.content blockquote { + display: block; + padding: 5px 20px; + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + background: #fafafa; + color: #333; +} +.content blockquote p { + margin: 0; +} + +/*=== Notification and actualize notification */ +.notification { + padding: 0 0 0 5px; + text-align: center; + border: 1px solid #eeb; + border-radius: 3px; + box-shadow: 0 0 5px #ddd; + font-weight: bold; + font-size: 0.9em; + line-height: 3em; + z-index: 10; + vertical-align: middle; +} +.notification.good { + background: #ffe; + border: 1px solid #eeb; + color: #c95; +} +.notification.bad { + background: #fdd; + border: 1px solid #ecc; + color: #844; +} +.notification a.close { + padding: 0 15px; + line-height: 3em; +} +.notification.good a.close:hover { + background: #eeb; +} +.notification.bad a.close:hover { + background: #ecc; +} + +.notification#actualizeProgress { + line-height: 2em; +} + +/*=== "Load more" part */ +#bigMarkAsRead { + text-align: center; + text-decoration: none; + text-shadow: 0 -1px 0 #aaa; + color: #666; + background: #fafafa; +} +#bigMarkAsRead:hover { + color: #000; + background: #ccc; + background: radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); + background: -moz-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); + background: -webkit-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); + background: -o-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); + background: -ms-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); +} +#bigMarkAsRead:hover .bigTick { + text-shadow: 0 0 10px #666; +} + +/*=== Navigation menu (for articles) */ +#nav_entries { + margin: 0; + background: #fff; + border-top: 1px solid #ddd; + text-align: center; + line-height: 3em; + table-layout: fixed; +} + +/*=== READER VIEW */ +/*================*/ +#stream.reader .flux { + padding: 0 0 50px; + border: none; + background: #f0f0f0; + color: #333; +} +#stream.reader .flux .author { + margin: 0 0 10px; + font-size: 90%; + color: #666; +} + +/*=== GLOBAL VIEW */ +/*================*/ +#stream.global .box-category { + background: #fff; + border-radius: 5px; + text-align: left; + box-shadow: 0 0 3px #bbb; +} +#stream.global .category { + margin: 0; +} +#stream.global .btn { + width: auto; + height: 2em; + margin: 0; + padding: 0 10px; + background: #f6f6f6; + border: none; + border-bottom: 1px solid #ddd; + border-radius: 5px 5px 0 0; + line-height: 2em; + font-size: 1.2rem; +} +#stream.global .btn:not([data-unread="0"]) { + background: #0084CC; + color: #fff; + font-weight: bold; + text-shadow: none; +} +#stream.global .btn:first-child:not([data-unread="0"]):after { + top: 0; right: 5px; + border: 0; + background: none; + color: #fff; + font-weight: bold; + box-shadow: none; + text-shadow: none; +} +#stream.global .box-category .feeds { + max-height: 250px; +} +#stream.global .box-category .feeds .item { + padding: 2px 10px; + font-size: 0.9rem; +} + +/*=== DIVERS */ +/*===========*/ +.aside.aside_feed .nav-form input, +.aside.aside_feed .nav-form select { + width: 140px; +} +.aside.aside_feed .nav-form .dropdown .dropdown-menu { + right: -20px; +} +.aside.aside_feed .nav-form .dropdown .dropdown-menu:after { + right: 33px; +} + +/*=== STATISTICS */ +/*===============*/ +.stat { + margin: 10px 0 20px; +} + +.stat th, +.stat td, +.stat tr { + border: none; +} +.stat > table td, +.stat > table th { + border-bottom: 1px solid #ddd; + text-align: center; +} + +/*=== LOGS */ +/*=========*/ +.logs { + border: 1px solid #aaa; + border-radius: 5px; + overflow: hidden; +} +.log { + padding: 5px 10px; + background: #fafafa; + color: #333; + font-size: 90%; +} +.log+.log { + border-top: 1px solid #aaa; +} +.log .date { + display: block; + font-weight: bold; +} +.log.error { + background: #fdd; + color: #844; +} +.log.warning { + background: #ffe; + color: #c95; +} +.log.notice { + background: #f4f4f4; + color: #aaa; +} +.log.debug { + background: #333; + color: #eee; +} + +/*=== MOBILE */ +/*===========*/ +@media(max-width: 840px) { + .aside { + box-shadow: 3px 0 3px #aaa; + transition: width 200ms linear; + -moz-transition: width 200ms linear; + -webkit-transition: width 200ms linear; + -o-transition: width 200ms linear; + -ms-transition: width 200ms linear; + } + .aside .toggle_aside, + #panel .close { + position: absolute; + display: block; + top: 0; right: 0; + width: 30px; + height: 30px; + line-height: 30px; + text-align: center; + background: #f6f6f6; + border-left: 1px solid #ddd; + border-bottom: 1px solid #ddd; + border-radius: 0 0 0 5px; + } + + .nav_menu .btn { + margin: 5px 10px; + } + .nav_menu .stick { + margin: 0 10px; + } + .nav_menu .stick .btn { + margin: 5px 0; + } + .nav_menu .search { + display: inline-block; + max-width: 97%; + } + .nav_menu .search input { + max-width: 97%; + width: 90px; + } + .nav_menu .search input:focus { + width: 400px; + } + + .day .name { + font-size: 1.1rem; + text-shadow: none; + } + + .flux_header .item.website .favicon { + padding: 12px; + } + + .notification a.close { + display: block; + left: 0; + background: transparent; + } + .notification a.close:hover { + opacity: 0.5; + } + .notification a.close .icon { + display: none; + } +} diff --git a/p/themes/Origine/template.css b/p/themes/Origine/template.css new file mode 100644 index 000000000..8b14633b2 --- /dev/null +++ b/p/themes/Origine/template.css @@ -0,0 +1,683 @@ +@charset "UTF-8"; + +/*=== GENERAL */ +/*============*/ +html, body { + margin: 0; + padding: 0; + font-size: 100%; +} + +/*=== Links */ +a { + text-decoration: none; +} +a:hover { + text-decoration: underline; +} + +/*=== Lists */ +ul, ol, dd { + margin: 0; + padding: 0; +} + +/*=== Titles */ +h1 { + margin: 0.6em 0 0.3em; + font-size: 1.8em; +} +h2 { + margin: 0.5em 0 0.25em; + font-size: 1.6em; +} +h3 { + margin: 0.5em 0 0.25em; + font-size: 1.4em; +} + +/*=== Paragraphs */ +p { + margin: 1em 0 0.5em; + font-size: 1em; +} + +/*=== Images */ +img { + height: auto; + max-width: 100%; +} +img.favicon { + height: 16px; + width: 16px; + vertical-align: middle; +} + +/*=== Videos */ +iframe, embed, object, video { + max-width: 100%; +} + +/*=== Forms */ +legend { + display: block; + width: 100%; + clear: both; +} +label { + display: block; +} +input { + width: 180px; +} +textarea { + width: 300px; +} +input, select, textarea { + display: inline-block; + max-width: 100%; +} +input[type="radio"], +input[type="checkbox"] { + width: 15px !important; + min-height: 15px !important; +} +input.extend:focus { + width: 300px; +} + +/*=== COMPONENTS */ +/*===============*/ +/*=== Forms */ +.form-group:after { + content: ""; + display: block; + clear: both; +} +.form-group.form-actions { + min-width: 250px; +} +.form-group .group-name { + display: block; + float: left; + width: 200px; +} +.form-group .group-controls { + min-width: 250px; + margin: 0 0 0 220px; +} +.form-group .group-controls .control { + display: block; +} + +/*=== Buttons */ +.stick { + display: inline-block; + white-space: nowrap; +} +.btn, +a.btn { + display: inline-block; + cursor: pointer; + overflow: hidden; +} +.btn-important { + font-weight: bold; +} + +/*=== Navigation */ +.nav-list .nav-header, +.nav-list .item { + display: block; +} +.nav-list .item, +.nav-list .item > a { + display: block; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} +.nav-head { + display: block; +} +.nav-head .item { + display: inline-block; +} + +/*=== Horizontal-list */ +.horizontal-list { + display: table; + table-layout: fixed; + width: 100%; +} +.horizontal-list .item { + display: table-cell; +} + +/*=== Dropdown */ +.dropdown { + position: relative; + display: inline-block; +} +.dropdown-target { + display: none; +} +.dropdown-menu { + display: none; + min-width: 200px; + margin: 0; + position: absolute; + right: 0; + background: #fff; + border: 1px solid #aaa; +} +.dropdown-header { + display: block; +} +.dropdown-menu > .item { + display: block; +} +.dropdown-menu > .item > a { + display: block; +} +.dropdown-menu > .item[aria-checked="true"] > a:before { + content: '✓'; +} +.dropdown-menu .input { + display: block; +} +.dropdown-menu .input select, +.dropdown-menu .input input { + display: block; + max-width: 95%; +} +.dropdown-target:target ~ .dropdown-menu { + display: block; + z-index: 10; +} +.dropdown-close { + display: inline; +} +.dropdown-close a { + font-size: 0; + position: fixed; + top: 0; bottom: 0; + left: 0; right: 0; + display: block; + z-index: -10; +} +.separator { + display: block; + height: 0; + border-bottom: 1px solid #aaa; +} + +/*=== Alerts */ +.alert { + display: block; + width: 90%; +} +.alert-head { + margin: 0; + font-weight: bold; +} + +/*=== Icons */ +.icon { + display: inline-block; + width: 16px; + height: 16px; + vertical-align: middle; + line-height: 16px; +} + +/*=== Pagination */ +.pagination { + display: table; + width: 100%; + margin: 0; + padding: 0; + table-layout: fixed; +} +.pagination .item { + display: table-cell; +} +.pagination .pager-first, +.pagination .pager-previous, +.pagination .pager-next, +.pagination .pager-last { + width: 100px; +} + +/*=== STRUCTURE */ +/*===============*/ +/*=== Header */ +.header { + display: table; + width: 100%; + table-layout: fixed; +} +.header > .item { + display: table-cell; +} +.header > .item.title { + width: 250px; + white-space: nowrap; +} +.header > .item.title h1 { + display: inline-block; +} +.header > .item.title .logo { + display: inline-block; + height: 32px; + width: 32px; + vertical-align: middle; +} +.header > .item.configure { + width: 100px; +} + +/*=== Body */ +#global { + display: table; + width: 100%; + height: 100%; + table-layout: fixed; +} +.aside { + display: table-cell; + height: 100%; + width: 250px; + vertical-align: top; +} +.aside.aside_flux { + background: #fff; +} + +/*=== Aside main page (categories) */ +.categories { + list-style: none; + margin: 0; +} +.category { + display: block; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} +.category .btn:not([data-unread="0"]):after { + content: attr(data-unread); +} + +/*=== Aside main page (feeds) */ +.categories .feeds { + width: 100%; + list-style: none; +} +.categories .feeds:not(.active) { + display: none; +} +.categories .feeds .feed { + display: inline-block; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + vertical-align: middle; +} +.categories .feeds .feed:not([data-unread="0"]):before { + content: "(" attr(data-unread) ") "; +} +.categories .feeds .dropdown-menu { + left: 0; +} +.categories .feeds .item .dropdown-toggle > .icon { + visibility: hidden; + cursor: pointer; + vertical-align: top; +} +.categories .feeds .item .dropdown-target:target ~ .dropdown-toggle > .icon, +.categories .feeds .item:hover .dropdown-toggle > .icon, +.categories .feeds .item.active .dropdown-toggle > .icon { + visibility: visible; +} + +/*=== New article notification */ +#new-article { + display: none; +} +#new-article > a { + display: block; +} + +/*=== Day indication */ +.day .name { + position: absolute; + right: 0; + width: 50%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} + +/*=== Feed article header and footer */ +.flux_header { + position: relative; +} +.flux .item { + line-height: 40px; + white-space: nowrap; +} +.flux .item.manage, +.flux .item.link { + width: 40px; + text-align: center; +} +.flux .item.website { + width: 200px; +} +.flux.not_read .item.title, +.flux.current .item.title { + font-weight: bold; +} +.flux:not(.current):hover .item.title { + position: absolute; + max-width: calc(100% - 320px); + background: #fff; +} +.flux .item.title a { + color: #000; + text-decoration: none; +} +.flux .item.date { + width: 145px; + text-align: right; +} +.flux .item > a { + display: block; +} +.flux .item > a { + display: block; + text-decoration: none; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.flux .item.share > a { + display: list-item; + list-style-position: inside; + list-style-type: decimal; +} + +/*=== Feed article content */ +.hide_posts > .flux:not(.active) > .flux_content { + display: none; +} +.content { + min-height: 20em; + margin: auto; + line-height: 1.7em; + word-wrap: break-word; +} +.content.large { + max-width: 1000px; +} +.content.medium { + max-width: 800px; +} +.content.thin { + max-width: 550px; +} +.content ul, +.content ol, +.content dd { + margin: 0 0 0 15px; + padding: 0 0 5px 15px; +} +.content pre { + overflow: auto; +} + +/*=== Notification and actualize notification */ +.notification { + position: absolute; + top: 1em; + left: 25%; right: 25%; + z-index: 10; + background: #fff; + border: 1px solid #aaa; +} +.notification.closed { + display: none; +} +.notification a.close { + position: absolute; + top: 0; bottom: 0; + right: 0; + display: inline-block; +} + +#actualizeProgress { + position: fixed; +} +#actualizeProgress progress { + max-width: 100%; + vertical-align: middle; +} +#actualizeProgress .progress { + vertical-align: middle; +} + +/*=== Navigation menu (for articles) */ +#nav_entries { + position: fixed; + bottom: 0; left: 0; + display: table; + width: 250px; + background: #fff; + table-layout: fixed; +} +#nav_entries .item { + display: table-cell; + width: 30%; +} +#nav_entries a { + display: block; +} + +/*=== "Load more" part */ +#load_more { + min-height: 40px; +} +.loading { + background: url("loader.gif") center center no-repeat; + font-size: 0; +} +#bigMarkAsRead { + display: block; + padding: 3em 0; + text-align: center; +} +.bigTick { + font-size: 7em; + line-height: 1.6em; +} + +/*=== Statistiques */ +.stat > table { + width: 100%; +} + +/*=== GLOBAL VIEW */ +/*================*/ +/*=== Category boxes */ +#stream.global .box-category { + display: inline-block; + width: 19em; + max-width: 95%; + margin: 20px 10px; + border: 1px solid #ccc; + vertical-align: top; +} +#stream.global .category { + width: 100%; +} +#stream.global .btn { + display: block; +} +#stream.global .box-category .feeds { + display: block; + overflow: auto; +} +#stream.global .box-category .feed { + width: 19em; + max-width: 90%; +} + +/*=== Panel */ +#overlay { + display: none; + position: fixed; + top: 0; bottom: 0; + left: 0; right: 0; + background: rgba(0, 0, 0, 0.9); +} +#panel { + display: none; + position: fixed; + top: 1em; bottom: 1em; + left: 2em; right: 2em; + overflow: auto; + background: #fff; +} +#panel .close { + position: fixed; + top: 0; bottom: 0; + left: 0; right: 0; + display: block; +} +#panel .close img { + display: none; +} + +/*=== DIVERS */ +/*===========*/ +.nav-login, +.nav_menu .search, +.nav_menu .toggle_aside { + display: none; +} + +.aside .toggle_aside { + position: absolute; + right: 0; + display: none; + width: 30px; + height: 30px; + line-height: 30px; + text-align: center; +} + +/*=== MOBILE */ +/*===========*/ +@media(max-width: 840px) { + .header, + .aside .btn-important, + .aside .feeds .dropdown, + .flux_header .item.website span, + .item.date, .day .date { + display: none; + } + .nav-login { + display: block; + } + .nav_menu .toggle_aside, + .aside .toggle_aside, + .nav_menu .search, + #panel .close img { + display: inline-block; + } + + .aside { + position: fixed; + top: 0; bottom: 0; + left: 0; + width: 0; + overflow: hidden; + z-index: 100; + } + .aside:target { + width: 90%; + overflow: auto; + } + .aside .categories { + margin: 10px 0 75px; + } + + .flux_header .item.website { + width: 40px; + } + + .flux:not(.current):hover .item.title { + position: relative; + width: auto; + white-space: nowrap; + } + + .notification { + top: 0; + left: 0; + right: 0; + } + + #nav_entries { + width: 100%; + } + + #stream.global .box-category { + margin: 10px 0; + } + + #panel { + top: 0; bottom: 0; + left: 0; right: 0; + } + #panel .close { + top: 0; right: 0; + left: auto; bottom: auto; + display: inline-block; + width: 30px; + height: 30px; + } +} + +/*=== PRINTER */ +/*============*/ +@media print { + .header, .aside, + .nav_menu, .day, + .flux_header, + .flux_content .bottom, + .pagination, + #nav_entries { + display: none; + } + html, body { + background: #fff; + color: #000; + font-family: Serif; + } + #global, + .flux_content { + display: block !important; + } + .flux_content .content { + width: 100% !important; + } + .flux_content .content a { + color: #000; + } + .flux_content .content a:after { + content: " [" attr(href) "] "; + font-style: italic; + } +} diff --git a/p/themes/Origine2/loader.gif b/p/themes/Origine2/loader.gif deleted file mode 100644 index 5ff26f0e3..000000000 Binary files a/p/themes/Origine2/loader.gif and /dev/null differ diff --git a/p/themes/Origine2/metadata.json b/p/themes/Origine2/metadata.json deleted file mode 100644 index a6e17fb9f..000000000 --- a/p/themes/Origine2/metadata.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "name": "Origine2", - "author": "Marien Fressinaud", - "description": "Le thème par défaut pour FreshRSS", - "version": 0.1, - "files": ["template.css", "origine.css"] -} diff --git a/p/themes/Origine2/origine.css b/p/themes/Origine2/origine.css deleted file mode 100644 index 3a32d54d3..000000000 --- a/p/themes/Origine2/origine.css +++ /dev/null @@ -1,1006 +0,0 @@ -@charset "UTF-8"; - -/*=== FONTS */ -@font-face { - font-family: "OpenSans"; - src: url("../fonts/openSans.woff") format("woff"); -} - -/*=== GENERAL */ -/*============*/ -html, body { - height: 100%; - font-family: "OpenSans", "Cantarell", "Helvetica", "Arial", sans-serif; -} - -/*=== Links */ -a { - color: #0062be; -} - -/*=== Forms */ -legend { - margin: 20px 0 5px; - padding: 5px 0; - border-bottom: 1px solid #ddd; - font-size: 1.4em; -} -label { - min-height: 25px; - padding: 5px 0; - cursor: pointer; -} -textarea { - width: 360px; - height: 100px; -} -input, select, textarea { - min-height: 25px; - padding: 5px; - background: #fdfdfd; - border: 1px solid #bbb; - border-radius: 3px; - color: #666; - line-height: 25px; - vertical-align: middle; - box-shadow: 0 2px 2px #eee inset; -} -option { - padding: 0 .5em; -} -input:focus, select:focus, textarea:focus { - color: #0062be; - border-color: #33bbff; - box-shadow: 0 2px 2px #ddddff inset; -} -input:invalid, select:invalid { - border-color: #f00; - box-shadow: 0 0 2px 2px #fdd inset; -} -input:disabled, select:disabled { - background: #eee; -} -input.extend { - transition: width 200ms linear; - -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; - -o-transition: width 200ms linear; - -ms-transition: width 200ms linear; -} - -/*=== Tables */ -table { - border-collapse: collapse; -} - -tr, th, td { - padding: 0.5em; - border: 1px solid #ddd; -} -th { - background: #f6f6f6; -} -form td, -form th { - font-weight: normal; - text-align: center; -} - -/*=== COMPONENTS */ -/*===============*/ -/*=== Forms */ -.form-group.form-actions { - padding: 5px 0; - background: #f4f4f4; - border-top: 1px solid #ddd; -} -.form-group.form-actions .btn { - margin: 0 10px; -} -.form-group .group-name { - padding: 10px 0; - text-align: right; -} -.form-group .group-controls { - min-height: 25px; - padding: 5px 0; -} -.form-group table { - margin: 10px 0 0 220px; -} - -/*=== Buttons */ -.stick { - vertical-align: middle; - font-size: 0; -} -.stick input, -.stick .btn { - border-radius: 0; -} -.stick .btn:first-child, -.stick input:first-child { - border-radius: 3px 0 0 3px; -} -.stick .btn-important:first-child { - border-right: 1px solid #06f; -} -.stick .btn:last-child, -.stick input:last-child { - border-radius: 0 3px 3px 0; -} -.stick .btn + .btn, -.stick .btn + input, -.stick .btn + .dropdown > .btn, -.stick input + .btn, -.stick input + input, -.stick input + .dropdown > .btn, -.stick .dropdown + .btn, -.stick .dropdown + input, -.stick .dropdown + .dropdown > .btn { - border-left: none; -} -.stick input + .btn { - border-top: 1px solid #bbb; -} -.stick .btn + .dropdown > .btn { - border-left: none; - border-radius: 0 3px 3px 0; -} - -.btn { - display: inline-block; - min-height: 37px; - min-width: 15px; - margin: 0; - padding: 5px 10px; - background: #fff; - background: linear-gradient(to bottom, #fff 0%, #eee 100%); - background: -moz-linear-gradient(top, #fff 0%, #eee 100%); - background: -webkit-linear-gradient(top, #fff 0%, #eee 100%); - background: -o-linear-gradient(top, #fff 0%, #eee 100%); - background: -ms-linear-gradient(top, #fff 0%, #eee 100%); - border-radius: 3px; - border: 1px solid #ddd; - border-bottom: 1px solid #aaa; - border-right: 1px solid #aaa; - color: #666; - text-shadow: 0px -1px 0 #ddd; - font-size: 0.9rem; - vertical-align: middle; - cursor: pointer; - overflow: hidden; -} -a.btn { - min-height: 25px; - line-height: 25px; -} -.btn:hover { - background: #f0f0f0; - background: linear-gradient(to bottom, #f8f8f8, #f0f0f0); - background: -moz-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - background: -webkit-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - background: -o-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - background: -ms-linear-gradient(top, #f8f8f8 0%, #f0f0f0 100%); - text-decoration: none; -} -.btn.active, -.btn:active, -.dropdown-target:target ~ .btn.dropdown-toggle { - box-shadow: 0px 2px 4px #e0e0e0 inset, 0px 1px 2px #fafafa; - background: #eee; -} - -.btn-important { - background: #0084CC; - background: linear-gradient(to bottom, #0084CC, #0045CC); - background: -moz-linear-gradient(top, #0084CC 0%, #0045CC 100%); - background: -webkit-linear-gradient(top, #0084CC 0%, #0045CC 100%); - background: -o-linear-gradient(top, #0084CC 0%, #0045CC 100%); - background: -ms-linear-gradient(top, #0084CC 0%, #0045CC 100%); - color: #fff; - border: 1px solid #0062B7; - text-shadow: 0px -1px 0 #aaa; - font-weight: normal; -} -.btn-important:hover { - background: linear-gradient(to bottom, #0066CC, #0045CC); - background: -moz-linear-gradient(top, #0066CC 0%, #0045CC 100%); - background: -webkit-linear-gradient(top, #0066CC 0%, #0045CC 100%); - background: -o-linear-gradient(top, #0066CC 0%, #0045CC 100%); - background: -ms-linear-gradient(top, #0066CC 0%, #0045CC 100%); -} -.btn-important:active { - background: #0044CB; - box-shadow: none; -} - -.btn-attention { - background: #E95B57; - background: linear-gradient(to bottom, #E95B57, #BD362F); - background: -moz-linear-gradient(top, #E95B57 0%, #BD362F 100%); - background: -webkit-linear-gradient(top, #E95B57 0%, #BD362F 100%); - background: -o-linear-gradient(top, #E95B57 0%, #BD362F 100%); - background: -ms-linear-gradient(top, #E95B57 0%, #BD362F 100%); - color: #fff; - border: 1px solid #C44742; - text-shadow: 0px -1px 0px #666; -} -.btn-attention:hover { - background: linear-gradient(to bottom, #D14641, #BD362F); - background: -moz-linear-gradient(top, #D14641 0%, #BD362F 100%); - background: -webkit-linear-gradient(top, #D14641 0%, #BD362F 100%); - background: -o-linear-gradient(top, #D14641 0%, #BD362F 100%); - background: -ms-linear-gradient(top, #D14641 0%, #BD362F 100%); -} -.btn-attention:active { - background: #BD362F; - box-shadow: none; -} - -/*=== Navigation */ -.nav-list .nav-header, -.nav-list .item { - height: 2.5em; - line-height: 2.5em; - font-size: 0.9rem; -} -.nav-list .item:hover { - background: #fafafa; -} -.nav-list .item:hover a { - color: #003388; -} -.nav-list .item.active { - background: #0062BE; - color: #fff; -} -.nav-list .item.active a { - color: #fff; -} -.nav-list .disable { - color: #aaa; - background: #fafafa; - text-align: center; -} -.nav-list .item > a { - padding: 0 10px; -} -.nav-list a:hover { - text-decoration: none; -} -.nav-list .item.empty a { - color: #f39c12; -} -.nav-list .item.active.empty a { - color: #fff; - background: #f39c12; -} -.nav-list .item.error a { - color: #BD362F; -} -.nav-list .item.active.error a { - color: #fff; - background: #BD362F; -} - -.nav-list .nav-header { - padding: 0 10px; - color: #888; - background: #f4f4f4; - border-bottom: 1px solid #ddd; - font-weight: bold; - text-shadow: 0 0 1px #ddd; -} - -.nav-list .nav-form { - padding: 3px; - text-align: center; -} - -.nav-head { - margin: 0; - background: #fff; - background: linear-gradient(to bottom, #fff, #f0f0f0); - background: -moz-linear-gradient(top, #fff 0%, #f0f0f0 100%); - background: -webkit-linear-gradient(top, #fff 0%, #f0f0f0 100%); - background: -o-linear-gradient(top, #fff 0%, #f0f0f0 100%); - background: -ms-linear-gradient(top, #fff 0%, #f0f0f0 100%); - border-bottom: 1px solid #ddd; - text-align: right; -} -.nav-head .item { - padding: 5px 10px; - font-size: 0.9rem; - line-height: 1.5rem; -} - -/*=== Horizontal-list */ -.horizontal-list { - margin: 0; - padding: 0; -} -.horizontal-list .item { - vertical-align: middle; -} - -/*=== Dropdown */ -.dropdown-menu { - margin: 5px 0 0; - padding: 5px 0; - border: 1px solid #ddd; - border-radius: 5px; - box-shadow: 3px 3px 3px #ddd; - font-size: 0.8rem; - text-align: left; -} -.dropdown-menu:after { - content: ""; - position: absolute; - top: -6px; - right: 13px; - width: 10px; - height: 10px; - background: #fff; - border-top: 1px solid #ddd; - border-left: 1px solid #ddd; - z-index: -10; - transform: rotate(45deg); - -moz-transform: rotate(45deg); - -webkit-transform: rotate(45deg); - -ms-transform: rotate(45deg); -} -.dropdown-header { - padding: 0 5px 5px; - color: #888; - font-weight: bold; - text-align: left; -} -.dropdown-menu > .item { -} -.dropdown-menu > .item > a { - padding: 0 25px; - line-height: 2.5em; -} -.dropdown-menu > .item:hover { - background: #0062BE; - color: #fff; -} -.dropdown-menu > .item[aria-checked="true"] > a:before { - font-weight: bold; - margin: 0 0 0 -14px; -} -.dropdown-menu > .item:hover > a { - color: #fff; - text-decoration: none; -} -.dropdown-menu .input select, -.dropdown-menu .input input { - margin: 0 auto 5px; - padding: 2px 5px; - border-radius: 3px; -} - -.separator { - margin: 5px 0; - border-bottom: 1px solid #ddd; -} - -/*=== Alerts */ -.alert { - margin: 15px auto; - padding: 10px 15px; - background: #f4f4f4; - border: 1px solid #ccc; - border-right: 1px solid #aaa; - border-bottom: 1px solid #aaa; - border-radius: 5px; - color: #aaa; - text-shadow: 0 0 1px #eee; - font-size: 0.9em; -} -.alert-head { - font-size: 1.2em; -} -.alert > a { - color: inherit; - text-decoration: underline; -} -.alert-warn { - background: #ffe; - border: 1px solid #eeb; - color: #c95; -} -.alert-success { - background: #dfd; - border: 1px solid #cec; - color: #484; -} -.alert-error { - background: #fdd; - border: 1px solid #ecc; - color: #844; -} - -/*=== Pagination */ -.pagination { - background: #fafafa; - text-align: center; - color: #333; - font-size: 0.8em; -} -.content .pagination { - margin: 0; - padding: 0; -} -.pagination .item.pager-current { - font-weight: bold; - font-size: 1.5em; -} -.pagination .item a { - display: block; - color: #333; - font-style: italic; - line-height: 3em; - text-decoration: none; -} -.pagination .item a:hover { - background: #ddd; -} -.pagination:first-child .item { - border-bottom: 1px solid #aaa; -} -.pagination:last-child .item { - border-top: 1px solid #aaa; -} - -/*=== STRUCTURE */ -/*===============*/ -/*=== Header */ -.header { - background: #f4f4f4; -} -.header > .item { - padding: 10px 0; - border-bottom: 1px solid #aaa; - vertical-align: middle; - text-align: center; -} -.header > .item.title h1 { - text-shadow: 1px -1px 0 #ccc; -} -.header > .item.title h1 a { - text-decoration: none; -} -.header > .item.search input { - width: 230px; -} -.header .item.search input:focus { - width: 350px; -} - -/*=== Body */ -#global { - background: #fafafa; -} -.aside { - border-right: 1px solid #aaa; - background: #fff; -} -.aside.aside_flux { - padding: 10px 0 40px; -} - -/*=== Aside main page (categories) */ -.categories { - text-align: center; -} -.category { - width: 220px; - margin: 10px auto; - text-align: left; -} -.category .btn:first-child { - position: relative; - width: 197px; -} -.category.stick .btn:first-child { - width: 160px; -} -.category .btn:first-child:not([data-unread="0"]):after { - position: absolute; - top: 3px; right: 3px; - padding: 1px 5px; - background: #ccc; - color: #fff; - border: 1px solid #bbb; - border-radius: 5px; - box-shadow: 1px 3px 3px #aaa inset; - text-shadow: 0 0 1px #aaa; -} - -/*=== Aside main page (feeds) */ -.categories .feeds .item.active { - background: #0062BE; -} -.categories .feeds .item.active .feed { - color: #fff; -} -.categories .feeds .item.empty .feed { - color: #e67e22; -} -.categories .feeds .item.empty.active { - background: #e67e22; -} -.categories .feeds .item.empty.active .feed { - color: #fff; -} -.categories .feeds .item.error .feed { - color: #BD362F; -} -.categories .feeds .item .feed { - margin: 0; - width: 165px; - line-height: 3em; - font-size: 0.8em; - text-align: left; - text-decoration: none; -} -.categories .feeds .feed:not([data-unread="0"]) { - font-weight: bold; -} -.categories .feeds .dropdown-menu:after { - left: 2px; -} -.categories .feeds .item .dropdown-target:target ~ .dropdown-toggle > .icon, -.categories .feeds .item:hover .dropdown-toggle > .icon, -.categories .feeds .item.active .dropdown-toggle > .icon { - background-color: #fff; - border-radius: 3px; - vertical-align: middle; -} - -/*=== Configuration pages */ -.post { - padding: 10px 50px; - font-size: 0.9em; -} -.post form { - margin: 10px 0; -} -.post.content { - max-width: 550px; -} - -/*=== Prompt (centered) */ -.prompt { - text-align: center; -} -.prompt label { - text-align: left; -} -.prompt form { - margin: 10px auto 20px auto; - width: 180px; -} -.prompt input { - margin: 5px auto; - width: 100%; -} -.prompt p { - margin: 20px 0; -} - -/*=== New article notification */ -#new-article { - background: #0084CC; - text-align: center; - font-size: 0.9em; -} -#new-article:hover { - background: #0066CC; -} -#new-article > a { - line-height: 3em; - color: #fff; - font-weight: bold; -} -#new-article > a:hover { - text-decoration: none; -} - -/*=== Day indication */ -.day { - padding: 0 10px; - font-weight: bold; - line-height: 3em; - background: #fff; - border-top: 1px solid #aaa; - border-bottom: 1px solid #aaa; -} -#new-article + .day { - border-top: none; -} -.day .name { - padding: 0 10px 0 0; - color: #aab; - font-size: 1.8em; - opacity: 0.3; - text-shadow: 0px -1px 0px #666; - font-style: italic; - text-align: right; -} - -/*=== Index menu */ -.nav_menu { - background: #fafafa; - border-bottom: 1px solid #aaa; - text-align: center; - padding: 5px 0; -} - -/*=== Feed articles */ -.flux { - border-left: 2px solid #aaa; - background: #fafafa; -} -.flux:hover { - background: #fff; -} -.flux.current { - border-left: 2px solid #0062BE; -} -.flux.not_read { - border-left: 2px solid #FF5300; - background: #FFF3ED; -} -.flux.not_read:not(.current):hover .item.title { - background: #FFF3ED; -} -.flux.favorite { - border-left: 2px solid #FFC300; - background: #FFF6DA; -} -.flux.favorite:not(.current):hover .item.title { - background: #FFF6DA; -} -.flux.current { - background: #fff; -} - - -.flux_header { - border-top: 1px solid #ddd; - font-size: 0.8rem; - cursor: pointer; -} -.flux .website .favicon { - padding: 5px; -} -.flux .date { - color: #666; - font-size: 0.7rem; -} -.flux:not(.current):hover .item.title { - top: 1px; -} - -.flux .bottom { - font-size: 0.8rem; - text-align: center; -} - -/*=== Content of feed articles */ -.content { - padding: 20px 10px; -} -.content > h1.title > a { - color: #000; -} - -.content hr { - margin: 30px 10px; - height: 1px; - background: #ddd; - border: 0; - box-shadow: 0 2px 5px #ccc; -} - -.content pre { - margin: 10px auto; - padding: 10px 20px; - overflow: auto; - background: #222; - color: #fff; - font-size: 0.9rem; - border-radius: 3px; -} -.content code { - padding: 2px 5px; - color: #dd1144; - background: #fafafa; - border: 1px solid #eee; - border-radius: 3px; -} -.content pre code { - background: transparent; - color: #fff; - border: none; -} - -.content blockquote { - display: block; - padding: 5px 20px; - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - background: #fafafa; - color: #333; -} -.content blockquote p { - margin: 0; -} - -/*=== Notification and actualize notification */ -.notification { - padding: 0 0 0 5px; - text-align: center; - border: 1px solid #eeb; - border-radius: 3px; - box-shadow: 0 0 5px #ddd; - font-weight: bold; - font-size: 0.9em; - line-height: 3em; - z-index: 10; - vertical-align: middle; -} -.notification.good { - background: #ffe; - border: 1px solid #eeb; - color: #c95; -} -.notification.bad { - background: #fdd; - border: 1px solid #ecc; - color: #844; -} -.notification a.close { - padding: 0 15px; - line-height: 3em; -} -.notification.good a.close:hover { - background: #eeb; -} -.notification.bad a.close:hover { - background: #ecc; -} - -.notification#actualizeProgress { - line-height: 2em; -} - -/*=== "Load more" part */ -#bigMarkAsRead { - text-align: center; - text-decoration: none; - text-shadow: 0 -1px 0 #aaa; - color: #666; - background: #fafafa; -} -#bigMarkAsRead:hover { - color: #000; - background: #ccc; - background: radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); - background: -moz-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); - background: -webkit-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); - background: -o-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); - background: -ms-radial-gradient(circle at 50% -25% , #ccc 0%, #fafafa 50%); -} -#bigMarkAsRead:hover .bigTick { - text-shadow: 0 0 10px #666; -} - -/*=== Navigation menu (for articles) */ -#nav_entries { - margin: 0; - background: #fff; - border-top: 1px solid #ddd; - text-align: center; - line-height: 3em; - table-layout: fixed; -} - -/*=== READER VIEW */ -/*================*/ -#stream.reader .flux { - padding: 0 0 50px; - border: none; - background: #f0f0f0; - color: #333; -} -#stream.reader .flux .author { - margin: 0 0 10px; - font-size: 90%; - color: #666; -} - -/*=== GLOBAL VIEW */ -/*================*/ -#stream.global .box-category { - background: #fff; - border-radius: 5px; - text-align: left; - box-shadow: 0 0 3px #bbb; -} -#stream.global .category { - margin: 0; -} -#stream.global .btn { - width: auto; - height: 2em; - margin: 0; - padding: 0 10px; - background: #f6f6f6; - border: none; - border-bottom: 1px solid #ddd; - border-radius: 5px 5px 0 0; - line-height: 2em; - font-size: 1.2rem; -} -#stream.global .btn:not([data-unread="0"]) { - background: #0084CC; - color: #fff; - font-weight: bold; - text-shadow: none; -} -#stream.global .btn:first-child:not([data-unread="0"]):after { - top: 0; right: 5px; - border: 0; - background: none; - color: #fff; - font-weight: bold; - box-shadow: none; - text-shadow: none; -} -#stream.global .box-category .feeds { - max-height: 250px; -} -#stream.global .box-category .feeds .item { - padding: 2px 10px; - font-size: 0.9rem; -} - -/*=== DIVERS */ -/*===========*/ -.aside.aside_feed .nav-form input, -.aside.aside_feed .nav-form select { - width: 140px; -} -.aside.aside_feed .nav-form .dropdown .dropdown-menu { - right: -20px; -} -.aside.aside_feed .nav-form .dropdown .dropdown-menu:after { - right: 33px; -} - -/*=== STATISTICS */ -/*===============*/ -.stat { - margin: 10px 0 20px; -} - -.stat th, -.stat td, -.stat tr { - border: none; -} -.stat > table td, -.stat > table th { - border-bottom: 1px solid #ddd; - text-align: center; -} - -/*=== LOGS */ -/*=========*/ -.logs { - border: 1px solid #aaa; - border-radius: 5px; - overflow: hidden; -} -.log { - padding: 5px 10px; - background: #fafafa; - color: #333; - font-size: 90%; -} -.log+.log { - border-top: 1px solid #aaa; -} -.log .date { - display: block; - font-weight: bold; -} -.log.error { - background: #fdd; - color: #844; -} -.log.warning { - background: #ffe; - color: #c95; -} -.log.notice { - background: #f4f4f4; - color: #aaa; -} -.log.debug { - background: #333; - color: #eee; -} - -/*=== MOBILE */ -/*===========*/ -@media(max-width: 840px) { - .aside { - box-shadow: 3px 0 3px #aaa; - transition: width 200ms linear; - -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; - -o-transition: width 200ms linear; - -ms-transition: width 200ms linear; - } - .aside .toggle_aside, - #panel .close { - position: absolute; - display: block; - top: 0; right: 0; - width: 30px; - height: 30px; - line-height: 30px; - text-align: center; - background: #f6f6f6; - border-left: 1px solid #ddd; - border-bottom: 1px solid #ddd; - border-radius: 0 0 0 5px; - } - - .nav_menu .btn { - margin: 5px 10px; - } - .nav_menu .stick { - margin: 0 10px; - } - .nav_menu .stick .btn { - margin: 5px 0; - } - .nav_menu .search { - display: inline-block; - max-width: 97%; - } - .nav_menu .search input { - max-width: 97%; - width: 90px; - } - .nav_menu .search input:focus { - width: 400px; - } - - .day .name { - font-size: 1.1rem; - text-shadow: none; - } - - .flux_header .item.website .favicon { - padding: 12px; - } - - .notification a.close { - display: block; - left: 0; - background: transparent; - } - .notification a.close:hover { - opacity: 0.5; - } - .notification a.close .icon { - display: none; - } -} diff --git a/p/themes/Origine2/template.css b/p/themes/Origine2/template.css deleted file mode 100644 index 8b14633b2..000000000 --- a/p/themes/Origine2/template.css +++ /dev/null @@ -1,683 +0,0 @@ -@charset "UTF-8"; - -/*=== GENERAL */ -/*============*/ -html, body { - margin: 0; - padding: 0; - font-size: 100%; -} - -/*=== Links */ -a { - text-decoration: none; -} -a:hover { - text-decoration: underline; -} - -/*=== Lists */ -ul, ol, dd { - margin: 0; - padding: 0; -} - -/*=== Titles */ -h1 { - margin: 0.6em 0 0.3em; - font-size: 1.8em; -} -h2 { - margin: 0.5em 0 0.25em; - font-size: 1.6em; -} -h3 { - margin: 0.5em 0 0.25em; - font-size: 1.4em; -} - -/*=== Paragraphs */ -p { - margin: 1em 0 0.5em; - font-size: 1em; -} - -/*=== Images */ -img { - height: auto; - max-width: 100%; -} -img.favicon { - height: 16px; - width: 16px; - vertical-align: middle; -} - -/*=== Videos */ -iframe, embed, object, video { - max-width: 100%; -} - -/*=== Forms */ -legend { - display: block; - width: 100%; - clear: both; -} -label { - display: block; -} -input { - width: 180px; -} -textarea { - width: 300px; -} -input, select, textarea { - display: inline-block; - max-width: 100%; -} -input[type="radio"], -input[type="checkbox"] { - width: 15px !important; - min-height: 15px !important; -} -input.extend:focus { - width: 300px; -} - -/*=== COMPONENTS */ -/*===============*/ -/*=== Forms */ -.form-group:after { - content: ""; - display: block; - clear: both; -} -.form-group.form-actions { - min-width: 250px; -} -.form-group .group-name { - display: block; - float: left; - width: 200px; -} -.form-group .group-controls { - min-width: 250px; - margin: 0 0 0 220px; -} -.form-group .group-controls .control { - display: block; -} - -/*=== Buttons */ -.stick { - display: inline-block; - white-space: nowrap; -} -.btn, -a.btn { - display: inline-block; - cursor: pointer; - overflow: hidden; -} -.btn-important { - font-weight: bold; -} - -/*=== Navigation */ -.nav-list .nav-header, -.nav-list .item { - display: block; -} -.nav-list .item, -.nav-list .item > a { - display: block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.nav-head { - display: block; -} -.nav-head .item { - display: inline-block; -} - -/*=== Horizontal-list */ -.horizontal-list { - display: table; - table-layout: fixed; - width: 100%; -} -.horizontal-list .item { - display: table-cell; -} - -/*=== Dropdown */ -.dropdown { - position: relative; - display: inline-block; -} -.dropdown-target { - display: none; -} -.dropdown-menu { - display: none; - min-width: 200px; - margin: 0; - position: absolute; - right: 0; - background: #fff; - border: 1px solid #aaa; -} -.dropdown-header { - display: block; -} -.dropdown-menu > .item { - display: block; -} -.dropdown-menu > .item > a { - display: block; -} -.dropdown-menu > .item[aria-checked="true"] > a:before { - content: '✓'; -} -.dropdown-menu .input { - display: block; -} -.dropdown-menu .input select, -.dropdown-menu .input input { - display: block; - max-width: 95%; -} -.dropdown-target:target ~ .dropdown-menu { - display: block; - z-index: 10; -} -.dropdown-close { - display: inline; -} -.dropdown-close a { - font-size: 0; - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - display: block; - z-index: -10; -} -.separator { - display: block; - height: 0; - border-bottom: 1px solid #aaa; -} - -/*=== Alerts */ -.alert { - display: block; - width: 90%; -} -.alert-head { - margin: 0; - font-weight: bold; -} - -/*=== Icons */ -.icon { - display: inline-block; - width: 16px; - height: 16px; - vertical-align: middle; - line-height: 16px; -} - -/*=== Pagination */ -.pagination { - display: table; - width: 100%; - margin: 0; - padding: 0; - table-layout: fixed; -} -.pagination .item { - display: table-cell; -} -.pagination .pager-first, -.pagination .pager-previous, -.pagination .pager-next, -.pagination .pager-last { - width: 100px; -} - -/*=== STRUCTURE */ -/*===============*/ -/*=== Header */ -.header { - display: table; - width: 100%; - table-layout: fixed; -} -.header > .item { - display: table-cell; -} -.header > .item.title { - width: 250px; - white-space: nowrap; -} -.header > .item.title h1 { - display: inline-block; -} -.header > .item.title .logo { - display: inline-block; - height: 32px; - width: 32px; - vertical-align: middle; -} -.header > .item.configure { - width: 100px; -} - -/*=== Body */ -#global { - display: table; - width: 100%; - height: 100%; - table-layout: fixed; -} -.aside { - display: table-cell; - height: 100%; - width: 250px; - vertical-align: top; -} -.aside.aside_flux { - background: #fff; -} - -/*=== Aside main page (categories) */ -.categories { - list-style: none; - margin: 0; -} -.category { - display: block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.category .btn:not([data-unread="0"]):after { - content: attr(data-unread); -} - -/*=== Aside main page (feeds) */ -.categories .feeds { - width: 100%; - list-style: none; -} -.categories .feeds:not(.active) { - display: none; -} -.categories .feeds .feed { - display: inline-block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} -.categories .feeds .feed:not([data-unread="0"]):before { - content: "(" attr(data-unread) ") "; -} -.categories .feeds .dropdown-menu { - left: 0; -} -.categories .feeds .item .dropdown-toggle > .icon { - visibility: hidden; - cursor: pointer; - vertical-align: top; -} -.categories .feeds .item .dropdown-target:target ~ .dropdown-toggle > .icon, -.categories .feeds .item:hover .dropdown-toggle > .icon, -.categories .feeds .item.active .dropdown-toggle > .icon { - visibility: visible; -} - -/*=== New article notification */ -#new-article { - display: none; -} -#new-article > a { - display: block; -} - -/*=== Day indication */ -.day .name { - position: absolute; - right: 0; - width: 50%; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} - -/*=== Feed article header and footer */ -.flux_header { - position: relative; -} -.flux .item { - line-height: 40px; - white-space: nowrap; -} -.flux .item.manage, -.flux .item.link { - width: 40px; - text-align: center; -} -.flux .item.website { - width: 200px; -} -.flux.not_read .item.title, -.flux.current .item.title { - font-weight: bold; -} -.flux:not(.current):hover .item.title { - position: absolute; - max-width: calc(100% - 320px); - background: #fff; -} -.flux .item.title a { - color: #000; - text-decoration: none; -} -.flux .item.date { - width: 145px; - text-align: right; -} -.flux .item > a { - display: block; -} -.flux .item > a { - display: block; - text-decoration: none; - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; -} -.flux .item.share > a { - display: list-item; - list-style-position: inside; - list-style-type: decimal; -} - -/*=== Feed article content */ -.hide_posts > .flux:not(.active) > .flux_content { - display: none; -} -.content { - min-height: 20em; - margin: auto; - line-height: 1.7em; - word-wrap: break-word; -} -.content.large { - max-width: 1000px; -} -.content.medium { - max-width: 800px; -} -.content.thin { - max-width: 550px; -} -.content ul, -.content ol, -.content dd { - margin: 0 0 0 15px; - padding: 0 0 5px 15px; -} -.content pre { - overflow: auto; -} - -/*=== Notification and actualize notification */ -.notification { - position: absolute; - top: 1em; - left: 25%; right: 25%; - z-index: 10; - background: #fff; - border: 1px solid #aaa; -} -.notification.closed { - display: none; -} -.notification a.close { - position: absolute; - top: 0; bottom: 0; - right: 0; - display: inline-block; -} - -#actualizeProgress { - position: fixed; -} -#actualizeProgress progress { - max-width: 100%; - vertical-align: middle; -} -#actualizeProgress .progress { - vertical-align: middle; -} - -/*=== Navigation menu (for articles) */ -#nav_entries { - position: fixed; - bottom: 0; left: 0; - display: table; - width: 250px; - background: #fff; - table-layout: fixed; -} -#nav_entries .item { - display: table-cell; - width: 30%; -} -#nav_entries a { - display: block; -} - -/*=== "Load more" part */ -#load_more { - min-height: 40px; -} -.loading { - background: url("loader.gif") center center no-repeat; - font-size: 0; -} -#bigMarkAsRead { - display: block; - padding: 3em 0; - text-align: center; -} -.bigTick { - font-size: 7em; - line-height: 1.6em; -} - -/*=== Statistiques */ -.stat > table { - width: 100%; -} - -/*=== GLOBAL VIEW */ -/*================*/ -/*=== Category boxes */ -#stream.global .box-category { - display: inline-block; - width: 19em; - max-width: 95%; - margin: 20px 10px; - border: 1px solid #ccc; - vertical-align: top; -} -#stream.global .category { - width: 100%; -} -#stream.global .btn { - display: block; -} -#stream.global .box-category .feeds { - display: block; - overflow: auto; -} -#stream.global .box-category .feed { - width: 19em; - max-width: 90%; -} - -/*=== Panel */ -#overlay { - display: none; - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - background: rgba(0, 0, 0, 0.9); -} -#panel { - display: none; - position: fixed; - top: 1em; bottom: 1em; - left: 2em; right: 2em; - overflow: auto; - background: #fff; -} -#panel .close { - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - display: block; -} -#panel .close img { - display: none; -} - -/*=== DIVERS */ -/*===========*/ -.nav-login, -.nav_menu .search, -.nav_menu .toggle_aside { - display: none; -} - -.aside .toggle_aside { - position: absolute; - right: 0; - display: none; - width: 30px; - height: 30px; - line-height: 30px; - text-align: center; -} - -/*=== MOBILE */ -/*===========*/ -@media(max-width: 840px) { - .header, - .aside .btn-important, - .aside .feeds .dropdown, - .flux_header .item.website span, - .item.date, .day .date { - display: none; - } - .nav-login { - display: block; - } - .nav_menu .toggle_aside, - .aside .toggle_aside, - .nav_menu .search, - #panel .close img { - display: inline-block; - } - - .aside { - position: fixed; - top: 0; bottom: 0; - left: 0; - width: 0; - overflow: hidden; - z-index: 100; - } - .aside:target { - width: 90%; - overflow: auto; - } - .aside .categories { - margin: 10px 0 75px; - } - - .flux_header .item.website { - width: 40px; - } - - .flux:not(.current):hover .item.title { - position: relative; - width: auto; - white-space: nowrap; - } - - .notification { - top: 0; - left: 0; - right: 0; - } - - #nav_entries { - width: 100%; - } - - #stream.global .box-category { - margin: 10px 0; - } - - #panel { - top: 0; bottom: 0; - left: 0; right: 0; - } - #panel .close { - top: 0; right: 0; - left: auto; bottom: auto; - display: inline-block; - width: 30px; - height: 30px; - } -} - -/*=== PRINTER */ -/*============*/ -@media print { - .header, .aside, - .nav_menu, .day, - .flux_header, - .flux_content .bottom, - .pagination, - #nav_entries { - display: none; - } - html, body { - background: #fff; - color: #000; - font-family: Serif; - } - #global, - .flux_content { - display: block !important; - } - .flux_content .content { - width: 100% !important; - } - .flux_content .content a { - color: #000; - } - .flux_content .content a:after { - content: " [" attr(href) "] "; - font-style: italic; - } -} diff --git a/p/themes/template/loader.gif b/p/themes/template/loader.gif deleted file mode 100644 index 5ff26f0e3..000000000 Binary files a/p/themes/template/loader.gif and /dev/null differ diff --git a/p/themes/template/metadata.json b/p/themes/template/metadata.json deleted file mode 100644 index d29c2b8e8..000000000 --- a/p/themes/template/metadata.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "name": "Template", - "author": "Marien Fressinaud", - "description": "A basic template for FreshRSS", - "version": 0.1, - "files": ["template.css"] -} diff --git a/p/themes/template/template.css b/p/themes/template/template.css deleted file mode 100644 index 8b14633b2..000000000 --- a/p/themes/template/template.css +++ /dev/null @@ -1,683 +0,0 @@ -@charset "UTF-8"; - -/*=== GENERAL */ -/*============*/ -html, body { - margin: 0; - padding: 0; - font-size: 100%; -} - -/*=== Links */ -a { - text-decoration: none; -} -a:hover { - text-decoration: underline; -} - -/*=== Lists */ -ul, ol, dd { - margin: 0; - padding: 0; -} - -/*=== Titles */ -h1 { - margin: 0.6em 0 0.3em; - font-size: 1.8em; -} -h2 { - margin: 0.5em 0 0.25em; - font-size: 1.6em; -} -h3 { - margin: 0.5em 0 0.25em; - font-size: 1.4em; -} - -/*=== Paragraphs */ -p { - margin: 1em 0 0.5em; - font-size: 1em; -} - -/*=== Images */ -img { - height: auto; - max-width: 100%; -} -img.favicon { - height: 16px; - width: 16px; - vertical-align: middle; -} - -/*=== Videos */ -iframe, embed, object, video { - max-width: 100%; -} - -/*=== Forms */ -legend { - display: block; - width: 100%; - clear: both; -} -label { - display: block; -} -input { - width: 180px; -} -textarea { - width: 300px; -} -input, select, textarea { - display: inline-block; - max-width: 100%; -} -input[type="radio"], -input[type="checkbox"] { - width: 15px !important; - min-height: 15px !important; -} -input.extend:focus { - width: 300px; -} - -/*=== COMPONENTS */ -/*===============*/ -/*=== Forms */ -.form-group:after { - content: ""; - display: block; - clear: both; -} -.form-group.form-actions { - min-width: 250px; -} -.form-group .group-name { - display: block; - float: left; - width: 200px; -} -.form-group .group-controls { - min-width: 250px; - margin: 0 0 0 220px; -} -.form-group .group-controls .control { - display: block; -} - -/*=== Buttons */ -.stick { - display: inline-block; - white-space: nowrap; -} -.btn, -a.btn { - display: inline-block; - cursor: pointer; - overflow: hidden; -} -.btn-important { - font-weight: bold; -} - -/*=== Navigation */ -.nav-list .nav-header, -.nav-list .item { - display: block; -} -.nav-list .item, -.nav-list .item > a { - display: block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.nav-head { - display: block; -} -.nav-head .item { - display: inline-block; -} - -/*=== Horizontal-list */ -.horizontal-list { - display: table; - table-layout: fixed; - width: 100%; -} -.horizontal-list .item { - display: table-cell; -} - -/*=== Dropdown */ -.dropdown { - position: relative; - display: inline-block; -} -.dropdown-target { - display: none; -} -.dropdown-menu { - display: none; - min-width: 200px; - margin: 0; - position: absolute; - right: 0; - background: #fff; - border: 1px solid #aaa; -} -.dropdown-header { - display: block; -} -.dropdown-menu > .item { - display: block; -} -.dropdown-menu > .item > a { - display: block; -} -.dropdown-menu > .item[aria-checked="true"] > a:before { - content: '✓'; -} -.dropdown-menu .input { - display: block; -} -.dropdown-menu .input select, -.dropdown-menu .input input { - display: block; - max-width: 95%; -} -.dropdown-target:target ~ .dropdown-menu { - display: block; - z-index: 10; -} -.dropdown-close { - display: inline; -} -.dropdown-close a { - font-size: 0; - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - display: block; - z-index: -10; -} -.separator { - display: block; - height: 0; - border-bottom: 1px solid #aaa; -} - -/*=== Alerts */ -.alert { - display: block; - width: 90%; -} -.alert-head { - margin: 0; - font-weight: bold; -} - -/*=== Icons */ -.icon { - display: inline-block; - width: 16px; - height: 16px; - vertical-align: middle; - line-height: 16px; -} - -/*=== Pagination */ -.pagination { - display: table; - width: 100%; - margin: 0; - padding: 0; - table-layout: fixed; -} -.pagination .item { - display: table-cell; -} -.pagination .pager-first, -.pagination .pager-previous, -.pagination .pager-next, -.pagination .pager-last { - width: 100px; -} - -/*=== STRUCTURE */ -/*===============*/ -/*=== Header */ -.header { - display: table; - width: 100%; - table-layout: fixed; -} -.header > .item { - display: table-cell; -} -.header > .item.title { - width: 250px; - white-space: nowrap; -} -.header > .item.title h1 { - display: inline-block; -} -.header > .item.title .logo { - display: inline-block; - height: 32px; - width: 32px; - vertical-align: middle; -} -.header > .item.configure { - width: 100px; -} - -/*=== Body */ -#global { - display: table; - width: 100%; - height: 100%; - table-layout: fixed; -} -.aside { - display: table-cell; - height: 100%; - width: 250px; - vertical-align: top; -} -.aside.aside_flux { - background: #fff; -} - -/*=== Aside main page (categories) */ -.categories { - list-style: none; - margin: 0; -} -.category { - display: block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.category .btn:not([data-unread="0"]):after { - content: attr(data-unread); -} - -/*=== Aside main page (feeds) */ -.categories .feeds { - width: 100%; - list-style: none; -} -.categories .feeds:not(.active) { - display: none; -} -.categories .feeds .feed { - display: inline-block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} -.categories .feeds .feed:not([data-unread="0"]):before { - content: "(" attr(data-unread) ") "; -} -.categories .feeds .dropdown-menu { - left: 0; -} -.categories .feeds .item .dropdown-toggle > .icon { - visibility: hidden; - cursor: pointer; - vertical-align: top; -} -.categories .feeds .item .dropdown-target:target ~ .dropdown-toggle > .icon, -.categories .feeds .item:hover .dropdown-toggle > .icon, -.categories .feeds .item.active .dropdown-toggle > .icon { - visibility: visible; -} - -/*=== New article notification */ -#new-article { - display: none; -} -#new-article > a { - display: block; -} - -/*=== Day indication */ -.day .name { - position: absolute; - right: 0; - width: 50%; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} - -/*=== Feed article header and footer */ -.flux_header { - position: relative; -} -.flux .item { - line-height: 40px; - white-space: nowrap; -} -.flux .item.manage, -.flux .item.link { - width: 40px; - text-align: center; -} -.flux .item.website { - width: 200px; -} -.flux.not_read .item.title, -.flux.current .item.title { - font-weight: bold; -} -.flux:not(.current):hover .item.title { - position: absolute; - max-width: calc(100% - 320px); - background: #fff; -} -.flux .item.title a { - color: #000; - text-decoration: none; -} -.flux .item.date { - width: 145px; - text-align: right; -} -.flux .item > a { - display: block; -} -.flux .item > a { - display: block; - text-decoration: none; - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; -} -.flux .item.share > a { - display: list-item; - list-style-position: inside; - list-style-type: decimal; -} - -/*=== Feed article content */ -.hide_posts > .flux:not(.active) > .flux_content { - display: none; -} -.content { - min-height: 20em; - margin: auto; - line-height: 1.7em; - word-wrap: break-word; -} -.content.large { - max-width: 1000px; -} -.content.medium { - max-width: 800px; -} -.content.thin { - max-width: 550px; -} -.content ul, -.content ol, -.content dd { - margin: 0 0 0 15px; - padding: 0 0 5px 15px; -} -.content pre { - overflow: auto; -} - -/*=== Notification and actualize notification */ -.notification { - position: absolute; - top: 1em; - left: 25%; right: 25%; - z-index: 10; - background: #fff; - border: 1px solid #aaa; -} -.notification.closed { - display: none; -} -.notification a.close { - position: absolute; - top: 0; bottom: 0; - right: 0; - display: inline-block; -} - -#actualizeProgress { - position: fixed; -} -#actualizeProgress progress { - max-width: 100%; - vertical-align: middle; -} -#actualizeProgress .progress { - vertical-align: middle; -} - -/*=== Navigation menu (for articles) */ -#nav_entries { - position: fixed; - bottom: 0; left: 0; - display: table; - width: 250px; - background: #fff; - table-layout: fixed; -} -#nav_entries .item { - display: table-cell; - width: 30%; -} -#nav_entries a { - display: block; -} - -/*=== "Load more" part */ -#load_more { - min-height: 40px; -} -.loading { - background: url("loader.gif") center center no-repeat; - font-size: 0; -} -#bigMarkAsRead { - display: block; - padding: 3em 0; - text-align: center; -} -.bigTick { - font-size: 7em; - line-height: 1.6em; -} - -/*=== Statistiques */ -.stat > table { - width: 100%; -} - -/*=== GLOBAL VIEW */ -/*================*/ -/*=== Category boxes */ -#stream.global .box-category { - display: inline-block; - width: 19em; - max-width: 95%; - margin: 20px 10px; - border: 1px solid #ccc; - vertical-align: top; -} -#stream.global .category { - width: 100%; -} -#stream.global .btn { - display: block; -} -#stream.global .box-category .feeds { - display: block; - overflow: auto; -} -#stream.global .box-category .feed { - width: 19em; - max-width: 90%; -} - -/*=== Panel */ -#overlay { - display: none; - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - background: rgba(0, 0, 0, 0.9); -} -#panel { - display: none; - position: fixed; - top: 1em; bottom: 1em; - left: 2em; right: 2em; - overflow: auto; - background: #fff; -} -#panel .close { - position: fixed; - top: 0; bottom: 0; - left: 0; right: 0; - display: block; -} -#panel .close img { - display: none; -} - -/*=== DIVERS */ -/*===========*/ -.nav-login, -.nav_menu .search, -.nav_menu .toggle_aside { - display: none; -} - -.aside .toggle_aside { - position: absolute; - right: 0; - display: none; - width: 30px; - height: 30px; - line-height: 30px; - text-align: center; -} - -/*=== MOBILE */ -/*===========*/ -@media(max-width: 840px) { - .header, - .aside .btn-important, - .aside .feeds .dropdown, - .flux_header .item.website span, - .item.date, .day .date { - display: none; - } - .nav-login { - display: block; - } - .nav_menu .toggle_aside, - .aside .toggle_aside, - .nav_menu .search, - #panel .close img { - display: inline-block; - } - - .aside { - position: fixed; - top: 0; bottom: 0; - left: 0; - width: 0; - overflow: hidden; - z-index: 100; - } - .aside:target { - width: 90%; - overflow: auto; - } - .aside .categories { - margin: 10px 0 75px; - } - - .flux_header .item.website { - width: 40px; - } - - .flux:not(.current):hover .item.title { - position: relative; - width: auto; - white-space: nowrap; - } - - .notification { - top: 0; - left: 0; - right: 0; - } - - #nav_entries { - width: 100%; - } - - #stream.global .box-category { - margin: 10px 0; - } - - #panel { - top: 0; bottom: 0; - left: 0; right: 0; - } - #panel .close { - top: 0; right: 0; - left: auto; bottom: auto; - display: inline-block; - width: 30px; - height: 30px; - } -} - -/*=== PRINTER */ -/*============*/ -@media print { - .header, .aside, - .nav_menu, .day, - .flux_header, - .flux_content .bottom, - .pagination, - #nav_entries { - display: none; - } - html, body { - background: #fff; - color: #000; - font-family: Serif; - } - #global, - .flux_content { - display: block !important; - } - .flux_content .content { - width: 100% !important; - } - .flux_content .content a { - color: #000; - } - .flux_content .content a:after { - content: " [" attr(href) "] "; - font-style: italic; - } -} -- cgit v1.2.3 From 497853022ab29be3f87a691e2bfd5ba3559709b0 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 12 Jun 2014 21:58:39 +0200 Subject: Fix some theme and UI problems - More stick buttons! - Fix line-height of titles + fix load more on mobile (Origine) - Fix content width and filter buttons (Dark and Flat) --- app/views/configure/users.phtml | 6 ++++-- app/views/feed/add.phtml | 12 ++++++------ p/themes/Dark/freshrss.css | 14 +++++++++----- p/themes/Flat/freshrss.css | 14 +++++++++----- p/themes/Origine/origine.css | 7 +++++++ p/themes/Origine/template.css | 3 +++ 6 files changed, 38 insertions(+), 18 deletions(-) (limited to 'p/themes/Origine') diff --git a/app/views/configure/users.phtml b/app/views/configure/users.phtml index c199ad53d..87aac6198 100644 --- a/app/views/configure/users.phtml +++ b/app/views/configure/users.phtml @@ -32,8 +32,10 @@
    - /> - +
    + /> + +
    diff --git a/app/views/feed/add.phtml b/app/views/feed/add.phtml index 56ac5f8dd..849dacac6 100644 --- a/app/views/feed/add.phtml +++ b/app/views/feed/add.phtml @@ -28,10 +28,8 @@
    - +
    @@ -39,9 +37,11 @@
    - - -   +
    + + +
    +
    diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 9e58855dc..aef9a7469 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -88,10 +88,6 @@ .nav_menu .search { display:none; } - .nav_menu .btn[aria-checked="true"]{ - border-color: #2f2f2f; - box-shadow: 0 0 10px 3px #2f2f2f inset; - } .favicon { height: 16px; @@ -387,12 +383,20 @@ .content { min-height: 150px; - max-width: 550px; margin: 0 auto; padding: 20px 10px; line-height: 170%; word-wrap: break-word; } + .content.large { + max-width: 1000px; + } + .content.medium { + max-width: 800px; + } + .content.thin { + max-width: 550px; + } .content h1, .content h2, .content h3 { margin: 20px 0 5px; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 061bd4a84..503eec813 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -87,10 +87,6 @@ body { .nav_menu .search { display:none; } - .nav_menu .btn[aria-checked="true"]{ - background-color: #2980B9; - border-bottom-color: #3498DB; - } .favicon { height: 16px; @@ -383,12 +379,20 @@ body { .content { min-height: 150px; - max-width: 550px; margin: 0 auto; padding: 20px 10px; line-height: 170%; word-wrap: break-word; } + .content.large { + max-width: 1000px; + } + .content.medium { + max-width: 800px; + } + .content.thin { + max-width: 550px; + } .content h1, .content h2, .content h3 { margin: 20px 0 5px; } diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css index 3a32d54d3..71534aff8 100644 --- a/p/themes/Origine/origine.css +++ b/p/themes/Origine/origine.css @@ -674,6 +674,9 @@ a.btn { font-size: 0.8rem; cursor: pointer; } +.flux .title { + font-size: 0.9rem; +} .flux .website .favicon { padding: 5px; } @@ -992,6 +995,10 @@ a.btn { padding: 12px; } + .pagination { + margin: 0 0 3.5em; + } + .notification a.close { display: block; left: 0; diff --git a/p/themes/Origine/template.css b/p/themes/Origine/template.css index 8b14633b2..5160b4591 100644 --- a/p/themes/Origine/template.css +++ b/p/themes/Origine/template.css @@ -26,14 +26,17 @@ ul, ol, dd { h1 { margin: 0.6em 0 0.3em; font-size: 1.8em; + line-height: 1.6em; } h2 { margin: 0.5em 0 0.25em; font-size: 1.6em; + line-height: 2em; } h3 { margin: 0.5em 0 0.25em; font-size: 1.4em; + line-height: 2em; } /*=== Paragraphs */ -- cgit v1.2.3 From 0270224c8a37b993c3a3b506111d8017616238cf Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 12 Jun 2014 22:16:02 +0200 Subject: Add a note avout branches in README + add loading gif in Origine theme --- README.md | 7 +++++++ p/themes/Origine/origine.css | 6 ++++++ 2 files changed, 13 insertions(+) (limited to 'p/themes/Origine') diff --git a/README.md b/README.md index 2003b6a9d..ce3c8ef32 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,13 @@ Il permet de gérer plusieurs utilisateurs, et dispose d’un mode de lecture an ![Logo de FreshRSS](http://marienfressinaud.fr/data/images/freshrss/freshrss_title.png) +# Note sur les branches +**Ce logiciel est encore en développement !** Veuillez vous assurer d'utiliser la branche qui vous correspond : + +* Utilisez [la branche master](https://github.com/marienfressinaud/FreshRSS/tree/master/) si vous visez la stabilité. +* [La branche beta](https://github.com/marienfressinaud/FreshRSS/tree/beta) est celle par défaut : les nouveautés y sont ajoutées environ tous les mois. +* Pour les développeurs et ceux qui savent ce qu'ils font, [la branche dev](https://github.com/marienfressinaud/FreshRSS/tree/dev) vous ouvre les bras ! + # Disclaimer Cette application a été développée pour s’adapter à des besoins personnels et non professionnels. Je ne garantis en aucun cas la sécurité de celle-ci, ni son bon fonctionnement. diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css index 71534aff8..f04171994 100644 --- a/p/themes/Origine/origine.css +++ b/p/themes/Origine/origine.css @@ -454,6 +454,12 @@ a.btn { border-top: 1px solid #aaa; } +.pagination .loading, +.pagination a:hover.loading { + background: url("loader.gif") center center no-repeat #fff; + font-size: 0; +} + /*=== STRUCTURE */ /*===============*/ /*=== Header */ -- cgit v1.2.3 From b8e4ed0d5d65f4f62d7ce781cd138695fe9a9793 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 12 Jun 2014 22:25:58 +0200 Subject: Fix Origine - Fix font-size of main content titles (h1.title) - Remove margin of blockquotes --- p/themes/Origine/origine.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'p/themes/Origine') diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css index f04171994..571ad057d 100644 --- a/p/themes/Origine/origine.css +++ b/p/themes/Origine/origine.css @@ -680,7 +680,7 @@ a.btn { font-size: 0.8rem; cursor: pointer; } -.flux .title { +.flux_header .title { font-size: 0.9rem; } .flux .website .favicon { @@ -739,6 +739,7 @@ a.btn { .content blockquote { display: block; + margin: 0; padding: 5px 20px; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; -- cgit v1.2.3 From 5707a163281bdb65f86bfc5da3184b3c8df0830d Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 12 Jun 2014 22:57:43 +0200 Subject: Fix alignment buttons (Origine) Fix https://github.com/marienfressinaud/FreshRSS/issues/506 --- p/themes/Origine/origine.css | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'p/themes/Origine') diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css index 571ad057d..1835e9ff9 100644 --- a/p/themes/Origine/origine.css +++ b/p/themes/Origine/origine.css @@ -502,16 +502,16 @@ a.btn { text-align: center; } .category { - width: 220px; + width: 235px; margin: 10px auto; text-align: left; } .category .btn:first-child { position: relative; - width: 197px; + width: 213px; } .category.stick .btn:first-child { - width: 160px; + width: 176px; } .category .btn:first-child:not([data-unread="0"]):after { position: absolute; -- cgit v1.2.3 From b2eda4a3499c4e342c89259ef0792124ce9037e2 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 12 Jun 2014 23:04:30 +0200 Subject: Fix font-size for titles (Origine) --- p/themes/Origine/template.css | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'p/themes/Origine') diff --git a/p/themes/Origine/template.css b/p/themes/Origine/template.css index 5160b4591..f68fdfca3 100644 --- a/p/themes/Origine/template.css +++ b/p/themes/Origine/template.css @@ -25,17 +25,17 @@ ul, ol, dd { /*=== Titles */ h1 { margin: 0.6em 0 0.3em; - font-size: 1.8em; + font-size: 1.5em; line-height: 1.6em; } h2 { margin: 0.5em 0 0.25em; - font-size: 1.6em; + font-size: 1.3em; line-height: 2em; } h3 { margin: 0.5em 0 0.25em; - font-size: 1.4em; + font-size: 1.1em; line-height: 2em; } -- cgit v1.2.3