X-Git-Url: https://git.rapsys.eu/packbundle/blobdiff_plain/fcb8918f014944caf0dc844989277198ed256915..d2c18aaacbee5386b7b27edd6461ccd3630bc5d7:/RapsysPackBundle.php

diff --git a/RapsysPackBundle.php b/RapsysPackBundle.php
index d53a591..b013585 100644
--- a/RapsysPackBundle.php
+++ b/RapsysPackBundle.php
@@ -33,6 +33,45 @@ class RapsysPackBundle extends Bundle {
 	 *
 	 * @return string The bundle alias
 	 */
+	public static function getBundleAlias(): string {
+		//With namespace
+		if ($npos = strrpos(static::class, '\\')) {
+			//Set name pos
+			$npos++;
+
+			//With single namespace
+			$nspos = strpos(static::class, '\\');
+			//Without namespace
+		} else {
+			//Set name pos
+			$npos = 0;
+		}
+
+		//With trailing bundle
+		if (substr(static::class, -strlen('Bundle'), strlen('Bundle')) === 'Bundle') {
+			//Set bundle pos
+			$bpos = strlen(static::class) - $npos - strlen('Bundle');
+			//Without bundle
+		} else {
+			//Set bundle pos
+			$bpos = strlen(static::class) - $npos;
+		}
+
+		//With namespace
+		if ($npos) {
+			//Return prefixed class name
+			return strtolower(substr(static::class, 0, $nspos).'/'.substr(static::class, $npos, $bpos));
+		}
+
+		//Return class name
+		return strtolower(substr(static::class, $npos, $bpos));
+	}
+
+	/**
+	 * Return alias
+	 *
+	 * @return string The alias
+	 */
 	public static function getAlias(): string {
 		//With namespace
 		if ($npos = strrpos(static::class, '\\')) {