diff options
author | Andrew Dolgov <[email protected]> | 2021-02-26 19:16:17 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2021-02-26 19:16:17 +0300 |
commit | 3fd785654372d493c031d9b541ab33a881023a32 (patch) | |
tree | 0a76cb410217074378de3d7012b95754cd3c7e6f /vendor/chillerlan/php-qrcode/src/Output/QRString.php | |
parent | bc4475b6698f5a74e475674aa7af43253c459892 (diff) |
* switch to composer for qrcode and otp dependencies
* move most OTP-related stuff into userhelper
* remove old phpqrcode and otphp libraries
Diffstat (limited to 'vendor/chillerlan/php-qrcode/src/Output/QRString.php')
-rw-r--r-- | vendor/chillerlan/php-qrcode/src/Output/QRString.php | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/vendor/chillerlan/php-qrcode/src/Output/QRString.php b/vendor/chillerlan/php-qrcode/src/Output/QRString.php new file mode 100644 index 000000000..ba8d83675 --- /dev/null +++ b/vendor/chillerlan/php-qrcode/src/Output/QRString.php @@ -0,0 +1,76 @@ +<?php +/** + * Class QRString + * + * @filesource QRString.php + * @created 05.12.2015 + * @package chillerlan\QRCode\Output + * @author Smiley <[email protected]> + * @copyright 2015 Smiley + * @license MIT + */ + +namespace chillerlan\QRCode\Output; + +use chillerlan\QRCode\QRCode; + +use function implode, is_string, json_encode; + +/** + * Converts the matrix data into string types + */ +class QRString extends QROutputAbstract{ + + /** + * @var string + */ + protected $defaultMode = QRCode::OUTPUT_STRING_TEXT; + + /** + * @inheritDoc + */ + protected function setModuleValues():void{ + + foreach($this::DEFAULT_MODULE_VALUES as $M_TYPE => $defaultValue){ + $v = $this->options->moduleValues[$M_TYPE] ?? null; + + if(!is_string($v)){ + $this->moduleValues[$M_TYPE] = $defaultValue + ? $this->options->textDark + : $this->options->textLight; + } + else{ + $this->moduleValues[$M_TYPE] = $v; + } + + } + + } + + /** + * @return string + */ + protected function text():string{ + $str = []; + + foreach($this->matrix->matrix() as $row){ + $r = []; + + foreach($row as $M_TYPE){ + $r[] = $this->moduleValues[$M_TYPE]; + } + + $str[] = implode('', $r); + } + + return implode($this->options->eol, $str); + } + + /** + * @return string + */ + protected function json():string{ + return json_encode($this->matrix->matrix()); + } + +} |