diff options
41 files changed, 1891 insertions, 2620 deletions
diff --git a/.gitignore b/.gitignore index b4853806c..ac3c24319 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ *~ *.DS_Store #* +lib/floIcon.php .idea/* config.php feed-icons/* diff --git a/atom-to-html.xsl b/atom-to-html.xsl index 097b07f55..e1042648c 100644 --- a/atom-to-html.xsl +++ b/atom-to-html.xsl @@ -9,7 +9,7 @@ <html> <head> <title><xsl:value-of select="atom:title"/></title> - <link rel="stylesheet" type="text/css" href="utility.css"/> + <link rel="stylesheet" type="text/css" href="css/utility.css"/> <script language="javascript" src="lib/xsl_mop-up.js"></script> </head> diff --git a/classes/article.php b/classes/article.php index e9f86f298..398132d12 100644 --- a/classes/article.php +++ b/classes/article.php @@ -44,7 +44,7 @@ class Article extends Handler_Protected { } else if ($mode == "raw") { if ($_REQUEST['html']) { header("Content-Type: text/html"); - print '<link rel="stylesheet" type="text/css" href="tt-rss.css"/>'; + print '<link rel="stylesheet" type="text/css" href="css/tt-rss.css"/>'; } $article = format_article($id, false); diff --git a/classes/db/prefs.php b/classes/db/prefs.php index 26fb4666b..3e92bb89b 100644 --- a/classes/db/prefs.php +++ b/classes/db/prefs.php @@ -105,7 +105,7 @@ class Db_Prefs { return $this->convert($value, $type_name); } else { - user_error("Fatal error, unknown preferences key: $pref_name", $die_on_error ? E_USER_ERROR : E_USER_WARNING); + user_error("Fatal error, unknown preferences key: $pref_name (owner: $user_id)", $die_on_error ? E_USER_ERROR : E_USER_WARNING); return null; } } diff --git a/classes/feeditem/atom.php b/classes/feeditem/atom.php index 1cfa4bcc5..489c5b148 100644 --- a/classes/feeditem/atom.php +++ b/classes/feeditem/atom.php @@ -22,8 +22,11 @@ class FeedItem_Atom extends FeedItem_Common { $links = $this->elem->getElementsByTagName("link"); foreach ($links as $link) { - if ($link && $link->hasAttribute("href") && (!$link->hasAttribute("rel") - || $link->getAttribute("rel") == "alternate")) { + if ($link && $link->hasAttribute("href") && + (!$link->hasAttribute("rel") + || $link->getAttribute("rel") == "alternate" + || $link->getAttribute("rel") == "standout")) { + return $link->getAttribute("href"); } } @@ -41,9 +44,8 @@ class FeedItem_Atom extends FeedItem_Common { $content = $this->elem->getElementsByTagName("content")->item(0); if ($content) { - if ($content->hasChildNodes()) { - - if ($content->getElementsByTagName("*")->length > 1) { + if ($content->hasAttribute('type')) { + if ($content->getAttribute('type') == 'xhtml') { return $this->doc->saveXML($content->firstChild->nextSibling); } } @@ -53,11 +55,18 @@ class FeedItem_Atom extends FeedItem_Common { } function get_description() { - $summary = $this->elem->getElementsByTagName("summary")->item(0); + $content = $this->elem->getElementsByTagName("summary")->item(0); - if ($summary) { - return $summary->nodeValue; + if ($content) { + if ($content->hasAttribute('type')) { + if ($content->getAttribute('type') == 'xhtml') { + return $this->doc->saveXML($content->firstChild->nextSibling); + } + } + + return $content->nodeValue; } + } function get_categories() { diff --git a/classes/feeditem/rss.php b/classes/feeditem/rss.php index 2f363b4f6..e09a1fbba 100644 --- a/classes/feeditem/rss.php +++ b/classes/feeditem/rss.php @@ -19,6 +19,24 @@ class FeedItem_RSS extends FeedItem_Common { } function get_link() { + $links = $this->xpath->query("atom:link", $this->elem); + + foreach ($links as $link) { + if ($link && $link->hasAttribute("href") && + (!$link->hasAttribute("rel") + || $link->getAttribute("rel") == "alternate" + || $link->getAttribute("rel") == "standout")) { + + return $link->getAttribute("href"); + } + } + + $link = $this->elem->getElementsByTagName("guid")->item(0); + + if ($link && $link->hasAttributes() && $link->getAttribute("isPermaLink") == "true") { + return $link->nodeValue; + } + $link = $this->elem->getElementsByTagName("link")->item(0); if ($link) { diff --git a/classes/feedparser.php b/classes/feedparser.php index bd67ca39d..d93c575b2 100644 --- a/classes/feedparser.php +++ b/classes/feedparser.php @@ -17,7 +17,22 @@ class FeedParser { libxml_clear_errors(); $this->doc = new DOMDocument(); $this->doc->loadXML($data); - $this->error = $this->format_error(libxml_get_last_error()); + + $error = libxml_get_last_error(); + + if ($error && $error->code == 9) { + libxml_clear_errors(); + + // we might want to try guessing input encoding here too + $data = iconv("UTF-8", "UTF-8//IGNORE", $data); + + $this->doc = new DOMDocument(); + $this->doc->loadXML($data); + + $error = libxml_get_last_error(); + } + + $this->error = $this->format_error($error); libxml_clear_errors(); $this->items = array(); @@ -90,7 +105,6 @@ class FeedParser { break; case $this::FEED_RSS: - $title = $xpath->query("//channel/title")->item(0); if ($title) { @@ -99,8 +113,11 @@ class FeedParser { $link = $xpath->query("//channel/link")->item(0); - if ($link && $link->hasAttributes()) { - $this->link = $link->getAttribute("href"); + if ($link) { + if ($link->getAttribute("href")) + $this->link = $link->getAttribute("href"); + else if ($link->nodeValue) + $this->link = $link->nodeValue; } $articles = $xpath->query("//channel/item"); @@ -182,7 +199,8 @@ class FeedParser { } break; case $this::FEED_RSS: - $links = $this->xpath->query("//channel/link"); + $links = $this->xpath->query("//atom:link"); + foreach ($links as $link) { if (!$rel || $link->hasAttribute('rel') && $link->getAttribute('rel') == $rel) { array_push($rv, $link->getAttribute('href')); diff --git a/classes/handler/public.php b/classes/handler/public.php index 7fa744107..727976a82 100644 --- a/classes/handler/public.php +++ b/classes/handler/public.php @@ -382,7 +382,7 @@ class Handler_Public extends Handler { header('Content-Type: text/html; charset=utf-8'); print "<html><head><title>Tiny Tiny RSS</title>"; - stylesheet_tag("utility.css"); + stylesheet_tag("css/utility.css"); javascript_tag("lib/prototype.js"); javascript_tag("lib/scriptaculous/scriptaculous.js?load=effects,dragdrop,controls"); print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/> @@ -553,7 +553,7 @@ class Handler_Public extends Handler { print "<html> <head> <title>Tiny Tiny RSS</title> - <link rel=\"stylesheet\" type=\"text/css\" href=\"utility.css\"> + <link rel=\"stylesheet\" type=\"text/css\" href=\"css/utility.css\"> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/> </head> <body> @@ -732,10 +732,12 @@ class Handler_Public extends Handler { } function forgotpass() { + startup_gettext(); + header('Content-Type: text/html; charset=utf-8'); print "<html><head><title>Tiny Tiny RSS</title>"; - stylesheet_tag("utility.css"); + stylesheet_tag("css/utility.css"); javascript_tag("lib/prototype.js"); print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/> @@ -825,6 +827,8 @@ class Handler_Public extends Handler { } function dbupdate() { + startup_gettext(); + if (!SINGLE_USER_MODE && $_SESSION["access_level"] < 10) { $_SESSION["login_error_msg"] = __("Your access level is insufficient to run this script."); render_login_form(); @@ -835,7 +839,7 @@ class Handler_Public extends Handler { <head> <title>Database Updater</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> - <link rel="stylesheet" type="text/css" href="utility.css"/> + <link rel="stylesheet" type="text/css" href="css/utility.css"/> </head> <style type="text/css"> span.ok { color : #009000; font-weight : bold; } diff --git a/classes/opml.php b/classes/opml.php index 3f4030dea..b37b72c21 100644 --- a/classes/opml.php +++ b/classes/opml.php @@ -24,7 +24,7 @@ class Opml extends Handler_Protected { print "<html> <head> - <link rel=\"stylesheet\" href=\"utility.css\" type=\"text/css\"> + <link rel=\"stylesheet\" href=\"css/utility.css\" type=\"text/css\"> <title>".__("OPML Utility")."</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/> </head> diff --git a/classes/pluginhost.php b/classes/pluginhost.php index bc5dc96be..53adf01f9 100644 --- a/classes/pluginhost.php +++ b/classes/pluginhost.php @@ -36,6 +36,7 @@ class PluginHost { const HOOK_ARTICLE_LEFT_BUTTON = 19; const HOOK_PREFS_EDIT_FEED = 20; const HOOK_PREFS_SAVE_FEED = 21; + const HOOK_FETCH_FEED = 22; const KIND_ALL = 1; const KIND_SYSTEM = 2; @@ -273,7 +274,8 @@ class PluginHost { if (!isset($this->storage[$plugin])) $this->storage[$plugin] = array(); - $content = $this->dbh->escape_string(serialize($this->storage[$plugin])); + $content = $this->dbh->escape_string(serialize($this->storage[$plugin]), + false); if ($this->dbh->num_rows($result) != 0) { $this->dbh->query("UPDATE ttrss_plugin_storage SET content = '$content' diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php index 425d4b0ac..32071e3b3 100644 --- a/classes/pref/prefs.php +++ b/classes/pref/prefs.php @@ -40,7 +40,7 @@ class Pref_Prefs extends Handler_Protected { "FRESH_ARTICLE_MAX_AGE" => array(__("Maximum age of fresh articles (in hours)"), ""), "HIDE_READ_FEEDS" => array(__("Hide feeds with no unread articles"), ""), "HIDE_READ_SHOWS_SPECIAL" => array(__("Show special feeds when hiding read feeds"), ""), - "LONG_DATE_FORMAT" => array(__("Long date format"), ""), + "LONG_DATE_FORMAT" => array(__("Long date format"), __("The syntax used is identical to the PHP <a href='http://php.net/manual/function.date.php'>date()</a> function.")), "ON_CATCHUP_SHOW_NEXT_FEED" => array(__("On catchup show next feed"), __("Automatically open next feed with unread articles after marking one as read")), "PURGE_OLD_DAYS" => array(__("Purge articles after this number of days (0 - disables)"), ""), "PURGE_UNREAD_ARTICLES" => array(__("Purge unread articles"), ""), @@ -962,7 +962,7 @@ class Pref_Prefs extends Handler_Protected { $value = str_replace("<br/>", "\n", $value); - print_notice(T_sprintf("You can override colors, fonts and layout of your currently selected theme with custom CSS declarations here. <a target=\"_blank\" class=\"visibleLink\" href=\"%s\">This file</a> can be used as a baseline.", "tt-rss.css")); + print_notice(T_sprintf("You can override colors, fonts and layout of your currently selected theme with custom CSS declarations here. <a target=\"_blank\" class=\"visibleLink\" href=\"%s\">This file</a> can be used as a baseline.", "css/tt-rss.css")); print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"op\" value=\"rpc\">"; print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"method\" value=\"setpref\">"; diff --git a/classes/pref/users.php b/classes/pref/users.php index 60059dc8d..914491e4a 100644 --- a/classes/pref/users.php +++ b/classes/pref/users.php @@ -355,6 +355,9 @@ class Pref_Users extends Handler_Protected { <button dojoType=\"dijit.form.Button\" onclick=\"javascript:resetSelectedUserPass()\">". __('Reset password')."</button dojoType=\"dijit.form.Button\">"; + PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, + "hook_prefs_tab_section", "prefUsersToolbar"); + print "</div>"; #toolbar print "</div>"; #pane print "<div id=\"pref-user-content\" dojoType=\"dijit.layout.ContentPane\" region=\"center\">"; diff --git a/config.php-dist b/config.php-dist index 58218bab1..1eb4a13e4 100644 --- a/config.php-dist +++ b/config.php-dist @@ -50,7 +50,10 @@ // ***************************** define('PHP_EXECUTABLE', '/usr/bin/php'); - // Path to PHP executable, used for various command-line tt-rss programs + // Path to PHP *COMMAND LINE* executable, used for various command-line tt-rss programs and + // update daemon. Do not try to use CGI binary here, it won't work. If you see HTTP headers + // being displayed while running tt-rss scripts, then most probably you are using the CGI + // binary. If you are unsure what to put in here, ask your hosting provider. define('LOCK_DIRECTORY', 'lock'); // Directory for lockfiles, must be writable to the user you run @@ -111,9 +114,10 @@ define('SPHINX_SERVER', 'localhost:9312'); // Hostname:port combination for the Sphinx server. - define('SPHINX_INDEX', 'ttrss'); + define('SPHINX_INDEX', 'ttrss, delta'); // Index name in Sphinx configuration. You can specify multiple indexes // as a comma-separated string. + // Example configuration files are available on tt-rss wiki. // *********************************** // *** Self-registrations by users *** @@ -75,10 +75,6 @@ div.cdm.expandable { border-style : solid; } -div.cdm.expandable.active { - box-shadow : inset 0px 0px 3px 0px rgba(0,0,0,0.1); -} - div.cdm.expandable > hr { display : none; } @@ -92,7 +88,12 @@ div.cdm.expandable.Unread { background : white; } +div.cdm.expandable.Selected { + background : #f9fbff; +} + div.cdm.expandable.active { + box-shadow : inset 0px 0px 3px 0px rgba(0,0,0,0.1); border-color : #88b0f0; background : white ! important; } @@ -120,6 +121,9 @@ div.cdm.expanded div.cdmHeader a.title { font-weight : bold; } +div.cdm.expanded.active { + background : white; +} div.cdm.expanded.active div.cdmHeader a.title { color : #4684ff; diff --git a/css/layout.css b/css/layout.css new file mode 100644 index 000000000..3351331c0 --- /dev/null +++ b/css/layout.css @@ -0,0 +1,7 @@ +html, body#ttrssMain, body#ttrssPrefs, #main { + width: 100%; + height: 100%; + border: 0; + padding: 0; + margin: 0; +} diff --git a/prefs.css b/css/prefs.css index 872032666..872032666 100644 --- a/prefs.css +++ b/css/prefs.css diff --git a/tt-rss.css b/css/tt-rss.css index f1459e3c0..53df6ef91 100644 --- a/tt-rss.css +++ b/css/tt-rss.css @@ -7,15 +7,6 @@ body#ttrssMain, body#ttrssPrefs, body#ttrssLogin, body { font-size: 14px; } -html, body#ttrssMain, body#ttrssPrefs, #main { - width: 100%; - height: 100%; - border: 0; - padding: 0; - margin: 0; -} - - body#ttrssPrefs { background-color : #ecf4ff; } @@ -80,7 +71,7 @@ div.articleNote { border-style : solid; border-color : #e7d796; border-width : 1px; - box-shadow : 0px 0px 2px rgba(0,0,0,0.1); + box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); background-color : #fff7d5; color : #9a8c59; } @@ -191,7 +182,7 @@ a:hover { .hl div.hlTitle a { font-weight : bold; - color : #555; + color : #999; } .hl.Unread div.hlTitle a { @@ -204,15 +195,20 @@ a:hover { .hl.active div.hlTitle a { color : #4684ff; + text-shadow : 1px 1px 2px #fff; +} + +.hl.Selected { + background : #f9fbff; } .hl.Grayed { color : #909090; } -#headlines-frame div.hl:nth-child(even) { +/* #headlines-frame div.hl:nth-child(even) { background : #fafafa; -} +} */ #headlines-frame.normal { @@ -367,12 +363,9 @@ div#headlines-toolbar span.r a { } span.contentPreview { - color : #555; + color : #999; font-weight : normal; -} - -span.contentPreview:hover { - color : #4684ff; + text-shadow : 1px 1px 2px #fff; } span.hlLabelRef { @@ -888,6 +881,14 @@ img.feedIcon, img.tinyFeedIcon { display : inline-block; } +.dijitToolbar { + text-shadow : 1px 1px 2px #fff; +} + +.dijitAccordionTitleFocus { + text-shadow : 1px 1px 2px #fff; +} + .dijitDialog .dijitToolbar { border : 1px solid #c0c0c0; } @@ -1101,3 +1102,10 @@ body#ttrssPrefs hr { max-width : 100%; } +.dijitMenuItemLabel { + font-size : 13px; +} + +.dijitTreeRowSelected .dijitTreeLabel { + text-shadow : 1px 1px 2px #fff; +} diff --git a/utility.css b/css/utility.css index ac0180e44..ac0180e44 100644 --- a/utility.css +++ b/css/utility.css diff --git a/include/colors.php b/include/colors.php index 41bf7b819..91eaa2dc2 100644 --- a/include/colors.php +++ b/include/colors.php @@ -1,6 +1,8 @@ <?php -require_once "lib/floIcon.php"; +if (file_exists("lib/floIcon.php")) { + require_once "lib/floIcon.php"; +} function _resolve_htmlcolor($color) { $htmlcolors = array ("aliceblue" => "#f0f8ff", @@ -286,7 +288,8 @@ function hsl2rgb($arr) { $size = @getimagesize($imageFile); - if (!defined('_DISABLE_FLOICON') && strtolower($size['mime']) == 'image/vnd.microsoft.icon') { + if (strtolower($size['mime']) == 'image/vnd.microsoft.icon' && class_exists("floIcon")) { + $ico = new floIcon(); @$ico->readICO($imageFile); diff --git a/include/digest.php b/include/digest.php index 965fd1a79..4427936e5 100644 --- a/include/digest.php +++ b/include/digest.php @@ -26,7 +26,7 @@ while ($line = db_fetch_assoc($result)) { - if (get_pref('DIGEST_ENABLE', $line['id'], false)) { + if (@get_pref('DIGEST_ENABLE', $line['id'], false)) { $preferred_ts = strtotime(get_pref('DIGEST_PREFERRED_TIME', $line['id'], '00:00')); // try to send digests within 2 hours of preferred time diff --git a/include/functions.php b/include/functions.php index 5296f9e61..bad01eb96 100644 --- a/include/functions.php +++ b/include/functions.php @@ -961,23 +961,28 @@ } function file_is_locked($filename) { - if (function_exists('flock')) { - $fp = @fopen(LOCK_DIRECTORY . "/$filename", "r"); - if ($fp) { - if (flock($fp, LOCK_EX | LOCK_NB)) { - flock($fp, LOCK_UN); + if (file_exists(LOCK_DIRECTORY . "/$filename")) { + if (function_exists('flock')) { + $fp = @fopen(LOCK_DIRECTORY . "/$filename", "r"); + if ($fp) { + if (flock($fp, LOCK_EX | LOCK_NB)) { + flock($fp, LOCK_UN); + fclose($fp); + return false; + } fclose($fp); + return true; + } else { return false; } - fclose($fp); - return true; - } else { - return false; } + return true; // consider the file always locked and skip the test + } else { + return false; } - return true; // consider the file always locked and skip the test } + function make_lockfile($filename) { $fp = fopen(LOCK_DIRECTORY . "/$filename", "w"); @@ -1493,11 +1498,13 @@ $owner_uid = $_SESSION["uid"]; - $result = db_query("SELECT id,caption,COUNT(unread) AS unread + $result = db_query("SELECT id,caption,COUNT(u1.unread) AS unread,COUNT(u2.unread) AS total FROM ttrss_labels2 LEFT JOIN ttrss_user_labels2 ON (ttrss_labels2.id = label_id) - LEFT JOIN ttrss_user_entries ON (ref_id = article_id AND unread = true - AND ttrss_user_entries.owner_uid = $owner_uid) + LEFT JOIN ttrss_user_entries AS u1 ON (u1.ref_id = article_id AND u1.unread = true + AND u1.owner_uid = $owner_uid) + LEFT JOIN ttrss_user_entries AS u2 ON (u2.ref_id = article_id AND u2.unread = false + AND u2.owner_uid = $owner_uid) WHERE ttrss_labels2.owner_uid = $owner_uid GROUP BY ttrss_labels2.id, ttrss_labels2.caption"); @@ -1505,17 +1512,12 @@ $id = label_to_feed_id($line["id"]); - $label_name = $line["caption"]; - $count = $line["unread"]; - $cv = array("id" => $id, - "counter" => (int) $count); + "counter" => (int) $line["unread"], + "auxcounter" => (int) $line["total"]); if ($descriptions) - $cv["description"] = $label_name; - -// if (get_pref('EXTENDED_FEEDLIST')) -// $cv["xmsg"] = getFeedArticles($id)." ".__("total"); + $cv["description"] = $line["caption"]; array_push($ret_arr, $cv); } @@ -2334,8 +2336,10 @@ $filter_query_part = filter_to_sql($filter, $owner_uid); // Try to check if SQL regexp implementation chokes on a valid regexp + + $result = db_query("SELECT true AS true_val FROM ttrss_entries, - ttrss_user_entries, ttrss_feeds, ttrss_feed_categories + ttrss_user_entries, ttrss_feeds WHERE $filter_query_part LIMIT 1", false); if ($result) { @@ -3124,7 +3128,7 @@ $rv['content'] .= "<html><head> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/> <title>Tiny Tiny RSS - ".$line["title"]."</title> - <link rel=\"stylesheet\" type=\"text/css\" href=\"tt-rss.css\"> + <link rel=\"stylesheet\" type=\"text/css\" href=\"css/tt-rss.css\"> </head><body id=\"ttrssZoom\">"; } @@ -4167,7 +4171,7 @@ } function calculate_dep_timestamp() { - $files = array_merge(glob("js/*.js"), glob("*.css")); + $files = array_merge(glob("js/*.js"), glob("css/*.css")); $max_ts = -1; diff --git a/include/login_form.php b/include/login_form.php index b7dae1016..891e25e13 100644 --- a/include/login_form.php +++ b/include/login_form.php @@ -1,17 +1,18 @@ +<?php startup_gettext(); ?> <html> <head> <title>Tiny Tiny RSS : Login</title> <link rel="stylesheet" type="text/css" href="lib/dijit/themes/claro/claro.css"/> - <link rel="stylesheet" type="text/css" href="tt-rss.css"> + <link rel="stylesheet" type="text/css" href="css/tt-rss.css"> <link rel="shortcut icon" type="image/png" href="images/favicon.png"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script type="text/javascript" src="lib/dojo/dojo.js"></script> - <script type="text/javascript" src="lib/dijit/dijit.js"></script> <script type="text/javascript" src="lib/dojo/tt-rss-layer.js"></script> <script type="text/javascript" src="lib/prototype.js"></script> <script type="text/javascript" src="js/functions.js"></script> <script type="text/javascript" charset="utf-8" src="errors.php?mode=js"></script> <script type="text/javascript"> + require({cache:{}}); Event.observe(window, 'load', function() { init(); }); @@ -104,20 +105,19 @@ <script type="text/javascript"> function init() { - dojo.require("dijit.form.Button"); - dojo.require("dijit.form.CheckBox"); - dojo.require("dijit.form.Form"); - dojo.require("dijit.form.Select"); - dojo.require("dijit.form.TextBox"); - dojo.require("dijit.form.ValidationTextBox"); - dojo.parser.parse(); + require(['dojo/parser','dijit/form/Button','dijit/form/CheckBox','dijit/form/Form', + 'dijit/form/Select','dijit/form/TextBox','dijit/form/ValidationTextBox'],function(parser){ + parser.parse(); + //show tooltip node only after this widget is instaniated. + dojo.query('div[dojoType="dijit.Tooltip"]').style({ + display:'' + }); + fetchProfiles(); + dijit.byId("bw_limit").attr("checked", getCookie("ttrss_bwlimit") == 'true'); + document.forms.loginForm.login.focus(); + }); - fetchProfiles(); - - dijit.byId("bw_limit").attr("checked", getCookie("ttrss_bwlimit") == 'true'); - - document.forms.loginForm.login.focus(); } function fetchProfiles() { @@ -188,7 +188,6 @@ function bwLimitChange(elem) { value="<?php echo $_SESSION["fake_login"] ?>" /> </div> - <?php if (strpos(PLUGINS, "auth_internal") !== FALSE) { ?> <div class="row"> <label><?php echo __("Password:") ?></label> @@ -196,10 +195,11 @@ function bwLimitChange(elem) { style="width : 220px" class="input" value="<?php echo $_SESSION["fake_password"] ?>"/> <label></label> + <?php if (strpos(PLUGINS, "auth_internal") !== FALSE) { ?> <a class='forgotpass' href="public.php?op=forgotpass"><?php echo __("I forgot my password") ?></a> + <?php } ?> </div> - <?php } ?> <div class="row"> <label><?php echo __("Profile:") ?></label> @@ -217,7 +217,7 @@ function bwLimitChange(elem) { <label id="bw_limit_label" style='display : inline' for="bw_limit"><?php echo __("Use less traffic") ?></label> </div> - <div dojoType="dijit.Tooltip" connectId="bw_limit_label" position="below"> + <div dojoType="dijit.Tooltip" connectId="bw_limit_label" position="below" style="display:none"> <?php echo __("Does not display images in articles, reduces automatic refreshes."); ?> </div> diff --git a/include/rssfuncs.php b/include/rssfuncs.php index 612c914c0..4c3e86123 100644 --- a/include/rssfuncs.php +++ b/include/rssfuncs.php @@ -190,8 +190,7 @@ } // function update_daemon_common // ignore_daemon is not used - function update_rss_feed($feed, $ignore_daemon = false, $no_cache = false, - $override_url = false) { + function update_rss_feed($feed, $ignore_daemon = false, $no_cache = false) { $debug_enabled = defined('DAEMON_EXTENDED_DEBUG') || $_REQUEST['xdebug']; @@ -239,15 +238,20 @@ $feed = db_escape_string($feed); - if ($override_url) $fetch_url = $override_url; - $date_feed_processed = date('Y-m-d H:i'); $cache_filename = CACHE_DIR . "/simplepie/" . sha1($fetch_url) . ".xml"; + $pluginhost = new PluginHost(); + $pluginhost->set_debug($debug_enabled); + $user_plugins = get_pref("_ENABLED_PLUGINS", $owner_uid); + + $pluginhost->load(PLUGINS, PluginHost::KIND_ALL); + $pluginhost->load($user_plugins, PluginHost::KIND_USER, $owner_uid); + $pluginhost->load_data(); + $rss = false; $rss_hash = false; - $cache_timestamp = file_exists($cache_filename) ? filemtime($cache_filename) : 0; $force_refetch = isset($_REQUEST["force_refetch"]); @@ -270,6 +274,10 @@ if (!$rss) { + foreach ($pluginhost->get_hooks(PluginHost::HOOK_FETCH_FEED) as $plugin) { + $feed_data = $plugin->hook_fetch_feed($feed_data, $fetch_url, $owner_uid, $feed); + } + if (!$feed_data) { _debug("fetching [$fetch_url]...", $debug_enabled); _debug("If-Modified-Since: ".gmdate('D, d M Y H:i:s \G\M\T', $last_article_timestamp), $debug_enabled); @@ -291,7 +299,7 @@ _debug("fetch done.", $debug_enabled); - if ($feed_data) { + /* if ($feed_data) { $error = verify_feed_xml($feed_data); if ($error) { @@ -307,7 +315,7 @@ if ($error) $feed_data = ''; } } - } + } */ } if (!$feed_data) { @@ -333,16 +341,8 @@ } } - $pluginhost = new PluginHost(); - $pluginhost->set_debug($debug_enabled); - $user_plugins = get_pref("_ENABLED_PLUGINS", $owner_uid); - - $pluginhost->load(PLUGINS, PluginHost::KIND_ALL); - $pluginhost->load($user_plugins, PluginHost::KIND_USER, $owner_uid); - $pluginhost->load_data(); - foreach ($pluginhost->get_hooks(PluginHost::HOOK_FEED_FETCHED) as $plugin) { - $feed_data = $plugin->hook_feed_fetched($feed_data); + $feed_data = $plugin->hook_feed_fetched($feed_data, $fetch_url, $owner_uid, $feed); } // set last update to now so if anything *simplepie* crashes later we won't be @@ -1349,14 +1349,14 @@ mb_strtolower(strip_tags($title), 'utf-8')); } - function verify_feed_xml($feed_data) { + /* function verify_feed_xml($feed_data) { libxml_use_internal_errors(true); $doc = new DOMDocument(); $doc->loadXML($feed_data); $error = libxml_get_last_error(); libxml_clear_errors(); return $error; - } + } */ function housekeeping_common($debug) { expire_cached_files($debug); diff --git a/include/sanity_check.php b/include/sanity_check.php index b2888b1d7..29e53fa33 100644 --- a/include/sanity_check.php +++ b/include/sanity_check.php @@ -160,7 +160,7 @@ <head> <title>Startup failed</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> - <link rel="stylesheet" type="text/css" href="utility.css"> + <link rel="stylesheet" type="text/css" href="css/utility.css"> </head> <body> <div class="floatingLogo"><img src="images/logo_small.png"></div> @@ -57,13 +57,14 @@ <title>Tiny Tiny RSS</title> <?php stylesheet_tag("lib/dijit/themes/claro/claro.css"); ?> - <?php stylesheet_tag("tt-rss.css"); ?> - <?php stylesheet_tag("cdm.css"); ?> + <?php stylesheet_tag("css/layout.css"); ?> <?php if ($_SESSION["uid"]) { $theme = get_pref( "USER_CSS_THEME", $_SESSION["uid"], false); - if ($theme) { + if ($theme && file_exists("themes/$theme")) { stylesheet_tag("themes/$theme"); + } else { + stylesheet_tag("themes/default.css"); } } ?> diff --git a/install/index.php b/install/index.php index 6cb2ace4f..06f13fe14 100644 --- a/install/index.php +++ b/install/index.php @@ -2,7 +2,7 @@ <head> <title>Tiny Tiny RSS - Installer</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> - <link rel="stylesheet" type="text/css" href="../utility.css"> + <link rel="stylesheet" type="text/css" href="../css/utility.css"> <style type="text/css"> textarea { font-size : 12px; } </style> @@ -191,7 +191,7 @@ if (!$result) { $query = htmlspecialchars($query); if ($die_on_error) { - die("Query <i>$query</i> failed: " . ($link ? mysql_error($link) : "No connection")); + die("Query <i>$query</i> failed: " . ($link ? function_exists("mysqli_connect") ? mysqli_error($link) : mysql_error($link) : "No connection")); } } return $result; diff --git a/js/viewfeed.js b/js/viewfeed.js index dc8d3fe88..b708accfd 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -590,7 +590,7 @@ function moveToPost(mode, noscroll, noexpand) { if (!getInitParam("cdm_expanded")) { - if (!noscroll && article.offsetTop < ctr.scrollTop) { + if (!noscroll && article && article.offsetTop < ctr.scrollTop) { scrollArticle(-ctr.offsetHeight/4); } else { cdmExpandArticle(prev_id, noexpand); @@ -1240,6 +1240,29 @@ function headlines_scroll_handler(e) { unpackVisibleHeadlines(); + // set topmost child in the buffer as active + if (getInitParam("cdm_auto_catchup") == 1) { + var rows = $$("#headlines-frame > div[id*=RROW]"); + + for (var i = 0; i < rows.length; i++) { + var child = rows[i]; + + if ($("headlines-frame").scrollTop < child.offsetTop && + child.offsetTop - $("headlines-frame").scrollTop < 100) { + + if (_active_article_id) { + var row = $("RROW-" + _active_article_id); + if (row) row.removeClassName("active"); + } + + _active_article_id = child.id.replace("RROW-", ""); + showArticleInHeadlines(_active_article_id, true); + updateSelectedPrompt(); + break; + } + } + } + if (!_infscroll_disable) { if ((hsp && e.scrollTop + e.offsetHeight >= hsp.offsetTop - hsp.offsetHeight) || (e.scrollHeight != 0 && @@ -1275,6 +1298,7 @@ function headlines_scroll_handler(e) { //console.log("auto_catchup_batch: " + catchup_id_batch.toString()); } + }); if (catchup_id_batch.length > 0) { @@ -1897,7 +1921,7 @@ function initHeadlinesMenu() { }})); menu.addChild(new dijit.MenuItem({ - label: __("Toggle marked"), + label: __("Toggle starred"), onClick: function(event) { var ids = getSelectedArticleIds2(); // cast to string diff --git a/lib/floIcon.php b/lib/floIcon.php deleted file mode 100644 index 59902b6a4..000000000 --- a/lib/floIcon.php +++ /dev/null @@ -1,849 +0,0 @@ -<?php -/*************************************************************************** - * Original floIcon copyright (C) 2007 by Joshua Hatfield. * - * * - * In order to use any part of this floIcon Class, you must comply with * - * the license in 'license.doc'. In particular, you may not remove this * - * copyright notice. * - * * - * Much time and thought has gone into this software and you are * - * benefitting. We hope that you share your changes too. What goes * - * around, comes around. * - *************************************************************************** - -Version 1.1.1: -Date: 2009-03-16 - -Changes: -I was a little hasty on that last update. A couple new bugs from 1.1.0 have -been fixed. - -Version 1.1.0: -Date: 2009-03-16 - -Changes: -Added Vista support. -Fixed a number of minor bugs. Many thanks to Dvir Berebi for pointing - them out. - -Version 1.0.5: -Date: 2009-03-15 - -Changes: -Fixed bug when operating on low bit count images (1 or 4) with odd dimensions. - -Version 1.0.4: -Date: 2007-05-25 - -Changes: -Made function not break quite so bad when reading a PNG file on a Vista icon. - Now, you shouldn't be loading Vista icons anyways, but since I'm trying to - upgrade to Vista compatible and I need a comparison, I've got to. - -Version 1.0.3: -Date: 2007-05-25 - -Changes: -Okay, this one was just stupid. When adding large image support, I messed up - and when reading, it doubled the image size. Now, it's fixed. -I took the opportunity to also add a dummy AND map for 32 images on those - readers who might be looking for it (though it's not supposed to be used.) - -Version 1.0.2: -Date: 2007-05-24 - -Sorry about two versions so quickly back to back, but something needed to be -done with speed...things were getting too slow. I'm sure you'll be okay. - -Changes: -Told palette determination to stop at 257 colors or is 32 bit because the - palette is not used at that point and gets really slow when it starts - getting into the high numbers, for instance, in photographs or gradient - truecolor images with lots of unique colors. -After experimenting, it appears that Windows XP does in fact support 256x256 - images and larger by setting the entry value to 0 in the 1 byte that holds - that value and storing the true dimentions in the image header later. Of - course, it still doesn't use these images in normal operation. XP will - resize these and use them if no other images are available. -Wrapped main documentation (this) to the 80th column for easier reading. - -Version 1.0.1: -Date: 2007-05-23 - -Thank you everyone for actively using the implementation on my site and -illuminating me very quickly to a number of glaring bugs in this class. - -Changes: -Added version history. -Fixed bug with non-standard sizes in AND map reading AND writing. -Fixed bug with palette images using non-black color in backgrounds. -Fixed bug with height/width reversal reading files. - - -Version 1.0.0: -Date: 2007-05-17 -Original release date. - - -Foreword: -If you are simply in the effort of making an ICO file, may I recommend visiting -my site, http://www.flobi.com/ , and clicking on floIcon. I have a fully -functional implementation (on which the sample.php is based) where you can also -see recent icons submitted by other visitors. No registration required, no -intrusive ads. (As of this writing, there aren't actually any ads at all, I -might add google ads at some point.) - -If you are trying to get an idea of how ICO files, work, may I recommend the -page I used, http://www.daubnet.com/formats/ICO.html . It does not fully cover -icon files, but it does a very good job of what it does. Any additional -information, I will try to post at -http://www.flobi.com/test/floIcon/more_on_icons.php for your convenience. - -If you are trying to get an idea of how image resource files work, I recommend -ANY other class that deals with images. This class essentially plots points on -the image, and that's not perticularly advanced. - -For any purpose, I wish you luck and feel free to contact me with any bugs, -comments, questions, etc. - Flobi - -Summary: -This class parses ICO files. It reads directly from the ICO file, headers -first, so that if you are only retrieving 1 image, the entire ICO file need not -be parsed. It supports merging ICO files. It supports adding PHP image -resources as new images to the file. It has an export capability that can -easily be written to a new (or the same) ICO file for saving ICO files. All -sizes from 1x1 to 255x255 pixels and 1, 4, 8, 24 (plus transparency) and 32 bit -images are supported. Image retrieval by size is supported. - -Included is a fully functional sample that allows users to upload ICO, GIF, -JPEG and PNG files into a session icon file as well as remove images from the -file and download the completed file (sample.php). - -Known Limitations: Does not support Vista icons. Does not support inversion -palette method (because of the limitations of the PHP image resource). - -Addendum on Limitations: -Windows Vista has added support for 256x256 size icons and now stores files as -PNG's. This class is for older ICO files. A new class is currently under -development that supports the new Windows Vista format. - -Palette inversion (my name for this technique) is the technique of using a black -pixel (0, 0, 0) with a 1 "AND" pixel. White pixels with a 1 "AND" show -transparent (or "don't" show). Black pixels with a 1 "AND" show inverted -(sometimes). Because this method isn't uniformly supported or documented and -the PHP image resource doesn't support it, I have decided to not as well. This -does not apply to 32 bit images which include alpha transparency and no AND map. - -Though other functions exist, these are the only ones I believe offer usefulness -to be public. -floIcon public functions: - readICO($file, $offset = 0) - Loads the icon from the specified filepath ($file) starting at the - specified file offset ($offset). This function MERGES the loaded icon - images into the floIcon object. - - formatICO($offset = 0) - Returns the current floIcon object formatted as an .ICO file with the - file offset altered by $offset. If there are too many or too large - images, causing any images saved past the 4,294,967,296th byte, this - will return false. (This is well outside PHP's default memory - allocation.) - - addImage($imageResource, $desiredBitCount = 1, $pngIfWidthExceeds = 48) - Adds an icon image to the icon file based on the passed image resource - ($imageResource). It will automatically determine the bit count, but - can be persuaded to increase that to $desiredBitCount if that value is - greater than the determined bit count. - - NOTE: The image resource is saved by REFERRENCE. So, if you edit it - then call getImage, the resource returned will be the same, editions and - all. Destruction of the resource will cause a new resource to be - created in getImage(). - - getImage($offset) - Returns the php image resource either assigned by addImage or created - dynamically at calltime by the data loaded with readICO(). The offset - specified here ($offset) is the array offset starting at 0 and ending - at countImages(). - - getBestImage($height = 32, $width = 32) - Returns the php images resource of the highest quality image closest to - the size specified. This could be useful when you only want to display - the icon in an icon list with a single representative icon. A resized - copy of the highest quality available image will be returned if there is - no 32 or 24 bit icon present at the speficied dimentions. - - sortImagesBySize() - Sorts the $this->images array by order of size, smallest to largest. - This is the optimal sorting for icon files. - - countImages() - Returns a count of how many images are present in the current floIcon - object. - -floIcon public variables: - $images - Contains a numerically indexed array of floIconImage objects. - $updated - True if an image has been added since load or last formatICO, otherwise - false. - -floIconImage public functions: - getHeader() - Returns an associative array containing the information from the ICO - image header. - - getEntry() - Returns an associative array containing the information from the ICO - entry header. - - NOTE: If this icon image was created by php image resource, this may not - have accurate information until saving from floIcon with the formatICO() - function. Specifically, offset information will be inaccurate. - - getImageResource() - Returns a php image resource. Same as floIcon's getImage() function. - - setImageResource($imageResource, $desiredBitCount = 1, $pngIfWidthExceeds = 48) - Changes this icon image based on the passed image resource - ($imageResource). It will automatically determine the bit count, but can - be persuaded to increase that to $desiredBitCount if that value is - greater than the determined bit count. - - NOTE: The image resource is saved by REFERRENCE. So, if you edit it - then call getImageResource, the resource returned will be the same, - editions and all. Destruction of the resource will cause a new resource - to be created in getImageResource(). - - dealocateResource() - This destroys the image resource variable, freeing up memory. The image - will automatically be recreated when getImageResource is executed. -*/ -class floIcon { - /* - * $images is an associative array of offset integer => floIconImage object - */ - var $images; // Array of floIconImage objects. - var $updated = false; - function floIcon() { - $this->images = array(); - } - function countImages() { - return count($this->images); - } - function getBestImage($height = 32, $width = 32) { - $best = false; - $bestEntry = array(); - $secondBest = false; - $secondBestEntry = array(); - foreach ($this->images as $key => $image) { - $entry = $image->getEntry(); - $header = $image->getHeader(); - if (!@$entry["BitCount"]) { - $entry["BitCount"] = $header["BitCount"]; - } - if ($entry["Height"] == $height && $entry["Width"] == $width && $entry["BitCount"] == 32) { - return $image->getImageResource(); - } elseif ($entry["Height"] == $height && $entry["Width"] == $width && $entry["BitCount"] > min(4, @$bestEntry["BitCount"])) { - $best = $image; - $bestEntry = $entry; - } elseif ( - !$secondBest or - $entry["Height"] >= $secondBestEntry["Height"] && - $entry["Width"] >= $secondBestEntry["Width"] && - $secondBestEntry["BitCount"] >= $secondBestEntry["BitCount"] and - ( - $entry["Height"] <= 64 && $entry["Height"] > $secondBestEntry["Height"] and - $entry["Height"] > 64 && $entry["Height"] < $secondBestEntry["Height"] - ) || - ( - $entry["Width"] <= 64 && $entry["Width"] > $secondBestEntry["Width"] and - $entry["Width"] > 64 && $entry["Width"] < $secondBestEntry["Width"] - ) || - $secondBestEntry["BitCount"] > $secondBestEntry["BitCount"] - ) { - $secondBest = $image; - $secondBestEntry = $entry; - } - } - if ($best) { - return $best->getImageResource(); - } elseif ($secondBest) { - if ($secondBestEntry["Width"] != $width || $secondBestEntry["Height"] != $height) { - $imageResource = $secondBest->getImageResource(); - $newImageResource = imagecreatetruecolor($width, $height); - imagesavealpha($newImageResource, true); - imagealphablending($newImageResource, false); - imagecopyresampled($newImageResource, $imageResource, 0, 0, 0, 0, $width, $height, $secondBestEntry["Width"], $secondBestEntry["Height"]); - $this->addImage($newImageResource, 32); - return $newImageResource; - } else { - return $secondBest->getImageResource(); - } - } - } - /* - * readICO merges the icon images from the file to the current list - */ - function readICO($file, $offset = 0) { - if (file_exists($file) && filesize($file) > 0 && $filePointer = fopen($file, "r")) { - fseek($filePointer, $offset); - $header = unpack("SReserved/SType/SCount", fread($filePointer, 6)); - for ($t = 0; $t < $header["Count"]; $t++) { - $newImage = new floIconImage(); - if ($newImage->readImageFromICO($filePointer, 6 + ($t * 16))) { - $this->images[] = $newImage; - } - } - fclose($filePointer); - } - } - function sortImagesBySize() { - usort($this->images, array("floIcon", "_cmpObj")); - } - function formatICO($offset = 0) { - $this->updated = false; - $output = ""; - $output .= pack("SSS", 0, 1, count($this->images)); - $output_images = ""; - foreach ($this->images as $image) { - $newImageOffset = $offset + // Whatever offset we've been given. - 6 // Header. - + (count($this->images) * 16) // Entries. - + strlen($output_images); - if ($newImageOffset > pow(256, 4) /* 4 bytes available for position */ ) { - return false; - } - $output .= $image->formatEntryForIco($newImageOffset); // The images already in there. - $output_images .= $image->formatImageForIco(); - } - return $output.$output_images; - } - function _cmpObj($a, $b) { - $aSize = $a->getSize(); - $bSize = $b->getSize(); - if ($aSize == $bSize) { - return 0; - } - return ($aSize > $bSize)?1:-1; - } - - function addImage($imageResource, $desiredBitCount = 1, $pngIfWidthExceeds = 48) { - $this->updated = true; - $newImage = new floIconImage(); - $newImage->setImageResource($imageResource, $desiredBitCount, $pngIfWidthExceeds); - $this->images[] = $newImage; - } - function getImage($offset) { - if (isset($this->images[$offset])) { - return $this->images[$offset]->getImageResource(); - } else { - return false; - } - } - /* - * getSize computes the - */ - function getSize() { - // Compute headers. - $computedSize = 6; // Always 6 bytes. - // Add image entry headers - $computedSize += count($this->images) * 16; // Entry headers are always 16 bytes. - foreach ($this->images as $image) { - $computedSize += $image->getSize() + $image->getHeaderSize(); // getSize does not include the header. - } - } -} -class floIconImage { - var $_imageResource = null; - var $_entry = ""; - var $_entryIconFormat = ""; - var $_header = ""; - var $_headerIconFormat = ""; - var $_imageIconFormat = ""; // Includes palette and mask. - function formatEntryForIco($offset) { - // Format the entry, this has to be done here because we need the offset to get the full information. - $this->_entry["FileOffset"] = $offset; - $this->_entryIconFormat = pack("CCCCSSLL", - $this->_entry["Width"]>=256?0:$this->_entry["Width"], - $this->_entry["Height"]>=256?0:$this->_entry["Height"], - $this->_entry["ColorCount"], - $this->_entry["Reserved"], - $this->_entry["Planes"], - $this->_entry["BitCount"], - $this->_entry["SizeInBytes"], - $this->_entry["FileOffset"] - ); - return $this->_entryIconFormat; - } - function formatImageForIco() { - // Format the entry, this has to be done here because we need the offset to get the full information. - return ($this->_headerIconFormat.$this->_imageIconFormat); - } - - // Will move $bitCount UP to $desiredBitCount if $bitCount is found to be less than it. - function setImageResource($imageResource, $desiredBitCount = 1, $pngIfWidthExceeds = 48) { - imagesavealpha($imageResource, true); - imagealphablending($imageResource, false); - $height = imagesy($imageResource); - $width = imagesx($imageResource); - - // Parse resource to determine header and icon format - - // Find Palette information - $is_32bit = false; // Start with an assumption and get proven wrong. - $hasTransparency = 0; - $blackColor = false; - $bitCount = 0; - $realPalette = array(); - $realIndexPalette = array(); - for ($x = 0; $x < $width && !$is_32bit; $x++) { - for ($y = 0; $y < $height && !$is_32bit; $y++) { - $colorIndex = imagecolorat($imageResource, $x, $y); - $color = imagecolorsforindex($imageResource, $colorIndex); - if ($color["alpha"] == 0) { - // No point continuing if there's more than 256 colors or it's 32bit. - if (count($realPalette) < 257 && !$is_32bit) { - $inRealPalette = false; - foreach($realPalette as $realPaletteKey => $realPaletteColor) { - if ( - $color["red"] == $realPaletteColor["red"] and - $color["green"] == $realPaletteColor["green"] and - $color["blue"] == $realPaletteColor["blue"] - ) { - $inRealPalette = $realPaletteKey; - break; - } - } - if ($inRealPalette === false) { - $realIndexPalette[$colorIndex] = count($realPalette); - if ( - $blackColor === false and - $color["red"] == 0 and - $color["green"] == 0 and - $color["blue"] == 0 - ) { - $blackColor = count($realPalette); - } - $realPalette[] = $color; - } else { - $realIndexPalette[$colorIndex] = $inRealPalette; - } - } - } else { - $hasTransparency = 1; - } - if ($color["alpha"] != 0 && $color["alpha"] != 127) { - $is_32bit = true; - } - } - } - if ($is_32bit) { - $colorCount = 0; - $bitCount = 32; - } else { - if ($hasTransparency && $blackColor === false) { - // We need a black color to facilitate transparency. Unfortunately, this can - // increase the palette size by 1 if there's no other black color. - $blackColor = count($realPalette); - $color = array( - "red" => 0, - "blue" => 0, - "green" => 0, - "alpha" => 0 - ); - $realPalette[] = $color; - } - $colorCount = count($realPalette); - if ($colorCount > 256 || $colorCount == 0) { - $bitCount = 24; - } elseif ($colorCount > 16) { - $bitCount = 8; - // 8 bit - } elseif ($colorCount > 2) { - $bitCount = 4; - // 4 bit - } else { - $bitCount = 1; - // 1 bit - } - if ($desiredBitCount > $bitCount) { - $bitCount = $desiredBitCount; - } - switch ($bitCount) { - case 24: - $colorCount = 0; - break; - case 8: - $colorCount = 256; - break; - case 4: - $colorCount = 16; - break; - case 1: - $colorCount = 2; - break; - } - } - // Create $this->_imageIconFormat... - $this->_imageIconFormat = ""; - if ($bitCount < 24) { - $iconPalette = array(); - // Save Palette - foreach ($realIndexPalette as $colorIndex => $paletteIndex) { - $color = $realPalette[$paletteIndex]; - $this->_imageIconFormat .= pack("CCCC", $color["blue"], $color["green"], $color["red"], 0); - } - while (strlen($this->_imageIconFormat) < $colorCount * 4) { - $this->_imageIconFormat .= pack("CCCC", 0, 0, 0, 0); - } - // Save Each Pixel as Palette Entry - $byte = 0; // For $bitCount < 8 math - $bitPosition = 0; // For $bitCount < 8 math - for ($y = 0; $y < $height; $y++) { - for ($x = 0; $x < $width; $x++) { - $color = imagecolorat($imageResource, $x, $height-$y-1); - if (isset($realIndexPalette[$color])) { - $color = $realIndexPalette[$color]; - } else { - $color = $blackColor; - } - - if ($bitCount < 8) { - $bitPosition += $bitCount; - $colorAdjusted = $color * pow(2, 8 - $bitPosition); - $byte += $colorAdjusted; - if ($bitPosition == 8) { - $this->_imageIconFormat .= chr($byte); - $bitPosition = 0; - $byte = 0; - } - } else { - $this->_imageIconFormat .= chr($color); - } - } - // Each row ends with dumping the remaining bits and filling up to the 32bit line with 0's. - if ($bitPosition) { - $this->_imageIconFormat .= chr($byte); - $bitPosition = 0; - $byte = 0; - } - if (strlen($this->_imageIconFormat)%4) $this->_imageIconFormat .= str_repeat(chr(0), 4-(strlen($this->_imageIconFormat)%4)); - } - } else { - // Save each pixel. - for ($y = 0; $y < $height; $y++) { - for ($x = 0; $x < $width; $x++) { - $color = imagecolorat($imageResource, $x, $height-$y-1); - $color = imagecolorsforindex($imageResource, $color); - if ($bitCount == 24) { - if ($color["alpha"]) { - $this->_imageIconFormat .= pack("CCC", 0, 0, 0); - } else { - $this->_imageIconFormat .= pack("CCC", $color["blue"], $color["green"], $color["red"]); - } - } else { - $color["alpha"] = round((127-$color["alpha"]) / 127 * 255); - $this->_imageIconFormat .= pack("CCCC", $color["blue"], $color["green"], $color["red"], $color["alpha"]); - } - } - if (strlen($this->_imageIconFormat)%4) $this->_imageIconFormat .= str_repeat(chr(0), 4-(strlen($this->_imageIconFormat)%4)); - } - } - // save AND map (transparency) - $byte = 0; // For $bitCount < 8 math - $bitPosition = 0; // For $bitCount < 8 math - for ($y = 0; $y < $height; $y++) { - for ($x = 0; $x < $width; $x++) { - if ($bitCount < 32) { - $color = imagecolorat($imageResource, $x, $height-$y-1); - $color = imagecolorsforindex($imageResource, $color); - $color = $color["alpha"] == 127?1:0; - } else { - $color = 0; - } - - $bitPosition += 1; - $colorAdjusted = $color * pow(2, 8 - $bitPosition); - $byte += $colorAdjusted; - if ($bitPosition == 8) { - $this->_imageIconFormat .= chr($byte); - $bitPosition = 0; - $byte = 0; - } - } - // Each row ends with dumping the remaining bits and filling up to the 32bit line with 0's. - if ($bitPosition) { - $this->_imageIconFormat .= chr($byte); - $bitPosition = 0; // For $bitCount < 8 math - $byte = 0; - } - while (strlen($this->_imageIconFormat)%4) { - $this->_imageIconFormat .= chr(0); - } - } - if ($colorCount >= 256) { - $colorCount = 0; - } - // Create header information... - $this->_header = array( - "Size" => 40, - "Width" => $width, - "Height" => $height*2, - "Planes" => 1, - "BitCount" => $bitCount, - "Compression" => 0, - "ImageSize" => strlen($this->_imageIconFormat), - "XpixelsPerM" => 0, - "YpixelsPerM" => 0, - "ColorsUsed" => $colorCount, - "ColorsImportant" => 0, - ); - $this->_headerIconFormat = pack("LLLSSLLLLLL", - $this->_header["Size"], - $this->_header["Width"], - $this->_header["Height"], - - $this->_header["Planes"], - $this->_header["BitCount"], - - $this->_header["Compression"], - $this->_header["ImageSize"], - $this->_header["XpixelsPerM"], - $this->_header["YpixelsPerM"], - $this->_header["ColorsUsed"], - $this->_header["ColorsImportant"] - ); - $this->_entry = array( - "Width" => $width, - "Height" => $height, - "ColorCount" => $colorCount, - "Reserved" => 0, - "Planes" => 1, - "BitCount" => $bitCount, - "SizeInBytes" => $this->_header["Size"] + $this->_header["ImageSize"], - "FileOffset" => -1, - ); - $this->_entryIconFormat = ""; // This won't get set until it's needed with the offset. - $this->_imageResource = $imageResource; - - // Make png if width exceeds limit for old ico style - if ($width > $pngIfWidthExceeds) { - // I wish there were a better way to get the info than this. If anyone needs a version that doesn't use OB, I can have one that creates a TMP file. - ob_start(); - imagepng($imageResource); - $imageAsPng = ob_get_contents(); - ob_end_clean(); - $this->_headerIconFormat = ""; - $this->_imageIconFormat = $imageAsPng; - } - - - } - function _createImageResource() { - if ($newImage = @imagecreatefromstring($this->_headerIconFormat.$this->_imageIconFormat)) { - // Vista supports PNG. - $this->_headerIconFormat = ""; - $this->_imageIconFormat = $this->_headerIconFormat.$this->_imageIconFormat; - imagesavealpha($newImage, true); - imagealphablending($newImage, false); - $this->_imageResource = $newImage; - } elseif ($this->_entry["Height"] <= 1024 && $this->_entry["Width"] <= 1024) { - $newImage = imagecreatetruecolor($this->_entry["Width"], $this->_entry["Height"]); - imagesavealpha($newImage, true); - imagealphablending($newImage, false); - $readPosition = 0; - $palette = array(); - if ($this->_header["BitCount"] < 24) { - // Read Palette for low bitcounts - $colorsInPalette = $this->_header["ColorsUsed"]?$this->_header["ColorsUsed"]:$this->_entry["ColorCount"]; - for ($t = 0; $t < pow(2, $this->_header["BitCount"]); $t++) { - $blue = ord($this->_imageIconFormat[$readPosition++]); - $green = ord($this->_imageIconFormat[$readPosition++]); - $red = ord($this->_imageIconFormat[$readPosition++]); - $readPosition++; // Unused "Reserved" value. - $existingPaletteEntry = imagecolorexactalpha($newImage, $red, $green, $blue, 0); - if ($existingPaletteEntry >= 0) { - $palette[] = $existingPaletteEntry; - } else { - $palette[] = imagecolorallocatealpha($newImage, $red, $green, $blue, 0); - } - } - // XOR - for ($y = 0; $y < $this->_entry["Height"]; $y++) { - $colors = array(); - for ($x = 0; $x < $this->_entry["Width"]; $x++) { - if ($this->_header["BitCount"] < 8) { - $color = array_shift($colors); - if (is_null($color)) { - $byte = ord($this->_imageIconFormat[$readPosition++]); - $tmp_color = 0; - for ($t = 7; $t >= 0; $t--) { - $bit_value = pow(2, $t); - $bit = floor($byte / $bit_value); - $byte = $byte - ($bit * $bit_value); - $tmp_color += $bit * pow(2, $t%$this->_header["BitCount"]); - if ($t%$this->_header["BitCount"] == 0) { - array_push($colors, $tmp_color); - $tmp_color = 0; - } - } - $color = array_shift($colors); - } - } else { - $color = ord($this->_imageIconFormat[$readPosition++]); - } - imagesetpixel($newImage, $x, $this->_entry["Height"]-$y-1, $palette[$color]) or die("can't set pixel"); - } - // All rows end on the 32 bit - if ($readPosition%4) $readPosition += 4-($readPosition%4); - } - } else { - // BitCount >= 24, No Palette. - // marking position because some icons mark all pixels transparent when using an AND map. - $markPosition = $readPosition; - $retry = true; - $ignoreAlpha = false; - while ($retry) { - $alphas = array(); - $retry = false; - for ($y = 0; $y < $this->_entry["Height"] and !$retry; $y++) { - for ($x = 0; $x < $this->_entry["Width"] and !$retry; $x++) { - $blue = ord($this->_imageIconFormat[$readPosition++]); - $green = ord($this->_imageIconFormat[$readPosition++]); - $red = ord($this->_imageIconFormat[$readPosition++]); - if ($this->_header["BitCount"] < 32) { - $alpha = 0; - } elseif($ignoreAlpha) { - $alpha = 0; - $readPosition++; - } else { - $alpha = ord($this->_imageIconFormat[$readPosition++]); - $alphas[$alpha] = $alpha; - $alpha = 127-round($alpha/255*127); - } - $paletteEntry = imagecolorexactalpha($newImage, $red, $green, $blue, $alpha); - if ($paletteEntry < 0) { - $paletteEntry = imagecolorallocatealpha($newImage, $red, $green, $blue, $alpha); - } - imagesetpixel($newImage, $x, $this->_entry["Height"]-$y-1, $paletteEntry) or die("can't set pixel"); - } - if ($readPosition%4) $readPosition += 4-($readPosition%4); - } - if ($this->_header["BitCount"] == 32 && isset($alphas[0]) && count($alphas) == 1) { - $retry = true; - $readPosition = $markPosition; - $ignoreAlpha = true; - } - } - - } - // AND map - if ($this->_header["BitCount"] < 32 || $ignoreAlpha) { - // Bitcount == 32, No AND (if using alpha). - $palette[-1] = imagecolorallocatealpha($newImage, 0, 0, 0, 127); - imagecolortransparent($newImage, $palette[-1]); - for ($y = 0; $y < $this->_entry["Height"]; $y++) { - $colors = array(); - for ($x = 0; $x < $this->_entry["Width"]; $x++) { - $color = array_shift($colors); - if (is_null($color)) { - $byte = ord($this->_imageIconFormat[$readPosition++]); - $tmp_color = 0; - for ($t = 7; $t >= 0; $t--) { - $bit_value = pow(2, $t); - $bit = floor($byte / $bit_value); - $byte = $byte - ($bit * $bit_value); - array_push($colors, $bit); - } - $color = array_shift($colors); - } - if ($color) { - imagesetpixel($newImage, $x, $this->_entry["Height"]-$y-1, $palette[-1]) or die("can't set pixel"); - } - } - // All rows end on the 32 bit. - if ($readPosition%4) $readPosition += 4-($readPosition%4); - } - } - if ($this->_header["BitCount"] < 24) { - imagetruecolortopalette($newImage, true, pow(2, $this->_header["BitCount"])); - } - } - $this->_imageResource = $newImage; - } - // this function expects that $_entry, $_header and $_imageIconFormat have already been read, specifically from readImageFromICO. - // Don't call this function except from there. - function readImageFromICO($filePointer, $entryOffset) { - $tmpPosition = ftell($filePointer); // So any other applications won't loose their position. - // Get the entry. - fseek($filePointer, $entryOffset); - $this->_entryIconFormat = fread($filePointer, 16); - $this->_entry = unpack("CWidth/CHeight/CColorCount/CReserved/SPlanes/SBitCount/LSizeInBytes/LFileOffset", $this->_entryIconFormat); - - if ($this->_entry["SizeInBytes"] > 16384) - return false; - - // Position the file pointer. - fseek($filePointer, $this->_entry["FileOffset"]); - - // Get the header. - $this->_headerIconFormat = fread($filePointer, 40); - $this->_header = unpack("LSize/LWidth/LHeight/SPlanes/SBitCount/LCompression/LImageSize/LXpixelsPerM/LYpixelsPerM/LColorsUsed/LColorsImportant", $this->_headerIconFormat); - - // Get the image. - $this->_imageIconFormat = @fread($filePointer, $this->_entry["SizeInBytes"] - strlen($this->_headerIconFormat)); - fseek($filePointer, $tmpPosition); // So any other applications won't loose their position. - - if ($newImage = @imagecreatefromstring($this->_headerIconFormat.$this->_imageIconFormat)) { - // This is a PNG, the supposed header information is useless. - $this->_header = array ( - "Size" => 0, - "Width" => imagesx($newImage), - "Height" => imagesy($newImage) * 2, - "Planes" => 0, - "BitCount" => 32, - "Compression" => 0, - "ImageSize" => strlen($this->_imageIconFormat), - "XpixelsPerM" => 0, - "YpixelsPerM" => 0, - "ColorsUsed" => 0, - "ColorsImportant" => 0, - ); - imagedestroy($newImage); - } - - // Support for larger images requires entry marked as 0. - if ($this->_entry["Width"] == 0) { - $this->_entry["Width"] = $this->_header["Width"]; - } - if ($this->_entry["Height"] == 0) { - $this->_entry["Height"] = $this->_header["Height"]/2; - } - - return true; - } - function getHeader() { - return $this->_header; - } - function getEntry() { - return $this->_entry; - } - function floIconImage() { - } - function getHeaderSize() { - return strlen($this->_headerIconFormat); - } - function getSize() { - return strlen($this->_imageIconFormat); - } - function getImageResource() { - if (!$this->_imageResource) $this->_createImageResource(); - return $this->_imageResource; - } - function dealocateResource() { - @imagedestroy($this->_imageResource); - $this->_imageResource = null; - } -} -?> diff --git a/locale/fr_FR/LC_MESSAGES/messages.mo b/locale/fr_FR/LC_MESSAGES/messages.mo Binary files differindex c23fc175d..3cb27eba0 100644 --- a/locale/fr_FR/LC_MESSAGES/messages.mo +++ b/locale/fr_FR/LC_MESSAGES/messages.mo diff --git a/locale/fr_FR/LC_MESSAGES/messages.po b/locale/fr_FR/LC_MESSAGES/messages.po index be05561c4..27610fdcd 100644 --- a/locale/fr_FR/LC_MESSAGES/messages.po +++ b/locale/fr_FR/LC_MESSAGES/messages.po @@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: Tiny Tiny RSS\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2013-05-15 09:45+0400\n" -"PO-Revision-Date: 2013-05-01 11:51+0100\n" +"PO-Revision-Date: 2013-05-24 09:49+0100\n" "Last-Translator: Raphael Rochet <[email protected]>\n" "Language-Team: French\n" "Language: fr_FR\n" @@ -54,49 +54,39 @@ msgstr "Au bout de 3 mois" msgid "Default interval" msgstr "Fréquence de mise à jour par défaut" -#: backend.php:83 -#: backend.php:93 +#: backend.php:83 backend.php:93 msgid "Disable updates" msgstr "Désactiver les mises à jour" -#: backend.php:84 -#: backend.php:94 +#: backend.php:84 backend.php:94 msgid "Each 15 minutes" msgstr "Toutes les 15 minutes" -#: backend.php:85 -#: backend.php:95 +#: backend.php:85 backend.php:95 msgid "Each 30 minutes" msgstr "Toutes les 30 minutes" -#: backend.php:86 -#: backend.php:96 +#: backend.php:86 backend.php:96 msgid "Hourly" msgstr "Toutes les heures" -#: backend.php:87 -#: backend.php:97 +#: backend.php:87 backend.php:97 msgid "Each 4 hours" msgstr "Toutes les 4 heures" -#: backend.php:88 -#: backend.php:98 +#: backend.php:88 backend.php:98 msgid "Each 12 hours" msgstr "Toutes les 12 heures" -#: backend.php:89 -#: backend.php:99 +#: backend.php:89 backend.php:99 msgid "Daily" msgstr "Une fois par jour" -#: backend.php:90 -#: backend.php:100 +#: backend.php:90 backend.php:100 msgid "Weekly" msgstr "Une fois par semaine" -#: backend.php:103 -#: classes/pref/users.php:119 -#: classes/pref/system.php:51 +#: backend.php:103 classes/pref/users.php:119 classes/pref/system.php:51 msgid "User" msgstr "Utilisateur" @@ -109,12 +99,22 @@ msgid "Administrator" msgstr "Administrateur" #: errors.php:9 -msgid "This program requires XmlHttpRequest to function properly. Your browser doesn't seem to support it." -msgstr "Ce programme nécessite l'utilisation de XmlHttpRequest pour fonctionner correctement. Votre navigateur web semble ne pas intégrer cette fonctionnalité." +msgid "" +"This program requires XmlHttpRequest to function properly. Your browser " +"doesn't seem to support it." +msgstr "" +"Ce programme nécessite l'utilisation de XmlHttpRequest pour fonctionner " +"correctement. Votre navigateur web semble ne pas intégrer cette " +"fonctionnalité." #: errors.php:12 -msgid "This program requires cookies to function properly. Your browser doesn't seem to support them." -msgstr "Ce programme nécessite l'utilisation de cookies pour fonctionner correctement. Votre navigateur web semble ne pas intégrer cette fonctionnalité." +msgid "" +"This program requires cookies to function properly. Your browser doesn't " +"seem to support them." +msgstr "" +"Ce programme nécessite l'utilisation de cookies pour fonctionner " +"correctement. Votre navigateur web semble ne pas intégrer cette " +"fonctionnalité." #: errors.php:15 msgid "Backend sanity check failed." @@ -125,8 +125,12 @@ msgid "Frontend sanity check failed." msgstr "Le test de l'interface a échoué." #: errors.php:19 -msgid "Incorrect database schema version. <a href='db-updater.php'>Please update</a>." -msgstr "Version non valable pour le schéma de la base de données. <a href='db-updater.php'>Veuillez le mettre à jour</a>." +msgid "" +"Incorrect database schema version. <a href='db-updater.php'>Please " +"update</a>." +msgstr "" +"Version non valable pour le schéma de la base de données. <a href='db-" +"updater.php'>Veuillez le mettre à jour</a>." #: errors.php:21 msgid "Request not authorized." @@ -137,58 +141,47 @@ msgid "No operation to perform." msgstr "Aucune opération à effectuer." #: errors.php:25 -msgid "Could not display feed: query failed. Please check label match syntax or local configuration." -msgstr "Impossible d'afficher le flux : la requête n'a pas abouti. Veuillez vérifier la syntaxe de correspondance d'étiquette ou la configuration locale." +msgid "" +"Could not display feed: query failed. Please check label match syntax or " +"local configuration." +msgstr "" +"Impossible d'afficher le flux : la requête n'a pas abouti. Veuillez vérifier " +"la syntaxe de correspondance d'étiquette ou la configuration locale." #: errors.php:27 msgid "Denied. Your access level is insufficient to access this page." -msgstr "Accès refusé. Vous n'avez pas les permissions nécessaires pour accéder à cette page." +msgstr "" +"Accès refusé. Vous n'avez pas les permissions nécessaires pour accéder à " +"cette page." #: errors.php:29 msgid "Configuration check failed" msgstr "Échec du test de configuration" #: errors.php:31 -msgid "Your version of MySQL is not currently supported. Please see official site for more information." -msgstr "Votre version de MySQL n'est pas supportée actuellement. Veuillez consulter le site officiel pour plus d'informations." +msgid "" +"Your version of MySQL is not currently supported. Please see official site " +"for more information." +msgstr "" +"Votre version de MySQL n'est pas supportée actuellement. Veuillez consulter " +"le site officiel pour plus d'informations." #: errors.php:35 msgid "SQL escaping test failed, check your database and PHP configuration" -msgstr "Le test d'échappement SQL a échoué, veuillez vérifier votre configuration de base de données et de PHP" - -#: index.php:128 -#: index.php:145 -#: index.php:265 -#: prefs.php:97 -#: classes/backend.php:5 -#: classes/pref/labels.php:296 -#: classes/pref/filters.php:678 -#: classes/pref/feeds.php:1372 -#: js/feedlist.js:128 -#: js/feedlist.js:441 -#: js/functions.js:446 -#: js/functions.js:784 -#: js/functions.js:1194 -#: js/functions.js:1330 -#: js/functions.js:1642 -#: js/prefs.js:86 -#: js/prefs.js:576 -#: js/prefs.js:666 -#: js/prefs.js:867 -#: js/prefs.js:1454 -#: js/prefs.js:1507 -#: js/prefs.js:1566 -#: js/prefs.js:1583 -#: js/prefs.js:1599 -#: js/prefs.js:1619 -#: js/prefs.js:1792 -#: js/prefs.js:1808 -#: js/prefs.js:1826 -#: js/tt-rss.js:507 -#: js/tt-rss.js:524 -#: js/viewfeed.js:821 -#: js/viewfeed.js:1250 -#: plugins/import_export/import_export.js:17 +msgstr "" +"Le test d'échappement SQL a échoué, veuillez vérifier votre configuration de " +"base de données et de PHP" + +#: index.php:128 index.php:145 index.php:265 prefs.php:97 +#: classes/backend.php:5 classes/pref/labels.php:296 +#: classes/pref/filters.php:678 classes/pref/feeds.php:1372 js/feedlist.js:128 +#: js/feedlist.js:441 js/functions.js:446 js/functions.js:784 +#: js/functions.js:1194 js/functions.js:1330 js/functions.js:1642 +#: js/prefs.js:86 js/prefs.js:576 js/prefs.js:666 js/prefs.js:867 +#: js/prefs.js:1454 js/prefs.js:1507 js/prefs.js:1566 js/prefs.js:1583 +#: js/prefs.js:1599 js/prefs.js:1619 js/prefs.js:1792 js/prefs.js:1808 +#: js/prefs.js:1826 js/tt-rss.js:507 js/tt-rss.js:524 js/viewfeed.js:821 +#: js/viewfeed.js:1250 plugins/import_export/import_export.js:17 #: plugins/updater/updater.js:17 msgid "Loading, please wait..." msgstr "Chargement en cours, veuillez patienter..." @@ -209,21 +202,15 @@ msgstr "Adaptatif" msgid "All Articles" msgstr "Tous les articles" -#: index.php:167 -#: include/functions.php:2008 -#: classes/feeds.php:98 +#: index.php:167 include/functions.php:2008 classes/feeds.php:98 msgid "Starred" msgstr "Remarquables" -#: index.php:168 -#: include/functions.php:2009 -#: classes/feeds.php:99 +#: index.php:168 include/functions.php:2009 classes/feeds.php:99 msgid "Published" msgstr "Publiés" -#: index.php:169 -#: classes/feeds.php:85 -#: classes/feeds.php:97 +#: index.php:169 classes/feeds.php:85 classes/feeds.php:97 msgid "Unread" msgstr "Non lus" @@ -259,12 +246,8 @@ msgstr "Les plus anciens en premier" msgid "Title" msgstr "Titre" -#: index.php:185 -#: index.php:233 -#: include/functions.php:1998 -#: classes/feeds.php:103 -#: classes/feeds.php:424 -#: js/FeedTree.js:128 +#: index.php:185 index.php:233 include/functions.php:1998 +#: classes/feeds.php:103 classes/feeds.php:424 js/FeedTree.js:128 #: js/FeedTree.js:156 msgid "Mark as read" msgstr "Marquer comme lu" @@ -305,8 +288,7 @@ msgstr "Rechercher..." msgid "Feed actions:" msgstr "Actions sur ce flux :" -#: index.php:228 -#: classes/handler/public.php:562 +#: index.php:228 classes/handler/public.php:562 msgid "Subscribe to feed..." msgstr "S'abonner au flux..." @@ -318,9 +300,7 @@ msgstr "Modifier ce flux..." msgid "Rescore feed" msgstr "Recalculer le score du flux" -#: index.php:231 -#: classes/pref/feeds.php:746 -#: classes/pref/feeds.php:1327 +#: index.php:231 classes/pref/feeds.php:746 classes/pref/feeds.php:1327 #: js/PrefFeedTree.js:73 msgid "Unsubscribe" msgstr "Se désabonner" @@ -337,8 +317,7 @@ msgstr "Masquer/afficher les flux lus" msgid "Other actions:" msgstr "Autres actions :" -#: index.php:236 -#: include/functions.php:1984 +#: index.php:236 include/functions.php:1984 msgid "Toggle widescreen mode" msgstr "Basculer le mode écran large" @@ -362,9 +341,7 @@ msgstr "Aide sur les raccourcis clavier" msgid "Logout" msgstr "Déconnexion" -#: prefs.php:33 -#: prefs.php:115 -#: include/functions.php:2011 +#: prefs.php:33 prefs.php:115 include/functions.php:2011 #: classes/pref/prefs.php:440 msgid "Preferences" msgstr "Configuration" @@ -377,21 +354,16 @@ msgstr "Raccourcis clavier" msgid "Exit preferences" msgstr "Quitter la configuration" -#: prefs.php:118 -#: classes/pref/feeds.php:106 -#: classes/pref/feeds.php:1253 +#: prefs.php:118 classes/pref/feeds.php:106 classes/pref/feeds.php:1253 #: classes/pref/feeds.php:1316 msgid "Feeds" msgstr "Flux" -#: prefs.php:121 -#: classes/pref/filters.php:154 +#: prefs.php:121 classes/pref/filters.php:154 msgid "Filters" msgstr "Filtres" -#: prefs.php:124 -#: include/functions.php:1176 -#: include/functions.php:1832 +#: prefs.php:124 include/functions.php:1176 include/functions.php:1832 #: classes/pref/labels.php:90 msgid "Labels" msgstr "Etiquettes" @@ -404,36 +376,33 @@ msgstr "Utilisateurs" msgid "System" msgstr "Système" -#: register.php:184 -#: include/login_form.php:238 +#: register.php:184 include/login_form.php:238 msgid "Create new account" msgstr "Créer un nouveau compte" #: register.php:190 msgid "New user registrations are administratively disabled." -msgstr "L'inscription de nouveaux utilisateurs est désactivée par l'administrateur." - -#: register.php:194 -#: register.php:239 -#: register.php:252 -#: register.php:267 -#: register.php:286 -#: register.php:334 -#: register.php:344 -#: register.php:356 -#: classes/handler/public.php:632 -#: classes/handler/public.php:723 -#: classes/handler/public.php:805 -#: classes/handler/public.php:880 -#: classes/handler/public.php:894 -#: classes/handler/public.php:901 +msgstr "" +"L'inscription de nouveaux utilisateurs est désactivée par l'administrateur." + +#: register.php:194 register.php:239 register.php:252 register.php:267 +#: register.php:286 register.php:334 register.php:344 register.php:356 +#: classes/handler/public.php:632 classes/handler/public.php:723 +#: classes/handler/public.php:805 classes/handler/public.php:880 +#: classes/handler/public.php:894 classes/handler/public.php:901 #: classes/handler/public.php:926 msgid "Return to Tiny Tiny RSS" msgstr "Revenir à Tiny Tiny RSS" #: register.php:215 -msgid "Your temporary password will be sent to the specified email. Accounts, which were not logged in once, are erased automatically 24 hours after temporary password is sent." -msgstr "Votre mot de passe temporaire va être envoyé à l'adresse mail indiquée. Les comptes ne s'étant pas connectés au moins une fois dans les 24 heures qui suivent l'envoi du mail seront supprimés." +msgid "" +"Your temporary password will be sent to the specified email. Accounts, which " +"were not logged in once, are erased automatically 24 hours after temporary " +"password is sent." +msgstr "" +"Votre mot de passe temporaire va être envoyé à l'adresse mail indiquée. Les " +"comptes ne s'étant pas connectés au moins une fois dans les 24 heures qui " +"suivent l'envoi du mail seront supprimés." #: register.php:221 msgid "Desired login:" @@ -443,13 +412,11 @@ msgstr "Identifiant souhaité :" msgid "Check availability" msgstr "Vérifier la disponibilité" -#: register.php:226 -#: classes/handler/public.php:763 +#: register.php:226 classes/handler/public.php:763 msgid "Email:" msgstr "Adresse mail :" -#: register.php:229 -#: classes/handler/public.php:768 +#: register.php:229 classes/handler/public.php:768 msgid "How much is two plus two:" msgstr "Combien font 2 plus 2 :" @@ -481,13 +448,9 @@ msgstr "L'inscription de nouveaux utilisateurs est actuellement fermée." msgid "Tiny Tiny RSS data update script." msgstr "Script de mise à jour des données de Tiny Tiny RSS." -#: include/digest.php:109 -#: include/functions.php:1185 -#: include/functions.php:1733 -#: include/functions.php:1818 -#: include/functions.php:1840 -#: classes/opml.php:416 -#: classes/pref/feeds.php:218 +#: include/digest.php:109 include/functions.php:1185 +#: include/functions.php:1733 include/functions.php:1818 +#: include/functions.php:1840 classes/opml.php:416 classes/pref/feeds.php:218 msgid "Uncategorized" msgstr "Sans catégorie" @@ -502,13 +465,11 @@ msgstr[1] "%d articles archivés" msgid "No feeds found." msgstr "Aucun flux trouvé." -#: include/functions.php:1174 -#: include/functions.php:1830 +#: include/functions.php:1174 include/functions.php:1830 msgid "Special" msgstr "Spécial" -#: include/functions.php:1681 -#: classes/feeds.php:1097 +#: include/functions.php:1681 classes/feeds.php:1097 #: classes/pref/filters.php:425 msgid "All feeds" msgstr "Tous les flux" @@ -525,8 +486,7 @@ msgstr "Articles publiés" msgid "Fresh articles" msgstr "Nouveaux articles" -#: include/functions.php:1891 -#: include/functions.php:2006 +#: include/functions.php:1891 include/functions.php:2006 msgid "All articles" msgstr "Tous les articles" @@ -586,13 +546,11 @@ msgstr "Article" msgid "Toggle starred" msgstr "Marquer comme (non) remarquable" -#: include/functions.php:1970 -#: js/viewfeed.js:1911 +#: include/functions.php:1970 js/viewfeed.js:1911 msgid "Toggle published" msgstr "Marquer comme (non) publié" -#: include/functions.php:1971 -#: js/viewfeed.js:1889 +#: include/functions.php:1971 js/viewfeed.js:1889 msgid "Toggle unread" msgstr "Marquer comme (non) lu" @@ -612,13 +570,11 @@ msgstr "Ecarter les articles lus" msgid "Open in new window" msgstr "Ouvrir dans une nouvelle fenêtre" -#: include/functions.php:1976 -#: js/viewfeed.js:1930 +#: include/functions.php:1976 js/viewfeed.js:1930 msgid "Mark below as read" msgstr "Marquer les articles en-dessous comme lus" -#: include/functions.php:1977 -#: js/viewfeed.js:1924 +#: include/functions.php:1977 js/viewfeed.js:1924 msgid "Mark above as read" msgstr "Marquer les articles au-dessus comme lus" @@ -646,8 +602,7 @@ msgstr "Contracter l'article" msgid "Toggle article expansion (combined mode)" msgstr "Basculer le développement (mode combiné)" -#: include/functions.php:1985 -#: plugins/embed_original/init.php:31 +#: include/functions.php:1985 plugins/embed_original/init.php:31 msgid "Toggle embed original" msgstr "Basculer l'intégration de l'article original" @@ -679,8 +634,7 @@ msgstr "Inverser la sélection" msgid "Deselect everything" msgstr "Tout désélectionner" -#: include/functions.php:1993 -#: classes/pref/feeds.php:540 +#: include/functions.php:1993 classes/pref/feeds.php:540 #: classes/pref/feeds.php:783 msgid "Feed" msgstr "Flux" @@ -693,14 +647,11 @@ msgstr "Actualiser le flux actif" msgid "Un/hide read feeds" msgstr "Masquer/afficher les flux lus" -#: include/functions.php:1996 -#: classes/pref/feeds.php:1319 +#: include/functions.php:1996 classes/pref/feeds.php:1319 msgid "Subscribe to feed" msgstr "S'abonner au flux" -#: include/functions.php:1997 -#: js/FeedTree.js:135 -#: js/PrefFeedTree.js:67 +#: include/functions.php:1997 js/FeedTree.js:135 js/PrefFeedTree.js:67 msgid "Edit feed" msgstr "Modifier le flux" @@ -712,8 +663,7 @@ msgstr "Inverser l'ordre des en-têtes" msgid "Debug feed update" msgstr "Déboguer les mises à jour" -#: include/functions.php:2001 -#: js/FeedTree.js:178 +#: include/functions.php:2001 js/FeedTree.js:178 msgid "Mark all feeds as read" msgstr "Marquer tous les flux comme lus" @@ -737,9 +687,7 @@ msgstr "Aller à" msgid "Fresh" msgstr "Nouveaux" -#: include/functions.php:2010 -#: js/tt-rss.js:457 -#: js/tt-rss.js:642 +#: include/functions.php:2010 js/tt-rss.js:457 js/tt-rss.js:642 msgid "Tag cloud" msgstr "Nuage de tags" @@ -747,13 +695,11 @@ msgstr "Nuage de tags" msgid "Other" msgstr "Autre" -#: include/functions.php:2013 -#: classes/pref/labels.php:281 +#: include/functions.php:2013 classes/pref/labels.php:281 msgid "Create label" msgstr "Créer une étiquette" -#: include/functions.php:2014 -#: classes/pref/filters.php:652 +#: include/functions.php:2014 classes/pref/filters.php:652 msgid "Create filter" msgstr "Créer un filtre" @@ -774,47 +720,31 @@ msgstr "Résultats de recherche: %s" msgid " - " msgstr " - " -#: include/functions.php:3154 -#: include/functions.php:3395 +#: include/functions.php:3154 include/functions.php:3395 #: classes/article.php:281 msgid "no tags" msgstr "aucun tag" -#: include/functions.php:3164 -#: classes/feeds.php:676 +#: include/functions.php:3164 classes/feeds.php:676 msgid "Edit tags for this article" msgstr "Modifier les tags pour cet article" -#: include/functions.php:3196 -#: classes/feeds.php:628 +#: include/functions.php:3196 classes/feeds.php:628 msgid "Originally from:" msgstr "Origine :" -#: include/functions.php:3209 -#: classes/feeds.php:641 -#: classes/pref/feeds.php:559 +#: include/functions.php:3209 classes/feeds.php:641 classes/pref/feeds.php:559 msgid "Feed URL" msgstr "URL du flux" -#: include/functions.php:3241 -#: classes/dlg.php:37 -#: classes/dlg.php:60 -#: classes/dlg.php:93 -#: classes/dlg.php:159 -#: classes/dlg.php:190 -#: classes/dlg.php:217 -#: classes/dlg.php:250 -#: classes/dlg.php:262 -#: classes/backend.php:105 -#: classes/pref/users.php:95 -#: classes/pref/filters.php:145 -#: classes/pref/prefs.php:1096 -#: classes/pref/feeds.php:1626 -#: classes/pref/feeds.php:1694 -#: plugins/import_export/init.php:407 -#: plugins/import_export/init.php:452 -#: plugins/googlereaderimport/init.php:193 -#: plugins/share/init.php:65 +#: include/functions.php:3241 classes/dlg.php:37 classes/dlg.php:60 +#: classes/dlg.php:93 classes/dlg.php:159 classes/dlg.php:190 +#: classes/dlg.php:217 classes/dlg.php:250 classes/dlg.php:262 +#: classes/backend.php:105 classes/pref/users.php:95 +#: classes/pref/filters.php:145 classes/pref/prefs.php:1096 +#: classes/pref/feeds.php:1626 classes/pref/feeds.php:1694 +#: plugins/import_export/init.php:407 plugins/import_export/init.php:452 +#: plugins/googlereaderimport/init.php:193 plugins/share/init.php:65 #: plugins/updater/init.php:368 msgid "Close this window" msgstr "Fermer cette fenêtre" @@ -836,14 +766,12 @@ msgstr "Fichier attaché" msgid "LibXML error %s at line %d (column %d): %s" msgstr "Erreur LibXML %s ligne %d (colonne %d): %s" -#: include/login_form.php:183 -#: classes/handler/public.php:475 +#: include/login_form.php:183 classes/handler/public.php:475 #: classes/handler/public.php:758 msgid "Login:" msgstr "Identifiant :" -#: include/login_form.php:194 -#: classes/handler/public.php:478 +#: include/login_form.php:194 classes/handler/public.php:478 msgid "Password:" msgstr "Mot de passe :" @@ -855,10 +783,8 @@ msgstr "J'ai oublié mon mot de passe" msgid "Profile:" msgstr "Profil :" -#: include/login_form.php:209 -#: classes/handler/public.php:233 -#: classes/rpc.php:63 -#: classes/pref/prefs.php:1034 +#: include/login_form.php:209 classes/handler/public.php:233 +#: classes/rpc.php:63 classes/pref/prefs.php:1034 msgid "Default profile" msgstr "Profil par défaut" @@ -868,14 +794,15 @@ msgstr "Minimiser l'usage du trafic" #: include/login_form.php:221 msgid "Does not display images in articles, reduces automatic refreshes." -msgstr "N'affiche pas les images dans les articles, allège les actualisation automatiques." +msgstr "" +"N'affiche pas les images dans les articles, allège les actualisation " +"automatiques." #: include/login_form.php:229 msgid "Remember me" msgstr "Se souvenir de moi" -#: include/login_form.php:235 -#: classes/handler/public.php:483 +#: include/login_form.php:235 classes/handler/public.php:483 msgid "Log in" msgstr "Se connecter" @@ -891,44 +818,28 @@ msgstr "Article non trouvé." msgid "Tags for this article (separated by commas):" msgstr "Tags pour cet article (séparés par des virgules) :" -#: classes/article.php:204 -#: classes/pref/users.php:172 -#: classes/pref/labels.php:79 -#: classes/pref/filters.php:403 -#: classes/pref/prefs.php:980 -#: classes/pref/feeds.php:762 -#: classes/pref/feeds.php:910 -#: plugins/nsfw/init.php:83 -#: plugins/note/init.php:51 -#: plugins/instances/init.php:245 +#: classes/article.php:204 classes/pref/users.php:172 +#: classes/pref/labels.php:79 classes/pref/filters.php:403 +#: classes/pref/prefs.php:980 classes/pref/feeds.php:762 +#: classes/pref/feeds.php:910 plugins/nsfw/init.php:83 +#: plugins/note/init.php:51 plugins/instances/init.php:245 msgid "Save" msgstr "Enregistrer" -#: classes/article.php:206 -#: classes/handler/public.php:452 -#: classes/handler/public.php:486 -#: classes/feeds.php:1024 -#: classes/feeds.php:1076 -#: classes/feeds.php:1136 -#: classes/pref/users.php:174 -#: classes/pref/labels.php:81 -#: classes/pref/filters.php:406 -#: classes/pref/filters.php:801 -#: classes/pref/filters.php:877 -#: classes/pref/filters.php:944 -#: classes/pref/prefs.php:982 -#: classes/pref/feeds.php:763 -#: classes/pref/feeds.php:913 -#: classes/pref/feeds.php:1834 -#: plugins/mail/init.php:124 -#: plugins/note/init.php:53 -#: plugins/instances/init.php:248 +#: classes/article.php:206 classes/handler/public.php:452 +#: classes/handler/public.php:486 classes/feeds.php:1024 +#: classes/feeds.php:1076 classes/feeds.php:1136 classes/pref/users.php:174 +#: classes/pref/labels.php:81 classes/pref/filters.php:406 +#: classes/pref/filters.php:801 classes/pref/filters.php:877 +#: classes/pref/filters.php:944 classes/pref/prefs.php:982 +#: classes/pref/feeds.php:763 classes/pref/feeds.php:913 +#: classes/pref/feeds.php:1834 plugins/mail/init.php:124 +#: plugins/note/init.php:53 plugins/instances/init.php:248 #: plugins/instances/init.php:436 msgid "Cancel" msgstr "Annuler" -#: classes/handler/public.php:416 -#: plugins/bookmarklets/init.php:40 +#: classes/handler/public.php:416 plugins/bookmarklets/init.php:40 msgid "Share with Tiny Tiny RSS" msgstr "Partager avec Tiny Tiny RSS" @@ -936,10 +847,8 @@ msgstr "Partager avec Tiny Tiny RSS" msgid "Title:" msgstr "Titre :" -#: classes/handler/public.php:426 -#: classes/pref/feeds.php:557 -#: classes/pref/feeds.php:798 -#: plugins/instances/init.php:212 +#: classes/handler/public.php:426 classes/pref/feeds.php:557 +#: classes/pref/feeds.php:798 plugins/instances/init.php:212 #: plugins/instances/init.php:401 msgid "URL:" msgstr "URL :" @@ -968,48 +877,42 @@ msgstr "Non connecté" msgid "Incorrect username or password" msgstr "Identifiant ou mot de passe incorrect" -#: classes/handler/public.php:568 -#: classes/handler/public.php:666 +#: classes/handler/public.php:568 classes/handler/public.php:666 #, php-format msgid "Already subscribed to <b>%s</b>." msgstr "Déjà abonné à <b>%s</b>." -#: classes/handler/public.php:571 -#: classes/handler/public.php:657 +#: classes/handler/public.php:571 classes/handler/public.php:657 #, php-format msgid "Subscribed to <b>%s</b>." msgstr "Abonné à <b>%s</b>." -#: classes/handler/public.php:574 -#: classes/handler/public.php:660 +#: classes/handler/public.php:574 classes/handler/public.php:660 #, php-format msgid "Could not subscribe to <b>%s</b>." msgstr "Impossible de s'abonner à <b>%s</b>." -#: classes/handler/public.php:577 -#: classes/handler/public.php:663 +#: classes/handler/public.php:577 classes/handler/public.php:663 #, php-format msgid "No feeds found in <b>%s</b>." msgstr "Aucun flux trouvé dans <b>%s</b>." -#: classes/handler/public.php:580 -#: classes/handler/public.php:669 +#: classes/handler/public.php:580 classes/handler/public.php:669 msgid "Multiple feed URLs found." msgstr "Plusieurs flux trouvé." -#: classes/handler/public.php:584 -#: classes/handler/public.php:676 +#: classes/handler/public.php:584 classes/handler/public.php:676 #, php-format msgid "Could not subscribe to <b>%s</b>.<br>Can't download the Feed URL." -msgstr "Impossible de s'abonner à <b>%s</b>.<br>Impossible de télécharger l'URL du flux." +msgstr "" +"Impossible de s'abonner à <b>%s</b>.<br>Impossible de télécharger l'URL du " +"flux." -#: classes/handler/public.php:602 -#: classes/handler/public.php:694 +#: classes/handler/public.php:602 classes/handler/public.php:694 msgid "Subscribe to selected feed" msgstr "S'abonner au flux sélectionné" -#: classes/handler/public.php:627 -#: classes/handler/public.php:718 +#: classes/handler/public.php:627 classes/handler/public.php:718 msgid "Edit subscription options" msgstr "Modifier les options d'abonnement" @@ -1018,11 +921,14 @@ msgid "Password recovery" msgstr "Récupération de mot de passe" #: classes/handler/public.php:751 -msgid "You will need to provide valid account name and email. New password will be sent on your email address." -msgstr "Vous devrez fournir un nom et une adresse email valides. Le nouveau mot de passe sera envoyé à votre adresse email." +msgid "" +"You will need to provide valid account name and email. New password will be " +"sent on your email address." +msgstr "" +"Vous devrez fournir un nom et une adresse email valides. Le nouveau mot de " +"passe sera envoyé à votre adresse email." -#: classes/handler/public.php:773 -#: classes/pref/users.php:356 +#: classes/handler/public.php:773 classes/pref/users.php:356 msgid "Reset password" msgstr "Réinitialiser le mot de passe" @@ -1030,8 +936,7 @@ msgstr "Réinitialiser le mot de passe" msgid "Some of the required form parameters are missing or incorrect." msgstr "Des paramètres du formulaire manquent ou sont invalides." -#: classes/handler/public.php:787 -#: classes/handler/public.php:813 +#: classes/handler/public.php:787 classes/handler/public.php:813 msgid "Go back" msgstr "Revenir" @@ -1052,30 +957,44 @@ msgid "Perform updates" msgstr "Exécuter les mises à jour" #: classes/dlg.php:16 -msgid "If you have imported labels and/or filters, you might need to reload preferences to see your new data." -msgstr "Si vous avez importé des étiquettes et/ou des filtres, vous devrez peut-être recharger les préférences pour voir les nouvelles données." +msgid "" +"If you have imported labels and/or filters, you might need to reload " +"preferences to see your new data." +msgstr "" +"Si vous avez importé des étiquettes et/ou des filtres, vous devrez peut-être " +"recharger les préférences pour voir les nouvelles données." #: classes/dlg.php:48 msgid "Your Public OPML URL is:" msgstr "Votre URL OPML publique est :" -#: classes/dlg.php:57 -#: classes/dlg.php:214 +#: classes/dlg.php:57 classes/dlg.php:214 msgid "Generate new URL" msgstr "Générer une nouvelle URL" #: classes/dlg.php:71 -msgid "Update daemon is enabled in configuration, but daemon process is not running, which prevents all feeds from updating. Please start the daemon process or contact instance owner." -msgstr "Le démon de mise à jour est activé dans la configuration mais le processus n'est pas lancé et les flux ne sont donc pas mis à jour. Veuillez le démarrer ou contacter l'administrateur." +msgid "" +"Update daemon is enabled in configuration, but daemon process is not " +"running, which prevents all feeds from updating. Please start the daemon " +"process or contact instance owner." +msgstr "" +"Le démon de mise à jour est activé dans la configuration mais le processus " +"n'est pas lancé et les flux ne sont donc pas mis à jour. Veuillez le " +"démarrer ou contacter l'administrateur." -#: classes/dlg.php:75 -#: classes/dlg.php:84 +#: classes/dlg.php:75 classes/dlg.php:84 msgid "Last update:" msgstr "Dernière mise à jour :" #: classes/dlg.php:80 -msgid "Update daemon is taking too long to perform a feed update. This could indicate a problem like crash or a hang. Please check the daemon process or contact instance owner." -msgstr "Le démon de mise à jour prend trop de temps pour effectuer une mise à jour de flux. Cela peut indiquer un problème comme un crash ou un suspension du processus. Veuillez vérifier son état ou bien contacter l'administrateur." +msgid "" +"Update daemon is taking too long to perform a feed update. This could " +"indicate a problem like crash or a hang. Please check the daemon process or " +"contact instance owner." +msgstr "" +"Le démon de mise à jour prend trop de temps pour effectuer une mise à jour " +"de flux. Cela peut indiquer un problème comme un crash ou un suspension du " +"processus. Veuillez vérifier son état ou bien contacter l'administrateur." #: classes/dlg.php:166 msgid "Match:" @@ -1101,18 +1020,19 @@ msgstr "Afficher les entrées" msgid "You can view this feed as RSS using the following URL:" msgstr "Vous pouvez consulter ce flux comme RSS en utilisant l'URL suivante :" -#: classes/dlg.php:233 -#: plugins/updater/init.php:331 +#: classes/dlg.php:233 plugins/updater/init.php:331 #, php-format msgid "New version of Tiny Tiny RSS is available (%s)." msgstr "Une nouvelle version de Tiny Tiny RSS est disponible (%s)." #: classes/dlg.php:241 -msgid "You can update using built-in updater in the Preferences or by using update.php" -msgstr "Vous pouvez mettre à jour depuis la Configuration ou en utilisant update.php" +msgid "" +"You can update using built-in updater in the Preferences or by using update." +"php" +msgstr "" +"Vous pouvez mettre à jour depuis la Configuration ou en utilisant update.php" -#: classes/dlg.php:245 -#: plugins/updater/init.php:335 +#: classes/dlg.php:245 plugins/updater/init.php:335 msgid "See the release notes" msgstr "Voir les notes de publication" @@ -1122,7 +1042,9 @@ msgstr "Télécharger" #: classes/dlg.php:255 msgid "Error receiving version information or no new version available." -msgstr "Erreur de lecture de l'information de version ou aucune nouvelle version disponible." +msgstr "" +"Erreur de lecture de l'information de version ou aucune nouvelle version " +"disponible." #: classes/feeds.php:56 #, php-format @@ -1133,9 +1055,7 @@ msgstr "Dernière mise à jour : %s" msgid "View as RSS feed" msgstr "Voir comme flux RSS" -#: classes/feeds.php:76 -#: classes/feeds.php:128 -#: classes/pref/feeds.php:1478 +#: classes/feeds.php:76 classes/feeds.php:128 classes/pref/feeds.php:1478 msgid "View as RSS" msgstr "Voir comme RSS" @@ -1143,19 +1063,12 @@ msgstr "Voir comme RSS" msgid "Select:" msgstr "Sélectionner :" -#: classes/feeds.php:84 -#: classes/pref/users.php:341 -#: classes/pref/labels.php:275 -#: classes/pref/filters.php:280 -#: classes/pref/filters.php:328 -#: classes/pref/filters.php:646 -#: classes/pref/filters.php:734 -#: classes/pref/filters.php:761 -#: classes/pref/prefs.php:994 -#: classes/pref/feeds.php:1310 -#: classes/pref/feeds.php:1575 -#: classes/pref/feeds.php:1641 -#: plugins/instances/init.php:287 +#: classes/feeds.php:84 classes/pref/users.php:341 classes/pref/labels.php:275 +#: classes/pref/filters.php:280 classes/pref/filters.php:328 +#: classes/pref/filters.php:646 classes/pref/filters.php:734 +#: classes/pref/filters.php:761 classes/pref/prefs.php:994 +#: classes/pref/feeds.php:1310 classes/pref/feeds.php:1575 +#: classes/pref/feeds.php:1641 plugins/instances/init.php:287 msgid "All" msgstr "Tout" @@ -1163,19 +1076,12 @@ msgstr "Tout" msgid "Invert" msgstr "Inverse" -#: classes/feeds.php:87 -#: classes/pref/users.php:343 -#: classes/pref/labels.php:277 -#: classes/pref/filters.php:282 -#: classes/pref/filters.php:330 -#: classes/pref/filters.php:648 -#: classes/pref/filters.php:736 -#: classes/pref/filters.php:763 -#: classes/pref/prefs.php:996 -#: classes/pref/feeds.php:1312 -#: classes/pref/feeds.php:1577 -#: classes/pref/feeds.php:1643 -#: plugins/instances/init.php:289 +#: classes/feeds.php:87 classes/pref/users.php:343 classes/pref/labels.php:277 +#: classes/pref/filters.php:282 classes/pref/filters.php:330 +#: classes/pref/filters.php:648 classes/pref/filters.php:736 +#: classes/pref/filters.php:763 classes/pref/prefs.php:996 +#: classes/pref/feeds.php:1312 classes/pref/feeds.php:1577 +#: classes/pref/feeds.php:1643 plugins/instances/init.php:289 msgid "None" msgstr "Aucun" @@ -1203,17 +1109,13 @@ msgstr "Archive" msgid "Move back" msgstr "Revenir" -#: classes/feeds.php:110 -#: classes/pref/filters.php:289 -#: classes/pref/filters.php:337 -#: classes/pref/filters.php:743 +#: classes/feeds.php:110 classes/pref/filters.php:289 +#: classes/pref/filters.php:337 classes/pref/filters.php:743 #: classes/pref/filters.php:770 msgid "Delete" msgstr "Supprimer" -#: classes/feeds.php:115 -#: classes/feeds.php:120 -#: plugins/mailto/init.php:25 +#: classes/feeds.php:115 classes/feeds.php:120 plugins/mailto/init.php:25 #: plugins/mail/init.php:26 msgid "Forward by email" msgstr "Transférer par email" @@ -1222,8 +1124,7 @@ msgstr "Transférer par email" msgid "Feed:" msgstr "Flux :" -#: classes/feeds.php:197 -#: classes/feeds.php:824 +#: classes/feeds.php:197 classes/feeds.php:824 msgid "Feed not found." msgstr "Flux non trouvé." @@ -1257,36 +1158,38 @@ msgid "No starred articles found to display." msgstr "Aucun article remarquable à afficher." #: classes/feeds.php:735 -msgid "No articles found to display. You can assign articles to labels manually from article header context menu (applies to all selected articles) or use a filter." -msgstr "Aucun article à afficher. Vous pouvez assigner des étiquettes aux articles manuellement (voir les actions du menu ci-dessus) ou utiliser un filtre." +msgid "" +"No articles found to display. You can assign articles to labels manually " +"from article header context menu (applies to all selected articles) or use a " +"filter." +msgstr "" +"Aucun article à afficher. Vous pouvez assigner des étiquettes aux articles " +"manuellement (voir les actions du menu ci-dessus) ou utiliser un filtre." #: classes/feeds.php:737 msgid "No articles found to display." msgstr "Aucun article à afficher." -#: classes/feeds.php:752 -#: classes/feeds.php:919 +#: classes/feeds.php:752 classes/feeds.php:919 #, php-format msgid "Feeds last updated at %s" msgstr "Flux mis à jour à %s" -#: classes/feeds.php:762 -#: classes/feeds.php:929 +#: classes/feeds.php:762 classes/feeds.php:929 msgid "Some feeds have update errors (click for details)" -msgstr "Des erreurs sont survenues pendant la mise à jour de certains flux (cliquer ici pour les détails)" +msgstr "" +"Des erreurs sont survenues pendant la mise à jour de certains flux (cliquer " +"ici pour les détails)" #: classes/feeds.php:909 msgid "No feed selected." msgstr "Aucun flux sélectionné." -#: classes/feeds.php:962 -#: classes/feeds.php:970 +#: classes/feeds.php:962 classes/feeds.php:970 msgid "Feed or site URL" msgstr "URL du flux" -#: classes/feeds.php:976 -#: classes/pref/feeds.php:579 -#: classes/pref/feeds.php:811 +#: classes/feeds.php:976 classes/pref/feeds.php:579 classes/pref/feeds.php:811 #: classes/pref/feeds.php:1798 msgid "Place in category:" msgstr "Placer dans la catégorie :" @@ -1295,25 +1198,19 @@ msgstr "Placer dans la catégorie :" msgid "Available feeds" msgstr "Flux disponibles" -#: classes/feeds.php:996 -#: classes/pref/users.php:135 -#: classes/pref/feeds.php:609 +#: classes/feeds.php:996 classes/pref/users.php:135 classes/pref/feeds.php:609 #: classes/pref/feeds.php:847 msgid "Authentication" msgstr "Identification" -#: classes/feeds.php:1000 -#: classes/pref/users.php:398 -#: classes/pref/feeds.php:615 -#: classes/pref/feeds.php:851 +#: classes/feeds.php:1000 classes/pref/users.php:398 +#: classes/pref/feeds.php:615 classes/pref/feeds.php:851 #: classes/pref/feeds.php:1812 msgid "Login" msgstr "Se connecter" -#: classes/feeds.php:1003 -#: classes/pref/prefs.php:260 -#: classes/pref/feeds.php:628 -#: classes/pref/feeds.php:857 +#: classes/feeds.php:1003 classes/pref/prefs.php:260 +#: classes/pref/feeds.php:628 classes/pref/feeds.php:857 #: classes/pref/feeds.php:1815 msgid "Password" msgstr "Mot de passe" @@ -1322,9 +1219,7 @@ msgstr "Mot de passe" msgid "This feed requires authentication." msgstr "Ce flux nécessite une identification." -#: classes/feeds.php:1018 -#: classes/feeds.php:1074 -#: classes/pref/feeds.php:1833 +#: classes/feeds.php:1018 classes/feeds.php:1074 classes/pref/feeds.php:1833 msgid "Subscribe" msgstr "S'abonner" @@ -1332,12 +1227,8 @@ msgstr "S'abonner" msgid "More feeds" msgstr "D'autres flux" -#: classes/feeds.php:1044 -#: classes/feeds.php:1135 -#: classes/pref/users.php:328 -#: classes/pref/filters.php:639 -#: classes/pref/feeds.php:1303 -#: js/tt-rss.js:174 +#: classes/feeds.php:1044 classes/feeds.php:1135 classes/pref/users.php:328 +#: classes/pref/filters.php:639 classes/pref/feeds.php:1303 js/tt-rss.js:174 msgid "Search" msgstr "Rechercher" @@ -1353,12 +1244,9 @@ msgstr "Archive du flux" msgid "limit:" msgstr "limite :" -#: classes/feeds.php:1075 -#: classes/pref/users.php:354 -#: classes/pref/labels.php:284 -#: classes/pref/filters.php:396 -#: classes/pref/filters.php:665 -#: classes/pref/feeds.php:733 +#: classes/feeds.php:1075 classes/pref/users.php:354 +#: classes/pref/labels.php:284 classes/pref/filters.php:396 +#: classes/pref/filters.php:665 classes/pref/feeds.php:733 #: plugins/instances/init.php:294 msgid "Remove" msgstr "Supprimer" @@ -1377,7 +1265,9 @@ msgstr "Ce flux" #: classes/backend.php:33 msgid "Other interface tips are available in the Tiny Tiny RSS wiki." -msgstr "D'autres astuces sur l'interface sont disponibles sur le wiki de Tiny Tiny RSS." +msgstr "" +"D'autres astuces sur l'interface sont disponibles sur le wiki de Tiny Tiny " +"RSS." #: classes/backend.php:38 msgid "Keyboard Shortcuts" @@ -1395,8 +1285,7 @@ msgstr "Ctrl" msgid "Help topic not found." msgstr "Sujet non trouvé dans l'aide." -#: classes/opml.php:28 -#: classes/opml.php:33 +#: classes/opml.php:28 classes/opml.php:33 msgid "OPML Utility" msgstr "Outil OPML" @@ -1442,21 +1331,18 @@ msgstr "Créer un filtre..." msgid "Processing category: %s" msgstr "Placer dans la catégorie : %s" -#: classes/opml.php:465 -#: plugins/import_export/init.php:420 +#: classes/opml.php:465 plugins/import_export/init.php:420 #: plugins/googlereaderimport/init.php:66 #, php-format msgid "Upload failed with error code %d" msgstr "Échec de l'envoi, code d'erreur %d" -#: classes/opml.php:479 -#: plugins/import_export/init.php:434 +#: classes/opml.php:479 plugins/import_export/init.php:434 #: plugins/googlereaderimport/init.php:80 msgid "Unable to move uploaded file." msgstr "Impossible de déplacer le fichier envoyé." -#: classes/opml.php:483 -#: plugins/import_export/init.php:438 +#: classes/opml.php:483 plugins/import_export/init.php:438 #: plugins/googlereaderimport/init.php:84 msgid "Error: please upload OPML file." msgstr "Erreur : veuillez envoyer un document OPML." @@ -1465,13 +1351,11 @@ msgstr "Erreur : veuillez envoyer un document OPML." msgid "Error: unable to find moved OPML file." msgstr "Erreur : impossible de trouver le fichier OPML déplacé." -#: classes/opml.php:499 -#: plugins/googlereaderimport/init.php:186 +#: classes/opml.php:499 plugins/googlereaderimport/init.php:186 msgid "Error while parsing document." msgstr "Erreur lors de l'analyse du document." -#: classes/pref/users.php:6 -#: classes/pref/system.php:8 +#: classes/pref/users.php:6 classes/pref/system.php:8 #: plugins/instances/init.php:154 msgid "Your access level is insufficient to open this tab." msgstr "Vous n'avez pas les permissions nécessaires pour ouvrir cet onglet." @@ -1480,8 +1364,7 @@ msgstr "Vous n'avez pas les permissions nécessaires pour ouvrir cet onglet." msgid "User not found" msgstr "Utilisateur non trouvé" -#: classes/pref/users.php:53 -#: classes/pref/users.php:400 +#: classes/pref/users.php:53 classes/pref/users.php:400 msgid "Registered" msgstr "Inscrit" @@ -1505,8 +1388,7 @@ msgstr "Permissions : " msgid "Change password to" msgstr "Nouveau mot de passe" -#: classes/pref/users.php:157 -#: classes/pref/feeds.php:636 +#: classes/pref/users.php:157 classes/pref/feeds.php:636 #: classes/pref/feeds.php:863 msgid "Options" msgstr "Options" @@ -1544,18 +1426,12 @@ msgstr "Envoi du mot de passe de <b>%s</b> à <b>%s</b>" msgid "[tt-rss] Password change notification" msgstr "[tt-rss] Notification de changement de mot passe" -#: classes/pref/users.php:338 -#: classes/pref/labels.php:272 -#: classes/pref/filters.php:277 -#: classes/pref/filters.php:325 -#: classes/pref/filters.php:643 -#: classes/pref/filters.php:731 -#: classes/pref/filters.php:758 -#: classes/pref/prefs.php:991 -#: classes/pref/feeds.php:1307 -#: classes/pref/feeds.php:1572 -#: classes/pref/feeds.php:1638 -#: plugins/instances/init.php:284 +#: classes/pref/users.php:338 classes/pref/labels.php:272 +#: classes/pref/filters.php:277 classes/pref/filters.php:325 +#: classes/pref/filters.php:643 classes/pref/filters.php:731 +#: classes/pref/filters.php:758 classes/pref/prefs.php:991 +#: classes/pref/feeds.php:1307 classes/pref/feeds.php:1572 +#: classes/pref/feeds.php:1638 plugins/instances/init.php:284 msgid "Select" msgstr "Sélectionner" @@ -1567,8 +1443,7 @@ msgstr "Créer l'utilisateur" msgid "Details" msgstr "Détails" -#: classes/pref/users.php:352 -#: classes/pref/filters.php:658 +#: classes/pref/users.php:352 classes/pref/filters.php:658 #: plugins/instances/init.php:293 msgid "Edit" msgstr "Modifier" @@ -1581,8 +1456,7 @@ msgstr "Permissions" msgid "Last login" msgstr "Dernière connexion" -#: classes/pref/users.php:420 -#: plugins/instances/init.php:334 +#: classes/pref/users.php:420 plugins/instances/init.php:334 msgid "Click to edit" msgstr "Cliquer pour modifier" @@ -1594,8 +1468,7 @@ msgstr "Aucun utilisateur défini." msgid "No matching users found." msgstr "Aucun utilisateur correspondant trouvé." -#: classes/pref/labels.php:22 -#: classes/pref/filters.php:266 +#: classes/pref/labels.php:22 classes/pref/filters.php:266 #: classes/pref/filters.php:722 msgid "Caption" msgstr "Légende" @@ -1630,44 +1503,40 @@ msgid "No recent articles matching this filter have been found." msgstr "Aucun article récent correspondant à ce filtre." #: classes/pref/filters.php:135 -msgid "Complex expressions might not give results while testing due to issues with database server regexp implementation." -msgstr "Les expressions complexes risquent de ne pas avoir de résulats dans les tests à cause de problèmes avec le serveur." +msgid "" +"Complex expressions might not give results while testing due to issues with " +"database server regexp implementation." +msgstr "" +"Les expressions complexes risquent de ne pas avoir de résulats dans les " +"tests à cause de problèmes avec le serveur." -#: classes/pref/filters.php:272 -#: classes/pref/filters.php:726 +#: classes/pref/filters.php:272 classes/pref/filters.php:726 #: classes/pref/filters.php:841 msgid "Match" msgstr "Correspondance" -#: classes/pref/filters.php:286 -#: classes/pref/filters.php:334 -#: classes/pref/filters.php:740 -#: classes/pref/filters.php:767 +#: classes/pref/filters.php:286 classes/pref/filters.php:334 +#: classes/pref/filters.php:740 classes/pref/filters.php:767 msgid "Add" msgstr "Ajouter" -#: classes/pref/filters.php:320 -#: classes/pref/filters.php:753 +#: classes/pref/filters.php:320 classes/pref/filters.php:753 msgid "Apply actions" msgstr "Actions éffectuées" -#: classes/pref/filters.php:370 -#: classes/pref/filters.php:782 +#: classes/pref/filters.php:370 classes/pref/filters.php:782 msgid "Enabled" msgstr "Activé" -#: classes/pref/filters.php:379 -#: classes/pref/filters.php:785 +#: classes/pref/filters.php:379 classes/pref/filters.php:785 msgid "Match any rule" msgstr "Au moins une correspondance" -#: classes/pref/filters.php:388 -#: classes/pref/filters.php:788 +#: classes/pref/filters.php:388 classes/pref/filters.php:788 msgid "Inverse matching" msgstr "Correspondance inverse" -#: classes/pref/filters.php:400 -#: classes/pref/filters.php:795 +#: classes/pref/filters.php:400 classes/pref/filters.php:795 msgid "Test" msgstr "Test" @@ -1684,14 +1553,12 @@ msgstr "%s sur %s dans %s %s" msgid "Combine" msgstr "Combiner" -#: classes/pref/filters.php:661 -#: classes/pref/feeds.php:1323 +#: classes/pref/filters.php:661 classes/pref/feeds.php:1323 #: classes/pref/feeds.php:1337 msgid "Reset sort order" msgstr "Réinitialiser le critère de tri" -#: classes/pref/filters.php:669 -#: classes/pref/feeds.php:1359 +#: classes/pref/filters.php:669 classes/pref/feeds.php:1359 msgid "Rescore articles" msgstr "Recalculer le score des articles" @@ -1707,8 +1574,7 @@ msgstr "Inverser le résultat de l'expression rationnelle" msgid "on field" msgstr "sur le champ" -#: classes/pref/filters.php:861 -#: js/PrefFilterTree.js:45 +#: classes/pref/filters.php:861 js/PrefFilterTree.js:45 msgid "in" msgstr "dans" @@ -1716,8 +1582,7 @@ msgstr "dans" msgid "Save rule" msgstr "Enregistrer" -#: classes/pref/filters.php:874 -#: js/functions.js:1013 +#: classes/pref/filters.php:874 js/functions.js:1013 msgid "Add rule" msgstr "Ajouter une règle" @@ -1733,8 +1598,7 @@ msgstr "avec les paramètres :" msgid "Save action" msgstr "Enregistrer" -#: classes/pref/filters.php:941 -#: js/functions.js:1039 +#: classes/pref/filters.php:941 js/functions.js:1039 msgid "Add action" msgstr "Ajouter une action" @@ -1771,16 +1635,24 @@ msgid "Blacklisted tags" msgstr "Tags exclus" #: classes/pref/prefs.php:27 -msgid "When auto-detecting tags in articles these tags will not be applied (comma-separated list)." -msgstr "Lors de l'auto-détection des tags dans les articles, ces tags ne seront pas utilisés (séparés par des virgules)." +msgid "" +"When auto-detecting tags in articles these tags will not be applied (comma-" +"separated list)." +msgstr "" +"Lors de l'auto-détection des tags dans les articles, ces tags ne seront pas " +"utilisés (séparés par des virgules)." #: classes/pref/prefs.php:28 msgid "Automatically mark articles as read" msgstr "Automatiquement marquer les articles comme lus" #: classes/pref/prefs.php:28 -msgid "This option enables marking articles as read automatically while you scroll article list." -msgstr "Cette option permet de marquer automatiquement les articles comme lus lorsque vous naviguez dans la liste d'articles." +msgid "" +"This option enables marking articles as read automatically while you scroll " +"article list." +msgstr "" +"Cette option permet de marquer automatiquement les articles comme lus " +"lorsque vous naviguez dans la liste d'articles." #: classes/pref/prefs.php:29 msgid "Automatically expand articles in combined mode" @@ -1791,8 +1663,12 @@ msgid "Combined feed display" msgstr "Affichage combiné des flux" #: classes/pref/prefs.php:30 -msgid "Display expanded list of feed articles, instead of separate displays for headlines and article content" -msgstr "Affiche les articles sous la forme d'une liste étendue, au lieu de deux listes séparées (une pour les en-têtes et une pour le contenu)" +msgid "" +"Display expanded list of feed articles, instead of separate displays for " +"headlines and article content" +msgstr "" +"Affiche les articles sous la forme d'une liste étendue, au lieu de deux " +"listes séparées (une pour les en-têtes et une pour le contenu)" #: classes/pref/prefs.php:31 msgid "Confirm marking feed as read" @@ -1807,8 +1683,12 @@ msgid "Default feed update interval" msgstr "Fréquence de mise à jour par défaut" #: classes/pref/prefs.php:33 -msgid "Shortest interval at which a feed will be checked for updates regardless of update method" -msgstr "Intervalle minimum de temps entre deux mises à jour d'un flux, quelle que soit la méthode de mise à jour" +msgid "" +"Shortest interval at which a feed will be checked for updates regardless of " +"update method" +msgstr "" +"Intervalle minimum de temps entre deux mises à jour d'un flux, quelle que " +"soit la méthode de mise à jour" #: classes/pref/prefs.php:34 msgid "Mark articles in e-mail digest as read" @@ -1819,8 +1699,12 @@ msgid "Enable e-mail digest" msgstr "Activer la synthèse quotidienne par courrier électronique" #: classes/pref/prefs.php:35 -msgid "This option enables sending daily digest of new (and unread) headlines on your configured e-mail address" -msgstr "Cette option active l'envoi d'une synthèse quotidienne (digest) des en-têtes nouveaux et non lus à l'adresse électronique donnée" +msgid "" +"This option enables sending daily digest of new (and unread) headlines on " +"your configured e-mail address" +msgstr "" +"Cette option active l'envoi d'une synthèse quotidienne (digest) des en-têtes " +"nouveaux et non lus à l'adresse électronique donnée" #: classes/pref/prefs.php:36 msgid "Try to send digests around specified time" @@ -1867,12 +1751,15 @@ msgid "On catchup show next feed" msgstr "Sauter automatiquement au flux suivant" #: classes/pref/prefs.php:44 -msgid "Automatically open next feed with unread articles after marking one as read" +msgid "" +"Automatically open next feed with unread articles after marking one as read" msgstr "Sauter automatiquement au flux suivant après en marquer un comme lu" #: classes/pref/prefs.php:45 msgid "Purge articles after this number of days (0 - disables)" -msgstr "Purger les articles plus vieux que le nombre de jours donné (0 pour ne jamais purger)" +msgstr "" +"Purger les articles plus vieux que le nombre de jours donné (0 pour ne " +"jamais purger)" #: classes/pref/prefs.php:46 msgid "Purge unread articles" @@ -1896,7 +1783,9 @@ msgstr "Trier les en-têtes par date de flux" #: classes/pref/prefs.php:50 msgid "Use feed-specified date to sort headlines instead of local import date." -msgstr "Utiliser les dates spécifiées dans le flux pour trier les en-têtes au lieu des dates importées localement." +msgstr "" +"Utiliser les dates spécifiées dans le flux pour trier les en-têtes au lieu " +"des dates importées localement." #: classes/pref/prefs.php:51 msgid "Login with an SSL certificate" @@ -1916,10 +1805,11 @@ msgstr "Éliminer les tags non sûrs des articles" #: classes/pref/prefs.php:53 msgid "Strip all but most common HTML tags when reading articles." -msgstr "Élimine toutes les balises HTML sauf les plus courantes lors de la lecture des articles." +msgstr "" +"Élimine toutes les balises HTML sauf les plus courantes lors de la lecture " +"des articles." -#: classes/pref/prefs.php:54 -#: js/prefs.js:1719 +#: classes/pref/prefs.php:54 js/prefs.js:1719 msgid "Customize stylesheet" msgstr "Personnaliser la feuille de style" @@ -2014,7 +1904,9 @@ msgstr "Votre mot de passe est celui par défaut, veuillez le modifier." #: classes/pref/prefs.php:294 msgid "Changing your current password will disable OTP." -msgstr "Changer votre mot de passe actuel désactivera les mots de passe à usage unique." +msgstr "" +"Changer votre mot de passe actuel désactivera les mots de passe à usage " +"unique." #: classes/pref/prefs.php:299 msgid "Old password" @@ -2037,11 +1929,14 @@ msgid "One time passwords / Authenticator" msgstr "Mots de passe à usage unique / Identificateur" #: classes/pref/prefs.php:327 -msgid "One time passwords are currently enabled. Enter your current password below to disable." -msgstr "Les mots de passe à usage unique sont actuellement activés. Entrez votre mot de passe actuel ci-dessous pour les désactiver." +msgid "" +"One time passwords are currently enabled. Enter your current password below " +"to disable." +msgstr "" +"Les mots de passe à usage unique sont actuellement activés. Entrez votre mot " +"de passe actuel ci-dessous pour les désactiver." -#: classes/pref/prefs.php:352 -#: classes/pref/prefs.php:403 +#: classes/pref/prefs.php:352 classes/pref/prefs.php:403 msgid "Enter your password" msgstr "Entrez votre mot de passe" @@ -2050,8 +1945,12 @@ msgid "Disable OTP" msgstr "Désactiver les mots de passe à usage unique" #: classes/pref/prefs.php:369 -msgid "You will need a compatible Authenticator to use this. Changing your password would automatically disable OTP." -msgstr "Vous aurez besoin d'un Identificateur compatible pour utiliser ceci. Changer votre mot de passe le désactivera automatiquement." +msgid "" +"You will need a compatible Authenticator to use this. Changing your password " +"would automatically disable OTP." +msgstr "" +"Vous aurez besoin d'un Identificateur compatible pour utiliser ceci. Changer " +"votre mot de passe le désactivera automatiquement." #: classes/pref/prefs.php:371 msgid "Scan the following code by the Authenticator application:" @@ -2067,7 +1966,9 @@ msgstr "Activer les mots de passe à usage unique" #: classes/pref/prefs.php:428 msgid "PHP GD functions are required for OTP support." -msgstr "Les fonctions GD de PHP sont nécessaires pour utiliser les mots de passe à usage unique." +msgstr "" +"Les fonctions GD de PHP sont nécessaires pour utiliser les mots de passe à " +"usage unique." #: classes/pref/prefs.php:471 msgid "Some preferences are only available in default profile." @@ -2111,44 +2012,49 @@ msgid "Plugins" msgstr "Plugins" #: classes/pref/prefs.php:708 -msgid "You will need to reload Tiny Tiny RSS for plugin changes to take effect." -msgstr "Vous devrez relancer Tiny Tiny RSS pour que les changements apportés aux plugins prennent effet." +msgid "" +"You will need to reload Tiny Tiny RSS for plugin changes to take effect." +msgstr "" +"Vous devrez relancer Tiny Tiny RSS pour que les changements apportés aux " +"plugins prennent effet." #: classes/pref/prefs.php:710 -msgid "Download more plugins at tt-rss.org <a class=\"visibleLink\" target=\"_blank\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">forums</a> or <a target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins\">wiki</a>." -msgstr "Téléchargez plus de plugins sur <a class=\"visibleLink\" target=\"_blank\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">le forum</a> ou <a target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins\">le wiki</a> de Tiny Tiny RSS." +msgid "" +"Download more plugins at tt-rss.org <a class=\"visibleLink\" target=\"_blank" +"\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">forums</a> or <a " +"target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins" +"\">wiki</a>." +msgstr "" +"Téléchargez plus de plugins sur <a class=\"visibleLink\" target=\"_blank\" " +"href=\"http://tt-rss.org/forum/viewforum.php?f=22\">le forum</a> ou <a " +"target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins" +"\">le wiki</a> de Tiny Tiny RSS." #: classes/pref/prefs.php:736 msgid "System plugins" msgstr "Plugins systèmes" -#: classes/pref/prefs.php:740 -#: classes/pref/prefs.php:794 +#: classes/pref/prefs.php:740 classes/pref/prefs.php:794 msgid "Plugin" msgstr "Plugin" -#: classes/pref/prefs.php:741 -#: classes/pref/prefs.php:795 +#: classes/pref/prefs.php:741 classes/pref/prefs.php:795 msgid "Description" msgstr "Description" -#: classes/pref/prefs.php:742 -#: classes/pref/prefs.php:796 +#: classes/pref/prefs.php:742 classes/pref/prefs.php:796 msgid "Version" msgstr "Version" -#: classes/pref/prefs.php:743 -#: classes/pref/prefs.php:797 +#: classes/pref/prefs.php:743 classes/pref/prefs.php:797 msgid "Author" msgstr "Auteur" -#: classes/pref/prefs.php:772 -#: classes/pref/prefs.php:829 +#: classes/pref/prefs.php:772 classes/pref/prefs.php:829 msgid "more info" msgstr "plus d'info" -#: classes/pref/prefs.php:781 -#: classes/pref/prefs.php:838 +#: classes/pref/prefs.php:781 classes/pref/prefs.php:838 msgid "Clear data" msgstr "Purger les données" @@ -2164,22 +2070,27 @@ msgstr "Activer les plugins sélectionnés" msgid "Incorrect one time password" msgstr "Mot de passe incorrect" -#: classes/pref/prefs.php:923 -#: classes/pref/prefs.php:940 +#: classes/pref/prefs.php:923 classes/pref/prefs.php:940 msgid "Incorrect password" msgstr "Mot de passe incorrect" #: classes/pref/prefs.php:965 #, php-format -msgid "You can override colors, fonts and layout of your currently selected theme with custom CSS declarations here. <a target=\"_blank\" class=\"visibleLink\" href=\"%s\">This file</a> can be used as a baseline." -msgstr "Vous pouvez redéfinir les couleurs, les polices et la mise en page du thème actuellement sélectionné à l'aide de vos propres instructions CSS ici. <a target=\"_blank\" class=\"visibleLink\" href=\"%s\">Ce fichier</a> peut être utilisé comme base de départ." +msgid "" +"You can override colors, fonts and layout of your currently selected theme " +"with custom CSS declarations here. <a target=\"_blank\" class=\"visibleLink" +"\" href=\"%s\">This file</a> can be used as a baseline." +msgstr "" +"Vous pouvez redéfinir les couleurs, les polices et la mise en page du thème " +"actuellement sélectionné à l'aide de vos propres instructions CSS ici. <a " +"target=\"_blank\" class=\"visibleLink\" href=\"%s\">Ce fichier</a> peut être " +"utilisé comme base de départ." #: classes/pref/prefs.php:1005 msgid "Create profile" msgstr "Création d'un profil" -#: classes/pref/prefs.php:1028 -#: classes/pref/prefs.php:1056 +#: classes/pref/prefs.php:1028 classes/pref/prefs.php:1056 msgid "(active)" msgstr "(actif)" @@ -2199,47 +2110,43 @@ msgstr "Cocher pour activer le champ" msgid "Feed Title" msgstr "Titre du flux" -#: classes/pref/feeds.php:587 -#: classes/pref/feeds.php:822 +#: classes/pref/feeds.php:587 classes/pref/feeds.php:822 msgid "Update" msgstr "Mettre à jour" -#: classes/pref/feeds.php:602 -#: classes/pref/feeds.php:838 +#: classes/pref/feeds.php:602 classes/pref/feeds.php:838 msgid "Article purging:" msgstr "Purge des articles :" #: classes/pref/feeds.php:632 -msgid "<b>Hint:</b> you need to fill in your login information if your feed requires authentication, except for Twitter feeds." -msgstr "<b>Astuce :</b> vous devez renseigner vos informations d'identification si le flux nécessite une authentification, sauf pour les flux Twitter." +msgid "" +"<b>Hint:</b> you need to fill in your login information if your feed " +"requires authentication, except for Twitter feeds." +msgstr "" +"<b>Astuce :</b> vous devez renseigner vos informations d'identification si " +"le flux nécessite une authentification, sauf pour les flux Twitter." -#: classes/pref/feeds.php:648 -#: classes/pref/feeds.php:867 +#: classes/pref/feeds.php:648 classes/pref/feeds.php:867 msgid "Hide from Popular feeds" msgstr "Masquer dans la liste des flux populaires" -#: classes/pref/feeds.php:660 -#: classes/pref/feeds.php:873 +#: classes/pref/feeds.php:660 classes/pref/feeds.php:873 msgid "Include in e-mail digest" msgstr "Inclure dans la synthèse quotidienne par courrier électronique" -#: classes/pref/feeds.php:673 -#: classes/pref/feeds.php:879 +#: classes/pref/feeds.php:673 classes/pref/feeds.php:879 msgid "Always display image attachments" msgstr "Toujours afficher les images jointes" -#: classes/pref/feeds.php:686 -#: classes/pref/feeds.php:887 +#: classes/pref/feeds.php:686 classes/pref/feeds.php:887 msgid "Do not embed images" msgstr "Ne pas intégrer les images" -#: classes/pref/feeds.php:699 -#: classes/pref/feeds.php:895 +#: classes/pref/feeds.php:699 classes/pref/feeds.php:895 msgid "Cache images locally" msgstr "Enregistrer localement les images" -#: classes/pref/feeds.php:711 -#: classes/pref/feeds.php:901 +#: classes/pref/feeds.php:711 classes/pref/feeds.php:901 msgid "Mark updated articles as unread" msgstr "Marquer les article mis à jour comme non lus" @@ -2257,10 +2164,11 @@ msgstr "Réinscription aux mises à jour en push" #: classes/pref/feeds.php:760 msgid "Resets PubSubHubbub subscription status for push-enabled feeds." -msgstr "Réinitialiser l'état de l'inscription PubSubHubbub pour les flux en mise à jour push." +msgstr "" +"Réinitialiser l'état de l'inscription PubSubHubbub pour les flux en mise à " +"jour push." -#: classes/pref/feeds.php:1156 -#: classes/pref/feeds.php:1209 +#: classes/pref/feeds.php:1156 classes/pref/feeds.php:1209 msgid "All done." msgstr "Tout est terminé." @@ -2276,8 +2184,7 @@ msgstr "Flux inactifs" msgid "Edit selected feeds" msgstr "Modifier les flux sélectionnés" -#: classes/pref/feeds.php:1325 -#: js/prefs.js:1764 +#: classes/pref/feeds.php:1325 js/prefs.js:1764 msgid "Batch subscribe" msgstr "Abonnement par lots" @@ -2310,12 +2217,17 @@ msgid "OPML" msgstr "OPML" #: classes/pref/feeds.php:1411 -msgid "Using OPML you can export and import your feeds, filters, labels and Tiny Tiny RSS settings." -msgstr "Avec OPML, vous pouvez exporter et importer vos flux, filtrer, étiquettes et réglages de Tiny Tiny RSS." +msgid "" +"Using OPML you can export and import your feeds, filters, labels and Tiny " +"Tiny RSS settings." +msgstr "" +"Avec OPML, vous pouvez exporter et importer vos flux, filtrer, étiquettes et " +"réglages de Tiny Tiny RSS." #: classes/pref/feeds.php:1411 msgid "Only main settings profile can be migrated using OPML." -msgstr "Seul le profil de réglages principal peut être migré en utilisant OPML." +msgstr "" +"Seul le profil de réglages principal peut être migré en utilisant OPML." #: classes/pref/feeds.php:1424 msgid "Import my OPML" @@ -2334,12 +2246,20 @@ msgid "Export OPML" msgstr "Exporter en OPML" #: classes/pref/feeds.php:1438 -msgid "Your OPML can be published publicly and can be subscribed by anyone who knows the URL below." -msgstr "Votre fichier OPML peut être publié et toute personne qui connaît l'adresse indiquée ci-dessous peut s'y abonner." +msgid "" +"Your OPML can be published publicly and can be subscribed by anyone who " +"knows the URL below." +msgstr "" +"Votre fichier OPML peut être publié et toute personne qui connaît l'adresse " +"indiquée ci-dessous peut s'y abonner." #: classes/pref/feeds.php:1440 -msgid "Published OPML does not include your Tiny Tiny RSS settings, feeds that require authentication or feeds hidden from Popular feeds." -msgstr "Les OPML publiés n'incluent pas vos réglages de Tiny Tiny RSS, les flux qui nécessitent une authentification, ou les flux cachés des Flux Populaires." +msgid "" +"Published OPML does not include your Tiny Tiny RSS settings, feeds that " +"require authentication or feeds hidden from Popular feeds." +msgstr "" +"Les OPML publiés n'incluent pas vos réglages de Tiny Tiny RSS, les flux qui " +"nécessitent une authentification, ou les flux cachés des Flux Populaires." #: classes/pref/feeds.php:1442 msgid "Public OPML URL" @@ -2354,8 +2274,12 @@ msgid "Firefox integration" msgstr "Intégration à Firefox" #: classes/pref/feeds.php:1454 -msgid "This Tiny Tiny RSS site can be used as a Firefox Feed Reader by clicking the link below." -msgstr "Ce site Tiny Tiny RSS peut être utilisé comme lecteur de flux dans Firefox en cliquant sur le lien ci-dessous." +msgid "" +"This Tiny Tiny RSS site can be used as a Firefox Feed Reader by clicking the " +"link below." +msgstr "" +"Ce site Tiny Tiny RSS peut être utilisé comme lecteur de flux dans Firefox " +"en cliquant sur le lien ci-dessous." #: classes/pref/feeds.php:1461 msgid "Click here to register this site as a feed reader." @@ -2366,8 +2290,12 @@ msgid "Published & shared articles / Generated feeds" msgstr "Articles publiés et partagés / Flux générés" #: classes/pref/feeds.php:1471 -msgid "Published articles are exported as a public RSS feed and can be subscribed by anyone who knows the URL specified below." -msgstr "Les articles publiés sont exportés comme un flux RSS public et toute personne qui connaît l'adresse indiquée ci-dessous peut s'y abonner." +msgid "" +"Published articles are exported as a public RSS feed and can be subscribed " +"by anyone who knows the URL specified below." +msgstr "" +"Les articles publiés sont exportés comme un flux RSS public et toute " +"personne qui connaît l'adresse indiquée ci-dessous peut s'y abonner." #: classes/pref/feeds.php:1479 msgid "Display URL" @@ -2386,22 +2314,26 @@ msgid "Unshare all articles" msgstr "Désactiver le partage pour tous les articles" #: classes/pref/feeds.php:1568 -msgid "These feeds have not been updated with new content for 3 months (oldest first):" -msgstr "Les flux suivants n'ont pas été mis à jour depuis 3 mois (par âge décroissant) :" +msgid "" +"These feeds have not been updated with new content for 3 months (oldest " +"first):" +msgstr "" +"Les flux suivants n'ont pas été mis à jour depuis 3 mois (par âge " +"décroissant) :" -#: classes/pref/feeds.php:1604 -#: classes/pref/feeds.php:1670 +#: classes/pref/feeds.php:1604 classes/pref/feeds.php:1670 msgid "Click to edit feed" msgstr "Cliquez pour modifier le flux" -#: classes/pref/feeds.php:1622 -#: classes/pref/feeds.php:1690 +#: classes/pref/feeds.php:1622 classes/pref/feeds.php:1690 msgid "Unsubscribe from selected feeds" msgstr "Se désabonner des flux sélectionnés" #: classes/pref/feeds.php:1795 msgid "Add one valid RSS feed per line (no feed detection is done)" -msgstr "Ajoutez un flux RSS valide par ligne (aucune détection de flux n'est réalisée)" +msgstr "" +"Ajoutez un flux RSS valide par ligne (aucune détection de flux n'est " +"réalisée)" #: classes/pref/feeds.php:1804 msgid "Feeds to subscribe, One per line" @@ -2420,9 +2352,8 @@ msgid "Refresh" msgstr "Actualiser" #: classes/pref/system.php:43 -#, fuzzy msgid "Clear log" -msgstr "Ré-initialiser les couleurs" +msgstr "Vider le journal" #: classes/pref/system.php:48 msgid "Error" @@ -2444,8 +2375,7 @@ msgstr "Date" msgid "Close article" msgstr "Fermer l'article" -#: plugins/nsfw/init.php:29 -#: plugins/nsfw/init.php:40 +#: plugins/nsfw/init.php:29 plugins/nsfw/init.php:40 msgid "Not work safe (click to toggle)" msgstr "Non convenable au travail (cliquer pour basculer)" @@ -2455,7 +2385,8 @@ msgstr "Plugin NSFW" #: plugins/nsfw/init.php:77 msgid "Tags to consider NSFW (comma-separated)" -msgstr "Tags à considérer non convenables au travail (séparés par des virgules)" +msgstr "" +"Tags à considérer non convenables au travail (séparés par des virgules)" #: plugins/nsfw/init.php:98 msgid "Configuration saved." @@ -2473,15 +2404,12 @@ msgstr "Le mot de passe a été modifié." msgid "Old password is incorrect." msgstr "L'ancien mot de passe n'est pas correct." -#: plugins/mailto/init.php:49 -#: plugins/mailto/init.php:55 -#: plugins/mail/init.php:64 -#: plugins/mail/init.php:70 +#: plugins/mailto/init.php:49 plugins/mailto/init.php:55 +#: plugins/mail/init.php:64 plugins/mail/init.php:70 msgid "[Forwarded]" msgstr "[Transféré]" -#: plugins/mailto/init.php:49 -#: plugins/mail/init.php:64 +#: plugins/mailto/init.php:49 plugins/mail/init.php:64 msgid "Multiple articles" msgstr "Articles multiples" @@ -2494,8 +2422,11 @@ msgid "Forward selected article(s) by email." msgstr "Transférer le ou les article(s) par mail." #: plugins/mailto/init.php:78 -msgid "You should be able to edit the message before sending in your mail client." -msgstr "Vous devriez pouvoir modifier le message avant son envoi dans votre client de messagerie." +msgid "" +"You should be able to edit the message before sending in your mail client." +msgstr "" +"Vous devriez pouvoir modifier le message avant son envoi dans votre client " +"de messagerie." #: plugins/mailto/init.php:83 msgid "Close this dialog" @@ -2506,8 +2437,13 @@ msgid "Bookmarklets" msgstr "Bookmarklets" #: plugins/bookmarklets/init.php:22 -msgid "Drag the link below to your browser toolbar, open the feed you're interested in in your browser and click on the link to subscribe to it." -msgstr "Glissez le lien ci-dessous dans la barre d'outil de votre navigateur, ouvrez le flux qui vous intéresse et cliquez sur le lien pour vous abonner à ce flux." +msgid "" +"Drag the link below to your browser toolbar, open the feed you're interested " +"in in your browser and click on the link to subscribe to it." +msgstr "" +"Glissez le lien ci-dessous dans la barre d'outil de votre navigateur, ouvrez " +"le flux qui vous intéresse et cliquez sur le lien pour vous abonner à ce " +"flux." #: plugins/bookmarklets/init.php:26 #, php-format @@ -2527,9 +2463,13 @@ msgid "Import and export" msgstr "Importer et exporter" #: plugins/import_export/init.php:60 -#, fuzzy -msgid "You can export and import your Starred and Archived articles for safekeeping or when migrating between tt-rss instances of same version." -msgstr "Vous pouvez exporter et importer vos articles remarquables et archivés afin de les sauvegarder ou pour les transférer entre deux instances de tt-rss." +msgid "" +"You can export and import your Starred and Archived articles for safekeeping " +"or when migrating between tt-rss instances of same version." +msgstr "" +"Vous pouvez exporter et importer vos articles remarquables et archivés afin " +"de les sauvegarder ou pour les transférer entre deux instances de tt-rss " +"(même version)." #: plugins/import_export/init.php:65 msgid "Export my data" @@ -2580,8 +2520,7 @@ msgstr "Impossible de charger le document XML." msgid "Prepare data" msgstr "Préparer les données" -#: plugins/import_export/init.php:446 -#: plugins/googlereaderimport/init.php:92 +#: plugins/import_export/init.php:446 plugins/googlereaderimport/init.php:92 msgid "No file uploaded." msgstr "Aucun fichier envoyé." @@ -2601,8 +2540,7 @@ msgstr "Sujet :" msgid "Send e-mail" msgstr "Envoyer le mail" -#: plugins/note/init.php:26 -#: plugins/note/note.js:11 +#: plugins/note/init.php:26 plugins/note/note.js:11 msgid "Edit article note" msgstr "Modifier l'annotation de l'article" @@ -2621,7 +2559,9 @@ msgstr "Importer les articles marqués ou partagés de Google Reader" #: plugins/googlereaderimport/init.php:357 msgid "Paste your starred.json or shared.json into the form below." -msgstr "Collez votre fichier starred.json ou shared.json dans le formulaire ci-dessous." +msgstr "" +"Collez votre fichier starred.json ou shared.json dans le formulaire ci-" +"dessous." #: plugins/googlereaderimport/init.php:371 msgid "Import my Starred items" @@ -2631,35 +2571,29 @@ msgstr "Importer mes éléments partagés" msgid "Linked" msgstr "Instances liées" -#: plugins/instances/init.php:204 -#: plugins/instances/init.php:395 +#: plugins/instances/init.php:204 plugins/instances/init.php:395 msgid "Instance" msgstr "Instance" -#: plugins/instances/init.php:215 -#: plugins/instances/init.php:312 +#: plugins/instances/init.php:215 plugins/instances/init.php:312 #: plugins/instances/init.php:404 msgid "Instance URL" msgstr "URL de l'instance" -#: plugins/instances/init.php:226 -#: plugins/instances/init.php:414 +#: plugins/instances/init.php:226 plugins/instances/init.php:414 msgid "Access key:" msgstr "Clef d'accès :" -#: plugins/instances/init.php:229 -#: plugins/instances/init.php:313 +#: plugins/instances/init.php:229 plugins/instances/init.php:313 #: plugins/instances/init.php:417 msgid "Access key" msgstr "Clef d'accès" -#: plugins/instances/init.php:233 -#: plugins/instances/init.php:421 +#: plugins/instances/init.php:233 plugins/instances/init.php:421 msgid "Use one access key for both linked instances." msgstr "Utilisez une clef d'accès pour les deux instances liées." -#: plugins/instances/init.php:241 -#: plugins/instances/init.php:429 +#: plugins/instances/init.php:241 plugins/instances/init.php:429 msgid "Generate new key" msgstr "Générer une nouvelle clef" @@ -2668,8 +2602,12 @@ msgid "Link instance" msgstr "Lier une instance" #: plugins/instances/init.php:304 -msgid "You can connect other instances of Tiny Tiny RSS to this one to share Popular feeds. Link to this instance of Tiny Tiny RSS by using this URL:" -msgstr "Vous pouvez connecter d'autres instances de Tiny Tiny RSS à celle-ci pour partager les flux populaires. Pour cela, utilisez l'URL suivante :" +msgid "" +"You can connect other instances of Tiny Tiny RSS to this one to share " +"Popular feeds. Link to this instance of Tiny Tiny RSS by using this URL:" +msgstr "" +"Vous pouvez connecter d'autres instances de Tiny Tiny RSS à celle-ci pour " +"partager les flux populaires. Pour cela, utilisez l'URL suivante :" #: plugins/instances/init.php:314 msgid "Last connected" @@ -2695,8 +2633,7 @@ msgstr "Partager par URL" msgid "You can share this article by the following unique URL:" msgstr "Vous pouvez partager cet article avec l'URL unique suivante :" -#: plugins/updater/init.php:321 -#: plugins/updater/init.php:338 +#: plugins/updater/init.php:321 plugins/updater/init.php:338 #: plugins/updater/updater.js:10 msgid "Update Tiny Tiny RSS" msgstr "Mettre à jour Tiny Tiny RSS" @@ -2718,8 +2655,14 @@ msgid "Your database will not be modified." msgstr "Votre base de données ne sera pas modifiée." #: plugins/updater/init.php:360 -msgid "Your current tt-rss installation directory will not be modified. It will be renamed and left in the parent directory. You will be able to migrate all your customized files after update finishes." -msgstr "Votre dossier tt-rss ne sera pas modifié. Il sera renommé et laissé tel quel dans le dossier parent. Vous pourrez recopier vos fichiers personnalisés après la mise à jour." +msgid "" +"Your current tt-rss installation directory will not be modified. It will be " +"renamed and left in the parent directory. You will be able to migrate all " +"your customized files after update finishes." +msgstr "" +"Votre dossier tt-rss ne sera pas modifié. Il sera renommé et laissé tel quel " +"dans le dossier parent. Vous pourrez recopier vos fichiers personnalisés " +"après la mise à jour." #: plugins/updater/init.php:361 msgid "Ready to update." @@ -2729,8 +2672,7 @@ msgstr "Prêt à mettre à jour." msgid "Start update" msgstr "Commencer la mise à jour" -#: js/feedlist.js:397 -#: js/feedlist.js:425 +#: js/feedlist.js:397 js/feedlist.js:425 msgid "Mark all articles in %s as read?" msgstr "Marquer tous les articles de %s comme lus ?" @@ -2751,8 +2693,13 @@ msgid "The error will be reported to the configured log destination." msgstr "L'erreur sera reportée vers la destination configurée." #: js/functions.js:107 -msgid "Are you sure to report this exception to tt-rss.org? The report will include your browser information. Your IP would be saved in the database." -msgstr "Êtes-vous sûr de vouloir signaler cette erreur sur tt-rss.org ? Le rapport incluera des informations sur votre navigateur. Votre adresse IP sera sauvegardée dans la base de données." +msgid "" +"Are you sure to report this exception to tt-rss.org? The report will include " +"your browser information. Your IP would be saved in the database." +msgstr "" +"Êtes-vous sûr de vouloir signaler cette erreur sur tt-rss.org ? Le rapport " +"incluera des informations sur votre navigateur. Votre adresse IP sera " +"sauvegardée dans la base de données." #: js/functions.js:236 msgid "Click to close" @@ -2843,15 +2790,18 @@ msgid "Create Filter" msgstr "Créer un filtre" #: js/functions.js:1191 -msgid "Reset subscription? Tiny Tiny RSS will try to subscribe to the notification hub again on next feed update." -msgstr "Réinitialiser l'inscription ? Tiny Tiny RSS essayera de se réinscrire au hub de notification lors de la prochaine mise à jour du flux." +msgid "" +"Reset subscription? Tiny Tiny RSS will try to subscribe to the notification " +"hub again on next feed update." +msgstr "" +"Réinitialiser l'inscription ? Tiny Tiny RSS essayera de se réinscrire au hub " +"de notification lors de la prochaine mise à jour du flux." #: js/functions.js:1202 msgid "Subscription reset." msgstr "Abonnement réinitialisé." -#: js/functions.js:1212 -#: js/tt-rss.js:677 +#: js/functions.js:1212 js/tt-rss.js:677 msgid "Unsubscribe from %s?" msgstr "Se désabonner de %s ?" @@ -2867,14 +2817,11 @@ msgstr "Veuillez saisir un titre pour cette catégorie :" msgid "Generate new syndication address for this feed?" msgstr "Générer une nouvelle adresse d'abonnement pour ce flux ?" -#: js/functions.js:1359 -#: js/prefs.js:1231 +#: js/functions.js:1359 js/prefs.js:1231 msgid "Trying to change address..." msgstr "Changement de l'adresse..." -#: js/functions.js:1546 -#: js/tt-rss.js:422 -#: js/tt-rss.js:658 +#: js/functions.js:1546 js/tt-rss.js:422 js/tt-rss.js:658 msgid "You can't edit this kind of feed." msgstr "Vous ne pouvez pas modifier ce type de flux." @@ -2882,9 +2829,7 @@ msgstr "Vous ne pouvez pas modifier ce type de flux." msgid "Edit Feed" msgstr "Modifier le flux" -#: js/functions.js:1567 -#: js/prefs.js:194 -#: js/prefs.js:749 +#: js/functions.js:1567 js/prefs.js:194 js/prefs.js:749 msgid "Saving data..." msgstr "Enregistrement des données..." @@ -2892,33 +2837,29 @@ msgstr "Enregistrement des données..." msgid "More Feeds" msgstr "D'autres flux" -#: js/functions.js:1660 -#: js/functions.js:1770 -#: js/prefs.js:397 -#: js/prefs.js:427 -#: js/prefs.js:459 -#: js/prefs.js:642 -#: js/prefs.js:662 -#: js/prefs.js:1207 +#: js/functions.js:1660 js/functions.js:1770 js/prefs.js:397 js/prefs.js:427 +#: js/prefs.js:459 js/prefs.js:642 js/prefs.js:662 js/prefs.js:1207 #: js/prefs.js:1352 msgid "No feeds are selected." msgstr "Aucun flux sélectionné." #: js/functions.js:1702 -msgid "Remove selected feeds from the archive? Feeds with stored articles will not be removed." -msgstr "Supprimer les flux sélectionnés de l'archive ? Les flux contenant des articles stockés ne seront pas supprimés." +msgid "" +"Remove selected feeds from the archive? Feeds with stored articles will not " +"be removed." +msgstr "" +"Supprimer les flux sélectionnés de l'archive ? Les flux contenant des " +"articles stockés ne seront pas supprimés." #: js/functions.js:1741 msgid "Feeds with update errors" msgstr "Flux avec des erreurs de mise à jour" -#: js/functions.js:1752 -#: js/prefs.js:1189 +#: js/functions.js:1752 js/prefs.js:1189 msgid "Remove selected feeds?" msgstr "Supprimer les flux sélectionnés ?" -#: js/functions.js:1755 -#: js/prefs.js:1192 +#: js/functions.js:1755 js/prefs.js:1192 msgid "Removing selected feeds..." msgstr "Suppression des flux sélectionnés..." @@ -2944,7 +2885,8 @@ msgstr "Veuillez saisir l'identifiant :" #: js/prefs.js:62 msgid "Can't create user: no login specified." -msgstr "Impossible de créer l'utilisateur : aucun identifiant n'a été spécifié." +msgstr "" +"Impossible de créer l'utilisateur : aucun identifiant n'a été spécifié." #: js/prefs.js:66 msgid "Adding user..." @@ -2974,23 +2916,23 @@ msgstr "Supprimer les étiquettes sélectionnées ?" msgid "Removing selected labels..." msgstr "Suppression des étiquettes sélectionnées..." -#: js/prefs.js:295 -#: js/prefs.js:1393 +#: js/prefs.js:295 js/prefs.js:1393 msgid "No labels are selected." msgstr "Aucune étiquette sélectionnée." #: js/prefs.js:309 -msgid "Remove selected users? Neither default admin nor your account will be removed." -msgstr "Supprimer les utilisateurs sélectionnés ? L'administrateur par défaut et votre compte utilisateur ne seront pas supprimés." +msgid "" +"Remove selected users? Neither default admin nor your account will be " +"removed." +msgstr "" +"Supprimer les utilisateurs sélectionnés ? L'administrateur par défaut et " +"votre compte utilisateur ne seront pas supprimés." #: js/prefs.js:312 msgid "Removing selected users..." msgstr "Suppression des utilisateurs sélectionnés..." -#: js/prefs.js:326 -#: js/prefs.js:507 -#: js/prefs.js:528 -#: js/prefs.js:567 +#: js/prefs.js:326 js/prefs.js:507 js/prefs.js:528 js/prefs.js:567 msgid "No users are selected." msgstr "Aucun utilisateur sélectionné." @@ -3002,9 +2944,7 @@ msgstr "Supprimer les filtres sélectionnés ?" msgid "Removing selected filters..." msgstr "Suppression des filtres sélectionnés..." -#: js/prefs.js:359 -#: js/prefs.js:597 -#: js/prefs.js:616 +#: js/prefs.js:359 js/prefs.js:597 js/prefs.js:616 msgid "No filters are selected." msgstr "Aucun filtre sélectionné." @@ -3022,7 +2962,8 @@ msgstr "Veuillez sélectionner un seul flux." #: js/prefs.js:418 msgid "Erase all non-starred articles in selected feed?" -msgstr "Supprimer tous les articles non-remarquables dans le flux sélectionné ?" +msgstr "" +"Supprimer tous les articles non-remarquables dans le flux sélectionné ?" #: js/prefs.js:421 msgid "Clearing selected feed..." @@ -3030,7 +2971,9 @@ msgstr "Nettoyage du flux sélectionné..." #: js/prefs.js:440 msgid "How many days of articles to keep (0 - use default)?" -msgstr "Combien de jours faut-il conserver les articles (0 pour utiliser la valeur par défaut) ?" +msgstr "" +"Combien de jours faut-il conserver les articles (0 pour utiliser la valeur " +"par défaut) ?" #: js/prefs.js:443 msgid "Purging selected feed..." @@ -3044,9 +2987,7 @@ msgstr "L'identifiant ne peut pas être vide." msgid "Saving user..." msgstr "Sauvegarde de l'utilisateur..." -#: js/prefs.js:512 -#: js/prefs.js:533 -#: js/prefs.js:572 +#: js/prefs.js:512 js/prefs.js:533 js/prefs.js:572 msgid "Please select only one user." msgstr "Veuillez sélectionner un seul utilisateur." @@ -3090,8 +3031,7 @@ msgstr "Import OPML" msgid "Please choose an OPML file first." msgstr "Veuillez d'abord sélectionner un fichier OPML." -#: js/prefs.js:815 -#: plugins/import_export/import_export.js:115 +#: js/prefs.js:815 plugins/import_export/import_export.js:115 #: plugins/googlereaderimport/init.js:45 msgid "Importing, please wait..." msgstr "Import en cours, veuillez patienter..." @@ -3101,8 +3041,11 @@ msgid "Reset to defaults?" msgstr "Revenir aux valeurs par défaut ?" #: js/prefs.js:1096 -msgid "Remove category %s? Any nested feeds would be placed into Uncategorized." -msgstr "Supprimer la categorie %s ? Tous les flux enfants seront placés dans Sans catégorie." +msgid "" +"Remove category %s? Any nested feeds would be placed into Uncategorized." +msgstr "" +"Supprimer la categorie %s ? Tous les flux enfants seront placés dans Sans " +"catégorie." #: js/prefs.js:1102 msgid "Removing category..." @@ -3150,7 +3093,9 @@ msgstr "Recalcul du score des flux sélectionnés..." #: js/prefs.js:1359 msgid "Rescore all articles? This operation may take a lot of time." -msgstr "Recalculer le score de tous les articles ? Cette opération peut prendre beaucoup de temps." +msgstr "" +"Recalculer le score de tous les articles ? Cette opération peut prendre " +"beaucoup de temps." #: js/prefs.js:1362 msgid "Rescoring feeds..." @@ -3165,8 +3110,11 @@ msgid "Settings Profiles" msgstr "Paramètres des profils" #: js/prefs.js:1425 -msgid "Remove selected profiles? Active and default profiles will not be removed." -msgstr "Supprimer les profils sélectionnés ? Les profils actifs et par défaut ne seront pas supprimés." +msgid "" +"Remove selected profiles? Active and default profiles will not be removed." +msgstr "" +"Supprimer les profils sélectionnés ? Les profils actifs et par défaut ne " +"seront pas supprimés." #: js/prefs.js:1428 msgid "Removing selected profiles..." @@ -3176,13 +3124,11 @@ msgstr "Suppression des profils sélectionnés..." msgid "No profiles are selected." msgstr "Aucun profil sélectionné." -#: js/prefs.js:1451 -#: js/prefs.js:1504 +#: js/prefs.js:1451 js/prefs.js:1504 msgid "Activate selected profile?" msgstr "Activer le profil selectionné ?" -#: js/prefs.js:1467 -#: js/prefs.js:1520 +#: js/prefs.js:1467 js/prefs.js:1520 msgid "Please choose a profile to activate." msgstr "Veuillez sélectionner un profil à activer." @@ -3192,10 +3138,11 @@ msgstr "Création d'un profil..." #: js/prefs.js:1528 msgid "This will invalidate all previously generated feed URLs. Continue?" -msgstr "Ceci va invalider toutes les URL de flux générées auparavant. Souhaitez-vous continuer ?" +msgstr "" +"Ceci va invalider toutes les URL de flux générées auparavant. Souhaitez-vous " +"continuer ?" -#: js/prefs.js:1531 -#: js/prefs.js:1550 +#: js/prefs.js:1531 js/prefs.js:1550 msgid "Clearing URLs..." msgstr "Nettoyage des URL..." @@ -3205,7 +3152,9 @@ msgstr "URL générées supprimées." #: js/prefs.js:1547 msgid "This will invalidate all previously shared article URLs. Continue?" -msgstr "Ceci va invalider tous les articles partagés par URL. Souhaitez-vous continuer ?" +msgstr "" +"Ceci va invalider tous les articles partagés par URL. Souhaitez-vous " +"continuer ?" #: js/prefs.js:1557 msgid "Shared URLs cleared." @@ -3225,7 +3174,7 @@ msgstr "Effacer les données pour ce plugin ?" #: js/prefs.js:1824 msgid "Clear all messages in the error log?" -msgstr "" +msgstr "Vider le journal des erreurs ?" #: js/tt-rss.js:127 msgid "Mark all articles as read?" @@ -3251,8 +3200,7 @@ msgstr "Sélectionner des éléments par tags" msgid "You can't unsubscribe from the category." msgstr "Vous ne pouvez pas vous désabonner de la catégorie." -#: js/tt-rss.js:671 -#: js/tt-rss.js:825 +#: js/tt-rss.js:671 js/tt-rss.js:825 msgid "Please select some feed first." msgstr "Veuillez d'abord sélectionner un flux." @@ -3298,16 +3246,9 @@ msgid_plural "%d articles selected" msgstr[0] "%d article sélectionné" msgstr[1] "%d articles sélectionnés" -#: js/viewfeed.js:726 -#: js/viewfeed.js:754 -#: js/viewfeed.js:781 -#: js/viewfeed.js:844 -#: js/viewfeed.js:878 -#: js/viewfeed.js:998 -#: js/viewfeed.js:1041 -#: js/viewfeed.js:1094 -#: js/viewfeed.js:2071 -#: plugins/mailto/init.js:7 +#: js/viewfeed.js:726 js/viewfeed.js:754 js/viewfeed.js:781 js/viewfeed.js:844 +#: js/viewfeed.js:878 js/viewfeed.js:998 js/viewfeed.js:1041 +#: js/viewfeed.js:1094 js/viewfeed.js:2071 plugins/mailto/init.js:7 #: plugins/mail/mail.js:7 msgid "No articles are selected." msgstr "Aucun article sélectionné." @@ -3337,8 +3278,11 @@ msgstr[0] "Restaurer %d article archivé ?" msgstr[1] "Restaurer %d articles archivés ?" #: js/viewfeed.js:1055 -msgid "Please note that unstarred articles might get purged on next feed update." -msgstr "Veuillez noter que les articles non marqués risquent d'être purgés à la prochaine mise à jour du flux." +msgid "" +"Please note that unstarred articles might get purged on next feed update." +msgstr "" +"Veuillez noter que les articles non marqués risquent d'être purgés à la " +"prochaine mise à jour du flux." #: js/viewfeed.js:1100 msgid "Mark %d selected article in %s as read?" @@ -3403,10 +3347,10 @@ msgstr "URL de l'article :" #: plugins/embed_original/init.js:6 msgid "Sorry, your browser does not support sandboxed iframes." -msgstr "Malheureusement, votre navigateur ne supporte pas les iframes sécurisées." +msgstr "" +"Malheureusement, votre navigateur ne supporte pas les iframes sécurisées." -#: plugins/mailto/init.js:21 -#: plugins/mail/mail.js:21 +#: plugins/mailto/init.js:21 plugins/mail/mail.js:21 msgid "Forward article by email" msgstr "Transférer l'article par email" @@ -3415,10 +3359,18 @@ msgid "Export Data" msgstr "Exporter les données" #: plugins/import_export/import_export.js:40 -msgid "Finished, exported %d article. You can download the data <a class='visibleLink' href='%u'>here</a>." -msgid_plural "Finished, exported %d articles. You can download the data <a class='visibleLink' href='%u'>here</a>." -msgstr[0] "Terminé, %d article exporté. Vous pouvez télécharger les données <a class='visibleLink' href='%u'>ici</a>." -msgstr[1] "Terminé, %d articles exportés. Vous pouvez télécharger les données <a class='visibleLink' href='%u'>ici</a>." +msgid "" +"Finished, exported %d article. You can download the data <a " +"class='visibleLink' href='%u'>here</a>." +msgid_plural "" +"Finished, exported %d articles. You can download the data <a " +"class='visibleLink' href='%u'>here</a>." +msgstr[0] "" +"Terminé, %d article exporté. Vous pouvez télécharger les données <a " +"class='visibleLink' href='%u'>ici</a>." +msgstr[1] "" +"Terminé, %d articles exportés. Vous pouvez télécharger les données <a " +"class='visibleLink' href='%u'>ici</a>." #: plugins/import_export/import_export.js:93 msgid "Data Import" @@ -3456,8 +3408,7 @@ msgstr "Supprimer les instances sélectionnées ?" msgid "Removing selected instances..." msgstr "Suppression des instances sélectionnées..." -#: plugins/instances/instances.js:139 -#: plugins/instances/instances.js:151 +#: plugins/instances/instances.js:139 plugins/instances/instances.js:151 msgid "No instances are selected." msgstr "Aucune instance sélectionnée." @@ -3470,8 +3421,12 @@ msgid "Share article by URL" msgstr "Partager l'article par URL" #: plugins/updater/updater.js:58 -msgid "Backup your tt-rss directory before continuing. Please type 'yes' to continue." -msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « yes » pour continuer." +msgid "" +"Backup your tt-rss directory before continuing. Please type 'yes' to " +"continue." +msgstr "" +"Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « yes » " +"pour continuer." #~ msgid "(Un)hide empty categories" #~ msgstr "Masquer/afficher les catégories vides" @@ -3485,8 +3440,13 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "These feeds have not been updated because of errors:" #~ msgstr "Ces flux n'ont pas été mis à jour à cause d'erreurs :" -#~ msgid "Your browser doesn't support Javascript, which is required for this application to function properly. Please check your browser settings." -#~ msgstr "Votre navigateur ne gère pas JavaScript, alors que c'est nécessaire pour le bon fonctionnement de ce logiciel. Veuillez modifier la configuration de votre navigateur." +#~ msgid "" +#~ "Your browser doesn't support Javascript, which is required for this " +#~ "application to function properly. Please check your browser settings." +#~ msgstr "" +#~ "Votre navigateur ne gère pas JavaScript, alors que c'est nécessaire pour " +#~ "le bon fonctionnement de ce logiciel. Veuillez modifier la configuration " +#~ "de votre navigateur." #~ msgid "Hello," #~ msgstr "Bonjour," @@ -3577,7 +3537,8 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "Sélectionner un thème" #~ msgid "I have scanned the code and would like to enable OTP" -#~ msgstr "J'ai scanné le code et je veux activer les mots de passe à usage unique" +#~ msgstr "" +#~ "J'ai scanné le code et je veux activer les mots de passe à usage unique" #~ msgid "close" #~ msgstr "fermer" @@ -3585,8 +3546,12 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Playing..." #~ msgstr "Lecture..." -#~ msgid "Could not upload file. You might need to adjust upload_max_filesize in PHP.ini (current value = %s)" -#~ msgstr "Envoi du fichier impossible. Vous devriez peut-être modifier la valeur de upload_max_filesize dans PHP.ini (valeur courante : %s)" +#~ msgid "" +#~ "Could not upload file. You might need to adjust upload_max_filesize in " +#~ "PHP.ini (current value = %s)" +#~ msgstr "" +#~ "Envoi du fichier impossible. Vous devriez peut-être modifier la valeur de " +#~ "upload_max_filesize dans PHP.ini (valeur courante : %s)" #~ msgid "Default interval between feed updates" #~ msgstr "Intervalle par défaut entre les mises à jour de flux" @@ -3606,8 +3571,12 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Please backup your database before proceeding." #~ msgstr "Merci de sauvegardez votre base de données avant de poursuivre." -#~ msgid "Your Tiny Tiny RSS database needs update to the latest version (<b>%d</b> to <b>%d</b>)." -#~ msgstr "La base de données de Tiny Tiny RSS a besoin d'être mise à jour (version <b>%d</b> à <b>%d</b>)." +#~ msgid "" +#~ "Your Tiny Tiny RSS database needs update to the latest version (<b>%d</b> " +#~ "to <b>%d</b>)." +#~ msgstr "" +#~ "La base de données de Tiny Tiny RSS a besoin d'être mise à jour (version " +#~ "<b>%d</b> à <b>%d</b>)." #~ msgid "Performing updates..." #~ msgstr "Exécution des mises à jour..." @@ -3625,18 +3594,29 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "ERREUR !" #~ msgid "Finished. Performed <b>%d</b> update up to schema version <b>%d</b>." -#~ msgid_plural "Finished. Performed <b>%d</b> updates up to schema version <b>%d</b>." -#~ msgstr[0] "Terminé. <b>%d</b> modification a été effectuée pour parvenir à la version de schéma <b>%d</b>." -#~ msgstr[1] "Terminé. <b>%d</b> modifications ont été effectuées pour parvenir à la version de schéma <b>%d</b>." +#~ msgid_plural "" +#~ "Finished. Performed <b>%d</b> updates up to schema version <b>%d</b>." +#~ msgstr[0] "" +#~ "Terminé. <b>%d</b> modification a été effectuée pour parvenir à la " +#~ "version de schéma <b>%d</b>." +#~ msgstr[1] "" +#~ "Terminé. <b>%d</b> modifications ont été effectuées pour parvenir à la " +#~ "version de schéma <b>%d</b>." #~ msgid "Your database schema is from a newer version of Tiny Tiny RSS." -#~ msgstr "Votre schéma de base de données provient d'une version plus récente de Tiny Tiny RSS." +#~ msgstr "" +#~ "Votre schéma de base de données provient d'une version plus récente de " +#~ "Tiny Tiny RSS." #~ msgid "Found schema version: <b>%d</b>, required: <b>%d</b>." #~ msgstr "Version du schéma trouvée : <b>%d</b>, requise : <b>%d</b>." -#~ msgid "Schema upgrade impossible. Please update Tiny Tiny RSS files to the newer version and continue." -#~ msgstr "Mise à jour du schéma impossible. Veuillez mettre à jour les fichiers de Tiny Tiny RSS vers une version plus récente et continuer." +#~ msgid "" +#~ "Schema upgrade impossible. Please update Tiny Tiny RSS files to the newer " +#~ "version and continue." +#~ msgstr "" +#~ "Mise à jour du schéma impossible. Veuillez mettre à jour les fichiers de " +#~ "Tiny Tiny RSS vers une version plus récente et continuer." #~ msgid "Mark feed as read" #~ msgstr "Marquer le flux comme lu" @@ -3644,8 +3624,12 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Enable external API" #~ msgstr "Activer les API externes" -#~ msgid "When this option is enabled, headlines in Special feeds and Labels are grouped by feeds" -#~ msgstr "Avec cette option activée, les entêtes dans les flux spéciaux et par étiquettes sont regroupés par flux" +#~ msgid "" +#~ "When this option is enabled, headlines in Special feeds and Labels are " +#~ "grouped by feeds" +#~ msgstr "" +#~ "Avec cette option activée, les entêtes dans les flux spéciaux et par " +#~ "étiquettes sont regroupés par flux" #~ msgid "Title or Content" #~ msgstr "Titre ou contenu" @@ -3671,8 +3655,15 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Modify score" #~ msgstr "Modifier le score" -#~ msgid "This option is useful when you are reading several planet-type aggregators with partially colliding userbase. When disabled, it forces same posts from different feeds to appear only once." -#~ msgstr "Cette option est utile si vous lisez des articles venant d'agrégateurs de type «planet», dans lesquels certains flux se recoupent largement. Lorsque cette option est désactivée, les articles en double sont affichés en un seul exemplaire." +#~ msgid "" +#~ "This option is useful when you are reading several planet-type " +#~ "aggregators with partially colliding userbase. When disabled, it forces " +#~ "same posts from different feeds to appear only once." +#~ msgstr "" +#~ "Cette option est utile si vous lisez des articles venant d'agrégateurs de " +#~ "type «planet», dans lesquels certains flux se recoupent largement. " +#~ "Lorsque cette option est désactivée, les articles en double sont affichés " +#~ "en un seul exemplaire." #~ msgid "Date syntax appears to be correct:" #~ msgstr "La syntaxe des dates semble être correcte :" @@ -3695,7 +3686,8 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "Marquer tous les articles visibles de %s comme lus ?" #~ msgid "Form secret key incorrect. Please enable cookies and try again." -#~ msgstr "Clé de formulaire incorecte. Veuillez activer les cookies et réessayer." +#~ msgstr "" +#~ "Clé de formulaire incorecte. Veuillez activer les cookies et réessayer." #~ msgid "Score" #~ msgstr "Score" @@ -3707,7 +3699,8 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "Activer les options voulues avec les cases à cocher sur la droite:" #~ msgid "New articles available in this feed (click to show)" -#~ msgstr "Nouveaux articles disponibles dans ce flux (cliquer pour les afficher)" +#~ msgstr "" +#~ "Nouveaux articles disponibles dans ce flux (cliquer pour les afficher)" #~ msgid "Share on identi.ca" #~ msgstr "Partager sur identi.ca" @@ -3739,8 +3732,12 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Back to feeds" #~ msgstr "Retour aux flux" -#~ msgid "This will clear your stored authentication information for Twitter. Continue?" -#~ msgstr "Cela va effacer les informations d'authentification pour Twitter. Voulez-vous continuer ?" +#~ msgid "" +#~ "This will clear your stored authentication information for Twitter. " +#~ "Continue?" +#~ msgstr "" +#~ "Cela va effacer les informations d'authentification pour Twitter. Voulez-" +#~ "vous continuer ?" #~ msgid "Finished: %d articles processed, %d imported, %d feeds created." #~ msgstr "Terminé : %d articles traités, %d importés, %d flux créés." @@ -3771,7 +3768,8 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "Naviguer dans les articles" #~ msgid "Mark articles below/above active one as read" -#~ msgstr "Marquer les articles au-dessous/au-dessus de l'article actif comme lus" +#~ msgstr "" +#~ "Marquer les articles au-dessous/au-dessus de l'article actif comme lus" #~ msgid "Scroll article content" #~ msgstr "Faire déflier le contenu de l'article" @@ -3800,8 +3798,12 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Focus search (if present)" #~ msgstr "Focus sur la recherche (si affichée)" -#~ msgid "<b>Note:</b> not all actions may be available, depending on Tiny Tiny RSS configuration and your access level." -#~ msgstr "<b>Note :</b> certaines actions peuvent ne pas être disponibles, selon la configuration de Tiny Tiny RSS et vos permissions." +#~ msgid "" +#~ "<b>Note:</b> not all actions may be available, depending on Tiny Tiny RSS " +#~ "configuration and your access level." +#~ msgstr "" +#~ "<b>Note :</b> certaines actions peuvent ne pas être disponibles, selon la " +#~ "configuration de Tiny Tiny RSS et vos permissions." #~ msgid "Open article in new tab" #~ msgstr "Ouvrir les articles dans un nouvel onglet" @@ -3867,7 +3869,9 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "S'inscrire via Twitter" #~ msgid "Could not connect to Twitter. Refresh the page or try again later." -#~ msgstr "Impossible de se connecter à Twitter. Rafraichissez la page ou essayez à nouveau plus tard." +#~ msgstr "" +#~ "Impossible de se connecter à Twitter. Rafraichissez la page ou essayez à " +#~ "nouveau plus tard." #~ msgid "Congratulations! You have successfully registered with Twitter." #~ msgstr "Félicitation ! Vous vous êtes inscrit via Twitter avec succès." @@ -3888,7 +3892,8 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgstr "Aucune catégorie de flux définie." #~ msgid "<b>Hint:</b> you can drag feeds and categories around." -#~ msgstr "<b>Astuce :</b> vous pouvez faire glisser les flux et les catagories." +#~ msgstr "" +#~ "<b>Astuce :</b> vous pouvez faire glisser les flux et les catagories." #~ msgid "Subscribing using bookmarklet" #~ msgstr "S'abonner via bookmarklet" @@ -3896,11 +3901,19 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Twitter" #~ msgstr "Twitter" -#~ msgid "Before you can update your Twitter feeds, you must register this instance of Tiny Tiny RSS with Twitter.com." -#~ msgstr "Avant de mettre à jour vos flux Twitter, vous devez enregistrer cette instance de Tiny Tiny RSS avec Twitter.com." +#~ msgid "" +#~ "Before you can update your Twitter feeds, you must register this instance " +#~ "of Tiny Tiny RSS with Twitter.com." +#~ msgstr "" +#~ "Avant de mettre à jour vos flux Twitter, vous devez enregistrer cette " +#~ "instance de Tiny Tiny RSS avec Twitter.com." -#~ msgid "You have been successfully registered with Twitter.com and should be able to access your Twitter feeds." -#~ msgstr "Vous vous êtes inscrit avec succès sur Twitter.com et vous devriez être en mesure d'accéder à vos flux Twitter." +#~ msgid "" +#~ "You have been successfully registered with Twitter.com and should be able " +#~ "to access your Twitter feeds." +#~ msgstr "" +#~ "Vous vous êtes inscrit avec succès sur Twitter.com et vous devriez être " +#~ "en mesure d'accéder à vos flux Twitter." #~ msgid "Register with Twitter.com" #~ msgstr "S'inscrire sur Twitter.com" @@ -3917,8 +3930,12 @@ msgstr "Sauvegardez votre dossier tt-rss avant de continuer. Veuillez taper « y #~ msgid "Filter Test Results" #~ msgstr "Résultats du test du filtre" -#~ msgid "When \"Mark as read\" button is clicked in toolbar, automatically open next feed with unread articles." -#~ msgstr "Lorsque vous cliquez sur « Marquer comme lus », le prochain flux contenant des articles non lus est automatiquement affiché" +#~ msgid "" +#~ "When \"Mark as read\" button is clicked in toolbar, automatically open " +#~ "next feed with unread articles." +#~ msgstr "" +#~ "Lorsque vous cliquez sur « Marquer comme lus », le prochain flux " +#~ "contenant des articles non lus est automatiquement affiché" #~ msgid "Uses server timezone" #~ msgstr "Utilise le fuseau horaire du serveur" diff --git a/locale/sv_SE/LC_MESSAGES/messages.mo b/locale/sv_SE/LC_MESSAGES/messages.mo Binary files differindex 4deddb30e..030e44d97 100644 --- a/locale/sv_SE/LC_MESSAGES/messages.mo +++ b/locale/sv_SE/LC_MESSAGES/messages.mo diff --git a/locale/sv_SE/LC_MESSAGES/messages.po b/locale/sv_SE/LC_MESSAGES/messages.po index 7ab5bd160..1667bfba5 100644 --- a/locale/sv_SE/LC_MESSAGES/messages.po +++ b/locale/sv_SE/LC_MESSAGES/messages.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: Tiny Tiny RSS sv_SE\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-05-15 09:45+0400\n" -"PO-Revision-Date: 2013-05-14 03:37+0100\n" +"POT-Creation-Date: 2013-04-29 15:58+0400\n" +"PO-Revision-Date: 2013-05-24 19:41+0100\n" "Last-Translator: Mattias Tengblad <[email protected]>\n" "Language-Team: Mattias Tengblad <[email protected]>\n" "Language: Svenska\n" @@ -55,49 +55,39 @@ msgstr "3 månader" msgid "Default interval" msgstr "Standardintervall" -#: backend.php:83 -#: backend.php:93 +#: backend.php:83 backend.php:93 msgid "Disable updates" msgstr "Inaktivera uppdateringar" -#: backend.php:84 -#: backend.php:94 +#: backend.php:84 backend.php:94 msgid "Each 15 minutes" msgstr "Varje kvart" -#: backend.php:85 -#: backend.php:95 +#: backend.php:85 backend.php:95 msgid "Each 30 minutes" msgstr "Varje halvtimma" -#: backend.php:86 -#: backend.php:96 +#: backend.php:86 backend.php:96 msgid "Hourly" msgstr "Varje timma" -#: backend.php:87 -#: backend.php:97 +#: backend.php:87 backend.php:97 msgid "Each 4 hours" msgstr "Var 4:e timme" -#: backend.php:88 -#: backend.php:98 +#: backend.php:88 backend.php:98 msgid "Each 12 hours" msgstr "Var 12:e timme" -#: backend.php:89 -#: backend.php:99 +#: backend.php:89 backend.php:99 msgid "Daily" msgstr "Dagligen" -#: backend.php:90 -#: backend.php:100 +#: backend.php:90 backend.php:100 msgid "Weekly" msgstr "Veckovis" -#: backend.php:103 -#: classes/pref/users.php:119 -#: classes/pref/system.php:51 +#: backend.php:103 classes/pref/users.php:123 classes/pref/system.php:44 msgid "User" msgstr "Användare" @@ -110,12 +100,20 @@ msgid "Administrator" msgstr "Administratör" #: errors.php:9 -msgid "This program requires XmlHttpRequest to function properly. Your browser doesn't seem to support it." -msgstr "Denna sida behöver XmlHttpRequest för att kunna köras. Din webbläsare verkar inte stöda det." +msgid "" +"This program requires XmlHttpRequest to function properly. Your browser " +"doesn't seem to support it." +msgstr "" +"Denna sida behöver XmlHttpRequest för att kunna köras. Din webbläsare verkar " +"inte stöda det." #: errors.php:12 -msgid "This program requires cookies to function properly. Your browser doesn't seem to support them." -msgstr "Denna sida behöver cookies för att fungera. Din webbläsare verkar inte stöda det." +msgid "" +"This program requires cookies to function properly. Your browser doesn't " +"seem to support them." +msgstr "" +"Denna sida behöver cookies för att fungera. Din webbläsare verkar inte stöda " +"det." #: errors.php:15 msgid "Backend sanity check failed." @@ -126,8 +124,12 @@ msgid "Frontend sanity check failed." msgstr "Sanitetskontroll för \"frontend\" misslyckades." #: errors.php:19 -msgid "Incorrect database schema version. <a href='db-updater.php'>Please update</a>." -msgstr "Felaktig version för databasshema. <a href='db-updater.php'>Vänligen uppdatera</a>." +msgid "" +"Incorrect database schema version. <a href='db-updater.php'>Please " +"update</a>." +msgstr "" +"Felaktig version för databasshema. <a href='db-updater.php'>Vänligen " +"uppdatera</a>." #: errors.php:21 msgid "Request not authorized." @@ -138,8 +140,12 @@ msgid "No operation to perform." msgstr "Ingen aktivtet vald." #: errors.php:25 -msgid "Could not display feed: query failed. Please check label match syntax or local configuration." -msgstr "Kunde inte visa flöde: sökning misslyckades. Vänligen kontrollera att etiketten har rätt syntax och den lokala konfigurationen" +msgid "" +"Could not display feed: query failed. Please check label match syntax or " +"local configuration." +msgstr "" +"Kunde inte visa flöde: sökning misslyckades. Vänligen kontrollera att " +"etiketten har rätt syntax och den lokala konfigurationen" #: errors.php:27 msgid "Denied. Your access level is insufficient to access this page." @@ -150,47 +156,30 @@ msgid "Configuration check failed" msgstr "Kontrollen av konfiguration misslyckades" #: errors.php:31 -msgid "Your version of MySQL is not currently supported. Please see official site for more information." -msgstr "Din version av MySQL stöds inte för närvarande. Vänligen se den officiella webbplatsen för mer information." +msgid "" +"Your version of MySQL is not currently supported. Please see official site " +"for more information." +msgstr "" +"Din version av MySQL stöds inte för närvarande. Vänligen se den officiella " +"webbplatsen för mer information." #: errors.php:35 msgid "SQL escaping test failed, check your database and PHP configuration" -msgstr "Test för \"SQL escaping\" misslyckades, kontrollera databas och PHP-konfiguration" - -#: index.php:128 -#: index.php:145 -#: index.php:265 -#: prefs.php:97 -#: classes/backend.php:5 -#: classes/pref/labels.php:296 -#: classes/pref/filters.php:678 -#: classes/pref/feeds.php:1372 -#: js/feedlist.js:128 -#: js/feedlist.js:441 -#: js/functions.js:446 -#: js/functions.js:784 -#: js/functions.js:1194 -#: js/functions.js:1330 -#: js/functions.js:1642 -#: js/prefs.js:86 -#: js/prefs.js:576 -#: js/prefs.js:666 -#: js/prefs.js:867 -#: js/prefs.js:1454 -#: js/prefs.js:1507 -#: js/prefs.js:1566 -#: js/prefs.js:1583 -#: js/prefs.js:1599 -#: js/prefs.js:1619 -#: js/prefs.js:1792 -#: js/prefs.js:1808 -#: js/prefs.js:1826 -#: js/tt-rss.js:507 -#: js/tt-rss.js:524 -#: js/viewfeed.js:821 -#: js/viewfeed.js:1250 -#: plugins/import_export/import_export.js:17 -#: plugins/updater/updater.js:17 +msgstr "" +"Test för \"SQL escaping\" misslyckades, kontrollera databas och PHP-" +"konfiguration" + +#: index.php:128 index.php:145 index.php:265 prefs.php:98 +#: classes/backend.php:5 classes/pref/labels.php:296 +#: classes/pref/filters.php:680 classes/pref/feeds.php:1388 +#: plugins/digest/digest_body.php:61 js/feedlist.js:128 js/feedlist.js:439 +#: js/functions.js:446 js/functions.js:784 js/functions.js:1194 +#: js/functions.js:1330 js/functions.js:1642 js/prefs.js:86 js/prefs.js:576 +#: js/prefs.js:666 js/prefs.js:867 js/prefs.js:1454 js/prefs.js:1507 +#: js/prefs.js:1566 js/prefs.js:1583 js/prefs.js:1599 js/prefs.js:1615 +#: js/prefs.js:1634 js/prefs.js:1807 js/prefs.js:1823 js/tt-rss.js:506 +#: js/tt-rss.js:523 js/viewfeed.js:820 js/viewfeed.js:1249 +#: plugins/import_export/import_export.js:17 plugins/updater/updater.js:17 msgid "Loading, please wait..." msgstr "Laddar, vänta..." @@ -210,21 +199,15 @@ msgstr "Adaptivt" msgid "All Articles" msgstr "Alla artiklar" -#: index.php:167 -#: include/functions.php:2008 -#: classes/feeds.php:98 +#: index.php:167 include/functions.php:2007 classes/feeds.php:98 msgid "Starred" msgstr "Stjärnmärkta" -#: index.php:168 -#: include/functions.php:2009 -#: classes/feeds.php:99 +#: index.php:168 include/functions.php:2008 classes/feeds.php:99 msgid "Published" msgstr "Publicerade" -#: index.php:169 -#: classes/feeds.php:85 -#: classes/feeds.php:97 +#: index.php:169 classes/feeds.php:85 classes/feeds.php:97 msgid "Unread" msgstr "Olästa" @@ -260,13 +243,9 @@ msgstr "Äldst först" msgid "Title" msgstr "Titel" -#: index.php:185 -#: index.php:233 -#: include/functions.php:1998 -#: classes/feeds.php:103 -#: classes/feeds.php:424 -#: js/FeedTree.js:128 -#: js/FeedTree.js:156 +#: index.php:185 index.php:233 include/functions.php:1997 +#: classes/feeds.php:103 classes/feeds.php:441 js/FeedTree.js:128 +#: js/FeedTree.js:156 plugins/digest/digest.js:647 msgid "Mark as read" msgstr "Markera som läst" @@ -306,8 +285,7 @@ msgstr "Sök..." msgid "Feed actions:" msgstr "Flödesåtgärder:" -#: index.php:228 -#: classes/handler/public.php:562 +#: index.php:228 classes/handler/public.php:559 msgid "Subscribe to feed..." msgstr "Prenumerera på flöde..." @@ -319,9 +297,7 @@ msgstr "Redigera detta flöde..." msgid "Rescore feed" msgstr "Beräkna flödets poäng på nytt" -#: index.php:231 -#: classes/pref/feeds.php:746 -#: classes/pref/feeds.php:1327 +#: index.php:231 classes/pref/feeds.php:759 classes/pref/feeds.php:1340 #: js/PrefFeedTree.js:73 msgid "Unsubscribe" msgstr "Avsluta prenumeration" @@ -338,8 +314,7 @@ msgstr "Visa/dölj lästa flöden" msgid "Other actions:" msgstr "Andra aktiviteter:" -#: index.php:236 -#: include/functions.php:1984 +#: index.php:236 include/functions.php:1983 msgid "Toggle widescreen mode" msgstr "Växla widescreenläge" @@ -359,54 +334,48 @@ msgstr "Skapa filter..." msgid "Keyboard shortcuts help" msgstr "Hjälp för kortkommandon..." -#: index.php:249 +#: index.php:249 plugins/digest/digest_body.php:75 +#: plugins/mobile/mobile-functions.php:65 +#: plugins/mobile/mobile-functions.php:240 msgid "Logout" msgstr "Logga ut" -#: prefs.php:33 -#: prefs.php:115 -#: include/functions.php:2011 +#: prefs.php:33 prefs.php:116 include/functions.php:2010 #: classes/pref/prefs.php:440 msgid "Preferences" msgstr "Inställningar" -#: prefs.php:106 +#: prefs.php:107 msgid "Keyboard shortcuts" msgstr "Kortkommandon" -#: prefs.php:107 +#: prefs.php:108 msgid "Exit preferences" msgstr "Lämna inställningarna" -#: prefs.php:118 -#: classes/pref/feeds.php:106 -#: classes/pref/feeds.php:1253 -#: classes/pref/feeds.php:1316 +#: prefs.php:119 classes/pref/feeds.php:107 classes/pref/feeds.php:1266 +#: classes/pref/feeds.php:1329 msgid "Feeds" msgstr "Flöden" -#: prefs.php:121 -#: classes/pref/filters.php:154 +#: prefs.php:122 classes/pref/filters.php:156 msgid "Filters" msgstr "Filter" -#: prefs.php:124 -#: include/functions.php:1176 -#: include/functions.php:1832 -#: classes/pref/labels.php:90 +#: prefs.php:125 include/functions.php:1176 include/functions.php:1831 +#: classes/pref/labels.php:90 plugins/mobile/mobile-functions.php:201 msgid "Labels" msgstr "Etiketter" -#: prefs.php:128 +#: prefs.php:129 msgid "Users" msgstr "Användare" -#: prefs.php:131 +#: prefs.php:132 msgid "System" msgstr "System" -#: register.php:184 -#: include/login_form.php:238 +#: register.php:184 include/login_form.php:238 msgid "Create new account" msgstr "Skapa ett nytt konto" @@ -414,27 +383,23 @@ msgstr "Skapa ett nytt konto" msgid "New user registrations are administratively disabled." msgstr "Nyregistrering av användare är inaktiverat." -#: register.php:194 -#: register.php:239 -#: register.php:252 -#: register.php:267 -#: register.php:286 -#: register.php:334 -#: register.php:344 -#: register.php:356 -#: classes/handler/public.php:632 -#: classes/handler/public.php:723 -#: classes/handler/public.php:805 -#: classes/handler/public.php:880 -#: classes/handler/public.php:894 -#: classes/handler/public.php:901 -#: classes/handler/public.php:926 +#: register.php:194 register.php:239 register.php:252 register.php:267 +#: register.php:286 register.php:334 register.php:344 register.php:356 +#: classes/handler/public.php:629 classes/handler/public.php:717 +#: classes/handler/public.php:799 classes/handler/public.php:874 +#: classes/handler/public.php:888 classes/handler/public.php:895 +#: classes/handler/public.php:920 msgid "Return to Tiny Tiny RSS" msgstr "Återgå till Tiny Tiny RSS" #: register.php:215 -msgid "Your temporary password will be sent to the specified email. Accounts, which were not logged in once, are erased automatically 24 hours after temporary password is sent." -msgstr "Ditt tillfälliga lösenords skickas till angiven e-postadress. Om du inte loggar in inom 24 timmar kommer kontot automatiskt att raderas" +msgid "" +"Your temporary password will be sent to the specified email. Accounts, which " +"were not logged in once, are erased automatically 24 hours after temporary " +"password is sent." +msgstr "" +"Ditt tillfälliga lösenords skickas till angiven e-postadress. Om du inte " +"loggar in inom 24 timmar kommer kontot automatiskt att raderas" #: register.php:221 msgid "Desired login:" @@ -444,13 +409,11 @@ msgstr "Önskat användarnamn:" msgid "Check availability" msgstr "Kontrollera tillgänglighet" -#: register.php:226 -#: classes/handler/public.php:763 +#: register.php:226 classes/handler/public.php:757 msgid "Email:" msgstr "E-post:" -#: register.php:229 -#: classes/handler/public.php:768 +#: register.php:229 classes/handler/public.php:762 msgid "How much is two plus two:" msgstr "Hur mycket är två plus två?:" @@ -482,13 +445,9 @@ msgstr "Nyregistrering av användare är för närvarande avstängt." msgid "Tiny Tiny RSS data update script." msgstr "Skript för att uppdatera Tiny Tiny RSS." -#: include/digest.php:109 -#: include/functions.php:1185 -#: include/functions.php:1733 -#: include/functions.php:1818 -#: include/functions.php:1840 -#: classes/opml.php:416 -#: classes/pref/feeds.php:218 +#: include/digest.php:109 include/functions.php:1185 +#: include/functions.php:1732 include/functions.php:1817 +#: include/functions.php:1839 classes/opml.php:416 classes/pref/feeds.php:220 msgid "Uncategorized" msgstr "Okategoriserat" @@ -503,351 +462,315 @@ msgstr[1] "%d arkiverade artiklar" msgid "No feeds found." msgstr "Inga flöden funna." -#: include/functions.php:1174 -#: include/functions.php:1830 +#: include/functions.php:1174 include/functions.php:1829 +#: plugins/mobile/mobile-functions.php:174 msgid "Special" msgstr "Special" -#: include/functions.php:1681 -#: classes/feeds.php:1097 -#: classes/pref/filters.php:425 +#: include/functions.php:1681 classes/feeds.php:1110 +#: classes/pref/filters.php:427 msgid "All feeds" msgstr "Alla flöden" -#: include/functions.php:1885 +#: include/functions.php:1884 msgid "Starred articles" msgstr "Stjärnmärkta artiklar" -#: include/functions.php:1887 +#: include/functions.php:1886 msgid "Published articles" msgstr "Publicerade artiklar" -#: include/functions.php:1889 +#: include/functions.php:1888 msgid "Fresh articles" msgstr "Nya artiklar" -#: include/functions.php:1891 -#: include/functions.php:2006 +#: include/functions.php:1890 include/functions.php:2005 msgid "All articles" msgstr "Alla artiklar" -#: include/functions.php:1893 +#: include/functions.php:1892 msgid "Archived articles" msgstr "Arkiverade artiklar" -#: include/functions.php:1895 +#: include/functions.php:1894 msgid "Recently read" msgstr "Nyligen lästa" -#: include/functions.php:1958 +#: include/functions.php:1957 msgid "Navigation" msgstr "Navigation" -#: include/functions.php:1959 +#: include/functions.php:1958 msgid "Open next feed" msgstr "Öppna nästa flöde" -#: include/functions.php:1960 +#: include/functions.php:1959 msgid "Open previous feed" msgstr "Öppna föregående flöde" -#: include/functions.php:1961 +#: include/functions.php:1960 msgid "Open next article" msgstr "Öppna näst artikel" -#: include/functions.php:1962 +#: include/functions.php:1961 msgid "Open previous article" msgstr "Öppna föregående artikel" -#: include/functions.php:1963 +#: include/functions.php:1962 msgid "Open next article (don't scroll long articles)" msgstr "Öppna nästa artikel (skrolla inte långa artiklar)" -#: include/functions.php:1964 +#: include/functions.php:1963 msgid "Open previous article (don't scroll long articles)" msgstr "Öppna föregående artikel (skrolla inte långa artiklar)" -#: include/functions.php:1965 -#, fuzzy +#: include/functions.php:1964 msgid "Move to next article (don't expand or mark read)" -msgstr "Öppna nästa artikel (skrolla inte långa artiklar)" +msgstr "Gå till nästa artikel (expandera inte eller markera som läst)" -#: include/functions.php:1966 -#, fuzzy +#: include/functions.php:1965 msgid "Move to previous article (don't expand or mark read)" -msgstr "Öppna föregående artikel (skrolla inte långa artiklar)" +msgstr "Gå till föregående artikel (expandera inte eller markera som läst)" -#: include/functions.php:1967 +#: include/functions.php:1966 msgid "Show search dialog" msgstr "Visa sökdialogen" -#: include/functions.php:1968 +#: include/functions.php:1967 msgid "Article" msgstr "Artikel" -#: include/functions.php:1969 +#: include/functions.php:1968 msgid "Toggle starred" msgstr "Växla stjärnmarkering" -#: include/functions.php:1970 -#: js/viewfeed.js:1911 +#: include/functions.php:1969 js/viewfeed.js:1931 msgid "Toggle published" msgstr "Växla publicering" -#: include/functions.php:1971 -#: js/viewfeed.js:1889 +#: include/functions.php:1970 js/viewfeed.js:1909 msgid "Toggle unread" msgstr "Växla olästa" -#: include/functions.php:1972 +#: include/functions.php:1971 msgid "Edit tags" msgstr "Redigera taggar" -#: include/functions.php:1973 +#: include/functions.php:1972 msgid "Dismiss selected" msgstr "Avvisa markerade" -#: include/functions.php:1974 +#: include/functions.php:1973 msgid "Dismiss read" msgstr "Avvisa lästa" -#: include/functions.php:1975 +#: include/functions.php:1974 msgid "Open in new window" msgstr "Öppna i nytt fönster" -#: include/functions.php:1976 -#: js/viewfeed.js:1930 +#: include/functions.php:1975 js/viewfeed.js:1950 msgid "Mark below as read" msgstr "Märk nedanstående som lästa" -#: include/functions.php:1977 -#: js/viewfeed.js:1924 +#: include/functions.php:1976 js/viewfeed.js:1944 msgid "Mark above as read" msgstr "Märk ovanstående som lästa" -#: include/functions.php:1978 +#: include/functions.php:1977 msgid "Scroll down" msgstr "Skrolla ned" -#: include/functions.php:1979 +#: include/functions.php:1978 msgid "Scroll up" msgstr "Skrolla upp" -#: include/functions.php:1980 +#: include/functions.php:1979 msgid "Select article under cursor" msgstr "Välj artikel under pekare" -#: include/functions.php:1981 +#: include/functions.php:1980 msgid "Email article" msgstr "Skicka artikel med e-post" -#: include/functions.php:1982 +#: include/functions.php:1981 msgid "Close/collapse article" msgstr "Stäng/minimera artikel" -#: include/functions.php:1983 -#, fuzzy +#: include/functions.php:1982 msgid "Toggle article expansion (combined mode)" -msgstr "Expandera artiklar automatiskt i kombinerat läge" +msgstr "Växla expanderat artikelläge (kombinerat läge)" -#: include/functions.php:1985 -#: plugins/embed_original/init.php:31 +#: include/functions.php:1984 plugins/embed_original/init.php:31 msgid "Toggle embed original" msgstr "Stäng av/sätt på inbäddade original" -#: include/functions.php:1986 +#: include/functions.php:1985 msgid "Article selection" msgstr "Artikelval" -#: include/functions.php:1987 +#: include/functions.php:1986 msgid "Select all articles" msgstr "Välj alla artiklar" -#: include/functions.php:1988 +#: include/functions.php:1987 msgid "Select unread" msgstr "Välj olästa" -#: include/functions.php:1989 +#: include/functions.php:1988 msgid "Select starred" msgstr "Välj markerade" -#: include/functions.php:1990 +#: include/functions.php:1989 msgid "Select published" msgstr "Välj publicerade" -#: include/functions.php:1991 +#: include/functions.php:1990 msgid "Invert selection" msgstr "Invertera val" -#: include/functions.php:1992 +#: include/functions.php:1991 msgid "Deselect everything" msgstr "Avmarkera allt" -#: include/functions.php:1993 -#: classes/pref/feeds.php:540 -#: classes/pref/feeds.php:783 +#: include/functions.php:1992 classes/pref/feeds.php:553 +#: classes/pref/feeds.php:796 msgid "Feed" msgstr "Flöde" -#: include/functions.php:1994 +#: include/functions.php:1993 msgid "Refresh current feed" msgstr "Uppdatera aktuellt flöde" -#: include/functions.php:1995 +#: include/functions.php:1994 msgid "Un/hide read feeds" msgstr "Visa/dölj lästa flöden" -#: include/functions.php:1996 -#: classes/pref/feeds.php:1319 +#: include/functions.php:1995 classes/pref/feeds.php:1332 msgid "Subscribe to feed" msgstr "Prenumerera på flöde" -#: include/functions.php:1997 -#: js/FeedTree.js:135 -#: js/PrefFeedTree.js:67 +#: include/functions.php:1996 js/FeedTree.js:135 js/PrefFeedTree.js:67 msgid "Edit feed" msgstr "Redigera flöde" -#: include/functions.php:1999 +#: include/functions.php:1998 msgid "Reverse headlines" msgstr "Omvänd sortering på rubrik" -#: include/functions.php:2000 +#: include/functions.php:1999 msgid "Debug feed update" msgstr "Felsök flödesuppdatering" -#: include/functions.php:2001 -#: js/FeedTree.js:178 +#: include/functions.php:2000 js/FeedTree.js:178 msgid "Mark all feeds as read" msgstr "Märk alla flöden som lästa" -#: include/functions.php:2002 +#: include/functions.php:2001 msgid "Un/collapse current category" msgstr "Öppna/stäng aktuell kategori:" -#: include/functions.php:2003 +#: include/functions.php:2002 msgid "Toggle combined mode" msgstr "Växla komboläge" -#: include/functions.php:2004 +#: include/functions.php:2003 msgid "Toggle auto expand in combined mode" msgstr "Aktivera automatisk expandering i kombinerat läge" -#: include/functions.php:2005 +#: include/functions.php:2004 msgid "Go to" msgstr "Gå till" -#: include/functions.php:2007 +#: include/functions.php:2006 msgid "Fresh" msgstr "Nya" -#: include/functions.php:2010 -#: js/tt-rss.js:457 -#: js/tt-rss.js:642 +#: include/functions.php:2009 js/tt-rss.js:456 js/tt-rss.js:615 msgid "Tag cloud" msgstr "Taggmoln" -#: include/functions.php:2012 +#: include/functions.php:2011 msgid "Other" msgstr "Övriga" -#: include/functions.php:2013 -#: classes/pref/labels.php:281 +#: include/functions.php:2012 classes/pref/labels.php:281 msgid "Create label" msgstr "Skapa etikett" -#: include/functions.php:2014 -#: classes/pref/filters.php:652 +#: include/functions.php:2013 classes/pref/filters.php:654 msgid "Create filter" msgstr "Skapa filter" -#: include/functions.php:2015 +#: include/functions.php:2014 msgid "Un/collapse sidebar" msgstr "Visa/dölj sidofält" -#: include/functions.php:2016 +#: include/functions.php:2015 msgid "Show help dialog" msgstr "Visa hjälpfönster" -#: include/functions.php:2537 +#: include/functions.php:2536 #, php-format msgid "Search results: %s" msgstr "Sökresultat: %s" -#: include/functions.php:3132 +#: include/functions.php:3133 msgid " - " msgstr " - " -#: include/functions.php:3154 -#: include/functions.php:3395 +#: include/functions.php:3155 include/functions.php:3431 #: classes/article.php:281 msgid "no tags" msgstr "Inga taggar" -#: include/functions.php:3164 -#: classes/feeds.php:676 +#: include/functions.php:3165 classes/feeds.php:689 msgid "Edit tags for this article" msgstr "Redigera taggar för denna artikel" -#: include/functions.php:3196 -#: classes/feeds.php:628 +#: include/functions.php:3197 classes/feeds.php:641 msgid "Originally from:" msgstr "Ursprungligen från:" -#: include/functions.php:3209 -#: classes/feeds.php:641 -#: classes/pref/feeds.php:559 +#: include/functions.php:3210 classes/feeds.php:654 classes/pref/feeds.php:572 msgid "Feed URL" msgstr "URL för flöde" -#: include/functions.php:3241 -#: classes/dlg.php:37 -#: classes/dlg.php:60 -#: classes/dlg.php:93 -#: classes/dlg.php:159 -#: classes/dlg.php:190 -#: classes/dlg.php:217 -#: classes/dlg.php:250 -#: classes/dlg.php:262 -#: classes/backend.php:105 -#: classes/pref/users.php:95 -#: classes/pref/filters.php:145 -#: classes/pref/prefs.php:1096 -#: classes/pref/feeds.php:1626 -#: classes/pref/feeds.php:1694 -#: plugins/import_export/init.php:407 -#: plugins/import_export/init.php:452 -#: plugins/googlereaderimport/init.php:193 -#: plugins/share/init.php:65 +#: include/functions.php:3242 classes/dlg.php:37 classes/dlg.php:60 +#: classes/dlg.php:93 classes/dlg.php:159 classes/dlg.php:190 +#: classes/dlg.php:217 classes/dlg.php:250 classes/dlg.php:262 +#: classes/backend.php:105 classes/pref/users.php:99 +#: classes/pref/filters.php:147 classes/pref/prefs.php:1100 +#: classes/pref/feeds.php:1641 classes/pref/feeds.php:1713 +#: plugins/import_export/init.php:405 plugins/import_export/init.php:450 +#: plugins/googlereaderimport/init.php:193 plugins/share/init.php:65 #: plugins/updater/init.php:368 msgid "Close this window" msgstr "Stäng fönstret" -#: include/functions.php:3432 +#: include/functions.php:3458 msgid "(edit note)" msgstr "(Redigera notering)" -#: include/functions.php:3667 +#: include/functions.php:3693 msgid "unknown type" msgstr "Okänd typ" -#: include/functions.php:3723 +#: include/functions.php:3749 msgid "Attachments" msgstr "Bilagor" -#: include/functions.php:4222 +#: include/functions.php:4248 #, php-format msgid "LibXML error %s at line %d (column %d): %s" msgstr "LibXML-fel %s på rad %d (kolumn %d): %s" -#: include/login_form.php:183 -#: classes/handler/public.php:475 -#: classes/handler/public.php:758 +#: include/login_form.php:183 classes/handler/public.php:475 +#: classes/handler/public.php:752 plugins/mobile/login_form.php:40 msgid "Login:" msgstr "Användarnamn:" -#: include/login_form.php:194 -#: classes/handler/public.php:478 +#: include/login_form.php:194 classes/handler/public.php:478 +#: plugins/mobile/login_form.php:45 msgid "Password:" msgstr "Lösenord:" @@ -859,10 +782,8 @@ msgstr "Jag har glömt mitt lösenord" msgid "Profile:" msgstr "Profil:" -#: include/login_form.php:209 -#: classes/handler/public.php:233 -#: classes/rpc.php:63 -#: classes/pref/prefs.php:1034 +#: include/login_form.php:209 classes/handler/public.php:233 +#: classes/rpc.php:63 classes/pref/prefs.php:1036 msgid "Default profile" msgstr "Standardprofil" @@ -878,8 +799,8 @@ msgstr "Visar inte bilder i artiklar, reducerar automatiska omladdningar." msgid "Remember me" msgstr "Kom ihåg mig" -#: include/login_form.php:235 -#: classes/handler/public.php:483 +#: include/login_form.php:235 classes/handler/public.php:483 +#: plugins/mobile/login_form.php:28 msgid "Log in" msgstr "Logga in" @@ -895,44 +816,28 @@ msgstr "Hittar inte artikel." msgid "Tags for this article (separated by commas):" msgstr "Taggar för denna artikel (kommaseparerade):" -#: classes/article.php:204 -#: classes/pref/users.php:172 -#: classes/pref/labels.php:79 -#: classes/pref/filters.php:403 -#: classes/pref/prefs.php:980 -#: classes/pref/feeds.php:762 -#: classes/pref/feeds.php:910 -#: plugins/nsfw/init.php:83 -#: plugins/note/init.php:51 -#: plugins/instances/init.php:245 +#: classes/article.php:204 classes/pref/users.php:176 +#: classes/pref/labels.php:79 classes/pref/filters.php:405 +#: classes/pref/prefs.php:982 classes/pref/feeds.php:775 +#: classes/pref/feeds.php:923 plugins/nsfw/init.php:83 +#: plugins/note/init.php:51 plugins/instances/init.php:245 msgid "Save" msgstr "Spara" -#: classes/article.php:206 -#: classes/handler/public.php:452 -#: classes/handler/public.php:486 -#: classes/feeds.php:1024 -#: classes/feeds.php:1076 -#: classes/feeds.php:1136 -#: classes/pref/users.php:174 -#: classes/pref/labels.php:81 -#: classes/pref/filters.php:406 -#: classes/pref/filters.php:801 -#: classes/pref/filters.php:877 -#: classes/pref/filters.php:944 -#: classes/pref/prefs.php:982 -#: classes/pref/feeds.php:763 -#: classes/pref/feeds.php:913 -#: classes/pref/feeds.php:1834 -#: plugins/mail/init.php:124 -#: plugins/note/init.php:53 -#: plugins/instances/init.php:248 +#: classes/article.php:206 classes/handler/public.php:452 +#: classes/handler/public.php:486 classes/feeds.php:1037 +#: classes/feeds.php:1089 classes/feeds.php:1149 classes/pref/users.php:178 +#: classes/pref/labels.php:81 classes/pref/filters.php:408 +#: classes/pref/filters.php:803 classes/pref/filters.php:879 +#: classes/pref/filters.php:946 classes/pref/prefs.php:984 +#: classes/pref/feeds.php:776 classes/pref/feeds.php:926 +#: classes/pref/feeds.php:1853 plugins/mail/init.php:124 +#: plugins/note/init.php:53 plugins/instances/init.php:248 #: plugins/instances/init.php:436 msgid "Cancel" msgstr "Avbryt" -#: classes/handler/public.php:416 -#: plugins/bookmarklets/init.php:40 +#: classes/handler/public.php:416 plugins/bookmarklets/init.php:36 msgid "Share with Tiny Tiny RSS" msgstr "Dela med Tiny Tiny RSS" @@ -940,10 +845,8 @@ msgstr "Dela med Tiny Tiny RSS" msgid "Title:" msgstr "Titel:" -#: classes/handler/public.php:426 -#: classes/pref/feeds.php:557 -#: classes/pref/feeds.php:798 -#: plugins/instances/init.php:212 +#: classes/handler/public.php:426 classes/pref/feeds.php:570 +#: classes/pref/feeds.php:811 plugins/instances/init.php:212 #: plugins/instances/init.php:401 msgid "URL:" msgstr "URL:" @@ -968,118 +871,129 @@ msgstr "Dela" msgid "Not logged in" msgstr "Inte inloggad" -#: classes/handler/public.php:532 +#: classes/handler/public.php:529 msgid "Incorrect username or password" msgstr "Felaktigt användarnamn eller lösenord" -#: classes/handler/public.php:568 -#: classes/handler/public.php:666 +#: classes/handler/public.php:565 classes/handler/public.php:662 #, php-format msgid "Already subscribed to <b>%s</b>." msgstr "Du prenumererar redan på <b>%s</b>." -#: classes/handler/public.php:571 -#: classes/handler/public.php:657 +#: classes/handler/public.php:568 classes/handler/public.php:653 #, php-format msgid "Subscribed to <b>%s</b>." msgstr "Prenumererar på <b>%s</b>." -#: classes/handler/public.php:574 -#: classes/handler/public.php:660 +#: classes/handler/public.php:571 classes/handler/public.php:656 #, php-format msgid "Could not subscribe to <b>%s</b>." msgstr "Kunde inte prenumerera på <b>%s</b>." -#: classes/handler/public.php:577 -#: classes/handler/public.php:663 +#: classes/handler/public.php:574 classes/handler/public.php:659 #, php-format msgid "No feeds found in <b>%s</b>." msgstr "Hittade inga flöden i <b>%s</b>." -#: classes/handler/public.php:580 -#: classes/handler/public.php:669 +#: classes/handler/public.php:577 classes/handler/public.php:665 msgid "Multiple feed URLs found." msgstr "Hittade flera flödes-URLer." -#: classes/handler/public.php:584 -#: classes/handler/public.php:676 +#: classes/handler/public.php:581 classes/handler/public.php:670 #, php-format msgid "Could not subscribe to <b>%s</b>.<br>Can't download the Feed URL." msgstr "Kunde inte prenumerera på <b>%s</b> <br>Kan inte ladda ned URL " -#: classes/handler/public.php:602 -#: classes/handler/public.php:694 +#: classes/handler/public.php:599 classes/handler/public.php:688 msgid "Subscribe to selected feed" msgstr "Prenumerera på valt flöde" -#: classes/handler/public.php:627 -#: classes/handler/public.php:718 +#: classes/handler/public.php:624 classes/handler/public.php:712 msgid "Edit subscription options" msgstr "Redigera prenumerationsinställningar" -#: classes/handler/public.php:745 +#: classes/handler/public.php:739 msgid "Password recovery" msgstr "Återställning av lösenord" -#: classes/handler/public.php:751 -msgid "You will need to provide valid account name and email. New password will be sent on your email address." -msgstr "Du måste uppge ett giltigt kontonamn och e-postadress. Ett ny lösenord kommer att skickas till din e-post." +#: classes/handler/public.php:745 +msgid "" +"You will need to provide valid account name and email. New password will be " +"sent on your email address." +msgstr "" +"Du måste uppge ett giltigt kontonamn och e-postadress. Ett ny lösenord " +"kommer att skickas till din e-post." -#: classes/handler/public.php:773 -#: classes/pref/users.php:356 +#: classes/handler/public.php:767 classes/pref/users.php:360 msgid "Reset password" msgstr "Återställ lösenord" -#: classes/handler/public.php:783 +#: classes/handler/public.php:777 msgid "Some of the required form parameters are missing or incorrect." -msgstr "Vissa av dom obligatoriska formulärparametrarna saknas eller är inkorrekta." +msgstr "" +"Vissa av dom obligatoriska formulärparametrarna saknas eller är inkorrekta." -#: classes/handler/public.php:787 -#: classes/handler/public.php:813 +#: classes/handler/public.php:781 classes/handler/public.php:807 +#: plugins/digest/digest_body.php:67 msgid "Go back" msgstr "Gå tillbaka" -#: classes/handler/public.php:809 +#: classes/handler/public.php:803 msgid "Sorry, login and email combination not found." -msgstr "Beklagar, kombinationen av användarnamn och e-postadress kunde inte hittas." +msgstr "" +"Beklagar, kombinationen av användarnamn och e-postadress kunde inte hittas." -#: classes/handler/public.php:829 +#: classes/handler/public.php:823 msgid "Your access level is insufficient to run this script." msgstr "Du har inte behörighet att köra detta skript." -#: classes/handler/public.php:853 +#: classes/handler/public.php:847 msgid "Database Updater" msgstr "Databasuppdatering" -#: classes/handler/public.php:918 +#: classes/handler/public.php:912 msgid "Perform updates" msgstr "Utför uppdatering" #: classes/dlg.php:16 -msgid "If you have imported labels and/or filters, you might need to reload preferences to see your new data." -msgstr "Om du har importerat etiketter eller filter måste du ladda om inställningarna för att se uppdateringarna" +msgid "" +"If you have imported labels and/or filters, you might need to reload " +"preferences to see your new data." +msgstr "" +"Om du har importerat etiketter eller filter måste du ladda om " +"inställningarna för att se uppdateringarna" #: classes/dlg.php:48 msgid "Your Public OPML URL is:" msgstr "Din publika OPML-URL är:" -#: classes/dlg.php:57 -#: classes/dlg.php:214 +#: classes/dlg.php:57 classes/dlg.php:214 msgid "Generate new URL" msgstr "Skapa ny URL" #: classes/dlg.php:71 -msgid "Update daemon is enabled in configuration, but daemon process is not running, which prevents all feeds from updating. Please start the daemon process or contact instance owner." -msgstr "Uppdateringsdemon är aktiverad i konfigurationen, men processen körs inte. Detta förhindrar alla flöden från att uppdateras. Starta om processen eller kontakta den som administrerar instansen." +msgid "" +"Update daemon is enabled in configuration, but daemon process is not " +"running, which prevents all feeds from updating. Please start the daemon " +"process or contact instance owner." +msgstr "" +"Uppdateringsdemon är aktiverad i konfigurationen, men processen körs inte. " +"Detta förhindrar alla flöden från att uppdateras. Starta om processen eller " +"kontakta den som administrerar instansen." -#: classes/dlg.php:75 -#: classes/dlg.php:84 +#: classes/dlg.php:75 classes/dlg.php:84 msgid "Last update:" msgstr "Senaste uppdatering:" #: classes/dlg.php:80 -msgid "Update daemon is taking too long to perform a feed update. This could indicate a problem like crash or a hang. Please check the daemon process or contact instance owner." -msgstr "Uppdateringsprocessen tar för lång tid på sig att uppdatera. Detta kan indikera en låsning eller hängning. Kontrollera processen eller kontakta administratören." +msgid "" +"Update daemon is taking too long to perform a feed update. This could " +"indicate a problem like crash or a hang. Please check the daemon process or " +"contact instance owner." +msgstr "" +"Uppdateringsprocessen tar för lång tid på sig att uppdatera. Detta kan " +"indikera en låsning eller hängning. Kontrollera processen eller kontakta " +"administratören." #: classes/dlg.php:166 msgid "Match:" @@ -1105,18 +1019,20 @@ msgstr "Visa poster" msgid "You can view this feed as RSS using the following URL:" msgstr "Du kan se detta flöde som RSS på följande URL:" -#: classes/dlg.php:233 -#: plugins/updater/init.php:331 +#: classes/dlg.php:233 plugins/updater/init.php:331 #, php-format msgid "New version of Tiny Tiny RSS is available (%s)." msgstr "Ny version av Tiny Tiny RSS tillgänglig(%s)." #: classes/dlg.php:241 -msgid "You can update using built-in updater in the Preferences or by using update.php" -msgstr "Du kan uppdatera med din inbyggda uppdateraren under Inställningar eller med update.php" +msgid "" +"You can update using built-in updater in the Preferences or by using update." +"php" +msgstr "" +"Du kan uppdatera med din inbyggda uppdateraren under Inställningar eller med " +"update.php" -#: classes/dlg.php:245 -#: plugins/updater/init.php:335 +#: classes/dlg.php:245 plugins/updater/init.php:335 msgid "See the release notes" msgstr "Se releasenoteringar" @@ -1137,9 +1053,7 @@ msgstr "Senast uppdaterat: %s" msgid "View as RSS feed" msgstr "Visa RSS-flöde" -#: classes/feeds.php:76 -#: classes/feeds.php:128 -#: classes/pref/feeds.php:1478 +#: classes/feeds.php:76 classes/feeds.php:128 classes/pref/feeds.php:1496 msgid "View as RSS" msgstr "Visa som RSS" @@ -1147,19 +1061,12 @@ msgstr "Visa som RSS" msgid "Select:" msgstr "Markera:" -#: classes/feeds.php:84 -#: classes/pref/users.php:341 -#: classes/pref/labels.php:275 -#: classes/pref/filters.php:280 -#: classes/pref/filters.php:328 -#: classes/pref/filters.php:646 -#: classes/pref/filters.php:734 -#: classes/pref/filters.php:761 -#: classes/pref/prefs.php:994 -#: classes/pref/feeds.php:1310 -#: classes/pref/feeds.php:1575 -#: classes/pref/feeds.php:1641 -#: plugins/instances/init.php:287 +#: classes/feeds.php:84 classes/pref/users.php:345 classes/pref/labels.php:275 +#: classes/pref/filters.php:282 classes/pref/filters.php:330 +#: classes/pref/filters.php:648 classes/pref/filters.php:736 +#: classes/pref/filters.php:763 classes/pref/prefs.php:996 +#: classes/pref/feeds.php:1323 classes/pref/feeds.php:1589 +#: classes/pref/feeds.php:1659 plugins/instances/init.php:287 msgid "All" msgstr "Alla" @@ -1167,19 +1074,12 @@ msgstr "Alla" msgid "Invert" msgstr "Invertera" -#: classes/feeds.php:87 -#: classes/pref/users.php:343 -#: classes/pref/labels.php:277 -#: classes/pref/filters.php:282 -#: classes/pref/filters.php:330 -#: classes/pref/filters.php:648 -#: classes/pref/filters.php:736 -#: classes/pref/filters.php:763 -#: classes/pref/prefs.php:996 -#: classes/pref/feeds.php:1312 -#: classes/pref/feeds.php:1577 -#: classes/pref/feeds.php:1643 -#: plugins/instances/init.php:289 +#: classes/feeds.php:87 classes/pref/users.php:347 classes/pref/labels.php:277 +#: classes/pref/filters.php:284 classes/pref/filters.php:332 +#: classes/pref/filters.php:650 classes/pref/filters.php:738 +#: classes/pref/filters.php:765 classes/pref/prefs.php:998 +#: classes/pref/feeds.php:1325 classes/pref/feeds.php:1591 +#: classes/pref/feeds.php:1661 plugins/instances/init.php:289 msgid "None" msgstr "Ingen" @@ -1207,17 +1107,13 @@ msgstr "Arkiv" msgid "Move back" msgstr "Gå tillbaka" -#: classes/feeds.php:110 -#: classes/pref/filters.php:289 -#: classes/pref/filters.php:337 -#: classes/pref/filters.php:743 -#: classes/pref/filters.php:770 +#: classes/feeds.php:110 classes/pref/filters.php:291 +#: classes/pref/filters.php:339 classes/pref/filters.php:745 +#: classes/pref/filters.php:772 msgid "Delete" msgstr "Radera" -#: classes/feeds.php:115 -#: classes/feeds.php:120 -#: plugins/mailto/init.php:25 +#: classes/feeds.php:115 classes/feeds.php:120 plugins/mailto/init.php:25 #: plugins/mail/init.php:26 msgid "Forward by email" msgstr "Skicka med e-post" @@ -1226,8 +1122,7 @@ msgstr "Skicka med e-post" msgid "Feed:" msgstr "Flöde:" -#: classes/feeds.php:197 -#: classes/feeds.php:824 +#: classes/feeds.php:197 classes/feeds.php:837 msgid "Feed not found." msgstr "Kunde inte hitta flöde." @@ -1240,142 +1135,128 @@ msgstr "Aldrig" msgid "Imported at %s" msgstr "Importerad kl. %s" -#: classes/feeds.php:520 +#: classes/feeds.php:535 msgid "mark as read" msgstr "markera som läst" -#: classes/feeds.php:570 +#: classes/feeds.php:585 msgid "Collapse article" msgstr "Minimera artikel" -#: classes/feeds.php:725 +#: classes/feeds.php:738 msgid "No unread articles found to display." msgstr "Hittade inga olästa artiklar." -#: classes/feeds.php:728 +#: classes/feeds.php:741 msgid "No updated articles found to display." msgstr "Hittade inga uppdaterade artiklar." -#: classes/feeds.php:731 +#: classes/feeds.php:744 msgid "No starred articles found to display." msgstr "Hittade inga stjärnmarkerade artiklar." -#: classes/feeds.php:735 -msgid "No articles found to display. You can assign articles to labels manually from article header context menu (applies to all selected articles) or use a filter." -msgstr "Hittade inga artiklar att visa. Du kan ge artiklar etiketter manuellt via snabbmenyn för artiklar (gäller alla valda artiklar) eller genom att använda filter." +#: classes/feeds.php:748 +msgid "" +"No articles found to display. You can assign articles to labels manually " +"from article header context menu (applies to all selected articles) or use a " +"filter." +msgstr "" +"Hittade inga artiklar att visa. Du kan ge artiklar etiketter manuellt via " +"snabbmenyn för artiklar (gäller alla valda artiklar) eller genom att använda " +"filter." -#: classes/feeds.php:737 +#: classes/feeds.php:750 msgid "No articles found to display." msgstr "Hittade inga artiklar att visa." -#: classes/feeds.php:752 -#: classes/feeds.php:919 +#: classes/feeds.php:765 classes/feeds.php:932 #, php-format msgid "Feeds last updated at %s" msgstr "Flöden senast uppdaterade %s" -#: classes/feeds.php:762 -#: classes/feeds.php:929 +#: classes/feeds.php:775 classes/feeds.php:942 msgid "Some feeds have update errors (click for details)" msgstr "Vissa flöden har uppdateringsfel (klicka för detaljer)" -#: classes/feeds.php:909 +#: classes/feeds.php:922 msgid "No feed selected." msgstr "Inget flöde valt." -#: classes/feeds.php:962 -#: classes/feeds.php:970 +#: classes/feeds.php:975 classes/feeds.php:983 msgid "Feed or site URL" msgstr "URL för flöde eller webbplats" -#: classes/feeds.php:976 -#: classes/pref/feeds.php:579 -#: classes/pref/feeds.php:811 -#: classes/pref/feeds.php:1798 +#: classes/feeds.php:989 classes/pref/feeds.php:592 classes/pref/feeds.php:824 +#: classes/pref/feeds.php:1817 msgid "Place in category:" msgstr "Placera i kategori:" -#: classes/feeds.php:984 +#: classes/feeds.php:997 msgid "Available feeds" msgstr "Tillgängliga flöden" -#: classes/feeds.php:996 -#: classes/pref/users.php:135 -#: classes/pref/feeds.php:609 -#: classes/pref/feeds.php:847 +#: classes/feeds.php:1009 classes/pref/users.php:139 +#: classes/pref/feeds.php:622 classes/pref/feeds.php:860 msgid "Authentication" msgstr "Autentisering" -#: classes/feeds.php:1000 -#: classes/pref/users.php:398 -#: classes/pref/feeds.php:615 -#: classes/pref/feeds.php:851 -#: classes/pref/feeds.php:1812 +#: classes/feeds.php:1013 classes/pref/users.php:402 +#: classes/pref/feeds.php:628 classes/pref/feeds.php:864 +#: classes/pref/feeds.php:1831 msgid "Login" msgstr "Användarnamn" -#: classes/feeds.php:1003 -#: classes/pref/prefs.php:260 -#: classes/pref/feeds.php:628 -#: classes/pref/feeds.php:857 -#: classes/pref/feeds.php:1815 +#: classes/feeds.php:1016 classes/pref/prefs.php:260 +#: classes/pref/feeds.php:641 classes/pref/feeds.php:870 +#: classes/pref/feeds.php:1834 msgid "Password" msgstr "Lösenord" -#: classes/feeds.php:1013 +#: classes/feeds.php:1026 msgid "This feed requires authentication." msgstr "Detta flöde kräver autentisering." -#: classes/feeds.php:1018 -#: classes/feeds.php:1074 -#: classes/pref/feeds.php:1833 +#: classes/feeds.php:1031 classes/feeds.php:1087 classes/pref/feeds.php:1852 msgid "Subscribe" msgstr "Prenumerera" -#: classes/feeds.php:1021 +#: classes/feeds.php:1034 msgid "More feeds" msgstr "Fler flöden" -#: classes/feeds.php:1044 -#: classes/feeds.php:1135 -#: classes/pref/users.php:328 -#: classes/pref/filters.php:639 -#: classes/pref/feeds.php:1303 -#: js/tt-rss.js:174 +#: classes/feeds.php:1057 classes/feeds.php:1148 classes/pref/users.php:332 +#: classes/pref/filters.php:641 classes/pref/feeds.php:1316 js/tt-rss.js:173 msgid "Search" msgstr "Sök" -#: classes/feeds.php:1048 +#: classes/feeds.php:1061 msgid "Popular feeds" msgstr "Populära flöden" -#: classes/feeds.php:1049 +#: classes/feeds.php:1062 msgid "Feed archive" msgstr "Flödesarkiv" -#: classes/feeds.php:1052 +#: classes/feeds.php:1065 msgid "limit:" msgstr "gräns:" -#: classes/feeds.php:1075 -#: classes/pref/users.php:354 -#: classes/pref/labels.php:284 -#: classes/pref/filters.php:396 -#: classes/pref/filters.php:665 -#: classes/pref/feeds.php:733 +#: classes/feeds.php:1088 classes/pref/users.php:358 +#: classes/pref/labels.php:284 classes/pref/filters.php:398 +#: classes/pref/filters.php:667 classes/pref/feeds.php:746 #: plugins/instances/init.php:294 msgid "Remove" msgstr "Ta bort" -#: classes/feeds.php:1086 +#: classes/feeds.php:1099 msgid "Look for" msgstr "Sök efter" -#: classes/feeds.php:1094 +#: classes/feeds.php:1107 msgid "Limit search to:" msgstr "Begränsa sökning till:" -#: classes/feeds.php:1110 +#: classes/feeds.php:1123 msgid "This feed" msgstr "Detta flöde" @@ -1399,8 +1280,7 @@ msgstr "Ctrl" msgid "Help topic not found." msgstr "Hittade inte något hjälpavsnitt." -#: classes/opml.php:28 -#: classes/opml.php:33 +#: classes/opml.php:28 classes/opml.php:33 msgid "OPML Utility" msgstr "OPML-verktyg" @@ -1446,38 +1326,31 @@ msgstr "Lägger till filter..." msgid "Processing category: %s" msgstr "Bearbetar kategori: %s" -#: classes/opml.php:465 -#: plugins/import_export/init.php:420 +#: classes/opml.php:465 plugins/import_export/init.php:418 #: plugins/googlereaderimport/init.php:66 #, php-format msgid "Upload failed with error code %d" msgstr "Uppladdningen misslyckades med felkod %d" -#: classes/opml.php:479 -#: plugins/import_export/init.php:434 +#: classes/opml.php:479 plugins/import_export/init.php:432 #: plugins/googlereaderimport/init.php:80 -#, fuzzy msgid "Unable to move uploaded file." -msgstr "Fel: kunde inte ladda artikel." +msgstr "Fel: kunde inte flytta uppladdad fil." -#: classes/opml.php:483 -#: plugins/import_export/init.php:438 +#: classes/opml.php:483 plugins/import_export/init.php:436 #: plugins/googlereaderimport/init.php:84 msgid "Error: please upload OPML file." msgstr "Fel: vänligen ladda upp en OPMLfil." #: classes/opml.php:492 -#, fuzzy msgid "Error: unable to find moved OPML file." -msgstr "Fel: kunde inte ladda artikel." +msgstr "Fel: kunde inte hitta flyttad OPML-fil." -#: classes/opml.php:499 -#: plugins/googlereaderimport/init.php:186 +#: classes/opml.php:499 plugins/googlereaderimport/init.php:186 msgid "Error while parsing document." msgstr "Fel vid tolkning av dokument." -#: classes/pref/users.php:6 -#: classes/pref/system.php:8 +#: classes/pref/users.php:6 classes/pref/system.php:8 #: plugins/instances/init.php:154 msgid "Your access level is insufficient to open this tab." msgstr "Du saknar behörighet för att öppna denna flik" @@ -1486,8 +1359,7 @@ msgstr "Du saknar behörighet för att öppna denna flik" msgid "User not found" msgstr "Hittade inte användaren" -#: classes/pref/users.php:53 -#: classes/pref/users.php:400 +#: classes/pref/users.php:53 classes/pref/users.php:404 msgid "Registered" msgstr "Registrerad" @@ -1503,106 +1375,96 @@ msgstr "Antal flödesprenumerationer" msgid "Subscribed feeds" msgstr "Prenumererade flöden" -#: classes/pref/users.php:138 +#: classes/pref/users.php:142 msgid "Access level: " msgstr "Behörighetsnivå: " -#: classes/pref/users.php:151 +#: classes/pref/users.php:155 msgid "Change password to" msgstr "Nytt lösenord" -#: classes/pref/users.php:157 -#: classes/pref/feeds.php:636 -#: classes/pref/feeds.php:863 +#: classes/pref/users.php:161 classes/pref/feeds.php:649 +#: classes/pref/feeds.php:876 msgid "Options" msgstr "Alternativ" -#: classes/pref/users.php:160 +#: classes/pref/users.php:164 msgid "E-mail: " msgstr "E-post: " -#: classes/pref/users.php:236 +#: classes/pref/users.php:240 #, php-format msgid "Added user <b>%s</b> with password <b>%s</b>" msgstr "Lade till användare <b>%s</b> med lösenord <b>%s</b>" -#: classes/pref/users.php:243 +#: classes/pref/users.php:247 #, php-format msgid "Could not create user <b>%s</b>" msgstr "Kunde inte skapa användare <b>%s</b>" -#: classes/pref/users.php:247 +#: classes/pref/users.php:251 #, php-format msgid "User <b>%s</b> already exists." msgstr "Användaren <b>%s</b> finns redan." -#: classes/pref/users.php:269 +#: classes/pref/users.php:273 #, php-format msgid "Changed password of user <b>%s</b> to <b>%s</b>" msgstr "Lösenord för användare <b>%s</b> ändrat till <b>%s</b>" -#: classes/pref/users.php:271 +#: classes/pref/users.php:275 #, php-format msgid "Sending new password of user <b>%s</b> to <b>%s</b>" msgstr "Nytt lösenord för användare <b>%s</b> skickat till <b>%s</b>" -#: classes/pref/users.php:295 +#: classes/pref/users.php:299 msgid "[tt-rss] Password change notification" msgstr "[tt-rss] Notifikation för ändring av lösenord" -#: classes/pref/users.php:338 -#: classes/pref/labels.php:272 -#: classes/pref/filters.php:277 -#: classes/pref/filters.php:325 -#: classes/pref/filters.php:643 -#: classes/pref/filters.php:731 -#: classes/pref/filters.php:758 -#: classes/pref/prefs.php:991 -#: classes/pref/feeds.php:1307 -#: classes/pref/feeds.php:1572 -#: classes/pref/feeds.php:1638 -#: plugins/instances/init.php:284 +#: classes/pref/users.php:342 classes/pref/labels.php:272 +#: classes/pref/filters.php:279 classes/pref/filters.php:327 +#: classes/pref/filters.php:645 classes/pref/filters.php:733 +#: classes/pref/filters.php:760 classes/pref/prefs.php:993 +#: classes/pref/feeds.php:1320 classes/pref/feeds.php:1586 +#: classes/pref/feeds.php:1656 plugins/instances/init.php:284 msgid "Select" msgstr "Markera" -#: classes/pref/users.php:346 +#: classes/pref/users.php:350 msgid "Create user" msgstr "Skapa användare" -#: classes/pref/users.php:350 +#: classes/pref/users.php:354 msgid "Details" msgstr "Detaljer" -#: classes/pref/users.php:352 -#: classes/pref/filters.php:658 +#: classes/pref/users.php:356 classes/pref/filters.php:660 #: plugins/instances/init.php:293 msgid "Edit" msgstr "Redigera" -#: classes/pref/users.php:399 +#: classes/pref/users.php:403 msgid "Access Level" msgstr "Behörighetsnivå" -#: classes/pref/users.php:401 +#: classes/pref/users.php:405 msgid "Last login" msgstr "Senaste inloggning" -#: classes/pref/users.php:420 -#: plugins/instances/init.php:334 +#: classes/pref/users.php:426 plugins/instances/init.php:334 msgid "Click to edit" msgstr "Klicka för att redigera" -#: classes/pref/users.php:440 +#: classes/pref/users.php:446 msgid "No users defined." msgstr "Inga användare definierade." -#: classes/pref/users.php:442 +#: classes/pref/users.php:448 msgid "No matching users found." msgstr "Hittade inga matchande användare." -#: classes/pref/labels.php:22 -#: classes/pref/filters.php:266 -#: classes/pref/filters.php:722 +#: classes/pref/labels.php:22 classes/pref/filters.php:268 +#: classes/pref/filters.php:724 msgid "Caption" msgstr "Titel" @@ -1627,124 +1489,116 @@ msgstr "Skapade etikett <b>%s</b>" msgid "Clear colors" msgstr "Rensa färger" -#: classes/pref/filters.php:94 +#: classes/pref/filters.php:96 msgid "Articles matching this filter:" msgstr "Artiklar som matchar detta filter: " -#: classes/pref/filters.php:131 +#: classes/pref/filters.php:133 msgid "No recent articles matching this filter have been found." msgstr "Inga nya artiklar som matchar detta filter funna." -#: classes/pref/filters.php:135 -msgid "Complex expressions might not give results while testing due to issues with database server regexp implementation." -msgstr "Komplexa uttryck kanske inte ger några testresultat på grund av problem med databasens regexpimplementation" +#: classes/pref/filters.php:137 +msgid "" +"Complex expressions might not give results while testing due to issues with " +"database server regexp implementation." +msgstr "" +"Komplexa uttryck kanske inte ger några testresultat på grund av problem med " +"databasens regexpimplementation" -#: classes/pref/filters.php:272 -#: classes/pref/filters.php:726 -#: classes/pref/filters.php:841 +#: classes/pref/filters.php:274 classes/pref/filters.php:728 +#: classes/pref/filters.php:843 msgid "Match" msgstr "Matcha" -#: classes/pref/filters.php:286 -#: classes/pref/filters.php:334 -#: classes/pref/filters.php:740 -#: classes/pref/filters.php:767 +#: classes/pref/filters.php:288 classes/pref/filters.php:336 +#: classes/pref/filters.php:742 classes/pref/filters.php:769 msgid "Add" msgstr "Lägg till" -#: classes/pref/filters.php:320 -#: classes/pref/filters.php:753 +#: classes/pref/filters.php:322 classes/pref/filters.php:755 msgid "Apply actions" msgstr "Tillämpa åtgärder" -#: classes/pref/filters.php:370 -#: classes/pref/filters.php:782 +#: classes/pref/filters.php:372 classes/pref/filters.php:784 msgid "Enabled" msgstr "Aktiverat" -#: classes/pref/filters.php:379 -#: classes/pref/filters.php:785 +#: classes/pref/filters.php:381 classes/pref/filters.php:787 msgid "Match any rule" msgstr "Matcha alla regler" -#: classes/pref/filters.php:388 -#: classes/pref/filters.php:788 +#: classes/pref/filters.php:390 classes/pref/filters.php:790 msgid "Inverse matching" msgstr "Invertera matchning" -#: classes/pref/filters.php:400 -#: classes/pref/filters.php:795 +#: classes/pref/filters.php:402 classes/pref/filters.php:797 msgid "Test" msgstr "Test" -#: classes/pref/filters.php:433 +#: classes/pref/filters.php:435 msgid "(inverse)" msgstr "(invertera)" -#: classes/pref/filters.php:432 +#: classes/pref/filters.php:434 #, php-format msgid "%s on %s in %s %s" msgstr "%s på %s i %s %s" -#: classes/pref/filters.php:655 +#: classes/pref/filters.php:657 msgid "Combine" msgstr "Kombinera" -#: classes/pref/filters.php:661 -#: classes/pref/feeds.php:1323 -#: classes/pref/feeds.php:1337 +#: classes/pref/filters.php:663 classes/pref/feeds.php:1336 +#: classes/pref/feeds.php:1350 msgid "Reset sort order" msgstr "Återställ sorteringsordning" -#: classes/pref/filters.php:669 -#: classes/pref/feeds.php:1359 +#: classes/pref/filters.php:671 classes/pref/feeds.php:1375 msgid "Rescore articles" msgstr "Poängsätt på nytt" -#: classes/pref/filters.php:798 +#: classes/pref/filters.php:800 msgid "Create" msgstr "Skapa" -#: classes/pref/filters.php:853 +#: classes/pref/filters.php:855 msgid "Inverse regular expression matching" msgstr "Invertera matchning av regulära uttryck" -#: classes/pref/filters.php:855 +#: classes/pref/filters.php:857 msgid "on field" msgstr "i fält" -#: classes/pref/filters.php:861 -#: js/PrefFilterTree.js:45 +#: classes/pref/filters.php:863 js/PrefFilterTree.js:45 +#: plugins/digest/digest.js:242 msgid "in" msgstr "i" -#: classes/pref/filters.php:874 +#: classes/pref/filters.php:876 msgid "Save rule" msgstr "Spara regel" -#: classes/pref/filters.php:874 -#: js/functions.js:1013 +#: classes/pref/filters.php:876 js/functions.js:1013 msgid "Add rule" msgstr "Tillämpa regel" -#: classes/pref/filters.php:897 +#: classes/pref/filters.php:899 msgid "Perform Action" msgstr "Utför aktivitet" -#: classes/pref/filters.php:923 +#: classes/pref/filters.php:925 msgid "with parameters:" msgstr "med parametrar:" -#: classes/pref/filters.php:941 +#: classes/pref/filters.php:943 msgid "Save action" msgstr "Spara aktivitet" -#: classes/pref/filters.php:941 -#: js/functions.js:1039 +#: classes/pref/filters.php:943 js/functions.js:1039 msgid "Add action" msgstr "Lägg till aktivitet" -#: classes/pref/filters.php:964 +#: classes/pref/filters.php:966 msgid "[No caption]" msgstr "[Inge titel]" @@ -1777,15 +1631,21 @@ msgid "Blacklisted tags" msgstr "Svartlistade taggar" #: classes/pref/prefs.php:27 -msgid "When auto-detecting tags in articles these tags will not be applied (comma-separated list)." -msgstr "Använd inte följande taggar för automatisk taggning av artiklar (komma-separerad lista)." +msgid "" +"When auto-detecting tags in articles these tags will not be applied (comma-" +"separated list)." +msgstr "" +"Använd inte följande taggar för automatisk taggning av artiklar (komma-" +"separerad lista)." #: classes/pref/prefs.php:28 msgid "Automatically mark articles as read" msgstr "Märk artiklar som lästa automatiskt" #: classes/pref/prefs.php:28 -msgid "This option enables marking articles as read automatically while you scroll article list." +msgid "" +"This option enables marking articles as read automatically while you scroll " +"article list." msgstr "Markera artiklar som lästa automatisk när du skrollar artikellistan" #: classes/pref/prefs.php:29 @@ -1797,8 +1657,12 @@ msgid "Combined feed display" msgstr "Kombinerad flödesvisning" #: classes/pref/prefs.php:30 -msgid "Display expanded list of feed articles, instead of separate displays for headlines and article content" -msgstr "Visa expanderad lista med artiklar, istället för olika visningar för rubriker och artikeltext" +msgid "" +"Display expanded list of feed articles, instead of separate displays for " +"headlines and article content" +msgstr "" +"Visa expanderad lista med artiklar, istället för olika visningar för " +"rubriker och artikeltext" #: classes/pref/prefs.php:31 msgid "Confirm marking feed as read" @@ -1809,13 +1673,16 @@ msgid "Amount of articles to display at once" msgstr "Antal artiklar att visa samtidigt" #: classes/pref/prefs.php:33 -#, fuzzy msgid "Default feed update interval" -msgstr "Standardintervall" +msgstr "Standardintervall för flödesuppdatering" #: classes/pref/prefs.php:33 -msgid "Shortest interval at which a feed will be checked for updates regardless of update method" +msgid "" +"Shortest interval at which a feed will be checked for updates regardless of " +"update method" msgstr "" +"Kortaste intervall som ett flöde kommer att kontrolleras för uppdateringar " +"oavsett uppdateringsmetod" #: classes/pref/prefs.php:34 msgid "Mark articles in e-mail digest as read" @@ -1826,8 +1693,12 @@ msgid "Enable e-mail digest" msgstr "Aktivera e-postsammanfattning" #: classes/pref/prefs.php:35 -msgid "This option enables sending daily digest of new (and unread) headlines on your configured e-mail address" -msgstr "Skicka dagliga sammanställningar över nya (och olästa) rubriker till din e-post" +msgid "" +"This option enables sending daily digest of new (and unread) headlines on " +"your configured e-mail address" +msgstr "" +"Skicka dagliga sammanställningar över nya (och olästa) rubriker till din e-" +"post" #: classes/pref/prefs.php:36 msgid "Try to send digests around specified time" @@ -1874,8 +1745,11 @@ msgid "On catchup show next feed" msgstr "Visa nästa flöde när vi är ikapp" #: classes/pref/prefs.php:44 -msgid "Automatically open next feed with unread articles after marking one as read" -msgstr "Öppna automatiskt nästa flöde som har olästa artiklar efter att du markerat ett som läst" +msgid "" +"Automatically open next feed with unread articles after marking one as read" +msgstr "" +"Öppna automatiskt nästa flöde som har olästa artiklar efter att du markerat " +"ett som läst" #: classes/pref/prefs.php:45 msgid "Purge articles after this number of days (0 - disables)" @@ -1885,7 +1759,7 @@ msgstr "Rensa artikel efter X antal dagar (0 - inaktiverar)" msgid "Purge unread articles" msgstr "Rensa olästa artiklar" -#: classes/pref/prefs.php:47 +#: classes/pref/prefs.php:47 plugins/mobile/prefs.php:56 msgid "Reverse headline order (oldest first)" msgstr "Omvänd sortering (äldsta överst)" @@ -1925,8 +1799,7 @@ msgstr "Ta bort osäkra taggar från artiklar" msgid "Strip all but most common HTML tags when reading articles." msgstr "Ta bort alla utom de vanligast HTML-taggarna från artiklarna." -#: classes/pref/prefs.php:54 -#: js/prefs.js:1719 +#: classes/pref/prefs.php:54 js/prefs.js:1734 msgid "Customize stylesheet" msgstr "Anpassa stilmall" @@ -1944,12 +1817,13 @@ msgstr "Gruppera rubriker i virtuella flöden" #: classes/pref/prefs.php:56 msgid "Special feeds, labels, and categories are grouped by originating feeds" -msgstr "Speciella flöden, etiketter och kategorier är grupperade efter ursprungsflöden" +msgstr "" +"Speciella flöden, etiketter och kategorier är grupperade efter " +"ursprungsflöden" #: classes/pref/prefs.php:57 -#, fuzzy msgid "Language" -msgstr "Språk:" +msgstr "Språk" #: classes/pref/prefs.php:58 msgid "Theme" @@ -2045,11 +1919,14 @@ msgid "One time passwords / Authenticator" msgstr "(OTP) / Autentifikator" #: classes/pref/prefs.php:327 -msgid "One time passwords are currently enabled. Enter your current password below to disable." -msgstr "Engångslösenord är för närvarande aktiverade. Ange ditt nuvarande lösenord nedan för att inaktivera." +msgid "" +"One time passwords are currently enabled. Enter your current password below " +"to disable." +msgstr "" +"Engångslösenord är för närvarande aktiverade. Ange ditt nuvarande lösenord " +"nedan för att inaktivera." -#: classes/pref/prefs.php:352 -#: classes/pref/prefs.php:403 +#: classes/pref/prefs.php:352 classes/pref/prefs.php:403 msgid "Enter your password" msgstr "Ange lösenord" @@ -2058,17 +1935,20 @@ msgid "Disable OTP" msgstr "Stäng av OTP" #: classes/pref/prefs.php:369 -msgid "You will need a compatible Authenticator to use this. Changing your password would automatically disable OTP." -msgstr "Du behöver en kompatibel autentifikator för att använda detta. Att byta lösenord inaktiverar automatiskt OTP." +msgid "" +"You will need a compatible Authenticator to use this. Changing your password " +"would automatically disable OTP." +msgstr "" +"Du behöver en kompatibel autentifikator för att använda detta. Att byta " +"lösenord inaktiverar automatiskt OTP." #: classes/pref/prefs.php:371 msgid "Scan the following code by the Authenticator application:" msgstr "Läs in följande QR-kod med autentifikator-applikationen:" #: classes/pref/prefs.php:408 -#, fuzzy msgid "Enter the generated one time password" -msgstr "Ange ditt engångslösenord:" +msgstr "Ange det genererade engångslösenordet" #: classes/pref/prefs.php:422 msgid "Enable OTP" @@ -2076,7 +1956,7 @@ msgstr "Aktivera OTP" #: classes/pref/prefs.php:428 msgid "PHP GD functions are required for OTP support." -msgstr "" +msgstr "PHPs GD-funktioner krävs för OTP stöd." #: classes/pref/prefs.php:471 msgid "Some preferences are only available in default profile." @@ -2104,9 +1984,8 @@ msgid "Save configuration" msgstr "Spara konfiguration" #: classes/pref/prefs.php:675 -#, fuzzy msgid "Save and exit preferences" -msgstr "Lämna inställningarna" +msgstr "Spara och lämna inställningarna" #: classes/pref/prefs.php:680 msgid "Manage profiles" @@ -2116,89 +1995,97 @@ msgstr "Hantera profiler" msgid "Reset to defaults" msgstr "Återställ till standard" -#: classes/pref/prefs.php:706 +#: classes/pref/prefs.php:706 classes/pref/prefs.php:708 msgid "Plugins" msgstr "Tillägg" -#: classes/pref/prefs.php:708 -msgid "You will need to reload Tiny Tiny RSS for plugin changes to take effect." -msgstr "Du kommer behöva ladda om Tiny Tiny RSS för att ändringarna för tillägg ska träda i kraft." - #: classes/pref/prefs.php:710 -msgid "Download more plugins at tt-rss.org <a class=\"visibleLink\" target=\"_blank\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">forums</a> or <a target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins\">wiki</a>." -msgstr "Ladda ner fler tillägg via tt-rss.org <a class=\"visibleLink\" target=\"_blank\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">forum</a> eller <a target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins\">wiki</a>." +msgid "" +"You will need to reload Tiny Tiny RSS for plugin changes to take effect." +msgstr "" +"Du kommer behöva ladda om Tiny Tiny RSS för att ändringarna för tillägg ska " +"träda i kraft." -#: classes/pref/prefs.php:736 +#: classes/pref/prefs.php:712 +msgid "" +"Download more plugins at tt-rss.org <a class=\"visibleLink\" target=\"_blank" +"\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">forums</a> or <a " +"target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/wiki/Plugins" +"\">wiki</a>." +msgstr "" +"Ladda ner fler tillägg via tt-rss.org <a class=\"visibleLink\" target=" +"\"_blank\" href=\"http://tt-rss.org/forum/viewforum.php?f=22\">forum</a> " +"eller <a target=\"_blank\" class=\"visibleLink\" href=\"http://tt-rss.org/" +"wiki/Plugins\">wiki</a>." + +#: classes/pref/prefs.php:738 msgid "System plugins" msgstr "Systemtillägg" -#: classes/pref/prefs.php:740 -#: classes/pref/prefs.php:794 +#: classes/pref/prefs.php:742 classes/pref/prefs.php:796 msgid "Plugin" msgstr "Tillägg" -#: classes/pref/prefs.php:741 -#: classes/pref/prefs.php:795 +#: classes/pref/prefs.php:743 classes/pref/prefs.php:797 msgid "Description" msgstr "Beskrivning" -#: classes/pref/prefs.php:742 -#: classes/pref/prefs.php:796 +#: classes/pref/prefs.php:744 classes/pref/prefs.php:798 msgid "Version" msgstr "Version" -#: classes/pref/prefs.php:743 -#: classes/pref/prefs.php:797 +#: classes/pref/prefs.php:745 classes/pref/prefs.php:799 msgid "Author" msgstr "Skapare" -#: classes/pref/prefs.php:772 -#: classes/pref/prefs.php:829 +#: classes/pref/prefs.php:774 classes/pref/prefs.php:831 msgid "more info" msgstr "mer info" -#: classes/pref/prefs.php:781 -#: classes/pref/prefs.php:838 +#: classes/pref/prefs.php:783 classes/pref/prefs.php:840 msgid "Clear data" msgstr "Rensa data" -#: classes/pref/prefs.php:790 +#: classes/pref/prefs.php:792 msgid "User plugins" msgstr "Användartillägg" -#: classes/pref/prefs.php:853 +#: classes/pref/prefs.php:855 msgid "Enable selected plugins" msgstr "Aktivera valda tillägg" -#: classes/pref/prefs.php:920 -#, fuzzy +#: classes/pref/prefs.php:922 msgid "Incorrect one time password" -msgstr "Felaktigt lösenord" +msgstr "Felaktigt engångslösenord" -#: classes/pref/prefs.php:923 -#: classes/pref/prefs.php:940 +#: classes/pref/prefs.php:925 classes/pref/prefs.php:942 msgid "Incorrect password" msgstr "Felaktigt lösenord" -#: classes/pref/prefs.php:965 +#: classes/pref/prefs.php:967 #, php-format -msgid "You can override colors, fonts and layout of your currently selected theme with custom CSS declarations here. <a target=\"_blank\" class=\"visibleLink\" href=\"%s\">This file</a> can be used as a baseline." -msgstr "Du kan åsidosätta färger, typsnitt och layout för ditt för närvarande valda tema med anpassade CSS-regler här. <a target=\"_blank\" class=\"visibleLink\" href=\"%s\">Denna fil</a> kan användas som grund." +msgid "" +"You can override colors, fonts and layout of your currently selected theme " +"with custom CSS declarations here. <a target=\"_blank\" class=\"visibleLink" +"\" href=\"%s\">This file</a> can be used as a baseline." +msgstr "" +"Du kan åsidosätta färger, typsnitt och layout för ditt för närvarande valda " +"tema med anpassade CSS-regler här. <a target=\"_blank\" class=\"visibleLink" +"\" href=\"%s\">Denna fil</a> kan användas som grund." -#: classes/pref/prefs.php:1005 +#: classes/pref/prefs.php:1007 msgid "Create profile" msgstr "Skapa profil" -#: classes/pref/prefs.php:1028 -#: classes/pref/prefs.php:1056 +#: classes/pref/prefs.php:1030 classes/pref/prefs.php:1060 msgid "(active)" msgstr "(aktiva)" -#: classes/pref/prefs.php:1090 +#: classes/pref/prefs.php:1094 msgid "Remove selected profiles" msgstr "Radera markerade profiler" -#: classes/pref/prefs.php:1092 +#: classes/pref/prefs.php:1096 msgid "Activate profile" msgstr "Aktivera profil" @@ -2206,257 +2093,299 @@ msgstr "Aktivera profil" msgid "Check to enable field" msgstr "Markera för att aktivera" -#: classes/pref/feeds.php:546 +#: classes/pref/feeds.php:559 msgid "Feed Title" msgstr "Flödestitel" -#: classes/pref/feeds.php:587 -#: classes/pref/feeds.php:822 +#: classes/pref/feeds.php:600 classes/pref/feeds.php:835 msgid "Update" msgstr "Uppdatera" -#: classes/pref/feeds.php:602 -#: classes/pref/feeds.php:838 +#: classes/pref/feeds.php:615 classes/pref/feeds.php:851 msgid "Article purging:" msgstr "Artikelrensning:" -#: classes/pref/feeds.php:632 -msgid "<b>Hint:</b> you need to fill in your login information if your feed requires authentication, except for Twitter feeds." -msgstr "<b>Tips:</b> du måste ange din inloggningsuppgifter om ditt flöde kräver autentisering, dock ej för Twitter-flöden." +#: classes/pref/feeds.php:645 +msgid "" +"<b>Hint:</b> you need to fill in your login information if your feed " +"requires authentication, except for Twitter feeds." +msgstr "" +"<b>Tips:</b> du måste ange din inloggningsuppgifter om ditt flöde kräver " +"autentisering, dock ej för Twitter-flöden." -#: classes/pref/feeds.php:648 -#: classes/pref/feeds.php:867 +#: classes/pref/feeds.php:661 classes/pref/feeds.php:880 msgid "Hide from Popular feeds" msgstr "Dölj från populära flöden" -#: classes/pref/feeds.php:660 -#: classes/pref/feeds.php:873 +#: classes/pref/feeds.php:673 classes/pref/feeds.php:886 msgid "Include in e-mail digest" msgstr "Inkludera i e-postsammanfattning" -#: classes/pref/feeds.php:673 -#: classes/pref/feeds.php:879 +#: classes/pref/feeds.php:686 classes/pref/feeds.php:892 msgid "Always display image attachments" msgstr "Visa alltid bilder" -#: classes/pref/feeds.php:686 -#: classes/pref/feeds.php:887 +#: classes/pref/feeds.php:699 classes/pref/feeds.php:900 msgid "Do not embed images" msgstr "Bädda inte in bilder" -#: classes/pref/feeds.php:699 -#: classes/pref/feeds.php:895 +#: classes/pref/feeds.php:712 classes/pref/feeds.php:908 msgid "Cache images locally" msgstr "Cacha bilder lokalt" -#: classes/pref/feeds.php:711 -#: classes/pref/feeds.php:901 +#: classes/pref/feeds.php:724 classes/pref/feeds.php:914 msgid "Mark updated articles as unread" msgstr "Makera uppdaterade artiklar som olästa" -#: classes/pref/feeds.php:717 +#: classes/pref/feeds.php:730 msgid "Icon" msgstr "Ikon" -#: classes/pref/feeds.php:731 +#: classes/pref/feeds.php:744 msgid "Replace" msgstr "Ersätt" -#: classes/pref/feeds.php:753 +#: classes/pref/feeds.php:766 msgid "Resubscribe to push updates" msgstr "Återprenumerera på push-uppdateringar:" -#: classes/pref/feeds.php:760 +#: classes/pref/feeds.php:773 msgid "Resets PubSubHubbub subscription status for push-enabled feeds." msgstr "Återställ PubSubHubbub-prenumerationer för push-uppdaterade feeds." -#: classes/pref/feeds.php:1156 -#: classes/pref/feeds.php:1209 +#: classes/pref/feeds.php:1169 classes/pref/feeds.php:1222 msgid "All done." msgstr "Klart." -#: classes/pref/feeds.php:1264 +#: classes/pref/feeds.php:1277 msgid "Feeds with errors" msgstr "Flöden med fel" -#: classes/pref/feeds.php:1284 +#: classes/pref/feeds.php:1297 msgid "Inactive feeds" msgstr "Inaktiva flöden" -#: classes/pref/feeds.php:1321 +#: classes/pref/feeds.php:1334 msgid "Edit selected feeds" msgstr "Redigera valda flöden" -#: classes/pref/feeds.php:1325 -#: js/prefs.js:1764 +#: classes/pref/feeds.php:1338 js/prefs.js:1779 msgid "Batch subscribe" msgstr "Massprenumerera" -#: classes/pref/feeds.php:1332 +#: classes/pref/feeds.php:1345 msgid "Categories" msgstr "Kategorier" -#: classes/pref/feeds.php:1335 +#: classes/pref/feeds.php:1348 msgid "Add category" msgstr "Lägg till kategori" -#: classes/pref/feeds.php:1339 +#: classes/pref/feeds.php:1352 msgid "Remove selected" msgstr "Ta bort markerade" -#: classes/pref/feeds.php:1350 +#: classes/pref/feeds.php:1361 +msgid "(Un)hide empty categories" +msgstr "Visa/dölj tomma kategorier" + +#: classes/pref/feeds.php:1366 msgid "More actions..." msgstr "Fler åtgärder..." -#: classes/pref/feeds.php:1354 +#: classes/pref/feeds.php:1370 msgid "Manual purge" msgstr "Manuell rensning" -#: classes/pref/feeds.php:1358 +#: classes/pref/feeds.php:1374 msgid "Clear feed data" msgstr "Rensa flödesdata" -#: classes/pref/feeds.php:1409 +#: classes/pref/feeds.php:1425 msgid "OPML" msgstr "OPML" -#: classes/pref/feeds.php:1411 -msgid "Using OPML you can export and import your feeds, filters, labels and Tiny Tiny RSS settings." -msgstr "Med OPML kan du importera och exportera dina flöden, filter, etiketter och Tin Tiny RSS-inställningar" +#: classes/pref/feeds.php:1427 +msgid "" +"Using OPML you can export and import your feeds, filters, labels and Tiny " +"Tiny RSS settings." +msgstr "" +"Med OPML kan du importera och exportera dina flöden, filter, etiketter och " +"Tin Tiny RSS-inställningar" -#: classes/pref/feeds.php:1411 +#: classes/pref/feeds.php:1429 msgid "Only main settings profile can be migrated using OPML." msgstr "Endast huvudprofilens inställningar kan migreras med OPML." -#: classes/pref/feeds.php:1424 +#: classes/pref/feeds.php:1442 msgid "Import my OPML" msgstr "Importera OPML" -#: classes/pref/feeds.php:1428 +#: classes/pref/feeds.php:1446 msgid "Filename:" msgstr "Filnamn:" -#: classes/pref/feeds.php:1430 +#: classes/pref/feeds.php:1448 msgid "Include settings" msgstr "Inkludera inställningar" -#: classes/pref/feeds.php:1434 +#: classes/pref/feeds.php:1452 msgid "Export OPML" msgstr "Exportera OPML" -#: classes/pref/feeds.php:1438 -msgid "Your OPML can be published publicly and can be subscribed by anyone who knows the URL below." -msgstr "Din OPML-fil kan publiceras publikt och den kan bli prenumererad på av alla som känner till URLen nedan" +#: classes/pref/feeds.php:1456 +msgid "" +"Your OPML can be published publicly and can be subscribed by anyone who " +"knows the URL below." +msgstr "" +"Din OPML-fil kan publiceras publikt och den kan bli prenumererad på av alla " +"som känner till URLen nedan" -#: classes/pref/feeds.php:1440 -msgid "Published OPML does not include your Tiny Tiny RSS settings, feeds that require authentication or feeds hidden from Popular feeds." -msgstr "Publicerad OPML inkluderar inte dina Tiny Tiny RSS-inställningar, flöden som kräver autentisering eller flöden som är dolda under populära flöden." +#: classes/pref/feeds.php:1458 +msgid "" +"Published OPML does not include your Tiny Tiny RSS settings, feeds that " +"require authentication or feeds hidden from Popular feeds." +msgstr "" +"Publicerad OPML inkluderar inte dina Tiny Tiny RSS-inställningar, flöden som " +"kräver autentisering eller flöden som är dolda under populära flöden." -#: classes/pref/feeds.php:1442 +#: classes/pref/feeds.php:1460 msgid "Public OPML URL" msgstr "Publik OPML-URL" -#: classes/pref/feeds.php:1443 +#: classes/pref/feeds.php:1461 msgid "Display published OPML URL" msgstr "Visa publicerad OPML-URL" -#: classes/pref/feeds.php:1452 +#: classes/pref/feeds.php:1470 msgid "Firefox integration" msgstr "Firefox-integration" -#: classes/pref/feeds.php:1454 -msgid "This Tiny Tiny RSS site can be used as a Firefox Feed Reader by clicking the link below." -msgstr "Denna Tiny Tiny RSS-webbplats kan användas som en flödesläsare för Firefox genom att klicka på länken nedan." +#: classes/pref/feeds.php:1472 +msgid "" +"This Tiny Tiny RSS site can be used as a Firefox Feed Reader by clicking the " +"link below." +msgstr "" +"Denna Tiny Tiny RSS-webbplats kan användas som en flödesläsare för Firefox " +"genom att klicka på länken nedan." -#: classes/pref/feeds.php:1461 +#: classes/pref/feeds.php:1479 msgid "Click here to register this site as a feed reader." msgstr "Klicka här för att registrera denna webbplats som en flödesläsare." -#: classes/pref/feeds.php:1469 +#: classes/pref/feeds.php:1487 msgid "Published & shared articles / Generated feeds" msgstr "Publicerade och delade artiklar / Genererade flöden" -#: classes/pref/feeds.php:1471 -msgid "Published articles are exported as a public RSS feed and can be subscribed by anyone who knows the URL specified below." -msgstr "Publicerade artiklar exporteras som ett publikt RSS-flöde och kan prenumeras på av alla som har URLen nedan." +#: classes/pref/feeds.php:1489 +msgid "Published articles and generated feeds" +msgstr "Publicerade artiklar och genererade flöden" -#: classes/pref/feeds.php:1479 +#: classes/pref/feeds.php:1491 +msgid "" +"Published articles are exported as a public RSS feed and can be subscribed " +"by anyone who knows the URL specified below." +msgstr "" +"Publicerade artiklar exporteras som ett publikt RSS-flöde och kan prenumeras " +"på av alla som har URLen nedan." + +#: classes/pref/feeds.php:1497 msgid "Display URL" msgstr "Visa URL" -#: classes/pref/feeds.php:1482 +#: classes/pref/feeds.php:1500 msgid "Clear all generated URLs" msgstr "Rensa alla genererade URLer" -#: classes/pref/feeds.php:1486 +#: classes/pref/feeds.php:1502 +msgid "Articles shared by URL" +msgstr "Artiklar delade per URL" + +#: classes/pref/feeds.php:1504 msgid "You can disable all articles shared by unique URLs here." msgstr "Du kan inaktivera alla artiklar som delas ut med unik URL här." -#: classes/pref/feeds.php:1491 +#: classes/pref/feeds.php:1507 msgid "Unshare all articles" msgstr "Ta bort delning av alla artiklar" -#: classes/pref/feeds.php:1568 -msgid "These feeds have not been updated with new content for 3 months (oldest first):" -msgstr "Följande flöden har inte uppdaterats med nytt innehåll på 3 månader (äldst först): " +#: classes/pref/feeds.php:1582 +msgid "" +"These feeds have not been updated with new content for 3 months (oldest " +"first):" +msgstr "" +"Följande flöden har inte uppdaterats med nytt innehåll på 3 månader (äldst " +"först): " -#: classes/pref/feeds.php:1604 -#: classes/pref/feeds.php:1670 +#: classes/pref/feeds.php:1619 classes/pref/feeds.php:1689 msgid "Click to edit feed" msgstr "Klicka för att redigera flöde" -#: classes/pref/feeds.php:1622 -#: classes/pref/feeds.php:1690 +#: classes/pref/feeds.php:1637 classes/pref/feeds.php:1709 msgid "Unsubscribe from selected feeds" msgstr "Ta bort prenumeration för valda flöden" -#: classes/pref/feeds.php:1795 +#: classes/pref/feeds.php:1648 +msgid "These feeds have not been updated because of errors:" +msgstr "Följande flöden har inte blivit uppdaterade pga fel:" + +#: classes/pref/feeds.php:1814 msgid "Add one valid RSS feed per line (no feed detection is done)" msgstr "Lägg till ett giltigt RSS-flöde per rad (ingen flödesupptäckt görs)" -#: classes/pref/feeds.php:1804 +#: classes/pref/feeds.php:1823 msgid "Feeds to subscribe, One per line" msgstr "Flöden att prenumerera på, ett per rad" -#: classes/pref/feeds.php:1826 +#: classes/pref/feeds.php:1845 msgid "Feeds require authentication." msgstr "Flödet kräver inloggning." -#: classes/pref/system.php:29 +#: classes/pref/system.php:25 msgid "Error Log" msgstr "Fellogg" -#: classes/pref/system.php:40 +#: classes/pref/system.php:36 msgid "Refresh" msgstr "Uppdatera" -#: classes/pref/system.php:43 -#, fuzzy -msgid "Clear log" -msgstr "Rensa färger" - -#: classes/pref/system.php:48 +#: classes/pref/system.php:41 msgid "Error" msgstr "Fel" -#: classes/pref/system.php:49 +#: classes/pref/system.php:42 msgid "Filename" msgstr "Filnamn" -#: classes/pref/system.php:50 +#: classes/pref/system.php:43 msgid "Message" msgstr "Meddelande" -#: classes/pref/system.php:52 +#: classes/pref/system.php:45 msgid "Date" msgstr "Datum" +#: plugins/digest/digest_body.php:57 +msgid "" +"Your browser doesn't support Javascript, which is required for this " +"application to function properly. Please check your browser settings." +msgstr "" +"Din webbläsare stöder inte Javascript som krävs för att denna applikation " +"ska fungera som den ska. Kontrollera dina webbläsarinställningar." + +#: plugins/digest/digest_body.php:72 +msgid "Hello," +msgstr "Hej," + +#: plugins/digest/digest_body.php:78 +msgid "Regular version" +msgstr "Standardversion" + #: plugins/close_button/init.php:22 msgid "Close article" msgstr "Stäng artikel" -#: plugins/nsfw/init.php:29 -#: plugins/nsfw/init.php:40 +#: plugins/nsfw/init.php:29 plugins/nsfw/init.php:40 msgid "Not work safe (click to toggle)" msgstr "NSFW (klicka för att växla)" @@ -2484,15 +2413,61 @@ msgstr "Lösenord uppdaterat." msgid "Old password is incorrect." msgstr "Felaktigt gammalt lösenord." -#: plugins/mailto/init.php:49 -#: plugins/mailto/init.php:55 -#: plugins/mail/init.php:64 -#: plugins/mail/init.php:70 +#: plugins/mobile/mobile-functions.php:64 +#: plugins/mobile/mobile-functions.php:140 +#: plugins/mobile/mobile-functions.php:176 +#: plugins/mobile/mobile-functions.php:203 +#: plugins/mobile/mobile-functions.php:239 +#: plugins/mobile/mobile-functions.php:376 plugins/mobile/prefs.php:25 +msgid "Home" +msgstr "Hem" + +#: plugins/mobile/mobile-functions.php:412 +msgid "Nothing found (click to reload feed)." +msgstr "Inget kunde hittas (klicka för att ladda om flöde)" + +#: plugins/mobile/login_form.php:52 +msgid "Open regular version" +msgstr "Öppna normal version" + +#: plugins/mobile/prefs.php:30 +msgid "Enable categories" +msgstr "Aktivera kategorier" + +#: plugins/mobile/prefs.php:31 plugins/mobile/prefs.php:36 +#: plugins/mobile/prefs.php:42 plugins/mobile/prefs.php:47 +#: plugins/mobile/prefs.php:52 plugins/mobile/prefs.php:57 +msgid "ON" +msgstr "PÅ" + +#: plugins/mobile/prefs.php:31 plugins/mobile/prefs.php:36 +#: plugins/mobile/prefs.php:42 plugins/mobile/prefs.php:47 +#: plugins/mobile/prefs.php:52 plugins/mobile/prefs.php:57 +msgid "OFF" +msgstr "AV" + +#: plugins/mobile/prefs.php:35 +msgid "Browse categories like folders" +msgstr "Bläddra i kategorier som i mappar" + +#: plugins/mobile/prefs.php:41 +msgid "Show images in posts" +msgstr "Visa bilder i artiklar" + +#: plugins/mobile/prefs.php:46 +msgid "Hide read articles and feeds" +msgstr "Dölj lästa artiklar och flöden" + +#: plugins/mobile/prefs.php:51 +msgid "Sort feeds by unread count" +msgstr "Sortera flöden efter antal olästa artiklar" + +#: plugins/mailto/init.php:49 plugins/mailto/init.php:55 +#: plugins/mail/init.php:64 plugins/mail/init.php:70 msgid "[Forwarded]" msgstr "[Vidarebefordrat]" -#: plugins/mailto/init.php:49 -#: plugins/mail/init.php:64 +#: plugins/mailto/init.php:49 plugins/mail/init.php:64 msgid "Multiple articles" msgstr "Flera artiklar" @@ -2505,7 +2480,8 @@ msgid "Forward selected article(s) by email." msgstr "Vidarebefordra markerade artiklar med e-post" #: plugins/mailto/init.php:78 -msgid "You should be able to edit the message before sending in your mail client." +msgid "" +"You should be able to edit the message before sending in your mail client." msgstr "Du bör kunna redigera ditt meddelande innan det skickas" #: plugins/mailto/init.php:83 @@ -2517,30 +2493,42 @@ msgid "Bookmarklets" msgstr "Bookmarklets" #: plugins/bookmarklets/init.php:22 -msgid "Drag the link below to your browser toolbar, open the feed you're interested in in your browser and click on the link to subscribe to it." -msgstr "Dra länken nedan till din webbläsares verktygsrad, öppna det flöde du är intresserad av i webbläsaren och klicka på länken för att prenumerara på det." +msgid "" +"Drag the link below to your browser toolbar, open the feed you're interested " +"in in your browser and click on the link to subscribe to it." +msgstr "" +"Dra länken nedan till din webbläsares verktygsrad, öppna det flöde du är " +"intresserad av i webbläsaren och klicka på länken för att prenumerara på det." #: plugins/bookmarklets/init.php:26 #, php-format msgid "Subscribe to %s in Tiny Tiny RSS?" msgstr "Prenumerera på %s i Tiny Tiny RSS?" -#: plugins/bookmarklets/init.php:31 +#: plugins/bookmarklets/init.php:30 msgid "Subscribe in Tiny Tiny RSS" msgstr "Prenumerera i Tiny Tiny RSS" -#: plugins/bookmarklets/init.php:34 +#: plugins/bookmarklets/init.php:32 msgid "Use this bookmarklet to publish arbitrary pages using Tiny Tiny RSS" -msgstr "Använd denna bookmarklet för att publicera webbsidor genom Tiny Tiny RSS" +msgstr "" +"Använd denna bookmarklet för att publicera webbsidor genom Tiny Tiny RSS" #: plugins/import_export/init.php:58 msgid "Import and export" msgstr "Importera och exportera" #: plugins/import_export/init.php:60 -#, fuzzy -msgid "You can export and import your Starred and Archived articles for safekeeping or when migrating between tt-rss instances of same version." -msgstr "Du kan importera och exportera dina stjärnmärkta och arkiverad artiklar så att du har en backup eller för att flytta mellan tt-rss instanser." +msgid "Article archive" +msgstr "Artikelarkiv" + +#: plugins/import_export/init.php:62 +msgid "" +"You can export and import your Starred and Archived articles for safekeeping " +"or when migrating between tt-rss instances." +msgstr "" +"Du kan importera och exportera dina stjärnmärkta och arkiverad artiklar så " +"att du har en backup eller för att flytta mellan tt-rss instanser." #: plugins/import_export/init.php:65 msgid "Export my data" @@ -2550,49 +2538,48 @@ msgstr "Exportera min data" msgid "Import" msgstr "Importera" -#: plugins/import_export/init.php:219 +#: plugins/import_export/init.php:217 msgid "Could not import: incorrect schema version." msgstr "Kunde inte importera: inkorrekt version av databasschema" -#: plugins/import_export/init.php:224 +#: plugins/import_export/init.php:222 msgid "Could not import: unrecognized document format." msgstr "Kunde inte importera: okänt filformat" -#: plugins/import_export/init.php:383 +#: plugins/import_export/init.php:381 msgid "Finished: " msgstr "Klart:" -#: plugins/import_export/init.php:384 +#: plugins/import_export/init.php:382 #, php-format msgid "%d article processed, " msgid_plural "%d articles processed, " msgstr[0] "%d artikel bearbetad, " msgstr[1] "%d artiklar bearbetade, " -#: plugins/import_export/init.php:385 +#: plugins/import_export/init.php:383 #, php-format msgid "%d imported, " msgid_plural "%d imported, " msgstr[0] "%d importerat, " msgstr[1] "%d importerade, " -#: plugins/import_export/init.php:386 +#: plugins/import_export/init.php:384 #, php-format msgid "%d feed created." msgid_plural "%d feeds created." msgstr[0] "%d flöde skapat." msgstr[1] "%d flöden skapade." -#: plugins/import_export/init.php:391 +#: plugins/import_export/init.php:389 msgid "Could not load XML document." msgstr "Kunde inte ladda XML-filen." -#: plugins/import_export/init.php:403 +#: plugins/import_export/init.php:401 msgid "Prepare data" msgstr "Förbered data" -#: plugins/import_export/init.php:446 -#: plugins/googlereaderimport/init.php:92 +#: plugins/import_export/init.php:444 plugins/googlereaderimport/init.php:92 msgid "No file uploaded." msgstr "Ingen fil uppladdad." @@ -2612,11 +2599,22 @@ msgstr "Ämne:" msgid "Send e-mail" msgstr "Skicka e-post" -#: plugins/note/init.php:26 -#: plugins/note/note.js:11 +#: plugins/note/init.php:26 plugins/note/note.js:11 msgid "Edit article note" msgstr "Redigera artikelnotering" +#: plugins/example/init.php:36 +msgid "Example Pane" +msgstr "Exempelpanel" + +#: plugins/example/init.php:67 +msgid "Sample value" +msgstr "Exempelvärde" + +#: plugins/example/init.php:73 +msgid "Set value" +msgstr "Ange värde" + #: plugins/googlereaderimport/init.php:178 #, php-format msgid "All done. %d out of %d articles imported." @@ -2642,35 +2640,29 @@ msgstr "Importera mina stjärnmärkta objekt" msgid "Linked" msgstr "Länkad" -#: plugins/instances/init.php:204 -#: plugins/instances/init.php:395 +#: plugins/instances/init.php:204 plugins/instances/init.php:395 msgid "Instance" msgstr "Instans" -#: plugins/instances/init.php:215 -#: plugins/instances/init.php:312 +#: plugins/instances/init.php:215 plugins/instances/init.php:312 #: plugins/instances/init.php:404 msgid "Instance URL" msgstr "Instans-URL" -#: plugins/instances/init.php:226 -#: plugins/instances/init.php:414 +#: plugins/instances/init.php:226 plugins/instances/init.php:414 msgid "Access key:" msgstr "Accessnyckel:" -#: plugins/instances/init.php:229 -#: plugins/instances/init.php:313 +#: plugins/instances/init.php:229 plugins/instances/init.php:313 #: plugins/instances/init.php:417 msgid "Access key" msgstr "Accessnyckel" -#: plugins/instances/init.php:233 -#: plugins/instances/init.php:421 +#: plugins/instances/init.php:233 plugins/instances/init.php:421 msgid "Use one access key for both linked instances." msgstr "Använd samma accessnyckel för bägge länkade instanserna" -#: plugins/instances/init.php:241 -#: plugins/instances/init.php:429 +#: plugins/instances/init.php:241 plugins/instances/init.php:429 msgid "Generate new key" msgstr "Skapa en ny nyckel" @@ -2679,8 +2671,12 @@ msgid "Link instance" msgstr "Länka instanser" #: plugins/instances/init.php:304 -msgid "You can connect other instances of Tiny Tiny RSS to this one to share Popular feeds. Link to this instance of Tiny Tiny RSS by using this URL:" -msgstr "Du kan ansluta till andra instanser av Tiny Tiny RSS för att dela populära flöde. Länka till denna instans genom att använd följande URL:" +msgid "" +"You can connect other instances of Tiny Tiny RSS to this one to share " +"Popular feeds. Link to this instance of Tiny Tiny RSS by using this URL:" +msgstr "" +"Du kan ansluta till andra instanser av Tiny Tiny RSS för att dela populära " +"flöde. Länka till denna instans genom att använd följande URL:" #: plugins/instances/init.php:314 msgid "Last connected" @@ -2706,8 +2702,7 @@ msgstr "Dela via URL" msgid "You can share this article by the following unique URL:" msgstr "Du kan dela denna artikel genom följande unika URL:" -#: plugins/updater/init.php:321 -#: plugins/updater/init.php:338 +#: plugins/updater/init.php:321 plugins/updater/init.php:338 #: plugins/updater/updater.js:10 msgid "Update Tiny Tiny RSS" msgstr "Uppdatera Tiny Tiny RSS" @@ -2717,9 +2712,8 @@ msgid "Your Tiny Tiny RSS installation is up to date." msgstr "Din Tiny Tiny RSS är uppdaterad till senaste version." #: plugins/updater/init.php:349 -#, fuzzy msgid "Do not close this dialog until updating is finished." -msgstr "Stäng inte denna dialog förrän uppdatering är klar. Ta en backup av din tt-rss-katalog innan du fortsätter." +msgstr "Stäng inte denna dialog förrän uppdatering är klar." #: plugins/updater/init.php:358 msgid "It is suggested to backup your tt-rss directory first." @@ -2730,8 +2724,14 @@ msgid "Your database will not be modified." msgstr "Din databas kommer inte att modifieras." #: plugins/updater/init.php:360 -msgid "Your current tt-rss installation directory will not be modified. It will be renamed and left in the parent directory. You will be able to migrate all your customized files after update finishes." +msgid "" +"Your current tt-rss installation directory will not be modified. It will be " +"renamed and left in the parent directory. You will be able to migrate all " +"your customized files after update finishes." msgstr "" +"Katalogen för din nuvarande tt-rss-installation kommer inte att modifieras. " +"Den kommer att döpas om och lämnas i moderkatalogen. Du kommer att kunna " +"migrera alla dina anpassade filer när uppdateringen är klar." #: plugins/updater/init.php:361 msgid "Ready to update." @@ -2741,35 +2741,37 @@ msgstr "Redo att uppdatera." msgid "Start update" msgstr "Starta uppdateringen" -#: js/feedlist.js:397 -#: js/feedlist.js:425 +#: js/feedlist.js:395 js/feedlist.js:423 plugins/digest/digest.js:26 msgid "Mark all articles in %s as read?" msgstr "Märk alla artiklar i %s som lästa?" -#: js/feedlist.js:416 +#: js/feedlist.js:414 msgid "Mark all articles in %s older than 1 day as read?" msgstr "Markera alla artiklar i %s äldre än 1 dag som lästa?" -#: js/feedlist.js:419 +#: js/feedlist.js:417 msgid "Mark all articles in %s older than 1 week as read?" msgstr "Markera alla artiklar i %s äldre än 1 vecka som lästa?" -#: js/feedlist.js:422 +#: js/feedlist.js:420 msgid "Mark all articles in %s older than 2 weeks as read?" msgstr "Markera alla artiklar i %s äldre än 2 veckor som lästa?" #: js/functions.js:65 msgid "The error will be reported to the configured log destination." -msgstr "" +msgstr "Felet kommer att skrivas ut i konfigurerad loggfil." #: js/functions.js:107 -msgid "Are you sure to report this exception to tt-rss.org? The report will include your browser information. Your IP would be saved in the database." -msgstr "Vill du rapportera detta fel till tt-rss.org? Rapporten kommer innehålla information om din webbläsare och din ip-adress." +msgid "" +"Are you sure to report this exception to tt-rss.org? The report will include " +"your browser information. Your IP would be saved in the database." +msgstr "" +"Vill du rapportera detta fel till tt-rss.org? Rapporten kommer innehålla " +"information om din webbläsare och din ip-adress." #: js/functions.js:236 -#, fuzzy msgid "Click to close" -msgstr "Klicka för att pausa" +msgstr "Klicka för att stänga" #: js/functions.js:612 msgid "Error explained" @@ -2856,15 +2858,18 @@ msgid "Create Filter" msgstr "Skapa filter" #: js/functions.js:1191 -msgid "Reset subscription? Tiny Tiny RSS will try to subscribe to the notification hub again on next feed update." -msgstr "Återställ prenumeration? Tiny Tiny RSS kommer försöka prenumerera på notifikationshubben igen vid nästa flödesuppdatering." +msgid "" +"Reset subscription? Tiny Tiny RSS will try to subscribe to the notification " +"hub again on next feed update." +msgstr "" +"Återställ prenumeration? Tiny Tiny RSS kommer försöka prenumerera på " +"notifikationshubben igen vid nästa flödesuppdatering." #: js/functions.js:1202 msgid "Subscription reset." msgstr "Prenumeration återställd." -#: js/functions.js:1212 -#: js/tt-rss.js:677 +#: js/functions.js:1212 js/tt-rss.js:650 msgid "Unsubscribe from %s?" msgstr "Säg upp prenumeration på %s?" @@ -2880,14 +2885,11 @@ msgstr "Ange kategorititel:" msgid "Generate new syndication address for this feed?" msgstr "Generera en ny syndikeringsadress för detta flöde?" -#: js/functions.js:1359 -#: js/prefs.js:1231 +#: js/functions.js:1359 js/prefs.js:1231 msgid "Trying to change address..." msgstr "Försöker ändra adress..." -#: js/functions.js:1546 -#: js/tt-rss.js:422 -#: js/tt-rss.js:658 +#: js/functions.js:1546 js/tt-rss.js:421 js/tt-rss.js:631 msgid "You can't edit this kind of feed." msgstr "Detta typ av flöde kan inte redigeras." @@ -2895,9 +2897,7 @@ msgstr "Detta typ av flöde kan inte redigeras." msgid "Edit Feed" msgstr "Redigera flöde" -#: js/functions.js:1567 -#: js/prefs.js:194 -#: js/prefs.js:749 +#: js/functions.js:1567 js/prefs.js:194 js/prefs.js:749 msgid "Saving data..." msgstr "Sparar data..." @@ -2905,33 +2905,29 @@ msgstr "Sparar data..." msgid "More Feeds" msgstr "Fler flöden" -#: js/functions.js:1660 -#: js/functions.js:1770 -#: js/prefs.js:397 -#: js/prefs.js:427 -#: js/prefs.js:459 -#: js/prefs.js:642 -#: js/prefs.js:662 -#: js/prefs.js:1207 +#: js/functions.js:1660 js/functions.js:1770 js/prefs.js:397 js/prefs.js:427 +#: js/prefs.js:459 js/prefs.js:642 js/prefs.js:662 js/prefs.js:1207 #: js/prefs.js:1352 msgid "No feeds are selected." msgstr "Inget flöde valt." #: js/functions.js:1702 -msgid "Remove selected feeds from the archive? Feeds with stored articles will not be removed." -msgstr "Radera markerade flöden från arkivet? Flöden med sparade artiklar kommer inte raderas." +msgid "" +"Remove selected feeds from the archive? Feeds with stored articles will not " +"be removed." +msgstr "" +"Radera markerade flöden från arkivet? Flöden med sparade artiklar kommer " +"inte raderas." #: js/functions.js:1741 msgid "Feeds with update errors" msgstr "Flöden med uppdateringsfel" -#: js/functions.js:1752 -#: js/prefs.js:1189 +#: js/functions.js:1752 js/prefs.js:1189 msgid "Remove selected feeds?" msgstr "Ta bort markerade flöden?" -#: js/functions.js:1755 -#: js/prefs.js:1192 +#: js/functions.js:1755 js/prefs.js:1192 msgid "Removing selected feeds..." msgstr "Tar bort valda flöden..." @@ -2987,23 +2983,21 @@ msgstr "Radera markerade etiketter?" msgid "Removing selected labels..." msgstr "Tar bort valda etiketter..." -#: js/prefs.js:295 -#: js/prefs.js:1393 +#: js/prefs.js:295 js/prefs.js:1393 msgid "No labels are selected." msgstr "Inga etiketter valda." #: js/prefs.js:309 -msgid "Remove selected users? Neither default admin nor your account will be removed." +msgid "" +"Remove selected users? Neither default admin nor your account will be " +"removed." msgstr "Radera markerade användare? Varken admin eller ditt konto kan raderas." #: js/prefs.js:312 msgid "Removing selected users..." msgstr "Tar bort valda användare..." -#: js/prefs.js:326 -#: js/prefs.js:507 -#: js/prefs.js:528 -#: js/prefs.js:567 +#: js/prefs.js:326 js/prefs.js:507 js/prefs.js:528 js/prefs.js:567 msgid "No users are selected." msgstr "Ingen användare vald." @@ -3015,9 +3009,7 @@ msgstr "Radera markerade filter?" msgid "Removing selected filters..." msgstr "Tar bort valda filter..." -#: js/prefs.js:359 -#: js/prefs.js:597 -#: js/prefs.js:616 +#: js/prefs.js:359 js/prefs.js:597 js/prefs.js:616 msgid "No filters are selected." msgstr "Inga filter valda." @@ -3057,9 +3049,7 @@ msgstr "Användarnamnet kan inte vara tomt." msgid "Saving user..." msgstr "Sparar användare..." -#: js/prefs.js:512 -#: js/prefs.js:533 -#: js/prefs.js:572 +#: js/prefs.js:512 js/prefs.js:533 js/prefs.js:572 msgid "Please select only one user." msgstr "Markera endast en användare." @@ -3103,8 +3093,7 @@ msgstr "OPML-import" msgid "Please choose an OPML file first." msgstr "Välj en OPML-fil först." -#: js/prefs.js:815 -#: plugins/import_export/import_export.js:115 +#: js/prefs.js:815 plugins/import_export/import_export.js:115 #: plugins/googlereaderimport/init.js:45 msgid "Importing, please wait..." msgstr "Importerar, vänligen vänta..." @@ -3114,7 +3103,8 @@ msgid "Reset to defaults?" msgstr "Återställ till standardvärden?" #: js/prefs.js:1096 -msgid "Remove category %s? Any nested feeds would be placed into Uncategorized." +msgid "" +"Remove category %s? Any nested feeds would be placed into Uncategorized." msgstr "Radera kategori %s? Nästlade flöden placeras i Okategoriserat." #: js/prefs.js:1102 @@ -3178,7 +3168,8 @@ msgid "Settings Profiles" msgstr "Inställningsprofiler" #: js/prefs.js:1425 -msgid "Remove selected profiles? Active and default profiles will not be removed." +msgid "" +"Remove selected profiles? Active and default profiles will not be removed." msgstr "Radera markerade profiler? Aktiva profiler tas inte bort." #: js/prefs.js:1428 @@ -3189,13 +3180,11 @@ msgstr "Raderar valda profiler...." msgid "No profiles are selected." msgstr "Inga profiler valda." -#: js/prefs.js:1451 -#: js/prefs.js:1504 +#: js/prefs.js:1451 js/prefs.js:1504 msgid "Activate selected profile?" msgstr "Aktivera markerad profil?" -#: js/prefs.js:1467 -#: js/prefs.js:1520 +#: js/prefs.js:1467 js/prefs.js:1520 msgid "Please choose a profile to activate." msgstr "Välj en profil att aktivera." @@ -3207,8 +3196,7 @@ msgstr "Skapar profil..." msgid "This will invalidate all previously generated feed URLs. Continue?" msgstr "Detta tar bort alla tidigare skapade flödes-URLer. Vill du fortsätta?" -#: js/prefs.js:1531 -#: js/prefs.js:1550 +#: js/prefs.js:1531 js/prefs.js:1550 msgid "Clearing URLs..." msgstr "Rensar URLer..." @@ -3224,201 +3212,223 @@ msgstr "Detta tar bort alla tidigare delade artikel-URLer. Fortsätt?" msgid "Shared URLs cleared." msgstr "Delade URLer rensade." -#: js/prefs.js:1648 +#: js/prefs.js:1663 msgid "Label Editor" msgstr "Etikettseditor" -#: js/prefs.js:1770 +#: js/prefs.js:1785 msgid "Subscribing to feeds..." msgstr "Prenumererar på flöden..." -#: js/prefs.js:1807 +#: js/prefs.js:1822 msgid "Clear stored data for this plugin?" msgstr "Radera lagrad data för detta tillägg?" -#: js/prefs.js:1824 -msgid "Clear all messages in the error log?" -msgstr "" - -#: js/tt-rss.js:127 +#: js/tt-rss.js:126 msgid "Mark all articles as read?" msgstr "Flagga alla artiklar som lästa?" -#: js/tt-rss.js:133 +#: js/tt-rss.js:132 msgid "Marking all feeds as read..." msgstr "Markerar alla flöden som lästa..." -#: js/tt-rss.js:381 +#: js/tt-rss.js:380 msgid "Please enable mail plugin first." msgstr "Aktivera e-post-tillägget först." -#: js/tt-rss.js:493 +#: js/tt-rss.js:492 msgid "Please enable embed_original plugin first." msgstr "Vänligen aktivera tillägget embed_original först." -#: js/tt-rss.js:645 +#: js/tt-rss.js:618 msgid "Select item(s) by tags" msgstr "Välj artiklar baserat på taggar" -#: js/tt-rss.js:666 +#: js/tt-rss.js:639 msgid "You can't unsubscribe from the category." msgstr "Du kan inte säga upp prenumeration på kategorin." -#: js/tt-rss.js:671 -#: js/tt-rss.js:825 +#: js/tt-rss.js:644 js/tt-rss.js:798 msgid "Please select some feed first." msgstr "Välj några flöden först." -#: js/tt-rss.js:820 +#: js/tt-rss.js:793 msgid "You can't rescore this kind of feed." msgstr "Den här typen av flöden kan inte poängsättas." -#: js/tt-rss.js:830 +#: js/tt-rss.js:803 msgid "Rescore articles in %s?" msgstr "Beräkna om poängen för artiklarna i %s?" -#: js/tt-rss.js:833 +#: js/tt-rss.js:806 msgid "Rescoring articles..." msgstr "Räknar om artikelpoäng..." -#: js/tt-rss.js:967 +#: js/tt-rss.js:940 msgid "New version available!" msgstr "Ny version tillgänglig!" -#: js/viewfeed.js:105 +#: js/viewfeed.js:102 msgid "Cancel search" msgstr "Avbryt sökning" -#: js/viewfeed.js:454 +#: js/viewfeed.js:453 plugins/digest/digest.js:258 +#: plugins/digest/digest.js:714 msgid "Unstar article" msgstr "Ta bort stjärnmarkering från artikeln" -#: js/viewfeed.js:458 +#: js/viewfeed.js:457 plugins/digest/digest.js:260 +#: plugins/digest/digest.js:718 msgid "Star article" msgstr "Stjärnmärk artikel" -#: js/viewfeed.js:498 +#: js/viewfeed.js:497 plugins/digest/digest.js:263 +#: plugins/digest/digest.js:749 msgid "Unpublish article" msgstr "Avpublicera artikeln" -#: js/viewfeed.js:502 +#: js/viewfeed.js:501 plugins/digest/digest.js:265 +#: plugins/digest/digest.js:754 msgid "Publish article" msgstr "Publicera artikel" -#: js/viewfeed.js:654 +#: js/viewfeed.js:653 msgid "%d article selected" msgid_plural "%d articles selected" msgstr[0] "%d artikel vald" msgstr[1] "%d artiklar valda" -#: js/viewfeed.js:726 -#: js/viewfeed.js:754 -#: js/viewfeed.js:781 -#: js/viewfeed.js:844 -#: js/viewfeed.js:878 -#: js/viewfeed.js:998 -#: js/viewfeed.js:1041 -#: js/viewfeed.js:1094 -#: js/viewfeed.js:2071 -#: plugins/mailto/init.js:7 +#: js/viewfeed.js:725 js/viewfeed.js:753 js/viewfeed.js:780 js/viewfeed.js:843 +#: js/viewfeed.js:877 js/viewfeed.js:997 js/viewfeed.js:1040 +#: js/viewfeed.js:1093 js/viewfeed.js:2091 plugins/mailto/init.js:7 #: plugins/mail/mail.js:7 msgid "No articles are selected." msgstr "Inga artiklar valda." -#: js/viewfeed.js:1006 +#: js/viewfeed.js:1005 msgid "Delete %d selected article in %s?" msgid_plural "Delete %d selected articles in %s?" msgstr[0] "Radera %d vald artikel i %s?" msgstr[1] "Radera %d valda artiklar i %s?" -#: js/viewfeed.js:1008 +#: js/viewfeed.js:1007 msgid "Delete %d selected article?" msgid_plural "Delete %d selected articles?" msgstr[0] "Radera %d vald artikel?" msgstr[1] "Radera %d valda artiklar?" -#: js/viewfeed.js:1050 +#: js/viewfeed.js:1049 msgid "Archive %d selected article in %s?" msgid_plural "Archive %d selected articles in %s?" msgstr[0] "Arkivera %d vald artikel i %s?" msgstr[1] "Arkivera %d valda artiklar i %s?" -#: js/viewfeed.js:1053 +#: js/viewfeed.js:1052 msgid "Move %d archived article back?" msgid_plural "Move %d archived articles back?" msgstr[0] "Flytta tillbaka %d arkiverad artikel?" msgstr[1] "Flytta tillbaka %d arkiverade artiklar?" -#: js/viewfeed.js:1055 -msgid "Please note that unstarred articles might get purged on next feed update." -msgstr "Vänligen notera att icke stjärnmärkta artiklar kanske rensas vid nästa flödesuppdatering." +#: js/viewfeed.js:1054 +msgid "" +"Please note that unstarred articles might get purged on next feed update." +msgstr "" +"Vänligen notera att icke stjärnmärkta artiklar kanske rensas vid nästa " +"flödesuppdatering." -#: js/viewfeed.js:1100 +#: js/viewfeed.js:1099 msgid "Mark %d selected article in %s as read?" msgid_plural "Mark %d selected articles in %s as read?" msgstr[0] "Markera %d vald artikel i %s som läst?" msgstr[1] "Markera %d valda artiklar i %s som läst?" -#: js/viewfeed.js:1124 +#: js/viewfeed.js:1123 msgid "Edit article Tags" msgstr "Redigera artikeltaggar" -#: js/viewfeed.js:1130 +#: js/viewfeed.js:1129 msgid "Saving article tags..." msgstr "Sparar artikeltaggar..." -#: js/viewfeed.js:1336 +#: js/viewfeed.js:1335 msgid "No article is selected." msgstr "Ingen artikel vald." -#: js/viewfeed.js:1371 +#: js/viewfeed.js:1370 msgid "No articles found to mark" msgstr "Hittade inga artiklar att flagga" -#: js/viewfeed.js:1373 +#: js/viewfeed.js:1372 msgid "Mark %d article as read?" msgid_plural "Mark %d articles as read?" msgstr[0] "Markera %d artikel som läst?" msgstr[1] "Markera %d artiklar som lästa?" -#: js/viewfeed.js:1875 +#: js/viewfeed.js:1895 msgid "Open original article" msgstr "Öppna orginalartikeln" -#: js/viewfeed.js:1881 +#: js/viewfeed.js:1901 msgid "Display article URL" msgstr "Visa artikel-URL" -#: js/viewfeed.js:1900 +#: js/viewfeed.js:1920 msgid "Toggle marked" msgstr "Växla markerade" -#: js/viewfeed.js:1981 +#: js/viewfeed.js:2001 msgid "Assign label" msgstr "Ange etikett" -#: js/viewfeed.js:1986 +#: js/viewfeed.js:2006 msgid "Remove label" msgstr "Ta bort etikett" -#: js/viewfeed.js:2040 +#: js/viewfeed.js:2060 msgid "Please enter new score for selected articles:" msgstr "Ange ny poäng för markerade artiklar:" -#: js/viewfeed.js:2082 +#: js/viewfeed.js:2102 msgid "Please enter new score for this article:" msgstr "Ange ny poäng för denna artikel:" -#: js/viewfeed.js:2115 +#: js/viewfeed.js:2135 msgid "Article URL:" msgstr "URL för artikel:" +#: plugins/digest/digest.js:72 +msgid "Mark %d displayed article as read?" +msgid_plural "Mark %d displayed articles as read?" +msgstr[0] "Markera %d visad artikel som läst?" +msgstr[1] "Markera %d visade artiklar som lästa?" + +#: plugins/digest/digest.js:290 +msgid "Error: unable to load article." +msgstr "Fel: kunde inte ladda artikel." + +#: plugins/digest/digest.js:464 +msgid "Click to expand article." +msgstr "Klicka för att expandera artikeln." + +#: plugins/digest/digest.js:535 +msgid "%d more..." +msgid_plural "%d more..." +msgstr[0] "%d mer..." +msgstr[1] "%d mer..." + +#: plugins/digest/digest.js:542 +msgid "No unread feeds." +msgstr "Inga olästa flöden." + +#: plugins/digest/digest.js:649 +msgid "Load more..." +msgstr "Ladda mer..." + #: plugins/embed_original/init.js:6 msgid "Sorry, your browser does not support sandboxed iframes." msgstr "Din webbläsare stöder inte sandboxade iframes" -#: plugins/mailto/init.js:21 -#: plugins/mail/mail.js:21 +#: plugins/mailto/init.js:21 plugins/mail/mail.js:21 msgid "Forward article by email" msgstr "Vidarebefordra artikel via e-post" @@ -3427,10 +3437,18 @@ msgid "Export Data" msgstr "Exportera data" #: plugins/import_export/import_export.js:40 -msgid "Finished, exported %d article. You can download the data <a class='visibleLink' href='%u'>here</a>." -msgid_plural "Finished, exported %d articles. You can download the data <a class='visibleLink' href='%u'>here</a>." -msgstr[0] "Klart, %d artikel exporterades. Du kan ladda ner datan <a class='visibleLink' href='%u'>här</a>." -msgstr[1] "Klart, %d artiklar exporterades. Du kan ladda ner datan <a class='visibleLink' href='%u'>här</a>." +msgid "" +"Finished, exported %d article. You can download the data <a " +"class='visibleLink' href='%u'>here</a>." +msgid_plural "" +"Finished, exported %d articles. You can download the data <a " +"class='visibleLink' href='%u'>here</a>." +msgstr[0] "" +"Klart, %d artikel exporterades. Du kan ladda ner datan <a " +"class='visibleLink' href='%u'>här</a>." +msgstr[1] "" +"Klart, %d artiklar exporterades. Du kan ladda ner datan <a " +"class='visibleLink' href='%u'>här</a>." #: plugins/import_export/import_export.js:93 msgid "Data Import" @@ -3468,8 +3486,7 @@ msgstr "Ta bort markerade instanser?" msgid "Removing selected instances..." msgstr "Tar bort markerade instanser..." -#: plugins/instances/instances.js:139 -#: plugins/instances/instances.js:151 +#: plugins/instances/instances.js:139 plugins/instances/instances.js:151 msgid "No instances are selected." msgstr "Inga instanser valda." @@ -3482,9 +3499,12 @@ msgid "Share article by URL" msgstr "Dela artikel via URL" #: plugins/updater/updater.js:58 -#, fuzzy -msgid "Backup your tt-rss directory before continuing. Please type 'yes' to continue." -msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog innan du fortsätter. Skriv 'yes' för att fortsätta." +msgid "" +"Backup your tt-rss directory before continuing. Please type 'yes' to " +"continue." +msgstr "" +"Ta backup på din tt-rss-katalog innan du fortsätter. Skriv 'yes' för att " +"fortsätta." #~ msgid "Could not update database" #~ msgstr "Kunde inte uppdatera databasen" @@ -3501,8 +3521,12 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Please backup your database before proceeding." #~ msgstr "Ta en backup av din databas innan du forsätter." -#~ msgid "Your Tiny Tiny RSS database needs update to the latest version (<b>%d</b> to <b>%d</b>)." -#~ msgstr "Din Tiny Tiny RSS-databas behöver uppdateras till den senaste versionen (<b>%d</b> till <b>%d</b>)." +#~ msgid "" +#~ "Your Tiny Tiny RSS database needs update to the latest version (<b>%d</b> " +#~ "to <b>%d</b>)." +#~ msgstr "" +#~ "Din Tiny Tiny RSS-databas behöver uppdateras till den senaste versionen " +#~ "(<b>%d</b> till <b>%d</b>)." #~ msgid "Performing updates..." #~ msgstr "Uppdatering pågår..." @@ -3520,9 +3544,13 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgstr "FEL!" #~ msgid "Finished. Performed <b>%d</b> update up to schema version <b>%d</b>." -#~ msgid_plural "Finished. Performed <b>%d</b> updates up to schema version <b>%d</b>." -#~ msgstr[0] "Klart. Genomförde <b>%d</b> uppdatering upp till schemaversion <b>%d</b>." -#~ msgstr[1] "Klart. Genomförde <b>%d</b> uppdateringar upp till schemaversion <b>%d</b>." +#~ msgid_plural "" +#~ "Finished. Performed <b>%d</b> updates up to schema version <b>%d</b>." +#~ msgstr[0] "" +#~ "Klart. Genomförde <b>%d</b> uppdatering upp till schemaversion <b>%d</b>." +#~ msgstr[1] "" +#~ "Klart. Genomförde <b>%d</b> uppdateringar upp till schemaversion <b>%d</" +#~ "b>." #~ msgid "Your database schema is from a newer version of Tiny Tiny RSS." #~ msgstr "Ditt databasschema är för en nyare Tiny Tiny RSS Version." @@ -3530,8 +3558,12 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Found schema version: <b>%d</b>, required: <b>%d</b>." #~ msgstr "Fann schemaversion: <b>%d</b>, behöver version: <b>%d</b>." -#~ msgid "Schema upgrade impossible. Please update Tiny Tiny RSS files to the newer version and continue." -#~ msgstr "Kan inte uppdatera schema. Uppdatera Tiny Tiny RSS på filsystemet till en ny version " +#~ msgid "" +#~ "Schema upgrade impossible. Please update Tiny Tiny RSS files to the newer " +#~ "version and continue." +#~ msgstr "" +#~ "Kan inte uppdatera schema. Uppdatera Tiny Tiny RSS på filsystemet till en " +#~ "ny version " #~ msgid "Switch to digest..." #~ msgstr "Byt läge till sammanfattning..." @@ -3560,71 +3592,12 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "I have scanned the code and would like to enable OTP" #~ msgstr "Jag har läst av bilden och vill aktivera OTP" -#~ msgid "(Un)hide empty categories" -#~ msgstr "Visa/dölj tomma kategorier" - -#~ msgid "Published articles and generated feeds" -#~ msgstr "Publicerade artiklar och genererade flöden" - -#~ msgid "Articles shared by URL" -#~ msgstr "Artiklar delade per URL" - -#~ msgid "These feeds have not been updated because of errors:" -#~ msgstr "Följande flöden har inte blivit uppdaterade pga fel:" - -#~ msgid "Your browser doesn't support Javascript, which is required for this application to function properly. Please check your browser settings." -#~ msgstr "Din webbläsare stöder inte Javascript som krävs för att denna applikation ska fungera som den ska. Kontrollera dina webbläsarinställningar." - -#~ msgid "Hello," -#~ msgstr "Hej," - -#~ msgid "Regular version" -#~ msgstr "Standardversion" - -#~ msgid "Home" -#~ msgstr "Hem" - -#~ msgid "Nothing found (click to reload feed)." -#~ msgstr "Inget kunde hittas (klicka för att ladda om flöde)" - -#~ msgid "Open regular version" -#~ msgstr "Öppna normal version" - -#~ msgid "Enable categories" -#~ msgstr "Aktivera kategorier" - -#~ msgid "ON" -#~ msgstr "PÅ" - -#~ msgid "OFF" -#~ msgstr "AV" - -#~ msgid "Browse categories like folders" -#~ msgstr "Bläddra i kategorier som i mappar" - -#~ msgid "Show images in posts" -#~ msgstr "Visa bilder i artiklar" - -#~ msgid "Hide read articles and feeds" -#~ msgstr "Dölj lästa artiklar och flöden" - -#~ msgid "Sort feeds by unread count" -#~ msgstr "Sortera flöden efter antal olästa artiklar" - -#~ msgid "Article archive" -#~ msgstr "Artikelarkiv" - -#~ msgid "Could not upload file. You might need to adjust upload_max_filesize in PHP.ini (current value = %s)" -#~ msgstr "Filen kunde inte laddas upp. Kontrollera upload_max_filesize i PHP.ini (nuvarande inställning = %s)" - -#~ msgid "Example Pane" -#~ msgstr "Exempelpanel" - -#~ msgid "Sample value" -#~ msgstr "Exempelvärde" - -#~ msgid "Set value" -#~ msgstr "Ange värde" +#~ msgid "" +#~ "Could not upload file. You might need to adjust upload_max_filesize in " +#~ "PHP.ini (current value = %s)" +#~ msgstr "" +#~ "Filen kunde inte laddas upp. Kontrollera upload_max_filesize i PHP.ini " +#~ "(nuvarande inställning = %s)" #~ msgid "close" #~ msgstr "stäng" @@ -3635,28 +3608,6 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Click to pause" #~ msgstr "Klicka för att pausa" -#~ msgid "Mark %d displayed article as read?" -#~ msgid_plural "Mark %d displayed articles as read?" -#~ msgstr[0] "Markera %d visad artikel som läst?" -#~ msgstr[1] "Markera %d visade artiklar som lästa?" - -#~ msgid "Error: unable to load article." -#~ msgstr "Fel: kunde inte ladda artikel." - -#~ msgid "Click to expand article." -#~ msgstr "Klicka för att expandera artikeln." - -#~ msgid "%d more..." -#~ msgid_plural "%d more..." -#~ msgstr[0] "%d mer..." -#~ msgstr[1] "%d mer..." - -#~ msgid "No unread feeds." -#~ msgstr "Inga olästa flöden." - -#~ msgid "Load more..." -#~ msgstr "Ladda mer..." - #~ msgid "Updated" #~ msgstr "Uppdaterade" @@ -3690,10 +3641,18 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Modify score" #~ msgstr "Redigera poäng" -#~ msgid "This option is useful when you are reading several planet-type aggregators with partially colliding userbase. When disabled, it forces same posts from different feeds to appear only once." -#~ msgstr "Detta är användbart när du läser flera sammanslagna kanaler som har delvis samma användarbas. När inaktiverad så visas samma artikel från flera olika kanaler endast en gång." - -#~ msgid "When this option is enabled, headlines in Special feeds and Labels are grouped by feeds" +#~ msgid "" +#~ "This option is useful when you are reading several planet-type " +#~ "aggregators with partially colliding userbase. When disabled, it forces " +#~ "same posts from different feeds to appear only once." +#~ msgstr "" +#~ "Detta är användbart när du läser flera sammanslagna kanaler som har " +#~ "delvis samma användarbas. När inaktiverad så visas samma artikel från " +#~ "flera olika kanaler endast en gång." + +#~ msgid "" +#~ "When this option is enabled, headlines in Special feeds and Labels are " +#~ "grouped by feeds" #~ msgstr "Gruppera rubriker efter kanaler i Etiketter och Specialkanaler" #~ msgid "Enable external API" @@ -3759,8 +3718,11 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Date syntax is incorrect." #~ msgstr "Datumsyntaxen är felaktig." -#~ msgid "This will clear your stored authentication information for Twitter. Continue?" -#~ msgstr "Detta raderar din lagrade inloggningsinformation till Twitter. Fortsätt?" +#~ msgid "" +#~ "This will clear your stored authentication information for Twitter. " +#~ "Continue?" +#~ msgstr "" +#~ "Detta raderar din lagrade inloggningsinformation till Twitter. Fortsätt?" #~ msgid "Mark all visible articles in %s as read?" #~ msgstr "Flagga alla artiklar i %s som lästa?" @@ -3847,8 +3809,12 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Focus search (if present)" #~ msgstr "Fokusera sökning (om vald)" -#~ msgid "<b>Note:</b> not all actions may be available, depending on Tiny Tiny RSS configuration and your access level." -#~ msgstr "<b>OBS:</b> Beroende på konfiguration och behörigheter så kanske inte alla alternativ är tillgängliga." +#~ msgid "" +#~ "<b>Note:</b> not all actions may be available, depending on Tiny Tiny RSS " +#~ "configuration and your access level." +#~ msgstr "" +#~ "<b>OBS:</b> Beroende på konfiguration och behörigheter så kanske inte " +#~ "alla alternativ är tillgängliga." #~ msgid "Open article in new tab" #~ msgstr "Öppna artikel i ny flik" @@ -3923,7 +3889,8 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgstr "Registera hos Twitter" #~ msgid "Could not connect to Twitter. Refresh the page or try again later." -#~ msgstr "Kunde inte ansluta till Twitter. Ladda om sidan eller försök igen senare." +#~ msgstr "" +#~ "Kunde inte ansluta till Twitter. Ladda om sidan eller försök igen senare." #~ msgid "Congratulations! You have successfully registered with Twitter." #~ msgstr "Grattis! Du är nu registrerad med Twitter." @@ -3955,11 +3922,19 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Twitter" #~ msgstr "Twitter" -#~ msgid "Before you can update your Twitter feeds, you must register this instance of Tiny Tiny RSS with Twitter.com." -#~ msgstr "Innan du kan uppdatera dina Twitterkanaler måste du registrera denna instans av Tiny Tiny RSS hos Twitter." +#~ msgid "" +#~ "Before you can update your Twitter feeds, you must register this instance " +#~ "of Tiny Tiny RSS with Twitter.com." +#~ msgstr "" +#~ "Innan du kan uppdatera dina Twitterkanaler måste du registrera denna " +#~ "instans av Tiny Tiny RSS hos Twitter." -#~ msgid "You have been successfully registered with Twitter.com and should be able to access your Twitter feeds." -#~ msgstr "Du är registerad hos Twitter och ska nu ha åtkomst till dina Twitterkanaler " +#~ msgid "" +#~ "You have been successfully registered with Twitter.com and should be able " +#~ "to access your Twitter feeds." +#~ msgstr "" +#~ "Du är registerad hos Twitter och ska nu ha åtkomst till dina " +#~ "Twitterkanaler " #~ msgid "Register with Twitter.com" #~ msgstr "Registrera hos Twitter" @@ -3979,5 +3954,9 @@ msgstr "Live-uppdatering anses experimentell. Ta backup på din tt-rss-katalog i #~ msgid "Filter Test Results" #~ msgstr "Filtertestresultat" -#~ msgid "When \"Mark as read\" button is clicked in toolbar, automatically open next feed with unread articles." -#~ msgstr "Växla automatiskt till nästa kanal när du klickar på \"Markera alla som lästa\"i verktygsraden." +#~ msgid "" +#~ "When \"Mark as read\" button is clicked in toolbar, automatically open " +#~ "next feed with unread articles." +#~ msgstr "" +#~ "Växla automatiskt till nästa kanal när du klickar på \"Markera alla som " +#~ "lästa\"i verktygsraden." diff --git a/plugins/auth_internal/init.php b/plugins/auth_internal/init.php index 87c8555c0..3c38ab8bf 100644 --- a/plugins/auth_internal/init.php +++ b/plugins/auth_internal/init.php @@ -51,7 +51,7 @@ class Auth_Internal extends Plugin implements IAuthModule { $return = urlencode($_REQUEST["return"]); ?><html> <head><title>Tiny Tiny RSS</title></head> - <?php stylesheet_tag("utility.css") ?> + <?php stylesheet_tag("css/utility.css") ?> <body class="otp"><div class="content"> <form action="public.php?return=<?php echo $return ?>" method="POST" class="otpform"> diff --git a/plugins/googlereaderkeys/init.php b/plugins/googlereaderkeys/init.php index c8e7d7a38..a8b7069db 100644 --- a/plugins/googlereaderkeys/init.php +++ b/plugins/googlereaderkeys/init.php @@ -23,6 +23,9 @@ class GoogleReaderKeys extends Plugin { $hotkeys["v"] = "open_in_new_window"; $hotkeys["r"] = "feed_refresh"; $hotkeys["m"] = "toggle_unread"; + $hotkeys["o"] = "toggle_expand"; + $hotkeys["(13)|enter"] = "toggle_expand"; + $hotkeys["*(191)|?"] = "help_dialog"; $hotkeys["(32)|space"] = "next_article"; $hotkeys["(38)|up"] = "article_scroll_up"; $hotkeys["(40)|down"] = "article_scroll_down"; @@ -33,13 +33,14 @@ <title>Tiny Tiny RSS : <?php echo __("Preferences") ?></title> <?php stylesheet_tag("lib/dijit/themes/claro/claro.css"); ?> - <?php stylesheet_tag("tt-rss.css"); ?> - <?php stylesheet_tag("prefs.css"); ?> + <?php stylesheet_tag("css/layout.css"); ?> <?php if ($_SESSION["uid"]) { $theme = get_pref( "USER_CSS_THEME", $_SESSION["uid"], false); - if ($theme) { + if ($theme && file_exists("themes/$theme")) { stylesheet_tag("themes/$theme"); + } else { + stylesheet_tag("themes/default.css"); } } ?> diff --git a/register.php b/register.php index 5bc6563b0..eaab98e04 100644 --- a/register.php +++ b/register.php @@ -15,6 +15,8 @@ require_once "config.php"; require_once "db.php"; + startup_gettext(); + $action = $_REQUEST["action"]; if (!init_plugins()) return; @@ -93,7 +95,7 @@ <head> <title>Create new account</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> -<link rel="stylesheet" type="text/css" href="utility.css"> +<link rel="stylesheet" type="text/css" href="css/utility.css"> <script type="text/javascript" src="js/functions.js"></script> <script type="text/javascript" src="lib/prototype.js"></script> <script type="text/javascript" src="lib/scriptaculous/scriptaculous.js?load=effects,dragdrop,controls"></script> diff --git a/schema/ttrss_schema_mysql.sql b/schema/ttrss_schema_mysql.sql index aa1197091..e8d5f64b9 100644 --- a/schema/ttrss_schema_mysql.sql +++ b/schema/ttrss_schema_mysql.sql @@ -14,6 +14,7 @@ drop table if exists ttrss_labels; drop table if exists ttrss_filters2_actions; drop table if exists ttrss_filters2_rules; drop table if exists ttrss_filters2; +drop table if exists ttrss_filters; drop table if exists ttrss_filter_types; drop table if exists ttrss_filter_actions; drop table if exists ttrss_user_prefs; diff --git a/schema/ttrss_schema_pgsql.sql b/schema/ttrss_schema_pgsql.sql index 79634678d..feb5cece3 100644 --- a/schema/ttrss_schema_pgsql.sql +++ b/schema/ttrss_schema_pgsql.sql @@ -11,6 +11,7 @@ drop table if exists ttrss_labels; drop table if exists ttrss_filters2_rules; drop table if exists ttrss_filters2_actions; drop table if exists ttrss_filters2; +drop table if exists ttrss_filters; drop table if exists ttrss_filter_types; drop table if exists ttrss_filter_actions; drop table if exists ttrss_user_prefs; diff --git a/themes/default.css b/themes/default.css index e69de29bb..83e15257b 100644 --- a/themes/default.css +++ b/themes/default.css @@ -0,0 +1,3 @@ +@import "../css/tt-rss.css"; +@import "../css/cdm.css"; +@import "../css/prefs.css"; diff --git a/update.php b/update.php index f542a390b..0141b1a8e 100755 --- a/update.php +++ b/update.php @@ -47,7 +47,7 @@ <head> <title>Tiny Tiny RSS data update script.</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> - <link rel="stylesheet" type="text/css" href="utility.css"> + <link rel="stylesheet" type="text/css" href="css/utility.css"> </head> <body> @@ -175,7 +175,9 @@ } update_daemon_common(isset($options["pidlock"]) ? 50 : DAEMON_FEED_LIMIT); - housekeeping_common(true); + + if (!isset($options["pidlock"]) || $options["task"] == 0) + housekeeping_common(true); PluginHost::getInstance()->run_hooks(PluginHost::HOOK_UPDATE_TASK, "hook_update_task", $op); } diff --git a/update_daemon2.php b/update_daemon2.php index d5b6a45e3..9d948a64d 100755 --- a/update_daemon2.php +++ b/update_daemon2.php @@ -203,6 +203,7 @@ if (!$master_handlers_installed) { _debug("[MASTER] installing shutdown handlers"); pcntl_signal(SIGINT, 'sigint_handler'); + pcntl_signal(SIGTERM, 'sigint_handler'); register_shutdown_function('shutdown', posix_getpid()); $master_handlers_installed = true; } |