diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..9189838bfe07505ad778e6a9cf017b8c8977dada Binary files /dev/null and b/.DS_Store differ diff --git a/app/Resources/views/base.html.twig b/app/Resources/views/base.html.twig index 53379147a5ee635f65363f651911410184260b7b..0010fc04921daa81990454347352653d3247bdbe 100644 --- a/app/Resources/views/base.html.twig +++ b/app/Resources/views/base.html.twig @@ -4,6 +4,7 @@ <meta charset="UTF-8" /> <title>{% block title %}Welcome!{% endblock %}</title> <link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" /> + <link rel="apple-touch-icon" href="{{ asset('apple-touch-icon.png') }} /"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <!-- Material Design fonts --> <link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=Roboto:300,400,500,700"> diff --git a/app/config/config_prod.yml b/app/config/config_prod.yml index 192f0c5c6e5a79879550e4c5de8a48167af07c97..2f78e00a25c406925e1a8fb750f032109828fc00 100644 --- a/app/config/config_prod.yml +++ b/app/config/config_prod.yml @@ -11,7 +11,7 @@ monolog: handlers: main: type: fingers_crossed - action_level: error + action_level: warning handler: nested nested: type: stream diff --git a/app/config/security.yml b/app/config/security.yml index 41a7c1d2472634f43d9a773c5a7624bdd31f4544..3f4ef776a5dbc97866dc8a1002db2fde3bf3f8c9 100644 --- a/app/config/security.yml +++ b/app/config/security.yml @@ -10,7 +10,10 @@ security: password: $2y$12$fDfPfwAymIT0xEtPDVxATuh39PEh1q7x45d9IOM5e3J87KQtRAcVa roles: 'ROLE_ADMIN' betskills: - password: $2y$12$tkAwLaRwYIXSjr3iPFBYlebEKX.wLxLp10w8o3oAhkPQTbdLBQHoq + password: $2a$04$uKSPdigufFVA0judefbqPObYoNlJOpN25g9VT1Ml.A9yfZ4qmVU8i + roles: 'ROLE_ADMIN' + PR: + password: $2a$07$2Cy7Fwzqa1mJSFqIWjaGy.D9QVkj3MNFkz2DoF/DGj1QL2OAlOGIy roles: 'ROLE_ADMIN' firewalls: diff --git a/composer.json b/composer.json index 2872d535701e0b9844c130111cf937432fa0fa62..5ea1c07314116719391d3b9848ade7ccf91255b4 100644 --- a/composer.json +++ b/composer.json @@ -29,7 +29,8 @@ "sensio/framework-extra-bundle": "^3.0.2", "incenteev/composer-parameter-handler": "^2.0", "jms/serializer-bundle": "^1.1", - "friendsofsymfony/rest-bundle": "^2.1" + "friendsofsymfony/rest-bundle": "^2.1", + "guzzlehttp/guzzle": "^6.3", }, "require-dev": { "sensio/generator-bundle": "^3.0", diff --git a/composer.lock b/composer.lock index ed8297d0dc3a38bbff919ce045823699a4d74c03..a169283fccca218f449a7a82ba6c0e027a1331b1 100644 --- a/composer.lock +++ b/composer.lock @@ -4,40 +4,98 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "e2ad80fd5d559db7f34d32407738a93b", - "content-hash": "6dd49f9599d38261eba217230b75a721", + "content-hash": "cf822710bb7cb6e61bb4d3ece888646c", "packages": [ + { + "name": "composer/ca-bundle", + "version": "1.0.7", + "source": { + "type": "git", + "url": "https://github.com/composer/ca-bundle.git", + "reference": "b17e6153cb7f33c7e44eb59578dc12eee5dc8e12" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/b17e6153cb7f33c7e44eb59578dc12eee5dc8e12", + "reference": "b17e6153cb7f33c7e44eb59578dc12eee5dc8e12", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "ext-pcre": "*", + "php": "^5.3.2 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.5", + "psr/log": "^1.0", + "symfony/process": "^2.5 || ^3.0" + }, + "suggest": { + "symfony/process": "This is necessary to reliably check whether openssl_x509_parse is vulnerable on older php versions, but can be ignored on PHP 5.5.6+" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\CaBundle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.", + "keywords": [ + "cabundle", + "cacert", + "certificate", + "ssl", + "tls" + ], + "time": "2017-03-06T11:59:08+00:00" + }, { "name": "doctrine/annotations", - "version": "v1.2.7", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535" + "reference": "54cacc9b81758b14e3ce750f205a393d52339e97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535", - "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/54cacc9b81758b14e3ce750f205a393d52339e97", + "reference": "54cacc9b81758b14e3ce750f205a393d52339e97", "shasum": "" }, "require": { "doctrine/lexer": "1.*", - "php": ">=5.3.2" + "php": "^5.6 || ^7.0" }, "require-dev": { "doctrine/cache": "1.*", - "phpunit/phpunit": "4.*" + "phpunit/phpunit": "^5.7" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3.x-dev" + "dev-master": "1.4.x-dev" } }, "autoload": { - "psr-0": { - "Doctrine\\Common\\Annotations\\": "lib/" + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" } }, "notification-url": "https://packagist.org/downloads/", @@ -73,20 +131,20 @@ "docblock", "parser" ], - "time": "2015-08-31 12:32:49" + "time": "2017-02-24T16:22:25+00:00" }, { "name": "doctrine/cache", - "version": "v1.6.0", + "version": "v1.6.1", "source": { "type": "git", "url": "https://github.com/doctrine/cache.git", - "reference": "f8af318d14bdb0eff0336795b428b547bd39ccb6" + "reference": "b6f544a20f4807e81f7044d31e679ccbb1866dc3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/f8af318d14bdb0eff0336795b428b547bd39ccb6", - "reference": "f8af318d14bdb0eff0336795b428b547bd39ccb6", + "url": "https://api.github.com/repos/doctrine/cache/zipball/b6f544a20f4807e81f7044d31e679ccbb1866dc3", + "reference": "b6f544a20f4807e81f7044d31e679ccbb1866dc3", "shasum": "" }, "require": { @@ -143,32 +201,33 @@ "cache", "caching" ], - "time": "2015-12-31 16:37:02" + "time": "2016-10-29T11:16:17+00:00" }, { "name": "doctrine/collections", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a" + "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a", - "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a", + "url": "https://api.github.com/repos/doctrine/collections/zipball/1a4fb7e902202c33cce8c55989b945612943c2ba", + "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba", "shasum": "" }, "require": { - "php": ">=5.3.2" + "php": "^5.6 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "doctrine/coding-standard": "~0.1@dev", + "phpunit/phpunit": "^5.7" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2.x-dev" + "dev-master": "1.3.x-dev" } }, "autoload": { @@ -209,20 +268,20 @@ "collections", "iterator" ], - "time": "2015-04-14 22:21:58" + "time": "2017-01-03T10:49:41+00:00" }, { "name": "doctrine/common", - "version": "v2.6.1", + "version": "v2.7.2", "source": { "type": "git", "url": "https://github.com/doctrine/common.git", - "reference": "a579557bc689580c19fee4e27487a67fe60defc0" + "reference": "930297026c8009a567ac051fd545bf6124150347" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/common/zipball/a579557bc689580c19fee4e27487a67fe60defc0", - "reference": "a579557bc689580c19fee4e27487a67fe60defc0", + "url": "https://api.github.com/repos/doctrine/common/zipball/930297026c8009a567ac051fd545bf6124150347", + "reference": "930297026c8009a567ac051fd545bf6124150347", "shasum": "" }, "require": { @@ -231,10 +290,10 @@ "doctrine/collections": "1.*", "doctrine/inflector": "1.*", "doctrine/lexer": "1.*", - "php": "~5.5|~7.0" + "php": "~5.6|~7.0" }, "require-dev": { - "phpunit/phpunit": "~4.8|~5.0" + "phpunit/phpunit": "^5.4.6" }, "type": "library", "extra": { @@ -282,24 +341,24 @@ "persistence", "spl" ], - "time": "2015-12-25 13:18:31" + "time": "2017-01-13T14:02:13+00:00" }, { "name": "doctrine/dbal", - "version": "v2.5.5", + "version": "v2.5.12", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "9f8c05cd5225a320d56d4bfdb4772f10d045a0c9" + "reference": "7b9e911f9d8b30d43b96853dab26898c710d8f44" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/9f8c05cd5225a320d56d4bfdb4772f10d045a0c9", - "reference": "9f8c05cd5225a320d56d4bfdb4772f10d045a0c9", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/7b9e911f9d8b30d43b96853dab26898c710d8f44", + "reference": "7b9e911f9d8b30d43b96853dab26898c710d8f44", "shasum": "" }, "require": { - "doctrine/common": ">=2.4,<2.7-dev", + "doctrine/common": ">=2.4,<2.8-dev", "php": ">=5.3.2" }, "require-dev": { @@ -353,41 +412,41 @@ "persistence", "queryobject" ], - "time": "2016-09-09 19:13:33" + "time": "2017-02-08T12:53:47+00:00" }, { "name": "doctrine/doctrine-bundle", - "version": "1.6.4", + "version": "1.6.8", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineBundle.git", - "reference": "dd40b0a7fb16658cda9def9786992b8df8a49be7" + "reference": "6e96577cbbdbb5b6dcca2ff203d665976b51beb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/dd40b0a7fb16658cda9def9786992b8df8a49be7", - "reference": "dd40b0a7fb16658cda9def9786992b8df8a49be7", + "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/6e96577cbbdbb5b6dcca2ff203d665976b51beb0", + "reference": "6e96577cbbdbb5b6dcca2ff203d665976b51beb0", "shasum": "" }, "require": { "doctrine/dbal": "~2.3", - "doctrine/doctrine-cache-bundle": "~1.0", + "doctrine/doctrine-cache-bundle": "~1.2", "jdorn/sql-formatter": "~1.1", - "php": ">=5.3.2", - "symfony/console": "~2.3|~3.0", - "symfony/dependency-injection": "~2.3|~3.0", - "symfony/doctrine-bridge": "~2.2|~3.0", - "symfony/framework-bundle": "~2.3|~3.0" + "php": ">=5.5.9", + "symfony/console": "~2.7|~3.0|~4.0", + "symfony/dependency-injection": "~2.7|~3.0|~4.0", + "symfony/doctrine-bridge": "~2.7|~3.0|~4.0", + "symfony/framework-bundle": "~2.7|~3.0|~4.0" }, "require-dev": { "doctrine/orm": "~2.3", "phpunit/phpunit": "~4", - "satooshi/php-coveralls": "~0.6.1", - "symfony/phpunit-bridge": "~2.7|~3.0", - "symfony/property-info": "~2.8|~3.0", - "symfony/validator": "~2.2|~3.0", - "symfony/yaml": "~2.2|~3.0", - "twig/twig": "~1.10" + "satooshi/php-coveralls": "^1.0", + "symfony/phpunit-bridge": "~2.7|~3.0|~4.0", + "symfony/property-info": "~2.8|~3.0|~4.0", + "symfony/validator": "~2.7|~3.0|~4.0", + "symfony/yaml": "~2.7|~3.0|~4.0", + "twig/twig": "~1.12|~2.0" }, "suggest": { "doctrine/orm": "The Doctrine ORM integration is optional in the bundle.", @@ -434,7 +493,7 @@ "orm", "persistence" ], - "time": "2016-08-10 15:35:22" + "time": "2017-05-18T08:15:18+00:00" }, { "name": "doctrine/doctrine-cache-bundle", @@ -522,7 +581,7 @@ "cache", "caching" ], - "time": "2016-01-26 17:28:51" + "time": "2016-01-26T17:28:51+00:00" }, { "name": "doctrine/inflector", @@ -589,7 +648,7 @@ "singularize", "string" ], - "time": "2015-11-06 14:35:42" + "time": "2015-11-06T14:35:42+00:00" }, { "name": "doctrine/instantiator", @@ -643,7 +702,7 @@ "constructor", "instantiate" ], - "time": "2015-06-14 21:17:01" + "time": "2015-06-14T21:17:01+00:00" }, { "name": "doctrine/lexer", @@ -697,26 +756,26 @@ "lexer", "parser" ], - "time": "2014-09-09 13:34:57" + "time": "2014-09-09T13:34:57+00:00" }, { "name": "doctrine/orm", - "version": "v2.5.5", + "version": "v2.5.6", "source": { "type": "git", "url": "https://github.com/doctrine/doctrine2.git", - "reference": "73e4be7c7b3ba26f96b781a40b33feba4dfa6d45" + "reference": "e6c434196c8ef058239aaa0724b4aadb0107940b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/doctrine2/zipball/73e4be7c7b3ba26f96b781a40b33feba4dfa6d45", - "reference": "73e4be7c7b3ba26f96b781a40b33feba4dfa6d45", + "url": "https://api.github.com/repos/doctrine/doctrine2/zipball/e6c434196c8ef058239aaa0724b4aadb0107940b", + "reference": "e6c434196c8ef058239aaa0724b4aadb0107940b", "shasum": "" }, "require": { "doctrine/cache": "~1.4", "doctrine/collections": "~1.2", - "doctrine/common": ">=2.5-dev,<2.7-dev", + "doctrine/common": ">=2.5-dev,<2.8-dev", "doctrine/dbal": ">=2.5-dev,<2.6-dev", "doctrine/instantiator": "~1.0.1", "ext-pdo": "*", @@ -773,21 +832,21 @@ "database", "orm" ], - "time": "2016-09-10 18:51:13" + "time": "2016-12-18T15:42:34+00:00" }, { "name": "eightpoints/guzzle-bundle", - "version": "v5.0.3", + "version": "v5.3.0", "target-dir": "EightPoints/Bundle/GuzzleBundle", "source": { "type": "git", "url": "https://github.com/8p/GuzzleBundle.git", - "reference": "9afc670d5b730ab1d90d92f50b86fa5282279d28" + "reference": "59f0b3079954716a3be32a8537003be2540ad156" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/8p/GuzzleBundle/zipball/9afc670d5b730ab1d90d92f50b86fa5282279d28", - "reference": "9afc670d5b730ab1d90d92f50b86fa5282279d28", + "url": "https://api.github.com/repos/8p/GuzzleBundle/zipball/59f0b3079954716a3be32a8537003be2540ad156", + "reference": "59f0b3079954716a3be32a8537003be2540ad156", "shasum": "" }, "require": { @@ -837,7 +896,7 @@ "symfony", "web service" ], - "time": "2016-09-30 17:12:30" + "time": "2016-12-30T13:35:37+00:00" }, { "name": "eightpoints/guzzle-wsse-middleware", @@ -892,124 +951,37 @@ "web service", "wsse" ], - "time": "2016-06-03 14:03:33" - }, - { - "name": "firebase/php-jwt", - "version": "v3.0.0", - "source": { - "type": "git", - "url": "https://github.com/firebase/php-jwt.git", - "reference": "fa8a06e96526eb7c0eeaa47e4f39be59d21f16e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/firebase/php-jwt/zipball/fa8a06e96526eb7c0eeaa47e4f39be59d21f16e1", - "reference": "fa8a06e96526eb7c0eeaa47e4f39be59d21f16e1", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Firebase\\JWT\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Neuman Vong", - "email": "neuman+pear@twilio.com", - "role": "Developer" - }, - { - "name": "Anant Narayanan", - "email": "anant@php.net", - "role": "Developer" - } - ], - "description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.", - "homepage": "https://github.com/firebase/php-jwt", - "time": "2015-07-22 18:31:08" - }, - { - "name": "firebase/token-generator", - "version": "v3.0.0", - "source": { - "type": "git", - "url": "https://github.com/firebase/firebase-token-generator-php.git", - "reference": "60f74f02ae9e0ab498def706bdf43582379086f6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/firebase/firebase-token-generator-php/zipball/60f74f02ae9e0ab498def706bdf43582379086f6", - "reference": "60f74f02ae9e0ab498def706bdf43582379086f6", - "shasum": "" - }, - "require": { - "firebase/php-jwt": "^3.0", - "php": ">=5.4" - }, - "require-dev": { - "phpunit/phpunit": "^4.6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.x-dev" - } - }, - "autoload": { - "psr-4": { - "Firebase\\Token\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Anant Narayanan", - "email": "anant@php.net", - "role": "Developer" - }, - { - "name": "Chris Raynor", - "email": "chris@firebase.com", - "role": "Developer" - } - ], - "description": "A simple library to generate JWT tokens for authenticating to a Firebase.", - "homepage": "https://github.com/firebase/firebase-token-generator-php", - "time": "2015-11-19 06:18:40" + "time": "2016-06-03T14:03:33+00:00" }, { "name": "friendsofsymfony/rest-bundle", - "version": "2.1.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/FriendsOfSymfony/FOSRestBundle.git", - "reference": "c2ab644087d3ce234e2cbe6a7aa114e8bc721174" + "reference": "d62a6c0f4bc699f899865d7e7bc7a4186aef9a86" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfSymfony/FOSRestBundle/zipball/c2ab644087d3ce234e2cbe6a7aa114e8bc721174", - "reference": "c2ab644087d3ce234e2cbe6a7aa114e8bc721174", + "url": "https://api.github.com/repos/FriendsOfSymfony/FOSRestBundle/zipball/d62a6c0f4bc699f899865d7e7bc7a4186aef9a86", + "reference": "d62a6c0f4bc699f899865d7e7bc7a4186aef9a86", "shasum": "" }, "require": { "doctrine/inflector": "^1.0", "php": "^5.5.9|~7.0", "psr/log": "^1.0", + "symfony/config": "^2.7|^3.0", + "symfony/debug": "^2.7|^3.0", + "symfony/dependency-injection": "^2.7|^3.0", + "symfony/event-dispatcher": "^2.7|^3.0", "symfony/finder": "^2.7|^3.0", "symfony/framework-bundle": "^2.7|^3.0", + "symfony/http-foundation": "^2.7|^3.0", + "symfony/http-kernel": "^2.7|^3.0", "symfony/routing": "^2.7|^3.0", + "symfony/security-core": "^2.7|^3.0", + "symfony/templating": "^2.7|^3.0", "willdurand/jsonp-callback-validator": "^1.0", "willdurand/negotiation": "^2.0" }, @@ -1020,13 +992,15 @@ "require-dev": { "jms/serializer-bundle": "^1.0", "phpoption/phpoption": "^1.1", + "psr/http-message": "^1.0", "sensio/framework-extra-bundle": "^3.0.13", + "symfony/asset": "^2.7|^3.0", "symfony/browser-kit": "^2.7|^3.0", "symfony/css-selector": "^2.7|^3.0", "symfony/dependency-injection": "^2.7|^3.0", "symfony/expression-language": "~2.7|^3.0", "symfony/form": "^2.7|^3.0", - "symfony/phpunit-bridge": "~2.7|^3.0", + "symfony/phpunit-bridge": "^3.2", "symfony/security-bundle": "^2.7|^3.0", "symfony/serializer": "^2.7.11|^3.0.4", "symfony/twig-bundle": "^2.7|^3.0", @@ -1044,13 +1018,16 @@ "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" } }, "autoload": { "psr-4": { "FOS\\RestBundle\\": "" - } + }, + "exclude-from-classmap": [ + "Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1075,80 +1052,35 @@ "keywords": [ "rest" ], - "time": "2016-09-07 15:10:55" - }, - { - "name": "google/auth", - "version": "v0.9", - "source": { - "type": "git", - "url": "https://github.com/google/google-auth-library-php.git", - "reference": "47c3c6bece495e58381a21fed13a735bd23a51cc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/google/google-auth-library-php/zipball/47c3c6bece495e58381a21fed13a735bd23a51cc", - "reference": "47c3c6bece495e58381a21fed13a735bd23a51cc", - "shasum": "" - }, - "require": { - "firebase/php-jwt": "~2.0|~3.0", - "guzzlehttp/guzzle": "~5.3|~6.0", - "guzzlehttp/psr7": "~1.2", - "php": ">=5.4", - "psr/cache": "^1.0", - "psr/http-message": "^1.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^1.11", - "phpunit/phpunit": "3.7.*" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ], - "psr-4": { - "Google\\Auth\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "description": "Google Auth Library for PHP", - "homepage": "http://github.com/google/google-auth-library-php", - "keywords": [ - "Authentication", - "google", - "oauth2" - ], - "time": "2016-06-01 22:07:52" + "time": "2017-04-06T12:55:03+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "6.2.2", + "version": "6.3.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60" + "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60", - "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/f4db5a78a5ea468d4831de7f0bf9d9415e348699", + "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699", "shasum": "" }, "require": { "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.3.1", + "guzzlehttp/psr7": "^1.4", "php": ">=5.5" }, "require-dev": { "ext-curl": "*", - "phpunit/phpunit": "^4.0", + "phpunit/phpunit": "^4.0 || ^5.0", "psr/log": "^1.0" }, + "suggest": { + "psr/log": "Required for using the Log middleware" + }, "type": "library", "extra": { "branch-alias": { @@ -1185,32 +1117,32 @@ "rest", "web service" ], - "time": "2016-10-08 15:01:37" + "time": "2017-06-22T18:50:49+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.2.0", + "version": "v1.3.1", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "c10d860e2a9595f8883527fa0021c7da9e65f579" + "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/c10d860e2a9595f8883527fa0021c7da9e65f579", - "reference": "c10d860e2a9595f8883527fa0021c7da9e65f579", + "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646", + "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646", "shasum": "" }, "require": { "php": ">=5.5.0" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "phpunit/phpunit": "^4.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -1236,20 +1168,20 @@ "keywords": [ "promise" ], - "time": "2016-05-18 16:56:05" + "time": "2016-12-20T10:07:11+00:00" }, { "name": "guzzlehttp/psr7", - "version": "1.3.1", + "version": "1.4.2", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b" + "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b", - "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/f5b8a8512e2b58b0071a7280e39f14f72e05d87c", + "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c", "shasum": "" }, "require": { @@ -1285,16 +1217,23 @@ "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Schultze", + "homepage": "https://github.com/Tobion" } ], - "description": "PSR-7 message implementation", + "description": "PSR-7 message implementation that also provides common utility methods", "keywords": [ "http", "message", + "request", + "response", "stream", - "uri" + "uri", + "url" ], - "time": "2016-06-24 23:00:38" + "time": "2017-03-20T17:10:46+00:00" }, { "name": "incenteev/composer-parameter-handler", @@ -1345,7 +1284,7 @@ "keywords": [ "parameters management" ], - "time": "2015-11-10 17:04:01" + "time": "2015-11-10T17:04:01+00:00" }, { "name": "jdorn/sql-formatter", @@ -1395,27 +1334,28 @@ "highlight", "sql" ], - "time": "2014-01-12 16:20:24" + "time": "2014-01-12T16:20:24+00:00" }, { "name": "jms/metadata", - "version": "1.5.1", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/schmittjoh/metadata.git", - "reference": "22b72455559a25777cfd28c4ffda81ff7639f353" + "reference": "6a06970a10e0a532fb52d3959547123b84a3b3ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/metadata/zipball/22b72455559a25777cfd28c4ffda81ff7639f353", - "reference": "22b72455559a25777cfd28c4ffda81ff7639f353", + "url": "https://api.github.com/repos/schmittjoh/metadata/zipball/6a06970a10e0a532fb52d3959547123b84a3b3ab", + "reference": "6a06970a10e0a532fb52d3959547123b84a3b3ab", "shasum": "" }, "require": { "php": ">=5.3.0" }, "require-dev": { - "doctrine/cache": "~1.0" + "doctrine/cache": "~1.0", + "symfony/cache": "~3.1" }, "type": "library", "extra": { @@ -1430,14 +1370,12 @@ }, "notification-url": "https://packagist.org/downloads/", "license": [ - "Apache" + "Apache-2.0" ], "authors": [ { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com", - "homepage": "https://github.com/schmittjoh", - "role": "Developer of wrapped JMSSerializerBundle" + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com" } ], "description": "Class/method/property metadata management in PHP", @@ -1447,7 +1385,7 @@ "xml", "yaml" ], - "time": "2014-07-12 07:13:19" + "time": "2016-12-05T10:18:33+00:00" }, { "name": "jms/parser-lib", @@ -1482,20 +1420,20 @@ "Apache2" ], "description": "A library for easily creating recursive-descent parsers.", - "time": "2012-11-18 18:08:43" + "time": "2012-11-18T18:08:43+00:00" }, { "name": "jms/serializer", - "version": "1.3.1", + "version": "1.7.1", "source": { "type": "git", "url": "https://github.com/schmittjoh/serializer.git", - "reference": "705d0b4633b9c44e6253aa18306b3972282cd3a3" + "reference": "4fad8bbbe76e05de3b79ffa3db027058ed3813ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/serializer/zipball/705d0b4633b9c44e6253aa18306b3972282cd3a3", - "reference": "705d0b4633b9c44e6253aa18306b3972282cd3a3", + "url": "https://api.github.com/repos/schmittjoh/serializer/zipball/4fad8bbbe76e05de3b79ffa3db027058ed3813ff", + "reference": "4fad8bbbe76e05de3b79ffa3db027058ed3813ff", "shasum": "" }, "require": { @@ -1508,28 +1446,33 @@ "phpoption/phpoption": "^1.1" }, "conflict": { + "jms/serializer-bundle": "<1.2.1", "twig/twig": "<1.12" }, "require-dev": { "doctrine/orm": "~2.1", "doctrine/phpcr-odm": "^1.3|^2.0", + "ext-pdo_sqlite": "*", "jackalope/jackalope-doctrine-dbal": "^1.1.5", "phpunit/phpunit": "^4.8|^5.0", "propel/propel1": "~1.7", + "symfony/expression-language": "^2.6|^3.0", "symfony/filesystem": "^2.1", - "symfony/form": "~2.1", - "symfony/translation": "^2.1", - "symfony/validator": "^2.2", - "symfony/yaml": "^2.1", + "symfony/form": "~2.1|^3.0", + "symfony/translation": "^2.1|^3.0", + "symfony/validator": "^2.2|^3.0", + "symfony/yaml": "^2.1|^3.0", "twig/twig": "~1.12|~2.0" }, "suggest": { + "doctrine/cache": "Required if you like to use cache functionality.", + "doctrine/collections": "Required if you like to use doctrine collection types as ArrayCollection.", "symfony/yaml": "Required if you'd like to serialize data to YAML format." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.8-dev" } }, "autoload": { @@ -1539,7 +1482,7 @@ }, "notification-url": "https://packagist.org/downloads/", "license": [ - "Apache2" + "Apache-2.0" ], "authors": [ { @@ -1556,25 +1499,25 @@ "serialization", "xml" ], - "time": "2016-08-23 17:20:24" + "time": "2017-05-15T08:35:42+00:00" }, { "name": "jms/serializer-bundle", - "version": "1.1.0", + "version": "1.5.0", "target-dir": "JMS/SerializerBundle", "source": { "type": "git", "url": "https://github.com/schmittjoh/JMSSerializerBundle.git", - "reference": "3e396c980545350c2efb65a50041d2a9f9d6562e" + "reference": "85ee039a2b7f89d77c403e33cee7b43a875c31e5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/JMSSerializerBundle/zipball/3e396c980545350c2efb65a50041d2a9f9d6562e", - "reference": "3e396c980545350c2efb65a50041d2a9f9d6562e", + "url": "https://api.github.com/repos/schmittjoh/JMSSerializerBundle/zipball/85ee039a2b7f89d77c403e33cee7b43a875c31e5", + "reference": "85ee039a2b7f89d77c403e33cee7b43a875c31e5", "shasum": "" }, "require": { - "jms/serializer": "^1.0.0", + "jms/serializer": "^1.7", "php": ">=5.4.0", "phpoption/phpoption": "^1.1.0", "symfony/framework-bundle": "~2.3|~3.0" @@ -1582,9 +1525,11 @@ "require-dev": { "doctrine/doctrine-bundle": "*", "doctrine/orm": "*", + "phpunit/phpunit": "^4.2|^5.0", "symfony/browser-kit": "*", "symfony/class-loader": "*", "symfony/css-selector": "*", + "symfony/expression-language": "~2.6|~3.0", "symfony/finder": "*", "symfony/form": "*", "symfony/process": "*", @@ -1599,7 +1544,7 @@ "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "1.5-dev" } }, "autoload": { @@ -1609,7 +1554,7 @@ }, "notification-url": "https://packagist.org/downloads/", "license": [ - "Apache2" + "Apache-2.0" ], "authors": [ { @@ -1626,82 +1571,20 @@ "serialization", "xml" ], - "time": "2015-11-10 12:26:42" - }, - { - "name": "kreait/firebase-php", - "version": "2.0.0-beta2", - "source": { - "type": "git", - "url": "https://github.com/kreait/firebase-php.git", - "reference": "ebee678764737f4163a9d4bd033b4565143cce4d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/kreait/firebase-php/zipball/ebee678764737f4163a9d4bd033b4565143cce4d", - "reference": "ebee678764737f4163a9d4bd033b4565143cce4d", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "firebase/token-generator": "^3.0", - "google/auth": "^0.9.0", - "guzzlehttp/guzzle": "^6.2.1", - "mtdowling/jmespath.php": "^2.3", - "php": "^7.0" - }, - "require-dev": { - "fabpot/php-cs-fixer": "^1.11", - "phpunit/phpunit": "^5.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-1.0": "1.x-dev", - "dev-master": "2.x-dev" - } - }, - "autoload": { - "psr-4": { - "Firebase\\": "src/Firebase" - }, - "files": [ - "src/Firebase.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jérôme Gamez", - "homepage": "https://github.com/jeromegamez" - } - ], - "description": "PHP SDK for Google Firebase", - "homepage": "https://github.com/kreait/firebase-php", - "keywords": [ - "api", - "database", - "firebase", - "google", - "sdk" - ], - "time": "2016-10-11 13:13:47" + "time": "2017-05-10T10:17:17+00:00" }, { "name": "monolog/monolog", - "version": "1.21.0", + "version": "1.23.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "f42fbdfd53e306bda545845e4dbfd3e72edb4952" + "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/f42fbdfd53e306bda545845e4dbfd3e72edb4952", - "reference": "f42fbdfd53e306bda545845e4dbfd3e72edb4952", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4", + "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4", "shasum": "" }, "require": { @@ -1712,7 +1595,7 @@ "psr/log-implementation": "1.0.0" }, "require-dev": { - "aws/aws-sdk-php": "^2.4.9", + "aws/aws-sdk-php": "^2.4.9 || ^3.0", "doctrine/couchdb": "~1.0@dev", "graylog2/gelf-php": "~1.0", "jakub-onderka/php-parallel-lint": "0.9", @@ -1722,7 +1605,7 @@ "phpunit/phpunit-mock-objects": "2.3.0", "ruflin/elastica": ">=0.90 <3.0", "sentry/sentry": "^0.13", - "swiftmailer/swiftmailer": "~5.3" + "swiftmailer/swiftmailer": "^5.3|^6.0" }, "suggest": { "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", @@ -1766,75 +1649,20 @@ "logging", "psr-3" ], - "time": "2016-07-29 03:23:52" - }, - { - "name": "mtdowling/jmespath.php", - "version": "2.3.0", - "source": { - "type": "git", - "url": "https://github.com/jmespath/jmespath.php.git", - "reference": "192f93e43c2c97acde7694993ab171b3de284093" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/192f93e43c2c97acde7694993ab171b3de284093", - "reference": "192f93e43c2c97acde7694993ab171b3de284093", - "shasum": "" - }, - "require": { - "php": ">=5.4.0" - }, - "require-dev": { - "phpunit/phpunit": "~4.0" - }, - "bin": [ - "bin/jp.php" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "psr-4": { - "JmesPath\\": "src/" - }, - "files": [ - "src/JmesPath.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "Declaratively specify how to extract elements from a JSON document", - "keywords": [ - "json", - "jsonpath" - ], - "time": "2016-01-05 18:25:05" + "time": "2017-06-19T01:22:40+00:00" }, { "name": "paragonie/random_compat", - "version": "v2.0.2", + "version": "v2.0.10", "source": { "type": "git", "url": "https://github.com/paragonie/random_compat.git", - "reference": "088c04e2f261c33bed6ca5245491cfca69195ccf" + "reference": "634bae8e911eefa89c1abfbf1b66da679ac8f54d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/088c04e2f261c33bed6ca5245491cfca69195ccf", - "reference": "088c04e2f261c33bed6ca5245491cfca69195ccf", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/634bae8e911eefa89c1abfbf1b66da679ac8f54d", + "reference": "634bae8e911eefa89c1abfbf1b66da679ac8f54d", "shasum": "" }, "require": { @@ -1869,7 +1697,7 @@ "pseudorandom", "random" ], - "time": "2016-04-03 06:00:07" + "time": "2017-03-13T16:27:32+00:00" }, { "name": "phpcollection/phpcollection", @@ -1917,7 +1745,7 @@ "sequence", "set" ], - "time": "2015-05-17 12:39:23" + "time": "2015-05-17T12:39:23+00:00" }, { "name": "phpoption/phpoption", @@ -1967,7 +1795,7 @@ "php", "type" ], - "time": "2015-07-25 16:39:46" + "time": "2015-07-25T16:39:46+00:00" }, { "name": "psr/cache", @@ -2013,7 +1841,7 @@ "psr", "psr-6" ], - "time": "2016-08-06 20:24:11" + "time": "2016-08-06T20:24:11+00:00" }, { "name": "psr/http-message", @@ -2063,7 +1891,7 @@ "request", "response" ], - "time": "2016-08-06 14:39:51" + "time": "2016-08-06T14:39:51+00:00" }, { "name": "psr/log", @@ -2110,20 +1938,20 @@ "psr", "psr-3" ], - "time": "2016-10-10 12:19:37" + "time": "2016-10-10T12:19:37+00:00" }, { "name": "sensio/distribution-bundle", - "version": "v5.0.13", + "version": "v5.0.20", "source": { "type": "git", "url": "https://github.com/sensiolabs/SensioDistributionBundle.git", - "reference": "7bc47dcfdbde6d567e1a834577d1c04ddb970281" + "reference": "4b019d4c0bd64438c42e4b6b0726085b409be8d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/7bc47dcfdbde6d567e1a834577d1c04ddb970281", - "reference": "7bc47dcfdbde6d567e1a834577d1c04ddb970281", + "url": "https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/4b019d4c0bd64438c42e4b6b0726085b409be8d9", + "reference": "4b019d4c0bd64438c42e4b6b0726085b409be8d9", "shasum": "" }, "require": { @@ -2162,20 +1990,20 @@ "configuration", "distribution" ], - "time": "2016-10-08 18:50:33" + "time": "2017-05-11T16:21:03+00:00" }, { "name": "sensio/framework-extra-bundle", - "version": "v3.0.16", + "version": "v3.0.26", "source": { "type": "git", "url": "https://github.com/sensiolabs/SensioFrameworkExtraBundle.git", - "reference": "507a15f56fa7699f6cc8c2c7de4080b19ce22546" + "reference": "6d6cbe971554f0a2cc84965850481eb04a2a0059" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/507a15f56fa7699f6cc8c2c7de4080b19ce22546", - "reference": "507a15f56fa7699f6cc8c2c7de4080b19ce22546", + "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/6d6cbe971554f0a2cc84965850481eb04a2a0059", + "reference": "6d6cbe971554f0a2cc84965850481eb04a2a0059", "shasum": "" }, "require": { @@ -2184,14 +2012,22 @@ "symfony/framework-bundle": "~2.3|~3.0" }, "require-dev": { + "doctrine/doctrine-bundle": "~1.5", + "doctrine/orm": "~2.4,>=2.4.5", + "symfony/asset": "~2.7|~3.0", "symfony/browser-kit": "~2.3|~3.0", "symfony/dom-crawler": "~2.3|~3.0", "symfony/expression-language": "~2.4|~3.0", "symfony/finder": "~2.3|~3.0", - "symfony/phpunit-bridge": "~2.7|~3.0", + "symfony/phpunit-bridge": "~3.2", + "symfony/psr-http-message-bridge": "^0.3", "symfony/security-bundle": "~2.4|~3.0", + "symfony/templating": "~2.3|~3.0", + "symfony/translation": "~2.3|~3.0", "symfony/twig-bundle": "~2.3|~3.0", - "twig/twig": "~1.11|~2.0" + "symfony/yaml": "~2.3|~3.0", + "twig/twig": "~1.12|~2.0", + "zendframework/zend-diactoros": "^1.3" }, "suggest": { "symfony/expression-language": "", @@ -2224,23 +2060,24 @@ "annotations", "controllers" ], - "time": "2016-03-25 17:08:27" + "time": "2017-05-11T17:01:57+00:00" }, { "name": "sensiolabs/security-checker", - "version": "v4.0.0", + "version": "v4.0.4", "source": { "type": "git", "url": "https://github.com/sensiolabs/security-checker.git", - "reference": "116027b57b568ed61b7b1c80eeb4f6ee9e8c599c" + "reference": "9e69eddf3bc49d1ee5c7908564da3141796d4bbc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/security-checker/zipball/116027b57b568ed61b7b1c80eeb4f6ee9e8c599c", - "reference": "116027b57b568ed61b7b1c80eeb4f6ee9e8c599c", + "url": "https://api.github.com/repos/sensiolabs/security-checker/zipball/9e69eddf3bc49d1ee5c7908564da3141796d4bbc", + "reference": "9e69eddf3bc49d1ee5c7908564da3141796d4bbc", "shasum": "" }, "require": { + "composer/ca-bundle": "^1.0", "symfony/console": "~2.7|~3.0" }, "bin": [ @@ -2268,27 +2105,28 @@ } ], "description": "A security checker for your composer.lock", - "time": "2016-09-23 18:09:57" + "time": "2017-03-31T14:50:32+00:00" }, { "name": "swiftmailer/swiftmailer", - "version": "v5.4.3", + "version": "v5.4.8", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "4cc92842069c2bbc1f28daaaf1d2576ec4dfe153" + "reference": "9a06dc570a0367850280eefd3f1dc2da45aef517" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/4cc92842069c2bbc1f28daaaf1d2576ec4dfe153", - "reference": "4cc92842069c2bbc1f28daaaf1d2576ec4dfe153", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/9a06dc570a0367850280eefd3f1dc2da45aef517", + "reference": "9a06dc570a0367850280eefd3f1dc2da45aef517", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "mockery/mockery": "~0.9.1" + "mockery/mockery": "~0.9.1", + "symfony/phpunit-bridge": "~3.2" }, "type": "library", "extra": { @@ -2321,20 +2159,20 @@ "mail", "mailer" ], - "time": "2016-07-08 11:51:25" + "time": "2017-05-01T15:54:03+00:00" }, { "name": "symfony/monolog-bundle", - "version": "2.11.1", + "version": "v2.12.1", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bundle.git", - "reference": "e7caf4936c7be82bc6d68df87f1d23a0d5bf6e00" + "reference": "b0146bdca7ba2a65f3bbe7010423c7393b29ec3f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bundle/zipball/e7caf4936c7be82bc6d68df87f1d23a0d5bf6e00", - "reference": "e7caf4936c7be82bc6d68df87f1d23a0d5bf6e00", + "url": "https://api.github.com/repos/symfony/monolog-bundle/zipball/b0146bdca7ba2a65f3bbe7010423c7393b29ec3f", + "reference": "b0146bdca7ba2a65f3bbe7010423c7393b29ec3f", "shasum": "" }, "require": { @@ -2381,20 +2219,20 @@ "log", "logging" ], - "time": "2016-04-13 16:21:01" + "time": "2017-01-02T19:04:26+00:00" }, { "name": "symfony/polyfill-apcu", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-apcu.git", - "reference": "6d58bceaeea2c2d3eb62503839b18646e161cd6b" + "reference": "2e7965b8cdfbba50d0092d3f6dca97dddec409e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/6d58bceaeea2c2d3eb62503839b18646e161cd6b", - "reference": "6d58bceaeea2c2d3eb62503839b18646e161cd6b", + "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/2e7965b8cdfbba50d0092d3f6dca97dddec409e2", + "reference": "2e7965b8cdfbba50d0092d3f6dca97dddec409e2", "shasum": "" }, "require": { @@ -2403,7 +2241,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -2434,25 +2272,25 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/polyfill-intl-icu", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-icu.git", - "reference": "0f8dc2c45f69f8672379e9210bca4a115cd5146f" + "reference": "3191cbe0ce64987bd382daf6724af31c53daae01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/0f8dc2c45f69f8672379e9210bca4a115cd5146f", - "reference": "0f8dc2c45f69f8672379e9210bca4a115cd5146f", + "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/3191cbe0ce64987bd382daf6724af31c53daae01", + "reference": "3191cbe0ce64987bd382daf6724af31c53daae01", "shasum": "" }, "require": { "php": ">=5.3.3", - "symfony/intl": "~2.3|~3.0" + "symfony/intl": "~2.3|~3.0|~4.0" }, "suggest": { "ext-intl": "For best performance" @@ -2460,7 +2298,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -2492,20 +2330,20 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "dff51f72b0706335131b00a7f49606168c582594" + "reference": "f29dca382a6485c3cbe6379f0c61230167681937" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594", - "reference": "dff51f72b0706335131b00a7f49606168c582594", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f29dca382a6485c3cbe6379f0c61230167681937", + "reference": "f29dca382a6485c3cbe6379f0c61230167681937", "shasum": "" }, "require": { @@ -2517,7 +2355,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -2551,20 +2389,20 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2017-06-09T14:24:12+00:00" }, { "name": "symfony/polyfill-php56", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "3edf57a8fbf9a927533344cef65ad7e1cf31030a" + "reference": "bc0b7d6cb36b10cfabb170a3e359944a95174929" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/3edf57a8fbf9a927533344cef65ad7e1cf31030a", - "reference": "3edf57a8fbf9a927533344cef65ad7e1cf31030a", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/bc0b7d6cb36b10cfabb170a3e359944a95174929", + "reference": "bc0b7d6cb36b10cfabb170a3e359944a95174929", "shasum": "" }, "require": { @@ -2574,7 +2412,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -2607,20 +2445,20 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/polyfill-php70", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "a42f4b6b05ed458910f8af4c4e1121b0101b2d85" + "reference": "032fd647d5c11a9ceab8ee8747e13b5448e93874" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/a42f4b6b05ed458910f8af4c4e1121b0101b2d85", - "reference": "a42f4b6b05ed458910f8af4c4e1121b0101b2d85", + "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/032fd647d5c11a9ceab8ee8747e13b5448e93874", + "reference": "032fd647d5c11a9ceab8ee8747e13b5448e93874", "shasum": "" }, "require": { @@ -2630,7 +2468,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -2666,20 +2504,20 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2017-06-09T14:24:12+00:00" }, { "name": "symfony/polyfill-util", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-util.git", - "reference": "ef830ce3d218e622b221d6bfad42c751d974bf99" + "reference": "ebccbde4aad410f6438d86d7d261c6b4d2b9a51d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/ef830ce3d218e622b221d6bfad42c751d974bf99", - "reference": "ef830ce3d218e622b221d6bfad42c751d974bf99", + "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/ebccbde4aad410f6438d86d7d261c6b4d2b9a51d", + "reference": "ebccbde4aad410f6438d86d7d261c6b4d2b9a51d", "shasum": "" }, "require": { @@ -2688,7 +2526,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -2718,32 +2556,34 @@ "polyfill", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/swiftmailer-bundle", - "version": "v2.3.11", + "version": "v2.6.2", "source": { "type": "git", "url": "https://github.com/symfony/swiftmailer-bundle.git", - "reference": "5e1a90f28213231ceee19c953bbebc5b5b95c690" + "reference": "deabc81120c2086571f7c4484ab785c5e1b84f75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/5e1a90f28213231ceee19c953bbebc5b5b95c690", - "reference": "5e1a90f28213231ceee19c953bbebc5b5b95c690", + "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/deabc81120c2086571f7c4484ab785c5e1b84f75", + "reference": "deabc81120c2086571f7c4484ab785c5e1b84f75", "shasum": "" }, "require": { "php": ">=5.3.2", - "swiftmailer/swiftmailer": ">=4.2.0,~5.0", - "symfony/config": "~2.3|~3.0", - "symfony/dependency-injection": "~2.3|~3.0", - "symfony/http-kernel": "~2.3|~3.0", - "symfony/yaml": "~2.3|~3.0" + "swiftmailer/swiftmailer": "~4.2|~5.0", + "symfony/config": "~2.7|~3.0", + "symfony/dependency-injection": "~2.7|~3.0", + "symfony/http-kernel": "~2.7|~3.0" }, "require-dev": { - "symfony/phpunit-bridge": "~2.7|~3.0" + "symfony/console": "~2.7|~3.0", + "symfony/framework-bundle": "~2.7|~3.0", + "symfony/phpunit-bridge": "~3.3@dev", + "symfony/yaml": "~2.7|~3.0" }, "suggest": { "psr/log": "Allows logging" @@ -2751,7 +2591,7 @@ "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.6-dev" } }, "autoload": { @@ -2775,20 +2615,20 @@ ], "description": "Symfony SwiftmailerBundle", "homepage": "http://symfony.com", - "time": "2016-01-15 16:41:20" + "time": "2017-05-22T04:58:24+00:00" }, { "name": "symfony/symfony", - "version": "v3.1.5", + "version": "v3.1.10", "source": { "type": "git", "url": "https://github.com/symfony/symfony.git", - "reference": "e7e1d01fe103de78bca6fbf7f6f4acf64482d63c" + "reference": "96e7dede3ddc9e3b3392f5cc93e26eca77545a89" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/symfony/zipball/e7e1d01fe103de78bca6fbf7f6f4acf64482d63c", - "reference": "e7e1d01fe103de78bca6fbf7f6f4acf64482d63c", + "url": "https://api.github.com/repos/symfony/symfony/zipball/96e7dede3ddc9e3b3392f5cc93e26eca77545a89", + "reference": "96e7dede3ddc9e3b3392f5cc93e26eca77545a89", "shasum": "" }, "require": { @@ -2801,7 +2641,7 @@ "symfony/polyfill-php56": "~1.0", "symfony/polyfill-php70": "~1.0", "symfony/polyfill-util": "~1.0", - "twig/twig": "~1.26|~2.0" + "twig/twig": "~1.28|~2.0" }, "conflict": { "phpdocumentor/reflection-docblock": "<3.0", @@ -2870,6 +2710,7 @@ "ocramius/proxy-manager": "~0.4|~1.0|~2.0", "phpdocumentor/reflection-docblock": "^3.0", "predis/predis": "~1.0", + "sensio/framework-extra-bundle": "^3.0.2", "symfony/phpunit-bridge": "~3.2", "symfony/polyfill-apcu": "~1.1", "symfony/security-acl": "~2.8|~3.0" @@ -2916,38 +2757,43 @@ "keywords": [ "framework" ], - "time": "2016-10-03 19:01:14" + "time": "2017-01-28T02:53:38+00:00" }, { "name": "twig/twig", - "version": "v1.26.1", + "version": "v2.4.3", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "a09d8ee17ac1cfea29ed60c83960ad685c6a898d" + "reference": "eab7c3288ae6603d7d6f92b531626af2b162d1f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/a09d8ee17ac1cfea29ed60c83960ad685c6a898d", - "reference": "a09d8ee17ac1cfea29ed60c83960ad685c6a898d", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/eab7c3288ae6603d7d6f92b531626af2b162d1f2", + "reference": "eab7c3288ae6603d7d6f92b531626af2b162d1f2", "shasum": "" }, "require": { - "php": ">=5.2.7" + "php": "^7.0", + "symfony/polyfill-mbstring": "~1.0" }, "require-dev": { + "psr/container": "^1.0", "symfony/debug": "~2.7", - "symfony/phpunit-bridge": "~2.7" + "symfony/phpunit-bridge": "~3.3@dev" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.26-dev" + "dev-master": "2.4-dev" } }, "autoload": { "psr-0": { "Twig_": "lib/" + }, + "psr-4": { + "Twig\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2977,7 +2823,7 @@ "keywords": [ "templating" ], - "time": "2016-10-05 18:57:41" + "time": "2017-06-07T18:47:58+00:00" }, { "name": "willdurand/jsonp-callback-validator", @@ -3017,20 +2863,20 @@ } ], "description": "JSONP callback validator.", - "time": "2014-01-20 22:35:06" + "time": "2014-01-20T22:35:06+00:00" }, { "name": "willdurand/negotiation", - "version": "v2.2.1", + "version": "v2.3.1", "source": { "type": "git", "url": "https://github.com/willdurand/Negotiation.git", - "reference": "1f210db45723b21edd69f39794662b8d64656b93" + "reference": "03436ededa67c6e83b9b12defac15384cb399dc9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/willdurand/Negotiation/zipball/1f210db45723b21edd69f39794662b8d64656b93", - "reference": "1f210db45723b21edd69f39794662b8d64656b93", + "url": "https://api.github.com/repos/willdurand/Negotiation/zipball/03436ededa67c6e83b9b12defac15384cb399dc9", + "reference": "03436ededa67c6e83b9b12defac15384cb399dc9", "shasum": "" }, "require": { @@ -3042,7 +2888,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -3069,39 +2915,41 @@ "header", "negotiation" ], - "time": "2016-10-14 09:17:47" + "time": "2017-05-14T17:21:12+00:00" } ], "packages-dev": [ { "name": "sensio/generator-bundle", - "version": "v3.0.11", + "version": "v3.1.4", "source": { "type": "git", "url": "https://github.com/sensiolabs/SensioGeneratorBundle.git", - "reference": "b9be7f1b3b2e8bcfc1debefc901b71da923a5e5c" + "reference": "37f9f4e165b033fb76cc2320838321cc57140e65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioGeneratorBundle/zipball/b9be7f1b3b2e8bcfc1debefc901b71da923a5e5c", - "reference": "b9be7f1b3b2e8bcfc1debefc901b71da923a5e5c", + "url": "https://api.github.com/repos/sensiolabs/SensioGeneratorBundle/zipball/37f9f4e165b033fb76cc2320838321cc57140e65", + "reference": "37f9f4e165b033fb76cc2320838321cc57140e65", "shasum": "" }, "require": { "symfony/console": "~2.7|~3.0", "symfony/framework-bundle": "~2.7|~3.0", "symfony/process": "~2.7|~3.0", - "symfony/yaml": "~2.7|~3.0" + "symfony/yaml": "~2.7|~3.0", + "twig/twig": "^1.28.2|^2.0" }, "require-dev": { "doctrine/orm": "~2.4", "symfony/doctrine-bridge": "~2.7|~3.0", - "twig/twig": "~1.18" + "symfony/filesystem": "~2.7|~3.0", + "symfony/phpunit-bridge": "^3.3" }, "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "3.1.x-dev" } }, "autoload": { @@ -3123,32 +2971,39 @@ } ], "description": "This bundle generates code for you", - "time": "2016-10-10 14:17:42" + "time": "2017-03-15T01:02:10+00:00" }, { "name": "symfony/phpunit-bridge", - "version": "v3.1.5", + "version": "v3.3.2", "source": { "type": "git", "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "1f4e2059cf4ecae1053b9c3027b3fc548fd077b9" + "reference": "acae7416018ebe5a7a2d79b4221203b2b8aca5d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/1f4e2059cf4ecae1053b9c3027b3fc548fd077b9", - "reference": "1f4e2059cf4ecae1053b9c3027b3fc548fd077b9", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/acae7416018ebe5a7a2d79b4221203b2b8aca5d3", + "reference": "acae7416018ebe5a7a2d79b4221203b2b8aca5d3", "shasum": "" }, "require": { "php": ">=5.3.3" }, + "conflict": { + "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" + }, "suggest": { + "ext-zip": "Zip support is required when using bin/simple-phpunit", "symfony/debug": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" }, + "bin": [ + "bin/simple-phpunit" + ], "type": "symfony-bridge", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-master": "3.3-dev" } }, "autoload": { @@ -3178,14 +3033,12 @@ ], "description": "Symfony PHPUnit Bridge", "homepage": "https://symfony.com", - "time": "2016-08-19 06:48:39" + "time": "2017-06-01T14:45:22+00:00" } ], "aliases": [], "minimum-stability": "stable", - "stability-flags": { - "kreait/firebase-php": 10 - }, + "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": { diff --git a/src/.DS_Store b/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..23e23d39d9246aef053eebd7ad124f9915a1c4ad Binary files /dev/null and b/src/.DS_Store differ diff --git a/src/ApiBundle/Controller/DefaultController.php b/src/ApiBundle/Controller/DefaultController.php index 89a644077ee0ace3c6a059253ac57f6851d9c0d8..ad510ef659a3cf2112e8e0524f76d60ff54aa486 100644 --- a/src/ApiBundle/Controller/DefaultController.php +++ b/src/ApiBundle/Controller/DefaultController.php @@ -59,7 +59,7 @@ class DefaultController extends FOSRestController return $this->handleView($view); } catch (\Exception $e) { - $this->getLogger()->err($e->getMessage()); + $this->getLogger()->err('Error while retrieving the leagues for this sport (' . $sport . ') : ' . $e->getMessage()); $view = View::create() ->setStatusCode(400) ->setData($e->getMessage()); @@ -141,9 +141,14 @@ class DefaultController extends FOSRestController { $view = View::create(); + + // log the transaction + $this->get('logger')->warning(print_r($request->getContent(), true)); if ($request->getMethod() === 'POST') { - $content = (array)\GuzzleHttp\json_decode($request->getContent()); + $this->getLogger()->info('Trying to decode : ' . $request->getContent()); + //$content = (array)\GuzzleHttp\json_decode($request->getContent()); + $content = json_decode($request->getContent(), true); $deviceRepository = $this->getDeviceRepository(); if ($device = $deviceRepository->findOneBy(['uuid' => $content['uuid']])) { $deviceRepository->updateInfo($content,$device); @@ -168,8 +173,12 @@ class DefaultController extends FOSRestController public function savePurchaseAction(Request $request) { $view = View::create(); + + // log the transaction + $this->get('logger')->warning(print_r($request->getContent(), true)); if ($request->getMethod() === 'POST') { + $this->getLogger()->info('Trying to decode : ' . $request->getContent()); $content = (array)\GuzzleHttp\json_decode($request->getContent()); $deviceRepository = $this->getDeviceRepository(); $device = $deviceRepository->findOneBy(['uuid' => $content['uuid']]); @@ -178,7 +187,7 @@ class DefaultController extends FOSRestController $notificationRepository->savePurchase($device, $content['transactionId'], $content['leagues']); } catch (\Exception $e) { $view->setStatusCode(400); - $this->getLogger()->err($e->getMessage()); + $this->getLogger()->err('Error saving the transaction : ' . $e->getMessage()); } return $this->handleView($view); diff --git a/src/BackendBundle/.DS_Store b/src/BackendBundle/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..8fcb0c0c5bfb04464a77d6b7c78a92deb5952232 Binary files /dev/null and b/src/BackendBundle/.DS_Store differ diff --git a/src/BackendBundle/Controller/.NotificationController.php.swo b/src/BackendBundle/Controller/.NotificationController.php.swo new file mode 100644 index 0000000000000000000000000000000000000000..597c12dcce746433ba78286d43a5c42e3074b88e Binary files /dev/null and b/src/BackendBundle/Controller/.NotificationController.php.swo differ diff --git a/src/BackendBundle/Controller/.NotificationController.php.swp b/src/BackendBundle/Controller/.NotificationController.php.swp new file mode 100644 index 0000000000000000000000000000000000000000..98e7f1e6364733f428371458087e370a660f27e8 Binary files /dev/null and b/src/BackendBundle/Controller/.NotificationController.php.swp differ diff --git a/src/BackendBundle/Controller/EntityBrowserController.php b/src/BackendBundle/Controller/EntityBrowserController.php index 6d6cec36fde451981787ef8b3908c71d9e8c97c1..3547e1490b438a4717da3371a8060b5cd79c499a 100644 --- a/src/BackendBundle/Controller/EntityBrowserController.php +++ b/src/BackendBundle/Controller/EntityBrowserController.php @@ -13,7 +13,7 @@ use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; class EntityBrowserController extends Controller { - const DEFAULT_PAGE_RESULT = 20; + const DEFAULT_PAGE_RESULT = 2000000; /** * @param string $name diff --git a/src/BackendBundle/Controller/NotificationController.php b/src/BackendBundle/Controller/NotificationController.php index 45862f2aab03f078b27f4c900b8dec53500f36a4..b9a8ad92e5a9bdb9bc994b547438cea21f3a0c44 100644 --- a/src/BackendBundle/Controller/NotificationController.php +++ b/src/BackendBundle/Controller/NotificationController.php @@ -24,7 +24,7 @@ class NotificationController extends Controller const NOTIFICATION_API_URL = 'https://fcm.googleapis.com/fcm/send'; const SERVER_KEY = "AAAA6m6eLXI:APA91bHDsojOIQaWHX5nGNGS9Thyn6MAZZvLvvfEEdWmzbOjD7lYqkghcER69wRkiaRb4zfEQ5P5V8ckdVjGUf58CmMqYNhsRPCy75OeugN85oHCOCBvYn7I7czIsy2pScYKgB2eWC0wRxsyw7-iEMwpzf6eZFWM8w"; const SENDER_ID = "1006878207346"; - const DEFAULT_PAGE_RESULT = 20; + const DEFAULT_PAGE_RESULT = 200000000; /** * @param Request $request @@ -45,10 +45,12 @@ class NotificationController extends Controller if ($form->isValid()) { $devices = $this->getDoctrine()->getRepository('BackendBundle:Device')->findAll(); - + + $client = new Client(); + - foreach ($devices as $device) { + /*foreach ($devices as $device) { if ($device->getLocale() === 'fr') { $message = [ 'notification' => [ @@ -82,11 +84,52 @@ class NotificationController extends Controller ] ]); } - } + }*/ + + $messageFR = [ + 'notification' => [ + 'title' => $notification->getFrenchTitle(), + 'body' => $notification->getFrenchContent(), + "content_available" => 1 + ], + //'to' => $device->getToken(), + 'to' => '/topics/fr', + 'priority' => 'high' + ]; + + $messageEN = [ + 'notification' => [ + 'title' => $notification->getEnglishTitle(), + 'body' => $notification->getEnglishContent(), + "content_available" => 1 + ], + //'to' => $device->getToken(), + 'to' => '/topics/en', + 'priority' => 'high' + ]; + + $client->request('POST', self::NOTIFICATION_API_URL, [ + 'body' => json_encode($messageFR), + 'headers'=> [ + 'Authorization' => 'key='.self::SERVER_KEY, + 'Content-Type' => 'application/json', + ], + 'verify' => false, + ]); + + $client->request('POST', self::NOTIFICATION_API_URL, [ + 'body' => json_encode($messageEN), + 'headers'=> [ + 'Authorization' => 'key='.self::SERVER_KEY, + 'Content-Type' => 'application/json', + ], + 'verify' => false, + ]); $notification->setDate(new \DateTime()); $em = $this->getDoctrine()->getEntityManager(); $em->persist($notification); + $em->flush(); $this->getDoctrine()->getRepository('BackendBundle:NotificationOnDevice')->updateStatusOnAllDevices($devices, $notification); $this->addFlash('success', 'La notification a bien été envoyée'); return $this->redirectToRoute('backend_notification_list', ['page' => 1]); diff --git a/src/BackendBundle/Controller/NotificationController.php~ b/src/BackendBundle/Controller/NotificationController.php~ new file mode 100644 index 0000000000000000000000000000000000000000..453fb0ffda085e15c2b5255a014cdff4529b9c23 --- /dev/null +++ b/src/BackendBundle/Controller/NotificationController.php~ @@ -0,0 +1,135 @@ +<?php +/** + * Created by PhpStorm. + * User: jeremyguiselin + * Date: 23/09/2016 + * Time: 08:22 + */ + +namespace BackendBundle\Controller; + +use BackendBundle\Entity\Notification; +use Doctrine\ORM\Tools\Pagination\Paginator; +use GuzzleHttp\Client; +use GuzzleHttp\Exception\BadResponseException; +use GuzzleHttp\Exception\ClientException; +use Symfony\Bundle\FrameworkBundle\Controller\Controller; +use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpFoundation\Response; +use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; + +class NotificationController extends Controller +{ + + const NOTIFICATION_API_URL = 'https://fcm.googleapis.com/fcm/send'; + const SERVER_KEY = "AIzaSyCFdGq-rjzznFOEzDifZGsRoeWT8LFAc9s"; + const SENDER_ID = "1006878207346"; + const DEFAULT_PAGE_RESULT = 20; + + /** + * @param Request $request + * @return Response + * + * @Route("/admin/notification/create") + */ + public function createAction(Request $request) + { + + $notification = new Notification(); + + $form = $this->createForm('BackendBundle\\Form\\NotificationType', $notification); + + if ($request->getMethod() === Request::METHOD_POST) { + $form->handleRequest($request); + + if ($form->isValid()) { + + $devices = $this->getDoctrine()->getRepository('BackendBundle:Device')->findAll(); + + $client = new Client(); + + foreach ($devices as $device) { + if ($device->getLocale() === 'fr') { + $message = [ + 'notification' => [ + 'title' => $notification->getFrenchTitle(), + 'body' => $notification->getFrenchContent() + ], + 'to' => $device->getToken() + ]; + } else { + $message = [ + 'notification' => [ + 'title' => $notification->getEnglishTitle(), + 'body' => $notification->getEnglishContent() + ], + 'to' => $device->getToken() + ]; + } + + $client->request('POST', self::NOTIFICATION_API_URL, [ + 'body' => json_encode($message), + 'headers'=> [ + 'Authorization' => 'key='.self::SERVER_KEY, + 'Content-Type' => 'application/json', + ] + ]); + } + + $notification->setDate(new \DateTime()); + $em = $this->getDoctrine()->getEntityManager(); + $em->persist($notification); + $this->getDoctrine()->getRepository('BackendBundle:NotificationOnDevice')->updateStatusOnAllDevices($devices, $notification); + $this->addFlash('success', 'La notification a bien été envoyée'); + return $this->redirectToRoute('backend_notification_list', ['page' => 1]); + } + } + + return $this->render('@Backend/notification/create.html.twig',[ + 'form' => $form->createView() + ]); + } + + /** + * @param Request $request + * @param int $page + * @return Response + * + * @Route("/admin/notification/list/{page}") + */ + public function listAction(Request $request, int $page) + { + $em = $this->getDoctrine()->getManager(); + + if (!isset($page)) { + $page = 1; + } + + $repository = $em->getRepository('BackendBundle:Notification'); + + $query = $repository->getAll(); + + $firstResult = $page === 1 ? 0 : self::DEFAULT_PAGE_RESULT * ($page-1) - 1; + + $pagination = new Paginator($query); + + $totalItems = count($pagination); + + $pagesCount = ceil($totalItems / self::DEFAULT_PAGE_RESULT) >= 1 ? ceil($totalItems / self::DEFAULT_PAGE_RESULT) : 1; + + $pagination->getQuery() + ->setMaxResults(self::DEFAULT_PAGE_RESULT) + ->setFirstResult($firstResult) + ; + + return $this->render( + 'BackendBundle:notification:list.html.twig', + [ + 'elements' => $pagination, + 'countPages' => $pagesCount, + 'page' => $page + ] + ); + } + +} \ No newline at end of file diff --git a/src/BackendBundle/Entity/League.php b/src/BackendBundle/Entity/League.php index d9204cf3ccf4b9cdeb7f304cab309ad8b696d38d..5a169f2e9f6cdaa96a7a5494533fcc752edd4b71 100644 --- a/src/BackendBundle/Entity/League.php +++ b/src/BackendBundle/Entity/League.php @@ -164,6 +164,7 @@ class League */ public function getPredictionsNumber() { + return 999; return $this->predictionsNumber; } @@ -264,4 +265,9 @@ class League { return $this->englishDescription; } + + public function __toString() + { + return $this->getName() . ' - ' . $this->getFrenchDescription() ; + } } diff --git a/src/BackendBundle/Entity/Transaction.php b/src/BackendBundle/Entity/Transaction.php index 5ec215f2500ab9e9e910249de12f3502b8a12836..7bb95fee6183f705e9005657462f669fcba5e5f6 100644 --- a/src/BackendBundle/Entity/Transaction.php +++ b/src/BackendBundle/Entity/Transaction.php @@ -24,7 +24,7 @@ class Transaction /** * @var string * - * @ORM\Column(name="store_transaction_id", type="string", length=255, unique=true) + * @ORM\Column(name="store_transaction_id", type="string", length=255) */ private $storeTransactionId; diff --git a/src/BackendBundle/Form/PredictionType.php b/src/BackendBundle/Form/PredictionType.php index 5a3fe1a98c4e5d8fe11b0f67a5d16266612397fb..4337bd60100a607ec5910ebb6684c5ba45cc90cf 100644 --- a/src/BackendBundle/Form/PredictionType.php +++ b/src/BackendBundle/Form/PredictionType.php @@ -27,8 +27,7 @@ class PredictionType extends AbstractType ]) ->add('league', EntityType::class, [ 'label' => 'Ligue', - 'class' => 'BackendBundle\Entity\League', - 'choice_label' => 'name' + 'class' => 'BackendBundle\Entity\League' ]) ->add('date', DateTimeType::class, [ 'format' => "yyyy-MM-dd HH:mm", diff --git a/src/BackendBundle/Repository/DeviceRepository.php b/src/BackendBundle/Repository/DeviceRepository.php index a3e04b4661a9eb190d23204e600891e0753469b6..52a27ffe25a5b9cb26db11503500b015954648d1 100644 --- a/src/BackendBundle/Repository/DeviceRepository.php +++ b/src/BackendBundle/Repository/DeviceRepository.php @@ -55,8 +55,12 @@ class DeviceRepository extends EntityRepository $device ->setModel($data['model']) - ->setPlatform($data['platform']) - ->setToken($data['token']) + ->setPlatform($data['platform']); + if ($device->getToken() === 'tokenCannotBeCreated' || !$device->getToken()) { + $device->setToken($data['token']); + } + + $device ->setLocale($data['locale']) ->setVersion($data['version']); } diff --git a/src/BackendBundle/Repository/LeagueRepository.php b/src/BackendBundle/Repository/LeagueRepository.php index db7961ce144696cb31d0bcd0a971d884a9edbc60..c75231dedb819a732edbca9959359eb271c613f9 100644 --- a/src/BackendBundle/Repository/LeagueRepository.php +++ b/src/BackendBundle/Repository/LeagueRepository.php @@ -33,9 +33,10 @@ class LeagueRepository extends EntityRepository $qb = $this->getEntityManager()->getRepository('BackendBundle:Prediction')->createQueryBuilder('p'); $qb - ->select('count(p.id) AS predictions, l.name AS name, min(p.date) as minDate, max(p.date) as maxDate') + ->select('count(p.id) AS predictions, l.id AS leagueId, l.name AS name, min(p.date) as minDate, max(p.date) as maxDate') ->join('p.league', 'l', Join::WITH, 'p.league = l') ->where('l in (:leagues)') + ->andWhere('p.score IS NULL') ->setParameter('leagues', $leagues) ->groupBy('l'); @@ -43,7 +44,7 @@ class LeagueRepository extends EntityRepository $qb = $this->getEntityManager()->getRepository('BackendBundle:LeagueOnDevice')->createQueryBuilder('ld'); $qb - ->select('ld.status AS status, l.name AS name') + ->select('ld.status AS status, l.id AS leagueId, l.name AS name') ->join('ld.league', 'l', Join::WITH, 'ld.league = l') ->where('l in (:leagues)') ->setParameter('leagues', $leagues) @@ -56,7 +57,7 @@ class LeagueRepository extends EntityRepository $predictions = []; foreach ($leagueResult as $r) { - $predictions[$r['name']] = [ + $predictions[$r['leagueId']] = [ 'number' => (int) $r['predictions'], 'min_date' => $r['minDate'], 'max_date' => $r['maxDate'] @@ -64,18 +65,21 @@ class LeagueRepository extends EntityRepository } foreach ($leagueOnDeviceResult as $r) { - $predictions[$r['name']]['status'] = $r['status']; + $predictions[$r['leagueId']]['status'] = $r['status']; } foreach ($leagues as $league) { - if (isset ($predictions[$league->getName()])) { - $prediction = $predictions[$league->getName()]; + if (isset ($predictions[$league->getId()])) { + $prediction = $predictions[$league->getId()]; $league->setPredictionsNumber($prediction['number']); $league->setMinDate($prediction['min_date']); $league->setMaxDate($prediction['max_date']); $league->setDeviceStatus($prediction['status']); } else { $league->setPredictionsNumber(0); + $league->setMinDate(''); + $league->setMaxDate(''); + $league->setDeviceStatus('lock'); } } diff --git a/src/BackendBundle/Resources/views/notification/list.html.twig b/src/BackendBundle/Resources/views/notification/list.html.twig index 3006af009cb540c9015fb8a829d343363727c7a7..9cc19005715c658bee6b2ecb476b366f633adb54 100644 --- a/src/BackendBundle/Resources/views/notification/list.html.twig +++ b/src/BackendBundle/Resources/views/notification/list.html.twig @@ -5,7 +5,15 @@ {% block subcontent %} <div class="row"> <div class="col-sm-12 table-container"> - {% include '@Backend/entity-browser/buttons.html.twig' %} + <div> + <div class="left"> + <a href="{{ path('backend_notification_create') }}" class="btn btn-lg btn-raised btn-success">Ajouter une nouvelle notification</a> + </div> + <div class="right"> + <a onclick="selectAll(this)" id="selectAll" class="btn btn-lg btn-raised btn-info">Selectionner tout</a> + <a onclick="deleteElements()" id="deleteButton" class="btn btn-lg btn-raised btn-danger">Supprimer</a> + </div> + </div> <table class="table table-striped" cellspacing="0" width="50%"> <thead> <tr> @@ -57,4 +65,4 @@ var section = 'notification'; </script> <script src="{{ asset('js/ajax-select-and-delete.js') }}"></script> -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/BackendBundle/Resources/views/prediction/list.html.twig b/src/BackendBundle/Resources/views/prediction/list.html.twig index 5dec475014b5ae1fdcb6c903fb440d2348c935ec..7ced6386d3968feba19d37f6a64b98934f2e9deb 100644 --- a/src/BackendBundle/Resources/views/prediction/list.html.twig +++ b/src/BackendBundle/Resources/views/prediction/list.html.twig @@ -30,7 +30,7 @@ <td>{{ element.firstTeam.name }}</td> <td>{{ element.secondTeam.name }}</td> <td>{{ element.date | date('d-m-Y H:i') }}</td> - <td>{{ element.league.name }}</td> + <td>{{ element.league }}</td> <td>{{ element.predictionWinFirst }} %</td> <td>{{ element.predictionWinSecond }} %</td> <td>{{ element.predictionDraw }} %</td> @@ -63,4 +63,4 @@ var section = 'prediction'; </script> <script src="{{ asset('js/ajax-select-and-delete.js') }}"></script> -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/tests/.DS_Store b/tests/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..38ac55c817ae7ff7cb4d59a56d48fb333cec3b16 Binary files /dev/null and b/tests/.DS_Store differ diff --git a/tests/ApiBundle/.DS_Store b/tests/ApiBundle/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..2a63f8c15457165e54464946b4b200326765aadf Binary files /dev/null and b/tests/ApiBundle/.DS_Store differ diff --git a/tests/ApiBundle/Controller/.DS_Store b/tests/ApiBundle/Controller/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..c01a3dc60792bfeec18cb28e06f8fca0f475cbf0 Binary files /dev/null and b/tests/ApiBundle/Controller/.DS_Store differ diff --git a/tests/AppBundle/.DS_Store b/tests/AppBundle/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..ec1750422a7775a3b365b4caeeb888f70693741f Binary files /dev/null and b/tests/AppBundle/.DS_Store differ diff --git a/tests/AppBundle/Controller/.DS_Store b/tests/AppBundle/Controller/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..87d12a1ff093583b024775c9786915c6a29d0e65 Binary files /dev/null and b/tests/AppBundle/Controller/.DS_Store differ diff --git a/var/SymfonyRequirements.php b/var/SymfonyRequirements.php index 7e7723af3180037f9311d0d99394c8f6751d5adf..3b14a4022d4324a35c42e6f9b8d91150053fedc2 100755 --- a/var/SymfonyRequirements.php +++ b/var/SymfonyRequirements.php @@ -633,12 +633,6 @@ class SymfonyRequirements extends RequirementCollection 'Install and enable the <strong>mbstring</strong> extension.' ); - $this->addRecommendation( - function_exists('iconv'), - 'iconv() should be available', - 'Install and enable the <strong>iconv</strong> extension.' - ); - $this->addRecommendation( function_exists('utf8_decode'), 'utf8_decode() should be available', @@ -780,7 +774,11 @@ class SymfonyRequirements extends RequirementCollection { $size = ini_get('realpath_cache_size'); $size = trim($size); - $unit = strtolower(substr($size, -1, 1)); + $unit = ''; + if (!ctype_digit($size)) { + $unit = strtolower(substr($size, -1, 1)); + $size = (int) substr($size, 0, -1); + } switch ($unit) { case 'g': return $size * 1024 * 1024 * 1024; diff --git a/web/.DS_Store b/web/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..8c022fe1600c4c62f8230c085d9dcc2353d7aeb7 Binary files /dev/null and b/web/.DS_Store differ diff --git a/web/config.php b/web/config.php index a031a3a1e3178deb29e04a1160bdf8ae29fb1fa5..fd7e17e6b66e7801d44f9df976e50b11ea4c0aa8 100644 --- a/web/config.php +++ b/web/config.php @@ -11,7 +11,7 @@ */ if (!isset($_SERVER['HTTP_HOST'])) { - exit('This script cannot be run from the CLI. Run it from a browser.'); + exit("This script cannot be run from the CLI. Run it from a browser.\n"); } if (!in_array(@$_SERVER['REMOTE_ADDR'], array( @@ -270,7 +270,7 @@ $hasMinorProblems = (bool) count($minorProblems); } .sf-reset ul a, .sf-reset ul a:hover { - background: url(../images/blue-arrow.png) no-repeat right 6px; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAICAYAAAAx8TU7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAFdJREFUeNpiYACBjjOhDEiACSggCKTLgXQ5TJARqhIkcReIKxgqTGYxwvV0nDEGkmeAOIwJySiQ4HsgvseIpGo3ELsCtZ9lRDIvDCiwhwHJPEFkJwEEGACq6hdnax8y1AAAAABJRU5ErkJggg==) no-repeat right 7px; padding-right: 10px; } .sf-reset ul, ol { diff --git a/web/css/.DS_Store b/web/css/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7201845fb2c0f3cf73ae889321e09df802a9778f Binary files /dev/null and b/web/css/.DS_Store differ