Too Much TV: Your TV Talking Points For Thursday, April 4th, 2024

Here's everything you need to know about the world of television for Thursday, April 4th, 2024:

IS THERE A PLACE FOR SOCIAL CONTENT DISCOVERY ON SVODs?
I've written a number of times in the past about various schemes streaming services have experimented with in hopes of creating a social component to their platform. The earliest effort I know of was maybe 7 years or so ago at the entertainment-centric vMYPD Philo, which created a never rolled-out social framework that created a Spotify-like profile setup.

I've reported about a couple of other efforts by other streamers in the years since, and I recently had the opportunity to get a tour of a new effort. The identity of the streamer is embargoed for now, but I can tell you it's one of the large SVODs.

The centerpiece of this effort is driven by a subscriber profile identity that is public, but not identifiable. In other words, my public profile would have some username such as "AYSRick." But there would be no private messages, no way for one user to contact another or determine their identity without it being shared willingly. For instance, I could tell people in this newsletter about my profile name, but otherwise, it wouldn't be identifiable.

So why have a public profile at all? Based on the sandbox version of the service I saw, one feature that is really useful is that it allows for social-driven content discovery. Subscribers could create a feed of titles they have watched or that they recommend, which could be shared several different ways. One way is via email, with the service creating a personalized weekly email that listed recommended titles aggregated from profiles they follow. Charts can be created on the fly along the lines of "Top Movies From Accounts You Follow." All of this is an effort to sharpen the content discovery process. And in theory, subscribers would be more likely to follow profiles that match their overall tastes.

And there has been talk about allowing users to create a list of just watched or recommended titles that could be subscribed to and would appear in the UI as a horizontal navigation row. Or one scheme an engineer mentioned was allowing subscribers to publish their favorites list publicly on other sites, in a similar fashion to the way that Spotify users can embed playlists outside Spotify.

So why hasn't a streaming service rolled out this idea? In the case of Philo, they decided that a social component would require a huge subscriber base to work and they didn't have the reach. 

In the case of the service that just previewed this idea to me, there are two primary issues. The first is that no one really knows if would be workable on a widescale basis and whether users would find it helpful. In fact, there is one train of thought that rolling out an idea like this would increase subscriber churn, as subscribers who find the idea distracting bail from the service.

But perhaps the biggest issue is cost. Rolling out this idea would require a complete top-to-bottom rebuild of the service's tech stack. And that is a massive gamble to try on an idea that is completely untested in the wild. It would take a supremely confident executive team to make the decision to roll out features no other competitor can match.

So why did I get a sneak peek? I don't know for sure, but the service I looked at is maybe two years out from its next rebuild. And while the team working on this idea is passionate, I get the impression they are nowhere near at the point where higher ups are convinced that including it in the upcoming rebuild is a great idea.

This newsletter has a readership that includes a number of top executives at the various streamers. And I suspect the hope is that by giving me an early look (which I suspect might not be entirely authorized), the conversation about the idea will help their cause.

I'm not sure if that will happen, but it is a fascinating idea. I honestly am not sure if it would engage subscribers, but it would be fun to find out.

ROKU FILES PATENT THAT WOULD LET IT RUN ADS ON OTHER PLATFORMS VIA THE HDMI CONNECTION
One of the best ways to get a sense of where the industry may be headed is to watch the patents industry leaders are filing. The ideas may never be rolled out commercially, but the fact the idea has progressed to the patent stage gives you a sense of some possible future products.

In his Lowpass newsletter, Janko Roettgers reports that Roku is exploring ways to show consumers ads on its TVs even when they are not using its streaming platform by injecting ads into the video feeds of third-party devices connected to its TVs:

