From db09a63007c9051055063d74054fdf036d5da6be Mon Sep 17 00:00:00 2001 From: bradwade Date: Thu, 20 Jul 2017 11:54:16 -0400 Subject: [PATCH] Added ability to strip pattern type category prefixes from main menu navigation. Pattern type category prefixes can be defined in config.yml as an array named "prefixes" containing strings of prefixes. For example if your pattern types are called, "theme1_atoms", "theme1_molecules", etc. you can add to your config.yml: prefixes - theme1_ ...then theme1_ will not appear in the main menu navigation of pattern lab.: 'upstream' does not appear to be a git repository fatal: Could not read from remote repository. Added ability to strip pattern type category prefixes from main menu navigation. Pattern type category prefixes can be defined in config.yml as an array named "prefixes" containing strings of prefixes. For example if your pattern types are called, "theme1_atoms", "theme1_molecules", etc. you can add to your config.yml: prefixes - theme1_ ...then theme1_ will not appear in the main menu navigation of pattern lab. --- .../PatternData/Exporters/NavItemsExporter.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/PatternLab/PatternData/Exporters/NavItemsExporter.php b/src/PatternLab/PatternData/Exporters/NavItemsExporter.php index 43db5694..ae36ef10 100644 --- a/src/PatternLab/PatternData/Exporters/NavItemsExporter.php +++ b/src/PatternLab/PatternData/Exporters/NavItemsExporter.php @@ -49,9 +49,19 @@ public function run() { $bi = (count($navItems["patternTypes"]) == 0) ? 0 : $bi + 1; + $patternTypeUC = $patternStoreData["nameClean"]; + + // Strip pattern category prefixes which are optionally defined in config.yml. + $prefixes = Config::getOption("prefixes"); + if (count($prefixes)) { + foreach ($prefixes as $prefix) { + $patternTypeUC = preg_replace('/^' . preg_quote($prefix, '/') . '/', '', $patternTypeUC); + } + } + // add a new patternType to the nav $navItems["patternTypes"][$bi] = array("patternTypeLC" => strtolower($patternStoreData["nameClean"]), - "patternTypeUC" => ucwords($patternStoreData["nameClean"]), + "patternTypeUC" => ucwords($patternTypeUC), "patternType" => $patternStoreData["name"], "patternTypeDash" => $patternStoreData["nameDash"], "patternTypeItems" => array(),