Slingshot 330, May/June 2020

Guardroom
The debate continues over the credibility (and availability) of primary sources.

Zhizhi's Last Stand by Nicholas Spratt
Gan Yanshou’s victory in 36BCE is famous, not just because it was the only time a Chinese army would kill a Chanyu of the Xiongnu Empire, or because the Han army would have to travel 3400km from the capital to get there, but because a hapax legomenon in the Hanshu’s description has been interpreted as suggesting that China faced Roman Legionaries on the battlefield that day.

An Alternative Rant by David Kay
David Kay follows Simon Watson’s lead and has a look at the more problematic elements of current wargaming play mechanisms, troop classifications and other bones of contention.

Have at Thee, Varlet! by Anthony Clipsom
For most of us, ‘varlet’ is just a quaint, old expression for an example of degenerate scum. Anthony digs up the fascinating Mediaeval origins behind the word.

The Red Dragon and the White Boar by Chris Hahn
In the absence of a Battle Day with subsequent battle reports, here are several home games of Bosworth using Armati, l’Art de la Guerre and To The Strongest! Chris Hahn makes it clear that if Richard doesn’t throw away the battle with his charge, Henry is in real trouble.

Tactica II: A Ruleset Analysis by Paul Innes
A former editor makes a good case for why Tactica II is one of the most historically accurate and playable large battle rulesets out there, among other things creating nuanced troop types using troop category and quality, and catering for details like Roman line relief.

Slingshot Book & Game Reviews
Battles and Battlefields of Ancient Greece: A Guide to their History, Topography and Archaeology
Cities of the Classical World
The Wars of Alexander’s Successors 323-281 BC. Volume II: Battles & Tacticsblurbs

Available in web store. 

Add to cart  

Click on 'read more' to see a list of the internet links appearing in articles in this edition.

 

SLINGSHOT 330 INTERNET LINKS

GUARDROOM

Re The Incredulity Continuum

  1. https://www.encyclopedia.com/history/news-wires-white-papers-and-books/ming-dynasty-1368-1644-economy
  2. https://www.historynet.com/what-percentage-of-the-population-served-in-ww2.htm

AN ALTERNATIVE RANT

Images by Jason: http://lightbobsandpaintblobs.blogspot.com

HAVE AT THEE, VARLET!

Image by Perry Miniatures: https://www.perry-miniatures.com/

Notes

  1. https://www.merriam-webster.com/dictionary/valet#etymology
  2. https://en.wikisource.org/wiki/1911_Encyclop%C3%A6dia_Britannica/Valet
  3. http://mesnieedemontinius.meabilis.fr/mbFiles/documents/ordonnance-1351.pdf
  4. https://books.openedition.org/cvz/1272?lang=en
  5. https://gallica.bnf.fr/ark:/12148/bpt6k9729751k/f901.item.r=liege

THE RED DRAGON VS THE WHITE BOAR

Images by Jason: http://lightbobsandpaintblobs.blogspot.com

Research list

https://en.wikipedia.org/wiki/Battle_of_Bosworth_Field

https://www.historyextra.com/period/tudor/battle-of-bosworth-facts-richard-iii-henry-vii-tudors-wars-roses-york-lancaster/

https://www.historic-uk.com/HistoryMagazine/DestinationsUK/The-Battle-of-Bosworth-Field/

http://www.battlefieldsofbritain.co.uk/battle_bosworth_field_1485.html

https://gcooksonblog.wordpress.com/category/medieval/war-of-the-roses/battle-of-bosworth/

http://theminiaturespage.com/boards/msg.mv?id=194791

http://newconverj.blogspot.com/2016/06/battle-of-bosworth-deployment-and-oob.html

http://wargaming4grownups.blogspot.com/2013/03/big-bosworth.html

https://www.vislardica.com/vb-sc-bosworth/

https://www.wargamesillustrated.net/shop/wi299-september-2012/

TACTICA II: A RULESET ANALYSIS

Discussion group: https://groups.io/g/Tactica

 

View cart

 

Online Payment

 

Payment is via Paypal; Paypal should automatically convert your currency. You do not need a pre-existing Paypal account to use the site; but you will need to create a PayPal account in order to make the payment - PayPal now requires this because of anti-money-laundering legislation. If you're in a territory not supported by Paypal, contact the Membership secretary using the form on the Contacts page and we'll try and work something out.