This way, when an owner of a Roku TV takes a short break from playing a game on their Xbox, or streaming something on an Apple TV device connected to the TV set, Roku would use that break to show ads. Roku engineers have even explored ways to figure out what the consumer is doing with their TV-connected device in order to display relevant advertising.

  • One of those approaches is pretty straightforward: If a consumer watches something on their Apple TV and then presses the pause button, a Roku TV set could use either audio or video-based content recognition technologies (known in the industry as ACR) to identify what’s being watched, match the current scene to a database and extract relevant information to pair an ad with it.

  • From the patent application: “The fingerprint and/or watermark may correspond to a certain movie title, famous actor, and movie genre. The metadata may correspond to a champagne bottle and mountain scenery. The relevant ads may include the famous actor, a type of champagne, vacation opportunities that include the mountain scenery recognized.”

  • But what if someone plays a game, and there’s no database to match it to? Even knowing that a consumer is a gamer, and is using a certain game console, may be valuable to Roku.

  • The patent application envisions using the type of control signals game consoles send to TVs to invoke low latency mode to differentiate gameplay from video viewing, and then for instance recommend different games, or even a newer game console.

While I don't doubt Roku could do this technically, it just seems like a bad idea. There are so many things that could go wrong, so many ways this could negatively impact the usability of their TVs.

TWEET OF THE DAY



ODDS AND SODS
* Thanks to a licensing deal with Sony Television, all nine seasons of the Kevin James 1998-2007 CBS comedy King Of Queens is now available on Paramount+. The first three seasons will also be available on Pluto TV. The deal also includes linear TV rights for several of the Paramount Global networks.

* Lifetime will premiere the Theresa Caputo: Raising Spirits companion series, Theresa Caputo: Beyond the Readings on Thursday, April 18th.

WHAT'S NEW TONIGHT AND TOMORROW

THURSDAY, APRIL 4TH:
* A Condition Called Love Series Premiere (Crunchyroll)
* An Archdemon's Dilemma: How To Love Your Elf Bride Series Premiere (Crunchyroll)
* Crooks Series Premiere (Netflix)
* Hop Series Premiere (Max)
* Invincible Season Two Finale (Prime Video)
* I Woke Up A Vampire Season Two Premiere (Netflix)
* Laid Back Camp (Netflix)
* Musica (Prime Video)
* Ripley Series Premiere (Netflix)
* Son Of A Critch Season Three Finale (The CW)
* Star Trek: Discovery Season Premiere (Paramount)
* The Influencer (ALLBLK)
* The Tearsmith (Netflix)
* Tokyo Vice Season Two Finale (Max)
* Wind Breaker Series Premiere (Crunchyroll)

FRIDAY, APRIL 5TH:
* Alex Rider Season Three Premiere (Freevee)
* Astro Note Series Premiere (Crunchyroll)
* Baghead (Shudder)
* Dinosaur Series Premiere (Hulu)
* Festival Of The Living Dead (Roku Channel)
* Girls State (Apple TV+)
* How To Date Billy Walsh (Prime Video)
* Judy Justice Spring Finale (Freevee)
* Mary & George (Starz)
* Monsters At Work Season Two Premiere (Disney Channel)
* Mysteries Of The Abandoned: Hidden America Season Premiere (Discovery)
* Parasyte: The Grey Series Premiere (Netflix) - [first look video]
* Scoop (Netflix)
* Sugar Series Premiere (Apple TV+)
* The Antisocial Network: Memes To Mayhem (Netflix)
* The Irregular At Magic High School (Crunchyroll)
* Yannick (Mubi)

SEE YOU ON FRIDAY!

