]> git.wh0rd.org - tt-rss.git/blobdiff - modules/backend-rpc.php
fix tag caching issues
[tt-rss.git] / modules / backend-rpc.php
index a825242c64363c7e519a09a4d63a46cfc7d47568..047558fc20e9a9e9bfaa245c2a08c8fac5e0336f 100644 (file)
 
                        $tags_str = db_escape_string($_REQUEST["tags_str"]);
                        $tags = array_unique(trim_array(split(",", $tags_str)));
-                       $tags_str = db_escape_string(join(",", $tags));
 
                        db_query($link, "BEGIN");
 
 
                        if (db_num_rows($result) == 1) {
 
+                               $tags_to_cache = array();
+
                                $int_id = db_fetch_result($result, 0, "int_id");
 
                                db_query($link, "DELETE FROM ttrss_tags WHERE 
                                                db_query($link, "INSERT INTO ttrss_tags 
                                                        (post_int_id, owner_uid, tag_name) VALUES ('$int_id', '".$_SESSION["uid"]."', '$tag')");
                                        }
+
+                                       array_push($tags_to_cache, $tag);
                                }
-                       }
 
-                       db_query($link, "UPDATE ttrss_user_entries 
-                               SET tag_cache = '$tags_str' WHERE ref_id = '$id'
-                               AND owner_uid = " . $_SESSION["uid"]);
+                               /* update tag cache */
+
+                               $tags_str = join(",", $tags_to_cache);
+
+                               db_query($link, "UPDATE ttrss_user_entries 
+                                       SET tag_cache = '$tags_str' WHERE ref_id = '$id'
+                                       AND owner_uid = " . $_SESSION["uid"]);
+                       }
 
                        db_query($link, "COMMIT");