From f720d41cbfb18edc1b0a694a7213682b96befa1f Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Mon, 13 Jan 2014 22:27:22 +0100 Subject: Mise à jour nom thèmes + chargement robuste des thèmes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Renomme : default -> Origine En cas de thème introuvable, charge le thème par défaut, sinon le premier disponible. https://github.com/marienfressinaud/FreshRSS/issues/120 --- p/themes/Flat/freshrss.css | 817 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 817 insertions(+) create mode 100644 p/themes/Flat/freshrss.css (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css new file mode 100644 index 000000000..dca1b3f28 --- /dev/null +++ b/p/themes/Flat/freshrss.css @@ -0,0 +1,817 @@ +@charset "UTF-8"; + +/* STRUCTURE */ +body { + background: #fafafa; +} + +.header { + display: table; + width: 100%; + table-layout: fixed; + background: #ecf0f1; +} + .header > .item { + display: table-cell; + padding: 10px 0; + 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; + } + .header > .item.search input { + width: 230px; + transition: width 200ms linear; + } + .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%; + table-layout: fixed; +} + .aside { + display: table-cell; + height: 100%; + width: 250px; + vertical-align: top; + background: #ecf0f1; + } + .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-menu { + right: -20px; + } + .aside.aside_feed .nav-form .dropdown-menu:after { + right: 33px; + } + + .nav-login { + display: none; + } + + .nav_menu { + width: 100%; + text-align: center; + padding: 5px 0; + } + .nav_menu .search { + display:none; + } + +.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: 5px; right: 5px; + padding: 0 5px; + color: #fff; + font-size: 90%; + background: #3498DB; + border-radius: 5px; + } + .category + .feeds:not(.active) { + display:none; + } + .categories .feeds { + width: 100%; + margin: 0 auto; + list-style: none; + } + .categories .feeds .item.active:after { + content: "⇢"; + line-height: 35px; + float: right; + } + .categories .feeds .item.empty .feed { + color: #e67e22; + } + .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: #95a5a6; + border-radius: 3px; + visibility: visible; + } + .categories .btn:hover .notRead, + .categories .btn.active .notRead { + background: #2980B9; + border-left: 3px solid #3498DB; + } + +.post { + padding: 10px 50px; +} + .post form { + margin: 10px 0; + } + +.day { + padding: 5px 15px; + font-size: 130%; + font-weight: bold; + line-height: 50px; + border-left: 3px solid #ecf0f1; +} + .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; + font-style: italic; + text-align: right; + white-space: nowrap; + text-overflow: ellipsis; + z-index: -10; + } + +.flux { + border-left: 3px solid #ecf0f1; +} + .flux:hover { + background: #fff; + } + .flux.not_read { + border-left-color: #FF5300; + background: #FFF3ED; + } + .flux.favorite { + border-left-color: #FFC300; + background: #FFF6DA; + } + .flux.current { + border-left-color: #3498db; + background: #fff; + } + + .flux_header { + background: inherit; + height: 25px; + font-size: 12px; + border-top: 1px solid #ecf0f1; + 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:hover .item.title { + border-right: 2px solid rgba(127, 127, 127, 0.1); + padding-right: 1em; + position: absolute; + } + .flux .item.title a { + color: #333; + outline: none; + } + .flux.current .item.title, + .flux.not_read .item.title { + font-weight: bold; + } + .flux .item.date { + width: 200px; + padding:0 5px 0 0; + text-align: right; + font-size: 10px; + color: #666; + } + .link { + width: 40px; + text-align: center; + } + +#stream.reader .flux { + position: relative; + padding: 0 0 30px; + border: none; + background: #ecf0f1; + color: #34495e; + font-size: 120%; +} + #stream.reader .flux .author { + margin: 0 0 10px; + font-size: 90%; + color: #aaa; + } + +#stream.global { + text-align: center; +} + #stream.global .box-category { + display: inline-block; + width: 280px; + margin: 20px 10px; + vertical-align: top; + border: 1px solid #ddd; + border-radius: 5px; + text-align: left; + } + #stream.global .category { + width: 100%; + margin: 0; + } + #stream.global .btn { + display: block; + width: auto; + height: 35px; + margin: 0; + padding: 0 10px; + background: #ecf0f1; + color: #333; + border-bottom: 1px solid #ddd; + border-radius: 5px 5px 0 0; + line-height: 35px; + font-size: 120%; + } + #stream.global .btn:not([data-unread="0"]) { + font-weight:bold; + } + #stream.global .btn:first-child:not([data-unread="0"]):after { + top: 0; right: 5px; + border: 0; + background: none; + color: #333; + font-weight: bold; + box-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: 0px; + display: inline-block; + width: 26px; + height: 26px; + margin: 0 10px 0 0; + border-radius: 3px; + text-align: center; + line-height: 24px; + background: #95a5a6; + } + #panel .close:hover { + background: #7f8c8d; + } + +#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: #ecf0f1; + text-align: center; + color: #000; + font-size: 80%; + line-height: 200%; + table-layout: fixed; + font-weight: bold; +} + .pagination .item { + display: table-cell; + line-height: 40px; + vertical-align: top; + } + .pagination .item.pager-current { + font-weight: bold; + font-size: 140%; + color: #ecf0f1; + background: #34495e; + } + .pagination .item.pager-first, + .pagination .item.pager-previous, + .pagination .item.pager-next, + .pagination .item.pager-last { + width: 100px; + } + .pagination .item a { + display: block; + color: #000; + font-weight: bold; + line-height: 40px; + } + .pagination .item a:hover { + color: #ecf0f1; + background: #34495e; + } + +#nav_entries { + display: table; + width: 250px; + height: 40px; + position: fixed; + bottom: 0; + left: 0; + margin: 0; + background: #34495e; + 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; + } + +.pagination .loading, +.pagination a:hover.loading { + background: url("loader.gif") center center no-repeat #34495e; + font-size: 0; +} + +#bigMarkAsRead { + background: #ecf0f1; + 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: #34495e; + 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: 3px; + background: #ddd; + color: #666; + font-weight: bold; + z-index: 10; +} + .notification.good { + background: #1abc9c; + color: #fff; + } + .notification.bad { + background: #e74c3c; + color: #fff; + } + .notification a.close { + display: inline-block; + width: 16px; + height: 16px; + float: right; + margin: -16px -16px 0 0; + padding: 5px; + border-radius: 3px; + line-height: 16px; + } + .notification.good a.close { + background: #1abc9c; + } + .notification.bad a.close { + background: #e74c3c; + } + +.toggle_aside, .btn.toggle_aside { + display: none; +} + +.actualizeProgress { + position: fixed; + top: 10px; + left: 25%; right: 25%; + padding: 5px; + background: #3498db; + color: #fff; + text-align: center; + border-radius: 3px; + font-weight: bold; +} + .actualizeProgress progress { + max-width: 100%; + width: 250px; + height: 15px; + vertical-align: middle; + background: #fff; + border: none; + } + .actualizeProgress .progress { + color: #ecf0f1; + } + +.logs { + border: 1px solid #34495e; +} + .log { + margin: 10px 0; + padding: 5px 2%; + overflow: auto; + background: #fafafa; + color: #666; + font-size: 90%; + } + .log>.date { + margin: 0 10px 0 0; + padding: 5px 10px; + border-radius: 20px; + } + .log.error>.date { + background: #e74c3c; + color: #fff; + } + .log.warning>.date { + background: #f39c12; + } + .log.notice>.date { + background: #ecf0f1; + } + .log.debug>.date { + 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 { + font-weight:normal; + padding:.5em; +} + +select.number option { + text-align:right; +} + +@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; + } + + .content { + font-size: 120%; + padding: 0; + } + + .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; + z-index: 10; + transition: width 200ms linear; + background: #ecf0f1; + } + .aside.aside_flux { + padding: 10px 0 0; + } + .aside:target { + width: 80%; + border-right: 1px solid #aaa; + overflow: auto; + } + .aside .toggle_aside { + position: absolute; + right: 10px; + display: inline-block; + width: 26px; + height: 26px; + margin: 0 10px 0 0; + border-radius: 3px; + text-align: center; + line-height: 24px; + background: #95a5a6; + } + .aside .toggle_aside:hover { + background: #7f8c8d; + } + .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 { + left: 10px; + right: 10px; + } +} + +/*** FALLBACK ***/ +.dropdown-menu:after { + -moz-transform: rotate(45deg); + -webkit-transform: rotate(45deg); + -ms-transform: rotate(45deg); +} + +@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; + } +} -- cgit v1.2.3 From f98af0c2733df5c39d6d853df6b0d3ab1d3f582f Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Mon, 20 Jan 2014 14:30:15 +0100 Subject: .flux:not(.current):hover MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Contribue à https://github.com/marienfressinaud/FreshRSS/issues/367 --- p/themes/Dark/freshrss.css | 2 +- p/themes/Flat/freshrss.css | 2 +- p/themes/Origine/freshrss.css | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index e9eb2c705..a5fb06bd2 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -269,7 +269,7 @@ .flux .item.title { background: inherit; } - .flux:hover .item.title { + .flux:not(.current):hover .item.title { border-right: 2px solid rgba(127, 127, 127, 0.1); padding-right: 1em; position: absolute; diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index dca1b3f28..f3bef7222 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -264,7 +264,7 @@ body { .flux .item.title { background: inherit; } - .flux:hover .item.title { + .flux:not(.current):hover .item.title { border-right: 2px solid rgba(127, 127, 127, 0.1); padding-right: 1em; position: absolute; diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 593f21d30..c71e516ce 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -278,7 +278,7 @@ .flux .item.title { background: inherit; } - .flux:hover .item.title { + .flux:not(.current):hover .item.title { border-right: 2px solid rgba(127, 127, 127, 0.1); padding-right: 1em; position: absolute; -- cgit v1.2.3 From c5274cfa298f1020bab30bd6026323be9e4be43d Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Mon, 20 Jan 2014 14:53:07 +0100 Subject: Pas de survol mobile https://github.com/marienfressinaud/FreshRSS/issues/367 --- p/themes/Dark/freshrss.css | 13 ++++++++----- p/themes/Flat/freshrss.css | 13 ++++++++----- p/themes/Origine/freshrss.css | 13 ++++++++----- 3 files changed, 24 insertions(+), 15 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index a5fb06bd2..718f98272 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -268,11 +268,6 @@ } .flux .item.title { background: inherit; - } - .flux:not(.current):hover .item.title { - border-right: 2px solid rgba(127, 127, 127, 0.1); - padding-right: 1em; - position: absolute; } .flux .item.title a { color: #888; @@ -652,6 +647,14 @@ select.number option { text-align:right; } +@media(min-width: 841px) { + .flux:not(.current):hover .item.title { + border-right: 2px solid rgba(127, 127, 127, 0.1); + padding-right: 1em; + position: absolute; + } +} + @media(max-width: 840px) { .header, .aside .btn-important, diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index f3bef7222..263a69a3a 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -263,11 +263,6 @@ body { } .flux .item.title { background: inherit; - } - .flux:not(.current):hover .item.title { - border-right: 2px solid rgba(127, 127, 127, 0.1); - padding-right: 1em; - position: absolute; } .flux .item.title a { color: #333; @@ -656,6 +651,14 @@ select.number option { text-align:right; } +@media(min-width: 841px) { + .flux:not(.current):hover .item.title { + border-right: 2px solid rgba(127, 127, 127, 0.1); + padding-right: 1em; + position: absolute; + } +} + @media(max-width: 840px) { .header, .aside .btn-important, diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index c71e516ce..20714a80c 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -277,11 +277,6 @@ } .flux .item.title { background: inherit; - } - .flux:not(.current):hover .item.title { - border-right: 2px solid rgba(127, 127, 127, 0.1); - padding-right: 1em; - position: absolute; } .flux .item.title a { color: #000; @@ -657,6 +652,14 @@ select.number option { text-align:right; } +@media(min-width: 841px) { + .flux:not(.current):hover .item.title { + border-right: 2px solid rgba(127, 127, 127, 0.1); + padding-right: 1em; + position: absolute; + } +} + @media(max-width: 840px) { .header, .aside .btn-important, -- cgit v1.2.3 From 7974afa83cef524471109304318ecbe6033303ad Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Wed, 22 Jan 2014 18:54:33 +0100 Subject: Espace mobile Corrige https://github.com/marienfressinaud/FreshRSS/issues/368 --- p/themes/Dark/freshrss.css | 1 - p/themes/Flat/freshrss.css | 1 - p/themes/Origine/freshrss.css | 1 - 3 files changed, 3 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 718f98272..4516c92ff 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -677,7 +677,6 @@ select.number option { .content { font-size: 120%; - padding: 0; } .pagination { diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 263a69a3a..a58e04459 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -681,7 +681,6 @@ select.number option { .content { font-size: 120%; - padding: 0; } .pagination { diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 20714a80c..b94f9d583 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -682,7 +682,6 @@ select.number option { .content { font-size: 120%; - padding: 0; } .pagination { -- cgit v1.2.3 From 3144f3386d78c5fa373cbb7369ab8f2fbe3ad881 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Wed, 22 Jan 2014 22:50:42 +0100 Subject: Zones de clic d'icônes plus larges MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Corrige https://github.com/marienfressinaud/FreshRSS/issues/369 --- p/themes/Dark/freshrss.css | 4 ++++ p/themes/Flat/freshrss.css | 4 ++++ p/themes/Origine/freshrss.css | 4 ++++ 3 files changed, 12 insertions(+) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 4516c92ff..2e9ecee21 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -241,6 +241,10 @@ background: #1a1a1a; } + .horizontal-list > .item > a { + display: block + } + .flux_header { background: inherit; height: 25px; diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index a58e04459..e67d6ac36 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -236,6 +236,10 @@ body { background: #fff; } + .horizontal-list > .item > a { + display: block + } + .flux_header { background: inherit; height: 25px; diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index b94f9d583..783db4426 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -250,6 +250,10 @@ background: #fff; } + .horizontal-list > .item > a { + display: block + } + .flux_header { background: inherit; height: 25px; -- cgit v1.2.3 From 3eb5d216f3dd2a18427a62ea52f256b03a1027c7 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Thu, 23 Jan 2014 17:27:27 +0100 Subject: Test affichage 100% mobile plutôt que 120% MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Passe le texte des articles en 100% plutôt que 120% sur mobile. À tester https://github.com/marienfressinaud/FreshRSS/issues/368#issuecomment-33103162 --- p/themes/Dark/freshrss.css | 4 ---- p/themes/Flat/freshrss.css | 4 ---- p/themes/Origine/freshrss.css | 4 ---- 3 files changed, 12 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index af2a7d455..a93fb44a4 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -679,10 +679,6 @@ select.number option { display: block; } - .content { - font-size: 120%; - } - .pagination { margin: 0 0 40px; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index e67d6ac36..fb3fde686 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -683,10 +683,6 @@ select.number option { display: block; } - .content { - font-size: 120%; - } - .pagination { margin: 0 0 40px; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 783db4426..41e148996 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -684,10 +684,6 @@ select.number option { display: block; } - .content { - font-size: 120%; - } - .pagination { margin: 0 0 40px; } -- cgit v1.2.3 From c35c49df8868bccf924f39e6eebdc57da7811f19 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Thu, 23 Jan 2014 22:27:05 +0100 Subject: Style titres trop longs + correction bug "..." https://github.com/marienfressinaud/FreshRSS/issues/385 https://github.com/marienfressinaud/FreshRSS/pull/322 --- p/themes/Dark/freshrss.css | 8 ++++---- p/themes/Flat/freshrss.css | 8 ++++---- p/themes/Origine/freshrss.css | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index a93fb44a4..8f021e04a 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -241,8 +241,8 @@ background: #1a1a1a; } - .horizontal-list > .item > a { - display: block + .horizontal-list > .item:not(.title):not(.website) > a { + display: block; } .flux_header { @@ -653,8 +653,8 @@ select.number option { @media(min-width: 841px) { .flux:not(.current):hover .item.title { - border-right: 2px solid rgba(127, 127, 127, 0.1); - padding-right: 1em; + max-width: calc(100% - 545px); + padding-right: 1.5em; position: absolute; } } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index fb3fde686..12a7d9bfb 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -236,8 +236,8 @@ body { background: #fff; } - .horizontal-list > .item > a { - display: block + .horizontal-list > .item:not(.title):not(.website) > a { + display: block; } .flux_header { @@ -657,8 +657,8 @@ select.number option { @media(min-width: 841px) { .flux:not(.current):hover .item.title { - border-right: 2px solid rgba(127, 127, 127, 0.1); - padding-right: 1em; + max-width: calc(100% - 545px); + padding-right: 1.5em; position: absolute; } } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 41e148996..ef86aa021 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -250,8 +250,8 @@ background: #fff; } - .horizontal-list > .item > a { - display: block + .horizontal-list > .item:not(.title):not(.website) > a { + display: block; } .flux_header { @@ -658,8 +658,8 @@ select.number option { @media(min-width: 841px) { .flux:not(.current):hover .item.title { - border-right: 2px solid rgba(127, 127, 127, 0.1); - padding-right: 1em; + max-width: calc(100% - 545px); + padding-right: 1.5em; position: absolute; } } -- cgit v1.2.3 From 451cae8d12920a0f5d4d178e3be92989426b6c29 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Thu, 23 Jan 2014 22:51:35 +0100 Subject: Réduit la place de la date MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/marienfressinaud/FreshRSS/issues/385 + oublie formLogin d'un patch précédent https://github.com/marienfressinaud/FreshRSS/commit/ae539f68395f9a09dbc04042fa281d97578f0d1e https://github.com/marienfressinaud/FreshRSS/issues/380 --- app/i18n/en.php | 2 +- app/i18n/fr.php | 2 +- app/views/index/formLogin.phtml | 24 ++---------------------- p/themes/Dark/freshrss.css | 2 +- p/themes/Flat/freshrss.css | 2 +- p/themes/Origine/freshrss.css | 2 +- 6 files changed, 7 insertions(+), 27 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/app/i18n/en.php b/app/i18n/en.php index bb983d397..ae03af8d0 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -295,5 +295,5 @@ return array ( 'Dec' => '\D\e\c\e\m\b\e\r', // format for date() function, %s allows to indicate month in letter 'format_date' => '%s j\<\s\u\p\>S\<\/\s\u\p\> Y', - 'format_date_hour' => '%s j\<\s\u\p\>S\<\/\s\u\p\> Y \a\t H\.i', + 'format_date_hour' => '%s j\<\s\u\p\>S\<\/\s\u\p\> Y \a\t H\:i', ); diff --git a/app/i18n/fr.php b/app/i18n/fr.php index 2c44aa8d0..d927b3fbb 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -295,5 +295,5 @@ return array ( 'Dec' => '\d\é\c\e\m\b\r\e', // format pour la fonction date(), %s permet d'indiquer le mois en toutes lettres 'format_date' => 'j %s Y', - 'format_date_hour' => '\l\e j %s Y \à H\:i', + 'format_date_hour' => 'j %s Y \à H\:i', ); diff --git a/app/views/index/formLogin.phtml b/app/views/index/formLogin.phtml index c92b5c187..e4560c1a0 100644 --- a/app/views/index/formLogin.phtml +++ b/app/views/index/formLogin.phtml @@ -1,25 +1,4 @@ - - +

