From a88e61ca1ed1fa1ff145aa1feae10e9529b778bd Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Wed, 10 Apr 2013 21:35:10 +0200 Subject: Màj de la librairie SimplePie, fix bug #48 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/App_FrontController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'app/App_FrontController.php') diff --git a/app/App_FrontController.php b/app/App_FrontController.php index 0ff7bf182..fff238bf2 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -19,7 +19,7 @@ class App_FrontController extends FrontController { private function loadLibs () { require (LIB_PATH . '/lib_phpQuery.php'); require (LIB_PATH . '/lib_rss.php'); - require (LIB_PATH . '/lib_simplepie.php'); + require (LIB_PATH . '/SimplePie_autoloader.php'); require (LIB_PATH . '/lib_text.php'); } -- cgit v1.2.3 From 42100a83223b93060eedc482eda94a890ee01e4a Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Wed, 10 Apr 2013 21:43:53 +0200 Subject: Fix issue #40 : test des erreurs SimplePie --- app/App_FrontController.php | 1 + app/controllers/feedController.php | 7 +++++++ app/models/Exception/FeedException.php | 7 +++++++ app/models/Feed.php | 4 ++++ 4 files changed, 19 insertions(+) create mode 100644 app/models/Exception/FeedException.php (limited to 'app/App_FrontController.php') diff --git a/app/App_FrontController.php b/app/App_FrontController.php index fff238bf2..8a5dcdcba 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -24,6 +24,7 @@ class App_FrontController extends FrontController { } private function loadModels () { + include (APP_PATH . '/models/Exception/FeedException.php'); include (APP_PATH . '/models/RSSConfiguration.php'); include (APP_PATH . '/models/Days.php'); include (APP_PATH . '/models/Category.php'); diff --git a/app/controllers/feedController.php b/app/controllers/feedController.php index 812227f89..c205801af 100755 --- a/app/controllers/feedController.php +++ b/app/controllers/feedController.php @@ -58,6 +58,13 @@ class feedController extends ActionController { ); Session::_param ('notification', $notif); } + } catch (FeedException $e) { + Log::record ($e->getMessage (), Log::ERROR); + $notif = array ( + 'type' => 'bad', + 'content' => 'Un problème interne a été rencontré, le flux n\'a pas pu être ajouté' + ); + Session::_param ('notification', $notif); } catch (FileNotExistException $e) { Log::record ($e->getMessage (), Log::ERROR); // notif diff --git a/app/models/Exception/FeedException.php b/app/models/Exception/FeedException.php new file mode 100644 index 000000000..3fe0f4ea0 --- /dev/null +++ b/app/models/Exception/FeedException.php @@ -0,0 +1,7 @@ +set_cache_location (CACHE_PATH); $feed->init (); + if ($feed->error()) { + throw new FeedException ($feed->error); + } + $subscribe_url = $feed->subscribe_url (); if (!is_null ($subscribe_url) && $subscribe_url != $this->url) { $this->_url ($subscribe_url); -- cgit v1.2.3 From 327b4ed3740db45ae0b52528f5f3fd73e3ec87df Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 11 Apr 2013 21:47:39 +0200 Subject: Séparation du style en deux fichiers pour faciliter la lecture et les mises à jour MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/App_FrontController.php | 3 +- app/controllers/feedController.php | 2 +- public/theme/base.css | 868 ------------------------------------- 3 files changed, 3 insertions(+), 870 deletions(-) delete mode 100644 public/theme/base.css (limited to 'app/App_FrontController.php') diff --git a/app/App_FrontController.php b/app/App_FrontController.php index 8a5dcdcba..1ddbfd89c 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -33,7 +33,8 @@ class App_FrontController extends FrontController { } private function loadStylesAndScripts () { - View::prependStyle (Url::display ('/theme/base.css')); + View::prependStyle (Url::display ('/theme/global.css')); + View::prependStyle (Url::display ('/theme/freshrss.css')); View::appendScript ('https://login.persona.org/include.js'); View::appendScript (Url::display ('/scripts/jquery.js')); View::appendScript (Url::display ('/scripts/notification.js')); diff --git a/app/controllers/feedController.php b/app/controllers/feedController.php index d2a2f29f5..3e6ae4800 100755 --- a/app/controllers/feedController.php +++ b/app/controllers/feedController.php @@ -132,7 +132,7 @@ class feedController extends ActionController { // notif $notif = array ( 'type' => 'good', - 'content' => '10 flux ont été mis à jour' + 'content' => $i . ' flux ont été mis à jour' ); Session::_param ('notification', $notif); diff --git a/public/theme/base.css b/public/theme/base.css deleted file mode 100644 index 98d387150..000000000 --- a/public/theme/base.css +++ /dev/null @@ -1,868 +0,0 @@ -/* FONTS */ -@font-face { - font-family: 'OpenSans'; - src: local('fonts/openSans.woff') format('woff'); -} - - -* { - margin: 0; - padding: 0; -} -html, body { - height: 100%; - font-size: 95%; - font-family: "Cantarell", "Helvetica", "Arial", "sans-serif"; -} - -/* LIENS */ -a { - color: #0062BE; - text-decoration: none; -} - a:hover { - text-decoration: underline; - } - -/* LISTES */ -ul, ol, dl { - margin: 10px 0 10px 30px; - line-height: 190%; -} - dd { - margin: 0 0 10px 30px; - } - -/* TITRES */ -h1, h2, h3 { - min-height: 40px; - margin: 15px 0 5px; - line-height: 40px; -} - -/* IMG */ -img { - max-width: 100%; - vertical-align: middle; -} - a img { - border: none; - } - -/* FORMULAIRES */ -legend { - display: block; - width: 100%; - margin: 20px 0 5px; - padding: 5px 0; - border-bottom: 1px solid #ddd; - font-size: 150%; - clear: both; -} -label { - display: block; - min-height: 25px; - padding: 5px 0; - font-size: 14px; - line-height: 25px; - cursor: pointer; -} -input, select, textarea { - display: inline-block; - min-height: 25px; - padding: 5px; - background: #fdfdfd; - border: 1px solid #bbb; - border-radius: 3px; - color: #666; - line-height: 25px; - vertical-align: middle; - box-shadow: 0 2px 2px #eee inset; -} - input[type="radio"], - input[type="checkbox"] { - width: 15px; - min-height: 15px; - } - input:focus, select:focus, textarea:focus { - color: #0062BE; - border-color: #33BBFF; - box-shadow: 0 2px 2px #DDDDFF inset; - } - -.form-group { - margin: 0; - clear: both; -} - .form-group.form-actions { - min-width: 250px; - padding: 5px 0; - background: #f4f4f4; - border-top: 1px solid #ddd; - } - .form-group.form-actions .btn { - margin: 0 10px; - } - .form-group .group-name { - display: block; - float: left; - width: 200px; - padding: 10px 0; - text-align: right; - } - .form-group .group-controls { - min-width: 250px; - min-height: 25px; - margin: 0 0 0 220px; - padding: 5px 0; - } - .form-group .group-controls .control { - display: block; - min-height: 30px; - padding: 5px 0; - line-height: 25px; - font-size: 14px; - } - -.stick { - display: inline-block; - white-space: nowrap; - font-size: 0px; - vertical-align: middle; -} - .stick input { - border-radius: 0; - font-size: 14px; - } - .stick .btn { - border-radius: 0; - font-size: 14px; - } - .stick .btn:first-child, - .stick input:first-child { - border-radius: 3px 0 0 3px; - } - .stick .btn:last-child, - .stick input:last-child { - border-radius: 0 3px 3px 0; - } - .stick .btn + .btn, - .stick .btn + input, - .stick input + .btn, - .stick input + input { - border-left: none; - } - .stick input + .btn { - border-top: 1px solid #bbb; - } - .stick .btn + .dropdown > .btn { - border-left: none; - border-radius: 0 3px 3px 0; - } - .stick .btn + .dropdown a { - font-size: 12px; - } - -.btn { - display: inline-block; - min-height: 37px; - min-width: 15px; - padding: 5px 10px; - background: #fff; - background: linear-gradient(#fff, #eee); - border-radius: 3px; - border: 1px solid #ddd; - border-bottom: 1px solid #aaa; - border-right: 1px solid #aaa; - color: #666; - text-shadow: 0px -1px 0 #ddd; - line-height: 20px; - vertical-align: middle; - cursor: pointer; -} - a.btn { - min-height: 25px; - line-height: 25px; - } - .btn:hover { - background: #f0f0f0; - background: linear-gradient(#f8f8f8, #f0f0f0); - text-decoration: none; - } - .btn.active, - .btn:active { - box-shadow: 0px 2px 4px #e0e0e0 inset, 0px 1px 2px #fafafa; - background: #eee; - } - - .btn.btn-important { - background: #0084CC; - background: linear-gradient(#0084CC, #0045CC); - color: #fff; - border: 1px solid #0062B7; - text-shadow: 0px -1px 0 #aaa; - } - .btn.btn-important:hover { - background: linear-gradient(#0066CC, #0045CC); - } - .btn.btn-important:active { - background: #0044CB; - box-shadow: none; - } - - .btn.btn-attention { - background: #E95B57; - background: linear-gradient(#E95B57, #BD362F); - color: #fff; - border: 1px solid #C44742; - text-shadow: 0px -1px 0px #666; - } - .btn.btn-attention:hover { - background: linear-gradient(#D14641, #BD362F); - } - .btn.btn-attention:active { - background: #BD362F; - box-shadow: none; - } - -/* NAVIGATION */ -.nav.nav-list .nav-header, -.nav.nav-list .item { - display: block; - height: 35px; - line-height: 35px; -} - .nav.nav-list .item:hover { - background: #fafafa; - } - .nav.nav-list .item:hover a { - color: #003388; - } - .nav.nav-list .item.active { - background: #0062BE; - color: #fff; - } - .nav.nav-list .item.active a { - color: #fff; - } - .nav.nav-list .disable { - color: #aaa; - background: #fafafa; - text-align: center; - } - .nav.nav-list .item > * { - display: block; - padding: 0 10px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - .nav.nav-list a:hover { - text-decoration: none; - } - - .nav.nav-list .nav-header { - padding: 0 10px; - color: #888; - background: #f4f4f4; - border-bottom: 1px solid #ddd; - font-weight: bold; - text-shadow: 0 0 1px #ddd; - } - .nav.nav-list .separator { - display: block; - height: 0; - margin: 5px 0; - border-bottom: 1px solid #ddd; - } - - .nav.nav-list .nav-form { - padding: 3px; - text-align: center; - } - -.nav-head { - display: block; - margin: 0; - background: #fff; - background: linear-gradient(#fff, #f0f0f0); - border-bottom: 1px solid #ddd; - text-align: right; -} - .nav-head .item { - display: inline-block; - padding: 5px 10px; - } - -/* DROPDOWN */ -.dropdown { - position: relative; - display: inline-block; -} - .dropdown .dropdown-target { - display: none; - } - - .dropdown .dropdown-menu { - display: none; - min-width: 200px; - margin: 5px 0 0; - padding: 5px 0; - position: absolute; - right: 0px; - background: #fff; - border: 1px solid #ddd; - border-radius: 5px; - text-align: left; - box-shadow: 3px 3px 3px #ddd; - } - .dropdown .dropdown-menu .dropdown-header { - display: block; - padding: 0 5px; - color: #888; - font-weight: bold; - font-size: 14px; - line-height: 30px; - } - .dropdown .dropdown-menu .item { - display: block; - height: 30px; - font-size: 90%; - line-height: 30px; - } - .dropdown .dropdown-menu .item > * { - display: block; - padding: 0 25px; - line-height: 30px; - } - .dropdown .dropdown-menu .item:hover { - background: #0062BE; - color: #fff; - } - .dropdown .dropdown-menu .item:hover > * { - color: #fff; - text-decoration: none; - } - .dropdown .dropdown-menu .separator { - display: block; - height: 0; - margin: 5px 0; - border-bottom: 1px solid #ddd; - } - .dropdown .dropdown-target:target ~ .dropdown-menu { - display: block; - z-index: 10; - } - .dropdown .dropdown-close { - display: inline-block; - position: absolute; - top: -16px; right: -16px; - width: 16px; - height: 16px; - padding: 5px; - background: #fff; - border-radius: 50px; - border: 1px solid #ddd; - line-height: 16px; - text-align: center; - } - .dropdown .dropdown-close:hover { - background: #f4f4f4; - } - -/* ALERTS */ -.alert { - display: block; - width: 90%; - margin: 15px auto; - padding: 10px 15px; - background: #f4f4f4; - border: 1px solid #ccc; - border-right: 1px solid #aaa; - border-bottom: 1px solid #aaa; - border-radius: 5px; - color: #aaa; - text-shadow: 0 0 1px #eee; - box-shadow: 1px 1px 3px #aaa inset; -} - .alert .alert-head { - margin: 0; - font-weight: bold; - font-size: 110%; - } - -/* ICONES */ -.icon { - display: inline-block; - width: 16px; - height: 16px; - vertical-align: middle; - line-height: 16px; - background: center center no-repeat; -} - .icon.i_refresh { - background-image: url("icons/refresh.svg"); - } - .icon.i_bookmark { - background-image: url("icons/starred.svg"); - } - .icon.i_not_bookmark { - background-image: url("icons/unstarred.svg"); - } - .icon.i_read { - background-image: url("icons/read.svg"); - } - .icon.i_unread { - background-image: url("icons/unread.svg"); - } - .icon.i_all { - background-image: url("icons/all.svg"); - } - .icon.i_close { - background-image: url("icons/close.svg"); - } - .icon.i_search { - background-image: url("icons/search.svg"); - } - .icon.i_configure { - background-image: url("icons/configure.svg"); - } - .icon.i_login { - background-image: url("icons/login.svg"); - } - .icon.i_logout { - background-image: url("icons/logout.svg"); - } - .icon.i_add { - background-image: url("icons/add.svg"); - } - .icon.i_link { - background-image: url("icons/link.svg"); - } - .icon.i_down { - background-image: url("icons/down.svg"); - } - .icon.i_up { - background-image: url("icons/up.svg"); - } - .icon.i_help { - background-image: url("icons/help.svg"); - } - .icon.i_note { - background-image: url("icons/note.svg"); - } - .icon.i_note_empty { - background-image: url("icons/note_empty.svg"); - } - -/* STRUCTURE */ -.header { - display: table; - width: 100%; - background: #f4f4f4; - table-layout: fixed; -} - .header > .item { - display: table-cell; - padding: 10px 0; - border-bottom: 1px solid #aaa; - vertical-align: middle; - text-align: center; - } - .header > .item.title { - width: 250px; - } - .header > .item.title h1 { - margin: 0; - text-shadow: 1px -1px 0 #ccc; - } - .header > .item.title a:hover { - text-decoration: none; - } - .header > .item.search input { - width: 200px; - transition: all 200ms linear; - } - .header .item.search input:focus { - width: 300px; - } - .header > .item.configure { - width: 100px; - } - -#global { - display: table; - width: 100%; - height: 100%; - background: #fafafa; - table-layout: fixed; -} - .aside { - display: table-cell; - height: 100%; - width: 250px; - vertical-align: top; - border-right: 1px solid #aaa; - background: #fff; - } - .aside .nav-form input { - width: 180px; - } - .aside.aside_flux { - padding: 10px 0; - } - .aside.aside_feed .nav-form input { - width: 140px; - } - .aside.aside_feed .nav-form .dropdown .dropdown-menu { - right: -20px; - } - - .nav_menu { - width: 100%; - background: #fafafa; - border-bottom: 1px solid #aaa; - text-align: center; - padding: 5px 0; - } - -.favicon { - width: 16px; -} - -.categories { - margin: 0; - padding: 0; - text-align: center; - list-style: none; -} - .categories .all, - .categories .favorites, - .categories .category { - display: block; - padding: 5px 0; - width: 220px; - margin: 5px auto; - text-align: left; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - .categories .all .btn, - .categories .favorites .btn, - .categories .category .btn:first-child { - width: 195px; - position: relative; - } - .categories .feeds { - width: 220px; - margin: 0 auto; - list-style: none; - } - .categories .feeds .item.active:after { - content: "⇢"; - line-height: 35px; - float: right; - } - .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; - } - .categories .feeds .dropdown .dropdown-menu { - left: 0; - } - .categories .feeds .item .dropdown-toggle i { - background-image: none; - } - .categories .feeds .item .dropdown-target:target ~ .dropdown-toggle i, - .categories .feeds .item:hover .dropdown-toggle i { - background-image: url("icons/configure.svg"); - } - .categories .notRead { - position: absolute; - top: 3px; right: 3px; - padding: 1px 5px; - background: #ccc; - color: #fff; - font-size: 90%; - border: 1px solid #bbb; - border-radius: 5px; - box-shadow: 1px 3px 3px #aaa inset; - text-shadow: 0 0 1px #aaa; - } - -.post { - padding: 10px 50px; -} - .post form { - margin: 10px 0; - } - -.day { - height: 50px; - padding: 0 10px; - font-size: 130%; - font-weight: bold; - line-height: 50px; - background: #fff; - border-top: 1px solid #aaa; - border-bottom: 1px solid #aaa; -} - .day:first-child { - border-top: none; - } - -.flux { - border-left: 10px solid #aaa; - background: #fafafa; -} - .flux:hover { - background: #fff; - } - .flux.active { - border-left: 10px solid #0062BE; - background: #fff; - } - .flux.not_read { - border-left: 10px solid #FF5300; - background: #FFF3ED; - } - .flux.favorite { - border-left: 10px solid #FFC300; - background: #FFF6DA; - } - - .flux_header { - display: table; - table-layout: fixed; - margin: 0; - padding: 0; - width: 100%; - height: 25px; - font-size: 12px; - line-height: 25px; - border-top: 1px solid #ddd; - } - .flux_header .item { - display: table-cell; - vertical-align: middle; - } - .flux_header .item.manage { - width: 90px; - white-space: nowrap; - font-size: 0px; - vertical-align: middle; - text-align: center; - } - .flux_header .item.manage .read { - display: inline-block; - width: 30px; - height: 40px; - background: url("icons/read.svg") center center no-repeat; - vertical-align: middle; - } - .flux_header .item.manage .read:hover { - text-decoration: none; - } - .flux.not_read .flux_header .item.manage .read { - background: url("icons/unread.svg") center center no-repeat; - } - .flux_header .item.manage .bookmark { - display: inline-block; - width: 30px; - height: 40px; - background: url("icons/non-starred.svg") center center no-repeat; - vertical-align: middle; - } - .flux_header .item.manage .bookmark:hover { - text-decoration: none; - } - .flux.favorite .flux_header .item.manage .bookmark { - background: url("icons/starred.svg") center center no-repeat; - } - .flux_header .item.manage .note { - display: inline-block; - width: 30px; - height: 40px; - vertical-align: middle; - line-height: 40px; - font-size: 12px; - } - .flux_header .item.website { - width: 200px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - line-height: 35px; - } - .flux_header .item.website a { - display: block; - padding: 0 5px; - height: 40px; - } - .flux_header .item.title { - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - cursor: pointer; - } - .flux_header .item.title h1 { - font-size: 12px; - margin: 0; - font-weight: normal; - } - .flux.not_read .flux_header .item.title h1 { - font-weight: bold; - } - .flux_header .item.date { - width: 200px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - text-align: right; - font-size: 10px; - color: #666; - cursor: pointer; - } - .flux_header .item.link { - width: 35px; - text-align: center; - } - .flux_header .item.link a { - display: inline-block; - width: 35px; - height: 40px; - background: url("icons/link.svg") center center no-repeat; - vertical-align: middle; - } - .flux_header .item.link a:hover { - text-decoration: none; - } - -.content { - max-width: 550px; - margin: 0 auto; - padding: 10px; - line-height: 170%; - font-family: 'OpenSans'; -} - .content h1, .content h2, .content h3 { - margin: 20px 0 5px; - } - .content p { - margin: 0 0 20px; - } - .content img.big { - display: block; - margin: 10px 0; - width: 100%; - box-shadow: 0 0 5px #000; - border-radius: 5px; - } - .content pre { - width: 90%; - margin: 10px auto; - padding: 10px; - overflow: auto; - background: #666; - border: 1px solid #000; - color: #fafafa; - border-radius: 5px; - } - .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; - } - -/*** PAGINATION ***/ -.pagination { - display: table; - width: 100%; - margin: 0; - background: #fafafa; - text-align: center; - color: #333; - font-size: 80%; - line-height: 200%; - table-layout: fixed; -} - .pagination .item { - display: table-cell; - padding: 5px 10px; - border-top: 1px solid #aaa; - } - .pagination .item a { - color: #333; - font-style: italic; - } - .pagination .pager-previous, .pagination .pager-next { - width: 200px; - } - .pagination .item.pager-current { - font-weight: bold; - } - -/*** NOTIFICATION ***/ -.notification { - position: fixed; - bottom: 0; - left: 5%; right: 5%; - min-height: 30px; - padding: 10px; - line-height: 30px; - text-align: center; - border-radius: 5px 5px 0 0; - box-shadow: 0 0 5px #666; - background: #ddd; - color: #666; - font-weight: bold; -} - .notification.good { - background: #f4f899; - } - .notification.bad { - background: #f4a899; - } - .notification a.close { - display: inline-block; - width: 16px; - height: 16px; - float: right; - margin: -20px -20px 0 0; - padding: 5px; - background: #fff; - border-radius: 50px; - border: 1px solid #aaa; - line-height: 16px; - } - -@media(max-width: 840px) { - .header, - .aside, - .flux_header .item.website span, - .flux_header .item.date { - display: none; - } - .flux_header .item.website { - width: 30px; - text-align: center; - } - .pagination .pager-previous, .pagination .pager-next { - width: 100px; - } -} -- cgit v1.2.3 From 1cc118acdc52895ca500c93b36bbb5cf3a149bc7 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sat, 13 Apr 2013 12:24:14 +0200 Subject: Ajout partage par mail (voir issue #34) + déplacement des options de partage en bas des articles MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/App_FrontController.php | 4 +- app/views/index/index.phtml | 47 +++++++---- app/views/javascript/main.phtml | 6 +- public/theme/freshrss.css | 167 ++++++++++++++++++---------------------- public/theme/global.css | 14 ++++ 5 files changed, 128 insertions(+), 110 deletions(-) (limited to 'app/App_FrontController.php') diff --git a/app/App_FrontController.php b/app/App_FrontController.php index 1ddbfd89c..b7b060418 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -33,8 +33,8 @@ class App_FrontController extends FrontController { } private function loadStylesAndScripts () { - View::prependStyle (Url::display ('/theme/global.css')); - View::prependStyle (Url::display ('/theme/freshrss.css')); + View::appendStyle (Url::display ('/theme/global.css')); + View::appendStyle (Url::display ('/theme/freshrss.css')); View::appendScript ('https://login.persona.org/include.js'); View::appendScript (Url::display ('/scripts/jquery.js')); View::appendScript (Url::display ('/scripts/notification.js')); diff --git a/app/views/index/index.phtml b/app/views/index/index.phtml index 47118264e..f9e953858 100644 --- a/app/views/index/index.phtml +++ b/app/views/index/index.phtml @@ -25,7 +25,7 @@ if (isset ($this->entryPaginator)) {
-
diff --git a/app/views/javascript/main.phtml b/app/views/javascript/main.phtml index 05368683c..e6c882333 100644 --- a/app/views/javascript/main.phtml +++ b/app/views/javascript/main.phtml @@ -26,10 +26,10 @@ function toggleContent (new_active, old_active) { } if (hide_posts) { - old_active.children (".content").toggle (0); + old_active.children (".flux_content").toggle (0); if (old_active[0] != new_active[0]) { - new_active.children (".content").toggle (0, function () { + new_active.children (".flux_content").toggle (0, function () { $("html,body").scrollTop (new_active.position ().top); }); } @@ -127,7 +127,7 @@ function init_posts () { init_img (); if (hide_posts) { - $(".flux:not(.active) .content").hide (); + $(".flux:not(.active) .flux_content").hide (); } $(".flux_header .item.title, .flux_header .item.date").click (function () { diff --git a/public/theme/freshrss.css b/public/theme/freshrss.css index 46b8cb57b..e60310354 100644 --- a/public/theme/freshrss.css +++ b/public/theme/freshrss.css @@ -184,122 +184,103 @@ } .flux_header { - display: table; - table-layout: fixed; - margin: 0; - padding: 0; - width: 100%; height: 25px; font-size: 12px; line-height: 25px; border-top: 1px solid #ddd; } - .flux_header .item { - display: table-cell; - vertical-align: middle; + .flux_header .item.manage { + width: 60px; + white-space: nowrap; + font-size: 0px; + text-align: center; } - .flux_header .item.manage { - width: 90px; - white-space: nowrap; - font-size: 0px; + .flux_header .item.manage .read { + display: inline-block; + width: 30px; + height: 40px; + background: url("icons/read.svg") center center no-repeat; vertical-align: middle; - text-align: center; } - .flux_header .item.manage .read { - display: inline-block; - width: 30px; - height: 40px; - background: url("icons/read.svg") center center no-repeat; - vertical-align: middle; + .flux_header .item.manage .read:hover { + text-decoration: none; } - .flux_header .item.manage .read:hover { - text-decoration: none; - } - .flux.not_read .flux_header .item.manage .read { - background: url("icons/unread.svg") center center no-repeat; - } - .flux_header .item.manage .bookmark { - display: inline-block; - width: 30px; - height: 40px; - background: url("icons/non-starred.svg") center center no-repeat; - vertical-align: middle; + .flux.not_read .flux_header .item.manage .read { + background: url("icons/unread.svg") center center no-repeat; } - .flux_header .item.manage .bookmark:hover { - text-decoration: none; - } - .flux.favorite .flux_header .item.manage .bookmark { - background: url("icons/starred.svg") center center no-repeat; - } - .flux_header .item.manage .note { - display: inline-block; - width: 30px; - height: 40px; - vertical-align: middle; - line-height: 40px; - font-size: 12px; - } - .flux_header .item.website { - width: 200px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - line-height: 40px; + .flux_header .item.manage .bookmark { + display: inline-block; + width: 30px; + height: 40px; + background: url("icons/non-starred.svg") center center no-repeat; + vertical-align: middle; } - .flux_header .item.website a { - display: block; - padding: 0 5px; - height: 40px; + .flux_header .item.manage .bookmark:hover { + text-decoration: none; } - .flux_header .item.title { - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - cursor: pointer; - } - .flux_header .item.title h1 { - font-size: 12px; - margin: 0; - font-weight: normal; + .flux.favorite .flux_header .item.manage .bookmark { + background: url("icons/starred.svg") center center no-repeat; } - .flux.not_read .flux_header .item.title h1 { - font-weight: bold; - } - .flux_header .item.date { - width: 200px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - text-align: right; - font-size: 10px; - color: #666; - cursor: pointer; + .flux_header .item.website { + width: 200px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + line-height: 40px; + } + .flux_header .item.website a { + display: block; + padding: 0 5px; + height: 40px; } - .flux_header .item.link { + .flux_header .item.title { + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + cursor: pointer; + } + .flux.not_read .flux_header .item.title { + font-weight: bold; + } + .flux_header .item.date { + width: 200px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + text-align: right; + font-size: 10px; + color: #666; + cursor: pointer; + } + .flux_header .item.link { + width: 35px; + text-align: center; + } + .flux_header .item.link a { + display: inline-block; width: 35px; - text-align: center; + height: 40px; + background: url("icons/link.svg") center center no-repeat; + vertical-align: middle; } - .flux_header .item.link a { - display: inline-block; - width: 35px; - height: 40px; - background: url("icons/link.svg") center center no-repeat; - vertical-align: middle; + .flux_header .item.link a:hover { + text-decoration: none; } - .flux_header .item.link a:hover { - text-decoration: none; - } .content { max-width: 550px; margin: 0 auto; - padding: 10px; + padding: 20px 10px; line-height: 170%; font-family: 'OpenSans'; } + .content .title { + margin: 0 0 5px; + } .content h1, .content h2, .content h3 { margin: 20px 0 5px; } + .content p { margin: 0 0 20px; } @@ -329,6 +310,11 @@ margin: 0; } +.flux_content .bottom { + font-size: 90%; + text-align: center; +} + /*** PAGINATION ***/ .pagination { display: table; @@ -400,7 +386,8 @@ .aside .btn-important, .aside .feeds .dropdown, .flux_header .item.website span, - .flux_header .item.date { + .flux_header .item.date, + .flux_content .bottom { display: none; } .flux_header .item.website { diff --git a/public/theme/global.css b/public/theme/global.css index 3262036be..f4466cec1 100644 --- a/public/theme/global.css +++ b/public/theme/global.css @@ -69,6 +69,7 @@ label { } input, select, textarea { display: inline-block; + max-width: 100%; min-height: 25px; padding: 5px; background: #fdfdfd; @@ -294,6 +295,19 @@ input, select, textarea { padding: 5px 10px; } +/* HORIZONTAL-LIST */ +.horizontal-list { + display: table; + table-layout: fixed; + margin: 0; + padding: 0; + width: 100%; +} + .horizontal-list .item { + display: table-cell; + vertical-align: middle; + } + /* DROPDOWN */ .dropdown { position: relative; -- cgit v1.2.3 From 650a04458a8733fb776f39bc7016444725b04dff Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sat, 13 Apr 2013 15:58:18 +0200 Subject: On ne récupère plus le script persona si le login n'est pas configuré MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/App_FrontController.php | 29 ++++++++++++++++------------- app/controllers/feedController.php | 5 +++++ 2 files changed, 21 insertions(+), 13 deletions(-) (limited to 'app/App_FrontController.php') diff --git a/app/App_FrontController.php b/app/App_FrontController.php index b7b060418..5a66ae1dd 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -9,20 +9,20 @@ class App_FrontController extends FrontController { public function init () { $this->loadLibs (); $this->loadModels (); - + Session::init (); // lancement de la session doit se faire après chargement des modèles sinon bug (pourquoi ?) $this->loadParamsView (); $this->loadStylesAndScripts (); $this->loadNotifications (); } - + private function loadLibs () { require (LIB_PATH . '/lib_phpQuery.php'); require (LIB_PATH . '/lib_rss.php'); require (LIB_PATH . '/SimplePie_autoloader.php'); require (LIB_PATH . '/lib_text.php'); } - + private function loadModels () { include (APP_PATH . '/models/Exception/FeedException.php'); include (APP_PATH . '/models/RSSConfiguration.php'); @@ -31,22 +31,25 @@ class App_FrontController extends FrontController { include (APP_PATH . '/models/Feed.php'); include (APP_PATH . '/models/Entry.php'); } - + + private function loadParamsView () { + $this->conf = Session::param ('conf', new RSSConfiguration ()); + View::_param ('conf', $this->conf); + + $entryDAO = new EntryDAO (); + View::_param ('nb_not_read', $entryDAO->countNotRead ()); + } + private function loadStylesAndScripts () { View::appendStyle (Url::display ('/theme/global.css')); View::appendStyle (Url::display ('/theme/freshrss.css')); - View::appendScript ('https://login.persona.org/include.js'); + if (login_is_conf ($this->conf)) { + View::appendScript ('https://login.persona.org/include.js'); + } View::appendScript (Url::display ('/scripts/jquery.js')); View::appendScript (Url::display ('/scripts/notification.js')); } - - private function loadParamsView () { - View::_param ('conf', Session::param ('conf', new RSSConfiguration ())); - - $entryDAO = new EntryDAO (); - View::_param ('nb_not_read', $entryDAO->countNotRead ()); - } - + private function loadNotifications () { $notif = Session::param ('notification'); if ($notif) { diff --git a/app/controllers/feedController.php b/app/controllers/feedController.php index 83fc19e20..73921e215 100755 --- a/app/controllers/feedController.php +++ b/app/controllers/feedController.php @@ -161,6 +161,11 @@ class feedController extends ActionController { Session::_param ('notification', $notif); Request::forward (array (), true); } else { + $notif = array ( + 'type' => 'good', + 'content' => 'Les flux ont été mis à jour' + ); + Session::_param ('notification', $notif); $this->view->_useLayout (false); } } -- cgit v1.2.3