From: Matěj Suchánek Date: Fri, 16 Jun 2017 08:16:11 +0000 (+0200) Subject: Show a warning in edit preview when a template loop is detected X-Git-Tag: 1.31.0-rc.0~2152^2 X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=commitdiff_plain;h=43c13e73049047842837d837bb3537f1c550a0a4 Show a warning in edit preview when a template loop is detected Follow-up to Ib888634af. Bug: T162149 Change-Id: I870dc22c984c900568ccacdc88d1bd31194394e1 --- diff --git a/includes/parser/Parser.php b/includes/parser/Parser.php index d8722bac5b..c0a648c7d4 100644 --- a/includes/parser/Parser.php +++ b/includes/parser/Parser.php @@ -3261,6 +3261,8 @@ class Parser { . wfMessage( 'parser-template-loop-warning', $titleText )->inContentLanguage()->text() . ''; $this->addTrackingCategory( 'template-loop-category' ); + $this->mOutput->addWarning( wfMessage( 'template-loop-warning', + wfEscapeWikiText( $titleText ) )->text() ); wfDebug( __METHOD__ . ": template loop broken at '$titleText'\n" ); } } diff --git a/languages/i18n/en.json b/languages/i18n/en.json index 766acf397a..fad13149ae 100644 --- a/languages/i18n/en.json +++ b/languages/i18n/en.json @@ -778,6 +778,7 @@ "parser-template-loop-warning": "Template loop detected: [[$1]]", "template-loop-category": "Pages with template loops", "template-loop-category-desc": "The page contains a template loop, ie. a template which calls itself recursively.", + "template-loop-warning": "Warning: This page calls [[:$1]] which causes a template loop (an infinite recursive call).", "parser-template-recursion-depth-warning": "Template recursion depth limit exceeded ($1)", "language-converter-depth-warning": "Language converter depth limit exceeded ($1)", "node-count-exceeded-category": "Pages where node count is exceeded", diff --git a/languages/i18n/qqq.json b/languages/i18n/qqq.json index 73033d625a..ae15883b08 100644 --- a/languages/i18n/qqq.json +++ b/languages/i18n/qqq.json @@ -968,6 +968,7 @@ "parser-template-loop-warning": "Parameters:\n* $1 - page title", "template-loop-category": "This message is used as a category name for a [[mw:Special:MyLanguage/Help:Tracking categories|tracking category]] where pages with template loops will be listed.", "template-loop-category-desc": "Pages with template loops category description. Shown on [[Special:TrackingCategories]].\n\nSee also:\n* {{msg-mw|Template-loop-category}}", + "template-loop-warning": "This message is displayed in edit preview when a template loop is detected on the previewed page.\n\nParameters:\n* $1 - the full title of template which causes the template loop.", "parser-template-recursion-depth-warning": "Parameters:\n* $1 - limit value of recursion depth", "language-converter-depth-warning": "Error message shown when a page uses too deeply nested language conversion syntax. Parameters:\n* $1 - the value of the depth limit", "node-count-exceeded-category": "This message is used as a category name for a [[mw:Help:Tracking categories|tracking category]] where pages are placed automatically if the node-count of the preprocessor exceeds the limit.\n\nSee also:\n* {{msg-mw|Node-count-exceeded-warning}}",