+
diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 8f021e04a..9df540c04 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -282,7 +282,7 @@ font-weight: bold; } .flux .item.date { - width: 200px; + width: 145px; padding:0 5px 0 0; text-align: right; font-size: 10px; diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 12a7d9bfb..6f2f75604 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -277,7 +277,7 @@ body { font-weight: bold; } .flux .item.date { - width: 200px; + width: 145px; padding:0 5px 0 0; text-align: right; font-size: 10px; diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index ef86aa021..965980d11 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -291,7 +291,7 @@ font-weight: bold; } .flux .item.date { - width: 200px; + width: 145px; padding:0 5px 0 0; text-align: right; font-size: 10px; -- cgit v1.2.3 From 1863b88b6c0740a4d4191203c2a630994884c37e Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Thu, 23 Jan 2014 23:21:11 +0100 Subject: Style titres trop longs avec toutes les icônes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/marienfressinaud/FreshRSS/issues/385 --- p/themes/Dark/freshrss.css | 2 +- p/themes/Flat/freshrss.css | 2 +- p/themes/Origine/freshrss.css | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 9df540c04..c394ad98b 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -653,7 +653,7 @@ select.number option { @media(min-width: 841px) { .flux:not(.current):hover .item.title { - max-width: calc(100% - 545px); + max-width: calc(100% - 580px); padding-right: 1.5em; position: absolute; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 6f2f75604..b2d92f86b 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -657,7 +657,7 @@ select.number option { @media(min-width: 841px) { .flux:not(.current):hover .item.title { - max-width: calc(100% - 545px); + max-width: calc(100% - 580px); padding-right: 1.5em; position: absolute; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 965980d11..86745af1a 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -658,7 +658,7 @@ select.number option { @media(min-width: 841px) { .flux:not(.current):hover .item.title { - max-width: calc(100% - 545px); + max-width: calc(100% - 580px); padding-right: 1.5em; position: absolute; } -- cgit v1.2.3 From 2a6443a0f0f52272e1e3269d0c32f56322a9a3ec Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sat, 25 Jan 2014 14:06:34 +0100 Subject: Demande rafraîchissement page quand nvx articles MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout d'une indication pour rafraîchir la page si de nouveaux articles ont été détectés via le serveur Voir #379 --- app/i18n/en.php | 1 + app/i18n/fr.php | 1 + app/views/helpers/view/normal_view.phtml | 7 +++++++ p/scripts/main.js | 9 +++++++++ p/themes/Dark/freshrss.css | 19 +++++++++++++++++++ p/themes/Flat/freshrss.css | 19 +++++++++++++++++++ p/themes/Origine/freshrss.css | 19 +++++++++++++++++++ 7 files changed, 75 insertions(+) (limited to 'p/themes/Flat/freshrss.css') diff --git a/app/i18n/en.php b/app/i18n/en.php index 683d7ca22..5d9b01f0b 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -241,6 +241,7 @@ return array ( 'today' => 'Today', 'yesterday' => 'Yesterday', 'before_yesterday' => 'Before yesterday', + 'new_article' => 'There are new available articles, click to refresh the page.', 'by_author' => 'By %s', 'related_tags' => 'Related tags', 'no_feed_to_display' => 'There is no article to show.', diff --git a/app/i18n/fr.php b/app/i18n/fr.php index c20bf98e7..fd2257c70 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -241,6 +241,7 @@ return array ( 'today' => 'Aujourd’hui', 'yesterday' => 'Hier', 'before_yesterday' => 'À partir d’avant-hier', + 'new_article' => 'Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.', 'by_author' => 'Par %s', 'related_tags' => 'Tags associés', 'no_feed_to_display' => 'Il n’y a aucun article à afficher.', diff --git a/app/views/helpers/view/normal_view.phtml b/app/views/helpers/view/normal_view.phtml index a1df87579..af5ff03fe 100644 --- a/app/views/helpers/view/normal_view.phtml +++ b/app/views/helpers/view/normal_view.phtml @@ -63,6 +63,13 @@ if (!empty($this->entries)) { $display_others = false; } + if ($this->entries[0]->id () === $item->id ()) { + ?>
+
    loginOk) { diff --git a/p/scripts/main.js b/p/scripts/main.js index 3f6352baf..0c3a5fa3d 100644 --- a/p/scripts/main.js +++ b/p/scripts/main.js @@ -519,12 +519,21 @@ function init_notifications() { function refreshUnreads() { $.getJSON('./?c=javascript&a=nbUnreadsPerFeed').done(function (data) { + var new_article = false; $.each(data, function(feed_id, nbUnreads) { feed_id = 'f_' + feed_id; var elem = $('#' + feed_id + '>.feed').get(0), feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread'), 10) || 0) : 0; incUnreadsFeed(null, feed_id, nbUnreads - feed_unreads); + + if (nbUnreads - feed_unreads > 0) { + new_article = true; + } }); + + if (new_article) { + $('#new-article').show(); + } }); } diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index c394ad98b..2ad30fab2 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -224,6 +224,25 @@ text-align: right; } +#new-article { + display: none; + min-height: 40px; + background: #26303F; + text-align: center; +} + #new-article:hover { + background: #4A5D7A; + } + #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: #1c1c1c; diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index b2d92f86b..80e0da330 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -217,6 +217,25 @@ body { z-index: -10; } +#new-article { + display: none; + min-height: 40px; + background: #3498db; + text-align: center; +} + #new-article:hover { + background: #2980b9; + } + #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 #ecf0f1; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 86745af1a..bedeff695 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -230,6 +230,25 @@ 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; -- cgit v1.2.3 From 212366fb4ce01cba97af0e0ffed71578d75f10dc Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sat, 25 Jan 2014 15:36:31 +0100 Subject: Message article disponibles un cran au dessus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @marienfressinaud Que diras-tu de mettre le message un cran plus haut, juste au dessus de "aujourd'hui' ? En effet, la liste peut bien commencer à "Hier" par exemple, et du coup le message semblerait un peu anachronique. De plus, ça permet de sortir un test d'une boucle. Il reste peut-être à optimiser l'adresse. La version précédente avec _url() générait une exception chez moi. https://github.com/marienfressinaud/FreshRSS/issues/379 --- app/views/helpers/view/normal_view.phtml | 11 +++-------- p/themes/Dark/freshrss.css | 4 ++-- p/themes/Flat/freshrss.css | 4 ++-- p/themes/Origine/freshrss.css | 4 ++-- 4 files changed, 9 insertions(+), 14 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/app/views/helpers/view/normal_view.phtml b/app/views/helpers/view/normal_view.phtml index af5ff03fe..652def98a 100644 --- a/app/views/helpers/view/normal_view.phtml +++ b/app/views/helpers/view/normal_view.phtml @@ -38,6 +38,9 @@ if (!empty($this->entries)) { ?>
    + +
    entries as $item) { if ($display_today && $item->isDay (FreshRSS_Days::TODAY, $this->today)) { ?>
    entries)) { ?>
    entries[0]->id () === $item->id ()) { - ?>
    -
      loginOk) { diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 8e2efd383..19809c215 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -233,13 +233,13 @@ #new-article:hover { background: #4A5D7A; } - #new-article a { + #new-article > a { display: block; line-height: 40px; color: #fff; font-weight: bold; } - #new-article a:hover { + #new-article > a:hover { text-decoration: none; } diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 80e0da330..894497656 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -226,13 +226,13 @@ body { #new-article:hover { background: #2980b9; } - #new-article a { + #new-article > a { display: block; line-height: 40px; color: #fff; font-weight: bold; } - #new-article a:hover { + #new-article > a:hover { text-decoration: none; } diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index bedeff695..be549bf41 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -239,13 +239,13 @@ #new-article:hover { background: #0066CC; } - #new-article a { + #new-article > a { display: block; line-height: 40px; color: #fff; font-weight: bold; } - #new-article a:hover { + #new-article > a:hover { text-decoration: none; } -- cgit v1.2.3 From 0aa0686b09ca2d18b217f960ab374e6a20d1c862 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sat, 25 Jan 2014 16:34:13 +0100 Subject: Certains input s'agrandissent à la sélection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Désormais, les champs marqués d'un .extend s'étendront sur 300px (taille par défaut = 180px). Cela a été impliqué dans tous les thèmes. Le champs de recherche bénéficie de cette amélioration (mais ce dernier est un peu plus grand par défaut) Voir issue #375 --- app/layout/aside_feed.phtml | 4 ++-- app/layout/header.phtml | 2 +- app/layout/nav_menu.phtml | 2 +- app/views/configure/feed.phtml | 18 +++++++++--------- app/views/configure/sharing.phtml | 6 +++--- app/views/configure/users.phtml | 4 ++-- p/themes/Dark/freshrss.css | 5 ++--- p/themes/Dark/global.css | 11 +++++++++++ p/themes/Flat/freshrss.css | 8 +++++++- p/themes/Flat/global.css | 11 +++++++++++ p/themes/Origine/freshrss.css | 7 +++---- p/themes/Origine/global.css | 11 +++++++++++ 12 files changed, 63 insertions(+), 26 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/app/layout/aside_feed.phtml b/app/layout/aside_feed.phtml index 2446e72cb..e324b15bd 100644 --- a/app/layout/aside_feed.phtml +++ b/app/layout/aside_feed.phtml @@ -27,10 +27,10 @@
    • - +
    • - +
    diff --git a/app/layout/header.phtml b/app/layout/header.phtml index 69b9c65a1..b00c30e71 100644 --- a/app/layout/header.phtml +++ b/app/layout/header.phtml @@ -36,7 +36,7 @@ if (Minz_Configuration::canLogIn()) {
    - + diff --git a/app/layout/nav_menu.phtml b/app/layout/nav_menu.phtml index edd7707ad..c807e6dd5 100644 --- a/app/layout/nav_menu.phtml +++ b/app/layout/nav_menu.phtml @@ -205,7 +205,7 @@ diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 19809c215..77dd1fc4f 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -31,7 +31,6 @@ } .header > .item.search input { width: 230px; - transition: width 200ms linear; } .header .item.search input:focus { width: 330px; @@ -825,9 +824,9 @@ select.number option { background: #1c1c1c; } -.header > .item.search input { +input.extend { -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; + -webkit-transition: width 200ms linear; -o-transition: width 200ms linear; -ms-transition: width 200ms linear; } diff --git a/p/themes/Dark/global.css b/p/themes/Dark/global.css index b02f00526..f96f83fc8 100644 --- a/p/themes/Dark/global.css +++ b/p/themes/Dark/global.css @@ -87,6 +87,13 @@ label { line-height: 25px; cursor: pointer; } +input { + width: 180px; +} +textarea { + width: 360px; + height: 100px; +} input, select, textarea { display: inline-block; max-width: 100%; @@ -116,6 +123,10 @@ input, select, textarea { border-color: red; box-shadow: 0 0 2px 1px red; } + input:focus.extend { + width: 300px; + transition: width 200ms linear; + } .form-group { margin: 0; diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 894497656..04b3df842 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -34,7 +34,6 @@ body { } .header > .item.search input { width: 230px; - transition: width 200ms linear; } .header .item.search input:focus { width: 330px; @@ -800,6 +799,13 @@ select.number option { -ms-transform: rotate(45deg); } +input.extend { + -moz-transition: width 200ms linear; + -webkit-transition: width 200ms linear; + -o-transition: width 200ms linear; + -ms-transition: width 200ms linear; +} + @media print { .header, .aside, diff --git a/p/themes/Flat/global.css b/p/themes/Flat/global.css index af1d37549..e3baa26ab 100644 --- a/p/themes/Flat/global.css +++ b/p/themes/Flat/global.css @@ -88,6 +88,13 @@ label { font-weight: bold; color: #444; } +input { + width: 180px; +} +textarea { + width: 360px; + height: 100px; +} input, select, textarea { display: inline-block; max-width: 100%; @@ -117,6 +124,10 @@ input, select, textarea { border-color: red; box-shadow: 0 0 2px 1px red; } + input:focus.extend { + width: 300px; + transition: width 200ms linear; + } .form-group { margin: 5px 0; diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index be549bf41..906e0c72b 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -32,7 +32,6 @@ } .header > .item.search input { width: 230px; - transition: width 200ms linear; } .header .item.search input:focus { width: 330px; @@ -847,9 +846,9 @@ select.number option { background: -ms-linear-gradient(top, #fff 0%, #f0f0f0 100%); } -.header > .item.search input { +input.extend { -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; + -webkit-transition: width 200ms linear; -o-transition: width 200ms linear; -ms-transition: width 200ms linear; } @@ -857,7 +856,7 @@ select.number option { @media(max-width: 840px) { .aside { -moz-transition: width 200ms linear; - -webkit-transition: width 200ms linear; + -webkit-transition: width 200ms linear; -o-transition: width 200ms linear; -ms-transition: width 200ms linear; } diff --git a/p/themes/Origine/global.css b/p/themes/Origine/global.css index 5209ad161..58a3a52b1 100644 --- a/p/themes/Origine/global.css +++ b/p/themes/Origine/global.css @@ -86,6 +86,13 @@ label { line-height: 25px; cursor: pointer; } +input { + width: 180px; +} +textarea { + width: 360px; + height: 100px; +} input, select, textarea { display: inline-block; max-width: 100%; @@ -116,6 +123,10 @@ input, select, textarea { border-color: red; box-shadow: 0 0 2px 1px red; } + input:focus.extend { + width: 300px; + transition: width 200ms linear; + } .form-group { margin: 0; -- cgit v1.2.3 From c2998ffc97fbb8e45e6179f5d9c59c1b940d5782 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sun, 26 Jan 2014 14:17:25 +0100 Subject: Statistiques : performances CSS + thèmes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/marienfressinaud/FreshRSS/issues/90 Évite les sélecteurs universels *, les expressions sous-qualifiées, et autres règles lourdes --- p/themes/Dark/freshrss.css | 37 +++++++++++++++++++++++++++++++++++++ p/themes/Flat/freshrss.css | 37 +++++++++++++++++++++++++++++++++++++ p/themes/Origine/freshrss.css | 38 ++++++++++++++++---------------------- 3 files changed, 90 insertions(+), 22 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/p/themes/Dark/freshrss.css b/p/themes/Dark/freshrss.css index 40634e398..abda226a3 100644 --- a/p/themes/Dark/freshrss.css +++ b/p/themes/Dark/freshrss.css @@ -875,3 +875,40 @@ input.extend { 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; + text-align:center; + 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; +} +.stat > table th:first-child, .stat > table td:first-child { + border-left:0; +} diff --git a/p/themes/Flat/freshrss.css b/p/themes/Flat/freshrss.css index 04b3df842..640c963c2 100644 --- a/p/themes/Flat/freshrss.css +++ b/p/themes/Flat/freshrss.css @@ -842,3 +842,40 @@ input.extend { 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; + text-align:center; + 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; +} +.stat > table th:first-child, .stat > table td:first-child { + border-left:0; +} diff --git a/p/themes/Origine/freshrss.css b/p/themes/Origine/freshrss.css index 78adbeff0..98f470536 100644 --- a/p/themes/Origine/freshrss.css +++ b/p/themes/Origine/freshrss.css @@ -899,45 +899,39 @@ input.extend { } } -.stat{ +.stat { border:1px solid #aaa; border-radius:10px; box-shadow:2px 2px 5px #aaa; - margin: 10px 0; + margin:10px 0; + padding:0 5px; } -.stat h2{ +.stat > h2 { border-bottom:1px solid #aaa; - margin:0; + margin:0 -5px; padding-left:5px; } -.stat h2 + *{ - margin:5px; +.stat > div { + margin:5px 0; } -.stat h2 + div + div{ - margin:0 5px 5px 5px; -} -.stat h2 + table{ +.stat > table { border-collapse:collapse; - width:calc(100% - 10px); -} -.stat h2 + table th{ - text-transform:capitalize; -} -.stat h2 + table td{ + margin:5px 0; text-align:center; + width:100%; } -.stat h2 + table thead th{ +.stat > table > thead > tr { border-bottom:2px solid #aaa; } -.stat h2 + table tbody tr *{ +.stat > table > tbody > tr { border-bottom:1px solid #aaa; } -.stat h2 + table tbody tr:last-child *{ +.stat > table > tbody > tr:last-child { border-bottom:0; } -.stat h2 + table tr *{ +.stat > table th, .stat > table td { border-left:2px solid #aaa; } -.stat h2 + table tr *:first-child{ +.stat > table th:first-child, .stat > table td:first-child { border-left:0; -} \ No newline at end of file +} -- cgit v1.2.3 From b0641fd0ebcaa02dcbeb2983703bff6516f93487 Mon Sep 17 00:00:00 2001 From: Alexis Degrugillier Date: Sun, 26 Jan 2014 08:54:52 -0500 Subject: Modification des statistiques. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout de la liste des 10 plus gros contributeurs Ajout de règles CSS pour les thèmes Flat et Dark Modification de l'affichage des camemberts (tri par nombre qui remplace le tri alphabétique) --- app/Controllers/indexController.php | 1 + app/Models/StatsDAO.php | 29 +++++++++++++++++++++++- app/i18n/en.php | 4 ++++ app/i18n/fr.php | 4 ++++ app/views/index/stats.phtml | 37 +++++++++++++++++++++++------- p/themes/Dark/freshrss.css | 45 +++++++++++++++++++++++++++++++++++++ p/themes/Flat/freshrss.css | 45 +++++++++++++++++++++++++++++++++++++ p/themes/Origine/freshrss.css | 5 ++++- 8 files changed, 160 insertions(+), 10 deletions(-) (limited to 'p/themes/Flat/freshrss.css') diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php index 74883962d..cb6be6049 100755 --- a/app/Controllers/indexController.php +++ b/app/Controllers/indexController.php @@ -200,6 +200,7 @@ class FreshRSS_index_Controller extends Minz_ActionController { $this->view->count = ($statsDAO->calculateEntryCount()); $this->view->feedByCategory = $statsDAO->calculateFeedByCategory(); $this->view->entryByCategory = $statsDAO->calculateEntryByCategory(); + $this->view->topFeed = $statsDAO->calculateTopFeed(); } public function aboutAction () { diff --git a/app/Models/StatsDAO.php b/app/Models/StatsDAO.php index a317c8f27..60cec7847 100644 --- a/app/Models/StatsDAO.php +++ b/app/Models/StatsDAO.php @@ -122,6 +122,7 @@ FROM {$this->prefix}category AS c, {$this->prefix}feed AS f WHERE c.id = f.category GROUP BY label +ORDER BY data DESC SQL; $stm = $this->bd->prepare($sql); $stm->execute(); @@ -146,6 +147,7 @@ FROM {$this->prefix}category AS c, WHERE c.id = f.category AND f.id = e.id_feed GROUP BY label +ORDER BY data DESC SQL; $stm = $this->bd->prepare($sql); $stm->execute(); @@ -154,6 +156,31 @@ SQL; return $this->convertToPieSerie($res); } + /** + * Calculates the 10 top feeds based on their number of entries + * + * @return array + */ + public function calculateTopFeed() { + $sql = <<prefix}category AS c, +{$this->prefix}feed AS f, +{$this->prefix}entry AS e +WHERE c.id = f.category +AND f.id = e.id_feed +GROUP BY id +ORDER BY count DESC +LIMIT 10 +SQL; + $stm = $this->bd->prepare($sql); + $stm->execute(); + return $stm->fetchAll(PDO::FETCH_ASSOC); + } + private function convertToSerie($data) { $serie = array(); @@ -168,7 +195,7 @@ SQL; $serie = array(); foreach ($data as $value) { - $value['data'] = array(array(0, (int)$value['data'])); + $value['data'] = array(array(0, (int) $value['data'])); $serie[] = $value; } diff --git a/app/i18n/en.php b/app/i18n/en.php index 70fd8a74b..e5cf623c7 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -11,6 +11,8 @@ return array ( 'users' => 'Users', 'categories' => 'Categories', 'category' => 'Category', + 'feed' => 'Feed', + 'feeds' => 'Feeds', 'shortcuts' => 'Shortcuts', 'about' => 'About', 'stats' => 'Statistics', @@ -309,4 +311,6 @@ return array ( 'stats_entry_per_day' => 'Entries per day (last 30 days)', 'stats_feed_per_category' => 'Feeds per category', 'stats_entry_per_category' => 'Entries per category', + 'stats_top_feed' => 'Top ten feeds', + 'stats_entry_count' => 'Entry count', ); diff --git a/app/i18n/fr.php b/app/i18n/fr.php index 53645477b..693dce5d1 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -11,6 +11,8 @@ return array ( 'users' => 'Utilisateurs', 'categories' => 'Catégories', 'category' => 'Catégorie', + 'feed' => 'Flux', + 'feeds' => 'Flux', 'shortcuts' => 'Raccourcis', 'about' => 'À propos', 'stats' => 'Statistiques', @@ -309,4 +311,6 @@ return array ( 'stats_entry_per_day' => 'Nombre d’articles par jour (30 derniers jours)', 'stats_feed_per_category' => 'Flux par catégorie', 'stats_entry_per_category' => 'Articles par catégorie', + 'stats_top_feed' => 'Les dix plus gros flux', + 'stats_entry_count' => 'Nombre d’articles', ); diff --git a/app/views/index/stats.phtml b/app/views/index/stats.phtml index 487c50a4b..ae9db172b 100644 --- a/app/views/index/stats.phtml +++ b/app/views/index/stats.phtml @@ -16,23 +16,23 @@ - repartition['main_stream']['total']?> - repartition['all_feeds']['total']?> + repartition['main_stream']['total']?> + repartition['all_feeds']['total']?> - repartition['main_stream']['read']?> - repartition['all_feeds']['read']?> + repartition['main_stream']['read']?> + repartition['all_feeds']['read']?> - repartition['main_stream']['unread']?> - repartition['all_feeds']['unread']?> + repartition['main_stream']['unread']?> + repartition['all_feeds']['unread']?> - repartition['main_stream']['favorite']?> - repartition['all_feeds']['favorite']?> + repartition['main_stream']['favorite']?> + repartition['all_feeds']['favorite']?> @@ -55,6 +55,27 @@
    +
    +

    + + + + + + + + + + topFeed as $feed):?> + + + + + + + +
    +