From 19fb901cb417c13be0ac3019d1bb1e7b09d08b37 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sat, 15 Mar 2014 15:08:44 +0100 Subject: Small corrections previous pull requests https://github.com/marienfressinaud/FreshRSS/issues/457 https://github.com/marienfressinaud/FreshRSS/pull/459 https://github.com/marienfressinaud/FreshRSS/issues/422 https://github.com/marienfressinaud/FreshRSS/pull/461 --- app/layout/layout.phtml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'app/layout/layout.phtml') diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index 1501df3c3..63255b54f 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -18,8 +18,12 @@ -rss_url)) { ?> - +url)) { + $rss_url = $this->url; + $rss_url['params']['output'] = 'rss'; +?> + -- cgit v1.2.3 From a8fb7452720bdcb742f83952fed9caa7841a1ecf Mon Sep 17 00:00:00 2001 From: tomgue Date: Thu, 17 Apr 2014 18:20:18 +0200 Subject: Add to homescreen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout d’un icon iPhone/iPad + balise link et meta --- app/layout/layout.phtml | 3 +++ p/themes/icons/apple-touch-icon.png | Bin 0 -> 5588 bytes 2 files changed, 3 insertions(+) create mode 100644 p/themes/icons/apple-touch-icon.png (limited to 'app/layout/layout.phtml') diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index 1501df3c3..d9e21a610 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -25,6 +25,9 @@ + + + diff --git a/p/themes/icons/apple-touch-icon.png b/p/themes/icons/apple-touch-icon.png new file mode 100644 index 000000000..1db69dcbe Binary files /dev/null and b/p/themes/icons/apple-touch-icon.png differ -- cgit v1.2.3 From 3298cf757e259826d55c31378ab3221911abe290 Mon Sep 17 00:00:00 2001 From: tomgue Date: Fri, 25 Apr 2014 13:13:17 +0200 Subject: fix titre fix --- app/layout/layout.phtml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'app/layout/layout.phtml') diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index d9e21a610..0ff838126 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -25,9 +25,10 @@ - + + -- cgit v1.2.3 From 717a37c6519c7fef1fbc07a0d56f9db4aaf0d1cd Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Tue, 13 May 2014 19:27:22 +0200 Subject: Fix coding style + title - Fix spaces before parenthesis - Apple title use the "real" name of the app --- app/layout/layout.phtml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'app/layout/layout.phtml') diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index cc7aa9d76..c22288adb 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -3,18 +3,18 @@ - - - + + + nextId)) { - $params = Minz_Request::params (); + $params = Minz_Request::params(); $params['next'] = $this->nextId; ?> - + @@ -23,7 +23,7 @@ $rss_url = $this->url; $rss_url['params']['output'] = 'rss'; ?> - + @@ -32,21 +32,21 @@ - + -partial ('header'); ?> +partial('header'); ?>
- render (); ?> + render(); ?>
notification)) { + if (isset($this->notification)) { $msg = $this->notification['content']; $status = $this->notification['type']; -- cgit v1.2.3 From 4bdabbd39fd111c6c12d5953bd4bd6de2ae3903d Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Tue, 3 Jun 2014 23:41:19 +0200 Subject: Fix theme Origine2 It should be equivalent to Origine (modulo some improvements) See https://github.com/marienfressinaud/FreshRSS/issues/320 --- app/layout/layout.phtml | 2 +- app/views/javascript/actualize.phtml | 2 +- p/themes/Origine2/origine.css | 188 ++++++++++++++++++++++++++++++++--- p/themes/Origine2/template.css | 76 +++++++++----- p/themes/template/template.css | 76 +++++++++----- 5 files changed, 274 insertions(+), 70 deletions(-) (limited to 'app/layout/layout.phtml') diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index c22288adb..d2e1e4b3b 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -53,7 +53,7 @@ invalidateHttpCache(); } ?> -
+
diff --git a/app/views/javascript/actualize.phtml b/app/views/javascript/actualize.phtml index 3b12ad774..6a92e5642 100644 --- a/app/views/javascript/actualize.phtml +++ b/app/views/javascript/actualize.phtml @@ -9,7 +9,7 @@ var feeds = [\ + $("body").after("\
\ 0 / " + feed_count + "
\ \
"); diff --git a/p/themes/Origine2/origine.css b/p/themes/Origine2/origine.css index ad97e11cf..31d1d4233 100644 --- a/p/themes/Origine2/origine.css +++ b/p/themes/Origine2/origine.css @@ -41,7 +41,7 @@ input, select, textarea { border: 1px solid #bbb; border-radius: 3px; color: #666; - vertical-align: top; + vertical-align: middle; box-shadow: 0 2px 2px #eee inset; } option { @@ -59,8 +59,7 @@ input:invalid, select:invalid { input:disabled, select:disabled { background: #eee; } -input:focus.extend { - width: 300px; +input.extend { transition: width 200ms linear; -moz-transition: width 200ms linear; -webkit-transition: width 200ms linear; @@ -68,6 +67,18 @@ input:focus.extend { -ms-transition: width 200ms linear; } +/*=== Tables */ +table { + border-collapse: collapse; + text-align: center; +} + +tr, th, td { + padding: 0.5em; + border: 1px solid #ddd; + font-weight: normal; +} + /*=== COMPONENTS */ /*===============*/ /*=== Forms */ @@ -87,6 +98,9 @@ input:focus.extend { min-height: 25px; padding: 5px 0; } +.form-group table { + margin: 10px 0 0 220px; +} /*=== Buttons */ .stick { @@ -249,13 +263,6 @@ a.btn { .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; } @@ -263,6 +270,13 @@ a.btn { 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; @@ -515,6 +529,7 @@ a.btn { line-height: 3em; font-size: 0.8em; text-align: left; + text-decoration: none; } .categories .feeds .feed:not([data-unread="0"]) { font-weight: bold; @@ -635,21 +650,38 @@ a.btn { 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; +} /*=== Notification and actualize notification */ -#notification { +.notification { padding: 0 0 0 5px; text-align: center; border: 1px solid #eeb; @@ -659,27 +691,33 @@ a.btn { font-size: 0.9em; line-height: 3em; z-index: 10; + vertical-align: middle; } -#notification.good { +.notification.good { background: #ffe; border: 1px solid #eeb; color: #c95; } -#notification.bad { +.notification.bad { background: #fdd; border: 1px solid #ecc; color: #844; } -#notification a.close { +.notification a.close { padding: 0 15px; + line-height: 3em; } -#notification.good a.close:hover { +.notification.good a.close:hover { background: #eeb; } -#notification.bad a.close:hover { +.notification.bad a.close:hover { background: #ecc; } +.notification#actualizeProgress { + line-height: 2em; +} + /*=== "Load more" part */ #bigMarkAsRead { text-align: center; @@ -701,6 +739,66 @@ a.btn { 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 */ /*===========*/ @@ -714,3 +812,61 @@ a.btn { .aside.aside_feed .nav-form .dropdown .dropdown-menu:after { right: 33px; } + + +/*=== 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; + } +} diff --git a/p/themes/Origine2/template.css b/p/themes/Origine2/template.css index c546a824d..d57f2cde3 100644 --- a/p/themes/Origine2/template.css +++ b/p/themes/Origine2/template.css @@ -169,8 +169,7 @@ a.btn { position: absolute; right: 0; background: #fff; - border: 1px solid #aaa; - overflow: auto; + border: 1px solid #aaa; } .dropdown-header { display: block; @@ -294,6 +293,10 @@ a.btn { } /*=== Aside main page (categories) */ +.categories { + list-style: none; + margin: 0; +} .category { display: block; overflow: hidden; @@ -359,10 +362,10 @@ a.btn { position: relative; } .flux .item { - font-size: 0.9em; line-height: 40px; white-space: nowrap; text-overflow: ellipsis; + overflow: hidden; } .flux .item.manage, .flux .item.link { @@ -391,14 +394,16 @@ a.btn { } .flux .item.date { width: 145px; - font-size: 0.7em; text-align: right; } -.flux .item:not(.title) > a { +.flux .item > a { display: block; } -.flux .flux_header .item, -.flux .bottom .item.date { +.flux .item:not(.title) > a { + display: block; + text-decoration: none; + white-space: nowrap; + text-overflow: ellipsis; overflow: hidden; } .flux .item.share > a { @@ -417,6 +422,15 @@ a.btn { 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 { @@ -428,7 +442,7 @@ a.btn { } /*=== Notification and actualize notification */ -#notification { +.notification { position: absolute; top: 1em; left: 25%; right: 25%; @@ -436,24 +450,21 @@ a.btn { background: #fff; border: 1px solid #aaa; } -#notification.closed { +.notification.closed { display: none; } -#notification a.close { +.notification a.close { position: absolute; right: 0; display: inline-block; } -.actualizeProgress { - position: fixed; - top: 1em; - left: 25%; right: 25%; - background: #fff; - border: 1px solid #aaa; -} -.actualizeProgress progress { +#actualizeProgress progress { max-width: 100%; + vertical-align: middle; +} +#actualizeProgress .progress { + vertical-align: middle; } /*=== Navigation menu (for articles) */ @@ -501,9 +512,10 @@ a.btn { /*=== Category boxes */ #stream.global .box-category { display: inline-block; - width: 20em; + width: 19em; max-width: 95%; - border: 1px solid #aaa; + margin: 20px 10px; + border: 1px solid #ccc; vertical-align: top; } #stream.global .category { @@ -516,6 +528,10 @@ a.btn { display: block; overflow: auto; } +#stream.global .box-category .feed { + width: 19em; + max-width: 90%; +} /*=== Panel */ #overlay { @@ -571,27 +587,31 @@ a.btn { .item.date, .day .date { display: none; } - .nav-login, - #panel .close img { + .nav-login { display: block; } .nav_menu .toggle_aside, .aside .toggle_aside, - .nav_menu .search { + .nav_menu .search, + #panel .close img { display: inline-block; } .aside { position: fixed; - top: 0; left: 0; + top: 0; bottom: 0; + left: 0; width: 0; overflow: hidden; - z-index: 10; + z-index: 100; } .aside:target { - width: 80%; + width: 90%; overflow: auto; } + .aside .categories { + margin: 10px 0 75px; + } .flux_header .item.website { width: 40px; @@ -614,6 +634,10 @@ a.btn { width: 100%; } + #stream.global .box-category { + margin: 10px 0; + } + #panel { top: 0; bottom: 0; left: 0; right: 0; diff --git a/p/themes/template/template.css b/p/themes/template/template.css index c546a824d..d57f2cde3 100644 --- a/p/themes/template/template.css +++ b/p/themes/template/template.css @@ -169,8 +169,7 @@ a.btn { position: absolute; right: 0; background: #fff; - border: 1px solid #aaa; - overflow: auto; + border: 1px solid #aaa; } .dropdown-header { display: block; @@ -294,6 +293,10 @@ a.btn { } /*=== Aside main page (categories) */ +.categories { + list-style: none; + margin: 0; +} .category { display: block; overflow: hidden; @@ -359,10 +362,10 @@ a.btn { position: relative; } .flux .item { - font-size: 0.9em; line-height: 40px; white-space: nowrap; text-overflow: ellipsis; + overflow: hidden; } .flux .item.manage, .flux .item.link { @@ -391,14 +394,16 @@ a.btn { } .flux .item.date { width: 145px; - font-size: 0.7em; text-align: right; } -.flux .item:not(.title) > a { +.flux .item > a { display: block; } -.flux .flux_header .item, -.flux .bottom .item.date { +.flux .item:not(.title) > a { + display: block; + text-decoration: none; + white-space: nowrap; + text-overflow: ellipsis; overflow: hidden; } .flux .item.share > a { @@ -417,6 +422,15 @@ a.btn { 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 { @@ -428,7 +442,7 @@ a.btn { } /*=== Notification and actualize notification */ -#notification { +.notification { position: absolute; top: 1em; left: 25%; right: 25%; @@ -436,24 +450,21 @@ a.btn { background: #fff; border: 1px solid #aaa; } -#notification.closed { +.notification.closed { display: none; } -#notification a.close { +.notification a.close { position: absolute; right: 0; display: inline-block; } -.actualizeProgress { - position: fixed; - top: 1em; - left: 25%; right: 25%; - background: #fff; - border: 1px solid #aaa; -} -.actualizeProgress progress { +#actualizeProgress progress { max-width: 100%; + vertical-align: middle; +} +#actualizeProgress .progress { + vertical-align: middle; } /*=== Navigation menu (for articles) */ @@ -501,9 +512,10 @@ a.btn { /*=== Category boxes */ #stream.global .box-category { display: inline-block; - width: 20em; + width: 19em; max-width: 95%; - border: 1px solid #aaa; + margin: 20px 10px; + border: 1px solid #ccc; vertical-align: top; } #stream.global .category { @@ -516,6 +528,10 @@ a.btn { display: block; overflow: auto; } +#stream.global .box-category .feed { + width: 19em; + max-width: 90%; +} /*=== Panel */ #overlay { @@ -571,27 +587,31 @@ a.btn { .item.date, .day .date { display: none; } - .nav-login, - #panel .close img { + .nav-login { display: block; } .nav_menu .toggle_aside, .aside .toggle_aside, - .nav_menu .search { + .nav_menu .search, + #panel .close img { display: inline-block; } .aside { position: fixed; - top: 0; left: 0; + top: 0; bottom: 0; + left: 0; width: 0; overflow: hidden; - z-index: 10; + z-index: 100; } .aside:target { - width: 80%; + width: 90%; overflow: auto; } + .aside .categories { + margin: 10px 0 75px; + } .flux_header .item.website { width: 40px; @@ -614,6 +634,10 @@ a.btn { width: 100%; } + #stream.global .box-category { + margin: 10px 0; + } + #panel { top: 0; bottom: 0; left: 0; right: 0; -- cgit v1.2.3 From 8e5d98c4be836eed824260c01714e8d3624b9bef Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sat, 2 Aug 2014 01:33:33 +0200 Subject: Dynamic favicon showing the number of unread articles https://github.com/marienfressinaud/FreshRSS/issues/539 Works in Firefox 32 and Opera 12. Does not work in IE 11 but without error. We should test if icons still work in many contexts such as placing a shortcut on the desktop of various platforms. --- CHANGELOG | 3 ++- app/layout/layout.phtml | 2 +- p/scripts/main.js | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 35 insertions(+), 2 deletions(-) (limited to 'app/layout/layout.phtml') diff --git a/CHANGELOG b/CHANGELOG index 901b17d92..33cb810c4 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -2,8 +2,9 @@ ## 2014-08-xx FreshRSS 0.7.4 -* New options +* UI * Hide categories/feeds with unread articles when showing only unread articles + * Dynamic favicon showing the number of unread articles * Statistics * New page with article repartition * Improvements diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index d2e1e4b3b..96a88d245 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -16,7 +16,7 @@ ?> - + url)) { diff --git a/p/scripts/main.js b/p/scripts/main.js index 5d7d60a35..6876a9995 100644 --- a/p/scripts/main.js +++ b/p/scripts/main.js @@ -160,6 +160,7 @@ function mark_read(active, only_not_read) { $r.find('.icon').replaceWith(data.icon); incUnreadsFeed(active, feed_id, inc); + faviconNbUnread(); pending_feeds.splice(index_pending, 1); }); @@ -793,6 +794,7 @@ function refreshUnreads() { $('#new-article').show(); }; }); + faviconNbUnread(); }); } @@ -1065,6 +1067,35 @@ function init_password_observers() { }); } +function faviconNbUnread(n) { + if (typeof n === 'undefined') { + n = parseInt($('.category.all>a').attr('data-unread')); + } + //http://remysharp.com/2010/08/24/dynamic-favicons/ + var canvas = document.createElement('canvas'), + link = document.getElementById('favicon').cloneNode(true); + if (canvas.getContext && link) { + canvas.height = canvas.width = 16; + var img = document.createElement('img'); + img.onload = function () { + var ctx = canvas.getContext('2d'), + text = n < 100 ? n : '99+'; + ctx.drawImage(this, 0, 0); + if (n > 0) { + ctx.font = 'bold 9px "Arial", sans-serif'; + ctx.fillStyle = 'rgba(255, 255, 255, 127)'; + ctx.fillRect(0, 8, 1 + ctx.measureText(text).width, 7); + ctx.fillStyle = '#F00'; + ctx.fillText(text, 0, 16); + } + link.href = canvas.toDataURL('image/png'); + $('link[rel~=icon]').remove(); + document.head.appendChild(link); + }; + img.src = '../favicon.ico'; + } +} + function init_all() { if (!(window.$ && window.url_freshrss && ((!full_lazyload) || $.fn.lazyload))) { if (window.console) { @@ -1092,6 +1123,7 @@ function init_all() { init_stream($stream); init_nav_entries(); init_shortcuts(); + faviconNbUnread(); init_print_action(); window.setInterval(refreshUnreads, 120000); } else { -- cgit v1.2.3 From 7d5e57b35b4eca07417c296c156edb3b88eef90b Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Wed, 17 Sep 2014 09:15:19 +0200 Subject: Load $nb/2 articles when articles are unfolded See https://github.com/marienfressinaud/FreshRSS/issues/559 --- app/Controllers/indexController.php | 5 +++++ app/layout/layout.phtml | 1 + app/views/helpers/pagination.phtml | 5 ++++- 3 files changed, 10 insertions(+), 1 deletion(-) (limited to 'app/layout/layout.phtml') diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php index b0b051119..1d74a570b 100755 --- a/app/Controllers/indexController.php +++ b/app/Controllers/indexController.php @@ -83,6 +83,11 @@ class FreshRSS_index_Controller extends Minz_ActionController { $nb = Minz_Request::param ('nb', $this->view->conf->posts_per_page); $first = Minz_Request::param ('next', ''); + $ajax_request = Minz_Request::param('ajax', false); + if ($ajax_request == 1 && $this->view->conf->display_posts) { + $nb = max(1, round($nb / 2)); + } + if ($this->view->state === FreshRSS_Entry::STATE_NOT_READ) { //Any unread article in this category at all? switch ($getType) { case 'a': diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index 96a88d245..f95f45b5e 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -13,6 +13,7 @@ if (!empty($this->nextId)) { $params = Minz_Request::params(); $params['next'] = $this->nextId; + $params['ajax'] = 1; ?> diff --git a/app/views/helpers/pagination.phtml b/app/views/helpers/pagination.phtml index f6fcbc701..1b15cc632 100755 --- a/app/views/helpers/pagination.phtml +++ b/app/views/helpers/pagination.phtml @@ -9,7 +9,10 @@
  • nextId)) { ?> - nextId; ?> + nextId; + $params['ajax'] = 1; + ?> -- cgit v1.2.3 From c8fad68a4fd15857a2e3e21e7d5311dc7f87226c Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 5 Oct 2014 16:10:25 +0200 Subject: Use _i() whenever it is possible Transform FreshRSS_Themes::icon\s? in _i See https://github.com/marienfressinaud/FreshRSS/issues/655 --- app/layout/layout.phtml | 2 +- app/layout/nav_entries.phtml | 6 +++--- app/views/configure/archiving.phtml | 4 ++-- app/views/configure/display.phtml | 6 +++--- app/views/configure/sharing.phtml | 14 +++++++------- app/views/configure/users.phtml | 8 ++++---- app/views/entry/bookmark.phtml | 2 +- app/views/entry/read.phtml | 2 +- app/views/feed/add.phtml | 6 +++--- app/views/helpers/feed/update.phtml | 8 ++++---- app/views/helpers/javascript_vars.phtml | 2 +- app/views/helpers/view/global_view.phtml | 2 +- app/views/helpers/view/normal_view.phtml | 14 +++++++------- 13 files changed, 38 insertions(+), 38 deletions(-) (limited to 'app/layout/layout.phtml') diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index f95f45b5e..dbfac63a5 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -56,7 +56,7 @@ ?>
    - +
    diff --git a/app/layout/nav_entries.phtml b/app/layout/nav_entries.phtml index 3141e92a0..ca6849193 100644 --- a/app/layout/nav_entries.phtml +++ b/app/layout/nav_entries.phtml @@ -1,5 +1,5 @@ \ No newline at end of file diff --git a/app/views/configure/archiving.phtml b/app/views/configure/archiving.phtml index 3180fe933..a883571aa 100644 --- a/app/views/configure/archiving.phtml +++ b/app/views/configure/archiving.phtml @@ -5,7 +5,7 @@
    -

    +

    @@ -63,7 +63,7 @@

    nb_total), ' ', _t('articles'), ', ', formatBytes($this->size_user); ?>

    - +
diff --git a/app/views/configure/display.phtml b/app/views/configure/display.phtml index f1b80ab15..34239c7b2 100644 --- a/app/views/configure/display.phtml +++ b/app/views/configure/display.phtml @@ -62,12 +62,12 @@   - - + + - + diff --git a/app/views/configure/sharing.phtml b/app/views/configure/sharing.phtml index ee276a94e..5f657ca74 100644 --- a/app/views/configure/sharing.phtml +++ b/app/views/configure/sharing.phtml @@ -4,15 +4,15 @@ + data-simple='
' data-advanced='
-
- +
+
'> conf->sharing as $key => $sharing): ?> @@ -27,12 +27,12 @@
- +
- + - + @@ -45,7 +45,7 @@ - + diff --git a/app/views/configure/users.phtml b/app/views/configure/users.phtml index 04e662fa3..517e302e5 100644 --- a/app/views/configure/users.phtml +++ b/app/views/configure/users.phtml @@ -22,7 +22,7 @@
/> - +
@@ -34,7 +34,7 @@
/> - +
@@ -113,7 +113,7 @@
/> - +
@@ -184,7 +184,7 @@
- +
diff --git a/app/views/entry/bookmark.phtml b/app/views/entry/bookmark.phtml index c1fc32b7f..ab61fa206 100755 --- a/app/views/entry/bookmark.phtml +++ b/app/views/entry/bookmark.phtml @@ -13,4 +13,4 @@ $url = Minz_Url::display (array ( 'params' => Minz_Request::params (), )); -echo json_encode (array ('url' => str_ireplace ('&', '&', $url), 'icon' => FreshRSS_Themes::icon(Minz_Request::param ('is_favorite') ? 'non-starred' : 'starred'))); +echo json_encode (array ('url' => str_ireplace ('&', '&', $url), 'icon' => _i(Minz_Request::param ('is_favorite') ? 'non-starred' : 'starred'))); diff --git a/app/views/entry/read.phtml b/app/views/entry/read.phtml index 9e79d4c07..0ef9df7eb 100755 --- a/app/views/entry/read.phtml +++ b/app/views/entry/read.phtml @@ -13,4 +13,4 @@ $url = Minz_Url::display (array ( 'params' => Minz_Request::params (), )); -echo json_encode (array ('url' => str_ireplace ('&', '&', $url), 'icon' => FreshRSS_Themes::icon(Minz_Request::param ('is_read') ? 'unread' : 'read'))); +echo json_encode (array ('url' => str_ireplace ('&', '&', $url), 'icon' => _i(Minz_Request::param ('is_read') ? 'unread' : 'read'))); diff --git a/app/views/feed/add.phtml b/app/views/feed/add.phtml index 17e52a571..1db053b52 100644 --- a/app/views/feed/add.phtml +++ b/app/views/feed/add.phtml @@ -29,7 +29,7 @@
feed->website(); ?> - +
@@ -39,7 +39,7 @@
- +
@@ -76,7 +76,7 @@
- +
diff --git a/app/views/helpers/feed/update.phtml b/app/views/helpers/feed/update.phtml index 8bd645d11..9235752c3 100644 --- a/app/views/helpers/feed/update.phtml +++ b/app/views/helpers/feed/update.phtml @@ -36,7 +36,7 @@
- +
@@ -45,7 +45,7 @@
- +
@@ -139,7 +139,7 @@
- +
@@ -160,7 +160,7 @@
- +
diff --git a/app/views/helpers/javascript_vars.phtml b/app/views/helpers/javascript_vars.phtml index ba02b9fad..011b17b7a 100644 --- a/app/views/helpers/javascript_vars.phtml +++ b/app/views/helpers/javascript_vars.phtml @@ -33,7 +33,7 @@ echo ',shortcuts={', "},\n"; if (Minz_Request::param ('output') === 'global') { - echo "iconClose='", FreshRSS_Themes::icon('close'), "',\n"; + echo "iconClose='", _i('close'), "',\n"; } $authType = Minz_Configuration::authType(); diff --git a/app/views/helpers/view/global_view.phtml b/app/views/helpers/view/global_view.phtml index 5e4cad01a..0e553c957 100644 --- a/app/views/helpers/view/global_view.phtml +++ b/app/views/helpers/view/global_view.phtml @@ -42,7 +42,7 @@
conf->display_posts ? '' : ' class="hide_posts"'; ?>> - +
diff --git a/app/views/helpers/view/normal_view.phtml b/app/views/helpers/view/normal_view.phtml index ee745144f..66b79cd7f 100644 --- a/app/views/helpers/view/normal_view.phtml +++ b/app/views/helpers/view/normal_view.phtml @@ -66,7 +66,7 @@ if (!empty($this->entries)) { $arUrl['params']['is_read'] = 0; } ?>isRead () ? 'read' : 'unread'); ?>isRead () ? 'read' : 'unread'); ?>entries)) { $arUrl['params']['is_favorite'] = 0; } ?>isFavorite () ? 'starred' : 'non-starred'); ?>isFavorite () ? 'starred' : 'non-starred'); ?>entries)) { ?>
  • ✇ name(); ?>
  • title (); ?>
  • date (); ?> 
  • - +
    @@ -111,7 +111,7 @@ if (!empty($this->entries)) { $arUrl['params']['is_read'] = 0; } ?>isRead () ? 'read' : 'unread'); ?>isRead () ? 'read' : 'unread'); ?>entries)) { $arUrl['params']['is_favorite'] = 0; } ?>isFavorite () ? 'starred' : 'non-starred'); ?>isFavorite () ? 'starred' : 'non-starred'); ?> @@ -132,7 +132,7 @@ if (!empty($this->entries)) { ?> -- cgit v1.2.3 From 1a22a87fb1b1fcb61d201de399c33c2185dc1f6e Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Mon, 20 Oct 2014 18:45:22 +0200 Subject: Use FreshRSS_Context::$conf only - Replace $this->view->conf in controllers - Replace $this->conf in views --- app/Controllers/authController.php | 6 +- app/Controllers/categoryController.php | 8 +-- app/Controllers/configureController.php | 92 +++++++++++++++--------------- app/Controllers/entryController.php | 6 +- app/Controllers/feedController.php | 18 +++--- app/Controllers/importExportController.php | 4 +- app/Controllers/indexController.php | 8 +-- app/Controllers/javascriptController.php | 2 +- app/Controllers/userController.php | 18 +++--- app/FreshRSS.php | 2 - app/layout/aside_flux.phtml | 8 +-- app/layout/layout.phtml | 2 +- app/layout/nav_menu.phtml | 14 ++--- app/views/auth/index.phtml | 4 +- app/views/configure/archiving.phtml | 10 ++-- app/views/configure/display.phtml | 30 +++++----- app/views/configure/queries.phtml | 4 +- app/views/configure/reading.phtml | 42 +++++++------- app/views/configure/sharing.phtml | 6 +- app/views/configure/shortcut.phtml | 2 +- app/views/helpers/javascript_vars.phtml | 16 +++--- app/views/helpers/pagination.phtml | 2 +- app/views/helpers/view/global_view.phtml | 6 +- app/views/helpers/view/normal_view.phtml | 30 +++++----- app/views/helpers/view/reader_view.phtml | 4 +- app/views/user/manage.phtml | 6 +- app/views/user/profil.phtml | 2 +- 27 files changed, 175 insertions(+), 177 deletions(-) (limited to 'app/layout/layout.phtml') diff --git a/app/Controllers/authController.php b/app/Controllers/authController.php index d4b65d849..4af39cb71 100644 --- a/app/Controllers/authController.php +++ b/app/Controllers/authController.php @@ -26,10 +26,10 @@ class FreshRSS_auth_Controller extends Minz_ActionController { if (Minz_Request::isPost()) { $ok = true; - $current_token = $this->view->conf->token; + $current_token = FreshRSS_Context::$conf->token; $token = Minz_Request::param('token', $current_token); - $this->view->conf->_token($token); - $ok &= $this->view->conf->save(); + FreshRSS_Context::$conf->_token($token); + $ok &= FreshRSS_Context::$conf->save(); $anon = Minz_Request::param('anon_access', false); $anon = ((bool)$anon) && ($anon !== 'no'); diff --git a/app/Controllers/categoryController.php b/app/Controllers/categoryController.php index 537a2b210..977ce51be 100644 --- a/app/Controllers/categoryController.php +++ b/app/Controllers/categoryController.php @@ -136,8 +136,8 @@ class FreshRSS_category_Controller extends Minz_ActionController { } // Remove related queries. - $this->view->conf->remove_query_by_get('c_' . $id); - $this->view->conf->save(); + FreshRSS_Context::$conf->remove_query_by_get('c_' . $id); + FreshRSS_Context::$conf->save(); Minz_Request::good(_t('category_deleted'), $url_redirect); } @@ -172,9 +172,9 @@ class FreshRSS_category_Controller extends Minz_ActionController { // Remove related queries foreach ($feeds as $feed) { - $this->view->conf->remove_query_by_get('f_' . $feed->id()); + FreshRSS_Context::$conf->remove_query_by_get('f_' . $feed->id()); } - $this->view->conf->save(); + FreshRSS_Context::$conf->save(); Minz_Request::good(_t('category_emptied'), $url_redirect); } else { diff --git a/app/Controllers/configureController.php b/app/Controllers/configureController.php index fb8c1466e..8a9dcdc62 100755 --- a/app/Controllers/configureController.php +++ b/app/Controllers/configureController.php @@ -44,23 +44,23 @@ class FreshRSS_configure_Controller extends Minz_ActionController { */ public function displayAction() { if (Minz_Request::isPost()) { - $this->view->conf->_language(Minz_Request::param('language', 'en')); - $this->view->conf->_theme(Minz_Request::param('theme', FreshRSS_Themes::$defaultTheme)); - $this->view->conf->_content_width(Minz_Request::param('content_width', 'thin')); - $this->view->conf->_topline_read(Minz_Request::param('topline_read', false)); - $this->view->conf->_topline_favorite(Minz_Request::param('topline_favorite', false)); - $this->view->conf->_topline_date(Minz_Request::param('topline_date', false)); - $this->view->conf->_topline_link(Minz_Request::param('topline_link', false)); - $this->view->conf->_bottomline_read(Minz_Request::param('bottomline_read', false)); - $this->view->conf->_bottomline_favorite(Minz_Request::param('bottomline_favorite', false)); - $this->view->conf->_bottomline_sharing(Minz_Request::param('bottomline_sharing', false)); - $this->view->conf->_bottomline_tags(Minz_Request::param('bottomline_tags', false)); - $this->view->conf->_bottomline_date(Minz_Request::param('bottomline_date', false)); - $this->view->conf->_bottomline_link(Minz_Request::param('bottomline_link', false)); - $this->view->conf->_html5_notif_timeout(Minz_Request::param('html5_notif_timeout', 0)); - $this->view->conf->save(); - - Minz_Session::_param('language', $this->view->conf->language); + FreshRSS_Context::$conf->_language(Minz_Request::param('language', 'en')); + FreshRSS_Context::$conf->_theme(Minz_Request::param('theme', FreshRSS_Themes::$defaultTheme)); + FreshRSS_Context::$conf->_content_width(Minz_Request::param('content_width', 'thin')); + FreshRSS_Context::$conf->_topline_read(Minz_Request::param('topline_read', false)); + FreshRSS_Context::$conf->_topline_favorite(Minz_Request::param('topline_favorite', false)); + FreshRSS_Context::$conf->_topline_date(Minz_Request::param('topline_date', false)); + FreshRSS_Context::$conf->_topline_link(Minz_Request::param('topline_link', false)); + FreshRSS_Context::$conf->_bottomline_read(Minz_Request::param('bottomline_read', false)); + FreshRSS_Context::$conf->_bottomline_favorite(Minz_Request::param('bottomline_favorite', false)); + FreshRSS_Context::$conf->_bottomline_sharing(Minz_Request::param('bottomline_sharing', false)); + FreshRSS_Context::$conf->_bottomline_tags(Minz_Request::param('bottomline_tags', false)); + FreshRSS_Context::$conf->_bottomline_date(Minz_Request::param('bottomline_date', false)); + FreshRSS_Context::$conf->_bottomline_link(Minz_Request::param('bottomline_link', false)); + FreshRSS_Context::$conf->_html5_notif_timeout(Minz_Request::param('html5_notif_timeout', 0)); + FreshRSS_Context::$conf->save(); + + Minz_Session::_param('language', FreshRSS_Context::$conf->language); Minz_Translate::reset(); invalidateHttpCache(); @@ -102,27 +102,27 @@ class FreshRSS_configure_Controller extends Minz_ActionController { */ public function readingAction() { if (Minz_Request::isPost()) { - $this->view->conf->_posts_per_page(Minz_Request::param('posts_per_page', 10)); - $this->view->conf->_view_mode(Minz_Request::param('view_mode', 'normal')); - $this->view->conf->_default_view((int)Minz_Request::param('default_view', FreshRSS_Entry::STATE_ALL)); - $this->view->conf->_auto_load_more(Minz_Request::param('auto_load_more', false)); - $this->view->conf->_display_posts(Minz_Request::param('display_posts', false)); - $this->view->conf->_display_categories(Minz_Request::param('display_categories', false)); - $this->view->conf->_hide_read_feeds(Minz_Request::param('hide_read_feeds', false)); - $this->view->conf->_onread_jump_next(Minz_Request::param('onread_jump_next', false)); - $this->view->conf->_lazyload(Minz_Request::param('lazyload', false)); - $this->view->conf->_sticky_post(Minz_Request::param('sticky_post', false)); - $this->view->conf->_reading_confirm(Minz_Request::param('reading_confirm', false)); - $this->view->conf->_sort_order(Minz_Request::param('sort_order', 'DESC')); - $this->view->conf->_mark_when(array( + FreshRSS_Context::$conf->_posts_per_page(Minz_Request::param('posts_per_page', 10)); + FreshRSS_Context::$conf->_view_mode(Minz_Request::param('view_mode', 'normal')); + FreshRSS_Context::$conf->_default_view((int)Minz_Request::param('default_view', FreshRSS_Entry::STATE_ALL)); + FreshRSS_Context::$conf->_auto_load_more(Minz_Request::param('auto_load_more', false)); + FreshRSS_Context::$conf->_display_posts(Minz_Request::param('display_posts', false)); + FreshRSS_Context::$conf->_display_categories(Minz_Request::param('display_categories', false)); + FreshRSS_Context::$conf->_hide_read_feeds(Minz_Request::param('hide_read_feeds', false)); + FreshRSS_Context::$conf->_onread_jump_next(Minz_Request::param('onread_jump_next', false)); + FreshRSS_Context::$conf->_lazyload(Minz_Request::param('lazyload', false)); + FreshRSS_Context::$conf->_sticky_post(Minz_Request::param('sticky_post', false)); + FreshRSS_Context::$conf->_reading_confirm(Minz_Request::param('reading_confirm', false)); + FreshRSS_Context::$conf->_sort_order(Minz_Request::param('sort_order', 'DESC')); + FreshRSS_Context::$conf->_mark_when(array( 'article' => Minz_Request::param('mark_open_article', false), 'site' => Minz_Request::param('mark_open_site', false), 'scroll' => Minz_Request::param('mark_scroll', false), 'reception' => Minz_Request::param('mark_upon_reception', false), )); - $this->view->conf->save(); + FreshRSS_Context::$conf->save(); - Minz_Session::_param('language', $this->view->conf->language); + Minz_Session::_param('language', FreshRSS_Context::$conf->language); Minz_Translate::reset(); invalidateHttpCache(); @@ -143,8 +143,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController { public function sharingAction() { if (Minz_Request::isPost()) { $params = Minz_Request::params(); - $this->view->conf->_sharing($params['share']); - $this->view->conf->save(); + FreshRSS_Context::$conf->_sharing($params['share']); + FreshRSS_Context::$conf->save(); invalidateHttpCache(); Minz_Request::good(_t('configuration_updated'), @@ -185,8 +185,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController { } } - $this->view->conf->_shortcuts($shortcuts_ok); - $this->view->conf->save(); + FreshRSS_Context::$conf->_shortcuts($shortcuts_ok); + FreshRSS_Context::$conf->save(); invalidateHttpCache(); Minz_Request::good(_t('shortcuts_updated'), @@ -213,10 +213,10 @@ class FreshRSS_configure_Controller extends Minz_ActionController { */ public function archivingAction() { if (Minz_Request::isPost()) { - $this->view->conf->_old_entries(Minz_Request::param('old_entries', 3)); - $this->view->conf->_keep_history_default(Minz_Request::param('keep_history_default', 0)); - $this->view->conf->_ttl_default(Minz_Request::param('ttl_default', -2)); - $this->view->conf->save(); + FreshRSS_Context::$conf->_old_entries(Minz_Request::param('old_entries', 3)); + FreshRSS_Context::$conf->_keep_history_default(Minz_Request::param('keep_history_default', 0)); + FreshRSS_Context::$conf->_ttl_default(Minz_Request::param('ttl_default', -2)); + FreshRSS_Context::$conf->save(); invalidateHttpCache(); Minz_Request::good(_t('configuration_updated'), @@ -253,8 +253,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController { $query['name'] = _t('query_number', $key + 1); } } - $this->view->conf->_queries($queries); - $this->view->conf->save(); + FreshRSS_Context::$conf->_queries($queries); + FreshRSS_Context::$conf->save(); Minz_Request::good(_t('configuration_updated'), array('c' => 'configure', 'a' => 'queries')); @@ -262,7 +262,7 @@ class FreshRSS_configure_Controller extends Minz_ActionController { $this->view->query_get = array(); $cat_dao = new FreshRSS_CategoryDAO(); $feed_dao = FreshRSS_Factory::createFeedDao(); - foreach ($this->view->conf->queries as $key => $query) { + foreach (FreshRSS_Context::$conf->queries as $key => $query) { if (!isset($query['get'])) { continue; } @@ -330,7 +330,7 @@ class FreshRSS_configure_Controller extends Minz_ActionController { */ public function addQueryAction() { $whitelist = array('get', 'order', 'name', 'search', 'state'); - $queries = $this->view->conf->queries; + $queries = FreshRSS_Context::$conf->queries; $query = Minz_Request::params(); $query['name'] = _t('query_number', count($queries) + 1); foreach ($query as $key => $value) { @@ -342,8 +342,8 @@ class FreshRSS_configure_Controller extends Minz_ActionController { $query['state'] -= FreshRSS_Entry::STATE_STRICT; } $queries[] = $query; - $this->view->conf->_queries($queries); - $this->view->conf->save(); + FreshRSS_Context::$conf->_queries($queries); + FreshRSS_Context::$conf->save(); Minz_Request::good(_t('query_created', $query['name']), array('c' => 'configure', 'a' => 'queries')); diff --git a/app/Controllers/entryController.php b/app/Controllers/entryController.php index a1dfacb4d..449029648 100755 --- a/app/Controllers/entryController.php +++ b/app/Controllers/entryController.php @@ -21,7 +21,7 @@ class FreshRSS_entry_Controller extends Minz_ActionController { // the end. $this->params = array(); $output = Minz_Request::param('output', ''); - if ($output != '' && $this->view->conf->view_mode !== $output) { + if ($output != '' && FreshRSS_Context::$conf->view_mode !== $output) { $this->params['output'] = $output; } @@ -167,7 +167,7 @@ class FreshRSS_entry_Controller extends Minz_ActionController { public function purgeAction() { @set_time_limit(300); - $nb_month_old = max($this->view->conf->old_entries, 1); + $nb_month_old = max(FreshRSS_Context::$conf->old_entries, 1); $date_min = time() - (3600 * 24 * 30 * $nb_month_old); $feedDAO = FreshRSS_Factory::createFeedDao(); @@ -181,7 +181,7 @@ class FreshRSS_entry_Controller extends Minz_ActionController { if ($feed_history == -2) { // TODO: -2 must be a constant! // -2 means we take the default value from configuration - $feed_history = $this->view->conf->keep_history_default; + $feed_history = FreshRSS_Context::$conf->keep_history_default; } if ($feed_history >= 0) { diff --git a/app/Controllers/feedController.php b/app/Controllers/feedController.php index 2a7238eaf..c2859edf4 100755 --- a/app/Controllers/feedController.php +++ b/app/Controllers/feedController.php @@ -14,7 +14,7 @@ class FreshRSS_feed_Controller extends Minz_ActionController { // Token is useful in the case that anonymous refresh is forbidden // and CRON task cannot be used with php command so the user can // set a CRON task to refresh his feeds by using token inside url - $token = $this->view->conf->token; + $token = FreshRSS_Context::$conf->token; $token_param = Minz_Request::param('token', ''); $token_is_ok = ($token != '' && $token == $token_param); $action = Minz_Request::actionName(); @@ -154,14 +154,14 @@ class FreshRSS_feed_Controller extends Minz_ActionController { $feed->_id($id); $feed->faviconPrepare(); - $is_read = $this->view->conf->mark_when['reception'] ? 1 : 0; + $is_read = FreshRSS_Context::$conf->mark_when['reception'] ? 1 : 0; $entryDAO = FreshRSS_Factory::createEntryDao(); // We want chronological order and SimplePie uses reverse order. $entries = array_reverse($feed->entries()); // Calculate date of oldest entries we accept in DB. - $nb_month_old = $this->view->conf->old_entries; + $nb_month_old = FreshRSS_Context::$conf->old_entries; $date_min = time() - (3600 * 24 * 30 * $nb_month_old); // Use a shared statement and a transaction to improve a LOT the @@ -265,15 +265,15 @@ class FreshRSS_feed_Controller extends Minz_ActionController { $feeds[] = $feed; } } else { - $feeds = $feedDAO->listFeedsOrderUpdate($this->view->conf->ttl_default); + $feeds = $feedDAO->listFeedsOrderUpdate(FreshRSS_Context::$conf->ttl_default); } // Calculate date of oldest entries we accept in DB. - $nb_month_old = max($this->view->conf->old_entries, 1); + $nb_month_old = max(FreshRSS_Context::$conf->old_entries, 1); $date_min = time() - (3600 * 24 * 30 * $nb_month_old); $updated_feeds = 0; - $is_read = $this->view->conf->mark_when['reception'] ? 1 : 0; + $is_read = FreshRSS_Context::$conf->mark_when['reception'] ? 1 : 0; foreach ($feeds as $feed) { if (!$feed->lock()) { Minz_Log::notice('Feed already being actualized: ' . $feed->url()); @@ -294,7 +294,7 @@ class FreshRSS_feed_Controller extends Minz_ActionController { if ($feed_history == -2) { // TODO: -2 must be a constant! // -2 means we take the default value from configuration - $feed_history = $this->view->conf->keep_history_default; + $feed_history = FreshRSS_Context::$conf->keep_history_default; } // We want chronological order and SimplePie uses reverse order. @@ -470,8 +470,8 @@ class FreshRSS_feed_Controller extends Minz_ActionController { // TODO: Delete old favicon // Remove related queries - $this->view->conf->remove_query_by_get('f_' . $id); - $this->view->conf->save(); + FreshRSS_Context::$conf->remove_query_by_get('f_' . $id); + FreshRSS_Context::$conf->save(); Minz_Request::good(_t('feed_deleted'), $redirect_url); } else { diff --git a/app/Controllers/importExportController.php b/app/Controllers/importExportController.php index aaac1b68b..ab277e688 100644 --- a/app/Controllers/importExportController.php +++ b/app/Controllers/importExportController.php @@ -289,7 +289,7 @@ class FreshRSS_importExport_Controller extends Minz_ActionController { return true; } - $is_read = $this->view->conf->mark_when['reception'] ? 1 : 0; + $is_read = FreshRSS_Context::$conf->mark_when['reception'] ? 1 : 0; $google_compliant = strpos($article_object['id'], 'com.google') !== false; @@ -484,7 +484,7 @@ class FreshRSS_importExport_Controller extends Minz_ActionController { $this->view->type = 'feed/' . $feed->id(); $this->view->entries = $this->entryDAO->listWhere( 'f', $feed->id(), FreshRSS_Entry::STATE_ALL, 'ASC', - $this->view->conf->posts_per_page + FreshRSS_Context::$conf->posts_per_page ); $this->view->feed = $feed; } diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php index 5b490e672..f994e257c 100755 --- a/app/Controllers/indexController.php +++ b/app/Controllers/indexController.php @@ -5,7 +5,7 @@ class FreshRSS_index_Controller extends Minz_ActionController { public function indexAction() { $output = Minz_Request::param('output'); - $token = $this->view->conf->token; + $token = FreshRSS_Context::$conf->token; // check if user is logged in if (!FreshRSS_Auth::hasAccess() && !Minz_Configuration::allowAnonymous()) { @@ -76,11 +76,11 @@ class FreshRSS_index_Controller extends Minz_ActionController { ); // On récupère les différents éléments de filtrage - $this->view->state = Minz_Request::param('state', $this->view->conf->default_view); + $this->view->state = Minz_Request::param('state', FreshRSS_Context::$conf->default_view); $state_param = Minz_Request::param('state', null); $filter = Minz_Request::param('search', ''); - $this->view->order = $order = Minz_Request::param('order', $this->view->conf->sort_order); - $nb = Minz_Request::param('nb', $this->view->conf->posts_per_page); + $this->view->order = $order = Minz_Request::param('order', FreshRSS_Context::$conf->sort_order); + $nb = Minz_Request::param('nb', FreshRSS_Context::$conf->posts_per_page); $first = Minz_Request::param('next', ''); $ajax_request = Minz_Request::param('ajax', false); diff --git a/app/Controllers/javascriptController.php b/app/Controllers/javascriptController.php index 14e6f36de..62f413989 100755 --- a/app/Controllers/javascriptController.php +++ b/app/Controllers/javascriptController.php @@ -8,7 +8,7 @@ class FreshRSS_javascript_Controller extends Minz_ActionController { public function actualizeAction() { header('Content-Type: text/javascript; charset=UTF-8'); $feedDAO = FreshRSS_Factory::createFeedDao(); - $this->view->feeds = $feedDAO->listFeedsOrderUpdate($this->view->conf->ttl_default); + $this->view->feeds = $feedDAO->listFeedsOrderUpdate(FreshRSS_Context::$conf->ttl_default); } public function nbUnreadsPerFeedAction() { diff --git a/app/Controllers/userController.php b/app/Controllers/userController.php index d5c90a382..61d33437d 100644 --- a/app/Controllers/userController.php +++ b/app/Controllers/userController.php @@ -42,9 +42,9 @@ class FreshRSS_user_Controller extends Minz_ActionController { $passwordPlain = ''; $passwordHash = preg_replace('/^\$2[xy]\$/', '\$2a\$', $passwordHash); //Compatibility with bcrypt.js $ok &= ($passwordHash != ''); - $this->view->conf->_passwordHash($passwordHash); + FreshRSS_Context::$conf->_passwordHash($passwordHash); } - Minz_Session::_param('passwordHash', $this->view->conf->passwordHash); + Minz_Session::_param('passwordHash', FreshRSS_Context::$conf->passwordHash); $passwordPlain = Minz_Request::param('apiPasswordPlain', '', true); if ($passwordPlain != '') { @@ -55,17 +55,17 @@ class FreshRSS_user_Controller extends Minz_ActionController { $passwordPlain = ''; $passwordHash = preg_replace('/^\$2[xy]\$/', '\$2a\$', $passwordHash); //Compatibility with bcrypt.js $ok &= ($passwordHash != ''); - $this->view->conf->_apiPasswordHash($passwordHash); + FreshRSS_Context::$conf->_apiPasswordHash($passwordHash); } // TODO: why do we need of hasAccess here? if (FreshRSS_Auth::hasAccess('admin')) { - $this->view->conf->_mail_login(Minz_Request::param('mail_login', '', true)); + FreshRSS_Context::$conf->_mail_login(Minz_Request::param('mail_login', '', true)); } - $email = $this->view->conf->mail_login; + $email = FreshRSS_Context::$conf->mail_login; Minz_Session::_param('mail', $email); - $ok &= $this->view->conf->save(); + $ok &= FreshRSS_Context::$conf->save(); if ($email != '') { $personaFile = DATA_PATH . '/persona/' . $email . '.txt'; @@ -113,9 +113,9 @@ class FreshRSS_user_Controller extends Minz_ActionController { $db = Minz_Configuration::dataBase(); require_once(APP_PATH . '/SQL/install.sql.' . $db['type'] . '.php'); - $new_user_language = Minz_Request::param('new_user_language', $this->view->conf->language); - if (!in_array($new_user_language, $this->view->conf->availableLanguages())) { - $new_user_language = $this->view->conf->language; + $new_user_language = Minz_Request::param('new_user_language', FreshRSS_Context::$conf->language); + if (!in_array($new_user_language, FreshRSS_Context::$conf->availableLanguages())) { + $new_user_language = FreshRSS_Context::$conf->language; } $new_user_name = Minz_Request::param('new_user_name'); diff --git a/app/FreshRSS.php b/app/FreshRSS.php index e1399ad78..752b14e31 100644 --- a/app/FreshRSS.php +++ b/app/FreshRSS.php @@ -24,9 +24,7 @@ class FreshRSS extends Minz_FrontController { } // Load context and configuration. - // TODO: remove $this->view->conf variable which is contained in context FreshRSS_Context::init(); - Minz_View::_param('conf', FreshRSS_Context::$conf); $this->loadParamsView(); $this->loadStylesAndScripts(); diff --git a/app/layout/aside_flux.phtml b/app/layout/aside_flux.phtml index a66be2ed9..114ccbf56 100644 --- a/app/layout/aside_flux.phtml +++ b/app/layout/aside_flux.phtml @@ -1,4 +1,4 @@ -
    +
      @@ -17,7 +17,7 @@ 'index', 'a' => 'index', 'params' => array()); - if ($this->conf->view_mode !== Minz_Request::param('output', 'normal')) { + if (FreshRSS_Context::$conf->view_mode !== Minz_Request::param('output', 'normal')) { $arUrl['params']['output'] = 'normal'; } ?> @@ -47,7 +47,7 @@ $c_show = false; if ($this->get_c == $cat->id()) { $c_active = true; - if (!$this->conf->display_categories || $this->get_f) { + if (!FreshRSS_Context::$conf->display_categories || $this->get_f) { $c_show = true; } } @@ -92,7 +92,7 @@
    • - conf->reading_confirm ? 'confirm' : ''; ?> + reading_confirm ? 'confirm' : ''; ?>
    • - conf->queries as $query) { ?> + queries as $query) { ?>
    • - conf->queries) > 0) { ?> + queries) > 0) { ?>
    • @@ -132,7 +132,7 @@ $string_mark = _t('mark_cat_read'); } $nextGet = $get; - if ($this->conf->onread_jump_next && strlen($get) > 2) { + if (FreshRSS_Context::$conf->onread_jump_next && strlen($get) > 2) { $anotherUnreadId = ''; $foundCurrent = false; switch ($get[0]) { @@ -180,7 +180,7 @@ $arUrl = array('c' => 'entry', 'a' => 'read', 'params' => array('get' => $get, 'nextGet' => $nextGet, 'idMax' => $idMax)); $output = Minz_Request::param('output', ''); - if ($output != '' && $this->conf->view_mode !== $output) { + if ($output != '' && FreshRSS_Context::$conf->view_mode !== $output) { $arUrl['params']['output'] = $output; } $markReadUrl = Minz_Url::display($arUrl); @@ -190,7 +190,7 @@ @@ -28,9 +28,9 @@
    @@ -39,9 +39,9 @@
    @@ -49,7 +49,7 @@
    @@ -58,7 +58,7 @@
    @@ -68,7 +68,7 @@
    @@ -78,7 +78,7 @@
    @@ -88,7 +88,7 @@
    @@ -98,7 +98,7 @@
    @@ -108,7 +108,7 @@
    @@ -119,19 +119,19 @@
    @@ -141,7 +141,7 @@
    diff --git a/app/views/configure/sharing.phtml b/app/views/configure/sharing.phtml index 09c1e6f40..ef5e85a0c 100644 --- a/app/views/configure/sharing.phtml +++ b/app/views/configure/sharing.phtml @@ -15,8 +15,8 @@
    '> - conf->sharing as $key => $sharing): ?> - conf->shares[$sharing['type']]; ?> + sharing as $key => $sharing): ?> + shares[$sharing['type']]; ?>
    @@ -49,7 +49,7 @@
    @@ -58,7 +58,7 @@
    @@ -68,7 +68,7 @@
    @@ -78,7 +78,7 @@
    @@ -88,7 +88,7 @@
    @@ -98,7 +98,7 @@
    @@ -108,7 +108,7 @@
    @@ -118,7 +118,7 @@
    @@ -129,19 +129,19 @@
    @@ -151,7 +151,7 @@
    diff --git a/app/views/configure/sharing.phtml b/app/views/configure/sharing.phtml index ffe3c039b..f5c133f07 100644 --- a/app/views/configure/sharing.phtml +++ b/app/views/configure/sharing.phtml @@ -15,8 +15,8 @@
    '> - sharing as $key => $sharing) { ?> - shares[$sharing['type']]; ?> + sharing as $key => $sharing) { ?> + shares[$sharing['type']]; ?>