diff --git a/www/composer.lock b/www/composer.lock index 0907128d..cc03d4f0 100644 --- a/www/composer.lock +++ b/www/composer.lock @@ -12,7 +12,7 @@ "dist": { "type": "path", "url": "/storage/var/www/html/developers/clemens/core_data/composer-packages/CoreLibs-Composer-All", - "reference": "3f5b3f02ad635611fc8e12704995abeff02ee558" + "reference": "1357b98883c6e4bcac163c5fb29e28c8f968a814" }, "require": { "php": ">=8.2", @@ -45,11 +45,11 @@ }, { "name": "egrajp/smarty-extended", - "version": "4.5.1", + "version": "4.5.2", "dist": { "type": "zip", - "url": "https://git.egplusww.jp/api/packages/Composer/composer/files/egrajp%2Fsmarty-extended/4.5.1/egrajp-smarty-extended.4.5.1.zip", - "shasum": "1461a83b478b8a34cb7b92aedb283ec673cbdc02" + "url": "https://git.egplusww.jp/api/packages/Composer/composer/files/egrajp%2Fsmarty-extended/4.5.2/egrajp-smarty-extended.4.5.2.zip", + "shasum": "a2c67a5047aad349a2cfa54240a44da449df9c4c" }, "type": "library", "autoload": { @@ -71,7 +71,7 @@ "keywords": [ "templating" ], - "time": "2024-03-19T10:35:55+09:00" + "time": "2024-04-16T18:25:27+09:00" }, { "name": "gullevek/dotenv", diff --git a/www/vendor/composer/installed.json b/www/vendor/composer/installed.json index 3f35792b..eedbb13b 100644 --- a/www/vendor/composer/installed.json +++ b/www/vendor/composer/installed.json @@ -7,7 +7,7 @@ "dist": { "type": "path", "url": "/storage/var/www/html/developers/clemens/core_data/composer-packages/CoreLibs-Composer-All", - "reference": "3f5b3f02ad635611fc8e12704995abeff02ee558" + "reference": "1357b98883c6e4bcac163c5fb29e28c8f968a814" }, "require": { "php": ">=8.2", @@ -42,14 +42,14 @@ }, { "name": "egrajp/smarty-extended", - "version": "4.5.1", - "version_normalized": "4.5.1.0", + "version": "4.5.2", + "version_normalized": "4.5.2.0", "dist": { "type": "zip", - "url": "https://git.egplusww.jp/api/packages/Composer/composer/files/egrajp%2Fsmarty-extended/4.5.1/egrajp-smarty-extended.4.5.1.zip", - "shasum": "1461a83b478b8a34cb7b92aedb283ec673cbdc02" + "url": "https://git.egplusww.jp/api/packages/Composer/composer/files/egrajp%2Fsmarty-extended/4.5.2/egrajp-smarty-extended.4.5.2.zip", + "shasum": "a2c67a5047aad349a2cfa54240a44da449df9c4c" }, - "time": "2024-03-19T10:35:55+09:00", + "time": "2024-04-16T18:25:27+09:00", "type": "library", "installation-source": "dist", "autoload": { diff --git a/www/vendor/composer/installed.php b/www/vendor/composer/installed.php index 3aefb06d..025bccf2 100644 --- a/www/vendor/composer/installed.php +++ b/www/vendor/composer/installed.php @@ -13,7 +13,7 @@ 'egrajp/corelibs-composer-all' => array( 'pretty_version' => 'dev-development', 'version' => 'dev-development', - 'reference' => '3f5b3f02ad635611fc8e12704995abeff02ee558', + 'reference' => '1357b98883c6e4bcac163c5fb29e28c8f968a814', 'type' => 'library', 'install_path' => __DIR__ . '/../egrajp/corelibs-composer-all', 'aliases' => array(), @@ -29,8 +29,8 @@ 'dev_requirement' => false, ), 'egrajp/smarty-extended' => array( - 'pretty_version' => '4.5.1', - 'version' => '4.5.1.0', + 'pretty_version' => '4.5.2', + 'version' => '4.5.2.0', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../egrajp/smarty-extended', diff --git a/www/vendor/egrajp/corelibs-composer-all/.phive/phars.xml b/www/vendor/egrajp/corelibs-composer-all/.phive/phars.xml index c72f3a23..653f7f64 100644 --- a/www/vendor/egrajp/corelibs-composer-all/.phive/phars.xml +++ b/www/vendor/egrajp/corelibs-composer-all/.phive/phars.xml @@ -1,9 +1,9 @@ - - - - - + + + + + diff --git a/www/vendor/egrajp/corelibs-composer-all/publish/last.published b/www/vendor/egrajp/corelibs-composer-all/publish/last.published index 2f0dbe6f..be62bf9b 100644 --- a/www/vendor/egrajp/corelibs-composer-all/publish/last.published +++ b/www/vendor/egrajp/corelibs-composer-all/publish/last.published @@ -1 +1 @@ -9.12.0 +9.12.2 diff --git a/www/vendor/egrajp/corelibs-composer-all/publish/publish.sh b/www/vendor/egrajp/corelibs-composer-all/publish/publish.sh index 3c16f7a7..fccd3780 100755 --- a/www/vendor/egrajp/corelibs-composer-all/publish/publish.sh +++ b/www/vendor/egrajp/corelibs-composer-all/publish/publish.sh @@ -53,13 +53,19 @@ echo "[START]"; if [ ! -z "${GITEA_UPLOAD_FILENAME}" ] && [ ! -z "${GITEA_URL_DL}" ] && [ ! -z "${GITEA_URL_PUSH}" ] && [ ! -z "${GITEA_USER}" ] && [ ! -z "${GITEA_TOKEN}" ]; then - curl -LJO \ - --output-dir "${PACKAGE_DOWNLOAD}" \ - ${GITEA_URL_DL}/v${VERSION}.zip; - curl --user ${GITEA_USER}:${GITEA_TOKEN} \ - --upload-file "${PACKAGE_DOWNLOAD}${GITEA_UPLOAD_FILENAME}-v${VERSION}.zip" \ - ${GITEA_URL_PUSH}?version=${VERSION}; - echo "${VERSION}" > "${file_last_published}"; + if [ ! -f "${PACKAGE_DOWNLOAD}${GITEA_UPLOAD_FILENAME}-v${VERSION}.zip" ]; then + curl -LJO \ + --output-dir "${PACKAGE_DOWNLOAD}" \ + ${GITEA_URL_DL}/v${VERSION}.zip; + fi; + if [ ! -f "${PACKAGE_DOWNLOAD}${GITEA_UPLOAD_FILENAME}-v${VERSION}.zip" ]; then + echo "Version file does not exist for ${VERSION}"; + else + curl --user ${GITEA_USER}:${GITEA_TOKEN} \ + --upload-file "${PACKAGE_DOWNLOAD}${GITEA_UPLOAD_FILENAME}-v${VERSION}.zip" \ + ${GITEA_URL_PUSH}?version=${VERSION}; + echo "${VERSION}" > "${file_last_published}"; + fi; else echo "Missing either GITEA_UPLOAD_FILENAME, GITEA_URL_DL, GITEA_URL_PUSH, GITEA_USER or GITEA_TOKEN environment variable"; fi; diff --git a/www/vendor/egrajp/corelibs-composer-all/src/Convert/MimeEncode.php b/www/vendor/egrajp/corelibs-composer-all/src/Convert/MimeEncode.php index 73a3254d..013b27ee 100644 --- a/www/vendor/egrajp/corelibs-composer-all/src/Convert/MimeEncode.php +++ b/www/vendor/egrajp/corelibs-composer-all/src/Convert/MimeEncode.php @@ -15,6 +15,7 @@ class MimeEncode /** * wrapper function for mb mime convert * for correct conversion with long strings + * NOTE: This is only a wrapper for mb_encode_mimeheader to stay compatible * * @param string $string string to encode * @param string $encoding target encoding @@ -29,38 +30,9 @@ class MimeEncode $current_internal_encoding = mb_internal_encoding(); // set internal encoding, so the mimeheader encode works correctly mb_internal_encoding($encoding); - // if a subject, make a work around for the broken mb_mimencode - $pos = 0; - // after 36 single bytes characters, - // if then comes MB, it is broken - // has to 2 x 36 < 74 so the mb_encode_mimeheader - // 74 hardcoded split does not get triggered - $split = 36; - $_string = ''; - while ($pos < mb_strlen($string, $encoding)) { - $output = mb_strimwidth($string, $pos, $split, "", $encoding); - $pos += mb_strlen($output, $encoding); - // if the strinlen is 0 here, get out of the loop - if (!mb_strlen($output, $encoding)) { - $pos += mb_strlen($string, $encoding); - } - $_string_encoded = mb_encode_mimeheader($output, $encoding); - // only make linebreaks if we have mime encoded code inside - // the space only belongs in the second line - if ($_string && preg_match("/^=\?/", $_string_encoded)) { - $_string .= $line_break . " "; - } elseif ( - // hack for plain text with space at the end - mb_strlen($output, $encoding) == $split && - mb_substr($output, -1, 1, $encoding) == " " - ) { - // if output ends with space, add one more - $_string_encoded .= " "; - } - $_string .= $_string_encoded; - } - // strip out any spaces BEFORE a line break - $string = str_replace(" " . $line_break, $line_break, $_string); + // use the internal convert to mime header + // it works from PHP 8.2 on + $string = mb_encode_mimeheader($string, $encoding, 'B', $line_break); // before we end, reset internal encoding mb_internal_encoding($current_internal_encoding); // return mime encoded string diff --git a/www/vendor/egrajp/corelibs-composer-all/src/Security/SymmetricEncryption.php b/www/vendor/egrajp/corelibs-composer-all/src/Security/SymmetricEncryption.php index 2586e94a..8062fb51 100644 --- a/www/vendor/egrajp/corelibs-composer-all/src/Security/SymmetricEncryption.php +++ b/www/vendor/egrajp/corelibs-composer-all/src/Security/SymmetricEncryption.php @@ -22,15 +22,12 @@ use SodiumException; class SymmetricEncryption { /** - * Encrypt a message + * create key and check validity * - * @param string $message Message to encrypt - * @param string $key Encryption key (as hex string) - * @return string - * @throws \Exception - * @throws \RangeException + * @param string $key The key from which the binary key will be created + * @return string Binary key string */ - public static function encrypt(string $message, string $key): string + public static function createKey(string $key): string { try { $key = CreateKey::hex2bin($key); @@ -43,6 +40,21 @@ class SymmetricEncryption . 'SODIUM_CRYPTO_SECRETBOX_KEYBYTES bytes long).' ); } + return $key; + } + + /** + * Encrypt a message + * + * @param string $message Message to encrypt + * @param string $key Encryption key (as hex string) + * @return string + * @throws \Exception + * @throws \RangeException + */ + public static function encrypt(string $message, string $key): string + { + $key = self::createKey($key); $nonce = random_bytes(SODIUM_CRYPTO_SECRETBOX_NONCEBYTES); $cipher = base64_encode( @@ -68,11 +80,7 @@ class SymmetricEncryption */ public static function decrypt(string $encrypted, string $key): string { - try { - $key = CreateKey::hex2bin($key); - } catch (SodiumException $e) { - throw new \Exception('Invalid hex key'); - } + $key = self::createKey($key); $decoded = base64_decode($encrypted); $nonce = mb_substr($decoded, 0, SODIUM_CRYPTO_SECRETBOX_NONCEBYTES, '8bit'); $ciphertext = mb_substr($decoded, SODIUM_CRYPTO_SECRETBOX_NONCEBYTES, null, '8bit'); diff --git a/www/vendor/egrajp/corelibs-composer-all/test/checking/phan.sh b/www/vendor/egrajp/corelibs-composer-all/test/checking/phan.sh index 49db58cb..a91e9bc7 100755 --- a/www/vendor/egrajp/corelibs-composer-all/test/checking/phan.sh +++ b/www/vendor/egrajp/corelibs-composer-all/test/checking/phan.sh @@ -1,2 +1,2 @@ base="/storage/var/www/html/developers/clemens/core_data/composer-packages/CoreLibs-Composer-All/"; -vendor/bin/phan --progress-bar -C --analyze-twice +tools/phan --progress-bar -C --analyze-twice diff --git a/www/vendor/egrajp/corelibs-composer-all/test/checking/phpstan.sh b/www/vendor/egrajp/corelibs-composer-all/test/checking/phpstan.sh index 94a6e9b0..ffbb715e 100755 --- a/www/vendor/egrajp/corelibs-composer-all/test/checking/phpstan.sh +++ b/www/vendor/egrajp/corelibs-composer-all/test/checking/phpstan.sh @@ -1,2 +1,2 @@ base="/storage/var/www/html/developers/clemens/core_data/composer-packages/CoreLibs-Composer-All/"; -vendor/bin/phpstan +tools/phpstan diff --git a/www/vendor/egrajp/corelibs-composer-all/test/checking/phpunit.sh b/www/vendor/egrajp/corelibs-composer-all/test/checking/phpunit.sh index 761e51f4..bde9abc5 100755 --- a/www/vendor/egrajp/corelibs-composer-all/test/checking/phpunit.sh +++ b/www/vendor/egrajp/corelibs-composer-all/test/checking/phpunit.sh @@ -15,25 +15,27 @@ php_bin=""; if [ ! -z "${1}" ]; then case "${1}" in # "7.3") php_bin="/usr/bin/php7.3 "; ;; - "7.4") php_bin="/usr/bin/php7.4 "; ;; - "8.0") php_bin="/usr/bin/php8.0 "; ;; - "8.1") php_bin="/usr/bin/php8.1 "; ;; + #"7.4") php_bin="/usr/bin/php7.4 "; ;; + #"8.0") php_bin="/usr/bin/php8.0 "; ;; + #"8.1") php_bin="/usr/bin/php8.1 "; ;; "8.2") php_bin="/usr/bin/php8.2 "; ;; + "8.3") php_bin="/usr/bin/php8.3 "; ;; *) echo "Not support PHP: ${1}"; exit; ;; esac; fi; if [ ! -z "${2}" ] && [ -z "${php_bin}" ]; then case "${2}" in # "7.3") php_bin="/usr/bin/php7.3 "; ;; - "7.4") php_bin="/usr/bin/php7.4 "; ;; - "8.0") php_bin="/usr/bin/php8.0 "; ;; - "8.1") php_bin="/usr/bin/php8.1 "; ;; + #"7.4") php_bin="/usr/bin/php7.4 "; ;; + #"8.0") php_bin="/usr/bin/php8.0 "; ;; + #"8.1") php_bin="/usr/bin/php8.1 "; ;; "8.2") php_bin="/usr/bin/php8.2 "; ;; + "8.3") php_bin="/usr/bin/php8.3 "; ;; *) echo "Not support PHP: ${1}"; exit; ;; esac; fi; -phpunit_call="${php_bin}${base}vendor/bin/phpunit ${opt_testdox} -c ${base}phpunit.xml ${base}test/phpunit/"; +phpunit_call="${php_bin}${base}tools/phpunit ${opt_testdox} -c ${base}phpunit.xml ${base}test/phpunit/"; ${phpunit_call}; diff --git a/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Convert/CoreLibsConvertMimeEncodeTest.php b/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Convert/CoreLibsConvertMimeEncodeTest.php index 00b1055e..1c2c47c7 100644 --- a/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Convert/CoreLibsConvertMimeEncodeTest.php +++ b/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Convert/CoreLibsConvertMimeEncodeTest.php @@ -33,15 +33,14 @@ final class CoreLibsConvertMimeEncodeTest extends TestCase 'The quick brown fox jumps over the lazy sheep that sleeps in the ravine ' . 'and has no idea what is going on here', 'UTF-8', - 'The quick brown fox jumps over the lazy sheep that sleeps in the ravine ' - . 'and has no idea what is going on here' + "The quick brown fox jumps over the lazy sheep that sleeps in the ravine and\r\n" + . ' has no idea what is going on here' ], 'standard with special chars UTF-8' => [ 'This is ümläßtと漢字もカタカナ!!^$%&', 'UTF-8', - 'This is =?UTF-8?B?w7xtbMOkw59044Go5ryi5a2X44KC44Kr44K/44Kr44OK77yBIV4k?=' - . "\r\n" - . ' =?UTF-8?B?JQ==?=&' + "This is =?UTF-8?B?w7xtbMOkw59044Go5ryi5a2X44KC44Kr44K/44Kr44OK77yBIV4k?=\r\n" + . ' =?UTF-8?B?JSY=?=' ], '35 chars and space at the end UTF-8' => [ '12345678901234567890123456789012345 ' @@ -62,9 +61,8 @@ final class CoreLibsConvertMimeEncodeTest extends TestCase . 'is there a space?', 'UTF-8', "=?UTF-8?B?44Kr44K/44Kr44OK44Kr44K/44Kr44OK44GL44Gq44Kr44K/44Kr44OK44Kr?=\r\n" - . " =?UTF-8?B?44K/44Kr44OK?=\r\n" - . " =?UTF-8?B?44GL44Gq44Kr44K/44Kr44OK44Kr44K/44Kr44OK44GL44Gq44Kr44K/44Kr?=\r\n" - . " =?UTF-8?B?44OK44Kr44K/?= is there a =?UTF-8?B?c3BhY2U/?=" + . " =?UTF-8?B?44K/44Kr44OK44GL44Gq44Kr44K/44Kr44OK44Kr44K/44Kr44OK44GL44Gq?=\r\n" + . " =?UTF-8?B?44Kr44K/44Kr44OK44Kr44K/IGlzIHRoZXJlIGEgc3BhY2U/?=" ] ]; } @@ -85,16 +83,28 @@ final class CoreLibsConvertMimeEncodeTest extends TestCase // print "MIME: -" . $encoded . "-\n"; $this->assertEquals( $expected, - $encoded + $encoded, + "__mbMimeEncode" ); $decoded = mb_decode_mimeheader($encoded); - // print "INPUT : " . $input . "\n"; - // print "DECODED: " . $decoded . "\n"; + // print "ENCODED: " . $encoded . "\n"; + // print "INPUT : " . $input . " | " . mb_strlen($input) . "\n"; + // print "DECODED: " . $decoded . " | " . mb_strlen($decoded) . "\n"; + // $test_enc = mb_encode_mimeheader($input, $encoding); + // $test_dec = mb_decode_mimeheader($test_enc); + // print "TEST ENC: " . $test_enc . "\n"; // back compare decoded $this->assertEquals( $input, - $decoded + $decoded, + "mb_decode_mimeheader" ); + + // $this->assertEquals( + // $input, + // $test_dec, + // 'mb_encode_to_decode' + // ); } } diff --git a/www/vendor/egrajp/smarty-extended/publish/last.published b/www/vendor/egrajp/smarty-extended/publish/last.published index cca25a93..4404a17b 100644 --- a/www/vendor/egrajp/smarty-extended/publish/last.published +++ b/www/vendor/egrajp/smarty-extended/publish/last.published @@ -1 +1 @@ -4.4.1 +4.5.1 diff --git a/www/vendor/egrajp/smarty-extended/publish/publish.sh b/www/vendor/egrajp/smarty-extended/publish/publish.sh index 7095275c..e74a53db 100755 --- a/www/vendor/egrajp/smarty-extended/publish/publish.sh +++ b/www/vendor/egrajp/smarty-extended/publish/publish.sh @@ -49,6 +49,7 @@ if [ "${go_flag}" != "go" ]; then fi; echo "[START]"; + # gitea if [ ! -z "${GITEA_UPLOAD_FILENAME}" ] && [ ! -z "${GITEA_URL_DL}" ] && [ ! -z "${GITEA_URL_PUSH}" ] && @@ -82,6 +83,7 @@ if [ ! -z "${GITLAB_URL}" ] && [ ! -z "${GITLAB_DEPLOY_TOKEN}" ]; then else echo "Missing GITLAB_DEPLOY_TOKEN environment variable"; fi; + echo ""; echo "[DONE]"; diff --git a/www/vendor/egrajp/smarty-extended/src/sysplugins/smarty_internal_templatecompilerbase.php b/www/vendor/egrajp/smarty-extended/src/sysplugins/smarty_internal_templatecompilerbase.php index 10caf590..f5d2c438 100644 --- a/www/vendor/egrajp/smarty-extended/src/sysplugins/smarty_internal_templatecompilerbase.php +++ b/www/vendor/egrajp/smarty-extended/src/sysplugins/smarty_internal_templatecompilerbase.php @@ -640,17 +640,18 @@ abstract class Smarty_Internal_TemplateCompilerBase return $func_name . '(' . $parameter[ 0 ] . ')'; } } else { - $first_param = array_shift($parameter); - $modifier = array_merge(array($name), $parameter); - // Now, compile the function call as a modifier - return $this->compileTag( - 'private_modifier', - array(), - array( - 'modifierlist' => array($modifier), - 'value' => $first_param - ) - ); + + if ( + !$this->smarty->loadPlugin('smarty_modifiercompiler_' . $name) + && !isset($this->smarty->registered_plugins[Smarty::PLUGIN_MODIFIER][$name]) + && !in_array($name, ['time', 'join', 'is_array', 'in_array']) + ) { + trigger_error('Using unregistered function "' . $name . '" in a template is deprecated and will be ' . + 'removed in a future release. Use Smarty::registerPlugin to explicitly register ' . + 'a custom modifier.', E_USER_DEPRECATED); + } + + return $name . '(' . implode(',', $parameter) . ')'; } } else { $this->trigger_template_error("unknown function '{$name}'");