Buying by Post

 

If you don't want to buy the products online, please download the postal sales form. A third option (to using this cart, or to using the postal service) is to just go to Paypal and use the "Send Funds" function there to wire payments directly to membership AT soa.org.uk (replace the AT with an @); this may be helpful if you want to use the online service but are having problems with it.

Family Memberships

 

Family Memberships are memberships which provide all the benefits of membership except for a Slingshot subscription (e.g. a membership number, vendor discounts, forums access). They are available to individuals living at the same address as a full (Slingshot subscribing) Society member. They were previously made available on a chargeable basis. They are now free. To ask for a family membership, please submit your request via the contact form, setting the Topic to "Family Memberships" if it is not already that.

Worldwide Postage

 

Your membership subscription includes the Slingshot postage price, worldwide (yes, the price is the same for everyone). Other items from the store are charged for postage at cost, which is calculated during your checkout process.

17.803MBMemory Usage2.65sRequest Duration
Joomla! Version4.4.10
PHP Version8.2.18
Identityguest
Response200
Templateb2brown
Database
Server
mysql
Version
11.4.5-MariaDB-deb12
Collation
utf8mb3_general_ci
Conn Collation
utf8mb4_uca1400_ai_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:50 [ "UNIQUE_ID" => "aAIjLvKszbD3LQ86dN0PBgAAAKA" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTP...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1744970543 "last" => 1744970543...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (3.92MB) (371ms)
  • afterInitialise (5.81MB) (974ms)
  • afterRoute (1.01MB) (229ms)
  • beforeRenderComponent com_content (877.32KB) (153ms)
  • Before Access::preloadComponents (all components) (457.8KB) (59.09ms)
  • After Access::preloadComponents (all components) (111.89KB) (3.87ms)
  • Before Access::preloadPermissions (com_content) (424B) (59μs)
  • After Access::preloadPermissions (com_content) (184.05KB) (3.32ms)
  • Before Access::getAssetRules (id:295 name:com_content.article.191) (10.65KB) (90μs)
  • After Access::getAssetRules (id:295 name:com_content.article.191) (25.52KB) (17.48ms)
  • afterRenderComponent com_content (3.51MB) (395ms)
  • afterDispatch (2.28KB) (1.03ms)
  • beforeRenderRawModule mod_jbcookies (JB Cookies) (181.83KB) (51.56ms)
  • afterRenderRawModule mod_jbcookies (JB Cookies) (581.7KB) (117ms)
  • beforeRenderModule mod_jbcookies (JB Cookies) (720B) (25μs)
  • afterRenderModule mod_jbcookies (JB Cookies) (1.23KB) (2.83ms)
  • beforeRenderRawModule mod_custom (Button Footer) (7.43KB) (151μs)
  • afterRenderRawModule mod_custom (Button Footer) (14.77KB) (21.36ms)
  • beforeRenderModule mod_custom (Button Footer) (720B) (24μs)
  • afterRenderModule mod_custom (Button Footer) (1.25KB) (1.06ms)
  • beforeRenderRawModule mod_custom (View Cart Footer) (712B) (180μs)
  • afterRenderRawModule mod_custom (View Cart Footer) (928B) (1.67ms)
  • beforeRenderModule mod_custom (View Cart Footer) (720B) (11μs)
  • afterRenderModule mod_custom (View Cart Footer) (1.25KB) (1.04ms)
  • beforeRenderRawModule mod_breadcrumbs (Breadcrumbs) (872B) (120μs)
  • afterRenderRawModule mod_breadcrumbs (Breadcrumbs) (34.02KB) (21.18ms)
  • beforeRenderModule mod_breadcrumbs (Breadcrumbs) (704B) (15μs)
  • afterRenderModule mod_breadcrumbs (Breadcrumbs) (3.82KB) (2.63ms)
  • beforeRenderRawModule mod_search (Search) (1.75KB) (110μs)
  • afterRenderRawModule mod_search (Search) (55.8KB) (20.42ms)
  • beforeRenderModule mod_search (Search) (704B) (22μs)
  • afterRenderModule mod_search (Search) (2.4KB) (1.47ms)
  • beforeRenderRawModule mod_menu (Main Menu) (32B) (132μs)
  • afterRenderRawModule mod_menu (Main Menu) (351.7KB) (69.05ms)
  • beforeRenderModule mod_menu (Main Menu) (704B) (21μs)
  • afterRenderModule mod_menu (Main Menu) (2.65KB) (10.48ms)
  • beforeRenderRawModule mod_menu (Slingshot Menu Module) (440B) (70μs)
  • afterRenderRawModule mod_menu (Slingshot Menu Module) (36.72KB) (22.71ms)
  • beforeRenderModule mod_menu (Slingshot Menu Module) (720B) (15μs)
  • afterRenderModule mod_menu (Slingshot Menu Module) (2.54KB) (1.35ms)
  • afterRender (265.46KB) (83.9ms)
  • 1 x afterInitialise (5.81MB) (36.81%)
    974.43ms
    1 x afterRenderComponent com_content (3.51MB) (14.9%)
    394.60ms
    1 x afterLoad (3.92MB) (14%)
    370.69ms
    1 x afterRoute (1.01MB) (8.66%)
    229.29ms
    1 x beforeRenderComponent com_content (877.32KB) (5.78%)
    152.99ms
    1 x afterRenderRawModule mod_jbcookies (JB Cookies) (581.7KB) (4.43%)
    117.37ms
    1 x afterRender (265.46KB) (3.17%)
    83.90ms
    1 x afterRenderRawModule mod_menu (Main Menu) (351.7KB) (2.61%)
    69.05ms
    1 x Before Access::preloadComponents (all components) (457.8KB) (2.23%)
    59.09ms
    1 x beforeRenderRawModule mod_jbcookies (JB Cookies) (181.83KB) (1.95%)
    51.56ms
    1 x afterRenderRawModule mod_menu (Slingshot Menu Module) (36.72KB) (0.86%)
    22.71ms
    1 x afterRenderRawModule mod_custom (Button Footer) (14.77KB) (0.81%)
    21.36ms
    1 x afterRenderRawModule mod_breadcrumbs (Breadcrumbs) (34.02KB) (0.8%)
    21.18ms
    1 x afterRenderRawModule mod_search (Search) (55.8KB) (0.77%)
    20.42ms
    1 x After Access::getAssetRules (id:295 name:com_content.article.191) (25.52KB) (0.66%)
    17.48ms
    1 x afterRenderModule mod_menu (Main Menu) (2.65KB) (0.4%)
    10.48ms
    1 x After Access::preloadComponents (all components) (111.89KB) (0.15%)
    3.87ms
    1 x After Access::preloadPermissions (com_content) (184.05KB) (0.13%)
    3.32ms
    1 x afterRenderModule mod_jbcookies (JB Cookies) (1.23KB) (0.11%)
    2.83ms
    1 x afterRenderModule mod_breadcrumbs (Breadcrumbs) (3.82KB) (0.1%)
    2.63ms
    1 x afterRenderRawModule mod_custom (View Cart Footer) (928B) (0.06%)
    1.67ms
    1 x afterRenderModule mod_search (Search) (2.4KB) (0.06%)
    1.47ms
    1 x afterRenderModule mod_menu (Slingshot Menu Module) (2.54KB) (0.05%)
    1.35ms
    1 x afterRenderModule mod_custom (Button Footer) (1.25KB) (0.04%)
    1.06ms
    1 x afterRenderModule mod_custom (View Cart Footer) (1.25KB) (0.04%)
    1.04ms
    1 x afterDispatch (2.28KB) (0.04%)
    1.03ms
    1 x beforeRenderRawModule mod_custom (View Cart Footer) (712B) (0.01%)
    180μs
    1 x beforeRenderRawModule mod_custom (Button Footer) (7.43KB) (0.01%)
    151μs
    1 x beforeRenderRawModule mod_menu (Main Menu) (32B) (0%)
    132μs
    1 x beforeRenderRawModule mod_breadcrumbs (Breadcrumbs) (872B) (0%)
    120μs
    1 x beforeRenderRawModule mod_search (Search) (1.75KB) (0%)
    110μs
    1 x Before Access::getAssetRules (id:295 name:com_content.article.191) (10.65KB) (0%)
    90μs
    1 x beforeRenderRawModule mod_menu (Slingshot Menu Module) (440B) (0%)
    70μs
    1 x Before Access::preloadPermissions (com_content) (424B) (0%)
    59μs
    1 x beforeRenderModule mod_jbcookies (JB Cookies) (720B) (0%)
    25μs
    1 x beforeRenderModule mod_custom (Button Footer) (720B) (0%)
    24μs
    1 x beforeRenderModule mod_search (Search) (704B) (0%)
    22μs
    1 x beforeRenderModule mod_menu (Main Menu) (704B) (0%)
    21μs
    1 x beforeRenderModule mod_breadcrumbs (Breadcrumbs) (704B) (0%)
    15μs
    1 x beforeRenderModule mod_menu (Slingshot Menu Module) (720B) (0%)
    15μs
    1 x beforeRenderModule mod_custom (View Cart Footer) (720B) (0%)
    11μs
28 statements were executed, 5 of which were duplicates, 23 unique35.58ms156.98KB
  • SELECT @@SESSION.sql_mode;656μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `jml_session` WHERE `session_id` = ?776μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `jml_session` WHERE `session_id` = :session_id LIMIT 1577μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `jml_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)887μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `jml_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 11.32ms1.73KB/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `jml_viewlevels`738μs656B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `jml_usergroups` AS `a` LEFT JOIN `jml_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest827μs1.33KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `jml_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2) ORDER BY `ordering`2.03ms3.98KBParams/libraries/src/Plugin/PluginHelper.php:294Copy
  • 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 `jml_menu` AS `m` LEFT JOIN `jml_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`1.91ms52.55KBParams/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 `jml_categories` AS `s` INNER JOIN `jml_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`1.81ms3.89KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT * FROM `jml_languages` WHERE `published` = 1 ORDER BY `ordering` ASC993μs1.59KB/libraries/src/Language/LanguageHelper.php:142Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `jml_template_styles` AS `s` LEFT JOIN `jml_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` = 11.11ms864B/administrator/components/com_templates/src/Model/StyleModel.php:773Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jml_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,:preparedArray40,:preparedArray41,:preparedArray42)1.79ms7.56KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jml_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 01.44ms25.48KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `jml_content`2.03ms1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `jml_content` SET `hits` = (`hits` + 1) WHERE `id` = '191'945μ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 `jml_content` AS `a` INNER JOIN `jml_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `jml_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `jml_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `jml_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `jml_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)1.64ms23.38KBParams/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 `jml_categories` AS `s` INNER JOIN `jml_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`1.28ms3.94KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `jml_contentitem_tag_map` AS `m` INNER JOIN `jml_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.82ms3.97KBParams/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 `jml_categories` AS `s` INNER JOIN `jml_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`1.43ms3.94KBParams/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 jml_fields AS a LEFT JOIN `jml_languages` AS l ON l.lang_code = a.language LEFT JOIN jml_users AS uc ON uc.id=a.checked_out LEFT JOIN jml_viewlevels AS ag ON ag.id = a.access LEFT JOIN jml_users AS ua ON ua.id = a.created_user_id LEFT JOIN jml_fields_groups AS g ON g.id = a.group_id LEFT JOIN `jml_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)) AND `a`.`access` IN (:preparedArray3,:preparedArray4)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray5,:preparedArray6)) 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 ASC2.51ms4.75KBParams/libraries/src/MVC/Model/BaseDatabaseModel.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 `jml_categories` AS `s` INNER JOIN `jml_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`1.29ms3.94KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `jml_modules` AS `m` LEFT JOIN `jml_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `jml_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`2.02ms1.94KBParams/libraries/src/Cache/Controller/CallbackController.php:51Copy
  • SELECT `alias` FROM `jml_content` WHERE `id` = :id562μs1.31KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `jml_content` WHERE `id` = :id528μs1.31KBParams/components/com_content/src/Service/Router.php:168Copy
  • 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 `jml_scheduler_tasks` AS `a` WHERE `a`.`state` = 11.03ms1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:466Copy
  • SELECT `session_id` FROM `jml_session` WHERE `session_id` = ?469μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `jml_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?1.17ms592BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy