diff --git a/src/utils/TextFormat.php b/src/utils/TextFormat.php index 5c1079d18..155949754 100644 --- a/src/utils/TextFormat.php +++ b/src/utils/TextFormat.php @@ -52,6 +52,114 @@ class TextFormat{ return preg_replace("/ยง[0123456789abcdefklmnor]/", "", $string); } + public static function toHTML($string){ + if(!is_array($string)){ + $string = self::tokenize($string); + } + $newString = ""; + $tokens = 0; + foreach($string as $token){ + switch($token){ + case TextFormat::BOLD: + $newString .= ""; + ++$tokens; + break; + case TextFormat::OBFUSCATED: + //$newString .= ""; + //++$tokens; + break; + case TextFormat::ITALIC: + $newString .= ""; + ++$tokens; + break; + case TextFormat::UNDERLINE: + $newString .= ""; + ++$tokens; + break; + case TextFormat::STRIKETHROUGH: + $newString .= ""; + ++$tokens; + break; + case TextFormat::RESET: + $newString .= str_repeat("", $tokens); + $tokens = 0; + break; + + //Colors + case TextFormat::BLACK: + $newString .= ""; + ++$tokens; + break; + case TextFormat::DARK_BLUE: + $newString .= ""; + ++$tokens; + break; + case TextFormat::DARK_GREEN: + $newString .= ""; + ++$tokens; + break; + case TextFormat::DARK_AQUA: + $newString .= ""; + ++$tokens; + break; + case TextFormat::DARK_RED: + $newString .= ""; + ++$tokens; + break; + case TextFormat::DARK_PURPLE: + $newString .= ""; + ++$tokens; + break; + case TextFormat::GOLD: + $newString .= ""; + ++$tokens; + break; + case TextFormat::GRAY: + $newString .= ""; + ++$tokens; + break; + case TextFormat::DARK_GRAY: + $newString .= ""; + ++$tokens; + break; + case TextFormat::BLUE: + $newString .= ""; + ++$tokens; + break; + case TextFormat::GREEN: + $newString .= ""; + ++$tokens; + break; + case TextFormat::AQUA: + $newString .= ""; + ++$tokens; + break; + case TextFormat::RED: + $newString .= ""; + ++$tokens; + break; + case TextFormat::LIGHT_PURPLE: + $newString .= ""; + ++$tokens; + break; + case TextFormat::YELLOW: + $newString .= ""; + ++$tokens; + break; + case TextFormat::WHITE: + $newString .= ""; + ++$tokens; + break; + default: + $newString .= $token; + break; + } + } + + $newString .= str_repeat("", $tokens); + return $newString; + } + public static function toANSI($string){ if(!is_array($string)){ $string = self::tokenize($string); @@ -76,6 +184,7 @@ class TextFormat{ case TextFormat::RESET: $newString .= "\x1b[0m"; break; + //Colors case TextFormat::BLACK: $newString .= "\x1b[30m";