]> git.wh0rd.org - tt-rss.git/blobdiff - include/functions.php
integrate silk icons by Mark James
[tt-rss.git] / include / functions.php
index 2f288737ed4b6814ead1331889807107deccacfb..603a865a165b47f61af613977d8b6dddc4f66060 100644 (file)
@@ -71,6 +71,7 @@
                                        "hu_HU" => "Magyar (Hungarian)",
                                        "it_IT" => "Italiano",
                                        "ja_JP" => "日本語 (Japanese)",
+                                       "ko_KR" => "한국어 (Korean)",
                                        "lv_LV" => "Latviešu",
                                        "nb_NO" => "Norwegian bokmål",
                                        "nl_NL" => "Dutch",
                $fp = fopen(LOCK_DIRECTORY . "/$filename", "w");
 
                if ($fp && flock($fp, LOCK_EX | LOCK_NB)) {
+                       $stat_h = fstat($fp);
+                       $stat_f = stat(LOCK_DIRECTORY . "/$filename");
+
+                       if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') {
+                               if ($stat_h["ino"] != $stat_f["ino"] ||
+                                               $stat_h["dev"] != $stat_f["dev"]) {
+
+                                       return false;
+                               }
+                       }
+
                        if (function_exists('posix_getpid')) {
                                fwrite($fp, posix_getpid() . "\n");
                        }
                                        $date_qpart = "date_entered < DATE_SUB(NOW(), INTERVAL 1 WEEK) ";
                                }
                                break;
-                       case "2weeks":
+                       case "2week":
                                if (DB_TYPE == "pgsql") {
                                        $date_qpart = "date_entered < NOW() - INTERVAL '2 week' ";
                                } else {
                        return "images/archive.png";
                        break;
                case -1:
-                       return "images/mark_set.svg";
+                       return "images/star.png";
                        break;
                case -2:
-                       return "images/pub_set.svg";
+                       return "images/feed.png";
                        break;
                case -3:
                        return "images/fresh.png";
                        break;
                case -4:
-                       return "images/tag.png";
+                       return "images/folder.png";
                        break;
                case -6:
-                       return "images/recently_read.png";
+                       return "images/time.png";
                        break;
                default:
                        if ($id < LABEL_BASE_INDEX) {
                $params["max_feed_id"] = (int) $max_feed_id;
                $params["num_feeds"] = (int) $num_feeds;
 
-               $params["collapsed_feedlist"] = (int) get_pref("_COLLAPSED_FEEDLIST");
                $params["hotkeys"] = get_hotkeys_map();
 
                $params["csrf_token"] = $_SESSION["csrf_token"];
 
                        if ($site_url) {
 
-                               if ($entry->hasAttribute('href'))
+                               if ($entry->hasAttribute('href')) {
                                        $entry->setAttribute('href',
                                                rewrite_relative_url($site_url, $entry->getAttribute('href')));
 
+                                       $entry->setAttribute('rel', 'noreferrer');
+                               }
+
                                if ($entry->hasAttribute('src')) {
                                        $src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
 
        function format_warning($msg, $id = "") {
                global $link;
                return "<div class=\"warning\" id=\"$id\">
-                       <span><img src=\"images/sign_excl.svg\"></span><span>$msg</span></div>";
+                       <span><img src=\"images/alert.png\"></span><span>$msg</span></div>";
        }
 
        function format_notice($msg, $id = "") {
                global $link;
                return "<div class=\"notice\" id=\"$id\">
-                       <span><img src=\"images/sign_info.svg\"></span><span>$msg</span></div>";
+                       <span><img src=\"images/information.png\"></span><span>$msg</span></div>";
        }
 
        function format_error($msg, $id = "") {
                global $link;
                return "<div class=\"error\" id=\"$id\">
-                       <span><img src=\"images/sign_excl.svg\"></span><span>$msg</span></div>";
+                       <span><img src=\"images/alert.png\"></span><span>$msg</span></div>";
        }
 
        function print_notice($msg) {
                        if ($_SESSION["hasAudio"] && (strpos($ctype, "ogg") !== false ||
                                $_SESSION["hasMp3"])) {
 
-                               $entry .= "<audio controls>
+                               $entry .= "<audio preload=\"none\" controls>
                                        <source type=\"$ctype\" src=\"$url\"></source>
                                        </audio>";
 
         * @return string Absolute URL
         */
        function rewrite_relative_url($url, $rel_url) {
-               if (strpos($rel_url, "magnet:") === 0) {
+               if (strpos($rel_url, ":") !== false) {
                        return $rel_url;
                } else if (strpos($rel_url, "://") !== false) {
                        return $rel_url;
                        $reg_qpart = "REGEXP";
 
                foreach ($filter["rules"] AS $rule) {
+                       $rule['reg_exp'] = str_replace('/', '\/', $rule["reg_exp"]);
                        $regexp_valid = preg_match('/' . $rule['reg_exp'] . '/',
                                $rule['reg_exp']) !== FALSE;