From a428ebdd73f6655c368df9c02ee810ac51ae37ff Mon Sep 17 00:00:00 2001 From: marcdeb1 Date: Tue, 1 Jan 2019 15:40:45 +0100 Subject: [PATCH] Chainquery update, transaction value and address balance --- composer.lock | 291 +++++++++++++++++------------- config/bootstrap.php | 6 +- src/Controller/MainController.php | 55 ++---- src/Model/Entity/Transaction.php | 10 - src/Template/Main/blocks.ctp | 2 +- src/Template/Main/stats.ctp | 12 +- src/Template/Main/tx.ctp | 2 +- src/View/AjaxView.php | 2 +- 8 files changed, 200 insertions(+), 180 deletions(-) diff --git a/composer.lock b/composer.lock index 639cfca..5ed47a4 100644 --- a/composer.lock +++ b/composer.lock @@ -1,10 +1,9 @@ { "_readme": [ "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "hash": "654f4b2fd4cf16d217bd2c8d6431357c", "content-hash": "d6441e245d73b6c3db3a627313143bff", "packages": [ { @@ -51,7 +50,7 @@ "l10n", "localization" ], - "time": "2017-01-20 05:00:11" + "time": "2017-01-20T05:00:11+00:00" }, { "name": "bacon/bacon-qr-code", @@ -97,20 +96,20 @@ ], "description": "BaconQrCode is a QR code generator for PHP.", "homepage": "https://github.com/Bacon/BaconQrCode", - "time": "2017-10-17 09:59:25" + "time": "2017-10-17T09:59:25+00:00" }, { "name": "cakephp/cakephp", - "version": "3.6.13", + "version": "3.7.1", "source": { "type": "git", "url": "https://github.com/cakephp/cakephp.git", - "reference": "6a0b9c74710a56c5974d1c8229c7a91dac780402" + "reference": "1f6fd21ca27ffc88fa88506a400b94a809e29254" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/cakephp/cakephp/zipball/6a0b9c74710a56c5974d1c8229c7a91dac780402", - "reference": "6a0b9c74710a56c5974d1c8229c7a91dac780402", + "url": "https://api.github.com/repos/cakephp/cakephp/zipball/1f6fd21ca27ffc88fa88506a400b94a809e29254", + "reference": "1f6fd21ca27ffc88fa88506a400b94a809e29254", "shasum": "" }, "require": { @@ -120,6 +119,7 @@ "ext-mbstring": "*", "php": ">=5.6.0", "psr/log": "^1.0.0", + "psr/simple-cache": "^1.0.0", "zendframework/zend-diactoros": "^1.4.0" }, "conflict": { @@ -145,6 +145,7 @@ "phpunit/phpunit": "^5.7.14|^6.0" }, "suggest": { + "ext-curl": "To enable more efficient network calls in Http\\Client.", "ext-openssl": "To use Security::encrypt() or have secure CSRF token generation.", "lib-ICU": "The intl PHP library, to use Text::transliterate() or Text::slug()" }, @@ -183,7 +184,7 @@ "rapid-development", "validation" ], - "time": "2018-11-04 20:29:27" + "time": "2018-12-18T02:39:37+00:00" }, { "name": "cakephp/chronos", @@ -240,7 +241,7 @@ "datetime", "time" ], - "time": "2018-10-18 22:02:21" + "time": "2018-10-18T22:02:21+00:00" }, { "name": "cakephp/migrations", @@ -293,7 +294,7 @@ "cakephp", "migrations" ], - "time": "2018-04-16 01:35:59" + "time": "2018-04-16T01:35:59+00:00" }, { "name": "cakephp/plugin-installer", @@ -334,7 +335,7 @@ } ], "description": "A composer installer for CakePHP 3.0+ plugins.", - "time": "2017-12-24 21:09:29" + "time": "2017-12-24T21:09:29+00:00" }, { "name": "endroid/qrcode", @@ -404,7 +405,7 @@ "symfony" ], "abandoned": "endroid/qr-code", - "time": "2018-05-09 20:26:30" + "time": "2018-05-09T20:26:30+00:00" }, { "name": "fgrosse/phpasn1", @@ -473,7 +474,7 @@ "x509", "x690" ], - "time": "2018-12-02 01:34:34" + "time": "2018-12-02T01:34:34+00:00" }, { "name": "khanamiryan/qrcode-detector-decoder", @@ -523,20 +524,20 @@ "qr", "zxing" ], - "time": "2017-01-13 09:11:46" + "time": "2017-01-13T09:11:46+00:00" }, { "name": "mdanter/ecc", - "version": "v0.5.1", + "version": "v0.5.2", "source": { "type": "git", "url": "https://github.com/phpecc/phpecc.git", - "reference": "9a3aca17c6dfc04bdaad2e7ddab3b8df656ffc5b" + "reference": "b95f25cc1bacc83a9f0ccd375900b7cfd343029e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpecc/phpecc/zipball/9a3aca17c6dfc04bdaad2e7ddab3b8df656ffc5b", - "reference": "9a3aca17c6dfc04bdaad2e7ddab3b8df656ffc5b", + "url": "https://api.github.com/repos/phpecc/phpecc/zipball/b95f25cc1bacc83a9f0ccd375900b7cfd343029e", + "reference": "b95f25cc1bacc83a9f0ccd375900b7cfd343029e", "shasum": "" }, "require": { @@ -595,7 +596,7 @@ "secp256k1", "secp256r1" ], - "time": "2018-12-01 23:35:23" + "time": "2018-12-03T18:17:01+00:00" }, { "name": "mobiledetect/mobiledetectlib", @@ -647,7 +648,7 @@ "mobile detector", "php mobile detect" ], - "time": "2018-09-01 15:05:15" + "time": "2018-09-01T15:05:15+00:00" }, { "name": "myclabs/php-enum", @@ -691,20 +692,20 @@ "keywords": [ "enum" ], - "time": "2018-10-30 14:36:18" + "time": "2018-10-30T14:36:18+00:00" }, { "name": "nesbot/carbon", - "version": "1.36.1", + "version": "1.36.2", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "63da8cdf89d7a5efe43aabc794365f6e7b7b8983" + "reference": "cd324b98bc30290f233dd0e75e6ce49f7ab2a6c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/63da8cdf89d7a5efe43aabc794365f6e7b7b8983", - "reference": "63da8cdf89d7a5efe43aabc794365f6e7b7b8983", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/cd324b98bc30290f233dd0e75e6ce49f7ab2a6c9", + "reference": "cd324b98bc30290f233dd0e75e6ce49f7ab2a6c9", "shasum": "" }, "require": { @@ -749,7 +750,7 @@ "datetime", "time" ], - "time": "2018-11-22 18:23:02" + "time": "2018-12-28T10:07:33+00:00" }, { "name": "predis/predis", @@ -799,7 +800,7 @@ "predis", "redis" ], - "time": "2016-06-16 16:22:20" + "time": "2016-06-16T16:22:20+00:00" }, { "name": "psr/http-message", @@ -849,7 +850,7 @@ "request", "response" ], - "time": "2016-08-06 14:39:51" + "time": "2016-08-06T14:39:51+00:00" }, { "name": "psr/log", @@ -896,7 +897,55 @@ "psr", "psr-3" ], - "time": "2018-11-20 15:27:04" + "time": "2018-11-20T15:27:04+00:00" + }, + { + "name": "psr/simple-cache", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "time": "2017-10-23T01:57:42+00:00" }, { "name": "robmorgan/phinx", @@ -962,11 +1011,11 @@ "migrations", "phinx" ], - "time": "2017-06-05 13:30:19" + "time": "2017-06-05T13:30:19+00:00" }, { "name": "symfony/config", - "version": "v3.4.19", + "version": "v3.4.20", "source": { "type": "git", "url": "https://github.com/symfony/config.git", @@ -1026,11 +1075,11 @@ ], "description": "Symfony Config Component", "homepage": "https://symfony.com", - "time": "2018-11-26 10:17:44" + "time": "2018-11-26T10:17:44+00:00" }, { "name": "symfony/console", - "version": "v3.4.19", + "version": "v3.4.20", "source": { "type": "git", "url": "https://github.com/symfony/console.git", @@ -1095,20 +1144,20 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2018-11-26 12:48:07" + "time": "2018-11-26T12:48:07+00:00" }, { "name": "symfony/contracts", - "version": "v1.0.1", + "version": "v1.0.2", "source": { "type": "git", "url": "https://github.com/symfony/contracts.git", - "reference": "3edf0ab943d1985a356721952cba36ff31bd6e5f" + "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/contracts/zipball/3edf0ab943d1985a356721952cba36ff31bd6e5f", - "reference": "3edf0ab943d1985a356721952cba36ff31bd6e5f", + "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf", + "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf", "shasum": "" }, "require": { @@ -1163,11 +1212,11 @@ "interoperability", "standards" ], - "time": "2018-11-24 09:35:08" + "time": "2018-12-05T08:06:11+00:00" }, { "name": "symfony/debug", - "version": "v4.2.0", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", @@ -1219,11 +1268,11 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2018-11-28 18:24:18" + "time": "2018-11-28T18:24:18+00:00" }, { "name": "symfony/filesystem", - "version": "v4.2.0", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", @@ -1269,11 +1318,11 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2018-11-11 19:52:12" + "time": "2018-11-11T19:52:12+00:00" }, { "name": "symfony/options-resolver", - "version": "v2.8.48", + "version": "v2.8.49", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", @@ -1323,7 +1372,7 @@ "configuration", "options" ], - "time": "2018-11-11 11:18:13" + "time": "2018-11-11T11:18:13+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1381,7 +1430,7 @@ "polyfill", "portable" ], - "time": "2018-08-06 14:22:27" + "time": "2018-08-06T14:22:27+00:00" }, { "name": "symfony/polyfill-mbstring", @@ -1440,11 +1489,11 @@ "portable", "shim" ], - "time": "2018-09-21 13:07:52" + "time": "2018-09-21T13:07:52+00:00" }, { "name": "symfony/property-access", - "version": "v2.8.48", + "version": "v2.8.49", "source": { "type": "git", "url": "https://github.com/symfony/property-access.git", @@ -1501,25 +1550,25 @@ "property path", "reflection" ], - "time": "2018-11-11 11:18:13" + "time": "2018-11-11T11:18:13+00:00" }, { "name": "symfony/translation", - "version": "v4.2.0", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "ff9a878c9b8f8bcd4d9138e2d32f508c942773d9" + "reference": "c0e2191e9bed845946ab3d99767513b56ca7dcd6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/ff9a878c9b8f8bcd4d9138e2d32f508c942773d9", - "reference": "ff9a878c9b8f8bcd4d9138e2d32f508c942773d9", + "url": "https://api.github.com/repos/symfony/translation/zipball/c0e2191e9bed845946ab3d99767513b56ca7dcd6", + "reference": "c0e2191e9bed845946ab3d99767513b56ca7dcd6", "shasum": "" }, "require": { "php": "^7.1.3", - "symfony/contracts": "^1.0", + "symfony/contracts": "^1.0.2", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { @@ -1574,11 +1623,11 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2018-11-27 07:20:32" + "time": "2018-12-06T10:45:32+00:00" }, { "name": "symfony/yaml", - "version": "v3.4.19", + "version": "v3.4.20", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", @@ -1633,7 +1682,7 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2018-11-11 19:48:54" + "time": "2018-11-11T19:48:54+00:00" }, { "name": "zendframework/zend-diactoros", @@ -1697,22 +1746,22 @@ "psr", "psr-7" ], - "time": "2018-09-05 19:29:37" + "time": "2018-09-05T19:29:37+00:00" } ], "packages-dev": [ { "name": "ajgl/breakpoint-twig-extension", - "version": "0.3.1", + "version": "0.3.2", "source": { "type": "git", "url": "https://github.com/ajgarlag/AjglBreakpointTwigExtension.git", - "reference": "360ec6351ad7e1968ee78abb31430046c2e04fc5" + "reference": "bb419d13775d8fb5cd03b31012eaf496b31b444f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ajgarlag/AjglBreakpointTwigExtension/zipball/360ec6351ad7e1968ee78abb31430046c2e04fc5", - "reference": "360ec6351ad7e1968ee78abb31430046c2e04fc5", + "url": "https://api.github.com/repos/ajgarlag/AjglBreakpointTwigExtension/zipball/bb419d13775d8fb5cd03b31012eaf496b31b444f", + "reference": "bb419d13775d8fb5cd03b31012eaf496b31b444f", "shasum": "" }, "require": { @@ -1720,9 +1769,9 @@ "twig/twig": "^1.14|^2.0" }, "require-dev": { - "phpunit/phpunit": "^5", - "symfony/framework-bundle": "^2.7|^3.2", - "symfony/twig-bundle": "^2.7|^3.2" + "symfony/framework-bundle": "^2.7|^3.2|^4.1", + "symfony/phpunit-bridge": "^3.4|^4.1", + "symfony/twig-bundle": "^2.7|^3.2|^4.1" }, "suggest": { "ext-xdebug": "The Xdebug extension is required for the breakpoint to work", @@ -1759,7 +1808,7 @@ "breakpoint", "twig" ], - "time": "2017-11-20 13:04:11" + "time": "2018-12-10T08:22:36+00:00" }, { "name": "aptoma/twig-markdown", @@ -1816,7 +1865,7 @@ "markdown", "twig" ], - "time": "2015-10-23 20:27:08" + "time": "2015-10-23T20:27:08+00:00" }, { "name": "asm89/twig-cache-extension", @@ -1870,24 +1919,24 @@ "extension", "twig" ], - "time": "2017-01-10 22:04:15" + "time": "2017-01-10T22:04:15+00:00" }, { "name": "cakephp/bake", - "version": "1.8.6", + "version": "1.9.1", "source": { "type": "git", "url": "https://github.com/cakephp/bake.git", - "reference": "bfa552a92a01cb1c878b3a3a67899fcd21569818" + "reference": "7ff3b8df337b16d67d9834e6b438d06d9d4974ca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/cakephp/bake/zipball/bfa552a92a01cb1c878b3a3a67899fcd21569818", - "reference": "bfa552a92a01cb1c878b3a3a67899fcd21569818", + "url": "https://api.github.com/repos/cakephp/bake/zipball/7ff3b8df337b16d67d9834e6b438d06d9d4974ca", + "reference": "7ff3b8df337b16d67d9834e6b438d06d9d4974ca", "shasum": "" }, "require": { - "cakephp/cakephp": "^3.6.12", + "cakephp/cakephp": "^3.7.0", "cakephp/plugin-installer": "^1.0", "php": ">=5.6.0", "wyrihaximus/twig-view": "^4.3.4" @@ -1918,24 +1967,24 @@ "bake", "cakephp" ], - "time": "2018-11-17 03:34:24" + "time": "2018-12-12T07:48:52+00:00" }, { "name": "cakephp/debug_kit", - "version": "3.16.6", + "version": "3.17.0", "source": { "type": "git", "url": "https://github.com/cakephp/debug_kit.git", - "reference": "b6a75d47b2b1be6f6db31fbdf60ed5e062f310db" + "reference": "6a9023ecc4ac0983c184cedf8e6142ab8ea4a3ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/cakephp/debug_kit/zipball/b6a75d47b2b1be6f6db31fbdf60ed5e062f310db", - "reference": "b6a75d47b2b1be6f6db31fbdf60ed5e062f310db", + "url": "https://api.github.com/repos/cakephp/debug_kit/zipball/6a9023ecc4ac0983c184cedf8e6142ab8ea4a3ff", + "reference": "6a9023ecc4ac0983c184cedf8e6142ab8ea4a3ff", "shasum": "" }, "require": { - "cakephp/cakephp": "^3.6.0", + "cakephp/cakephp": "^3.7.0", "cakephp/chronos": "^1.0.0", "cakephp/plugin-installer": "^1.0.0", "composer/composer": "^1.3.0", @@ -1978,7 +2027,7 @@ "debug", "kit" ], - "time": "2018-11-22 15:19:18" + "time": "2018-12-02T03:27:26+00:00" }, { "name": "composer/ca-bundle", @@ -2034,7 +2083,7 @@ "ssl", "tls" ], - "time": "2018-10-18 06:09:13" + "time": "2018-10-18T06:09:13+00:00" }, { "name": "composer/composer", @@ -2114,7 +2163,7 @@ "dependency", "package" ], - "time": "2018-12-03 09:31:16" + "time": "2018-12-03T09:31:16+00:00" }, { "name": "composer/semver", @@ -2176,7 +2225,7 @@ "validation", "versioning" ], - "time": "2016-08-30 16:08:34" + "time": "2016-08-30T16:08:34+00:00" }, { "name": "composer/spdx-licenses", @@ -2237,7 +2286,7 @@ "spdx", "validator" ], - "time": "2018-11-01 09:45:54" + "time": "2018-11-01T09:45:54+00:00" }, { "name": "composer/xdebug-handler", @@ -2281,7 +2330,7 @@ "Xdebug", "performance" ], - "time": "2018-11-29 10:59:02" + "time": "2018-11-29T10:59:02+00:00" }, { "name": "dnoegel/php-xdg-base-dir", @@ -2314,7 +2363,7 @@ "MIT" ], "description": "implementation of xdg base directory specification for php", - "time": "2014-10-24 07:27:01" + "time": "2014-10-24T07:27:01+00:00" }, { "name": "jakub-onderka/php-console-color", @@ -2356,7 +2405,7 @@ "email": "jakub.onderka@gmail.com" } ], - "time": "2018-09-29 17:23:10" + "time": "2018-09-29T17:23:10+00:00" }, { "name": "jakub-onderka/php-console-highlighter", @@ -2402,7 +2451,7 @@ } ], "description": "Highlight PHP code in terminal", - "time": "2018-09-29 18:48:56" + "time": "2018-09-29T18:48:56+00:00" }, { "name": "jasny/twig-extensions", @@ -2462,7 +2511,7 @@ "text", "time" ], - "time": "2017-09-13 07:38:01" + "time": "2017-09-13T07:38:01+00:00" }, { "name": "jdorn/sql-formatter", @@ -2512,7 +2561,7 @@ "highlight", "sql" ], - "time": "2014-01-12 16:20:24" + "time": "2014-01-12T16:20:24+00:00" }, { "name": "justinrainbow/json-schema", @@ -2578,20 +2627,20 @@ "json", "schema" ], - "time": "2018-02-14 22:26:30" + "time": "2018-02-14T22:26:30+00:00" }, { "name": "nikic/php-parser", - "version": "v4.1.0", + "version": "v4.1.1", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "d0230c5c77a7e3cfa69446febf340978540958c0" + "reference": "8aae5b59b83bb4d0dbf07b0a835f2680a658f610" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/d0230c5c77a7e3cfa69446febf340978540958c0", - "reference": "d0230c5c77a7e3cfa69446febf340978540958c0", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8aae5b59b83bb4d0dbf07b0a835f2680a658f610", + "reference": "8aae5b59b83bb4d0dbf07b0a835f2680a658f610", "shasum": "" }, "require": { @@ -2629,7 +2678,7 @@ "parser", "php" ], - "time": "2018-10-10 09:24:14" + "time": "2018-12-26T11:32:39+00:00" }, { "name": "psy/psysh", @@ -2703,7 +2752,7 @@ "interactive", "shell" ], - "time": "2018-10-13 15:16:03" + "time": "2018-10-13T15:16:03+00:00" }, { "name": "seld/jsonlint", @@ -2752,7 +2801,7 @@ "parser", "validator" ], - "time": "2018-01-24 12:46:19" + "time": "2018-01-24T12:46:19+00:00" }, { "name": "seld/phar-utils", @@ -2796,11 +2845,11 @@ "keywords": [ "phra" ], - "time": "2015-10-13 18:44:15" + "time": "2015-10-13T18:44:15+00:00" }, { "name": "symfony/finder", - "version": "v4.2.0", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", @@ -2845,7 +2894,7 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2018-11-11 19:52:12" + "time": "2018-11-11T19:52:12+00:00" }, { "name": "symfony/polyfill-php72", @@ -2900,11 +2949,11 @@ "portable", "shim" ], - "time": "2018-09-21 13:07:52" + "time": "2018-09-21T13:07:52+00:00" }, { "name": "symfony/process", - "version": "v4.2.0", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/symfony/process.git", @@ -2949,11 +2998,11 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2018-11-20 16:22:05" + "time": "2018-11-20T16:22:05+00:00" }, { "name": "symfony/var-dumper", - "version": "v4.2.0", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", @@ -3024,20 +3073,20 @@ "debug", "dump" ], - "time": "2018-11-25 12:50:42" + "time": "2018-11-25T12:50:42+00:00" }, { "name": "twig/twig", - "version": "v1.35.4", + "version": "v1.36.0", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "7e081e98378a1e78c29cc9eba4aefa5d78a05d2a" + "reference": "730c9c4471b5152d23061feb02b03382264c8a15" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/7e081e98378a1e78c29cc9eba4aefa5d78a05d2a", - "reference": "7e081e98378a1e78c29cc9eba4aefa5d78a05d2a", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/730c9c4471b5152d23061feb02b03382264c8a15", + "reference": "730c9c4471b5152d23061feb02b03382264c8a15", "shasum": "" }, "require": { @@ -3047,12 +3096,12 @@ "require-dev": { "psr/container": "^1.0", "symfony/debug": "^2.7", - "symfony/phpunit-bridge": "^3.3" + "symfony/phpunit-bridge": "^3.4.19|^4.1.8" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.35-dev" + "dev-master": "1.36-dev" } }, "autoload": { @@ -3090,7 +3139,7 @@ "keywords": [ "templating" ], - "time": "2018-07-13 07:12:17" + "time": "2018-12-16T10:34:11+00:00" }, { "name": "umpirsky/twig-php-function", @@ -3131,27 +3180,27 @@ } ], "description": "Call (almost) any PHP function from your Twig templates.", - "time": "2016-03-12 16:36:32" + "time": "2016-03-12T16:36:32+00:00" }, { "name": "wyrihaximus/twig-view", - "version": "4.3.5", + "version": "4.3.8", "source": { "type": "git", "url": "https://github.com/WyriHaximus/TwigView.git", - "reference": "ec2771e6a1fe799f9b16eff19da424cd04d593b7" + "reference": "a5ec66690aa045d6eda17ab1c8a5baf0efdcfa45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WyriHaximus/TwigView/zipball/ec2771e6a1fe799f9b16eff19da424cd04d593b7", - "reference": "ec2771e6a1fe799f9b16eff19da424cd04d593b7", + "url": "https://api.github.com/repos/WyriHaximus/TwigView/zipball/a5ec66690aa045d6eda17ab1c8a5baf0efdcfa45", + "reference": "a5ec66690aa045d6eda17ab1c8a5baf0efdcfa45", "shasum": "" }, "require": { "ajgl/breakpoint-twig-extension": "^0.3.0", "aptoma/twig-markdown": "^2.0", "asm89/twig-cache-extension": "^1.0", - "cakephp/cakephp": "^3.5", + "cakephp/cakephp": "^3.6", "jasny/twig-extensions": "^1.0", "php": "^5.6 || ^7.0", "twig/twig": "^1.27", @@ -3189,7 +3238,7 @@ "twig", "view" ], - "time": "2018-07-03 15:46:29" + "time": "2018-12-17T21:08:25+00:00" } ], "aliases": [], diff --git a/config/bootstrap.php b/config/bootstrap.php index fbfa9d0..756de4d 100644 --- a/config/bootstrap.php +++ b/config/bootstrap.php @@ -62,7 +62,7 @@ use Cake\Error\ErrorHandler; use Cake\Log\Log; use Cake\Mailer\Email; use Cake\Mailer\TransportFactory; -use Cake\Network\Request; +use Cake\Http\ServerRequest; use Cake\Utility\Inflector; use Cake\Utility\Security; @@ -169,12 +169,12 @@ Security::setSalt(Configure::consume('Security.salt')); /* * Setup detectors for mobile and tablet. */ -Request::addDetector('mobile', function ($request) { +ServerRequest::addDetector('mobile', function ($request) { $detector = new \Detection\MobileDetect(); return $detector->isMobile(); }); -Request::addDetector('tablet', function ($request) { +ServerRequest::addDetector('tablet', function ($request) { $detector = new \Detection\MobileDetect(); return $detector->isTablet(); diff --git a/src/Controller/MainController.php b/src/Controller/MainController.php index eae6609..a2b7f58 100644 --- a/src/Controller/MainController.php +++ b/src/Controller/MainController.php @@ -223,15 +223,7 @@ class MainController extends AppController { $blocks[$i]->transaction_count = count($tx_hashes); } - $transactions = $this->Transactions->find()->select(['Transactions.id', 'Transactions.hash', 'Transactions.input_count', 'Transactions.output_count', 'Transactions.transaction_time', 'Transactions.created_at'])->order(['Transactions.created_at' => 'desc'])->limit(10)->toArray(); - foreach($transactions as $tx) { - $value = 0; - $outputs = $this->Outputs->find()->where(['transaction_id' => $tx->id])->toArray(); - foreach($outputs as $output) { - $value += $output->value; - } - $tx->value = $value; - } + $transactions = $this->Transactions->find()->select(['Transactions.id', 'Transactions.hash', 'Transactions.value', 'Transactions.input_count', 'Transactions.output_count', 'Transactions.transaction_time', 'Transactions.created_at'])->order(['Transactions.created_at' => 'desc'])->limit(10)->toArray(); $this->set('blocks', $blocks); $this->set('txs', $transactions); @@ -333,7 +325,7 @@ class MainController extends AppController { } // Get the basic block transaction info - $txs = $this->Transactions->find()->select(['Transactions.id', 'Transactions.input_count', 'Transactions.output_count', 'Transactions.hash', 'Transactions.version'])->select(['value' => 'sum(O.value)'])->leftJoin(['O' => 'output'], ['O.transaction_id = Transactions.id'])->where(['Transactions.block_hash_id' => $block->hash])->toArray(); + $txs = $this->Transactions->find()->select(['Transactions.id', 'Transactions.value', 'Transactions.input_count', 'Transactions.output_count', 'Transactions.hash', 'Transactions.version'])->where(['Transactions.block_hash_id' => $block->hash])->toArray(); $this->set('block', $block); $this->set('blockTxs', $txs); } @@ -349,8 +341,7 @@ class MainController extends AppController { $sourceAddress = $this->request->query('address'); - $tx = $this->Transactions->find()->select( - ['Transactions.id', 'Transactions.block_hash_id', 'Transactions.input_count', 'Transactions.output_count', 'Transactions.hash', 'Transactions.transaction_time', 'Transactions.transaction_size', 'Transactions.created_at', 'Transactions.version', 'Transactions.lock_time', 'Transactions.raw'])->select(['value' => 'sum(O.value)'])->leftJoin(['O' => 'output'], ['O.transaction_id = Transactions.id'])->where(['Transactions.hash' => $hash])->first(); + $tx = $this->Transactions->find()->where(['Transactions.hash' => $hash])->first(); if (!$tx) { return $this->redirect('/'); } @@ -403,13 +394,14 @@ class MainController extends AppController { $this->loadModel('Addresses'); // exclude bHW58d37s1hBjj3wPBkn5zpCX3F8ZW3uWf (genesis block) - $richList = $this->Addresses->find()->where(['address <>' => 'bHW58d37s1hBjj3wPBkn5zpCX3F8ZW3uWf'])->order(['Balance' => 'DESC'])->limit(500)->toArray(); + $richList = $this->Addresses->find()->where(['address <>' => 'bHW58d37s1hBjj3wPBkn5zpCX3F8ZW3uWf'])->order(['balance' => 'DESC'])->limit(500)->toArray(); $priceRate = 0; - //$priceInfo = json_decode($this->redis->get(self::lbcPriceKey)); - $priceInfo->price = 0.05; - if (isset($priceInfo->price)) { - $priceRate = $priceInfo->price; + if(isset($this->redis)) { + $priceInfo = json_decode($this->redis->get(self::lbcPriceKey)); + if (isset($priceInfo->price)) { + $priceRate = $priceInfo->price; + } } $lbryAddresses = ['rFLUohPG4tP3gZHYoyhvADCtrDMiaYb7Qd', 'r9PGXsejVJb9ZfMf3QVdDEJCzxkd9JLxzL', 'r9srwX7DEN7Mex3a8oR1mKSqQmLBizoJvi', 'bRo4FEeqqxY7nWFANsZsuKEWByEgkvz8Qt', 'bU2XUzckfpdEuQNemKvhPT1gexQ3GG3SC2', 'bay3VA6YTQBL4WLobbG7CthmoGeUKXuXkD', 'bLPbiXBp6Vr3NSnsHzDsLNzoy5o36re9Cz', 'bMvUBo1h5WS46ThHtmfmXftz3z33VHL7wc', 'bVUrbCK8hcZ5XWti7b9eNxKEBxzc1rr393', 'bZja2VyhAC84a9hMwT8dwTU6rDRXowrjxH', 'bMvUBo1h5WS46ThHtmfmXftz3z33VHL7wc', 'bMgqQqYfwzWWYBk5o5dBMXtCndVAoeqy6h', 'bMvUBo1h5WS46ThHtmfmXftz3z33VHL7wc']; @@ -417,15 +409,15 @@ class MainController extends AppController { $maxBalance = 0; $minBalance = 0; foreach ($richList as $item) { - $totalBalance = bcadd($totalBalance, $item->Balance, 8); - $minBalance = $minBalance == 0 ? $item->Balance : min($minBalance, $item->Balance); - $maxBalance = max($maxBalance, $item->Balance); + $totalBalance = bcadd($totalBalance, $item->balance, 8); + $minBalance = $minBalance == 0 ? $item->balance : min($minBalance, $item->balance); + $maxBalance = max($maxBalance, $item->balance); } for ($i = 0; $i < count($richList); $i++) { $item = $richList[$i]; - $percentage = bcdiv($item->Balance, $totalBalance, 8) * 100; + $percentage = bcdiv($item->balance, $totalBalance, 8) * 100; $richList[$i]->Top500Percent = $percentage; - $richList[$i]->MinMaxPercent = bcdiv($item->Balance, $maxBalance, 8) * 100; + $richList[$i]->MinMaxPercent = bcdiv($item->balance, $maxBalance, 8) * 100; } $this->set('richList', $richList); @@ -624,10 +616,7 @@ class MainController extends AppController { // Load 10 transactions $this->autoRender = false; $this->loadModel('Transactions'); - $txs = $this->Transactions->find()->select(['id', 'Hash' => 'hash', 'InputCount' => 'input_count', 'OutputCount' => 'output_count', 'TxTime' => 'transaction_time'])->order(['TxTime' => 'desc'])->limit(10); - foreach($txs as $tx) { - $tx->Value = $tx->value(); - } + $txs = $this->Transactions->find()->select(['id', 'Value' => 'value', 'Hash' => 'hash', 'InputCount' => 'input_count', 'OutputCount' => 'output_count', 'TxTime' => 'transaction_time'])->order(['TxTime' => 'desc'])->limit(10); $this->_jsonResponse(['success' => true, 'txs' => $txs]); } @@ -740,18 +729,12 @@ class MainController extends AppController { return $this->_jsonError('Base58 address not specified.', 400); } - $address = $this->Addresses->find()->select(['id'])->where(['address' => $base58address])->first(); + $address = $this->Addresses->find()->select(['id', 'balance'])->where(['address' => $base58address])->first(); if (!$address) { return $this->_jsonError('Could not find address.', 400); } - $transaction_addresses = $this->TransactionAddress->find()->where(['address_id' => $address->id])->toArray(); - $balance = 0; - foreach($transaction_addresses as $ta) { - $balance += $ta->credit_amount; - $balance -= $ta->debit_amount; - } - return $this->_jsonResponse(['success' => true, ['balance' => ['confirmed' => $balance, 'unconfirmed' => 0]]]); + return $this->_jsonResponse(['success' => true, ['balance' => ['confirmed' => $address->balance, 'unconfirmed' => 0]]]); } public function apiaddrutxo($base58address = null) { @@ -817,9 +800,9 @@ class MainController extends AppController { $reservedaux = ['bRo4FEeqqxY7nWFANsZsuKEWByEgkvz8Qt', 'bU2XUzckfpdEuQNemKvhPT1gexQ3GG3SC2', 'bay3VA6YTQBL4WLobbG7CthmoGeUKXuXkD', 'bLPbiXBp6Vr3NSnsHzDsLNzoy5o36re9Cz', 'bMvUBo1h5WS46ThHtmfmXftz3z33VHL7wc', 'bVUrbCK8hcZ5XWti7b9eNxKEBxzc1rr393', 'bZja2VyhAC84a9hMwT8dwTU6rDRXowrjxH', 'bCrboXVztuSbZzVToCWSsu1pEr2oxKHu9v', 'bMgqQqYfwzWWYBk5o5dBMXtCndVAoeqy6h']; $allAddresses = array_merge($reservedcommunity, $reservedoperational, $reservedinstitutional, $reservedaux); - $reservedtotal = $this->Addresses->find()->select(['id'])->select(['credit_amount' => 'sum(TA.credit_amount)', 'debit_amount' => 'sum(TA.debit_amount)'])->leftJoin(['TA' => 'transaction_address'], ['TA.address_id = Addresses.id'])->where(['Addresses.address IN' => $allAddresses])->first(); + $reservedtotal = $this->Addresses->find()->select(['id', 'balance' => 'SUM(balance)'])->where(['Addresses.address IN' => $allAddresses])->first(); - $circulating = $txoutsetinfo->total_amount - ($reservedtotal->credit_amount - $reservedtotal->debit_amount); + $circulating = $txoutsetinfo->total_amount - ($reservedtotal->balance); return $this->_jsonResponse(['success' => true, 'utxosupply' => ['total' => $txoutsetinfo->total_amount, 'circulating' => $circulating]]); } diff --git a/src/Model/Entity/Transaction.php b/src/Model/Entity/Transaction.php index aa0ed81..60fccfc 100644 --- a/src/Model/Entity/Transaction.php +++ b/src/Model/Entity/Transaction.php @@ -6,16 +6,6 @@ use Cake\ORM\Entity; use Cake\ORM\TableRegistry; class Transaction extends Entity { - public function value() { - $OutputModel = TableRegistry::get('Outputs'); - $outputs = $OutputModel->find()->select(['value'])->where(['transaction_id' => $this->id])->toArray(); - $value = 0; - foreach($outputs as $o) { - $value += $o->value; - } - return $value; - } - } ?> \ No newline at end of file diff --git a/src/Template/Main/blocks.ctp b/src/Template/Main/blocks.ctp index 45429a0..45c3b8d 100644 --- a/src/Template/Main/blocks.ctp +++ b/src/Template/Main/blocks.ctp @@ -112,7 +112,7 @@
hash ?>
input_count ?> output_count ?> -
Amount->formatCurrency($tx->value()) ?> LBC
+
Amount->formatCurrency($tx->value) ?> LBC
diff --git a/src/Template/Main/stats.ctp b/src/Template/Main/stats.ctp index 84609c2..974b2c9 100644 --- a/src/Template/Main/stats.ctp +++ b/src/Template/Main/stats.ctp @@ -47,8 +47,8 @@ - Address ?> - Address, $lbryAddresses)): ?> + address ?> + address, $lbryAddresses)): ?> @@ -58,16 +58,14 @@ TagUrl)) > 0): ?>Tag ?>Tag; endif; ?> - Balance, 8, '.', ',') ?> - $Balance, $rate, 8), 2, '.', ',') ?> - FirstSeen->format('d M Y H:i:s') . ' UTC'; ?> + balance, 8, '.', ',') ?> + $balance, $rate, 8), 2, '.', ',') ?> + first_seen->format('d M Y H:i:s') . ' UTC'; ?>
Top500Percent, 5, '.', '') ?>%
-
- diff --git a/src/Template/Main/tx.ctp b/src/Template/Main/tx.ctp index bd2bf29..0a7e8aa 100644 --- a/src/Template/Main/tx.ctp +++ b/src/Template/Main/tx.ctp @@ -47,7 +47,7 @@
Amount (LBC)
-
Amount->format($tx->value()) ?>
+
Amount->format($tx->value) ?>
diff --git a/src/View/AjaxView.php b/src/View/AjaxView.php index 594e2d8..6c20b5e 100644 --- a/src/View/AjaxView.php +++ b/src/View/AjaxView.php @@ -15,7 +15,7 @@ namespace App\View; use Cake\Event\EventManager; -use Cake\Network\Request; +use Cake\Http\ServerRequest; use Cake\Network\Response; /**