Commit Graph

1154 Commits (f851cdf3628ba90dac4f1891eae3b1aea9261eb5)

Author SHA1 Message Date
Andrew Dolgov edefcec19d filters/edit: properly parse feed-specific legacy format filter rules 7 years ago
Andrew Dolgov ab8daa0389 use mysqli_set_charset() to set MYSQL_CHARSET 7 years ago
Andrew Dolgov 20d2195f13 rssutils: include comment count when calculating article hash 7 years ago
Andrew Dolgov 51f13e7736 get_all_labels: order by caption 7 years ago
Andrew Dolgov 5e78b0c253 do not base headlines label context submenu on feed tree labels category 7 years ago
Andrew Dolgov be61f1c45c filters dialog: do not break markup on long feed names 7 years ago
Andrew Dolgov b2d42e960b replace some usages of SELF_URL_PATH with get_self_url_prefix() 8 years ago
Andrew Dolgov 667d32fd26 remove obsolete forum plugin links
mention how to enable system plugins in the UI
8 years ago
Andrew Dolgov 7b994e4bec filters: when adding rule select all feeds by default 8 years ago
Andrew Dolgov 57a1143c9d dbupdater: fail if version file missing 8 years ago
Andrew Dolgov 02f3992a5a Revert "Revert "filters: support matching on multiple feeds/categories""
This reverts commit f5d174bda9.
8 years ago
Andrew Dolgov f5d174bda9 Revert "filters: support matching on multiple feeds/categories"
This reverts commit 0bf7e007bb.
8 years ago
Andrew Dolgov e0f51d786f Merge branch 'master' of git.fakecake.org:tt-rss 8 years ago
Andrew Dolgov 0bf7e007bb filters: support matching on multiple feeds/categories
opml: update filter export/import for new format
8 years ago
Andrew Dolgov c053b97697 pref/feeds: start user category ordering from 1
api, getFeeds: send subcategory order_id
8 years ago
Andrew Dolgov e130b283a7 db prefs: ignore cache when preference requested for specified UID (in case cached value of a different profile is stored)
prefs: show (and set) enabled plugins for default profile only
8 years ago
Andrew Dolgov 93af11cb7a update_daemon_common: do not escape feed_url twice, remove some comments and stuff 8 years ago
Andrew Dolgov 6fd0399694 tunables:
* add CACHE_MAX_DAYS as a tunable generic expiry interval for various cached files
* add some comments to tunables in functions.php
* rename _MIN_CACHE_FILE_SIZE to MIN_CACHE_FILE_SIZE
* respect MIN_CACHE_FILE_SIZE setting in a few more places where content is cached
8 years ago
Andrew Dolgov e50a647916 add HOOK_FORMAT_ARTICLE & HOOK_FORMAT_ARTICLE_CDM
Feeds::format_headlines_list: add some comments for cdm article closing tags
8 years ago
Andrew Dolgov 9e381bc202 classes/Plugin: remove dbh & host fields; set init() and about() as abstract methods. 8 years ago
Andrew Dolgov 5b6ea1ef91 remove pubsubhubbub: dead 8 years ago
Andrew Dolgov 8f0a59f34a share function: remove tt-rss prefix from page title 8 years ago
Andrew Dolgov c114a2596f move add_feed_url() to pref_feeds 8 years ago
Andrew Dolgov 4fd0790804 fix DAEMON_SLEEP_INTERVAL not being defined when used
enforce minimum 60 sec spawn/sleep interval in update processes
8 years ago
Andrew Dolgov e6c886bf66 wrap rssfuncs into rssutils class 8 years ago
Andrew Dolgov 65af3b2cbb move counter stuff to a separate class 8 years ago
Andrew Dolgov 40f4a7aa6b feeditem_common: add get_element() 8 years ago
Andrew Dolgov 7c9b5a3fe4 move label stuff to Labels class
fix some unresolved functions
8 years ago
Andrew Dolgov c2f0f24e4c move digest stuff to Digest class 8 years ago
Andrew Dolgov 0086a89740 move some label stuff to labels.php
move getfeedcategory() to Feeds
8 years ago
Andrew Dolgov 4a0da0e5bf move get_article_labels to Article 8 years ago
Andrew Dolgov 2ed0d6c433 move counter cache to a separate class
fix references to get_article_tags
8 years ago
Andrew Dolgov aeb1abedb2 move a bunch of functions into Feeds/Article namespaces
+       static function catchupArticlesById($ids, $cmode, $owner_uid = false) {
+       static function getLastArticleId() {
+       static function queryFeedHeadlines($params) {
+       static function getParentCategories($cat, $owner_uid) {
+       static function getChildCategories($cat, $owner_uid) {

move the rest of functions2.php back to functions.php as it is of more manageable size, remove the former
8 years ago
Andrew Dolgov a230bf88a9 move to Article:
+       static function purge_orphans($do_output = false) {

move to Feeds

+       static function getGlobalUnread($user_id = false) {
+       static function getCategoryTitle($cat_id) {
+       static function getLabelUnread($label_id, $owner_uid = false) {
8 years ago
Andrew Dolgov 86a8351ca2 move the following to Feeds:
+       static function catchup_feed($feed, $cat_view, $owner_uid = false, $mode = 'all', $search = false) {
+       static function getFeedArticles($feed, $is_cat = false, $unread_only = false,
+       static function subscribe_to_feed($url, $cat_id = 0,
+       static function getFeedIcon($id) {
+       static function getFeedTitle($id, $cat = false) {
+       static function getCategoryUnread($cat, $owner_uid = false) {
+       static function getCategoryChildrenUnread($cat, $owner_uid = false) {
8 years ago
Andrew Dolgov 7e5f8d9fb3 move the following to Article:
+       static function format_article_enclosures($id, $always_display_enclosures,
+       static function format_article($id, $mark_as_read = true, $zoom_mode = false, $owner_uid = false) {
+       static function get_article_tags($id, $owner_uid = 0, $tag_cache = false) {
+       static function format_tags_string($tags) {
+       static function format_article_labels($labels) {
+       static function format_article_note($id, $note, $allow_edit = true) {
+       static function get_article_enclosures($id) {
8 years ago
Andrew Dolgov 4122da0290 move getArticleFeed to Article
move print_label_select to controls
8 years ago
Andrew Dolgov e60d5b0a84 move opml-specific get_feed_category to opml.php 8 years ago
Andrew Dolgov 3517d363d3 add api test for labels, api: fix setArticleLabel assign not handled correctly 8 years ago
Andrew Dolgov 891df34637 add some basic API unit tests 8 years ago
Andrew Dolgov ea79a0e033 remove some redundant php closing tags 8 years ago
Andrew Dolgov 7b55001eee fix various issues reported by static analysis
update gitlab-ci config
8 years ago
Andrew Dolgov 3c11159776 return result codes if DB connection or --debug-feed fails 8 years ago
Andrew Dolgov 337535416f filter by search results while marking feed as read 8 years ago
Andrew Dolgov 9c3c0ace6b rename cache images option label (rip translations) 8 years ago
Andrew Dolgov 41bead9baa remove local file extensions and generalize some method names for cached media
file extensions may still be present in urls, but are ignored by the backend

MIGRATION (if you have any cached data worth keeping, not required):
in cache/images run "rename 's/\..*$//' *" i.e. strip file extensions
8 years ago
Andrew Dolgov 63f0ed3d9c cdmClicked: do not use event.target.parents to figure out if clicked on a heading 8 years ago
Andrew Dolgov 270c0a00e5 improve JS error logging with additional stuff 8 years ago
Andrew Dolgov 1bfe1d7b31 simplify error handling
* less convoluted exception dialogs
* use window.onerror for the majority of exception catching/reporting
* remove most of now useless try/catch blocks
* report stacktrace instead of manually specified error locations
8 years ago
Andrew Dolgov b835a52814 rework the way headlines menus identify calling row 8 years ago
Andrew Dolgov 5161460048 bind headlines menu to a selector to avoid remaking it unnecessarily 8 years ago
Andrew Dolgov 58210301e0 add HOOK_ENCLOSURE_ENTRY for af_zz_imgproxy 8 years ago
Jérémy DECOOL ba2853caac Prevent target='_blank' vulnerability on dynamic link 8 years ago
Andrew Dolgov 4daaf23491 allow user plugins to expose public methods out in a limited fashion 8 years ago
Andrew Dolgov 328118d12e use print_hidden() for hidden dojo form fields 8 years ago
Andrew Dolgov 38b3998bbc af_zz_imgproxy: use inline disposition, misc updates 8 years ago
Andrew Dolgov 9c7ebaa08c cached_image: remove unnecessary basename() 8 years ago
Andrew Dolgov 0442cbb6c1 image cache: send files as content-disposition: attachment; add .png suffix to image urls 8 years ago
Andrew Dolgov 24c7e4132d subscribe dialog: do not report errors via alert()
fetch_file_contents: reset all globals on start, return error message body when not using curl
subscribe_to_feed: report if cloudflare is in the error message
8 years ago
Andrew Dolgov 22387de225 preferences: set themes dropdown to default if selected theme is missing 8 years ago
Andrew Dolgov e432b8fbe2 implement cache-busting for default theme.css
night theme: small fixes
8 years ago
Andrew Dolgov cb3f877303 reference pubsubhubbub classes using their namespace 8 years ago
Andrew Dolgov ad326dbf78 unpackVisibleHeadlines: do not iterate over all RROWs all the time 8 years ago
Andrew Dolgov 967f0619c7 force ngettext() count argument type to string 8 years ago
Andrew Dolgov 84012df5cd prefs: auto expand feed tree 8 years ago
Andrew Dolgov 6b06a609af headlines toolbar: move selection links into the dropdown 8 years ago
Andrew Dolgov 6293d3717c add toggle_sidebar plugin, remove obsolete toggle button
add PluginHost::HOOK_MAIN_TOOLBAR_BUTTON
8 years ago
Andrew Dolgov 17a8e61d2a deprecate encrypted feed passwords because mcrypt is getting removed from php 7.1
1. transparent decryption for existing installs stays for the time being
2. new passwords are not going to be encrypted even if FEED_CRYPT_KEY is defined
3. added update.php --decrypt-feeds to bulk decrypt existing encrypted passwords
4. updated install to not auto-generate crypt key
5. added warning to config.php-dist
8 years ago
Andrew Dolgov 8b8568e9a3 edit tags dialog: fix height 8 years ago
Andrew Dolgov eee818c46a ttrssmailer: include phpmailer's smtp class 8 years ago
Andrew Dolgov e4071d2544 feedparser: fix syntax error 8 years ago
Andrew Dolgov 4a5490dc58 feedparser: fix normalize_encoding() not working properly for some encodings 8 years ago
Andrew Dolgov cde8272205 parser: only try to convert encoding if mbstring actually supports it 8 years ago
John Brayton f1b3b3f330 Add feed_id to subscribeToFeed response when the code is 1 or 0.
Set the API_LEVEL to 14.
8 years ago
Andrew Dolgov e54eb40a8c remove support for legacy mysql driver 8 years ago
Andrew Dolgov a005ebb693 remove classes/db/api.php (shouldn't be there) 8 years ago
Heiko Adams 2842cf6e45 Merge branch 'master' into german-translation 8 years ago
Andrew Dolgov a84fb943b4 pre-users: disallow renaming admin user 8 years ago
Andrew Dolgov 1818614949 api: fix article guid not being passed to render article hook 8 years ago
Andrew Dolgov cfc2fe50cb fix sql error when subscribing to a feed using feed archive 9 years ago
Heiko Adams 94e3a9ab44
Merge with master 9 years ago
Andrew Dolgov c9a5903bcc disable autocomplete in subscription dialog 9 years ago
Andrew Dolgov ec21abb85d update autocomplete to "new-password" 9 years ago
Andrew Dolgov fa0e0ef315 set feed editor password fields to autocomplete=off 9 years ago
Andrew Dolgov aa4ab8e0bc remove .htaccess files 9 years ago
Andrew Dolgov 2f1a29d9c8 generate_syndicated_feed: sanitize content excerpt 9 years ago
Andrew Dolgov 977cea1438 actually check for failures properly in the dbupdater 9 years ago
Andrew Dolgov 79c891a8b7 set smallish timeout on update check, exclude update checking on initial load 9 years ago
Andrew Dolgov b6b5554db4 normalize some html5 custom attributes 9 years ago
Andrew Dolgov 2d052e42b5 getLoadedArticleIds: consider visible rows only
catchupFeedInGroup: hide articles when catching up, with caveats
9 years ago
Andrew Dolgov 9232283815 pass feed information to hook_article_export_feed 9 years ago
Andrew Dolgov 399678a14e add PluginHost.HOOK_ARTICLE_EXPORT_FEED 9 years ago
Andrew Dolgov 4f100ece19 pref_filters: sort rules by reg_exp when displaying index 9 years ago
Andrew Dolgov cc43e19b44 error handler: do not log last query, truncate error message to a smaller length 9 years ago
Andrew Dolgov 3261dbfa21 generate_syndicated_feed: pass article id to sanitize() 9 years ago
Andrew Dolgov d9de136c39 inline feed update: set feed as needing update if open_basedir is set + plugins need curl 9 years ago
Andrew Dolgov 67f3e3f942 pref-labels: remove obsolete searching code 9 years ago
Andrew Dolgov 9def554082 pref-feeds: allow searching by feed_url 9 years ago
Andrew Dolgov a5556c2471 fix item_id not being properly escaped in pref_feeds::process_category_order() (possible sql injection) 9 years ago
Andrew Dolgov 7af2e79578 create_published_article: only use readability if enabled in the plugin 9 years ago
Andrew Dolgov 666cd33360 enable support for readability (if af_readability is enabled) in shareanything bookmarklet 9 years ago
Andrew Dolgov 71b75bb7fa fix multiple issues with archived feeds 9 years ago
Andrew Dolgov 41245888f1 only stop inline feed updates with open_basedir enabled if there are any plugins that require CURL enabled
add plugin->flags() returning array with additional plugin information, currently only CURL requirement (optional)
9 years ago
Andrew Dolgov 29c92d7b08 prevent frontend updating of feeds on view if open_basedir is set to prevent plugins potentially not working correctly (i.e. if backend system has open_basedir disabled) 9 years ago
Andrew Dolgov 7d1e15c396 parser: properly support tag subtrees instead of text content for article content 9 years ago
Andrew Dolgov d2bb392bae Revert "parser: use node->c14n() instead of expecting html in nodeValue"
This reverts commit 1383514ad9.
9 years ago
Andrew Dolgov 1383514ad9 parser: use node->c14n() instead of expecting html in nodeValue 9 years ago
Andrew Dolgov 312742db6e updates: auto-disable CURL if open_basedir is enabled, notify possible issues w/ plugins 9 years ago
Andrew Dolgov 5bdcb8fd78 remove option ALLOW_DUPLICATE_POSTS as confusing/useless 9 years ago
Andrew Dolgov 9b736a20b3 do not automatically call cleanup_tags() in housekeeping tasks 9 years ago
Andrew Dolgov f61f2a2699 format_headlines_list: fix pg_num_rows() called incorrectly when firstid check failed 9 years ago
Andrew Dolgov b8619f8db0 store formatted backtrace to sql log 9 years ago
Andrew Dolgov 1bd552ee31 compat patches for php7 9 years ago
Andrew Dolgov 475d762872 logger: record last query before logged error 9 years ago
Andrew Dolgov 154f14d01b filters: do not strip_tags() on regexps 9 years ago
JustAMacUser 73c77ab0a5 Add optional (default: true), boolean "sanitize" parameter to API::getArticle() method. 9 years ago
Andrew Dolgov 19e47ad60b queryFeedHeadlines: don't check first_id when sorting by oldest first 9 years ago
Andrew Dolgov 583f163f40 don't init plugins when loading everything to make a list, duh 9 years ago
Andrew Dolgov 86d07d367c rpc, setpref: properly save settings to active profile 9 years ago
Andrew Dolgov 77e8100669 add date suffixes to opml & import_export generated files 9 years ago
Andrew Dolgov 9a35ed6709 disable filter test result highlighting for the time being 9 years ago
Andrew Dolgov 94b8ce6cec queryfeedheadlines: remove disable_offsets hack 9 years ago
Andrew Dolgov dbeef0ca67 filter preview: remove unnecessary checkbox 9 years ago
Andrew Dolgov f48f292d2b tweak filter preview layout a bit; allow previewing matched articles in a popup 9 years ago
Andrew Dolgov 261226a3a5 mostly implement async filter test dialog 9 years ago
Andrew Dolgov a007c18dff wip: filter async testing 9 years ago
Andrew Dolgov e17079dcef make disabled filter rules easier to discern
show if filter set match_any_rule on the overview
9 years ago
Andrew Dolgov 73dfda1da6 various minor style updates, add danger buttons 9 years ago
Andrew Dolgov dcbe36b2a2 fix some remaining old-style viewfeed() calls 9 years ago
Andrew Dolgov d98779972d tabbed feed editor 9 years ago
Andrew Dolgov bf9cc9ad95 combine user edit & user details 9 years ago
Andrew Dolgov f232aa5a34 remove num_articles from main pref_users query 9 years ago
Andrew Dolgov f9c1f8b0d4 pref-feeds: check for inactive feeds asynchronously 9 years ago
Andrew Dolgov 1edff0d439 user manager: show stored feeds/articles 9 years ago
Andrew Dolgov b028da0a2d display lack of filter plugin actions properly 9 years ago
Andrew Dolgov be2cfc1fff Merge branch 'master' of git.fakecake.org:tt-rss 9 years ago
Andrew Dolgov 90da4ada66 move attachments back to cdm content 9 years ago
Andrew Dolgov b87744534a add plugin-based filter actions (see example plugin in attic)
bump schema
9 years ago
Andrew Dolgov ad9928a5cb adjust cpu_tuple to 0.5 9 years ago
Andrew Dolgov 981059fd1f postgresql: adjust cpu_tuple (experimental) 9 years ago
Andrew Dolgov 314956d440 filter test dialog fixes for filters w/ many rules 9 years ago
Andrew Dolgov fb8a032a6b minor textarea fixes 9 years ago
Andrew Dolgov 6901ec6659 fix subtoolbar links lack of margin 9 years ago
Andrew Dolgov e79e274fc8 add styles for several other dijit elements 9 years ago
Andrew Dolgov bc20cb9fad move attachment dropdown to cdmFooter, use table styles for cdmFooter 9 years ago
Andrew Dolgov 6810a1de42 use dijit form widget for attachments dropdown 9 years ago
Andrew Dolgov 91837f0a2a update site_url (and title if needed) when changing feed_url in feed editor 9 years ago
Andrew Dolgov 0bd172cd6a experimental: if using adaptive/unread mode w/ auto catchup don't calculate offsets because we're only interested in top $limit headlines anyway 9 years ago
Andrew Dolgov 60e680599d allow selecting stemming language in search dialog 9 years ago
Andrew Dolgov df659891ac implement per-feed stemming language setting 9 years ago
Andrew Dolgov 3ceb893f66 add one catchall function to make uniqids/keyhashes/etc used by tt-rss 9 years ago
Andrew Dolgov 0d0cb8fe1e fix missing cdmFeedTitle 10 years ago
Andrew Dolgov 33c4bd8968 fix error feed (i.e. when requested feed no longer exists) not display properly 10 years ago
Andrew Dolgov f17069960c roll back separate headline transport 10 years ago
Andrew Dolgov 6b954c0a83 fix dashboard feed 10 years ago
Andrew Dolgov 9f5eca992b headlines: fix whitebox reply not returned in an updated format 10 years ago
Andrew Dolgov 9638ec51b6 minor filter test dialog fixes 10 years ago
Andrew Dolgov 077004e470 feed test layout updates 10 years ago
Andrew Dolgov 4f9a3c0e0f Merge branch 'master' of git.fakecake.org:tt-rss
Conflicts:
	classes/pref/filters.php
10 years ago
Andrew Dolgov c939dfc396 rework filter preview to use native regexp implementation 10 years ago
Andrew Dolgov ac4c1383ae bring cdmFeedTitle style in line with the rest of the UI
send headline rows as separate JSON objects
10 years ago
Andrew Dolgov 48fefe2f6b fixes for first_id stuff 10 years ago
Andrew Dolgov ec57104d6e apparently it's a bad idea to do is_resource() on a mysqli result 10 years ago
Andrew Dolgov 96ac72bc12 api: getHeadlines: cast feed_it to int if needed 10 years ago
Andrew Dolgov b0ce3d33c3 api: initialize headlines header 10 years ago
Andrew Dolgov 491f69c7e3 bump api level 10 years ago
Andrew Dolgov 5c784e701c api: add top id stuff, optionally return header w/ status information in getHeadlines (currently only top_id_changed) 10 years ago
Andrew Dolgov 3444020100 report top id changed in headlines buffer 10 years ago
Andrew Dolgov f5a0fb8b64 queryFeedHeadlines: move to array-based arguments, optionally check if first element changed when paginating 10 years ago
Andrew Dolgov 9090b874ab simplify search, remove search_mode as useless
remove dialog to select by tags, simplify browsing by tag query
10 years ago
Andrew Dolgov 5956f312b7 add a bit more visible separate infobox for password change results 10 years ago
Andrew Dolgov b6714c77d2 limit smart_date_time stuff to headlines only 10 years ago
Andrew Dolgov 5a45821ec9 prevent event propagation when clicking on CDM article footer 10 years ago
Andrew Dolgov a72cd54ce1 bayes: properly reset score when going good -> ugly
article: add helper to refresh article score pic, properly set scorepic title
10 years ago
Andrew Dolgov 5914f31981 pluginhost: mention that update task & housekeeping hooks are for global plugins only 10 years ago
Andrew Dolgov 86b05f8661 better feed debugger ui for f D 10 years ago
Andrew Dolgov 415a3b50c9 fix some minor typos and stuff 10 years ago
Andrew Dolgov ca5d39e866 pluginhost: assume plugins.local exists 10 years ago
Andrew Dolgov b9634eb8b8 support loading themes from themes.local 10 years ago
Andrew Dolgov 7c0a2ab202 pluginhost: allow loading user plugins from plugins.local 10 years ago
Andrew Dolgov 5078ebcc6f Merge pull request #456 from andersk/disable-feed-browser
Make _DISABLE_FEED_BROWSER also disable the updateFeedBrowser RPC
10 years ago
Anders Kaseorg 0e653f751e Make _DISABLE_FEED_BROWSER also disable the updateFeedBrowser RPC
The undocumented _DISABLE_FEED_BROWSER option added in commit
c39befacb2 turns off the UI for looking
at which feeds other users are subscribed to, but it did not prevent
you from manually constructing an RPC call to get the same data.  This
was a privacy risk for those who consider _DISABLE_FEED_BROWSER
important.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
10 years ago
Andrew Dolgov 945346cbff add HOOK_RENDER_ENCLOSURE & af_youtube_embed plugin 10 years ago
Andrew Dolgov e55a5ec601 atom: consider link rel=alternate in feed element for site urls 10 years ago
Andrew Dolgov 27f7b59353 add a wrapper for standard error codes returned by backend, also add explanation to the error object if possible 10 years ago
Andrew Dolgov f75e7c6446 rename url_to_tag_uri to a more relevant name 10 years ago
Andrew Dolgov 4b7391de7b generated feed: use tag: instead of the public.php URL as an entry ID; set enclosure length to 1 if unknown 10 years ago
Matthieu Sarter 469d9ad16a Added a "title" attribute in the link to an article.
Added a "title" attribute in the link to an article.
Makes TTRSS more usable on a small windows, allowing to see the complete title of an article in the tooltip, without opening the article.
10 years ago
Andrew Dolgov 0c6f7b314a remove image.php; put cached image endpoint to public.php 10 years ago
Andrew Dolgov e6c826fa2f remove AUTO_ASSIGN_LABELS (confusing, idiots keep enable it and complain of the results) 10 years ago
Lukas Hybner 4834ad5639 fix parse atom feed 10 years ago
Andrew Dolgov ed775e4e8d remove obsolete code related to version checking and tarball updater plugin 10 years ago
Andrew Dolgov 206326c219 feedparser: xpath doesn't properly query for title element if there's a default namespace so let's add a separate ugly hack for rdf:RDF feeds, thanks for that xml dipshits 10 years ago
zaikos 2b4853f515 Reverts most of be60340. Implements a simplier solution using XPath to get the proper title tag from a feed item. 10 years ago
zaikos be60340c29 Made FeedItem_RSS::get_title() more aggresive in finding an article title. 10 years ago
Andrew Dolgov 3457ce7c59 temporarily enable entity loader when importing opml because idk 10 years ago
Andrew Dolgov f6cbe9a5a0 require version information in all additional themes 10 years ago
Andrew Dolgov 3194a70a03 api: getHeadlines: add configurable excerpt_length (bump api version) 10 years ago
Andrew Dolgov 9997b38e3e api: allow requesting headlines as if client supports iframe sandboxing 10 years ago
Andrew Dolgov f71a669b7d api: handle uncached labels the way main headlines function does it 10 years ago