From b66a61addb6c8e66cb26fcf74b532d68891267e4 Mon Sep 17 00:00:00 2001 From: Marvin Borner Date: Wed, 23 May 2018 22:23:28 +0200 Subject: Refactored code, many fixes and improvements in chat backend+frontend --- .../app/sprinkles/FormGenerator/asset-bundles.json | 26 +- .../assets/js/widget-formGenerator.js | 101 +- main/app/sprinkles/FormGenerator/bower.json | 56 +- main/app/sprinkles/FormGenerator/composer.json | 48 +- .../FormGenerator/routes/FormGenerator.php | 2 +- .../src/Controller/FormGeneratorController.php | 4 +- .../sprinkles/FormGenerator/src/Element/Alert.php | 7 +- .../FormGenerator/src/Element/BaseInput.php | 12 +- .../FormGenerator/src/Element/Checkbox.php | 11 +- .../sprinkles/FormGenerator/src/Element/Hidden.php | 7 +- .../FormGenerator/src/Element/InputInterface.php | 7 +- .../sprinkles/FormGenerator/src/Element/Select.php | 7 +- .../sprinkles/FormGenerator/src/Element/Text.php | 7 +- .../FormGenerator/src/Element/Textarea.php | 7 +- main/app/sprinkles/FormGenerator/src/Form.php | 40 +- .../FormGenerator/FormGenerator.html.twig | 34 +- .../templates/FormGenerator/confirm.html.twig | 52 +- .../templates/FormGenerator/macros/alert.html.twig | 4 +- .../FormGenerator/macros/checkbox.html.twig | 2 +- .../FormGenerator/macros/hidden.html.twig | 2 +- .../FormGenerator/macros/select.html.twig | 6 +- .../templates/FormGenerator/macros/text.html.twig | 10 +- .../FormGenerator/macros/textarea.html.twig | 5 +- .../templates/FormGenerator/modal.html.twig | 93 +- .../templates/FormGenerator/typehead.html.twig | 20 +- .../FormGenerator/tests/Unit/FormGeneratorTest.php | 28 +- .../FormGenerator/tests/Unit/data/bad.json | 18 +- .../FormGenerator/tests/Unit/data/good.json | 128 +- .../userfrosting/js/pages/account-settings.js | 6 +- .../userfrosting/js/pages/forgot-password.js | 4 +- .../userfrosting/js/pages/resend-verification.js | 4 +- .../userfrosting/js/pages/set-or-reset-password.js | 4 +- .../assets/userfrosting/js/pages/sign-in.js | 6 +- main/app/sprinkles/account/bower.json | 52 +- main/app/sprinkles/account/composer.json | 46 +- main/app/sprinkles/account/config/default.php | 140 +- main/app/sprinkles/account/config/production.php | 124 +- main/app/sprinkles/account/factories/Users.php | 2 +- main/app/sprinkles/account/locale/ar/messages.php | 144 +- main/app/sprinkles/account/locale/ar/validate.php | 2 +- .../sprinkles/account/locale/de_DE/messages.php | 204 +- .../sprinkles/account/locale/de_DE/validate.php | 4 +- .../sprinkles/account/locale/en_US/messages.php | 152 +- .../sprinkles/account/locale/en_US/validate.php | 2 +- .../sprinkles/account/locale/es_ES/messages.php | 16 +- .../sprinkles/account/locale/es_ES/validate.php | 2 +- main/app/sprinkles/account/locale/fa/messages.php | 138 +- main/app/sprinkles/account/locale/fa/validate.php | 2 +- .../sprinkles/account/locale/fr_FR/messages.php | 126 +- .../sprinkles/account/locale/fr_FR/validate.php | 2 +- .../sprinkles/account/locale/it_IT/messages.php | 152 +- .../sprinkles/account/locale/it_IT/validate.php | 2 +- .../sprinkles/account/locale/pt_PT/messages.php | 130 +- .../sprinkles/account/locale/pt_PT/validate.php | 2 +- .../sprinkles/account/locale/ru_RU/messages.php | 152 +- .../sprinkles/account/locale/ru_RU/validate.php | 2 +- .../sprinkles/account/locale/th_TH/messages.php | 128 +- .../sprinkles/account/locale/th_TH/validate.php | 2 +- main/app/sprinkles/account/locale/tr/messages.php | 152 +- main/app/sprinkles/account/locale/tr/validate.php | 2 +- .../sprinkles/account/locale/zh_CN/messages.php | 138 +- .../sprinkles/account/locale/zh_CN/validate.php | 2 +- main/app/sprinkles/account/src/Account.php | 1 + .../account/src/Authenticate/AuthGuard.php | 13 +- .../Exception/AccountDisabledException.php | 1 + .../Exception/AccountInvalidException.php | 1 + .../Exception/AccountNotVerifiedException.php | 1 + .../Exception/AuthCompromisedException.php | 1 + .../Exception/AuthExpiredException.php | 1 + .../Exception/InvalidCredentialsException.php | 1 + .../sprinkles/account/src/Authenticate/Hasher.php | 29 +- .../src/Authorize/AccessConditionExpression.php | 23 +- .../src/Authorize/AuthorizationException.php | 1 + .../account/src/Authorize/AuthorizationManager.php | 30 +- .../src/Authorize/ParserNodeFunctionEvaluator.php | 40 +- .../account/src/Bakery/CreateAdminUser.php | 77 +- .../account/src/Controller/AccountController.php | 154 +- .../Exception/SpammyRequestException.php | 1 + .../Database/Migrations/v400/ActivitiesTable.php | 7 +- .../src/Database/Migrations/v400/GroupsTable.php | 11 +- .../Migrations/v400/PasswordResetsTable.php | 7 +- .../Migrations/v400/PermissionRolesTable.php | 7 +- .../Database/Migrations/v400/PermissionsTable.php | 12 +- .../Database/Migrations/v400/PersistencesTable.php | 7 +- .../Database/Migrations/v400/RoleUsersTable.php | 7 +- .../src/Database/Migrations/v400/RolesTable.php | 7 +- .../src/Database/Migrations/v400/UsersTable.php | 7 +- .../Migrations/v400/VerificationsTable.php | 7 +- .../account/src/Database/Models/Activity.php | 13 +- .../account/src/Database/Models/Group.php | 9 +- .../account/src/Database/Models/PasswordReset.php | 12 +- .../account/src/Database/Models/Permission.php | 22 +- .../sprinkles/account/src/Database/Models/Role.php | 22 +- .../account/src/Database/Models/Verification.php | 12 +- .../Handler/AuthCompromisedExceptionHandler.php | 4 +- .../Error/Handler/AuthExpiredExceptionHandler.php | 8 +- .../Error/Handler/ForbiddenExceptionHandler.php | 4 +- .../app/sprinkles/account/src/Facades/Password.php | 4 +- .../src/Log/UserActivityDatabaseHandler.php | 4 +- .../account/src/Log/UserActivityProcessor.php | 11 +- .../src/Repository/PasswordResetRepository.php | 4 +- .../account/src/Repository/TokenRepository.php | 57 +- .../src/Repository/VerificationRepository.php | 4 +- .../src/ServicesProvider/ServicesProvider.php | 32 +- .../account/src/Twig/AccountExtension.php | 17 +- .../account/src/Util/HashFailedException.php | 1 + main/app/sprinkles/account/src/Util/Util.php | 4 +- .../templates/forms/settings-account.html.twig | 28 +- .../templates/forms/settings-profile.html.twig | 27 +- .../templates/mail/password-reset.html.twig | 38 +- .../templates/mail/resend-verification.html.twig | 27 +- .../templates/mail/verify-account.html.twig | 33 +- .../account/templates/modals/tos.html.twig | 2 +- .../templates/navigation/main-nav.html.twig | 4 +- .../templates/navigation/user-card.html.twig | 62 +- .../templates/pages/account-settings.html.twig | 4 +- .../templates/pages/error/compromised.html.twig | 4 +- .../templates/pages/forgot-password.html.twig | 39 +- .../account/templates/pages/register.html.twig | 160 +- .../templates/pages/resend-verification.html.twig | 39 +- .../templates/pages/reset-password.html.twig | 46 +- .../account/templates/pages/sign-in.html.twig | 114 +- .../sprinkles/account/tests/Unit/FactoriesTest.php | 4 +- .../sprinkles/account/tests/Unit/HasherTest.php | 10 +- main/app/sprinkles/admin/asset-bundles.json | 332 +- .../assets/userfrosting/js/pages/activities.js | 2 +- .../assets/userfrosting/js/pages/dashboard.js | 12 +- .../admin/assets/userfrosting/js/pages/group.js | 2 +- .../admin/assets/userfrosting/js/pages/groups.js | 2 +- .../assets/userfrosting/js/pages/permission.js | 2 +- .../assets/userfrosting/js/pages/permissions.js | 2 +- .../admin/assets/userfrosting/js/pages/role.js | 2 +- .../admin/assets/userfrosting/js/pages/roles.js | 2 +- .../admin/assets/userfrosting/js/pages/user.js | 2 +- .../admin/assets/userfrosting/js/pages/users.js | 2 +- .../admin/assets/userfrosting/js/widgets/groups.js | 22 +- .../admin/assets/userfrosting/js/widgets/roles.js | 41 +- main/app/sprinkles/admin/composer.json | 42 +- main/app/sprinkles/admin/locale/ar/messages.php | 128 +- main/app/sprinkles/admin/locale/de_DE/messages.php | 220 +- main/app/sprinkles/admin/locale/en_US/messages.php | 166 +- main/app/sprinkles/admin/locale/es_ES/messages.php | 2 +- main/app/sprinkles/admin/locale/fa/messages.php | 184 +- main/app/sprinkles/admin/locale/fr_FR/messages.php | 140 +- main/app/sprinkles/admin/locale/it_IT/messages.php | 170 +- main/app/sprinkles/admin/locale/pt_PT/messages.php | 128 +- main/app/sprinkles/admin/locale/ru_RU/messages.php | 166 +- main/app/sprinkles/admin/locale/th_TH/messages.php | 126 +- main/app/sprinkles/admin/locale/tr/messages.php | 166 +- main/app/sprinkles/admin/locale/zh_CN/messages.php | 160 +- main/app/sprinkles/admin/routes/admin.php | 2 +- main/app/sprinkles/admin/src/Admin.php | 1 + .../admin/src/Controller/ActivityController.php | 7 +- .../admin/src/Controller/GroupController.php | 69 +- .../admin/src/Controller/PermissionController.php | 16 +- .../admin/src/Controller/RoleController.php | 84 +- .../admin/src/Controller/UserController.php | 4 +- .../admin/src/Controller/WormholeController.php | 2 +- .../src/ServicesProvider/ServicesProvider.php | 12 +- .../admin/src/Sprunje/ActivitySprunje.php | 10 +- .../sprinkles/admin/src/Sprunje/GroupSprunje.php | 4 +- .../admin/src/Sprunje/PermissionSprunje.php | 17 +- .../admin/src/Sprunje/PermissionUserSprunje.php | 4 +- .../sprinkles/admin/src/Sprunje/RoleSprunje.php | 9 +- .../admin/src/Sprunje/UserPermissionSprunje.php | 4 +- .../sprinkles/admin/src/Sprunje/UserSprunje.php | 33 +- .../admin/templates/forms/group.html.twig | 81 +- .../sprinkles/admin/templates/forms/role.html.twig | 65 +- .../sprinkles/admin/templates/forms/user.html.twig | 181 +- .../admin/templates/mail/password-create.html.twig | 32 +- .../templates/modals/confirm-clear-cache.html.twig | 28 +- .../modals/confirm-delete-group.html.twig | 27 +- .../templates/modals/confirm-delete-role.html.twig | 27 +- .../templates/modals/confirm-delete-user.html.twig | 27 +- .../admin/templates/modals/group.html.twig | 2 +- .../modals/role-manage-permissions.html.twig | 88 +- .../admin/templates/modals/role.html.twig | 2 +- .../templates/modals/user-manage-roles.html.twig | 85 +- .../templates/modals/user-set-password.html.twig | 101 +- .../admin/templates/modals/user.html.twig | 2 +- .../templates/navigation/sidebar-menu.html.twig | 57 +- .../templates/navigation/sidebar-user.html.twig | 14 +- .../admin/templates/navigation/sidebar.html.twig | 8 +- .../admin/templates/navigation/user-card.html.twig | 3 +- .../templates/pages/abstract/dashboard.html.twig | 109 +- .../admin/templates/pages/activities.html.twig | 13 +- .../admin/templates/pages/dashboard.html.twig | 414 +- .../admin/templates/pages/group.html.twig | 55 +- .../admin/templates/pages/groups.html.twig | 21 +- .../admin/templates/pages/permission.html.twig | 52 +- .../admin/templates/pages/permissions.html.twig | 16 +- .../sprinkles/admin/templates/pages/role.html.twig | 76 +- .../admin/templates/pages/roles.html.twig | 17 +- .../sprinkles/admin/templates/pages/user.html.twig | 141 +- .../admin/templates/pages/users.html.twig | 27 +- .../admin/templates/tables/activities.html.twig | 19 +- .../admin/templates/tables/groups.html.twig | 19 +- .../admin/templates/tables/permissions.html.twig | 15 +- .../admin/templates/tables/roles.html.twig | 21 +- .../admin/templates/tables/users.html.twig | 46 +- .../admin/tests/Integration/SprunjeTests.php | 6 +- main/app/sprinkles/core/asset-bundles.json | 274 +- .../sprinkles/core/assets/SiteAssets/css/main.css | 1 - .../sprinkles/core/assets/SiteAssets/js/chat.js | 18 +- .../core/assets/SiteAssets/js/language.js | 36 - .../sprinkles/core/assets/SiteAssets/js/main.js | 18 +- .../core/assets/SiteAssets/js/openpgp.worker.js | 1 - .../php/Chatserver/src/ChatProcessor.php | 27 +- .../core/assets/SiteAssets/php/composer.json | 16 +- .../core/assets/SiteAssets/php/scripts.php | 2 + .../core/assets/SiteAssets/php/stylesheet.php | 2 + .../php/vendor/cboden/ratchet/composer.json | 70 +- .../php/vendor/cboden/ratchet/phpunit.xml.dist | 16 +- .../src/Ratchet/AbstractConnectionDecorator.php | 4 +- .../php/vendor/cboden/ratchet/src/Ratchet/App.php | 37 +- .../ratchet/src/Ratchet/ComponentInterface.php | 6 +- .../ratchet/src/Ratchet/ConnectionInterface.php | 4 +- .../src/Ratchet/Http/CloseResponseTrait.php | 7 +- .../ratchet/src/Ratchet/Http/HttpRequestParser.php | 9 +- .../cboden/ratchet/src/Ratchet/Http/HttpServer.php | 15 +- .../src/Ratchet/Http/HttpServerInterface.php | 11 +- .../src/Ratchet/Http/NoOpHttpServerController.php | 7 +- .../ratchet/src/Ratchet/Http/OriginCheck.php | 9 +- .../cboden/ratchet/src/Ratchet/Http/Router.php | 11 +- .../src/Ratchet/MessageComponentInterface.php | 4 +- .../ratchet/src/Ratchet/MessageInterface.php | 6 +- .../ratchet/src/Ratchet/Server/EchoServer.php | 5 +- .../ratchet/src/Ratchet/Server/FlashPolicy.php | 33 +- .../ratchet/src/Ratchet/Server/IoConnection.php | 5 +- .../cboden/ratchet/src/Ratchet/Server/IoServer.php | 33 +- .../ratchet/src/Ratchet/Server/IpBlackList.php | 7 +- .../Ratchet/Session/Serialize/HandlerInterface.php | 4 +- .../Ratchet/Session/Serialize/PhpBinaryHandler.php | 10 +- .../src/Ratchet/Session/Serialize/PhpHandler.php | 12 +- .../src/Ratchet/Session/SessionProvider.php | 71 +- .../Ratchet/Session/Storage/Proxy/VirtualProxy.php | 7 +- .../Session/Storage/VirtualSessionStorage.php | 27 +- .../cboden/ratchet/src/Ratchet/Wamp/Exception.php | 4 +- .../ratchet/src/Ratchet/Wamp/JsonException.php | 16 +- .../ratchet/src/Ratchet/Wamp/ServerProtocol.php | 39 +- .../cboden/ratchet/src/Ratchet/Wamp/Topic.php | 5 +- .../ratchet/src/Ratchet/Wamp/TopicManager.php | 5 +- .../ratchet/src/Ratchet/Wamp/WampConnection.php | 33 +- .../cboden/ratchet/src/Ratchet/Wamp/WampServer.php | 5 +- .../src/Ratchet/Wamp/WampServerInterface.php | 23 +- .../ratchet/src/Ratchet/WebSocket/ConnContext.php | 5 +- .../Ratchet/WebSocket/MessageCallableInterface.php | 5 +- .../WebSocket/MessageComponentInterface.php | 5 +- .../ratchet/src/Ratchet/WebSocket/WsConnection.php | 9 +- .../ratchet/src/Ratchet/WebSocket/WsServer.php | 52 +- .../src/Ratchet/WebSocket/WsServerInterface.php | 4 +- .../ratchet/tests/autobahn/bin/fuzzingserver.php | 30 +- .../ratchet/tests/autobahn/fuzzingclient-all.json | 52 +- .../tests/autobahn/fuzzingclient-profile.json | 37 +- .../tests/autobahn/fuzzingclient-quick.json | 28 +- .../php/vendor/cboden/ratchet/tests/bootstrap.php | 4 +- .../Ratchet/AbstractMessageComponentTestCase.php | 10 +- .../tests/helpers/Ratchet/Mock/Component.php | 7 +- .../tests/helpers/Ratchet/Mock/Connection.php | 11 +- .../helpers/Ratchet/Mock/ConnectionDecorator.php | 9 +- .../tests/helpers/Ratchet/Mock/WampComponent.php | 5 +- .../tests/helpers/Ratchet/NullComponent.php | 29 +- .../Ratchet/Wamp/Stub/WsWampServerInterface.php | 5 +- .../WebSocket/Stub/WsMessageComponentInterface.php | 5 +- .../tests/unit/AbstractConnectionDecoratorTest.php | 17 +- .../tests/unit/Http/HttpRequestParserTest.php | 16 +- .../ratchet/tests/unit/Http/HttpServerTest.php | 17 +- .../ratchet/tests/unit/Http/OriginCheckTest.php | 5 +- .../cboden/ratchet/tests/unit/Http/RouterTest.php | 25 +- .../ratchet/tests/unit/Server/EchoServerTest.php | 5 +- .../tests/unit/Server/FlashPolicyComponentTest.php | 87 +- .../ratchet/tests/unit/Server/IoConnectionTest.php | 5 +- .../ratchet/tests/unit/Server/IoServerTest.php | 13 +- .../tests/unit/Server/IpBlackListComponentTest.php | 20 +- .../unit/Session/Serialize/PhpHandlerTest.php | 17 +- .../tests/unit/Session/SessionComponentTest.php | 23 +- .../Storage/VirtualSessionStoragePDOTest.php | 7 +- .../ratchet/tests/unit/Wamp/ServerProtocolTest.php | 67 +- .../ratchet/tests/unit/Wamp/TopicManagerTest.php | 52 +- .../cboden/ratchet/tests/unit/Wamp/TopicTest.php | 48 +- .../ratchet/tests/unit/Wamp/WampConnectionTest.php | 18 +- .../ratchet/tests/unit/Wamp/WampServerTest.php | 13 +- .../SiteAssets/php/vendor/composer/ClassLoader.php | 154 +- .../php/vendor/composer/autoload_real.php | 17 +- .../php/vendor/composer/autoload_static.php | 261 +- .../SiteAssets/php/vendor/composer/installed.json | 2246 +++--- .../php/vendor/evenement/evenement/composer.json | 57 +- .../examples/benchmark-emit-no-arguments.php | 9 +- .../evenement/examples/benchmark-emit-once.php | 9 +- .../examples/benchmark-emit-one-argument.php | 9 +- .../evenement/examples/benchmark-emit.php | 9 +- .../examples/benchmark-remove-listener-once.php | 13 +- .../src/Evenement/EventEmitterInterface.php | 9 +- .../evenement/src/Evenement/EventEmitterTrait.php | 40 +- .../tests/Evenement/Tests/EventEmitterTest.php | 168 +- .../evenement/tests/Evenement/Tests/Listener.php | 18 +- .../evenement/tests/Evenement/Tests/functions.php | 3 +- .../php/vendor/guzzlehttp/psr7/composer.json | 78 +- .../vendor/guzzlehttp/psr7/src/AppendStream.php | 82 +- .../vendor/guzzlehttp/psr7/src/BufferStream.php | 59 +- .../vendor/guzzlehttp/psr7/src/CachingStream.php | 33 +- .../vendor/guzzlehttp/psr7/src/DroppingStream.php | 11 +- .../php/vendor/guzzlehttp/psr7/src/FnStream.php | 62 +- .../vendor/guzzlehttp/psr7/src/InflateStream.php | 7 +- .../vendor/guzzlehttp/psr7/src/LazyOpenStream.php | 9 +- .../php/vendor/guzzlehttp/psr7/src/LimitStream.php | 38 +- .../vendor/guzzlehttp/psr7/src/MessageTrait.php | 42 +- .../vendor/guzzlehttp/psr7/src/MultipartStream.php | 37 +- .../vendor/guzzlehttp/psr7/src/NoSeekStream.php | 9 +- .../php/vendor/guzzlehttp/psr7/src/PumpStream.php | 72 +- .../php/vendor/guzzlehttp/psr7/src/Request.php | 40 +- .../php/vendor/guzzlehttp/psr7/src/Response.php | 32 +- .../vendor/guzzlehttp/psr7/src/ServerRequest.php | 97 +- .../php/vendor/guzzlehttp/psr7/src/Stream.php | 113 +- .../guzzlehttp/psr7/src/StreamDecoratorTrait.php | 62 +- .../vendor/guzzlehttp/psr7/src/StreamWrapper.php | 68 +- .../vendor/guzzlehttp/psr7/src/UploadedFile.php | 79 +- .../php/vendor/guzzlehttp/psr7/src/Uri.php | 161 +- .../vendor/guzzlehttp/psr7/src/UriNormalizer.php | 32 +- .../php/vendor/guzzlehttp/psr7/src/UriResolver.php | 34 +- .../php/vendor/guzzlehttp/psr7/src/functions.php | 150 +- .../php/vendor/kriswallsmith/assetic/composer.json | 112 +- .../assetic/src/Assetic/Asset/AssetCache.php | 62 +- .../assetic/src/Assetic/Asset/AssetCollection.php | 99 +- .../src/Assetic/Asset/AssetCollectionInterface.php | 12 +- .../assetic/src/Assetic/Asset/AssetInterface.php | 4 +- .../assetic/src/Assetic/Asset/AssetReference.php | 67 +- .../assetic/src/Assetic/Asset/BaseAsset.php | 67 +- .../assetic/src/Assetic/Asset/FileAsset.php | 21 +- .../assetic/src/Assetic/Asset/GlobAsset.php | 44 +- .../assetic/src/Assetic/Asset/HttpAsset.php | 25 +- .../Iterator/AssetCollectionFilterIterator.php | 25 +- .../Asset/Iterator/AssetCollectionIterator.php | 45 +- .../assetic/src/Assetic/Asset/StringAsset.php | 16 +- .../assetic/src/Assetic/AssetManager.php | 17 +- .../assetic/src/Assetic/AssetWriter.php | 29 +- .../assetic/src/Assetic/Cache/ApcCache.php | 16 +- .../assetic/src/Assetic/Cache/ArrayCache.php | 14 +- .../assetic/src/Assetic/Cache/CacheInterface.php | 2 +- .../assetic/src/Assetic/Cache/ConfigCache.php | 38 +- .../assetic/src/Assetic/Cache/ExpiringCache.php | 27 +- .../assetic/src/Assetic/Cache/FilesystemCache.php | 37 +- .../src/Assetic/Exception/FilterException.php | 21 +- .../Assetic/Extension/Twig/AsseticExtension.php | 22 +- .../Extension/Twig/AsseticFilterFunction.php | 9 +- .../Extension/Twig/AsseticFilterInvoker.php | 21 +- .../Assetic/Extension/Twig/AsseticFilterNode.php | 3 +- .../src/Assetic/Extension/Twig/AsseticNode.php | 76 +- .../Assetic/Extension/Twig/AsseticTokenParser.php | 90 +- .../Assetic/Extension/Twig/TwigFormulaLoader.php | 27 +- .../src/Assetic/Extension/Twig/TwigResource.php | 14 +- .../src/Assetic/Extension/Twig/ValueContainer.php | 26 +- .../assetic/src/Assetic/Factory/AssetFactory.php | 118 +- .../src/Assetic/Factory/LazyAssetManager.php | 65 +- .../Factory/Loader/BasePhpFormulaLoader.php | 44 +- .../Assetic/Factory/Loader/CachedFormulaLoader.php | 14 +- .../Factory/Loader/FunctionCallsFormulaLoader.php | 8 +- .../Resource/CoalescingDirectoryResource.php | 34 +- .../Assetic/Factory/Resource/DirectoryResource.php | 40 +- .../src/Assetic/Factory/Resource/FileResource.php | 12 +- .../Assetic/Factory/Worker/CacheBustingWorker.php | 15 +- .../Assetic/Factory/Worker/EnsureFilterWorker.php | 14 +- .../src/Assetic/Factory/Worker/WorkerInterface.php | 4 +- .../src/Assetic/Filter/AutoprefixerFilter.php | 15 +- .../assetic/src/Assetic/Filter/BaseCssFilter.php | 12 +- .../assetic/src/Assetic/Filter/BaseNodeFilter.php | 12 +- .../src/Assetic/Filter/BaseProcessFilter.php | 11 +- .../assetic/src/Assetic/Filter/CallablesFilter.php | 18 +- .../assetic/src/Assetic/Filter/CleanCssFilter.php | 84 +- .../src/Assetic/Filter/CoffeeScriptFilter.php | 15 +- .../assetic/src/Assetic/Filter/CompassFilter.php | 109 +- .../src/Assetic/Filter/CssCacheBustingFilter.php | 12 +- .../assetic/src/Assetic/Filter/CssEmbedFilter.php | 43 +- .../assetic/src/Assetic/Filter/CssImportFilter.php | 36 +- .../assetic/src/Assetic/Filter/CssMinFilter.php | 23 +- .../src/Assetic/Filter/CssRewriteFilter.php | 30 +- .../assetic/src/Assetic/Filter/DartFilter.php | 21 +- .../Filter/DependencyExtractorInterface.php | 8 +- .../src/Assetic/Filter/EmberPrecompileFilter.php | 11 +- .../src/Assetic/Filter/FilterCollection.php | 26 +- .../Filter/GoogleClosure/BaseCompilerFilter.php | 30 +- .../Filter/GoogleClosure/CompilerApiFilter.php | 53 +- .../Filter/GoogleClosure/CompilerJarFilter.php | 29 +- .../assetic/src/Assetic/Filter/GssFilter.php | 49 +- .../src/Assetic/Filter/HandlebarsFilter.php | 21 +- .../assetic/src/Assetic/Filter/JSMinFilter.php | 6 +- .../assetic/src/Assetic/Filter/JSMinPlusFilter.php | 6 +- .../assetic/src/Assetic/Filter/JSqueezeFilter.php | 30 +- .../assetic/src/Assetic/Filter/JpegoptimFilter.php | 19 +- .../assetic/src/Assetic/Filter/JpegtranFilter.php | 23 +- .../assetic/src/Assetic/Filter/LessFilter.php | 35 +- .../assetic/src/Assetic/Filter/LessphpFilter.php | 46 +- .../Assetic/Filter/MinifyCssCompressorFilter.php | 6 +- .../assetic/src/Assetic/Filter/OptiPngFilter.php | 14 +- .../assetic/src/Assetic/Filter/PackagerFilter.php | 26 +- .../assetic/src/Assetic/Filter/PackerFilter.php | 23 +- .../src/Assetic/Filter/PhpCssEmbedFilter.php | 12 +- .../assetic/src/Assetic/Filter/PngoutFilter.php | 61 +- .../assetic/src/Assetic/Filter/ReactJsxFilter.php | 16 +- .../assetic/src/Assetic/Filter/RooleFilter.php | 16 +- .../src/Assetic/Filter/Sass/BaseSassFilter.php | 28 +- .../assetic/src/Assetic/Filter/Sass/SassFilter.php | 52 +- .../assetic/src/Assetic/Filter/Sass/ScssFilter.php | 5 +- .../assetic/src/Assetic/Filter/SassphpFilter.php | 23 +- .../assetic/src/Assetic/Filter/ScssphpFilter.php | 39 +- .../assetic/src/Assetic/Filter/SeparatorFilter.php | 9 +- .../assetic/src/Assetic/Filter/SprocketsFilter.php | 35 +- .../assetic/src/Assetic/Filter/StylusFilter.php | 24 +- .../src/Assetic/Filter/TypeScriptFilter.php | 11 +- .../assetic/src/Assetic/Filter/UglifyCssFilter.php | 20 +- .../assetic/src/Assetic/Filter/UglifyJs2Filter.php | 38 +- .../assetic/src/Assetic/Filter/UglifyJsFilter.php | 34 +- .../Assetic/Filter/Yui/BaseCompressorFilter.php | 30 +- .../src/Assetic/Filter/Yui/CssCompressorFilter.php | 3 +- .../src/Assetic/Filter/Yui/JsCompressorFilter.php | 12 +- .../assetic/src/Assetic/FilterManager.php | 15 +- .../assetic/src/Assetic/Util/CssUtils.php | 45 +- .../assetic/src/Assetic/Util/FilesystemUtils.php | 16 +- .../assetic/src/Assetic/Util/LessUtils.php | 4 +- .../assetic/src/Assetic/Util/TraversableString.php | 14 +- .../assetic/src/Assetic/Util/VarUtils.php | 19 +- .../vendor/kriswallsmith/assetic/src/functions.php | 31 +- .../vendor/lmammino/jsmin4assetic/composer.json | 50 +- .../vendor/lmammino/jsmin4assetic/src/JSMin.php | 604 +- .../src/JSMinUnterminatedCommentException.php | 3 +- .../src/JSMinUnterminatedRegExpException.php | 3 +- .../src/JSMinUnterminatedStringException.php | 3 +- .../php/vendor/matthiasmullie/minify/bin/minifycss | 3 +- .../php/vendor/matthiasmullie/minify/bin/minifyjs | 3 +- .../php/vendor/matthiasmullie/minify/composer.json | 78 +- .../php/vendor/matthiasmullie/minify/src/CSS.php | 103 +- .../vendor/matthiasmullie/minify/src/Exception.php | 1 + .../minify/src/Exceptions/BasicException.php | 1 + .../minify/src/Exceptions/FileImportException.php | 1 + .../minify/src/Exceptions/IOException.php | 1 + .../php/vendor/matthiasmullie/minify/src/JS.php | 94 +- .../vendor/matthiasmullie/minify/src/Minify.php | 88 +- .../matthiasmullie/path-converter/composer.json | 55 +- .../path-converter/src/Converter.php | 25 +- .../path-converter/src/NoConverter.php | 3 +- .../php/vendor/natxet/CssMin/composer.json | 53 +- .../php/vendor/natxet/CssMin/src/CssMin.php | 8377 ++++++++++---------- .../vendor/nubs/random-name-generator/build.php | 2 +- .../nubs/random-name-generator/composer.json | 59 +- .../src/AbstractGenerator.php | 4 +- .../vendor/nubs/random-name-generator/src/All.php | 13 +- .../random-name-generator/src/Alliteration.php | 12 +- .../nubs/random-name-generator/src/Generator.php | 1 + .../vendor/nubs/random-name-generator/src/Vgng.php | 27 +- .../nubs/random-name-generator/tests/AllTest.php | 10 +- .../tests/AlliterationTest.php | 10 +- .../nubs/random-name-generator/tests/VgngTest.php | 10 +- .../vendor/paragonie/random_compat/composer.json | 18 +- .../random_compat/lib/byte_safe_strings.php | 28 +- .../paragonie/random_compat/lib/cast_to_int.php | 25 +- .../paragonie/random_compat/lib/error_polyfill.php | 20 +- .../vendor/paragonie/random_compat/lib/random.php | 29 +- .../random_compat/lib/random_bytes_com_dotnet.php | 15 +- .../random_compat/lib/random_bytes_dev_urandom.php | 21 +- .../random_compat/lib/random_bytes_libsodium.php | 15 +- .../lib/random_bytes_libsodium_legacy.php | 17 +- .../random_compat/lib/random_bytes_mcrypt.php | 15 +- .../paragonie/random_compat/lib/random_int.php | 7 +- .../paragonie/random_compat/other/build_phar.php | 30 +- .../php/vendor/paragonie/random_compat/psalm.xml | 20 +- .../php/vendor/psr/http-message/composer.json | 53 +- .../psr/http-message/src/RequestInterface.php | 2 +- .../http-message/src/ServerRequestInterface.php | 2 +- .../psr/http-message/src/StreamInterface.php | 2 +- .../psr/http-message/src/UploadedFileInterface.php | 8 +- .../vendor/psr/http-message/src/UriInterface.php | 3 +- .../php/vendor/ratchet/rfc6455/composer.json | 64 +- .../php/vendor/ratchet/rfc6455/phpunit.xml.dist | 2 +- .../rfc6455/src/Handshake/ClientNegotiator.php | 17 +- .../rfc6455/src/Handshake/NegotiatorInterface.php | 5 +- .../rfc6455/src/Handshake/RequestVerifier.php | 17 +- .../rfc6455/src/Handshake/ResponseVerifier.php | 11 +- .../rfc6455/src/Handshake/ServerNegotiator.php | 57 +- .../rfc6455/src/Messaging/CloseFrameChecker.php | 4 +- .../rfc6455/src/Messaging/DataInterface.php | 4 +- .../vendor/ratchet/rfc6455/src/Messaging/Frame.php | 102 +- .../rfc6455/src/Messaging/FrameInterface.php | 4 +- .../ratchet/rfc6455/src/Messaging/Message.php | 6 +- .../rfc6455/src/Messaging/MessageBuffer.php | 39 +- .../rfc6455/src/Messaging/MessageInterface.php | 4 +- .../vendor/ratchet/rfc6455/tests/AbResultsTest.php | 4 +- .../ratchet/rfc6455/tests/ab/clientRunner.php | 39 +- .../ratchet/rfc6455/tests/ab/fuzzingclient.json | 32 +- .../ratchet/rfc6455/tests/ab/fuzzingserver.json | 22 +- .../ratchet/rfc6455/tests/ab/startServer.php | 11 +- .../tests/unit/Handshake/RequestVerifierTest.php | 134 +- .../tests/unit/Handshake/ResponseVerifierTest.php | 15 +- .../tests/unit/Handshake/ServerNegotiatorTest.php | 4 +- .../rfc6455/tests/unit/Messaging/FrameTest.php | 101 +- .../tests/unit/Messaging/MessageBufferTest.php | 6 +- .../rfc6455/tests/unit/Messaging/MessageTest.php | 23 +- .../php/vendor/react/cache/composer.json | 41 +- .../php/vendor/react/cache/src/ArrayCache.php | 9 +- .../vendor/react/cache/tests/ArrayCacheTest.php | 12 +- .../php/vendor/react/cache/tests/CallableStub.php | 3 +- .../php/vendor/react/cache/tests/TestCase.php | 12 +- .../SiteAssets/php/vendor/react/dns/composer.json | 51 +- .../php/vendor/react/dns/examples/03-cached.php | 6 +- .../react/dns/examples/04-query-a-and-aaaa.php | 2 +- .../php/vendor/react/dns/src/Config/Config.php | 15 +- .../react/dns/src/Config/FilesystemFactory.php | 12 +- .../php/vendor/react/dns/src/Config/HostsFile.php | 33 +- .../php/vendor/react/dns/src/Model/HeaderBag.php | 44 +- .../php/vendor/react/dns/src/Model/Message.php | 21 +- .../php/vendor/react/dns/src/Model/Record.php | 13 +- .../vendor/react/dns/src/Protocol/BinaryDumper.php | 11 +- .../php/vendor/react/dns/src/Protocol/Parser.php | 50 +- .../vendor/react/dns/src/Query/CachedExecutor.php | 12 +- .../php/vendor/react/dns/src/Query/Executor.php | 30 +- .../react/dns/src/Query/HostsFileExecutor.php | 27 +- .../php/vendor/react/dns/src/Query/Query.php | 3 +- .../php/vendor/react/dns/src/Query/RecordBag.php | 6 +- .../php/vendor/react/dns/src/Query/RecordCache.php | 23 +- .../vendor/react/dns/src/Query/RetryExecutor.php | 13 +- .../vendor/react/dns/src/Query/TimeoutExecutor.php | 8 +- .../php/vendor/react/dns/src/Resolver/Factory.php | 27 +- .../php/vendor/react/dns/src/Resolver/Resolver.php | 24 +- .../php/vendor/react/dns/tests/CallableStub.php | 3 +- .../vendor/react/dns/tests/Config/ConfigTest.php | 45 +- .../dns/tests/Config/FilesystemFactoryTest.php | 14 +- .../react/dns/tests/Config/HostsFileTest.php | 65 +- .../react/dns/tests/FunctionalResolverTest.php | 22 +- .../vendor/react/dns/tests/Model/MessageTest.php | 6 +- .../react/dns/tests/Protocol/BinaryDumperTest.php | 13 +- .../vendor/react/dns/tests/Protocol/ParserTest.php | 49 +- .../react/dns/tests/Query/CachedExecutorTest.php | 23 +- .../vendor/react/dns/tests/Query/ExecutorTest.php | 63 +- .../dns/tests/Query/HostsFileExecutorTest.php | 42 +- .../vendor/react/dns/tests/Query/RecordBagTest.php | 27 +- .../react/dns/tests/Query/RecordCacheTest.php | 50 +- .../react/dns/tests/Query/RetryExecutorTest.php | 53 +- .../react/dns/tests/Query/TimeoutExecutorTest.php | 15 +- .../react/dns/tests/Resolver/FactoryTest.php | 48 +- .../dns/tests/Resolver/ResolveAliasesTest.php | 11 +- .../react/dns/tests/Resolver/ResolverTest.php | 18 +- .../php/vendor/react/dns/tests/TestCase.php | 43 +- .../php/vendor/react/event-loop/composer.json | 39 +- .../react/event-loop/examples/11-consume-stdin.php | 4 +- .../react/event-loop/examples/12-generate-yes.php | 4 +- .../examples/13-http-client-blocking.php | 2 +- .../event-loop/examples/14-http-client-async.php | 8 +- .../react/event-loop/examples/21-http-server.php | 4 +- .../event-loop/examples/91-benchmark-ticks.php | 3 +- .../event-loop/examples/92-benchmark-timers.php | 3 +- .../event-loop/examples/95-benchmark-memory.php | 4 +- .../php/vendor/react/event-loop/src/ExtEvLoop.php | 57 +- .../vendor/react/event-loop/src/ExtEventLoop.php | 70 +- .../vendor/react/event-loop/src/ExtLibevLoop.php | 63 +- .../react/event-loop/src/ExtLibeventLoop.php | 70 +- .../php/vendor/react/event-loop/src/Factory.php | 11 +- .../vendor/react/event-loop/src/LoopInterface.php | 8 +- .../vendor/react/event-loop/src/SignalsHandler.php | 17 +- .../react/event-loop/src/StreamSelectLoop.php | 93 +- .../react/event-loop/src/Tick/FutureTickQueue.php | 12 +- .../vendor/react/event-loop/src/Timer/Timer.php | 22 +- .../vendor/react/event-loop/src/Timer/Timers.php | 33 +- .../react/event-loop/tests/AbstractLoopTest.php | 176 +- .../vendor/react/event-loop/tests/CallableStub.php | 3 +- .../react/event-loop/tests/ExtEvLoopTest.php | 3 +- .../react/event-loop/tests/ExtEventLoopTest.php | 26 +- .../react/event-loop/tests/ExtLibevLoopTest.php | 6 +- .../react/event-loop/tests/ExtLibeventLoopTest.php | 12 +- .../react/event-loop/tests/SignalsHandlerTest.php | 3 +- .../event-loop/tests/StreamSelectLoopTest.php | 46 +- .../php/vendor/react/event-loop/tests/TestCase.php | 15 +- .../event-loop/tests/Timer/AbstractTimerTest.php | 32 +- .../event-loop/tests/Timer/ExtEvTimerTest.php | 3 +- .../event-loop/tests/Timer/ExtEventTimerTest.php | 3 +- .../event-loop/tests/Timer/ExtLibevTimerTest.php | 3 +- .../tests/Timer/ExtLibeventTimerTest.php | 3 +- .../tests/Timer/StreamSelectTimerTest.php | 3 +- .../react/event-loop/tests/Timer/TimersTest.php | 5 +- .../php/vendor/react/promise-timer/composer.json | 61 +- .../react/promise-timer/src/TimeoutException.php | 6 +- .../vendor/react/promise-timer/src/functions.php | 19 +- .../react/promise-timer/tests/CallableStub.php | 3 +- .../promise-timer/tests/FunctionRejectTest.php | 15 +- .../promise-timer/tests/FunctionResolveTest.php | 21 +- .../promise-timer/tests/FunctionTimeoutTest.php | 75 +- .../vendor/react/promise-timer/tests/TestCase.php | 21 +- .../promise-timer/tests/TimeoutExceptionTest.php | 3 +- .../php/vendor/react/promise/composer.json | 55 +- .../vendor/react/promise/src/CancellationQueue.php | 15 +- .../php/vendor/react/promise/src/Deferred.php | 24 +- .../react/promise/src/ExtendedPromiseInterface.php | 2 +- .../vendor/react/promise/src/FulfilledPromise.php | 25 +- .../php/vendor/react/promise/src/LazyPromise.php | 26 +- .../php/vendor/react/promise/src/Promise.php | 73 +- .../vendor/react/promise/src/PromiseInterface.php | 2 +- .../vendor/react/promise/src/RejectedPromise.php | 29 +- .../promise/src/UnhandledRejectionException.php | 9 +- .../php/vendor/react/promise/src/functions.php | 47 +- .../vendor/react/promise/src/functions_include.php | 2 +- .../react/promise/tests/CancellationQueueTest.php | 21 +- .../vendor/react/promise/tests/DeferredTest.php | 12 +- .../react/promise/tests/FulfilledPromiseTest.php | 12 +- .../vendor/react/promise/tests/FunctionAllTest.php | 28 +- .../vendor/react/promise/tests/FunctionAnyTest.php | 51 +- .../promise/tests/FunctionCheckTypehintTest.php | 58 +- .../vendor/react/promise/tests/FunctionMapTest.php | 41 +- .../react/promise/tests/FunctionRaceTest.php | 46 +- .../react/promise/tests/FunctionReduceTest.php | 71 +- .../react/promise/tests/FunctionRejectTest.php | 9 +- .../react/promise/tests/FunctionResolveTest.php | 36 +- .../react/promise/tests/FunctionSomeTest.php | 61 +- .../vendor/react/promise/tests/LazyPromiseTest.php | 28 +- .../PromiseAdapter/CallbackPromiseAdapter.php | 18 +- .../PromiseAdapter/PromiseAdapterInterface.php | 4 + .../php/vendor/react/promise/tests/PromiseTest.php | 24 +- .../promise/tests/PromiseTest/CancelTestTrait.php | 50 +- .../promise/tests/PromiseTest/NotifyTestTrait.php | 45 +- .../PromiseTest/PromiseFulfilledTestTrait.php | 65 +- .../tests/PromiseTest/PromisePendingTestTrait.php | 30 +- .../tests/PromiseTest/PromiseRejectedTestTrait.php | 111 +- .../tests/PromiseTest/PromiseSettledTestTrait.php | 37 +- .../promise/tests/PromiseTest/RejectTestTrait.php | 92 +- .../promise/tests/PromiseTest/ResolveTestTrait.php | 56 +- .../react/promise/tests/RejectedPromiseTest.php | 12 +- .../react/promise/tests/Stub/CallableStub.php | 3 +- .../php/vendor/react/promise/tests/TestCase.php | 12 +- .../php/vendor/react/promise/tests/bootstrap.php | 4 +- .../tests/fixtures/SimpleFulfilledTestPromise.php | 3 +- .../tests/fixtures/SimpleFulfilledTestThenable.php | 3 +- .../tests/fixtures/SimpleRejectedTestPromise.php | 3 +- .../tests/fixtures/SimpleTestCancellable.php | 7 +- .../fixtures/SimpleTestCancellableThenable.php | 10 +- .../php/vendor/react/socket/composer.json | 58 +- .../react/socket/examples/02-chat-server.php | 2 +- .../react/socket/examples/11-http-client.php | 2 +- .../react/socket/examples/22-http-client.php | 2 +- .../react/socket/examples/91-benchmark-server.php | 4 +- .../socket/examples/99-generate-self-signed.php | 4 +- .../php/vendor/react/socket/src/Connection.php | 63 +- .../php/vendor/react/socket/src/Connector.php | 34 +- .../php/vendor/react/socket/src/DnsConnector.php | 15 +- .../vendor/react/socket/src/FixedUriConnector.php | 6 +- .../php/vendor/react/socket/src/LimitingServer.php | 49 +- .../vendor/react/socket/src/SecureConnector.php | 12 +- .../php/vendor/react/socket/src/SecureServer.php | 24 +- .../php/vendor/react/socket/src/Server.php | 17 +- .../vendor/react/socket/src/StreamEncryption.php | 30 +- .../php/vendor/react/socket/src/TcpConnector.php | 19 +- .../php/vendor/react/socket/src/TcpServer.php | 42 +- .../vendor/react/socket/src/TimeoutConnector.php | 6 +- .../php/vendor/react/socket/src/UnixConnector.php | 12 +- .../php/vendor/react/socket/src/UnixServer.php | 42 +- .../vendor/react/socket/tests/ConnectionTest.php | 10 +- .../vendor/react/socket/tests/ConnectorTest.php | 63 +- .../vendor/react/socket/tests/DnsConnectorTest.php | 41 +- .../react/socket/tests/FixedUriConnectorTest.php | 3 +- .../react/socket/tests/FunctionalConnectorTest.php | 3 +- .../socket/tests/FunctionalSecureServerTest.php | 90 +- .../react/socket/tests/FunctionalTcpServerTest.php | 69 +- .../vendor/react/socket/tests/IntegrationTest.php | 30 +- .../react/socket/tests/LimitingServerTest.php | 45 +- .../react/socket/tests/SecureConnectorTest.php | 31 +- .../react/socket/tests/SecureIntegrationTest.php | 41 +- .../vendor/react/socket/tests/SecureServerTest.php | 26 +- .../php/vendor/react/socket/tests/ServerTest.php | 37 +- .../react/socket/tests/Stub/CallableStub.php | 3 +- .../react/socket/tests/Stub/ConnectionStub.php | 36 +- .../vendor/react/socket/tests/Stub/ServerStub.php | 6 +- .../vendor/react/socket/tests/TcpConnectorTest.php | 54 +- .../vendor/react/socket/tests/TcpServerTest.php | 94 +- .../php/vendor/react/socket/tests/TestCase.php | 23 +- .../react/socket/tests/TimeoutConnectorTest.php | 26 +- .../react/socket/tests/UnixConnectorTest.php | 22 +- .../vendor/react/socket/tests/UnixServerTest.php | 80 +- .../php/vendor/react/stream/composer.json | 53 +- .../stream/examples/91-benchmark-throughput.php | 10 +- .../vendor/react/stream/src/CompositeStream.php | 31 +- .../react/stream/src/DuplexResourceStream.php | 79 +- .../react/stream/src/ReadableResourceStream.php | 50 +- .../php/vendor/react/stream/src/ThroughStream.php | 79 +- .../php/vendor/react/stream/src/Util.php | 10 +- .../react/stream/src/WritableResourceStream.php | 56 +- .../react/stream/src/WritableStreamInterface.php | 2 +- .../php/vendor/react/stream/tests/CallableStub.php | 3 +- .../react/stream/tests/CompositeStreamTest.php | 70 +- .../tests/DuplexResourceStreamIntegrationTest.php | 64 +- .../stream/tests/DuplexResourceStreamTest.php | 106 +- .../react/stream/tests/EnforceBlockingWrapper.php | 22 +- .../react/stream/tests/FunctionalInternetTest.php | 19 +- .../stream/tests/ReadableResourceStreamTest.php | 78 +- .../react/stream/tests/Stub/ReadableStreamStub.php | 36 +- .../php/vendor/react/stream/tests/TestCase.php | 15 +- .../react/stream/tests/ThroughStreamTest.php | 74 +- .../php/vendor/react/stream/tests/UtilTest.php | 74 +- .../stream/tests/WritableStreamResourceTest.php | 108 +- .../symfony/http-foundation/AcceptHeader.php | 40 +- .../symfony/http-foundation/AcceptHeaderItem.php | 61 +- .../symfony/http-foundation/ApacheRequest.php | 8 +- .../symfony/http-foundation/BinaryFileResponse.php | 126 +- .../php/vendor/symfony/http-foundation/Cookie.php | 114 +- .../http-foundation/ExpressionRequestMatcher.php | 20 +- .../File/Exception/AccessDeniedException.php | 3 +- .../File/Exception/FileNotFoundException.php | 3 +- .../File/Exception/UnexpectedTypeException.php | 3 +- .../vendor/symfony/http-foundation/File/File.php | 34 +- .../File/MimeType/ExtensionGuesser.php | 18 +- .../File/MimeType/FileBinaryMimeTypeGuesser.php | 9 +- .../File/MimeType/FileinfoMimeTypeGuesser.php | 9 +- .../File/MimeType/MimeTypeExtensionGuesser.php | 5 +- .../File/MimeType/MimeTypeGuesser.php | 23 +- .../vendor/symfony/http-foundation/File/Stream.php | 5 +- .../symfony/http-foundation/File/UploadedFile.php | 67 +- .../php/vendor/symfony/http-foundation/FileBag.php | 20 +- .../vendor/symfony/http-foundation/HeaderBag.php | 102 +- .../php/vendor/symfony/http-foundation/IpUtils.php | 50 +- .../symfony/http-foundation/JsonResponse.php | 57 +- .../symfony/http-foundation/ParameterBag.php | 83 +- .../symfony/http-foundation/RedirectResponse.php | 24 +- .../php/vendor/symfony/http-foundation/Request.php | 581 +- .../symfony/http-foundation/RequestMatcher.php | 63 +- .../symfony/http-foundation/RequestStack.php | 17 +- .../vendor/symfony/http-foundation/Response.php | 279 +- .../symfony/http-foundation/ResponseHeaderBag.php | 76 +- .../vendor/symfony/http-foundation/ServerBag.php | 24 +- .../Session/Attribute/AttributeBag.php | 44 +- .../Session/Attribute/AttributeBagInterface.php | 8 +- .../Session/Attribute/NamespacedAttributeBag.php | 45 +- .../Session/Flash/AutoExpireFlashBag.php | 49 +- .../http-foundation/Session/Flash/FlashBag.php | 47 +- .../Session/Flash/FlashBagInterface.php | 8 +- .../symfony/http-foundation/Session/Session.php | 90 +- .../http-foundation/Session/SessionBagProxy.php | 23 +- .../http-foundation/Session/SessionInterface.php | 16 +- .../Storage/Handler/AbstractSessionHandler.php | 41 +- .../Storage/Handler/MemcacheSessionHandler.php | 42 +- .../Storage/Handler/MemcachedSessionHandler.php | 42 +- .../Storage/Handler/MongoDbSessionHandler.php | 60 +- .../Storage/Handler/NativeFileSessionHandler.php | 7 +- .../Storage/Handler/NativeSessionHandler.php | 5 +- .../Session/Storage/Handler/NullSessionHandler.php | 33 +- .../Session/Storage/Handler/PdoSessionHandler.php | 165 +- .../Storage/Handler/StrictSessionHandler.php | 31 +- .../Storage/Handler/WriteCheckSessionHandler.php | 23 +- .../Session/Storage/MetadataBag.php | 39 +- .../Session/Storage/MockArraySessionStorage.php | 75 +- .../Session/Storage/MockFileSessionStorage.php | 41 +- .../Session/Storage/NativeSessionStorage.php | 102 +- .../Session/Storage/PhpBridgeSessionStorage.php | 15 +- .../Session/Storage/Proxy/AbstractProxy.php | 26 +- .../Session/Storage/Proxy/NativeProxy.php | 10 +- .../Session/Storage/Proxy/SessionHandlerProxy.php | 36 +- .../Session/Storage/SessionStorageInterface.php | 6 +- .../symfony/http-foundation/StreamedResponse.php | 47 +- .../http-foundation/Tests/AcceptHeaderItemTest.php | 23 +- .../http-foundation/Tests/AcceptHeaderTest.php | 35 +- .../http-foundation/Tests/ApacheRequestTest.php | 6 +- .../Tests/BinaryFileResponseTest.php | 126 +- .../symfony/http-foundation/Tests/CookieTest.php | 100 +- .../Tests/ExpressionRequestMatcherTest.php | 28 +- .../http-foundation/Tests/File/FakeFile.php | 19 +- .../http-foundation/Tests/File/FileTest.php | 78 +- .../Tests/File/MimeType/MimeTypeTest.php | 40 +- .../Tests/File/UploadedFileTest.php | 160 +- .../symfony/http-foundation/Tests/FileBagTest.php | 43 +- .../http-foundation/Tests/HeaderBagTest.php | 69 +- .../symfony/http-foundation/Tests/IpUtilsTest.php | 69 +- .../http-foundation/Tests/JsonResponseTest.php | 98 +- .../http-foundation/Tests/ParameterBagTest.php | 58 +- .../http-foundation/Tests/RedirectResponseTest.php | 31 +- .../http-foundation/Tests/RequestMatcherTest.php | 59 +- .../http-foundation/Tests/RequestStackTest.php | 9 +- .../symfony/http-foundation/Tests/RequestTest.php | 545 +- .../Tests/ResponseHeaderBagTest.php | 99 +- .../symfony/http-foundation/Tests/ResponseTest.php | 269 +- .../http-foundation/Tests/ResponseTestCase.php | 11 +- .../http-foundation/Tests/ServerBagTest.php | 60 +- .../Tests/Session/Attribute/AttributeBagTest.php | 68 +- .../Attribute/NamespacedAttributeBagTest.php | 79 +- .../Tests/Session/Flash/AutoExpireFlashBagTest.php | 59 +- .../Tests/Session/Flash/FlashBagTest.php | 44 +- .../http-foundation/Tests/Session/SessionTest.php | 80 +- .../Storage/Handler/AbstractSessionHandlerTest.php | 20 +- .../Session/Storage/Handler/Fixtures/common.inc | 54 +- .../Storage/Handler/Fixtures/empty_destroys.php | 4 +- .../Session/Storage/Handler/Fixtures/read_only.php | 4 +- .../Storage/Handler/Fixtures/regenerate.php | 10 +- .../Session/Storage/Handler/Fixtures/storage.php | 6 +- .../Storage/Handler/Fixtures/with_cookie.php | 4 +- .../Handler/Fixtures/with_cookie_and_session.php | 4 +- .../Storage/Handler/MemcacheSessionHandlerTest.php | 60 +- .../Handler/MemcachedSessionHandlerTest.php | 60 +- .../Storage/Handler/MongoDbSessionHandlerTest.php | 59 +- .../Handler/NativeFileSessionHandlerTest.php | 15 +- .../Storage/Handler/NativeSessionHandlerTest.php | 3 +- .../Storage/Handler/NullSessionHandlerTest.php | 12 +- .../Storage/Handler/PdoSessionHandlerTest.php | 96 +- .../Storage/Handler/StrictSessionHandlerTest.php | 67 +- .../Handler/WriteCheckSessionHandlerTest.php | 30 +- .../Tests/Session/Storage/MetadataBagTest.php | 35 +- .../Storage/MockArraySessionStorageTest.php | 39 +- .../Session/Storage/MockFileSessionStorageTest.php | 37 +- .../Session/Storage/NativeSessionStorageTest.php | 79 +- .../Storage/PhpBridgeSessionStorageTest.php | 21 +- .../Session/Storage/Proxy/AbstractProxyTest.php | 32 +- .../Session/Storage/Proxy/NativeProxyTest.php | 6 +- .../Storage/Proxy/SessionHandlerProxyTest.php | 42 +- .../http-foundation/Tests/StreamedResponseTest.php | 76 +- .../Tests/schema/http-status-codes.rng | 58 +- .../http-foundation/Tests/schema/iana-registry.rng | 478 +- .../vendor/symfony/http-foundation/composer.json | 68 +- .../symfony/http-foundation/phpunit.xml.dist | 2 +- .../vendor/symfony/polyfill-mbstring/Mbstring.php | 303 +- .../Resources/unidata/lowerCase.php | 2186 ++--- .../Resources/unidata/upperCase.php | 2202 ++--- .../vendor/symfony/polyfill-mbstring/bootstrap.php | 184 +- .../vendor/symfony/polyfill-mbstring/composer.json | 68 +- .../php/vendor/symfony/polyfill-php70/Php70.php | 20 +- .../vendor/symfony/polyfill-php70/bootstrap.php | 12 +- .../vendor/symfony/polyfill-php70/composer.json | 67 +- .../process/Exception/ProcessFailedException.php | 8 +- .../process/Exception/ProcessTimedOutException.php | 15 +- .../vendor/symfony/process/ExecutableFinder.php | 17 +- .../php/vendor/symfony/process/InputStream.php | 27 +- .../vendor/symfony/process/PhpExecutableFinder.php | 25 +- .../php/vendor/symfony/process/PhpProcess.php | 31 +- .../vendor/symfony/process/Pipes/AbstractPipes.php | 47 +- .../symfony/process/Pipes/PipesInterface.php | 4 +- .../php/vendor/symfony/process/Pipes/UnixPipes.php | 33 +- .../vendor/symfony/process/Pipes/WindowsPipes.php | 41 +- .../php/vendor/symfony/process/Process.php | 481 +- .../php/vendor/symfony/process/ProcessBuilder.php | 63 +- .../php/vendor/symfony/process/ProcessUtils.php | 32 +- .../symfony/process/Tests/ExecutableFinderTest.php | 39 +- .../symfony/process/Tests/NonStopableProcess.php | 11 +- .../process/Tests/PhpExecutableFinderTest.php | 19 +- .../symfony/process/Tests/PhpProcessTest.php | 8 +- .../Tests/PipeStdinInStdoutStdErrStreamSelect.php | 28 +- .../symfony/process/Tests/ProcessBuilderTest.php | 57 +- .../process/Tests/ProcessFailedExceptionTest.php | 19 +- .../vendor/symfony/process/Tests/ProcessTest.php | 476 +- .../symfony/process/Tests/ProcessUtilsTest.php | 6 +- .../symfony/process/Tests/SignalListener.php | 5 +- .../php/vendor/symfony/process/composer.json | 58 +- .../php/vendor/symfony/process/phpunit.xml.dist | 2 +- .../vendor/symfony/routing/Annotation/Route.php | 59 +- .../php/vendor/symfony/routing/CompiledRoute.php | 53 +- .../DependencyInjection/RoutingResolverPass.php | 8 +- .../Exception/MethodNotAllowedException.php | 6 +- .../routing/Generator/Dumper/GeneratorDumper.php | 6 +- .../Generator/Dumper/PhpGeneratorDumper.php | 11 +- .../symfony/routing/Generator/UrlGenerator.php | 78 +- .../routing/Generator/UrlGeneratorInterface.php | 6 +- .../routing/Loader/AnnotationClassLoader.php | 70 +- .../routing/Loader/AnnotationDirectoryLoader.php | 16 +- .../routing/Loader/AnnotationFileLoader.php | 36 +- .../symfony/routing/Loader/ClosureLoader.php | 10 +- .../Loader/Configurator/CollectionConfigurator.php | 19 +- .../Loader/Configurator/ImportConfigurator.php | 9 +- .../Loader/Configurator/RouteConfigurator.php | 3 +- .../Loader/Configurator/RoutingConfigurator.php | 9 +- .../Loader/Configurator/Traits/AddTrait.php | 10 +- .../Loader/Configurator/Traits/RouteTrait.php | 24 +- .../DependencyInjection/ServiceRouterLoader.php | 6 +- .../symfony/routing/Loader/DirectoryLoader.php | 12 +- .../symfony/routing/Loader/GlobFileLoader.php | 8 +- .../symfony/routing/Loader/ObjectRouteLoader.php | 13 +- .../symfony/routing/Loader/PhpFileLoader.php | 10 +- .../symfony/routing/Loader/XmlFileLoader.php | 82 +- .../symfony/routing/Loader/YamlFileLoader.php | 67 +- .../routing/Loader/schema/routing/routing-1.0.xsd | 274 +- .../routing/Matcher/Dumper/DumperCollection.php | 43 +- .../symfony/routing/Matcher/Dumper/DumperRoute.php | 13 +- .../routing/Matcher/Dumper/MatcherDumper.php | 6 +- .../routing/Matcher/Dumper/PhpMatcherDumper.php | 103 +- .../Matcher/Dumper/StaticPrefixCollection.php | 46 +- .../routing/Matcher/RedirectableUrlMatcher.php | 14 +- .../Matcher/RedirectableUrlMatcherInterface.php | 6 +- .../routing/Matcher/TraceableUrlMatcher.php | 20 +- .../vendor/symfony/routing/Matcher/UrlMatcher.php | 66 +- .../php/vendor/symfony/routing/RequestContext.php | 95 +- .../php/vendor/symfony/routing/Route.php | 174 +- .../php/vendor/symfony/routing/RouteCollection.php | 78 +- .../symfony/routing/RouteCollectionBuilder.php | 99 +- .../php/vendor/symfony/routing/RouteCompiler.php | 55 +- .../php/vendor/symfony/routing/Router.php | 97 +- .../symfony/routing/Tests/Annotation/RouteTest.php | 9 +- .../symfony/routing/Tests/CompiledRouteTest.php | 5 +- .../RoutingResolverPassTest.php | 3 +- .../Tests/Fixtures/AnnotatedClasses/BarClass.php | 3 +- .../Tests/Fixtures/AnnotatedClasses/BazClass.php | 3 +- .../Tests/Fixtures/AnnotatedClasses/FooTrait.php | 5 +- .../routing/Tests/Fixtures/CustomRouteCompiler.php | 3 +- .../routing/Tests/Fixtures/CustomXmlFileLoader.php | 7 +- .../AnonymousClassInTrait.php | 9 +- .../OtherAnnotatedClasses/VariadicClass.php | 3 +- .../Tests/Fixtures/RedirectableUrlMatcher.php | 3 +- .../Fixtures/controller/import__controller.xml | 4 +- .../Fixtures/controller/import_controller.xml | 6 +- .../controller/import_override_defaults.xml | 4 +- .../Fixtures/controller/override_defaults.xml | 4 +- .../routing/Tests/Fixtures/controller/routing.xml | 8 +- .../routing/Tests/Fixtures/dumper/url_matcher0.php | 6 +- .../routing/Tests/Fixtures/dumper/url_matcher1.php | 68 +- .../routing/Tests/Fixtures/dumper/url_matcher2.php | 84 +- .../routing/Tests/Fixtures/dumper/url_matcher3.php | 8 +- .../routing/Tests/Fixtures/dumper/url_matcher4.php | 6 +- .../routing/Tests/Fixtures/dumper/url_matcher5.php | 50 +- .../routing/Tests/Fixtures/dumper/url_matcher6.php | 34 +- .../routing/Tests/Fixtures/dumper/url_matcher7.php | 50 +- .../symfony/routing/Tests/Fixtures/glob/bar.xml | 2 +- .../symfony/routing/Tests/Fixtures/glob/baz.xml | 2 +- .../Tests/Fixtures/glob/import_multiple.xml | 2 +- .../routing/Tests/Fixtures/glob/import_single.xml | 2 +- .../routing/Tests/Fixtures/list_defaults.xml | 4 +- .../Tests/Fixtures/list_in_list_defaults.xml | 4 +- .../Tests/Fixtures/list_in_map_defaults.xml | 4 +- .../routing/Tests/Fixtures/list_null_values.xml | 16 +- .../routing/Tests/Fixtures/map_defaults.xml | 4 +- .../Tests/Fixtures/map_in_list_defaults.xml | 4 +- .../routing/Tests/Fixtures/map_in_map_defaults.xml | 4 +- .../routing/Tests/Fixtures/map_null_values.xml | 12 +- .../symfony/routing/Tests/Fixtures/missing_id.xml | 4 +- .../routing/Tests/Fixtures/missing_path.xml | 4 +- .../routing/Tests/Fixtures/namespaceprefix.xml | 4 +- .../symfony/routing/Tests/Fixtures/nonvalid.xml | 6 +- .../routing/Tests/Fixtures/nonvalidnode.xml | 4 +- .../routing/Tests/Fixtures/nonvalidroute.xml | 4 +- .../symfony/routing/Tests/Fixtures/null_values.xml | 8 +- .../symfony/routing/Tests/Fixtures/php_dsl.php | 6 +- .../routing/Tests/Fixtures/scalar_defaults.xml | 10 +- .../routing/Tests/Fixtures/validpattern.xml | 9 +- .../routing/Tests/Fixtures/validresource.xml | 4 +- .../Generator/Dumper/PhpGeneratorDumperTest.php | 38 +- .../routing/Tests/Generator/UrlGeneratorTest.php | 220 +- .../Tests/Loader/AbstractAnnotationLoaderTest.php | 12 +- .../Tests/Loader/AnnotationClassLoaderTest.php | 79 +- .../Tests/Loader/AnnotationDirectoryLoaderTest.php | 40 +- .../Tests/Loader/AnnotationFileLoaderTest.php | 33 +- .../routing/Tests/Loader/ClosureLoaderTest.php | 9 +- .../routing/Tests/Loader/DirectoryLoaderTest.php | 23 +- .../routing/Tests/Loader/GlobFileLoaderTest.php | 13 +- .../routing/Tests/Loader/ObjectRouteLoaderTest.php | 29 +- .../routing/Tests/Loader/PhpFileLoaderTest.php | 36 +- .../routing/Tests/Loader/XmlFileLoaderTest.php | 169 +- .../routing/Tests/Loader/YamlFileLoaderTest.php | 76 +- .../Matcher/DumpedRedirectableUrlMatcherTest.php | 10 +- .../routing/Tests/Matcher/DumpedUrlMatcherTest.php | 13 +- .../Tests/Matcher/Dumper/DumperCollectionTest.php | 3 +- .../Tests/Matcher/Dumper/PhpMatcherDumperTest.php | 60 +- .../Matcher/Dumper/StaticPrefixCollectionTest.php | 15 +- .../Tests/Matcher/RedirectableUrlMatcherTest.php | 38 +- .../Tests/Matcher/TraceableUrlMatcherTest.php | 12 +- .../routing/Tests/Matcher/UrlMatcherTest.php | 118 +- .../symfony/routing/Tests/RequestContextTest.php | 38 +- .../routing/Tests/RouteCollectionBuilderTest.php | 54 +- .../symfony/routing/Tests/RouteCollectionTest.php | 69 +- .../symfony/routing/Tests/RouteCompilerTest.php | 255 +- .../php/vendor/symfony/routing/Tests/RouteTest.php | 70 +- .../vendor/symfony/routing/Tests/RouterTest.php | 63 +- .../php/vendor/symfony/routing/composer.json | 109 +- .../php/vendor/symfony/routing/phpunit.xml.dist | 2 +- .../assets/font-starcraft/css/font-starcraft.css | 71 +- .../assets/font-starcraft/fonts/font-starcraft.svg | 60 +- .../assets/userfrosting/css/AdminLTE-skins-all.css | 1996 +++-- .../assets/userfrosting/css/tablesorter-reflow.css | 112 +- .../core/assets/userfrosting/css/uf-alerts.css | 6 +- .../core/assets/userfrosting/css/uf-collection.css | 2 +- .../core/assets/userfrosting/css/userfrosting.css | 48 +- .../core/assets/userfrosting/favicons/ieconfig.xml | 18 +- .../assets/userfrosting/favicons/manifest.json | 98 +- .../userfrosting/favicons/safari-pinned-tab.svg | 40 +- .../core/assets/userfrosting/js/AdminLTE-custom.js | 98 +- .../core/assets/userfrosting/js/AdminLTE.js | 1290 +-- .../core/assets/userfrosting/js/attrchange.js | 218 +- .../js/fortress-jqueryvalidation-methods.js | 28 +- .../assets/userfrosting/js/handlebars-helpers.js | 34 +- .../core/assets/userfrosting/js/query-string.js | 22 +- .../js/tablesorter/widget-sort2Hash.js | 504 +- .../core/assets/userfrosting/js/uf-captcha.js | 6 +- .../core/assets/userfrosting/js/uf-collection.js | 102 +- .../core/assets/userfrosting/js/uf-copy.js | 16 +- .../core/assets/userfrosting/js/uf-form.js | 70 +- .../core/assets/userfrosting/js/uf-init.js | 9 +- .../userfrosting/js/uf-jqueryvalidation-config.js | 10 +- .../core/assets/userfrosting/js/uf-modal.js | 162 +- .../core/assets/userfrosting/js/uf-table.js | 246 +- .../userfrosting/js/uf-tablesorter-parsers.js | 44 +- main/app/sprinkles/core/bower.json | 88 +- main/app/sprinkles/core/composer.json | 86 +- main/app/sprinkles/core/config/default.php | 332 +- main/app/sprinkles/core/config/dev.php | 50 +- main/app/sprinkles/core/config/production.php | 68 +- main/app/sprinkles/core/config/testing.php | 38 +- main/app/sprinkles/core/locale/ar/messages.php | 12 +- main/app/sprinkles/core/locale/ar/validate.php | 2 +- main/app/sprinkles/core/locale/de_DE/errors.php | 38 +- main/app/sprinkles/core/locale/de_DE/validate.php | 22 +- main/app/sprinkles/core/locale/en_US/errors.php | 2 +- main/app/sprinkles/core/locale/en_US/messages.php | 10 +- main/app/sprinkles/core/locale/en_US/validate.php | 2 +- main/app/sprinkles/core/locale/es_ES/errors.php | 4 +- main/app/sprinkles/core/locale/es_ES/messages.php | 10 +- main/app/sprinkles/core/locale/fa/errors.php | 2 +- main/app/sprinkles/core/locale/fa/messages.php | 10 +- main/app/sprinkles/core/locale/fa/validate.php | 2 +- main/app/sprinkles/core/locale/fr_FR/messages.php | 10 +- main/app/sprinkles/core/locale/fr_FR/validate.php | 2 +- main/app/sprinkles/core/locale/it_IT/messages.php | 70 +- main/app/sprinkles/core/locale/it_IT/validate.php | 2 +- main/app/sprinkles/core/locale/pt_PT/messages.php | 10 +- main/app/sprinkles/core/locale/pt_PT/validate.php | 2 +- main/app/sprinkles/core/locale/ru_RU/errors.php | 2 +- main/app/sprinkles/core/locale/ru_RU/messages.php | 10 +- main/app/sprinkles/core/locale/ru_RU/validate.php | 2 +- main/app/sprinkles/core/locale/th_TH/messages.php | 10 +- main/app/sprinkles/core/locale/th_TH/validate.php | 2 +- main/app/sprinkles/core/locale/tlh/errors.php | 38 +- main/app/sprinkles/core/locale/tlh/validate.php | 22 +- main/app/sprinkles/core/locale/valitron/ar.php | 48 +- main/app/sprinkles/core/locale/valitron/de.php | 56 +- main/app/sprinkles/core/locale/valitron/el.php | 58 +- main/app/sprinkles/core/locale/valitron/en.php | 58 +- main/app/sprinkles/core/locale/valitron/es.php | 58 +- main/app/sprinkles/core/locale/valitron/fr.php | 58 +- main/app/sprinkles/core/locale/valitron/id.php | 56 +- main/app/sprinkles/core/locale/valitron/it.php | 52 +- main/app/sprinkles/core/locale/valitron/ja.php | 56 +- main/app/sprinkles/core/locale/valitron/lv.php | 52 +- main/app/sprinkles/core/locale/valitron/pt-br.php | 48 +- main/app/sprinkles/core/locale/valitron/ro.php | 58 +- main/app/sprinkles/core/locale/valitron/ru.php | 56 +- main/app/sprinkles/core/locale/valitron/th.php | 58 +- main/app/sprinkles/core/locale/valitron/zh-cn.php | 48 +- main/app/sprinkles/core/locale/valitron/zh-tw.php | 48 +- main/app/sprinkles/core/locale/zh_CN/messages.php | 10 +- main/app/sprinkles/core/locale/zh_CN/validate.php | 2 +- main/app/sprinkles/core/routes/routes.php | 2 +- main/app/sprinkles/core/src/Alert/AlertStream.php | 28 +- .../sprinkles/core/src/Alert/CacheAlertStream.php | 43 +- .../core/src/Alert/SessionAlertStream.php | 31 +- .../core/src/Controller/SimpleController.php | 4 +- main/app/sprinkles/core/src/Core.php | 23 +- main/app/sprinkles/core/src/Database/Builder.php | 42 +- .../core/src/Database/DatabaseInvalidException.php | 1 + .../src/Database/Migrations/v400/SessionsTable.php | 7 +- .../Database/Migrations/v400/ThrottlesTable.php | 7 +- .../Database/Models/Concerns/HasRelationships.php | 80 +- .../sprinkles/core/src/Database/Models/Model.php | 35 +- .../core/src/Database/Models/Throttle.php | 9 +- .../Relations/BelongsToManyConstrained.php | 38 +- .../Database/Relations/BelongsToManyThrough.php | 65 +- .../src/Database/Relations/BelongsToManyUnique.php | 1 + .../src/Database/Relations/Concerns/Syncable.php | 40 +- .../src/Database/Relations/Concerns/Unique.php | 140 +- .../src/Database/Relations/HasManySyncable.php | 1 + .../src/Database/Relations/MorphManySyncable.php | 1 + .../src/Database/Relations/MorphToManyUnique.php | 1 + .../core/src/Error/ExceptionHandlerManager.php | 18 +- .../core/src/Error/Handler/ExceptionHandler.php | 44 +- .../Error/Handler/ExceptionHandlerInterface.php | 3 +- .../src/Error/Handler/HttpExceptionHandler.php | 12 +- .../src/Error/Handler/NotFoundExceptionHandler.php | 4 +- .../Error/Handler/PhpMailerExceptionHandler.php | 4 +- .../core/src/Error/Renderer/ErrorRenderer.php | 15 +- .../src/Error/Renderer/ErrorRendererInterface.php | 11 +- .../core/src/Error/Renderer/HtmlRenderer.php | 18 +- .../core/src/Error/Renderer/JsonRenderer.php | 10 +- .../core/src/Error/Renderer/PlainTextRenderer.php | 10 +- .../core/src/Error/Renderer/WhoopsRenderer.php | 220 +- .../core/src/Error/Renderer/XmlRenderer.php | 7 +- main/app/sprinkles/core/src/Facades/Debug.php | 4 +- main/app/sprinkles/core/src/Facades/Translator.php | 4 +- .../src/Http/Concerns/DeterminesContentType.php | 4 +- .../app/sprinkles/core/src/Log/DatabaseHandler.php | 9 +- main/app/sprinkles/core/src/Log/MixedFormatter.php | 15 +- .../app/sprinkles/core/src/Mail/EmailRecipient.php | 25 +- main/app/sprinkles/core/src/Mail/MailMessage.php | 49 +- main/app/sprinkles/core/src/Mail/Mailer.php | 58 +- .../sprinkles/core/src/Mail/StaticMailMessage.php | 16 +- .../sprinkles/core/src/Mail/TwigMailMessage.php | 18 +- main/app/sprinkles/core/src/Model/UFModel.php | 4 +- main/app/sprinkles/core/src/Router.php | 11 +- main/app/sprinkles/core/src/Sprunje/Sprunje.php | 91 +- .../sprinkles/core/src/Throttle/ThrottleRule.php | 25 +- main/app/sprinkles/core/src/Throttle/Throttler.php | 28 +- .../core/src/Throttle/ThrottlerException.php | 1 + main/app/sprinkles/core/src/Twig/CacheHelper.php | 13 +- main/app/sprinkles/core/src/Twig/CoreExtension.php | 28 +- .../core/src/Util/BadClassNameException.php | 1 + main/app/sprinkles/core/src/Util/Captcha.php | 53 +- .../sprinkles/core/src/Util/CheckEnvironment.php | 123 +- main/app/sprinkles/core/src/Util/ClassMapper.php | 14 +- .../sprinkles/core/src/Util/EnvironmentInfo.php | 11 +- .../sprinkles/core/src/Util/ShutdownHandler.php | 25 +- main/app/sprinkles/core/src/Util/Util.php | 47 +- .../sprinkles/core/templates/forms/csrf.html.twig | 4 +- .../core/templates/navigation/breadcrumb.html.twig | 2 +- .../core/templates/navigation/main-nav.html.twig | 53 +- .../sprinkles/core/templates/pages/about.html.twig | 32 +- .../core/templates/pages/abstract/base.html.twig | 5 +- .../templates/pages/abstract/default.html.twig | 7 +- .../core/templates/pages/abstract/error.html.twig | 35 +- .../templates/pages/error/config-errors.html.twig | 16 +- .../sprinkles/core/templates/pages/index.html.twig | 22 +- .../sprinkles/core/templates/pages/legal.html.twig | 4 +- .../templates/pages/partials/analytics.html.twig | 17 +- .../core/templates/pages/partials/config.js.twig | 20 +- .../templates/pages/partials/favicons.html.twig | 36 +- .../core/templates/pages/partials/footer.html.twig | 9 +- .../core/templates/pages/partials/legal.html.twig | 104 +- .../core/templates/pages/partials/page.js.twig | 4 +- .../templates/pages/partials/privacy.html.twig | 58 +- .../core/templates/pages/privacy.html.twig | 4 +- .../sprinkles/core/templates/pages/test.html.twig | 12 +- .../templates/tables/table-paginated.html.twig | 33 +- .../templates/tables/table-tool-menu.html.twig | 10 +- .../core/tests/Integration/DatabaseTests.php | 214 +- .../core/tests/Unit/BelongsToManyThroughTest.php | 14 +- .../core/tests/Unit/DatabaseSyncableTest.php | 23 +- main/app/sprinkles/core/tests/Unit/SprunjeTest.php | 26 +- main/app/sprinkles/extend-user/composer.json | 36 +- .../src/Controller/MemberController.php | 4 +- .../src/Database/Migrations/v400/MembersTable.php | 7 +- .../extend-user/src/Database/Models/Member.php | 24 +- .../extend-user/src/Database/Models/MemberAux.php | 2 +- .../src/Database/Scopes/MemberAuxScope.php | 7 +- .../src/ServicesProvider/ServicesProvider.php | 3 +- .../extend-user/templates/forms/user.html.twig | 69 +- .../extend-user/templates/pages/user.html.twig | 2 +- main/app/system/Bakery/Bakery.php | 44 +- main/app/system/Bakery/BaseCommand.php | 7 +- main/app/system/Bakery/Command/Bake.php | 11 +- main/app/system/Bakery/Command/BuildAssets.php | 35 +- main/app/system/Bakery/Command/ClearCache.php | 18 +- main/app/system/Bakery/Command/Debug.php | 33 +- main/app/system/Bakery/Command/Migrate.php | 13 +- main/app/system/Bakery/Command/MigrateRefresh.php | 15 +- main/app/system/Bakery/Command/MigrateReset.php | 13 +- main/app/system/Bakery/Command/MigrateRollback.php | 15 +- main/app/system/Bakery/Command/Setup.php | 31 +- main/app/system/Bakery/Command/Test.php | 11 +- main/app/system/Bakery/DatabaseTest.php | 10 +- main/app/system/Bakery/Migration.php | 13 +- main/app/system/Bakery/Migrator.php | 72 +- .../Database/Migrations/v410/MigrationTable.php | 7 +- main/app/system/Database/Model/Migrations.php | 6 +- main/app/system/Facade.php | 59 +- main/app/system/ServicesProvider.php | 4 +- main/app/system/SlimAppEvent.php | 7 +- main/app/system/Sprinkle/Sprinkle.php | 7 +- main/app/system/Sprinkle/SprinkleManager.php | 43 +- main/app/system/UserFrosting.php | 34 +- 1151 files changed, 29133 insertions(+), 32969 deletions(-) delete mode 100644 main/app/sprinkles/core/assets/SiteAssets/js/language.js (limited to 'main') diff --git a/main/app/sprinkles/FormGenerator/asset-bundles.json b/main/app/sprinkles/FormGenerator/asset-bundles.json index b763d55..43ea863 100644 --- a/main/app/sprinkles/FormGenerator/asset-bundles.json +++ b/main/app/sprinkles/FormGenerator/asset-bundles.json @@ -1,17 +1,17 @@ { - "bundle": { - "js/FormGenerator": { - "scripts": [ - "vendor/bootstrap3-typeahead/bootstrap3-typeahead.js", - "js/widget-formGenerator.js" - ], - "options": { - "result": { - "type": { - "scripts": "plain" - } - } - } + "bundle": { + "js/FormGenerator": { + "scripts": [ + "vendor/bootstrap3-typeahead/bootstrap3-typeahead.js", + "js/widget-formGenerator.js" + ], + "options": { + "result": { + "type": { + "scripts": "plain" + } } + } } + } } diff --git a/main/app/sprinkles/FormGenerator/assets/js/widget-formGenerator.js b/main/app/sprinkles/FormGenerator/assets/js/widget-formGenerator.js index 52743f6..6cfcce8 100644 --- a/main/app/sprinkles/FormGenerator/assets/js/widget-formGenerator.js +++ b/main/app/sprinkles/FormGenerator/assets/js/widget-formGenerator.js @@ -10,20 +10,20 @@ * @license MIT */ -;(function($, window, document, undefined) { - "use strict"; +;(function ($, window, document, undefined) { + "use strict"; // Define plugin name and defaults. var pluginName = "formGenerator", defaults = { - DEBUG : false, - mainAlertElement : $('#alerts-page'), - redirectAfterSuccess : true, - autofocusModalElement : true + DEBUG: false, + mainAlertElement: $('#alerts-page'), + redirectAfterSuccess: true, + autofocusModalElement: true }; // Constructor - function Plugin (element, options) { + function Plugin(element, options) { this.elements = element; this.$elements = $(this.elements); this.settings = $.extend(true, {}, defaults, options); @@ -31,7 +31,11 @@ this._name = pluginName; // Detect changes to element attributes - this.$elements.attrchange({ callback: function (event) { this.elements = event.target; }.bind(this) }); + this.$elements.attrchange({ + callback: function (event) { + this.elements = event.target; + }.bind(this) + }); // Initialise ufAlerts if (!this.settings.mainAlertElement.data('ufAlerts')) { @@ -46,21 +50,21 @@ /** * Bind the display action for a form to the button */ - display: function() { + display: function () { this.$elements.on('click', $.proxy(this._fetchForm, this)); return this.$elements; }, /** * Bind the confirm action to the button */ - confirm: function() { + confirm: function () { this.$elements.on('click', $.proxy(this._fetchConfirmModal, this)); return this.$elements; }, /** * Fetch the form HTML */ - _fetchForm: function(event) { + _fetchForm: function (event) { // Get the button element var button = event.currentTarget; @@ -72,14 +76,15 @@ } // Delete any existing instance of the form with the same name - if($('#' + box_id).length) { + if ($('#' + box_id).length) { $('#' + box_id).remove(); } // Prepare the ajax payload var payload = $.extend({ - box_id: box_id} - , button.dataset); + box_id: box_id + } + , button.dataset); // Fetch and render the form $.ajax({ @@ -88,19 +93,19 @@ data: payload, cache: false }) - .done($.proxy(this._displayForm, this, box_id, button)) - .fail($.proxy(this._displayFailure, this, button)); + .done($.proxy(this._displayForm, this, box_id, button)) + .fail($.proxy(this._displayFailure, this, button)); }, /** * Displays the form modal and set up ufForm */ - _displayForm: function(box_id, button, data) { + _displayForm: function (box_id, button, data) { // Trigger pre-display event $(button).trigger("displayForm." + this._name); // Append the form as a modal dialog to the body - $( "body" ).append(data); + $("body").append(data); $('#' + box_id).modal('show'); // Set focus on first element @@ -111,7 +116,7 @@ } // Setup ufAlerts - var boxMsgTarget = $("#"+box_id+" #form-alerts"); + var boxMsgTarget = $("#" + box_id + " #form-alerts"); // Show the alert. We could have info alert coming in if (!boxMsgTarget.data('ufAlerts')) { @@ -122,15 +127,15 @@ // Setup the loaded form with ufForm $('#' + box_id).find("form").ufForm({ validators: validators, - msgTarget: $("#"+box_id+" #form-alerts") + msgTarget: $("#" + box_id + " #form-alerts") }) - .on("submitSuccess.ufForm", $.proxy(this._formPostSuccess, this, box_id, button)) - .on("submitError.ufForm", $.proxy(this._displayFormFaillure, this, box_id, button)); + .on("submitSuccess.ufForm", $.proxy(this._formPostSuccess, this, box_id, button)) + .on("submitError.ufForm", $.proxy(this._displayFormFaillure, this, box_id, button)); }, /** * Action done when a form is successful */ - _formPostSuccess: function(box_id, button, event, data) { + _formPostSuccess: function (box_id, button, event, data) { // Trigger success event $(button).trigger("formSuccess." + this._name, data); @@ -146,7 +151,7 @@ /** * Fetch confirmation modal */ - _fetchConfirmModal: function(event) { + _fetchConfirmModal: function (event) { // Get the button element var button = event.currentTarget; @@ -158,7 +163,7 @@ } // Delete any existing instance of the form with the same name - if($('#' + box_id).length) { + if ($('#' + box_id).length) { $('#' + box_id).remove(); } @@ -179,19 +184,19 @@ data: payload, cache: false }) - .done($.proxy(this._displayConfirmation, this, box_id, button)) - .fail($.proxy(this._displayFailure, this, button)); + .done($.proxy(this._displayConfirmation, this, box_id, button)) + .fail($.proxy(this._displayFailure, this, button)); }, /** * Display confirmation modal */ - _displayConfirmation: function(box_id, button, data) { + _displayConfirmation: function (box_id, button, data) { // Trigger pre-display event $(button).trigger("displayConfirmation." + this._name); // Append the form as a modal dialog to the body - $( "body" ).append(data); + $("body").append(data); $('#' + box_id).modal('show'); $('#' + box_id + ' .js-confirm').on('click', $.proxy(this._sendConfirmation, this, box_id, button)); @@ -199,7 +204,7 @@ /** * Send confirmation query */ - _sendConfirmation: function(box_id, button) { + _sendConfirmation: function (box_id, button) { // Prepare payload var url = $(button).data('postUrl'); @@ -212,17 +217,17 @@ // Send ajax $.ajax({ - type: method, - url: url, - data: data + type: method, + url: url, + data: data }) - .done($.proxy(this._confirmationSuccess, this, box_id, button)) - .fail($.proxy(this._displayConfirmationFaillure, this, box_id, button)); + .done($.proxy(this._confirmationSuccess, this, box_id, button)) + .fail($.proxy(this._displayConfirmationFaillure, this, box_id, button)); }, - /** + /** * Action done when a confirmation request is successful */ - _confirmationSuccess: function(box_id, button, data) { + _confirmationSuccess: function (box_id, button, data) { // Trigger success event $(button).trigger("confirmSuccess." + this._name, data); @@ -244,14 +249,14 @@ /** * Failure callback for ajax requests. Displays the error in the main alertElement */ - _displayFailure: function(button, response) { + _displayFailure: function (button, response) { $(button).trigger("error." + this._name); if ((typeof site !== "undefined") && site.debug.ajax && response.responseText) { document.write(response.responseText); document.close(); } else { if (this.settings.DEBUG) { - $.error("Error (" + response.status + "): " + response.responseText ); + $.error("Error (" + response.status + "): " + response.responseText); } this.settings.mainAlertElement.ufAlerts('clear').ufAlerts('fetch').ufAlerts('render'); } @@ -259,18 +264,18 @@ /** * Faillure callback for ajax requests to be displayed in a modal form */ - _displayFormFaillure: function(box_id, button) { + _displayFormFaillure: function (box_id, button) { $(button).trigger("error." + this._name); - $("#"+box_id+" #form-alerts").show(); + $("#" + box_id + " #form-alerts").show(); }, /** * Faillure callback for ajax requests to be displayed in a confirmation form */ - _displayConfirmationFaillure: function(box_id, button) { + _displayConfirmationFaillure: function (box_id, button) { $(button).trigger("error." + this._name); // Setup ufAlerts - var boxMsgTarget = $("#"+box_id+" #confirmation-alerts"); + var boxMsgTarget = $("#" + box_id + " #confirmation-alerts"); // Show the alert. We could have info alert coming in if (!boxMsgTarget.data('ufAlerts')) { @@ -281,7 +286,7 @@ /** * Completely destroy the ufAlerts plugin on the element. */ - destroy: function() { + destroy: function () { // Unbind any bound events this.$elements.off('.' + this._name); @@ -296,7 +301,7 @@ }); // Handles instantiation and access to non-private methods. - $.fn[pluginName] = function(methodOrOptions) { + $.fn[pluginName] = function (methodOrOptions) { // If the plugin is called on a non existing element, return nothing if (this.length == 0) { @@ -319,11 +324,11 @@ var options = Array.prototype.slice.call(arguments, 1)[0]; } else { - $.error( 'Method ' + methodOrOptions + ' is private!' ); + $.error('Method ' + methodOrOptions + ' is private!'); } } else { - $.error( 'Method ' + methodOrOptions + ' is invalid.' ); + $.error('Method ' + methodOrOptions + ' is invalid.'); } // Only initalise if not previously done. @@ -337,7 +342,7 @@ // Run the required method return instance[method](options); } else { - $.error( 'Method ' + method + ' does not exist.' ); + $.error('Method ' + method + ' does not exist.'); } }; diff --git a/main/app/sprinkles/FormGenerator/bower.json b/main/app/sprinkles/FormGenerator/bower.json index 723b5cc..6ce7156 100644 --- a/main/app/sprinkles/FormGenerator/bower.json +++ b/main/app/sprinkles/FormGenerator/bower.json @@ -1,30 +1,30 @@ { - "name": "formgenerator-assets", - "version": "0.0.1", - "homepage": "https://github.com/lcharette/UF_FormGenerator", - "authors": [ - "lcharette" - ], - "moduleType": [ - "node" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "assets/vendor", - "examples", - "demo-resources", - "demo", - "test", - "tests" - ], - "dependencies": { - "bootstrap3-typeahead": "~3.1.0" - }, - "resolutions": { - "jquery": ">= 2.2.4", - "bootstrap": "3.x" - } + "name": "formgenerator-assets", + "version": "0.0.1", + "homepage": "https://github.com/lcharette/UF_FormGenerator", + "authors": [ + "lcharette" + ], + "moduleType": [ + "node" + ], + "license": "MIT", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "assets/vendor", + "examples", + "demo-resources", + "demo", + "test", + "tests" + ], + "dependencies": { + "bootstrap3-typeahead": "~3.1.0" + }, + "resolutions": { + "jquery": ">= 2.2.4", + "bootstrap": "3.x" + } } diff --git a/main/app/sprinkles/FormGenerator/composer.json b/main/app/sprinkles/FormGenerator/composer.json index e37a372..797e029 100644 --- a/main/app/sprinkles/FormGenerator/composer.json +++ b/main/app/sprinkles/FormGenerator/composer.json @@ -1,25 +1,29 @@ { - "name": "lcharette/uf_formgenerator", - "type": "userfrosting-sprinkle", - "description": "Form generator for UserFrosting V4", - "keywords": ["Form", "generator", "userfrosting"], - "homepage": "https://github.com/lcharette/UF_FormGenerator", - "license" : "MIT", - "authors" : [ - { - "name": "Louis Charette", - "homepage": "https://github.com/lcharette" - } - ], - "require": { - "php": ">=5.6" - }, - "autoload": { - "psr-4": { - "UserFrosting\\Sprinkle\\FormGenerator\\": "src/" - } - }, - "extra": { - "installer-name": "FormGenerator" + "name": "lcharette/uf_formgenerator", + "type": "userfrosting-sprinkle", + "description": "Form generator for UserFrosting V4", + "keywords": [ + "Form", + "generator", + "userfrosting" + ], + "homepage": "https://github.com/lcharette/UF_FormGenerator", + "license": "MIT", + "authors": [ + { + "name": "Louis Charette", + "homepage": "https://github.com/lcharette" } + ], + "require": { + "php": ">=5.6" + }, + "autoload": { + "psr-4": { + "UserFrosting\\Sprinkle\\FormGenerator\\": "src/" + } + }, + "extra": { + "installer-name": "FormGenerator" + } } diff --git a/main/app/sprinkles/FormGenerator/routes/FormGenerator.php b/main/app/sprinkles/FormGenerator/routes/FormGenerator.php index 0b7ea51..c770793 100644 --- a/main/app/sprinkles/FormGenerator/routes/FormGenerator.php +++ b/main/app/sprinkles/FormGenerator/routes/FormGenerator.php @@ -9,4 +9,4 @@ global $app; -$app->get('/forms/confirm','UserFrosting\Sprinkle\FormGenerator\Controller\FormGeneratorController:confirm'); \ No newline at end of file +$app->get('/forms/confirm', 'UserFrosting\Sprinkle\FormGenerator\Controller\FormGeneratorController:confirm'); \ No newline at end of file diff --git a/main/app/sprinkles/FormGenerator/src/Controller/FormGeneratorController.php b/main/app/sprinkles/FormGenerator/src/Controller/FormGeneratorController.php index e731011..5bd46e1 100644 --- a/main/app/sprinkles/FormGenerator/src/Controller/FormGeneratorController.php +++ b/main/app/sprinkles/FormGenerator/src/Controller/FormGeneratorController.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Controller; use UserFrosting\Sprinkle\Core\Controller\SimpleController; @@ -15,7 +16,8 @@ use UserFrosting\Sprinkle\Core\Controller\SimpleController; * * Controller class for /forms/confirm/* URLs. Handles rendering the confirm dialog */ -class FormGeneratorController extends SimpleController { +class FormGeneratorController extends SimpleController +{ /** * Display the confirmation dialog diff --git a/main/app/sprinkles/FormGenerator/src/Element/Alert.php b/main/app/sprinkles/FormGenerator/src/Element/Alert.php index f848b5c..31453d3 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/Alert.php +++ b/main/app/sprinkles/FormGenerator/src/Element/Alert.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; @@ -16,13 +17,13 @@ use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; * * @extends BaseInput */ -class Alert extends BaseInput { +class Alert extends BaseInput +{ /** * {@inheritDoc} */ - protected function applyTransformations() - { + protected function applyTransformations() { $this->element = array_merge([ "class" => "alert-danger", "icon" => "fa-ban", diff --git a/main/app/sprinkles/FormGenerator/src/Element/BaseInput.php b/main/app/sprinkles/FormGenerator/src/Element/BaseInput.php index d892001..cf78dc6 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/BaseInput.php +++ b/main/app/sprinkles/FormGenerator/src/Element/BaseInput.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\InputInterface; @@ -20,7 +21,8 @@ use UserFrosting\Sprinkle\Core\Facades\Debug; * @abstract * @implements InputInterface */ -abstract class BaseInput implements InputInterface { +abstract class BaseInput implements InputInterface +{ /** * @var String The name of the input. @@ -46,8 +48,7 @@ abstract class BaseInput implements InputInterface { * @param mixed $value (default: null) * @return void */ - public function __construct($name, $element, $value = null) - { + public function __construct($name, $element, $value = NULL) { $this->name = $name; $this->element = $element; $this->value = $value; @@ -60,8 +61,7 @@ abstract class BaseInput implements InputInterface { * @access public * @return void */ - public function parse() - { + public function parse() { $this->applyTransformations(); return $this->element; } @@ -89,7 +89,7 @@ abstract class BaseInput implements InputInterface { * @return string The input current value */ public function getValue() { - if (isset($this->value) && $this->value !== null) { + if (isset($this->value) && $this->value !== NULL) { return $this->value; } else if (isset($this->element['default'])) { return $this->element['default']; diff --git a/main/app/sprinkles/FormGenerator/src/Element/Checkbox.php b/main/app/sprinkles/FormGenerator/src/Element/Checkbox.php index 59e6eaf..97bfdba 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/Checkbox.php +++ b/main/app/sprinkles/FormGenerator/src/Element/Checkbox.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; @@ -16,22 +17,22 @@ use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; * * @extends BaseInput */ -class Checkbox extends BaseInput { +class Checkbox extends BaseInput +{ /** * {@inheritDoc} */ - protected function applyTransformations() - { + protected function applyTransformations() { $this->element = array_merge([ "class" => "js-icheck", "name" => $this->name, "id" => "field_" . $this->name, - "binary" => true + "binary" => TRUE ], $this->element); // We add the check status instead of the value - if ($this->element["binary"] !== false && $this->getValue() == 1) { + if ($this->element["binary"] !== FALSE && $this->getValue() == 1) { $this->element["checked"] = "checked"; } } diff --git a/main/app/sprinkles/FormGenerator/src/Element/Hidden.php b/main/app/sprinkles/FormGenerator/src/Element/Hidden.php index 08c22f7..6f79ecd 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/Hidden.php +++ b/main/app/sprinkles/FormGenerator/src/Element/Hidden.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; @@ -16,13 +17,13 @@ use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; * * @extends BaseInput */ -class Hidden extends BaseInput { +class Hidden extends BaseInput +{ /** * {@inheritDoc} */ - protected function applyTransformations() - { + protected function applyTransformations() { $this->element = array_merge([ "value" => $this->getValue(), "name" => $this->name, diff --git a/main/app/sprinkles/FormGenerator/src/Element/InputInterface.php b/main/app/sprinkles/FormGenerator/src/Element/InputInterface.php index 7405109..66225bc 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/InputInterface.php +++ b/main/app/sprinkles/FormGenerator/src/Element/InputInterface.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; /** @@ -13,7 +14,9 @@ namespace UserFrosting\Sprinkle\FormGenerator\Element; * * Interface for Form elements classes */ -interface InputInterface { - public function __construct($name, $element, $value = null); +interface InputInterface +{ + public function __construct($name, $element, $value = NULL); + public function parse(); } diff --git a/main/app/sprinkles/FormGenerator/src/Element/Select.php b/main/app/sprinkles/FormGenerator/src/Element/Select.php index bb23772..da91fbd 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/Select.php +++ b/main/app/sprinkles/FormGenerator/src/Element/Select.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; @@ -16,13 +17,13 @@ use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; * * @extends BaseInput */ -class Select extends BaseInput { +class Select extends BaseInput +{ /** * {@inheritDoc} */ - protected function applyTransformations() - { + protected function applyTransformations() { $this->element = array_merge([ "class" => "form-control js-select2", "value" => $this->getValue(), diff --git a/main/app/sprinkles/FormGenerator/src/Element/Text.php b/main/app/sprinkles/FormGenerator/src/Element/Text.php index b936fe2..375153d 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/Text.php +++ b/main/app/sprinkles/FormGenerator/src/Element/Text.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; @@ -16,13 +17,13 @@ use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; * * @extends BaseInput */ -class Text extends BaseInput { +class Text extends BaseInput +{ /** * {@inheritDoc} */ - protected function applyTransformations() - { + protected function applyTransformations() { $this->element = array_merge([ "autocomplete" => "off", "class" => "form-control", diff --git a/main/app/sprinkles/FormGenerator/src/Element/Textarea.php b/main/app/sprinkles/FormGenerator/src/Element/Textarea.php index bec3a6c..b2a84f9 100644 --- a/main/app/sprinkles/FormGenerator/src/Element/Textarea.php +++ b/main/app/sprinkles/FormGenerator/src/Element/Textarea.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator\Element; use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; @@ -16,13 +17,13 @@ use UserFrosting\Sprinkle\FormGenerator\Element\BaseInput; * * @extends BaseInput */ -class Textarea extends BaseInput { +class Textarea extends BaseInput +{ /** * {@inheritDoc} */ - protected function applyTransformations() - { + protected function applyTransformations() { $this->element = array_merge([ "autocomplete" => "off", "class" => "form-control", diff --git a/main/app/sprinkles/FormGenerator/src/Form.php b/main/app/sprinkles/FormGenerator/src/Form.php index e845e3e..5b948f7 100644 --- a/main/app/sprinkles/FormGenerator/src/Form.php +++ b/main/app/sprinkles/FormGenerator/src/Form.php @@ -6,6 +6,7 @@ * @copyright Copyright (c) 2017 Louis Charette * @license https://github.com/lcharette/UF_FormGenerator/blob/master/LICENSE (MIT License) */ + namespace UserFrosting\Sprinkle\FormGenerator; use Illuminate\Contracts\Config\Repository; @@ -20,7 +21,8 @@ use UserFrosting\Fortress\RequestSchema\RequestSchemaInterface; * The FormGenerator class, which is used to return the `form` part from a Fortress * schema for html form generator in Twig. */ -class Form { +class Form +{ /** * @var RequestSchemaInterface The form fields definition @@ -44,8 +46,7 @@ class Form { * @param array|object $data (default: []) * @return void */ - public function __construct(RequestSchemaInterface $schema, $data = []) - { + public function __construct(RequestSchemaInterface $schema, $data = []) { $this->setSchema($schema); $this->setData($data); } @@ -55,8 +56,7 @@ class Form { * * @param array|object $data The form values */ - public function setData($data) - { + public function setData($data) { if ($data instanceof Collection || $data instanceof Model) { $this->data = $data->toArray(); } else if (is_array($data) || $data instanceof Repository) { @@ -71,8 +71,7 @@ class Form { * * @param RequestSchemaInterface $schema A RequestSchemaInterface object, containing the form definition. */ - public function setSchema(RequestSchemaInterface $schema) - { + public function setSchema(RequestSchemaInterface $schema) { $this->schema = $schema; } @@ -83,8 +82,7 @@ class Form { * @param mixed $value * @return void */ - public function setValue($inputName, $value) - { + public function setValue($inputName, $value) { $this->data[$inputName] = $value; } @@ -94,12 +92,11 @@ class Form { * Use `setCustomFormData` to set any other tag. * * @param string $inputName The input name where the argument will be added - * @param string $property The argument name. Example "data-color" - * @param string $data The value of the argument + * @param string $property The argument name. Example "data-color" + * @param string $data The value of the argument * @return void */ - public function setInputArgument($inputName, $property, $data) - { + public function setInputArgument($inputName, $property, $data) { if ($this->schema->has($inputName)) { // Get the element and force set the property $element = $this->schema->get($inputName); @@ -115,12 +112,11 @@ class Form { * `setInputArgument` and `setValue`. * * @param string $inputName The select name to add options to - * @param array $data An array of `value => label` options - * @param string $selected The selected key + * @param array $data An array of `value => label` options + * @param string $selected The selected key * @return void */ - public function setOptions($inputName, $data = [], $selected = null) - { + public function setOptions($inputName, $data = [], $selected = NULL) { // Set opdations $this->setInputArgument($inputName, 'options', $data); @@ -139,8 +135,7 @@ class Form { * @param string $namespace * @return void */ - public function setFormNamespace($namespace) - { + public function setFormNamespace($namespace) { $this->formNamespace = $namespace; } @@ -150,8 +145,7 @@ class Form { * * @return array The form fields data */ - public function generate() - { + public function generate() { $form = collect([]); // Loop all the the fields in the schema @@ -161,10 +155,10 @@ class Form { if (isset($input['form'])) { // Get the value from the data - $value = isset($this->data[$name]) ? $this->data[$name] : null; + $value = isset($this->data[$name]) ? $this->data[$name] : NULL; // Add the namespace to the name if it's defined - $name = ($this->formNamespace != "") ? $this->formNamespace."[".$name."]" : $name; + $name = ($this->formNamespace != "") ? $this->formNamespace . "[" . $name . "]" : $name; // Get the element class and make sure it exist $type = (isset($input['form']['type'])) ? $input['form']['type'] : "text"; diff --git a/main/app/sprinkles/FormGenerator/templates/FormGenerator/FormGenerator.html.twig b/main/app/sprinkles/FormGenerator/templates/FormGenerator/FormGenerator.html.twig index c902064..688c96c 100644 --- a/main/app/sprinkles/FormGenerator/templates/FormGenerator/FormGenerator.html.twig +++ b/main/app/sprinkles/FormGenerator/templates/FormGenerator/FormGenerator.html.twig @@ -12,22 +12,24 @@ {{ alert.generate(input) }} {% else %} {% if not input.hidden %} -
- {% if formLayout == 'horizontal' %}
+
+ {% if formLayout == 'horizontal' %}
{% endif %} {% endif %} {% endfor %} \ No newline at end of file diff --git a/main/app/sprinkles/FormGenerator/templates/FormGenerator/confirm.html.twig b/main/app/sprinkles/FormGenerator/templates/FormGenerator/confirm.html.twig index 96d0072..67ba757 100644 --- a/main/app/sprinkles/FormGenerator/templates/FormGenerator/confirm.html.twig +++ b/main/app/sprinkles/FormGenerator/templates/FormGenerator/confirm.html.twig @@ -1,28 +1,30 @@ -