9.064MBMemory Usage147msRequest Duration
Joomla! Version4.4.4
PHP Version8.1.32
Identityguest
Response200
Templateja_blockk
Database
Server
mysql
Version
8.0.39-cll-lve
Collation
utf8mb4_unicode_ci
Conn Collation
utf8mb4_0900_ai_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:48 [ "PATH" => "/usr/local/bin:/bin:/usr/bin" "HTTP_ACCEPT" => "text/html,application/xhtm...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1746683769 "last" => 1746683769...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (528.66KB) (5.33ms)
  • afterInitialise (1.27MB) (31.25ms)
  • afterRoute (227.06KB) (6.88ms)
  • beforeRenderComponent com_content (38.63KB) (897μs)
  • Before Access::preloadComponents (all components) (34.7KB) (746μs)
  • After Access::preloadComponents (all components) (109.3KB) (760μs)
  • Before Access::preloadPermissions (com_content) (3.91KB) (16μs)
  • After Access::preloadPermissions (com_content) (2.93MB) (8.01ms)
  • Before Access::getAssetRules (id:2377 name:com_content.article.1548) (258.8KB) (150μs)
  • After Access::getAssetRules (id:2377 name:com_content.article.1548) (8.47KB) (156μs)
  • beforeRenderRawModule mod_related_items (Read More) (849.41KB) (29.35ms)
  • Before Access::getAssetRules (id:8 name:com_content) (81.08KB) (4.66ms)
  • After Access::getAssetRules (id:8 name:com_content) (1.59KB) (19μs)
  • afterRenderRawModule mod_related_items (Read More) (13.55KB) (5.72ms)
  • beforeRenderModule mod_related_items (Read More) (704B) (10μs)
  • afterRenderModule mod_related_items (Read More) (3.82KB) (217μs)
  • afterRenderComponent com_content (43.25KB) (92μs)
  • afterDispatch (3.53KB) (264μs)
  • beforeRenderRawModule mod_menu (Newsletters) (355.27KB) (26.28ms)
  • afterRenderRawModule mod_menu (Newsletters) (14.71KB) (764μs)
  • beforeRenderModule mod_menu (Newsletters) (720B) (6μs)
  • afterRenderModule mod_menu (Newsletters) (1.89KB) (246μs)
  • beforeRenderRawModule mod_menu (Other Content) (712B) (52μs)
  • afterRenderRawModule mod_menu (Other Content) (944B) (165μs)
  • beforeRenderModule mod_menu (Other Content) (720B) (6μs)
  • afterRenderModule mod_menu (Other Content) (1.3KB) (120μs)
  • beforeRenderRawModule mod_finder (Head Search) (1.94KB) (94μs)
  • afterRenderRawModule mod_finder (Head Search) (66.49KB) (4.5ms)
  • beforeRenderModule mod_finder (Head Search) (720B) (7μs)
  • afterRenderModule mod_finder (Head Search) (3.3KB) (232μs)
  • beforeRenderRawModule mod_custom ([Offcanvas] Custom banner) (864B) (79μs)
  • afterRenderRawModule mod_custom ([Offcanvas] Custom banner) (3.88KB) (386μs)
  • beforeRenderModule mod_custom ([Offcanvas] Custom banner) (736B) (6μs)
  • afterRenderModule mod_custom ([Offcanvas] Custom banner) (4.82KB) (130μs)
  • beforeRenderRawModule mod_custom ([Offcanvas] Social media) (24B) (28μs)
  • afterRenderRawModule mod_custom ([Offcanvas] Social media) (1.05KB) (110μs)
  • beforeRenderModule mod_custom ([Offcanvas] Social media) (736B) (5μs)
  • afterRenderModule mod_custom ([Offcanvas] Social media) (2.93KB) (121μs)
  • beforeRenderRawModule mod_menu (Off Canvas) (2.23KB) (29μs)
  • afterRenderRawModule mod_menu (Off Canvas) (944B) (177μs)
  • beforeRenderModule mod_menu (Off Canvas) (720B) (6μs)
  • afterRenderModule mod_menu (Off Canvas) (1.28KB) (118μs)
  • beforeRenderRawModule mod_menu (magazine-menu-3) (55.45KB) (1.43ms)
  • afterRenderRawModule mod_menu (magazine-menu-3) (116.6KB) (3.6ms)
  • beforeRenderModule mod_menu (magazine-menu-3) (720B) (6μs)
  • afterRenderModule mod_menu (magazine-menu-3) (6.28KB) (119μs)
  • afterRender (681.13KB) (10.42ms)
  • 1 x afterInitialise (1.27MB) (21.24%)
    31.25ms
    1 x beforeRenderRawModule mod_related_items (Read More) (849.41KB) (19.95%)
    29.35ms
    1 x beforeRenderRawModule mod_menu (Newsletters) (355.27KB) (17.87%)
    26.28ms
    1 x afterRender (681.13KB) (7.08%)
    10.42ms
    1 x After Access::preloadPermissions (com_content) (2.93MB) (5.44%)
    8.01ms
    1 x afterRoute (227.06KB) (4.67%)
    6.88ms
    1 x afterRenderRawModule mod_related_items (Read More) (13.55KB) (3.89%)
    5.72ms
    1 x afterLoad (528.66KB) (3.62%)
    5.33ms
    1 x Before Access::getAssetRules (id:8 name:com_content) (81.08KB) (3.17%)
    4.66ms
    1 x afterRenderRawModule mod_finder (Head Search) (66.49KB) (3.06%)
    4.50ms
    1 x afterRenderRawModule mod_menu (magazine-menu-3) (116.6KB) (2.45%)
    3.60ms
    1 x beforeRenderRawModule mod_menu (magazine-menu-3) (55.45KB) (0.97%)
    1.43ms
    1 x beforeRenderComponent com_content (38.63KB) (0.61%)
    897μs
    1 x afterRenderRawModule mod_menu (Newsletters) (14.71KB) (0.52%)
    764μs
    1 x After Access::preloadComponents (all components) (109.3KB) (0.52%)
    760μs
    1 x Before Access::preloadComponents (all components) (34.7KB) (0.51%)
    746μs
    1 x afterRenderRawModule mod_custom ([Offcanvas] Custom banner) (3.88KB) (0.26%)
    386μs
    1 x afterDispatch (3.53KB) (0.18%)
    264μs
    1 x afterRenderModule mod_menu (Newsletters) (1.89KB) (0.17%)
    246μs
    1 x afterRenderModule mod_finder (Head Search) (3.3KB) (0.16%)
    232μs
    1 x afterRenderModule mod_related_items (Read More) (3.82KB) (0.15%)
    217μs
    1 x afterRenderRawModule mod_menu (Off Canvas) (944B) (0.12%)
    177μs
    1 x afterRenderRawModule mod_menu (Other Content) (944B) (0.11%)
    165μs
    1 x After Access::getAssetRules (id:2377 name:com_content.article.1548) (8.47KB) (0.11%)
    156μs
    1 x Before Access::getAssetRules (id:2377 name:com_content.article.1548) (258.8KB) (0.1%)
    150μs
    1 x afterRenderModule mod_custom ([Offcanvas] Custom banner) (4.82KB) (0.09%)
    130μs
    1 x afterRenderModule mod_custom ([Offcanvas] Social media) (2.93KB) (0.08%)
    121μs
    1 x afterRenderModule mod_menu (Other Content) (1.3KB) (0.08%)
    120μs
    1 x afterRenderModule mod_menu (magazine-menu-3) (6.28KB) (0.08%)
    119μs
    1 x afterRenderModule mod_menu (Off Canvas) (1.28KB) (0.08%)
    118μs
    1 x afterRenderRawModule mod_custom ([Offcanvas] Social media) (1.05KB) (0.07%)
    110μs
    1 x beforeRenderRawModule mod_finder (Head Search) (1.94KB) (0.06%)
    94μs
    1 x afterRenderComponent com_content (43.25KB) (0.06%)
    92μs
    1 x beforeRenderRawModule mod_custom ([Offcanvas] Custom banner) (864B) (0.05%)
    79μs
    1 x beforeRenderRawModule mod_menu (Other Content) (712B) (0.04%)
    52μs
    1 x beforeRenderRawModule mod_menu (Off Canvas) (2.23KB) (0.02%)
    29μs
    1 x beforeRenderRawModule mod_custom ([Offcanvas] Social media) (24B) (0.02%)
    28μs
    1 x After Access::getAssetRules (id:8 name:com_content) (1.59KB) (0.01%)
    19μs
    1 x Before Access::preloadPermissions (com_content) (3.91KB) (0.01%)
    16μs
    1 x beforeRenderModule mod_related_items (Read More) (704B) (0.01%)
    10μs
    1 x beforeRenderModule mod_finder (Head Search) (720B) (0%)
    7μs
    1 x beforeRenderModule mod_menu (Off Canvas) (720B) (0%)
    6μs
    1 x beforeRenderModule mod_menu (Newsletters) (720B) (0%)
    6μs
    1 x beforeRenderModule mod_menu (Other Content) (720B) (0%)
    6μs
    1 x beforeRenderModule mod_custom ([Offcanvas] Custom banner) (736B) (0%)
    6μs
    1 x beforeRenderModule mod_menu (magazine-menu-3) (720B) (0%)
    6μs
    1 x beforeRenderModule mod_custom ([Offcanvas] Social media) (736B) (0%)
    5μs
48 statements were executed, 3 of which were duplicates, 45 unique38.89ms570.05KB
  • SELECT @@SESSION.sql_mode;67μs1.57KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `tvlfg_session` WHERE `session_id` = ?182μs1.61KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `tvlfg_session` WHERE `session_id` = :session_id LIMIT 1102μs1.61KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `tvlfg_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)767μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `tvlfg_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1487μs2.23KB/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `tvlfg_viewlevels`327μs976B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `tvlfg_usergroups` AS `a` LEFT JOIN `tvlfg_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest237μs1.64KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `tvlfg_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2) ORDER BY `ordering`716μs3.8KBParams/libraries/src/Plugin/PluginHelper.php:294Copy
  • UPDATE tvlfg_extensions SET enabled=1 WHERE `type`='plugin' AND `element`='jacontenttype' AND `folder`='ajax'9.72ms1.3KB/plugins/system/jacontenttype/jacontenttype.php:62Copy
  • SELECT * FROM `tvlfg_languages` WHERE `published` = 1 ORDER BY `ordering` ASC192μs2.17KB/libraries/src/Language/LanguageHelper.php:142Copy
  • SELECT * FROM tvlfg_menu WHERE alias ='latest-news' AND published=1216μs4.09KB/plugins/system/t4/src/t4/MVC/Router/T4.php:352Copy
  • SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component` FROM `tvlfg_menu` AS `m` LEFT JOIN `tvlfg_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE ( (`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2) ORDER BY `m`.`lft`464μs20.92KBParams/libraries/src/Menu/SiteMenu.php:166Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `tvlfg_categories` AS `s` INNER JOIN `tvlfg_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`333μs5.14KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `tvlfg_template_styles` AS `s` LEFT JOIN `tvlfg_extensions` AS `e` ON `e`.`element` = `s`.`template` AND `e`.`type` = 'template' AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 0 AND `e`.`enabled` = 1213μs1.16KB/administrator/components/com_templates/src/Model/StyleModel.php:773Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `tvlfg_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39)458μs7.75KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `tvlfg_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 03.46ms229.8KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `tvlfg_content`1.47ms4.89KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `tvlfg_content` SET `hits` = (`hits` + 1) WHERE `id` = '1548'898μs48B/libraries/src/Table/Table.php:1325Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `tvlfg_content` AS `a` INNER JOIN `tvlfg_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `tvlfg_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `tvlfg_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `tvlfg_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `tvlfg_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)693μs24.63KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `tvlfg_categories` AS `s` INNER JOIN `tvlfg_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`401μs5.19KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `tvlfg_contentitem_tag_map` AS `m` INNER JOIN `tvlfg_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)1.64ms5.25KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `tvlfg_categories` AS `s` INNER JOIN `tvlfg_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`396μs5.19KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM tvlfg_fields AS a LEFT JOIN `tvlfg_languages` AS l ON l.lang_code = a.language LEFT JOIN tvlfg_users AS uc ON uc.id=a.checked_out LEFT JOIN tvlfg_viewlevels AS ag ON ag.id = a.access LEFT JOIN tvlfg_users AS ua ON ua.id = a.created_user_id LEFT JOIN tvlfg_fields_groups AS g ON g.id = a.group_id LEFT JOIN `tvlfg_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4)) AND `a`.`access` IN (:preparedArray5,:preparedArray6)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray7,:preparedArray8)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC379μs6.06KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`catid`,`a`.`language`, CASE WHEN CHAR_LENGTH(`a`.`alias`) != 0 THEN CONCAT_WS(':', `a`.`id`, `a`.`alias`) ELSE a.id END AS `slug`, CASE WHEN CHAR_LENGTH(`cc`.`alias`) != 0 THEN CONCAT_WS(':', `cc`.`id`, `cc`.`alias`) ELSE cc.id END AS `catslug` FROM `tvlfg_content` AS `a` LEFT JOIN `tvlfg_categories` AS `cc` ON `cc`.`id` = `a`.`catid` WHERE `a`.`catid` = :catid AND `a`.`state` = :state AND `a`.`access` IN (:preparedArray1,:preparedArray2) AND (`publish_up` IS NULL OR `publish_up` <= :nowDate1) AND (`publish_down` IS NULL OR `publish_down` >= :nowDate2) ORDER BY CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END DESC2.16ms58.03KBParams/plugins/content/pagenavigation/src/Extension/PageNavigation.php:188Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `tvlfg_categories` AS `s` INNER JOIN `tvlfg_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`463μs5.19KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT u.id, u.name, u.username, u.params FROM tvlfg_users AS u LEFT JOIN tvlfg_user_usergroup_map AS g ON g.user_id = u.id WHERE u.id = '51' GROUP BY u.id138μs1KB/plugins/system/t4/src/t4/MVC/Model/AuthorModel.php:279Copy
  • SELECT enabled FROM tvlfg_extensions WHERE `type` = 'plugin' AND `element` = 'profile'139μs856B/plugins/system/t4/src/t4/MVC/Model/AuthorModel.php:467Copy
  • SELECT profile_key, profile_value FROM tvlfg_user_profiles WHERE user_id = 51 AND profile_key LIKE 'profile.%' ORDER BY ordering147μs1.09KB/plugins/system/t4/src/t4/MVC/Model/AuthorModel.php:420Copy
  • SHOW FULL COLUMNS FROM `tvlfg_users`1.17ms2.2KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • SELECT * FROM `tvlfg_users` WHERE `id` = :userid212μs4.41KBParams/libraries/src/Table/User.php:104Copy
  • SELECT `g`.`id`,`g`.`title` FROM `tvlfg_usergroups` AS `g` INNER JOIN `tvlfg_user_usergroup_map` AS `m` ON `m`.`group_id` = `g`.`id` WHERE `m`.`user_id` = :muserid202μs1.7KBParams/libraries/src/Table/User.php:132Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM tvlfg_fields AS a LEFT JOIN `tvlfg_languages` AS l ON l.lang_code = a.language LEFT JOIN tvlfg_users AS uc ON uc.id=a.checked_out LEFT JOIN tvlfg_viewlevels AS ag ON ag.id = a.access LEFT JOIN tvlfg_users AS ua ON ua.id = a.created_user_id LEFT JOIN tvlfg_fields_groups AS g ON g.id = a.group_id WHERE ( (`a`.`context` = :context AND `a`.`access` IN (:preparedArray1,:preparedArray2)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray3,:preparedArray4)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC361μs5.31KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `name` FROM `tvlfg_users` WHERE id = '51'98μs11.84KB/plugins/system/t4/src/t4/MVC/Router/Content/Router.php:66Copy
  • SELECT username FROM tvlfg_users WHERE id=51174μs856B/plugins/system/t4/src/t4/MVC/Router/T4.php:288Copy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `tvlfg_modules` AS `m` LEFT JOIN `tvlfg_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `tvlfg_extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2)) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering`822μs2.38KBParams/libraries/src/Cache/Controller/CallbackController.php:51Copy
  • SELECT `metakey` FROM `tvlfg_content` WHERE `id` = :id192μs1.63KBParams/modules/mod_related_items/src/Helper/RelatedItemsHelper.php:88Copy
  • SELECT `a`.`id` FROM `tvlfg_content` AS `a` WHERE ( ( (`a`.`id` != :id AND `a`.`state` = 1 AND `a`.`access` IN (:preparedArray1,:preparedArray2)) AND (`a`.`metakey` LIKE :preparedArray3 OR `a`.`metakey` LIKE :preparedArray4)) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :nowDate1)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :nowDate2) LIMIT 52.41ms1.85KBParams/modules/mod_related_items/src/Helper/RelatedItemsHelper.php:152Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END AS `publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`metadata`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`featured`,`a`.`language`,LENGTH(`a`.`fulltext`) AS `readmore`,`a`.`ordering`,`fp`.`featured_up`,`fp`.`featured_down`,CASE WHEN `c`.`published` = 2 AND `a`.`state` > 0 THEN 2 WHEN `c`.`published` != 1 THEN 0 ELSE `a`.`state` END AS `state`,`c`.`title` AS `category_title`,`c`.`path` AS `category_route`,`c`.`access` AS `category_access`,`c`.`alias` AS `category_alias`,`c`.`language` AS `category_language`,`c`.`published`,`c`.`published` AS `parents_published`,`c`.`lft`,CASE WHEN `a`.`created_by_alias` > ' ' THEN `a`.`created_by_alias` ELSE `ua`.`name` END AS `author`,`ua`.`email` AS `author_email`,`uam`.`name` AS `modified_by_name`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language` FROM `tvlfg_content` AS `a` LEFT JOIN `tvlfg_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `tvlfg_users` AS `ua` ON `ua`.`id` = `a`.`created_by` LEFT JOIN `tvlfg_users` AS `uam` ON `uam`.`id` = `a`.`modified_by` LEFT JOIN `tvlfg_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `tvlfg_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` WHERE `a`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`access` IN (:preparedArray3,:preparedArray4) AND `c`.`published` = 1 AND `a`.`state` = :condition AND `a`.`id` IN (:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) ORDER BY a.ordering ASC1.35ms113.61KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `m`.`tag_id`,`m`.`content_item_id`,`t`.* FROM `tvlfg_contentitem_tag_map` AS `m` INNER JOIN `tvlfg_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `t`.`published` = 1 AND `m`.`content_item_id` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5) AND `t`.`access` IN (:preparedArray6,:preparedArray7)2.34ms5.53KBParams/libraries/src/Helper/TagsHelper.php:448Copy
  • SELECT `name`,`element` FROM `tvlfg_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1660μs976B/administrator/components/com_finder/src/Helper/LanguageHelper.php:135Copy
  • SELECT `title` FROM `tvlfg_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)220μs904B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT * FROM tvlfg_acym_configuration349μs2.88KB/administrator/components/com_acym/libraries/joomla/database.php:32Copy
  • SELECT * FROM tvlfg_acym_list WHERE type = 'standard'153μs2.28KB/administrator/components/com_acym/libraries/joomla/database.php:32Copy
  • SELECT * FROM tvlfg_acym_field122μs2.31KB/administrator/components/com_acym/libraries/joomla/database.php:32Copy
  • SELECT * FROM tvlfg_acym_form WHERE active = 1 AND type != 'shortcode'98μs1.2KB/administrator/components/com_acym/libraries/joomla/database.php:32Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `tvlfg_scheduler_tasks` AS `a` WHERE `a`.`state` = 1153μs1.68KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:466Copy
  • SELECT `session_id` FROM `tvlfg_session` WHERE `session_id` = ?166μs1.63KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `tvlfg_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?772μs912BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy