From bfeda6810dc3a1991e37cdb8124a007edc3dc33c Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 10 Nov 2013 19:45:48 +0100 Subject: Suppression des warnings liés à filemtime MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ajout de "@" pour éviter les warnings, touch.txt sera créé un peu plus tard --- app/App_FrontController.php | 10 +++++----- app/controllers/indexController.php | 4 ++-- public/index.php | 10 ++++++---- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/app/App_FrontController.php b/app/App_FrontController.php index 82499ada3..5569d73a3 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -54,18 +54,18 @@ class App_FrontController extends FrontController { $theme = RSSThemes::get_infos($this->conf->theme()); if ($theme) { foreach($theme["files"] as $file) { - View::appendStyle (Url::display ('/themes/' . $theme['path'] . '/' . $file . '?' . filemtime(PUBLIC_PATH . '/themes/' . $theme['path'] . '/' . $file))); + View::appendStyle (Url::display ('/themes/' . $theme['path'] . '/' . $file . '?' . @filemtime(PUBLIC_PATH . '/themes/' . $theme['path'] . '/' . $file))); } } - View::appendStyle (Url::display ('/themes/printer/style.css?' . filemtime(PUBLIC_PATH . '/themes/printer/style.css')), 'print'); + View::appendStyle (Url::display ('/themes/printer/style.css?' . @filemtime(PUBLIC_PATH . '/themes/printer/style.css')), 'print'); if (login_is_conf ($this->conf)) { View::appendScript ('https://login.persona.org/include.js'); } - View::appendScript (Url::display ('/scripts/jquery.min.js?' . filemtime(PUBLIC_PATH . '/scripts/jquery.min.js'))); + View::appendScript (Url::display ('/scripts/jquery.min.js?' . @filemtime(PUBLIC_PATH . '/scripts/jquery.min.js'))); if ($this->conf->lazyload () === 'yes' && ($this->conf->displayPosts () === 'yes' || Request::param ('output') === 'reader')) { - View::appendScript (Url::display ('/scripts/jquery.lazyload.min.js?' . filemtime(PUBLIC_PATH . '/scripts/jquery.lazyload.min.js'))); + View::appendScript (Url::display ('/scripts/jquery.lazyload.min.js?' . @filemtime(PUBLIC_PATH . '/scripts/jquery.lazyload.min.js'))); } - View::appendScript (Url::display ('/scripts/main.js?' . filemtime(PUBLIC_PATH . '/scripts/main.js'))); + View::appendScript (Url::display ('/scripts/main.js?' . @filemtime(PUBLIC_PATH . '/scripts/main.js'))); } private function loadNotifications () { diff --git a/app/controllers/indexController.php b/app/controllers/indexController.php index ee40ff9d2..2f86034ee 100755 --- a/app/controllers/indexController.php +++ b/app/controllers/indexController.php @@ -49,10 +49,10 @@ class indexController extends ActionController { Request::_param ('output', $output); } - View::appendScript (Url::display ('/scripts/shortcut.js?' . filemtime(PUBLIC_PATH . '/scripts/shortcut.js'))); + View::appendScript (Url::display ('/scripts/shortcut.js?' . @filemtime(PUBLIC_PATH . '/scripts/shortcut.js'))); if ($output == 'global') { - View::appendScript (Url::display ('/scripts/global_view.js?' . filemtime(PUBLIC_PATH . '/scripts/global_view.js'))); + View::appendScript (Url::display ('/scripts/global_view.js?' . @filemtime(PUBLIC_PATH . '/scripts/global_view.js'))); } } diff --git a/public/index.php b/public/index.php index b5333c5c0..d3b752905 100755 --- a/public/index.php +++ b/public/index.php @@ -30,11 +30,13 @@ if (file_exists (PUBLIC_PATH . '/install.php')) { } else { session_cache_limiter(''); require (LIB_PATH . '/http-conditional.php'); - $dateLastModification = max(filemtime(PUBLIC_PATH . '/data/touch.txt'), + $dateLastModification = max( + @filemtime(PUBLIC_PATH . '/data/touch.txt'), @filemtime(LOG_PATH . '/application.log'), - filemtime(PUBLIC_PATH . '/data/Configuration.array.php'), - filemtime(APP_PATH . '/configuration/application.ini'), - time() - 14400); + @filemtime(PUBLIC_PATH . '/data/Configuration.array.php'), + @filemtime(APP_PATH . '/configuration/application.ini'), + time() - 14400 + ); if (httpConditional($dateLastModification, 0, 0, false, false, true)) { exit(); //No need to send anything } -- cgit v1.2.3 From 5659d2d4e14169e4763e3681fb471b55a1c9948e Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 10 Nov 2013 20:21:45 +0100 Subject: Invalide cache lors d'une optimisation de la BDD MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pour avoir la notification après une optimisation, on doit invalider le cache. Un peu dommage puisque rien de visible n'est changé sinon À voir pour améliorer le système de notification plus tard --- app/controllers/entryController.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/controllers/entryController.php b/app/controllers/entryController.php index 4c9eb9d1b..d4023c519 100755 --- a/app/controllers/entryController.php +++ b/app/controllers/entryController.php @@ -101,6 +101,8 @@ class entryController extends ActionController { $entryDAO = new EntryDAO(); $entryDAO->optimizeTable(); + touch(PUBLIC_PATH . '/data/touch.txt'); + $notif = array ( 'type' => 'good', 'content' => Translate::t ('optimization_complete') -- cgit v1.2.3 From 4fb70875c85f1e16f7b0b5bdc2e1c4c35f1bb453 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 10 Nov 2013 20:29:02 +0100 Subject: CSS : menus de conf à gauche des flux cliquables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/themes/default/freshrss.css | 1 + public/themes/flat-design/freshrss.css | 1 + 2 files changed, 2 insertions(+) diff --git a/public/themes/default/freshrss.css b/public/themes/default/freshrss.css index a3fbb4569..bc6399260 100644 --- a/public/themes/default/freshrss.css +++ b/public/themes/default/freshrss.css @@ -180,6 +180,7 @@ } .categories .feeds .item .dropdown-toggle i { background-image: none; + cursor: pointer; } .categories .feeds .item .dropdown-target:target ~ .dropdown-toggle i, .categories .feeds .item:hover .dropdown-toggle i, diff --git a/public/themes/flat-design/freshrss.css b/public/themes/flat-design/freshrss.css index 01008c0ee..f837f7fe0 100644 --- a/public/themes/flat-design/freshrss.css +++ b/public/themes/flat-design/freshrss.css @@ -165,6 +165,7 @@ body { } .categories .feeds .item .dropdown-toggle i { background-image: none; + cursor: pointer; } .categories .feeds .item .dropdown-target:target ~ .dropdown-toggle i, .categories .feeds .item:hover .dropdown-toggle i, -- cgit v1.2.3 From fb8f51f6f9c5e261291183306894eb922575ec39 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 10 Nov 2013 20:40:48 +0100 Subject: Améliorations vue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Lien vers flux RSS généré déplacé en bas du menu déroulant * Le champs de recherche a été un peu agrandi de façon à voir le placeholder en entier --- app/layout/nav_menu.phtml | 15 ++++++++------- public/themes/default/freshrss.css | 4 ++-- public/themes/flat-design/freshrss.css | 4 ++-- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/app/layout/nav_menu.phtml b/app/layout/nav_menu.phtml index de327f040..3565b21b5 100644 --- a/app/layout/nav_menu.phtml +++ b/app/layout/nav_menu.phtml @@ -121,11 +121,6 @@ -
  • - - - -
  • @@ -148,8 +143,6 @@ -
  • -
  • + +
  • + +
  • + + + +
  • diff --git a/public/themes/default/freshrss.css b/public/themes/default/freshrss.css index bc6399260..a323bf5b4 100644 --- a/public/themes/default/freshrss.css +++ b/public/themes/default/freshrss.css @@ -29,11 +29,11 @@ text-decoration: none; } .header > .item.search input { - width: 200px; + width: 230px; transition: width 200ms linear; } .header .item.search input:focus { - width: 300px; + width: 330px; } .header > .item.configure { width: 100px; diff --git a/public/themes/flat-design/freshrss.css b/public/themes/flat-design/freshrss.css index f837f7fe0..df9a0ed82 100644 --- a/public/themes/flat-design/freshrss.css +++ b/public/themes/flat-design/freshrss.css @@ -32,11 +32,11 @@ body { text-decoration: none; } .header > .item.search input { - width: 200px; + width: 230px; transition: width 200ms linear; } .header .item.search input:focus { - width: 300px; + width: 330px; } .header > .item.configure { width: 100px; -- cgit v1.2.3 From e7fa10dc9de6c136b0f57097c7d9d8b93460c43f Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 10 Nov 2013 20:49:58 +0100 Subject: Notifications devant "boite d'actualisation" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Puisque les notifications peuvent être fermées, autant les mettre devant, ainsi on peut voir les notifications puis l'avancement de l'actualisation des flux Voir issue #196 --- public/themes/default/freshrss.css | 1 + public/themes/flat-design/freshrss.css | 1 + 2 files changed, 2 insertions(+) diff --git a/public/themes/default/freshrss.css b/public/themes/default/freshrss.css index a323bf5b4..34ec1395c 100644 --- a/public/themes/default/freshrss.css +++ b/public/themes/default/freshrss.css @@ -586,6 +586,7 @@ background: #ddd; color: #666; font-weight: bold; + z-index: 10; } .notification.good { background: #f4f899; diff --git a/public/themes/flat-design/freshrss.css b/public/themes/flat-design/freshrss.css index df9a0ed82..23d1d93ea 100644 --- a/public/themes/flat-design/freshrss.css +++ b/public/themes/flat-design/freshrss.css @@ -577,6 +577,7 @@ body { background: #ddd; color: #666; font-weight: bold; + z-index: 10; } .notification.good { background: #1abc9c; -- cgit v1.2.3 From 0c96d3489b3a74e10804206f1be0789fb63a6949 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 10 Nov 2013 22:16:55 +0100 Subject: Mise à jour de la vue globale MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Nombre de non lus mis à jour automatiquement * Mise à jour structure HTML * Mise à jour design --- app/layout/aside_flux.phtml | 4 ++- app/views/helpers/view/global_view.phtml | 18 ++++++------- public/scripts/global_view.js | 4 ++- public/scripts/main.js | 12 ++++++--- public/themes/default/freshrss.css | 36 +++++++++++++++++++------- public/themes/flat-design/freshrss.css | 43 ++++++++++++++++++++++---------- 6 files changed, 78 insertions(+), 39 deletions(-) diff --git a/app/layout/aside_flux.phtml b/app/layout/aside_flux.phtml index e6eb974d2..72de9b6dd 100644 --- a/app/layout/aside_flux.phtml +++ b/app/layout/aside_flux.phtml @@ -35,7 +35,9 @@
  • get_c == $cat->id ()) { $c_active = true; } ?> diff --git a/app/views/helpers/view/global_view.phtml b/app/views/helpers/view/global_view.phtml index fc55ed8ba..ae3bae9bc 100644 --- a/app/views/helpers/view/global_view.phtml +++ b/app/views/helpers/view/global_view.phtml @@ -1,30 +1,26 @@ partial ('nav_menu'); ?> -
    +
    cat_aside as $cat) { $feeds = $cat->feeds (); - $catNotRead = $cat->nbNotRead (); if (!empty ($feeds)) { ?> -
    -
    - - name(), ENT_NOQUOTES, 'UTF-8'); ?> 0 ? ' (' . $catNotRead . ')' : ''; ?> +
    +
      nbNotRead (); ?> -
    • +
    • ✇ - - 0 ? '' : ''; ?> + name(), ENT_NOQUOTES, 'UTF-8'); ?> - 0 ? ' (' . $not_read . ')' : ''; ?> - 0 ? '' : ''; ?>
    • diff --git a/public/scripts/global_view.js b/public/scripts/global_view.js index 2c95bdfb7..94580dc0d 100644 --- a/public/scripts/global_view.js +++ b/public/scripts/global_view.js @@ -35,11 +35,13 @@ function init_close_panel() { init_close_panel(); $("#panel").slideToggle(); $("#overlay").fadeOut(); + + return false; }); } function init_global_view() { - $("#stream .category a").click(function () { + $("#stream .box-category a").click(function () { var link = $(this).attr("href"); load_panel(link); diff --git a/public/scripts/main.js b/public/scripts/main.js index 2f3ed38f1..e0df69f61 100644 --- a/public/scripts/main.js +++ b/public/scripts/main.js @@ -68,15 +68,19 @@ function mark_read(active, only_not_read) { //Update unread: all if (feed_priority > 0) { elem = $('#aside_flux .all').children(':first').get(0); - feed_unread = elem ? (parseInt(elem.getAttribute('data-unread'), 10) || 0) : 0; - elem.setAttribute('data-unread', Math.max(0, feed_unread + inc)); + if (elem) { + feed_unread = elem ? (parseInt(elem.getAttribute('data-unread'), 10) || 0) : 0; + elem.setAttribute('data-unread', Math.max(0, feed_unread + inc)); + } } //Update unread: favourites if (active.closest('div').hasClass('favorite')) { elem = $('#aside_flux .favorites').children(':first').get(0); - feed_unread = elem ? (parseInt(elem.getAttribute('data-unread'), 10) || 0) : 0; - elem.setAttribute('data-unread', Math.max(0, feed_unread + inc)); + if (elem) { + feed_unread = elem ? (parseInt(elem.getAttribute('data-unread'), 10) || 0) : 0; + elem.setAttribute('data-unread', Math.max(0, feed_unread + inc)); + } } //Update unread: title diff --git a/public/themes/default/freshrss.css b/public/themes/default/freshrss.css index 34ec1395c..650f8eef6 100644 --- a/public/themes/default/freshrss.css +++ b/public/themes/default/freshrss.css @@ -100,9 +100,8 @@ } .category { display: block; - padding: 5px 0; width: 220px; - margin: 5px auto; + margin: 10px auto; text-align: left; overflow: hidden; white-space: nowrap; @@ -362,7 +361,7 @@ #stream.global { text-align: center; } - #stream.global .category { + #stream.global .box-category { display: inline-block; width: 280px; margin: 20px 10px; @@ -373,29 +372,48 @@ text-align: left; box-shadow: 0 0 5px #bbb; } - #stream.global .cat_header { + #stream.global .category { + width: 100%; + margin: 0; + } + #stream.global .btn { + display: block; + width: auto; height: 35px; + margin: 0; padding: 0 10px; background: #eee; + border: none; border-bottom: 1px solid #aaa; border-radius: 5px 5px 0 0; line-height: 35px; font-size: 120%; } - #stream.global .cat_header a { - color: #333; - text-shadow: 0 -1px 0px #aaa; + #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: #666; + font-weight: bold; + box-shadow: none; } - #stream.global .category .feeds { + #stream.global .box-category .feeds { + display: block; max-height: 250px; margin: 0; list-style: none; overflow: auto; } - #stream.global .category .feeds .item { + #stream.global .box-category .feeds .item { padding: 2px 10px; font-size: 90%; } + #stream.global .box-category .feed { + width: 220px; + } .content { min-height: 300px; diff --git a/public/themes/flat-design/freshrss.css b/public/themes/flat-design/freshrss.css index 23d1d93ea..9880c830f 100644 --- a/public/themes/flat-design/freshrss.css +++ b/public/themes/flat-design/freshrss.css @@ -94,9 +94,8 @@ body { } .category { display: block; - padding: 5px 0; width: 220px; - margin: 5px auto; + margin: 10px auto; text-align: left; overflow: hidden; white-space: nowrap; @@ -124,7 +123,7 @@ body { display:none; } .categories .feeds { - width: 220px; + width: 100%; margin: 0 auto; list-style: none; } @@ -348,39 +347,57 @@ body { #stream.global { text-align: center; } - #stream.global .category { + #stream.global .box-category { display: inline-block; width: 280px; margin: 20px 10px; vertical-align: top; - border: 1px solid #aaa; + border: 1px solid #ddd; border-radius: 5px; text-align: left; - box-shadow: 0 0 5px #bbb; } - #stream.global .cat_header { + #stream.global .category { + width: 100%; + margin: 0; + } + #stream.global .btn { + display: block; + width: auto; height: 35px; + margin: 0; padding: 0 10px; - background: #eee; - border-bottom: 1px solid #aaa; + background: #ecf0f1; + color: #333; + border-bottom: 1px solid #ddd; border-radius: 5px 5px 0 0; line-height: 35px; font-size: 120%; } - #stream.global .cat_header a { + #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; - text-shadow: 0 -1px 0px #aaa; + font-weight: bold; + box-shadow: none; } - #stream.global .category .feeds { + #stream.global .box-category .feeds { + display: block; max-height: 250px; margin: 0; list-style: none; overflow: auto; } - #stream.global .category .feeds .item { + #stream.global .box-category .feeds .item { padding: 2px 10px; font-size: 90%; } + #stream.global .box-category .feed { + width: 220px; + } .content { min-height: 300px; -- cgit v1.2.3 From 4cdef57989dd4d2ddf1c98a478f7886228b5c47c Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Tue, 12 Nov 2013 19:30:04 +0100 Subject: Logo FreshRSS cliquable --- app/layout/header.phtml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/layout/header.phtml b/app/layout/header.phtml index 10c05b48e..e67f92141 100644 --- a/app/layout/header.phtml +++ b/app/layout/header.phtml @@ -10,8 +10,12 @@
      - -

      +

      + + + + +

      + conf)) { ?> +
    • diff --git a/app/views/index/index.phtml b/app/views/index/index.phtml index 73e5fcc4d..bd18d2d77 100644 --- a/app/views/index/index.phtml +++ b/app/views/index/index.phtml @@ -23,6 +23,7 @@ if(!login_is_conf ($this->conf) ||

      +

      .item.title a:hover { text-decoration: none; diff --git a/public/themes/flat-design/freshrss.css b/public/themes/flat-design/freshrss.css index 32dd72c42..96bb0d455 100644 --- a/public/themes/flat-design/freshrss.css +++ b/public/themes/flat-design/freshrss.css @@ -26,7 +26,6 @@ body { .header > .item.title h1 { display: inline-block; margin: 0; - vertical-align: middle; } .header > .item.title a:hover { text-decoration: none; -- cgit v1.2.3 From 7ebdd4217b0a00f8f74b03436465df122060b01a Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 14 Nov 2013 18:30:05 +0100 Subject: Amélioration design (flat design) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Les articles sans état particulier possèdent désormais eux aussi une bordure de 3px sur la gauche (le rendu n'était pas top au moment de les marquer comme non lus ou favoris par exemple) La ligne indiquant la date a aussi été revue : suppression du background, suppression du border-radius et ajout d'une bordure gauche de 3px --- public/themes/flat-design/freshrss.css | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/public/themes/flat-design/freshrss.css b/public/themes/flat-design/freshrss.css index 96bb0d455..4e643bde1 100644 --- a/public/themes/flat-design/freshrss.css +++ b/public/themes/flat-design/freshrss.css @@ -186,14 +186,11 @@ body { } .day { - display: inline; - min-height: 50px; padding: 5px 15px; font-size: 130%; font-weight: bold; line-height: 50px; - background: #ecf0f1; - border-radius: 0 20px 20px 0; + border-left: 3px solid #ecf0f1; } .day .name { position: absolute; @@ -213,17 +210,18 @@ body { } .flux { + border-left: 3px solid #ecf0f1; } .flux.active { - border-left: 3px solid #3498db; + border-left-color: #3498db; background: #fff; } .flux.not_read { - border-left: 3px solid #FF5300; + border-left-color: #FF5300; background: #FFF3ED; } .flux.favorite { - border-left: 3px solid #FFC300; + border-left-color: #FFC300; background: #FFF6DA; } -- cgit v1.2.3 From a387cc56ffdd169df1f48213f0c509240d6e8752 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Fri, 15 Nov 2013 09:56:01 +0100 Subject: Ajout d'un robots.txt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit À priori l'instance de FreshRSS n'a pas besoin d'être référencé par les moteurs de recherche. Si tel devait être le cas, il est mieux que ce soit fait consciemment par l'utilisateur --- public/robots.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 public/robots.txt diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 000000000..77470cb39 --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: / \ No newline at end of file -- cgit v1.2.3 From 5dfe281d60e21fd59bfa780fad0aa177a8feaf14 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Fri, 15 Nov 2013 14:36:34 +0100 Subject: Supprime le fichier lib_text MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Seule la fonction lazyimg était utilisée, je l'ai déplacée dans lib_rss --- lib/lib_rss.php | 13 ++++++++ lib/lib_text.php | 96 -------------------------------------------------------- 2 files changed, 13 insertions(+), 96 deletions(-) delete mode 100644 lib/lib_text.php diff --git a/lib/lib_rss.php b/lib/lib_rss.php index 7f22c8244..a27994e94 100644 --- a/lib/lib_rss.php +++ b/lib/lib_rss.php @@ -206,3 +206,16 @@ function dowload_favicon ($website, $id) { return $favicon_url; } + +/** + * Add support of image lazy loading + * Move content from src attribute to data-original + * @param content is the text we want to parse + */ +function lazyimg($content) { + return preg_replace( + '//i', + '', + $content + ); +} diff --git a/lib/lib_text.php b/lib/lib_text.php deleted file mode 100644 index 99bac0c36..000000000 --- a/lib/lib_text.php +++ /dev/null @@ -1,96 +0,0 @@ -\\1", - "\\1", - "\\1", - "\\1", - "
      \\1
      ", - "\\1", - "\\1 a écrit
      \\2
      ", - "\\2", - "
      \\2
      ", - "\\1
      ", - "\\1", - "\\2", - "", - "", - "\"\"", - "\"\\1\"", - "\"\\1\"", - ); - - $string = makeLinks(preg_replace ($find, $replace, $string)); - $string = nl2brPlus ($string); - - return $string; -} - -// do nl2br except when in a
       tag
      -function nl2brPlus($string) {
      -	$string = str_replace("\n", "
      ", $string); - if(preg_match_all('/\(.*?)\<\/pre\>/', $string, $match)){ - foreach($match as $a){ - foreach($a as $b){ - $string = str_replace('
      '.$b.'
      ', "
      ".str_replace("
      ", "", $b)."
      ", $string); - } - } - } - return $string; -} - -# Transform URL and e-mails into links -function makeLinks($string) { - $string = preg_replace_callback('/\s(http|https|ftp):(\/\/){0,1}([^\"\s]*)/i','splitUri',$string); - return $string; -} - -# Split links, require for makeLinks -function splitUri($matches) { - $uri = $matches[1].':'.$matches[2].$matches[3]; - $t = parse_url($uri); - $link = $matches[3]; - - if (!empty($t['scheme'])) { - return ' '.$link.''; - } else { - return $uri; - } -} - -// parse la description pour ajouter les liens sur les tags -function parse_tags ($desc) { - $desc_parse = preg_replace ('/#([\w\dÀÇÈÉÊËÎÏÔÙÚÛÜàáâçèéêëîïóùúûü]+)/i', '\\1', $desc); - - return $desc_parse; -} - -function lazyimg($content) { - return preg_replace( - '//i', - '', - $content - ); -} \ No newline at end of file -- cgit v1.2.3 From 982c50939b96e105e0778009adcb73b96579daa3 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Fri, 15 Nov 2013 20:26:52 +0100 Subject: Supprime référence lib_text MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit La 0.6-bêta ne marchait plus suite à https://github.com/marienfressinaud/FreshRSS/commit/5dfe281d60e21fd59bfa780fad0aa177a8feaf14 --- app/App_FrontController.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/App_FrontController.php b/app/App_FrontController.php index 5569d73a3..902ae4613 100644 --- a/app/App_FrontController.php +++ b/app/App_FrontController.php @@ -23,7 +23,6 @@ class App_FrontController extends FrontController { 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 () { -- cgit v1.2.3 From 91622214cd3502716cbb769af7c8e511866c159f Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Fri, 15 Nov 2013 17:23:23 +0100 Subject: Meta robots noindex MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le fichier robots.txt ne suffit pas, par exemple quand FreshRSS n'est pas à la racine d'un domaine. Supplément de https://github.com/marienfressinaud/FreshRSS/commit/54ea52f6c7cb8d6d3bfd810447cd359d64e56ecf --- app/layout/layout.phtml | 1 + 1 file changed, 1 insertion(+) diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index 9d4147887..cc0d44237 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -21,6 +21,7 @@ rss_url)) { ?> + partial ('header'); ?> -- cgit v1.2.3 From eaee810153352680c54ef8755d36d6882a43d32d Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Fri, 15 Nov 2013 21:40:22 +0100 Subject: Ajoute nofollow à la balise robots.txt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Voir 147b3fdda4d95c217ee3923930587d1dc1bd97ee --- app/layout/layout.phtml | 2 +- public/robots.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/layout/layout.phtml b/app/layout/layout.phtml index cc0d44237..bb4a1f7eb 100644 --- a/app/layout/layout.phtml +++ b/app/layout/layout.phtml @@ -21,7 +21,7 @@ rss_url)) { ?> - + partial ('header'); ?> diff --git a/public/robots.txt b/public/robots.txt index 77470cb39..1f53798bb 100644 --- a/public/robots.txt +++ b/public/robots.txt @@ -1,2 +1,2 @@ User-agent: * -Disallow: / \ No newline at end of file +Disallow: / -- cgit v1.2.3 From 6d8e05713a5ef8278fde3748bf2fad1a5223eb46 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Fri, 15 Nov 2013 21:52:21 +0100 Subject: Modification du CHANGELOG MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout des infos pour la 0.6. Sortie notée pour le 2013-11-17 --- CHANGELOG | 15 +++++++++++++++ README.md | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index bc8d800bf..4995e9801 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,4 +1,19 @@ # Changelog +## 2013-11-17 changes with FreshRSS 0.6 + +* Nettoyage du code JavaScript + optimisations +* Utilisation d'adresses relatives +* Amélioration des performances coté client +* Mise à jour automatique du nombre d'articles non lus +* Corrections traductions +* Mise en cache de FreshRSS +* Amélioration des retours utilisateur lorsque la configuration n'est pas bonne +* Actualisation des flux après une importation OPML +* Meilleure prise en charge des flux RSS invalides +* Amélioration de la vue globale +* Possibilité de personnaliser les icônes de lecture +* Correction bugs divers + ## 2013-10-15 changes with FreshRSS 0.5.1 * Correction bug des catégories disparues diff --git a/README.md b/README.md index 45cfa4876..e95f03465 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ FreshRSS est un agrégateur de flux RSS à auto-héberger à l'image de [Selfoss * Démo : http://marienfressinaud.fr/projets/freshrss/ * Développeur : Marien Fressinaud * Version actuelle : 0.6.0-beta -* Date de publication 2013-xx-xx +* Date de publication 2013-11-17 * License AGPL3 ![Logo de FreshRSS](http://marienfressinaud.fr/data/images/freshrss/freshrss_title.png) -- cgit v1.2.3 From e9168f6cd21d7e95aff183f2a503911a1208a0af Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Fri, 15 Nov 2013 22:32:57 +0100 Subject: Suppression du champs "sel" lors de l'installation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Génération d'un sel basé sur le temps à la place. Pas parfait mais sûrement suffisant pour FreshRSS --- public/install.php | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/public/install.php b/public/install.php index 5b0618c37..dba088148 100644 --- a/public/install.php +++ b/public/install.php @@ -137,13 +137,13 @@ function saveLanguage () { } function saveStep2 () { if (!empty ($_POST)) { - if (empty ($_POST['sel']) || - empty ($_POST['title']) || + if (empty ($_POST['title']) || empty ($_POST['old_entries'])) { return false; } - $_SESSION['sel'] = addslashes ($_POST['sel']); + $first_sel = small_hash (time ()); + $_SESSION['sel'] = small_hash (time () . $first_sel) . $first_sel; $_SESSION['base_url'] = addslashes ($_POST['base_url']); $_SESSION['title'] = addslashes ($_POST['title']); $_SESSION['old_entries'] = $_POST['old_entries']; @@ -481,17 +481,11 @@ function printStep2 () {
      -
      - -
      - -
      -
      -