From 4d658b082ceb636a9c5aadfa636fd602129f7858 Mon Sep 17 00:00:00 2001 From: Denis Ryabov Date: Wed, 24 Feb 2021 14:57:11 +0300 Subject: [PATCH] new inspection: empty element --- .../language/en-GB/en-GB.com_jedchecker.ini | 1 + .../com_jedchecker/libraries/rules/xmlmanifest.php | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/administrator/components/com_jedchecker/language/en-GB/en-GB.com_jedchecker.ini b/administrator/components/com_jedchecker/language/en-GB/en-GB.com_jedchecker.ini index e5922f0..a5cd2d1 100644 --- a/administrator/components/com_jedchecker/language/en-GB/en-GB.com_jedchecker.ini +++ b/administrator/components/com_jedchecker/language/en-GB/en-GB.com_jedchecker.ini @@ -87,4 +87,5 @@ COM_JEDCHECKER_MANIFEST_UNKNOWN_CHILDREN="Node <%s> has unknown child elem COM_JEDCHECKER_MANIFEST_MISSED_REQUIRED="Node <%1$s> doesn't contain required <%2$s> element" COM_JEDCHECKER_MANIFEST_MULTIPLE_FOUND="Node <%1$s> contains multiple <%2$s> elements" COM_JEDCHECKER_MANIFEST_UNKNOWN_CHILD="Node <%1$s> contains unknown <%2$s> element" +COM_JEDCHECKER_MANIFEST_EMPTY_CHILD="Found empty <%s> element" COM_JEDCHECKER_MANIFEST_MENU_UNUSED_ATTRIBUTE="Menu item attribute '%s' is not used with 'link' attribute" diff --git a/administrator/components/com_jedchecker/libraries/rules/xmlmanifest.php b/administrator/components/com_jedchecker/libraries/rules/xmlmanifest.php index db2f211..b7a39c2 100644 --- a/administrator/components/com_jedchecker/libraries/rules/xmlmanifest.php +++ b/administrator/components/com_jedchecker/libraries/rules/xmlmanifest.php @@ -278,6 +278,15 @@ class JedcheckerRulesXMLManifest extends JEDcheckerRule } } } + + // 3) check empty elements + foreach ($node as $child) + { + if ($child->count() === 0 && (string) $child === '') + { + $this->infos[] = JText::sprintf('COM_JEDCHECKER_MANIFEST_EMPTY_CHILD', $child->getName()); + } + } } // Extra checks (if exist)