Merge pull request #11088 from nupplaphil/feat/php8_dep
Make Friendica PHP8 compatible & fix 2FA AppSpecificPassword
This commit is contained in:
commit
0df24eaf4f
|
@ -27,7 +27,7 @@
|
||||||
"ext-simplexml": "*",
|
"ext-simplexml": "*",
|
||||||
"ext-xml": "*",
|
"ext-xml": "*",
|
||||||
"asika/simple-console": "^1.0",
|
"asika/simple-console": "^1.0",
|
||||||
"bacon/bacon-qr-code": "^1.0",
|
"bacon/bacon-qr-code": "^2.0.0",
|
||||||
"divineomega/password_exposed": "^2.8",
|
"divineomega/password_exposed": "^2.8",
|
||||||
"ezyang/htmlpurifier": "^4.7",
|
"ezyang/htmlpurifier": "^4.7",
|
||||||
"friendica/json-ld": "^1.0",
|
"friendica/json-ld": "^1.0",
|
||||||
|
@ -44,11 +44,11 @@
|
||||||
"monolog/monolog": "^1.25",
|
"monolog/monolog": "^1.25",
|
||||||
"nikic/fast-route": "^1.3",
|
"nikic/fast-route": "^1.3",
|
||||||
"paragonie/hidden-string": "^1.0",
|
"paragonie/hidden-string": "^1.0",
|
||||||
"patrickschur/language-detection": "^3.4",
|
"patrickschur/language-detection": "^5.0.0",
|
||||||
"pear/console_table": "^1.3",
|
"pear/console_table": "^1.3",
|
||||||
"phpseclib/phpseclib": "^2.0",
|
"phpseclib/phpseclib": "^2.0",
|
||||||
"pragmarx/google2fa": "^5.0",
|
"pragmarx/google2fa": "^5.0",
|
||||||
"pragmarx/recovery": "^0.1.0",
|
"pragmarx/recovery": "^0.2",
|
||||||
"psr/container": "^1.0",
|
"psr/container": "^1.0",
|
||||||
"seld/cli-prompt": "^1.0",
|
"seld/cli-prompt": "^1.0",
|
||||||
"smarty/smarty": "^3.1",
|
"smarty/smarty": "^3.1",
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "ce08cdf59a7d3e85aabef6c9f96586e0",
|
"content-hash": "3d221e30c9cb7e3f34d8d8141b6fea6c",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "asika/simple-console",
|
"name": "asika/simple-console",
|
||||||
|
@ -41,32 +41,35 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "bacon/bacon-qr-code",
|
"name": "bacon/bacon-qr-code",
|
||||||
"version": "1.0.3",
|
"version": "2.0.4",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/Bacon/BaconQrCode.git",
|
"url": "https://github.com/Bacon/BaconQrCode.git",
|
||||||
"reference": "5a91b62b9d37cee635bbf8d553f4546057250bee"
|
"reference": "f73543ac4e1def05f1a70bcd1525c8a157a1ad09"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/5a91b62b9d37cee635bbf8d553f4546057250bee",
|
"url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/f73543ac4e1def05f1a70bcd1525c8a157a1ad09",
|
||||||
"reference": "5a91b62b9d37cee635bbf8d553f4546057250bee",
|
"reference": "f73543ac4e1def05f1a70bcd1525c8a157a1ad09",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
"dasprid/enum": "^1.0.3",
|
||||||
"ext-iconv": "*",
|
"ext-iconv": "*",
|
||||||
"php": "^5.4|^7.0"
|
"php": "^7.1 || ^8.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"phpunit/phpunit": "^4.8"
|
"phly/keep-a-changelog": "^1.4",
|
||||||
|
"phpunit/phpunit": "^7 | ^8 | ^9",
|
||||||
|
"squizlabs/php_codesniffer": "^3.4"
|
||||||
},
|
},
|
||||||
"suggest": {
|
"suggest": {
|
||||||
"ext-gd": "to generate QR code images"
|
"ext-imagick": "to generate QR code images"
|
||||||
},
|
},
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-0": {
|
"psr-4": {
|
||||||
"BaconQrCode": "src/"
|
"BaconQrCode\\": "src/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
@ -77,13 +80,13 @@
|
||||||
{
|
{
|
||||||
"name": "Ben Scholzen 'DASPRiD'",
|
"name": "Ben Scholzen 'DASPRiD'",
|
||||||
"email": "mail@dasprids.de",
|
"email": "mail@dasprids.de",
|
||||||
"homepage": "http://www.dasprids.de",
|
"homepage": "https://dasprids.de/",
|
||||||
"role": "Developer"
|
"role": "Developer"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"description": "BaconQrCode is a QR code generator for PHP.",
|
"description": "BaconQrCode is a QR code generator for PHP.",
|
||||||
"homepage": "https://github.com/Bacon/BaconQrCode",
|
"homepage": "https://github.com/Bacon/BaconQrCode",
|
||||||
"time": "2017-10-17T09:59:25+00:00"
|
"time": "2021-06-18T13:26:35+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "bower-asset/Chart-js",
|
"name": "bower-asset/Chart-js",
|
||||||
|
@ -380,6 +383,49 @@
|
||||||
],
|
],
|
||||||
"time": "2021-10-28T20:44:15+00:00"
|
"time": "2021-10-28T20:44:15+00:00"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "dasprid/enum",
|
||||||
|
"version": "1.0.3",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/DASPRiD/Enum.git",
|
||||||
|
"reference": "5abf82f213618696dda8e3bf6f64dd042d8542b2"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/DASPRiD/Enum/zipball/5abf82f213618696dda8e3bf6f64dd042d8542b2",
|
||||||
|
"reference": "5abf82f213618696dda8e3bf6f64dd042d8542b2",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"phpunit/phpunit": "^7 | ^8 | ^9",
|
||||||
|
"squizlabs/php_codesniffer": "^3.4"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"DASPRiD\\Enum\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"BSD-2-Clause"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Ben Scholzen 'DASPRiD'",
|
||||||
|
"email": "mail@dasprids.de",
|
||||||
|
"homepage": "https://dasprids.de/",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "PHP 7.1 enum implementation",
|
||||||
|
"keywords": [
|
||||||
|
"enum",
|
||||||
|
"map"
|
||||||
|
],
|
||||||
|
"time": "2020-10-02T16:03:48+00:00"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "divineomega/do-file-cache",
|
"name": "divineomega/do-file-cache",
|
||||||
"version": "v2.0.6",
|
"version": "v2.0.6",
|
||||||
|
@ -2832,25 +2878,25 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "patrickschur/language-detection",
|
"name": "patrickschur/language-detection",
|
||||||
"version": "v3.4.2",
|
"version": "v5.1.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/patrickschur/language-detection.git",
|
"url": "https://github.com/patrickschur/language-detection.git",
|
||||||
"reference": "9d7a45118289939ef46d8a02763c7fec32eed7ba"
|
"reference": "728f1434dcf126ce3ed7118567c014d80d7fdd9c"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/patrickschur/language-detection/zipball/9d7a45118289939ef46d8a02763c7fec32eed7ba",
|
"url": "https://api.github.com/repos/patrickschur/language-detection/zipball/728f1434dcf126ce3ed7118567c014d80d7fdd9c",
|
||||||
"reference": "9d7a45118289939ef46d8a02763c7fec32eed7ba",
|
"reference": "728f1434dcf126ce3ed7118567c014d80d7fdd9c",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"ext-json": "*",
|
"ext-json": "*",
|
||||||
"ext-mbstring": "*",
|
"ext-mbstring": "*",
|
||||||
"php": "^7.2"
|
"php": "^7.3 || ^8.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"phpunit/phpunit": "^8.4.3"
|
"phpunit/phpunit": "^9.5.0"
|
||||||
},
|
},
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
|
@ -2875,7 +2921,7 @@
|
||||||
"detection",
|
"detection",
|
||||||
"language"
|
"language"
|
||||||
],
|
],
|
||||||
"time": "2019-11-16T14:23:06+00:00"
|
"time": "2021-03-05T22:18:57+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "pear/console_table",
|
"name": "pear/console_table",
|
||||||
|
@ -3158,26 +3204,26 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "pragmarx/recovery",
|
"name": "pragmarx/recovery",
|
||||||
"version": "v0.1.0",
|
"version": "v0.2.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/antonioribeiro/recovery.git",
|
"url": "https://github.com/antonioribeiro/recovery.git",
|
||||||
"reference": "e16573a1ae5345cc3b100eec6d0296a1a15a90fe"
|
"reference": "b5ce4082f059afac6761714a84497816f45271cc"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/antonioribeiro/recovery/zipball/e16573a1ae5345cc3b100eec6d0296a1a15a90fe",
|
"url": "https://api.github.com/repos/antonioribeiro/recovery/zipball/b5ce4082f059afac6761714a84497816f45271cc",
|
||||||
"reference": "e16573a1ae5345cc3b100eec6d0296a1a15a90fe",
|
"reference": "b5ce4082f059afac6761714a84497816f45271cc",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"php": "~7.0",
|
"php": ">=7.0",
|
||||||
"pragmarx/random": "~0.1"
|
"pragmarx/random": "~0.1"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"phpunit/phpunit": ">=5.4.3",
|
"phpunit/phpunit": ">=5.4.3",
|
||||||
"squizlabs/php_codesniffer": "^2.3",
|
"squizlabs/php_codesniffer": "^2.3",
|
||||||
"tightenco/collect": "^5"
|
"tightenco/collect": "^5.0"
|
||||||
},
|
},
|
||||||
"suggest": {
|
"suggest": {
|
||||||
"tightenco/collect": "Allows to generate recovery codes as collections"
|
"tightenco/collect": "Allows to generate recovery codes as collections"
|
||||||
|
@ -3218,7 +3264,7 @@
|
||||||
"recovery codes",
|
"recovery codes",
|
||||||
"two factor auth"
|
"two factor auth"
|
||||||
],
|
],
|
||||||
"time": "2017-09-19T16:58:00+00:00"
|
"time": "2021-08-15T12:26:51+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "psr/cache",
|
"name": "psr/cache",
|
||||||
|
|
|
@ -110,9 +110,10 @@ class Verify extends BaseSettings
|
||||||
|
|
||||||
$otpauthUrl = (new Google2FA())->getQRCodeUrl($company, $holder, $secret);
|
$otpauthUrl = (new Google2FA())->getQRCodeUrl($company, $holder, $secret);
|
||||||
|
|
||||||
$renderer = (new \BaconQrCode\Renderer\Image\Svg())
|
$renderer = new ImageRenderer(
|
||||||
->setHeight(256)
|
new RendererStyle(256),
|
||||||
->setWidth(256);
|
new SvgImageBackEnd()
|
||||||
|
);
|
||||||
|
|
||||||
$writer = new Writer($renderer);
|
$writer = new Writer($renderer);
|
||||||
|
|
||||||
|
|
|
@ -86,9 +86,11 @@ class AppSpecificPassword
|
||||||
$appSpecificPasswords = DBA::toArray($appSpecificPasswordsStmt);
|
$appSpecificPasswords = DBA::toArray($appSpecificPasswordsStmt);
|
||||||
|
|
||||||
array_walk($appSpecificPasswords, function (&$value) {
|
array_walk($appSpecificPasswords, function (&$value) {
|
||||||
$value['ago'] = Temporal::getRelativeDate($value['last_used']);
|
$last_used = $value['last_used'] ?? DBA::NULL_DATETIME;
|
||||||
$value['utc'] = DateTimeFormat::utc($value['last_used'], 'c');
|
|
||||||
$value['local'] = DateTimeFormat::local($value['last_used'], 'r');
|
$value['ago'] = Temporal::getRelativeDate($last_used);
|
||||||
|
$value['utc'] = DateTimeFormat::utc($last_used, 'c');
|
||||||
|
$value['local'] = DateTimeFormat::local($last_used, 'r');
|
||||||
});
|
});
|
||||||
|
|
||||||
return $appSpecificPasswords;
|
return $appSpecificPasswords;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user