diff --git a/.php_cs.dist b/.php_cs.dist
index 0a0f02f..81611cc 100644
--- a/.php_cs.dist
+++ b/.php_cs.dist
@@ -10,12 +10,27 @@ $finder = PhpCsFixer\Finder::create()
])
->in(__DIR__);
-return PhpCsFixer\Config::create()
- ->setRules([
+ return PhpCsFixer\Config::create()
+ ->setRules(array(
'@PSR1' => true,
'@PSR2' => true,
- '@Symfony' => true,
- 'concat_space' => ['spacing' => 'one'],
- 'phpdoc_no_alias_tag' => [],
- ])
+ 'array_syntax' => array('syntax' => 'short'),
+ 'combine_consecutive_unsets' => true,
+ 'no_extra_consecutive_blank_lines' => array(
+ 'break',
+ 'continue',
+ 'extra',
+ 'return',
+ 'throw',
+ 'use',
+ 'parenthesis_brace_block',
+ 'square_brace_block',
+ 'curly_brace_block'
+ ),
+ 'no_useless_else' => true,
+ 'no_useless_return' => true,
+ 'ordered_class_elements' => true,
+ 'ordered_imports' => true,
+ 'phpdoc_add_missing_param_annotation' => true
+ ))
->setFinder($finder);
diff --git a/composer.json b/composer.json
index 66ff73d..2376bba 100644
--- a/composer.json
+++ b/composer.json
@@ -38,11 +38,13 @@
},
{
"name": "Timur Ruziev",
- "email": "resurtm@gmail.com",
+ "email": "resurtm@2amigos.us",
"homepage": "http://resurtm.com",
"role": "Developer"
}
],
+ "minimum-stability": "dev",
+ "prefer-stable": true,
"require": {
"php": ">=5.5",
"2amigos/yii2-selectize-widget": "~1.0",
@@ -70,6 +72,14 @@
"Da\\User\\": "./src/User"
}
},
+ "config": {
+ "fxp-asset": {
+ "installer-paths": {
+ "npm-asset-library": "vendor/npm",
+ "bower-asset-library": "vendor/bower"
+ }
+ }
+ },
"extra": {
"bootstrap": "Da\\User\\Bootstrap"
}
diff --git a/composer.lock b/composer.lock
index fbe1757..3d37d8b 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
- "hash": "a3487c38850210a1f70ecbd47629a680",
- "content-hash": "2a2695eba4d025ba76be8783e6f80d6d",
+ "content-hash": "63de3f489d8b9b7b1e33d6a249e4d0b8",
"packages": [
{
"name": "2amigos/yii2-selectize-widget",
@@ -71,7 +70,7 @@
"yii 2",
"yii2"
],
- "time": "2016-09-10 19:27:58"
+ "time": "2016-09-10T19:27:58+00:00"
},
{
"name": "bower-asset/bootstrap",
@@ -155,16 +154,16 @@
},
{
"name": "bower-asset/jquery.inputmask",
- "version": "3.2.7",
+ "version": "3.3.7",
"source": {
"type": "git",
"url": "https://github.com/RobinHerbots/Inputmask.git",
- "reference": "5a72c563b502b8e05958a524cdfffafe9987be38"
+ "reference": "9835731cb78cac749734d94a1cb5bd70da4d3b10"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/RobinHerbots/Inputmask/zipball/5a72c563b502b8e05958a524cdfffafe9987be38",
- "reference": "5a72c563b502b8e05958a524cdfffafe9987be38",
+ "url": "https://api.github.com/repos/RobinHerbots/Inputmask/zipball/9835731cb78cac749734d94a1cb5bd70da4d3b10",
+ "reference": "9835731cb78cac749734d94a1cb5bd70da4d3b10",
"shasum": ""
},
"require": {
@@ -173,23 +172,36 @@
"type": "bower-asset-library",
"extra": {
"bower-asset-main": [
- "./dist/inputmask/inputmask.js"
+ "./dist/inputmask/inputmask.js",
+ "./dist/inputmask/inputmask.extensions.js",
+ "./dist/inputmask/inputmask.date.extensions.js",
+ "./dist/inputmask/inputmask.numeric.extensions.js",
+ "./dist/inputmask/inputmask.phone.extensions.js",
+ "./dist/inputmask/jquery.inputmask.js",
+ "./dist/inputmask/global/document.js",
+ "./dist/inputmask/global/window.js",
+ "./dist/inputmask/phone-codes/phone.js",
+ "./dist/inputmask/phone-codes/phone-be.js",
+ "./dist/inputmask/phone-codes/phone-nl.js",
+ "./dist/inputmask/phone-codes/phone-ru.js",
+ "./dist/inputmask/phone-codes/phone-uk.js",
+ "./dist/inputmask/dependencyLibs/inputmask.dependencyLib.jqlite.js",
+ "./dist/inputmask/dependencyLibs/inputmask.dependencyLib.jquery.js",
+ "./dist/inputmask/dependencyLibs/inputmask.dependencyLib.js",
+ "./dist/inputmask/bindings/inputmask.binding.js"
],
"bower-asset-ignore": [
"**/*",
"!dist/*",
"!dist/inputmask/*",
"!dist/min/*",
- "!dist/min/inputmask/*",
- "!extra/bindings/*",
- "!extra/dependencyLibs/*",
- "!extra/phone-codes/*"
+ "!dist/min/inputmask/*"
]
},
"license": [
"http://opensource.org/licenses/mit-license.php"
],
- "description": "jquery.inputmask is a jquery plugin which create an input mask.",
+ "description": "Inputmask is a javascript library which creates an input mask. Inputmask can run against vanilla javascript, jQuery and jqlite.",
"keywords": [
"form",
"input",
@@ -461,25 +473,28 @@
"markdown",
"markdown-extra"
],
- "time": "2016-09-14 20:40:20"
+ "time": "2016-09-14T20:40:20+00:00"
},
{
"name": "ezyang/htmlpurifier",
- "version": "v4.8.0",
+ "version": "v4.9.3",
"source": {
"type": "git",
"url": "https://github.com/ezyang/htmlpurifier.git",
- "reference": "d0c392f77d2f2a3dcf7fcb79e2a1e2b8804e75b2"
+ "reference": "95e1bae3182efc0f3422896a3236e991049dac69"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/d0c392f77d2f2a3dcf7fcb79e2a1e2b8804e75b2",
- "reference": "d0c392f77d2f2a3dcf7fcb79e2a1e2b8804e75b2",
+ "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/95e1bae3182efc0f3422896a3236e991049dac69",
+ "reference": "95e1bae3182efc0f3422896a3236e991049dac69",
"shasum": ""
},
"require": {
"php": ">=5.2"
},
+ "require-dev": {
+ "simpletest/simpletest": "^1.1"
+ },
"type": "library",
"autoload": {
"psr-0": {
@@ -505,27 +520,28 @@
"keywords": [
"html"
],
- "time": "2016-07-16 12:58:58"
+ "time": "2017-06-03T02:28:16+00:00"
},
{
"name": "swiftmailer/swiftmailer",
- "version": "v5.4.4",
+ "version": "v5.4.8",
"source": {
"type": "git",
"url": "https://github.com/swiftmailer/swiftmailer.git",
- "reference": "545ce9136690cea74f98f86fbb9c92dd9ab1a756"
+ "reference": "9a06dc570a0367850280eefd3f1dc2da45aef517"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/545ce9136690cea74f98f86fbb9c92dd9ab1a756",
- "reference": "545ce9136690cea74f98f86fbb9c92dd9ab1a756",
+ "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": {
@@ -558,25 +574,25 @@
"mail",
"mailer"
],
- "time": "2016-11-24 01:01:23"
+ "time": "2017-05-01T15:54:03+00:00"
},
{
"name": "yiisoft/yii2",
- "version": "2.0.10",
+ "version": "2.0.11.2",
"source": {
"type": "git",
"url": "https://github.com/yiisoft/yii2-framework.git",
- "reference": "5bfcb7a6dfa9771e2248eb8c4448613330f343ff"
+ "reference": "ee996adec1dfd7babb67bd0c604f5bd6425fe5ab"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yiisoft/yii2-framework/zipball/5bfcb7a6dfa9771e2248eb8c4448613330f343ff",
- "reference": "5bfcb7a6dfa9771e2248eb8c4448613330f343ff",
+ "url": "https://api.github.com/repos/yiisoft/yii2-framework/zipball/ee996adec1dfd7babb67bd0c604f5bd6425fe5ab",
+ "reference": "ee996adec1dfd7babb67bd0c604f5bd6425fe5ab",
"shasum": ""
},
"require": {
"bower-asset/jquery": "2.2.*@stable | 2.1.*@stable | 1.11.*@stable | 1.12.*@stable",
- "bower-asset/jquery.inputmask": "~3.2.2",
+ "bower-asset/jquery.inputmask": "~3.2.2 | ~3.3.3",
"bower-asset/punycode": "1.3.*",
"bower-asset/yii2-pjax": "~2.0.1",
"cebe/markdown": "~1.0.0 | ~1.1.0",
@@ -644,6 +660,12 @@
"name": "Dmitry Naumenko",
"email": "d.naumenko.a@gmail.com",
"role": "Core framework development"
+ },
+ {
+ "name": "Boudewijn Vahrmeijer",
+ "email": "info@dynasource.eu",
+ "homepage": "http://dynasource.eu",
+ "role": "Core framework development"
}
],
"description": "Yii PHP Framework Version 2",
@@ -652,20 +674,20 @@
"framework",
"yii2"
],
- "time": "2016-10-20 12:02:50"
+ "time": "2017-02-08T09:04:32+00:00"
},
{
"name": "yiisoft/yii2-authclient",
- "version": "2.1.1",
+ "version": "2.1.2",
"source": {
"type": "git",
"url": "https://github.com/yiisoft/yii2-authclient.git",
- "reference": "5ed7ebfda270d87197f7640b2a9c046297080cac"
+ "reference": "9929acc03d61d96e6eabbb5e31b02d6f9faab10d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yiisoft/yii2-authclient/zipball/5ed7ebfda270d87197f7640b2a9c046297080cac",
- "reference": "5ed7ebfda270d87197f7640b2a9c046297080cac",
+ "url": "https://api.github.com/repos/yiisoft/yii2-authclient/zipball/9929acc03d61d96e6eabbb5e31b02d6f9faab10d",
+ "reference": "9929acc03d61d96e6eabbb5e31b02d6f9faab10d",
"shasum": ""
},
"require": {
@@ -700,7 +722,7 @@
"oauth",
"yii2"
],
- "time": "2016-08-29 09:21:09"
+ "time": "2017-02-15T14:34:51+00:00"
},
{
"name": "yiisoft/yii2-bootstrap",
@@ -750,7 +772,7 @@
"bootstrap",
"yii2"
],
- "time": "2016-03-17 03:29:28"
+ "time": "2016-03-17T03:29:28+00:00"
},
{
"name": "yiisoft/yii2-composer",
@@ -800,20 +822,20 @@
"extension installer",
"yii2"
],
- "time": "2016-12-20 13:26:02"
+ "time": "2016-12-20T13:26:02+00:00"
},
{
"name": "yiisoft/yii2-httpclient",
- "version": "2.0.2",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/yiisoft/yii2-httpclient.git",
- "reference": "2cc58c318da3c7c71bda1cc26bd3ec5a3ac26284"
+ "reference": "113e4e361730f62c1bf50fbd6f09898776d404b1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yiisoft/yii2-httpclient/zipball/2cc58c318da3c7c71bda1cc26bd3ec5a3ac26284",
- "reference": "2cc58c318da3c7c71bda1cc26bd3ec5a3ac26284",
+ "url": "https://api.github.com/repos/yiisoft/yii2-httpclient/zipball/113e4e361730f62c1bf50fbd6f09898776d404b1",
+ "reference": "113e4e361730f62c1bf50fbd6f09898776d404b1",
"shasum": ""
},
"require": {
@@ -847,20 +869,20 @@
"httpclient",
"yii2"
],
- "time": "2016-10-31 11:29:06"
+ "time": "2017-02-15T14:28:10+00:00"
},
{
"name": "yiisoft/yii2-swiftmailer",
- "version": "2.0.6",
+ "version": "2.0.7",
"source": {
"type": "git",
"url": "https://github.com/yiisoft/yii2-swiftmailer.git",
- "reference": "26b900767f1031ff3a4668dfa36c10595875f0a5"
+ "reference": "8a03a62cbcb82e7697d3002eb43a8d2637f566ec"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yiisoft/yii2-swiftmailer/zipball/26b900767f1031ff3a4668dfa36c10595875f0a5",
- "reference": "26b900767f1031ff3a4668dfa36c10595875f0a5",
+ "url": "https://api.github.com/repos/yiisoft/yii2-swiftmailer/zipball/8a03a62cbcb82e7697d3002eb43a8d2637f566ec",
+ "reference": "8a03a62cbcb82e7697d3002eb43a8d2637f566ec",
"shasum": ""
},
"require": {
@@ -897,7 +919,7 @@
"swiftmailer",
"yii2"
],
- "time": "2016-09-09 11:48:11"
+ "time": "2017-05-01T08:29:00+00:00"
}
],
"packages-dev": [
@@ -958,25 +980,25 @@
"gherkin",
"parser"
],
- "time": "2016-10-30 11:50:56"
+ "time": "2016-10-30T11:50:56+00:00"
},
{
"name": "cebe/assetfree-yii2",
- "version": "2.0.10",
+ "version": "2.0.11.2",
"source": {
"type": "git",
"url": "https://github.com/cebe/assetfree-yii2.git",
- "reference": "38a6f1d6c70f2e4b5a666384f791812fb0b1cd82"
+ "reference": "3834cc6e2eae2f83c51ece5c2776ba47362a6407"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/cebe/assetfree-yii2/zipball/38a6f1d6c70f2e4b5a666384f791812fb0b1cd82",
- "reference": "38a6f1d6c70f2e4b5a666384f791812fb0b1cd82",
+ "url": "https://api.github.com/repos/cebe/assetfree-yii2/zipball/3834cc6e2eae2f83c51ece5c2776ba47362a6407",
+ "reference": "3834cc6e2eae2f83c51ece5c2776ba47362a6407",
"shasum": ""
},
"require": {
"php": ">=5.4.0",
- "yiisoft/yii2": "2.0.10"
+ "yiisoft/yii2": "2.0.11.2"
},
"provide": {
"bower-asset/jquery": "*",
@@ -987,20 +1009,20 @@
"type": "library",
"notification-url": "https://packagist.org/downloads/",
"description": "A meta package that allows you to install yii2 without composer-asset-plugin.",
- "time": "2016-12-01 09:06:12"
+ "time": "2017-04-24T10:44:38+00:00"
},
{
"name": "codeception/codeception",
- "version": "2.2.7",
+ "version": "2.3.3",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Codeception.git",
- "reference": "86770e89d266557c20dd0b1de5390e706f4770c1"
+ "reference": "67cd520b4f20cdfc3a52d1a0022924125822a8e6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/Codeception/zipball/86770e89d266557c20dd0b1de5390e706f4770c1",
- "reference": "86770e89d266557c20dd0b1de5390e706f4770c1",
+ "url": "https://api.github.com/repos/Codeception/Codeception/zipball/67cd520b4f20cdfc3a52d1a0022924125822a8e6",
+ "reference": "67cd520b4f20cdfc3a52d1a0022924125822a8e6",
"shasum": ""
},
"require": {
@@ -1011,10 +1033,12 @@
"guzzlehttp/guzzle": ">=4.1.4 <7.0",
"guzzlehttp/psr7": "~1.0",
"php": ">=5.4.0 <8.0",
- "phpunit/php-code-coverage": ">=2.1.3 <5.0",
- "phpunit/phpunit": ">4.8.20 <6.0",
- "sebastian/comparator": "~1.1",
+ "phpunit/php-code-coverage": ">=2.2.4 <6.0",
+ "phpunit/phpunit": ">4.8.20 <7.0",
+ "phpunit/phpunit-mock-objects": ">2.3 <5.0",
+ "sebastian/comparator": ">1.1 <3.0",
"sebastian/diff": "^1.4",
+ "stecman/symfony-console-completion": "^0.7.0",
"symfony/browser-kit": ">=2.7 <4.0",
"symfony/console": ">=2.7 <4.0",
"symfony/css-selector": ">=2.7 <4.0",
@@ -1079,20 +1103,20 @@
"functional testing",
"unit testing"
],
- "time": "2016-12-05 04:12:24"
+ "time": "2017-06-02T00:22:30+00:00"
},
{
"name": "codeception/specify",
- "version": "0.4.5",
+ "version": "0.4.6",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Specify.git",
- "reference": "5fb1d68a737f31155a0f7410cf47dea479b33415"
+ "reference": "21b586f503ca444aa519dd9cafb32f113a05f286"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/Specify/zipball/5fb1d68a737f31155a0f7410cf47dea479b33415",
- "reference": "5fb1d68a737f31155a0f7410cf47dea479b33415",
+ "url": "https://api.github.com/repos/Codeception/Specify/zipball/21b586f503ca444aa519dd9cafb32f113a05f286",
+ "reference": "21b586f503ca444aa519dd9cafb32f113a05f286",
"shasum": ""
},
"require": {
@@ -1109,6 +1133,9 @@
}
},
"notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
"authors": [
{
"name": "Michael Bodnarchuk",
@@ -1116,20 +1143,20 @@
}
],
"description": "BDD code blocks for PHPUnit and Codeception",
- "time": "2016-10-17 22:28:20"
+ "time": "2016-10-21T09:42:00+00:00"
},
{
"name": "codeception/verify",
- "version": "0.3.2",
+ "version": "0.3.3",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Verify.git",
- "reference": "b06d706261d1fee0cc312bacc5c1b7c506e5213a"
+ "reference": "5d649dda453cd814dadc4bb053060cd2c6bb4b4c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/Verify/zipball/b06d706261d1fee0cc312bacc5c1b7c506e5213a",
- "reference": "b06d706261d1fee0cc312bacc5c1b7c506e5213a",
+ "url": "https://api.github.com/repos/Codeception/Verify/zipball/5d649dda453cd814dadc4bb053060cd2c6bb4b4c",
+ "reference": "5d649dda453cd814dadc4bb053060cd2c6bb4b4c",
"shasum": ""
},
"require-dev": {
@@ -1152,7 +1179,75 @@
}
],
"description": "BDD assertion library for PHPUnit",
- "time": "2016-08-29 22:49:25"
+ "time": "2017-01-09T10:58:51+00:00"
+ },
+ {
+ "name": "doctrine/annotations",
+ "version": "v1.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/doctrine/annotations.git",
+ "reference": "54cacc9b81758b14e3ce750f205a393d52339e97"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/doctrine/annotations/zipball/54cacc9b81758b14e3ce750f205a393d52339e97",
+ "reference": "54cacc9b81758b14e3ce750f205a393d52339e97",
+ "shasum": ""
+ },
+ "require": {
+ "doctrine/lexer": "1.*",
+ "php": "^5.6 || ^7.0"
+ },
+ "require-dev": {
+ "doctrine/cache": "1.*",
+ "phpunit/phpunit": "^5.7"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.4.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Roman Borschel",
+ "email": "roman@code-factory.org"
+ },
+ {
+ "name": "Benjamin Eberlei",
+ "email": "kontakt@beberlei.de"
+ },
+ {
+ "name": "Guilherme Blanco",
+ "email": "guilhermeblanco@gmail.com"
+ },
+ {
+ "name": "Jonathan Wage",
+ "email": "jonwage@gmail.com"
+ },
+ {
+ "name": "Johannes Schmitt",
+ "email": "schmittjoh@gmail.com"
+ }
+ ],
+ "description": "Docblock Annotations Parser",
+ "homepage": "http://www.doctrine-project.org",
+ "keywords": [
+ "annotations",
+ "docblock",
+ "parser"
+ ],
+ "time": "2017-02-24T16:22:25+00:00"
},
{
"name": "doctrine/instantiator",
@@ -1206,36 +1301,95 @@
"constructor",
"instantiate"
],
- "time": "2015-06-14 21:17:01"
+ "time": "2015-06-14T21:17:01+00:00"
},
{
- "name": "facebook/webdriver",
- "version": "1.2.0",
+ "name": "doctrine/lexer",
+ "version": "v1.0.1",
"source": {
"type": "git",
- "url": "https://github.com/facebook/php-webdriver.git",
- "reference": "af21de3ae5306a8ca0bcc02a19735dadc43e83f3"
+ "url": "https://github.com/doctrine/lexer.git",
+ "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/facebook/php-webdriver/zipball/af21de3ae5306a8ca0bcc02a19735dadc43e83f3",
- "reference": "af21de3ae5306a8ca0bcc02a19735dadc43e83f3",
+ "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c",
+ "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Doctrine\\Common\\Lexer\\": "lib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Roman Borschel",
+ "email": "roman@code-factory.org"
+ },
+ {
+ "name": "Guilherme Blanco",
+ "email": "guilhermeblanco@gmail.com"
+ },
+ {
+ "name": "Johannes Schmitt",
+ "email": "schmittjoh@gmail.com"
+ }
+ ],
+ "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
+ "homepage": "http://www.doctrine-project.org",
+ "keywords": [
+ "lexer",
+ "parser"
+ ],
+ "time": "2014-09-09T13:34:57+00:00"
+ },
+ {
+ "name": "facebook/webdriver",
+ "version": "1.4.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/facebook/php-webdriver.git",
+ "reference": "eadb0b7a7c3e6578185197fd40158b08c3164c83"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/facebook/php-webdriver/zipball/eadb0b7a7c3e6578185197fd40158b08c3164c83",
+ "reference": "eadb0b7a7c3e6578185197fd40158b08c3164c83",
"shasum": ""
},
"require": {
"ext-curl": "*",
- "php": "^5.5 || ~7.0"
+ "ext-zip": "*",
+ "php": "^5.5 || ~7.0",
+ "symfony/process": "^2.8 || ^3.1"
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "^1.11",
+ "friendsofphp/php-cs-fixer": "^2.0",
"php-mock/php-mock-phpunit": "^1.1",
"phpunit/phpunit": "4.6.* || ~5.0",
+ "satooshi/php-coveralls": "^1.0",
"squizlabs/php_codesniffer": "^2.6"
},
- "suggest": {
- "phpdocumentor/phpdocumentor": "2.*"
- },
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-community": "1.5-dev"
+ }
+ },
"autoload": {
"psr-4": {
"Facebook\\WebDriver\\": "lib/"
@@ -1245,7 +1399,7 @@
"license": [
"Apache-2.0"
],
- "description": "A PHP client for WebDriver",
+ "description": "A PHP client for Selenium WebDriver",
"homepage": "https://github.com/facebook/php-webdriver",
"keywords": [
"facebook",
@@ -1253,41 +1407,55 @@
"selenium",
"webdriver"
],
- "time": "2016-10-14 15:16:51"
+ "time": "2017-04-28T14:54:49+00:00"
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v2.0.0",
+ "version": "v2.3.2",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
- "reference": "f3baf72eb2f58bf275b372540f5b47d25aed910f"
+ "reference": "597745f744bcce1aed59dfd1bb4603de2a06cda9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/f3baf72eb2f58bf275b372540f5b47d25aed910f",
- "reference": "f3baf72eb2f58bf275b372540f5b47d25aed910f",
+ "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/597745f744bcce1aed59dfd1bb4603de2a06cda9",
+ "reference": "597745f744bcce1aed59dfd1bb4603de2a06cda9",
"shasum": ""
},
"require": {
+ "doctrine/annotations": "^1.2",
+ "ext-json": "*",
"ext-tokenizer": "*",
- "php": "^5.3.6 || >=7.0 <7.2",
- "sebastian/diff": "^1.1",
- "symfony/console": "^2.3 || ^3.0",
- "symfony/event-dispatcher": "^2.1 || ^3.0",
- "symfony/filesystem": "^2.4 || ^3.0",
- "symfony/finder": "^2.2 || ^3.0",
- "symfony/polyfill-php54": "^1.0",
- "symfony/process": "^2.3 || ^3.0",
- "symfony/stopwatch": "^2.5 || ^3.0"
+ "gecko-packages/gecko-php-unit": "^2.0",
+ "php": "^5.6 || >=7.0 <7.2",
+ "sebastian/diff": "^1.4",
+ "symfony/console": "^3.0",
+ "symfony/event-dispatcher": "^3.0",
+ "symfony/filesystem": "^3.0",
+ "symfony/finder": "^3.0",
+ "symfony/options-resolver": "^3.0",
+ "symfony/polyfill-php70": "^1.0",
+ "symfony/polyfill-xml": "^1.3",
+ "symfony/process": "^3.0",
+ "symfony/stopwatch": "^3.0"
},
"conflict": {
- "hhvm": "<3.9"
+ "hhvm": "<3.18"
},
"require-dev": {
- "gecko-packages/gecko-php-unit": "^2.0",
- "phpunit/phpunit": "^4.5|^5",
- "satooshi/php-coveralls": "^1.0"
+ "johnkary/phpunit-speedtrap": "^1.1",
+ "justinrainbow/json-schema": "^5.0",
+ "mi-schi/phpmd-extension": "^4.2",
+ "phpmd/phpmd": "^2.4.3",
+ "phpunit/phpunit": "^4.8.35 || ^5.4.3",
+ "satooshi/php-coveralls": "^1.0",
+ "symfony/phpunit-bridge": "^3.2.2"
+ },
+ "suggest": {
+ "ext-mbstring": "For handling non-UTF8 characters in cache signature.",
+ "ext-xml": "For better performance.",
+ "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible."
},
"bin": [
"php-cs-fixer"
@@ -1295,7 +1463,7 @@
"type": "application",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "2.3-dev"
}
},
"autoload": {
@@ -1318,25 +1486,64 @@
}
],
"description": "A tool to automatically fix PHP code style",
- "time": "2016-12-01 06:18:06"
+ "time": "2017-05-24T21:59:38+00:00"
},
{
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
+ "name": "gecko-packages/gecko-php-unit",
+ "version": "v2.0",
"source": {
"type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
+ "url": "https://github.com/GeckoPackages/GeckoPHPUnit.git",
+ "reference": "40a697ec261f3526e8196363b481b24383740c13"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
+ "url": "https://api.github.com/repos/GeckoPackages/GeckoPHPUnit/zipball/40a697ec261f3526e8196363b481b24383740c13",
+ "reference": "40a697ec261f3526e8196363b481b24383740c13",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.3.6 || ^7.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "4.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "GeckoPackages\\PHPUnit\\": "src\\PHPUnit"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "Additional PHPUnit tests.",
+ "homepage": "https://github.com/GeckoPackages",
+ "keywords": [
+ "extension",
+ "filesystem",
+ "phpunit"
+ ],
+ "time": "2016-11-22T11:01:27+00:00"
+ },
+ {
+ "name": "guzzlehttp/guzzle",
+ "version": "6.2.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/guzzle/guzzle.git",
+ "reference": "8d6c6cc55186db87b7dc5009827429ba4e9dc006"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/8d6c6cc55186db87b7dc5009827429ba4e9dc006",
+ "reference": "8d6c6cc55186db87b7dc5009827429ba4e9dc006",
"shasum": ""
},
"require": {
"guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
+ "guzzlehttp/psr7": "^1.4",
"php": ">=5.5"
},
"require-dev": {
@@ -1380,7 +1587,7 @@
"rest",
"web service"
],
- "time": "2016-10-08 15:01:37"
+ "time": "2017-02-28T22:50:30+00:00"
},
{
"name": "guzzlehttp/promises",
@@ -1431,20 +1638,20 @@
"keywords": [
"promise"
],
- "time": "2016-12-20 10:07:11"
+ "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": {
@@ -1480,29 +1687,36 @@
"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": "myclabs/deep-copy",
- "version": "1.5.5",
+ "version": "1.6.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
+ "reference": "8e6e04167378abf1ddb4d3522d8755c5fd90d102"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/8e6e04167378abf1ddb4d3522d8755c5fd90d102",
+ "reference": "8e6e04167378abf1ddb4d3522d8755c5fd90d102",
"shasum": ""
},
"require": {
@@ -1531,20 +1745,68 @@
"object",
"object graph"
],
- "time": "2016-10-31 17:19:45"
+ "time": "2017-04-12T18:52:22+00:00"
},
{
- "name": "pdepend/pdepend",
- "version": "2.3.2",
+ "name": "paragonie/random_compat",
+ "version": "v2.0.10",
"source": {
"type": "git",
- "url": "https://github.com/pdepend/pdepend.git",
- "reference": "8d7ab8fe8c1f9de5056bb7ea2c0852f4ddd44f90"
+ "url": "https://github.com/paragonie/random_compat.git",
+ "reference": "634bae8e911eefa89c1abfbf1b66da679ac8f54d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/pdepend/pdepend/zipball/8d7ab8fe8c1f9de5056bb7ea2c0852f4ddd44f90",
- "reference": "8d7ab8fe8c1f9de5056bb7ea2c0852f4ddd44f90",
+ "url": "https://api.github.com/repos/paragonie/random_compat/zipball/634bae8e911eefa89c1abfbf1b66da679ac8f54d",
+ "reference": "634bae8e911eefa89c1abfbf1b66da679ac8f54d",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.2.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "4.*|5.*"
+ },
+ "suggest": {
+ "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes."
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "lib/random.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Paragon Initiative Enterprises",
+ "email": "security@paragonie.com",
+ "homepage": "https://paragonie.com"
+ }
+ ],
+ "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7",
+ "keywords": [
+ "csprng",
+ "pseudorandom",
+ "random"
+ ],
+ "time": "2017-03-13T16:27:32+00:00"
+ },
+ {
+ "name": "pdepend/pdepend",
+ "version": "2.5.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/pdepend/pdepend.git",
+ "reference": "0c50874333149c0dad5a2877801aed148f2767ff"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/pdepend/pdepend/zipball/0c50874333149c0dad5a2877801aed148f2767ff",
+ "reference": "0c50874333149c0dad5a2877801aed148f2767ff",
"shasum": ""
},
"require": {
@@ -1571,7 +1833,7 @@
"BSD-3-Clause"
],
"description": "Official version of pdepend to be handled with Composer",
- "time": "2016-11-23 20:25:02"
+ "time": "2017-01-19T14:23:36+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -1625,7 +1887,7 @@
"reflection",
"static analysis"
],
- "time": "2015-12-27 11:43:31"
+ "time": "2015-12-27T11:43:31+00:00"
},
{
"name": "phpdocumentor/reflection-docblock",
@@ -1670,7 +1932,7 @@
}
],
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
+ "time": "2016-09-30T07:12:33+00:00"
},
{
"name": "phpdocumentor/type-resolver",
@@ -1717,24 +1979,25 @@
"email": "me@mikevanriel.com"
}
],
- "time": "2016-11-25 06:54:22"
+ "time": "2016-11-25T06:54:22+00:00"
},
{
"name": "phpmd/phpmd",
- "version": "2.5.0",
+ "version": "2.6.0",
"source": {
"type": "git",
"url": "https://github.com/phpmd/phpmd.git",
- "reference": "9298602a922cd8c46666df8d540a60bc5925ce55"
+ "reference": "4e9924b2c157a3eb64395460fcf56b31badc8374"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpmd/phpmd/zipball/9298602a922cd8c46666df8d540a60bc5925ce55",
- "reference": "9298602a922cd8c46666df8d540a60bc5925ce55",
+ "url": "https://api.github.com/repos/phpmd/phpmd/zipball/4e9924b2c157a3eb64395460fcf56b31badc8374",
+ "reference": "4e9924b2c157a3eb64395460fcf56b31badc8374",
"shasum": ""
},
"require": {
- "pdepend/pdepend": "^2.0.4",
+ "ext-xml": "*",
+ "pdepend/pdepend": "^2.5",
"php": ">=5.3.9"
},
"require-dev": {
@@ -1782,31 +2045,31 @@
"phpmd",
"pmd"
],
- "time": "2016-11-23 20:33:32"
+ "time": "2017-01-20T14:41:10+00:00"
},
{
"name": "phpspec/prophecy",
- "version": "v1.6.2",
+ "version": "v1.7.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
+ "reference": "93d39f1f7f9326d746203c7c056f300f7f126073"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/93d39f1f7f9326d746203c7c056f300f7f126073",
+ "reference": "93d39f1f7f9326d746203c7c056f300f7f126073",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.0.2",
"php": "^5.3|^7.0",
"phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
+ "sebastian/comparator": "^1.1|^2.0",
+ "sebastian/recursion-context": "^1.0|^2.0|^3.0"
},
"require-dev": {
- "phpspec/phpspec": "^2.0",
+ "phpspec/phpspec": "^2.5|^3.2",
"phpunit/phpunit": "^4.8 || ^5.6.5"
},
"type": "library",
@@ -1845,39 +2108,39 @@
"spy",
"stub"
],
- "time": "2016-11-21 14:58:47"
+ "time": "2017-03-02T20:05:34+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "4.0.4",
+ "version": "4.0.8",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "c14196e64a78570034afd0b7a9f3757ba71c2a0a"
+ "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/c14196e64a78570034afd0b7a9f3757ba71c2a0a",
- "reference": "c14196e64a78570034afd0b7a9f3757ba71c2a0a",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ef7b2f56815df854e66ceaee8ebe9393ae36a40d",
+ "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d",
"shasum": ""
},
"require": {
+ "ext-dom": "*",
+ "ext-xmlwriter": "*",
"php": "^5.6 || ^7.0",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "^1.4.2",
- "sebastian/code-unit-reverse-lookup": "~1.0",
+ "phpunit/php-file-iterator": "^1.3",
+ "phpunit/php-text-template": "^1.2",
+ "phpunit/php-token-stream": "^1.4.2 || ^2.0",
+ "sebastian/code-unit-reverse-lookup": "^1.0",
"sebastian/environment": "^1.3.2 || ^2.0",
- "sebastian/version": "~1.0|~2.0"
+ "sebastian/version": "^1.0 || ^2.0"
},
"require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
+ "ext-xdebug": "^2.1.4",
+ "phpunit/phpunit": "^5.7"
},
"suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
+ "ext-xdebug": "^2.5.1"
},
"type": "library",
"extra": {
@@ -1908,7 +2171,7 @@
"testing",
"xunit"
],
- "time": "2016-12-20 15:22:42"
+ "time": "2017-04-02T07:44:40+00:00"
},
{
"name": "phpunit/php-file-iterator",
@@ -1955,7 +2218,7 @@
"filesystem",
"iterator"
],
- "time": "2016-10-03 07:40:28"
+ "time": "2016-10-03T07:40:28+00:00"
},
{
"name": "phpunit/php-text-template",
@@ -1996,29 +2259,34 @@
"keywords": [
"template"
],
- "time": "2015-06-21 13:50:34"
+ "time": "2015-06-21T13:50:34+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "1.0.8",
+ "version": "1.0.9",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
+ "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
+ "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^5.3.3 || ^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4|~5"
+ "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2040,20 +2308,20 @@
"keywords": [
"timer"
],
- "time": "2016-05-12 18:03:57"
+ "time": "2017-02-26T11:10:40+00:00"
},
{
"name": "phpunit/php-token-stream",
- "version": "1.4.9",
+ "version": "1.4.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
+ "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/e03f8f67534427a787e21a385a67ec3ca6978ea7",
+ "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7",
"shasum": ""
},
"require": {
@@ -2089,20 +2357,20 @@
"keywords": [
"tokenizer"
],
- "time": "2016-11-15 14:06:22"
+ "time": "2017-02-27T10:12:30+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "5.7.4",
+ "version": "5.7.20",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "af91da3f2671006ff5d0628023de3b7ac4d1ef09"
+ "reference": "3cb94a5f8c07a03c8b7527ed7468a2926203f58b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/af91da3f2671006ff5d0628023de3b7ac4d1ef09",
- "reference": "af91da3f2671006ff5d0628023de3b7ac4d1ef09",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3cb94a5f8c07a03c8b7527ed7468a2926203f58b",
+ "reference": "3cb94a5f8c07a03c8b7527ed7468a2926203f58b",
"shasum": ""
},
"require": {
@@ -2114,19 +2382,19 @@
"myclabs/deep-copy": "~1.3",
"php": "^5.6 || ^7.0",
"phpspec/prophecy": "^1.6.2",
- "phpunit/php-code-coverage": "^4.0.3",
+ "phpunit/php-code-coverage": "^4.0.4",
"phpunit/php-file-iterator": "~1.4",
"phpunit/php-text-template": "~1.2",
"phpunit/php-timer": "^1.0.6",
"phpunit/phpunit-mock-objects": "^3.2",
- "sebastian/comparator": "~1.2.2",
- "sebastian/diff": "~1.2",
+ "sebastian/comparator": "^1.2.4",
+ "sebastian/diff": "^1.4.3",
"sebastian/environment": "^1.3.4 || ^2.0",
"sebastian/exporter": "~2.0",
- "sebastian/global-state": "^1.0 || ^2.0",
+ "sebastian/global-state": "^1.1",
"sebastian/object-enumerator": "~2.0",
"sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
+ "sebastian/version": "~1.0.3|~2.0",
"symfony/yaml": "~2.1|~3.0"
},
"conflict": {
@@ -2171,7 +2439,7 @@
"testing",
"xunit"
],
- "time": "2016-12-13 16:19:44"
+ "time": "2017-05-22T07:42:55+00:00"
},
{
"name": "phpunit/phpunit-mock-objects",
@@ -2230,7 +2498,56 @@
"mock",
"xunit"
],
- "time": "2016-12-08 20:27:08"
+ "time": "2016-12-08T20:27:08+00:00"
+ },
+ {
+ "name": "psr/container",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/container.git",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Container\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common Container Interface (PHP FIG PSR-11)",
+ "homepage": "https://github.com/php-fig/container",
+ "keywords": [
+ "PSR-11",
+ "container",
+ "container-interface",
+ "container-interop",
+ "psr"
+ ],
+ "time": "2017-02-14T16:28:37+00:00"
},
{
"name": "psr/http-message",
@@ -2280,7 +2597,7 @@
"request",
"response"
],
- "time": "2016-08-06 14:39:51"
+ "time": "2016-08-06T14:39:51+00:00"
},
{
"name": "psr/log",
@@ -2327,27 +2644,27 @@
"psr",
"psr-3"
],
- "time": "2016-10-10 12:19:37"
+ "time": "2016-10-10T12:19:37+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
+ "version": "1.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
+ "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
+ "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
"shasum": ""
},
"require": {
- "php": ">=5.6"
+ "php": "^5.6 || ^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~5"
+ "phpunit/phpunit": "^5.7 || ^6.0"
},
"type": "library",
"extra": {
@@ -2372,20 +2689,20 @@
],
"description": "Looks up which function or method a line of code belongs to",
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
+ "time": "2017-03-04T06:30:41+00:00"
},
{
"name": "sebastian/comparator",
- "version": "1.2.2",
+ "version": "1.2.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
+ "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
+ "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
"shasum": ""
},
"require": {
@@ -2436,27 +2753,27 @@
"compare",
"equality"
],
- "time": "2016-11-19 09:18:40"
+ "time": "2017-01-29T09:50:25+00:00"
},
{
"name": "sebastian/diff",
- "version": "1.4.1",
+ "version": "1.4.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
+ "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4",
+ "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^5.3.3 || ^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.8"
+ "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
},
"type": "library",
"extra": {
@@ -2488,7 +2805,7 @@
"keywords": [
"diff"
],
- "time": "2015-12-08 07:14:41"
+ "time": "2017-05-22T07:24:03+00:00"
},
{
"name": "sebastian/environment",
@@ -2538,7 +2855,7 @@
"environment",
"hhvm"
],
- "time": "2016-11-26 07:53:53"
+ "time": "2016-11-26T07:53:53+00:00"
},
{
"name": "sebastian/exporter",
@@ -2605,7 +2922,7 @@
"export",
"exporter"
],
- "time": "2016-11-19 08:54:04"
+ "time": "2016-11-19T08:54:04+00:00"
},
{
"name": "sebastian/global-state",
@@ -2656,20 +2973,20 @@
"keywords": [
"global state"
],
- "time": "2015-10-12 03:26:01"
+ "time": "2015-10-12T03:26:01+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "2.0.0",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
+ "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/1311872ac850040a79c3c058bea3e22d0f09cbb7",
+ "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7",
"shasum": ""
},
"require": {
@@ -2702,7 +3019,7 @@
],
"description": "Traverses array structures and object graphs to enumerate all referenced objects",
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-11-19 07:35:10"
+ "time": "2017-02-18T15:18:39+00:00"
},
{
"name": "sebastian/recursion-context",
@@ -2755,7 +3072,7 @@
],
"description": "Provides functionality to recursively process PHP variables",
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19 07:33:16"
+ "time": "2016-11-19T07:33:16+00:00"
},
{
"name": "sebastian/resource-operations",
@@ -2797,7 +3114,7 @@
],
"description": "Provides a list of PHP built-in functions that operate on resources",
"homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
+ "time": "2015-07-28T20:34:47+00:00"
},
{
"name": "sebastian/version",
@@ -2840,68 +3157,41 @@
],
"description": "Library that helps with managing the version number of Git-hosted PHP projects",
"homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03 07:35:21"
+ "time": "2016-10-03T07:35:21+00:00"
},
{
"name": "squizlabs/php_codesniffer",
- "version": "2.7.1",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
- "reference": "9b324f3a1132459a7274a0ace2e1b766ba80930f"
+ "reference": "b95ff2c3b122a3ee4b57d149a57d2afce65522c3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/9b324f3a1132459a7274a0ace2e1b766ba80930f",
- "reference": "9b324f3a1132459a7274a0ace2e1b766ba80930f",
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/b95ff2c3b122a3ee4b57d149a57d2afce65522c3",
+ "reference": "b95ff2c3b122a3ee4b57d149a57d2afce65522c3",
"shasum": ""
},
"require": {
"ext-simplexml": "*",
"ext-tokenizer": "*",
"ext-xmlwriter": "*",
- "php": ">=5.1.2"
+ "php": ">=5.4.0"
},
"require-dev": {
"phpunit/phpunit": "~4.0"
},
"bin": [
- "scripts/phpcs",
- "scripts/phpcbf"
+ "bin/phpcs",
+ "bin/phpcbf"
],
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.x-dev"
+ "dev-master": "3.x-dev"
}
},
- "autoload": {
- "classmap": [
- "CodeSniffer.php",
- "CodeSniffer/CLI.php",
- "CodeSniffer/Exception.php",
- "CodeSniffer/File.php",
- "CodeSniffer/Fixer.php",
- "CodeSniffer/Report.php",
- "CodeSniffer/Reporting.php",
- "CodeSniffer/Sniff.php",
- "CodeSniffer/Tokens.php",
- "CodeSniffer/Reports/",
- "CodeSniffer/Tokenizers/",
- "CodeSniffer/DocGenerators/",
- "CodeSniffer/Standards/AbstractPatternSniff.php",
- "CodeSniffer/Standards/AbstractScopeSniff.php",
- "CodeSniffer/Standards/AbstractVariableSniff.php",
- "CodeSniffer/Standards/IncorrectPatternException.php",
- "CodeSniffer/Standards/Generic/Sniffs/",
- "CodeSniffer/Standards/MySource/Sniffs/",
- "CodeSniffer/Standards/PEAR/Sniffs/",
- "CodeSniffer/Standards/PSR1/Sniffs/",
- "CodeSniffer/Standards/PSR2/Sniffs/",
- "CodeSniffer/Standards/Squiz/Sniffs/",
- "CodeSniffer/Standards/Zend/Sniffs/"
- ]
- },
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
@@ -2918,20 +3208,65 @@
"phpcs",
"standards"
],
- "time": "2016-11-30 04:02:31"
+ "time": "2017-05-04T00:33:04+00:00"
},
{
- "name": "symfony/browser-kit",
- "version": "v3.2.1",
+ "name": "stecman/symfony-console-completion",
+ "version": "0.7.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "34348c2691ce6254e8e008026f4c5e72c22bb318"
+ "url": "https://github.com/stecman/symfony-console-completion.git",
+ "reference": "5461d43e53092b3d3b9dbd9d999f2054730f4bbb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/34348c2691ce6254e8e008026f4c5e72c22bb318",
- "reference": "34348c2691ce6254e8e008026f4c5e72c22bb318",
+ "url": "https://api.github.com/repos/stecman/symfony-console-completion/zipball/5461d43e53092b3d3b9dbd9d999f2054730f4bbb",
+ "reference": "5461d43e53092b3d3b9dbd9d999f2054730f4bbb",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.2",
+ "symfony/console": "~2.3 || ~3.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.4"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "0.6.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Stecman\\Component\\Symfony\\Console\\BashCompletion\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Stephen Holdaway",
+ "email": "stephen@stecman.co.nz"
+ }
+ ],
+ "description": "Automatic BASH completion for Symfony Console Component based applications.",
+ "time": "2016-02-24T05:08:54+00:00"
+ },
+ {
+ "name": "symfony/browser-kit",
+ "version": "v3.3.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/browser-kit.git",
+ "reference": "c2c8ceb1aa9dab9eae54e9150e6a588ce3e53be1"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/browser-kit/zipball/c2c8ceb1aa9dab9eae54e9150e6a588ce3e53be1",
+ "reference": "c2c8ceb1aa9dab9eae54e9150e6a588ce3e53be1",
"shasum": ""
},
"require": {
@@ -2948,7 +3283,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -2975,27 +3310,31 @@
],
"description": "Symfony BrowserKit Component",
"homepage": "https://symfony.com",
- "time": "2016-10-13 13:35:11"
+ "time": "2017-04-12T14:14:56+00:00"
},
{
"name": "symfony/config",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "b4ec9f099599cfc5b7f4d07bb2e910781a2be5e4"
+ "reference": "35716d4904e0506a7a5a9bcf23f854aeb5719bca"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/b4ec9f099599cfc5b7f4d07bb2e910781a2be5e4",
- "reference": "b4ec9f099599cfc5b7f4d07bb2e910781a2be5e4",
+ "url": "https://api.github.com/repos/symfony/config/zipball/35716d4904e0506a7a5a9bcf23f854aeb5719bca",
+ "reference": "35716d4904e0506a7a5a9bcf23f854aeb5719bca",
"shasum": ""
},
"require": {
"php": ">=5.5.9",
"symfony/filesystem": "~2.8|~3.0"
},
+ "conflict": {
+ "symfony/dependency-injection": "<3.3"
+ },
"require-dev": {
+ "symfony/dependency-injection": "~3.3",
"symfony/yaml": "~3.0"
},
"suggest": {
@@ -3004,7 +3343,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3031,20 +3370,20 @@
],
"description": "Symfony Config Component",
"homepage": "https://symfony.com",
- "time": "2016-12-09 07:45:17"
+ "time": "2017-06-02T18:07:20+00:00"
},
{
"name": "symfony/console",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "d12aa9ca20f4db83ec58410978dab6afcb9d6aaa"
+ "reference": "70d2a29b2911cbdc91a7e268046c395278238b2e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/d12aa9ca20f4db83ec58410978dab6afcb9d6aaa",
- "reference": "d12aa9ca20f4db83ec58410978dab6afcb9d6aaa",
+ "url": "https://api.github.com/repos/symfony/console/zipball/70d2a29b2911cbdc91a7e268046c395278238b2e",
+ "reference": "70d2a29b2911cbdc91a7e268046c395278238b2e",
"shasum": ""
},
"require": {
@@ -3052,10 +3391,16 @@
"symfony/debug": "~2.8|~3.0",
"symfony/polyfill-mbstring": "~1.0"
},
+ "conflict": {
+ "symfony/dependency-injection": "<3.3"
+ },
"require-dev": {
"psr/log": "~1.0",
+ "symfony/config": "~3.3",
+ "symfony/dependency-injection": "~3.3",
"symfony/event-dispatcher": "~2.8|~3.0",
"symfony/filesystem": "~2.8|~3.0",
+ "symfony/http-kernel": "~2.8|~3.0",
"symfony/process": "~2.8|~3.0"
},
"suggest": {
@@ -3067,7 +3412,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3094,20 +3439,20 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2016-12-11 14:34:22"
+ "time": "2017-06-02T19:24:58+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "e1241f275814827c411d922ba8e64cf2a00b2994"
+ "reference": "4d882dced7b995d5274293039370148e291808f2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/e1241f275814827c411d922ba8e64cf2a00b2994",
- "reference": "e1241f275814827c411d922ba8e64cf2a00b2994",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/4d882dced7b995d5274293039370148e291808f2",
+ "reference": "4d882dced7b995d5274293039370148e291808f2",
"shasum": ""
},
"require": {
@@ -3116,7 +3461,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3147,20 +3492,20 @@
],
"description": "Symfony CssSelector Component",
"homepage": "https://symfony.com",
- "time": "2016-11-03 08:11:03"
+ "time": "2017-05-01T15:01:29+00:00"
},
{
"name": "symfony/debug",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
- "reference": "9f923e68d524a3095c5a2ae5fc7220c7cbc12231"
+ "reference": "e9c50482841ef696e8fa1470d950a79c8921f45d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/9f923e68d524a3095c5a2ae5fc7220c7cbc12231",
- "reference": "9f923e68d524a3095c5a2ae5fc7220c7cbc12231",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/e9c50482841ef696e8fa1470d950a79c8921f45d",
+ "reference": "e9c50482841ef696e8fa1470d950a79c8921f45d",
"shasum": ""
},
"require": {
@@ -3171,13 +3516,12 @@
"symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
},
"require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
"symfony/http-kernel": "~2.8|~3.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3204,43 +3548,50 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
- "time": "2016-11-16 22:18:16"
+ "time": "2017-06-01T21:01:25+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "037054501c41007c93b6de1b5c7a7acb83523593"
+ "reference": "4cec19ec1d25f22e1ec8ab14635d3879a1287053"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/037054501c41007c93b6de1b5c7a7acb83523593",
- "reference": "037054501c41007c93b6de1b5c7a7acb83523593",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/4cec19ec1d25f22e1ec8ab14635d3879a1287053",
+ "reference": "4cec19ec1d25f22e1ec8ab14635d3879a1287053",
"shasum": ""
},
"require": {
- "php": ">=5.5.9"
+ "php": ">=5.5.9",
+ "psr/container": "^1.0"
},
"conflict": {
- "symfony/yaml": "<3.2"
+ "symfony/config": "<3.3.1",
+ "symfony/finder": "<3.3",
+ "symfony/yaml": "<3.3"
+ },
+ "provide": {
+ "psr/container-implementation": "1.0"
},
"require-dev": {
- "symfony/config": "~2.8|~3.0",
+ "symfony/config": "~3.3",
"symfony/expression-language": "~2.8|~3.0",
- "symfony/yaml": "~3.2"
+ "symfony/yaml": "~3.3"
},
"suggest": {
"symfony/config": "",
"symfony/expression-language": "For using expressions in service container configuration",
+ "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required",
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
"symfony/yaml": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3267,20 +3618,20 @@
],
"description": "Symfony DependencyInjection Component",
"homepage": "https://symfony.com",
- "time": "2016-12-08 15:27:33"
+ "time": "2017-06-06T03:13:52+00:00"
},
{
"name": "symfony/dom-crawler",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1638c7534a8a2fa0bf9e979f9aacb6d7e8e9e24e"
+ "reference": "fc2c588ce376e9fe04a7b8c79e3ec62fe32d95b1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1638c7534a8a2fa0bf9e979f9aacb6d7e8e9e24e",
- "reference": "1638c7534a8a2fa0bf9e979f9aacb6d7e8e9e24e",
+ "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/fc2c588ce376e9fe04a7b8c79e3ec62fe32d95b1",
+ "reference": "fc2c588ce376e9fe04a7b8c79e3ec62fe32d95b1",
"shasum": ""
},
"require": {
@@ -3296,7 +3647,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3323,29 +3674,32 @@
],
"description": "Symfony DomCrawler Component",
"homepage": "https://symfony.com",
- "time": "2016-12-10 14:24:53"
+ "time": "2017-05-25T23:10:31+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "e8f47a327c2f0fd5aa04fa60af2b693006ed7283"
+ "reference": "4054a102470665451108f9b59305c79176ef98f0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/e8f47a327c2f0fd5aa04fa60af2b693006ed7283",
- "reference": "e8f47a327c2f0fd5aa04fa60af2b693006ed7283",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/4054a102470665451108f9b59305c79176ef98f0",
+ "reference": "4054a102470665451108f9b59305c79176ef98f0",
"shasum": ""
},
"require": {
"php": ">=5.5.9"
},
+ "conflict": {
+ "symfony/dependency-injection": "<3.3"
+ },
"require-dev": {
"psr/log": "~1.0",
"symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
+ "symfony/dependency-injection": "~3.3",
"symfony/expression-language": "~2.8|~3.0",
"symfony/stopwatch": "~2.8|~3.0"
},
@@ -3356,7 +3710,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3383,20 +3737,20 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
- "time": "2016-10-13 06:29:04"
+ "time": "2017-06-04T18:15:29+00:00"
},
{
"name": "symfony/filesystem",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "8d4cf7561a5b17e5eb7a02b80d0b8f014a3796d4"
+ "reference": "c709670bf64721202ddbe4162846f250735842c0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/8d4cf7561a5b17e5eb7a02b80d0b8f014a3796d4",
- "reference": "8d4cf7561a5b17e5eb7a02b80d0b8f014a3796d4",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/c709670bf64721202ddbe4162846f250735842c0",
+ "reference": "c709670bf64721202ddbe4162846f250735842c0",
"shasum": ""
},
"require": {
@@ -3405,7 +3759,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3432,20 +3786,20 @@
],
"description": "Symfony Filesystem Component",
"homepage": "https://symfony.com",
- "time": "2016-11-24 00:46:43"
+ "time": "2017-05-28T14:08:56+00:00"
},
{
"name": "symfony/finder",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "a69cb5d455b4885ca376dc5bb3e1155cc8c08c4b"
+ "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/a69cb5d455b4885ca376dc5bb3e1155cc8c08c4b",
- "reference": "a69cb5d455b4885ca376dc5bb3e1155cc8c08c4b",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/baea7f66d30854ad32988c11a09d7ffd485810c4",
+ "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4",
"shasum": ""
},
"require": {
@@ -3454,7 +3808,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3481,20 +3835,74 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
- "time": "2016-12-13 09:39:43"
+ "time": "2017-06-01T21:01:25+00:00"
},
{
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
+ "name": "symfony/options-resolver",
+ "version": "v3.3.2",
"source": {
"type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
+ "url": "https://github.com/symfony/options-resolver.git",
+ "reference": "ff48982d295bcac1fd861f934f041ebc73ae40f0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/ff48982d295bcac1fd861f934f041ebc73ae40f0",
+ "reference": "ff48982d295bcac1fd861f934f041ebc73ae40f0",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.5.9"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.3-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\OptionsResolver\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony OptionsResolver Component",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "config",
+ "configuration",
+ "options"
+ ],
+ "time": "2017-04-12T14:14:56+00:00"
+ },
+ {
+ "name": "symfony/polyfill-mbstring",
+ "version": "v1.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-mbstring.git",
+ "reference": "f29dca382a6485c3cbe6379f0c61230167681937"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f29dca382a6485c3cbe6379f0c61230167681937",
+ "reference": "f29dca382a6485c3cbe6379f0c61230167681937",
"shasum": ""
},
"require": {
@@ -3506,7 +3914,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3-dev"
+ "dev-master": "1.4-dev"
}
},
"autoload": {
@@ -3540,34 +3948,35 @@
"portable",
"shim"
],
- "time": "2016-11-14 01:06:16"
+ "time": "2017-06-09T14:24:12+00:00"
},
{
- "name": "symfony/polyfill-php54",
- "version": "v1.3.0",
+ "name": "symfony/polyfill-php70",
+ "version": "v1.4.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/polyfill-php54.git",
- "reference": "90e085822963fdcc9d1c5b73deb3d2e5783b16a0"
+ "url": "https://github.com/symfony/polyfill-php70.git",
+ "reference": "032fd647d5c11a9ceab8ee8747e13b5448e93874"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php54/zipball/90e085822963fdcc9d1c5b73deb3d2e5783b16a0",
- "reference": "90e085822963fdcc9d1c5b73deb3d2e5783b16a0",
+ "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/032fd647d5c11a9ceab8ee8747e13b5448e93874",
+ "reference": "032fd647d5c11a9ceab8ee8747e13b5448e93874",
"shasum": ""
},
"require": {
+ "paragonie/random_compat": "~1.0|~2.0",
"php": ">=5.3.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3-dev"
+ "dev-master": "1.4-dev"
}
},
"autoload": {
"psr-4": {
- "Symfony\\Polyfill\\Php54\\": ""
+ "Symfony\\Polyfill\\Php70\\": ""
},
"files": [
"bootstrap.php"
@@ -3590,7 +3999,7 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony polyfill backporting some PHP 5.4+ features to lower PHP versions",
+ "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
@@ -3598,20 +4007,123 @@
"portable",
"shim"
],
- "time": "2016-11-14 01:06:16"
+ "time": "2017-06-09T14:24:12+00:00"
},
{
- "name": "symfony/process",
- "version": "v3.2.1",
+ "name": "symfony/polyfill-php72",
+ "version": "v1.4.0",
"source": {
"type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "02ea84847aad71be7e32056408bb19f3a616cdd3"
+ "url": "https://github.com/symfony/polyfill-php72.git",
+ "reference": "d3a71580c1e2cab33b6d705f0ec40e9015e14d5c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/02ea84847aad71be7e32056408bb19f3a616cdd3",
- "reference": "02ea84847aad71be7e32056408bb19f3a616cdd3",
+ "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/d3a71580c1e2cab33b6d705f0ec40e9015e14d5c",
+ "reference": "d3a71580c1e2cab33b6d705f0ec40e9015e14d5c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.4-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Polyfill\\Php72\\": ""
+ },
+ "files": [
+ "bootstrap.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "time": "2017-06-09T08:25:21+00:00"
+ },
+ {
+ "name": "symfony/polyfill-xml",
+ "version": "v1.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-xml.git",
+ "reference": "89326af9d173053826ae8fe26a6f49597ba4e9f3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-xml/zipball/89326af9d173053826ae8fe26a6f49597ba4e9f3",
+ "reference": "89326af9d173053826ae8fe26a6f49597ba4e9f3",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3",
+ "symfony/polyfill-php72": "~1.4"
+ },
+ "type": "metapackage",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.4-dev"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill for xml's utf8_encode and utf8_decode functions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "time": "2017-06-09T08:25:21+00:00"
+ },
+ {
+ "name": "symfony/process",
+ "version": "v3.3.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/process.git",
+ "reference": "8e30690c67aafb6c7992d6d8eb0d707807dd3eaf"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/process/zipball/8e30690c67aafb6c7992d6d8eb0d707807dd3eaf",
+ "reference": "8e30690c67aafb6c7992d6d8eb0d707807dd3eaf",
"shasum": ""
},
"require": {
@@ -3620,7 +4132,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3647,20 +4159,20 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
- "time": "2016-11-24 10:40:28"
+ "time": "2017-05-22T12:32:03+00:00"
},
{
"name": "symfony/stopwatch",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
- "reference": "5b139e1c4290e6c7640ba80d9c9b5e49ef22b841"
+ "reference": "602a15299dc01556013b07167d4f5d3a60e90d15"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/5b139e1c4290e6c7640ba80d9c9b5e49ef22b841",
- "reference": "5b139e1c4290e6c7640ba80d9c9b5e49ef22b841",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/602a15299dc01556013b07167d4f5d3a60e90d15",
+ "reference": "602a15299dc01556013b07167d4f5d3a60e90d15",
"shasum": ""
},
"require": {
@@ -3669,7 +4181,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3696,20 +4208,20 @@
],
"description": "Symfony Stopwatch Component",
"homepage": "https://symfony.com",
- "time": "2016-06-29 05:43:10"
+ "time": "2017-04-12T14:14:56+00:00"
},
{
"name": "symfony/yaml",
- "version": "v3.2.1",
+ "version": "v3.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "a7095af4b97a0955f85c8989106c249fa649011f"
+ "reference": "9752a30000a8ca9f4b34b5227d15d0101b96b063"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/a7095af4b97a0955f85c8989106c249fa649011f",
- "reference": "a7095af4b97a0955f85c8989106c249fa649011f",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/9752a30000a8ca9f4b34b5227d15d0101b96b063",
+ "reference": "9752a30000a8ca9f4b34b5227d15d0101b96b063",
"shasum": ""
},
"require": {
@@ -3724,7 +4236,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -3751,7 +4263,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2016-12-10 10:07:06"
+ "time": "2017-06-02T22:05:06+00:00"
},
{
"name": "webmozart/assert",
@@ -3801,20 +4313,20 @@
"check",
"validate"
],
- "time": "2016-11-23 20:04:58"
+ "time": "2016-11-23T20:04:58+00:00"
},
{
"name": "yiisoft/yii2-codeception",
- "version": "2.0.5",
+ "version": "2.0.6",
"source": {
"type": "git",
"url": "https://github.com/yiisoft/yii2-codeception.git",
- "reference": "c916a36d09fc128b05a374e7922bc56854334d56"
+ "reference": "086c8c2d28736e7a484a7a8611b5cc84024e9fb3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yiisoft/yii2-codeception/zipball/c916a36d09fc128b05a374e7922bc56854334d56",
- "reference": "c916a36d09fc128b05a374e7922bc56854334d56",
+ "url": "https://api.github.com/repos/yiisoft/yii2-codeception/zipball/086c8c2d28736e7a484a7a8611b5cc84024e9fb3",
+ "reference": "086c8c2d28736e7a484a7a8611b5cc84024e9fb3",
"shasum": ""
},
"require": {
@@ -3847,15 +4359,15 @@
"yii2"
],
"abandoned": "codeception/codeception",
- "time": "2016-03-17 03:41:26"
+ "time": "2017-05-22T12:08:21+00:00"
}
],
"aliases": [],
- "minimum-stability": "stable",
+ "minimum-stability": "dev",
"stability-flags": {
"phpmd/phpmd": 0
},
- "prefer-stable": false,
+ "prefer-stable": true,
"prefer-lowest": false,
"platform": {
"php": ">=5.5"
diff --git a/docs/README.md b/docs/README.md
deleted file mode 100644
index f85ebd4..0000000
--- a/docs/README.md
+++ /dev/null
@@ -1 +0,0 @@
-**[Documentation index is here!](index.md)**
diff --git a/docs/contributing/clean-code.md b/docs/contributing/clean-code.md
new file mode 100644
index 0000000..6273738
--- /dev/null
+++ b/docs/contributing/clean-code.md
@@ -0,0 +1,60 @@
+Clean Code
+==========
+
+We have added some development tools for you to contribute to the library with clean code:
+
+- **PHP mess detector**: Takes a given PHP source code base and look for several potential problems within that source.
+- **PHP code sniffer**: Tokenizes PHP, Javascript and CSS files and detectes violations of a defined set of coding
+ standards.
+- **PHP code fixer**: Analyzes some PHP source code and tries to fix coding standards issues.
+- **Tests**: Well, everybody knows why tests exists.
+
+Using PHP mess detector
+-----------------------
+
+PHP mess detector takes a given PHP source code base and look for several potential problems within that source. The
+following is a sample usage with all options available:
+
+```bash
+./vendor/bin/phpmd ./src text codesize,unusedcode,naming,design,controversial,cleancode
+```
+
+For further information, please visit [PHP mess detector documentation](https://phpmd.org/)
+
+Using PHP code sniffer
+----------------------
+
+Global settings file: `phpcs.xml.dist` (added into Git)
+Local settings file (you can add it locally): `phpcs.xml` (ignored by Git)
+
+- Run checking by `PHP_CodeSniffer`: `./vendor/bin/phpcs`
+- Show check report in patch form: `./vendor/bin/phpcs --report=diff`
+- Automatically fix all fixable issues: `./vendor/bin/phpcbf`
+
+For further information, please visit [squizlabs/PHP_CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer)
+
+Using PHP code fixer
+--------------------
+
+Global settings file: `.php_cs.dist` (added into Git)
+Local settings file (you can add it locally): `.php_cs` (ignored by Git)
+
+- Run checking by `PHP-CS-Fixer`: `./vendor/bin/php-cs-fixer --config=.php_cs.dist fix ./src --dry-run`
+- Automatically fix all fixable issues: ` ./vendor/bin/php-cs-fixer --config=.php_cs.dist fix ./src`
+
+For further information, please visit [FriendsOfPHP/PHP-CS-Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer)
+
+Running Tests
+-------------
+
+We are using `Codeception` for testing the module. Do the following:
+
+- Create a `yii2-usuario-test` database.
+- Add database access configuration `tests/_app/config/db.php`
+- Run `./vendor/bin/codecept build`
+- Run `./vendor/bin/codecept functional`
+
+We still need to add `unit` tests to the module. Feel free to add your tests to it as long as it makes use of
+`Codeception`.
+
+© [2amigos](http://www.2amigos.us/) 2013-2017
diff --git a/docs/contributing/how-to.md b/docs/contributing/how-to.md
new file mode 100644
index 0000000..7e09087
--- /dev/null
+++ b/docs/contributing/how-to.md
@@ -0,0 +1,30 @@
+# How to contribute
+
+Contributions are **welcome** and will be fully **credited**.
+
+We accept contributions via Pull Requests on [Github](https://github.com/2amigos/yii2-usuario).
+
+
+## Pull Requests
+
+- **[PSR-2 Coding Standard](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md)** - The easiest way to apply the conventions is to install [PHP Code Sniffer](http://pear.php.net/package/PHP_CodeSniffer).
+
+- **Add tests!** - Your new features won't be accepted if it doesn't have tests.
+
+- **Document any change in behaviour** - Make sure the `README.md` and any other relevant documentation are kept up-to-date.
+
+- **Consider our release cycle** - We try to follow [SemVer v2.0.0](http://semver.org/). Randomly breaking public APIs is not an option.
+
+- **Create feature branches** - Don't ask us to pull from your master branch.
+
+- **One pull request per feature** - If you want to do more than one thing, send multiple pull requests.
+
+- **Send coherent history** - Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please squash them before submitting.
+
+
+## Clean Code
+
+- Follow the guidelines at [Clean Code](clean-code.md)
+
+
+© [2amigos](http://www.2amigos.us/) 2013-2017
diff --git a/docs/enhancing-and-overriding/how-to-enhance-a-user-model.md b/docs/enhancing-and-overriding/how-to-enhance-a-user-model.md
index 4e25c82..f316a3e 100644
--- a/docs/enhancing-and-overriding/how-to-enhance-a-user-model.md
+++ b/docs/enhancing-and-overriding/how-to-enhance-a-user-model.md
@@ -73,3 +73,5 @@ class ProfileController extends Controller
> This is absolutely good way to extend almost any class of the extension. For more information you could
> check `Da\User\Bootstrap` class file to see what you have in your control.
+
+© [2amigos](http://www.2amigos.us/) 2013-2017
diff --git a/docs/enhancing-and-overriding/overriding-classes.md b/docs/enhancing-and-overriding/overriding-classes.md
new file mode 100644
index 0000000..a368f48
--- /dev/null
+++ b/docs/enhancing-and-overriding/overriding-classes.md
@@ -0,0 +1,106 @@
+Overriding Classes
+==================
+
+This module makes extensive use of the Yii2's Dependency Injection Container. The module has a special attribute
+named `classMap` where it allows you to override specific classes.
+
+The following are the classes that you can override throughout that attribute:
+
+- Model Classes (AR)
+ - User
+ - SocialNetworkAccount
+ - Profile
+ - Token
+ - Assignment
+ - Permission
+ - Role
+- Search Classes
+ - UserSearch
+ - PermissionSearch
+ - RoleSearch
+- Form Classes
+ - RegistrationForm
+ - ResendForm
+ - LoginForm
+ - SettingsForm
+ - RecoveryForm
+
+
+How to Override
+---------------
+
+The `classMap` contains an easy to recognize name and their correspondent definition. The default configuration can be
+seen at the `Bootstrap` class:
+
+```php
+$defaults = [
+ // --- models
+ 'User' => 'Da\User\Model\User',
+ 'SocialNetworkAccount' => 'Da\User\Model\SocialNetworkAccount',
+ 'Profile' => 'Da\User\Model\Profile',
+ 'Token' => 'Da\User\Model\Token',
+ 'Assignment' => 'Da\User\Model\Assignment',
+ 'Permission' => 'Da\User\Model\Permission',
+ 'Role' => 'Da\User\Model\Role',
+ // --- search
+ 'UserSearch' => 'Da\User\Search\UserSearch',
+ 'PermissionSearch' => 'Da\User\Search\PermissionSearch',
+ 'RoleSearch' => 'Da\User\Search\RoleSearch',
+ // --- forms
+ 'RegistrationForm' => 'Da\User\Form\RegistrationForm',
+ 'ResendForm' => 'Da\User\Form\ResendForm',
+ 'LoginForm' => 'Da\User\Form\LoginForm',
+ 'SettingsForm' => 'Da\User\Form\SettingsForm',
+ 'RecoveryForm' => 'Da\User\Form\RecoveryForm',
+];
+```
+
+As you can see, the only thing we need to do is actually modify its definition. For example, the following configuration
+will override the `RegistrationForm` class:
+
+```php
+namespace app\forms;
+
+use Da\User\Form\RegistrationForm as BaseForm;
+
+
+class RegistrationForm extends BaseForm {
+
+ /**
+ * Override from parent
+ */
+ public function rules() {
+ // your logic
+ }
+}
+
+```
+Now, to tell the module to use your class instead, you simply need to update the definition of that class into the
+the `Module::classMap` attribute.
+
+```php
+\\ ...
+'modules' => [
+ 'user' => [
+ 'class' => Da\User\Module::class,
+ 'classMap' => [
+ 'RegistrationForm' => 'app\forms\RegistrationForm'
+ ]
+ ]
+]
+```
+
+The definition can be any of the following (from Yii2's DI container):
+
+- a **PHP callable**: The callable will be executed when `Container::get()]]` is invoked. The signature of the callable
+ should be `function ($container, $params, $config)`, where `$params` stands for the list of constructor
+ parameters, `$config` the object configuration, and `$container` the container object. The return value
+ of the callable will be returned by `Container::get()]]` as the object instance requested.
+- a **configuration array**: the array contains name-value pairs that will be used to initialize the property
+ values of the newly created object when `Container::get()]]` is called. The `class` element stands for the
+ the class of the object to be created. If `class` is not specified, `$class` will be used as the class name.
+- a **string**: a class name, an interface name or an alias name.
+
+
+
+> See [how to enhance a User model](how-to-enhance-a-user-model.md) guide to see a practical example.
diff --git a/docs/index.md b/docs/index.md
index 610858f..403eb06 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -1,5 +1,4 @@
-Yii2 Usuario Extension Documentation
-====================================
+# Yii2 Usuario Extension
[](https://travis-ci.org/2amigos/yii2-usuario)
[](http://yii2-usuario.readthedocs.io/en/latest/?badge=latest)
@@ -10,17 +9,93 @@ Yii2 Usuario Extension Documentation
[](https://scrutinizer-ci.com/g/2amigos/yii2-usuario/?branch=master)
[](https://scrutinizer-ci.com/g/2amigos/yii2-usuario/?branch=master)
-
-
-
-
+## Getting Started
-Installation
-------------
+This extension has been built to be working `out of the box`, that is, after you install its migrations and configure
+the module on your application structure, you should be set to go.
+
+#### Step 1 - Download
+
+You can download it and place it on your third party libraries folder but we highly recommend that you install it
+through [composer](http://getcomposer.org/download/).
+
+Either run
+
+```bash
+$ composer require 2amigos/yii2-usuario:~1.0
+```
+
+or add
+
+```
+"2amigos/yii2-usuario": "~1.0"
+```
+
+to the `require` section of your `composer.json` file.
+
+#### Step 2 - Apply database schema migrations
+
+This is obvious extension like our which deals with users, roles, permissions, etc. have to use some database.
+Our migrations are namespaced and available in `Da\User\Migration` namespace.
+
+Before starting to work with database, please ensure you have deleted `m130524_201442_init.php` migration file
+which comes from the default installation of the Advanced Application Template. It's located at
+`%PROJECT_DIR%/console/migrations/m130524_201442_init.php` path.
+
+There are two ways to apply migrations of this extension, the first one:
+
+```php
+./yii migrate --migrationPath="@Da/User/Migration"
+./yii migrate
+```
+
+First command applies migration set of the user module, and the second one is for application migrations.
+
+> Note, you cannot mix two ways: choose one of them, and stick with it.
+
+The second way is more comfortable, and you don't have to remember to launch first command every time you obtain
+new version of our extension. First of all add the following lines to the file
+`%PROJECT_DIR%/console/config/main.php`:
+
+```php
+return [
+ // ...
+ 'controllerMap' => [
+ 'migrate' => [
+ 'class' => \yii\console\controllers\MigrateController::class,
+ 'migrationNamespaces' => [
+ 'Da\User\Migration',
+ ],
+ ],
+ ],
+ // ...
+];
+```
+
+This basically instructs your application to always try to use migrations from the given namespace. Which again
+is very convenient way to track new migration classes coming from this and possibly other extensions and sources.
+
+> Namespaced migrations were introduced in Yii 2.0.10, so before using them consider updating your framework
+> installation version.
+
+#### Step 3 - Configure
+
+Once we have it installed, we have to configure it on your `config.php` file.
+
+
+```php
+'modules' => [
+ 'user' => [
+ 'class' => Da\User\Module::class,
+ ]
+]
+```
+
+Configuration may differ from template to template, the following are some guidelines for sidekit app template and
+the official Yii2 advanced application template:
- [Sidekit Application Template](installation/sidekit-application-template.md)
- [Advanced Application Template](installation/advanced-application-template.md)
-- [Basic Application Template](installation/basic-application-template.md)
Enhancing and Overriding
------------------------
@@ -32,10 +107,10 @@ Helpful Guides
- [Separate Frontend and Backend Sessions](helpful-guides/separate-frontend-and-backend-sessions.md)
-Other
------
+Contributing
+------------
-- [Contriburing to Documentation](other/contriburing-to-documentation.md)
-- [Other for Developers](other/other-for-developers.md)
+- [How to Contribute](contributing/how-to.md)
+- [Clean Code](contributing/clean-code.md)
-© [2amigos](http://www.2amigos.us/) 2016
+© [2amigos](http://www.2amigos.us/) 2013-2017
diff --git a/docs/installation/advanced-application-template.md b/docs/installation/advanced-application-template.md
index 5475b90..23367b4 100644
--- a/docs/installation/advanced-application-template.md
+++ b/docs/installation/advanced-application-template.md
@@ -6,7 +6,7 @@ This page is dedicated for those who prefer to use more or less default
check [their readme](https://github.com/yiisoft/yii2-app-advanced#readme) file on why and when you should use it,
for now we're going to explain on how Yii2 User Module extension could be used for the case if you prefer it.
-> We highly recommend you to use [Sidekit Application Template](http://www.2amigos.us/) which has sensible default
+> We highly recommend you to use [Sidekit Application Template](https://github.com/sidekit/yii2-app-template) which has sensible default
packages, and everything you need to start project in no time with batteries included! ;-)
>
> [Check this manual page](sidekit-application-template.md) if you decided to use it.
@@ -107,9 +107,5 @@ is very convenient way to track new migration classes coming from this and possi
> Namespaced migrations were introduced in Yii 2.0.10, so before using them consider updating your framework
> installation version.
-What can I do now?
-------------------
-Now you're ready to go and build something nice with help of our module extension. Perhaps you could check
-[how to use login and sign up forms]() gracefully built for your needs, or you can check out how you could
-[customize login form]() look'n'feel.
+© [2amigos](http://www.2amigos.us/) 2013-2017
diff --git a/docs/installation/basic-application-template.md b/docs/installation/basic-application-template.md
deleted file mode 100644
index 6cf6e21..0000000
--- a/docs/installation/basic-application-template.md
+++ /dev/null
@@ -1,4 +0,0 @@
-Basic Application Template
-==========================
-
-TODO:
diff --git a/docs/installation/sidekit-application-template.md b/docs/installation/sidekit-application-template.md
index 916092f..c2a5798 100644
--- a/docs/installation/sidekit-application-template.md
+++ b/docs/installation/sidekit-application-template.md
@@ -1,4 +1,83 @@
Sidekit Application Template
============================
-TODO: promote our own application template first of all, and do it here ;-)
+Sidekit Application Template is our proposed structure for your Yii2 applications. It makes use
+of a special library named `SideKit`
+
+> For further information regarding the use of this template, please visit its
+[README file](https://github.com/sidekit/yii2-app-template).
+
+Step 1 - Install SideKit Application template
+----------------------------------------------
+
+We will assume that you have composer installed globally on your computer and also the
+`fxp/composer-asset/plugin:^1.3` that is required for all Yii2 apps.
+
+```bash
+composer create-project --prefer-dist --stability=dev sidekit/yii2-app-template your-site-name
+```
+
+Step 2 - Configure your application
+-----------------------------------
+
+Go to the `config/web/modules` folder and create a new PHP file named `user.php`. Then on in its
+contents write the configuration for the module:
+
+
+```php
+ Da\User\Module::class
+];
+```
+
+Step 3 - Apply database schema migrations
+-----------------------------------------
+
+This is obvious extension like our which deals with users, roles, permissions, etc. have to use some database.
+Our migrations are namespaced and available in `Da\User\Migration` namespace.
+
+Before starting to work with database, please ensure you have deleted `m130524_201442_init.php` migration file
+which comes from the default installation of the Advanced Application Template. It's located at
+`%PROJECT_DIR%/console/migrations/m130524_201442_init.php` path.
+
+There are two ways to apply migrations of this extension, the first one:
+
+```php
+./yii migrate --migrationPath="@Da/User/Migration"
+./yii migrate
+```
+
+First command applies migration set of the user module, and the second one is for application migrations.
+
+> Note, you cannot mix two ways: choose one of them, and stick with it.
+
+The second way is more comfortable, and you don't have to remember to launch first command every time you obtain
+new version of our extension. First of all add the following lines to the file
+`%PROJECT_DIR%/console/config/main.php`:
+
+```php
+return [
+ // ...
+ 'controllerMap' => [
+ 'migrate' => [
+ 'class' => \yii\console\controllers\MigrateController::class,
+ 'migrationNamespaces' => [
+ 'Da\User\Migration',
+ ],
+ ],
+ ],
+ // ...
+];
+```
+
+This basically instructs your application to always try to use migrations from the given namespace. Which again
+is very convenient way to track new migration classes coming from this and possibly other extensions and sources.
+
+> Namespaced migrations were introduced in Yii 2.0.10, so before using them consider updating your framework
+> installation version.
+
+© [2amigos](http://www.2amigos.us/) 2013-2017
+
+
diff --git a/docs/media/README.md b/docs/media/README.md
deleted file mode 100644
index 0b114c3..0000000
--- a/docs/media/README.md
+++ /dev/null
@@ -1,21 +0,0 @@
-Yii Logo
-========
-
-File `yii-logo.svg`:
-[Yii Framework logo download](http://www.yiiframework.com/logo/)
-
-
-Font Awesome icons
-==================
-
-File `cogs.svg`:
-[Github project: encharm/Font-Awesome-SVG-PNG](https://github.com/encharm/Font-Awesome-SVG-PNG/blob/master/black/svg/cogs.svg)
-
-
-File `user-secret.svg:
-[Github project: encharm/Font-Awesome-SVG-PNG](https://github.com/encharm/Font-Awesome-SVG-PNG/blob/master/black/svg/user-secret.svg)
-
-
-File `wrench.svg`:
-[Github project: encharm/Font-Awesome-SVG-PNG](https://github.com/encharm/Font-Awesome-SVG-PNG/blob/master/black/svg/wrench.svg)
-
diff --git a/docs/media/cogs.png b/docs/media/cogs.png
deleted file mode 100644
index b6d876b..0000000
Binary files a/docs/media/cogs.png and /dev/null differ
diff --git a/docs/media/cogs.svg b/docs/media/cogs.svg
deleted file mode 100644
index ae1b91a..0000000
--- a/docs/media/cogs.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/docs/media/user-secret.png b/docs/media/user-secret.png
deleted file mode 100644
index 1ca3ec7..0000000
Binary files a/docs/media/user-secret.png and /dev/null differ
diff --git a/docs/media/user-secret.svg b/docs/media/user-secret.svg
deleted file mode 100644
index 22efd21..0000000
--- a/docs/media/user-secret.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/docs/media/wrench.png b/docs/media/wrench.png
deleted file mode 100644
index f3bd13b..0000000
Binary files a/docs/media/wrench.png and /dev/null differ
diff --git a/docs/media/wrench.svg b/docs/media/wrench.svg
deleted file mode 100644
index 8c8e7f8..0000000
--- a/docs/media/wrench.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/docs/media/yii-logo.png b/docs/media/yii-logo.png
deleted file mode 100644
index 08b7f2c..0000000
Binary files a/docs/media/yii-logo.png and /dev/null differ
diff --git a/docs/media/yii-logo.svg b/docs/media/yii-logo.svg
deleted file mode 100644
index 75bbf80..0000000
--- a/docs/media/yii-logo.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/other/contriburing-to-documentation.md b/docs/other/contriburing-to-documentation.md
deleted file mode 100644
index e69de29..0000000
diff --git a/docs/other/other-for-developers.md b/docs/other/other-for-developers.md
deleted file mode 100644
index c69176d..0000000
--- a/docs/other/other-for-developers.md
+++ /dev/null
@@ -1,32 +0,0 @@
-Other for Developers
-====================
-
-Tests
------
-
-1. First of all
-2. Running tests: `./vendor`
-
-Code Style Checkers and Mess Detectors
---------------------------------------
-
-## [squizlabs/PHP_CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer)
-
-Global settings file: `phpcs.xml.dist` (added into Git)
-Local settings file (you can add it locally): `phpcs.xml` (ignored by Git)
-
-Run checking by `PHP_CodeSniffer`: `./vendor/bin/phpcs`
-Show check report in patch form: `./vendor/bin/phpcs --report=diff`
-Automatically fix all fixable issues: `./vendor/bin/phpcbf`
-
-## [FriendsOfPHP/PHP-CS-Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer)
-
-Global settings file: `.php_cs.dist` (added into Git)
-Local settings file (you can add it locally): `.php_cs` (ignored by Git)
-
-Run checking by `PHP-CS-Fixer`: `./vendor/bin/php-cs-fixer fix --dry-run`
-Automatically fix all fixable issues: `./vendor/bin/php-cs-fixer fix`
-
-## [phpmd/phpmd](https://github.com/phpmd/phpmd)
-
-TODO:
diff --git a/src/User/AuthClient/Yandex.php b/src/User/AuthClient/Yandex.php
index c34549f..35f3dfe 100644
--- a/src/User/AuthClient/Yandex.php
+++ b/src/User/AuthClient/Yandex.php
@@ -28,9 +28,9 @@ class Yandex extends BaseYandex implements AuthClientInterface
if ($emails !== null && isset($emails[0])) {
return $emails[0];
- } else {
- return null;
}
+
+ return null;
}
/**
diff --git a/src/User/Bootstrap.php b/src/User/Bootstrap.php
index 989d742..a4e1a8e 100644
--- a/src/User/Bootstrap.php
+++ b/src/User/Bootstrap.php
@@ -59,7 +59,7 @@ class Bootstrap implements BootstrapInterface
* Initialize container with module classes.
*
* @param \yii\base\Application $app
- * @param array $map the previously built class map list
+ * @param array $map the previously built class map list
*/
protected function initContainer($app, $map)
{
@@ -165,7 +165,7 @@ class Bootstrap implements BootstrapInterface
if (!isset($app->get('i18n')->translations['usuario*'])) {
$app->get('i18n')->translations['usuario*'] = [
'class' => PhpMessageSource::class,
- 'basePath' => __DIR__.'/resources/i18n',
+ 'basePath' => __DIR__ . '/resources/i18n',
'sourceLanguage' => 'en-US',
];
}
@@ -214,7 +214,7 @@ class Bootstrap implements BootstrapInterface
/**
* Ensures required mail parameters needed for the mail service.
*
- * @param Application $app
+ * @param Application $app
* @param Module|\yii\base\Module $module
*/
protected function initMailServiceConfiguration(Application $app, Module $module)
@@ -331,7 +331,7 @@ class Bootstrap implements BootstrapInterface
/**
* Returns the parent class name route of a short class name.
*
- * @param array $routes class name routes
+ * @param array $routes class name routes
* @param string $name
*
* @return int|string
diff --git a/src/User/Command/ConfirmController.php b/src/User/Command/ConfirmController.php
index 2dc2a8f..e4c2d9f 100644
--- a/src/User/Command/ConfirmController.php
+++ b/src/User/Command/ConfirmController.php
@@ -36,12 +36,12 @@ class ConfirmController extends Controller
{
$user = $this->userQuery->whereUsernameOrEmail($usernameOrEmail)->one();
if ($user === null) {
- $this->stdout(Yii::t('usuario', 'User is not found')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'User is not found') . "\n", Console::FG_RED);
} else {
if ($this->make(UserConfirmationService::class, [$user])->run()) {
- $this->stdout(Yii::t('usuario', 'User has been confirmed')."\n", Console::FG_GREEN);
+ $this->stdout(Yii::t('usuario', 'User has been confirmed') . "\n", Console::FG_GREEN);
} else {
- $this->stdout(Yii::t('usuario', 'Error occurred while confirming user')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'Error occurred while confirming user') . "\n", Console::FG_RED);
}
}
}
diff --git a/src/User/Command/CreateController.php b/src/User/Command/CreateController.php
index d9b7d43..e313fdf 100644
--- a/src/User/Command/CreateController.php
+++ b/src/User/Command/CreateController.php
@@ -32,12 +32,12 @@ class CreateController extends Controller
$mailService = MailFactory::makeWelcomeMailerService($user);
if ($this->make(UserCreateService::class, [$user, $mailService])->run()) {
- $this->stdout(Yii::t('usuario', 'User has been created')."!\n", Console::FG_GREEN);
+ $this->stdout(Yii::t('usuario', 'User has been created') . "!\n", Console::FG_GREEN);
} else {
- $this->stdout(Yii::t('usuario', 'Please fix following errors:')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'Please fix following errors:') . "\n", Console::FG_RED);
foreach ($user->errors as $errors) {
foreach ($errors as $error) {
- $this->stdout(' - '.$error."\n", Console::FG_RED);
+ $this->stdout(' - ' . $error . "\n", Console::FG_RED);
}
}
}
diff --git a/src/User/Command/DeleteController.php b/src/User/Command/DeleteController.php
index b5dbbf5..d150cdb 100644
--- a/src/User/Command/DeleteController.php
+++ b/src/User/Command/DeleteController.php
@@ -32,12 +32,12 @@ class DeleteController extends Controller
if ($this->confirm(Yii::t('usuario', 'Are you sure? Deleted user can not be restored'))) {
$user = $this->userQuery->whereUsernameOrEmail($usernameOrEmail)->one();
if ($user === null) {
- $this->stdout(Yii::t('usuario', 'User is not found')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'User is not found') . "\n", Console::FG_RED);
} else {
if ($user->delete()) {
- $this->stdout(Yii::t('usuario', 'User has been deleted')."\n", Console::FG_GREEN);
+ $this->stdout(Yii::t('usuario', 'User has been deleted') . "\n", Console::FG_GREEN);
} else {
- $this->stdout(Yii::t('usuario', 'Error occurred while deleting user')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'Error occurred while deleting user') . "\n", Console::FG_RED);
}
}
}
diff --git a/src/User/Command/PasswordController.php b/src/User/Command/PasswordController.php
index 6530324..fc162b3 100644
--- a/src/User/Command/PasswordController.php
+++ b/src/User/Command/PasswordController.php
@@ -38,12 +38,12 @@ class PasswordController extends Controller
$user = $this->userQuery->whereUsernameOrEmail($usernameOrEmail)->one();
if ($user === null) {
- $this->stdout(Yii::t('usuario', 'User is not found')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'User is not found') . "\n", Console::FG_RED);
} else {
if ($this->make(ResetPasswordService::class, [$password, $user])->run()) {
- $this->stdout(Yii::t('usuario', 'Password has been changed')."\n", Console::FG_GREEN);
+ $this->stdout(Yii::t('usuario', 'Password has been changed') . "\n", Console::FG_GREEN);
} else {
- $this->stdout(Yii::t('usuario', 'Error occurred while changing password')."\n", Console::FG_RED);
+ $this->stdout(Yii::t('usuario', 'Error occurred while changing password') . "\n", Console::FG_RED);
}
}
}
diff --git a/src/User/Component/AuthDbManagerComponent.php b/src/User/Component/AuthDbManagerComponent.php
index 30fe4b3..b951cd2 100644
--- a/src/User/Component/AuthDbManagerComponent.php
+++ b/src/User/Component/AuthDbManagerComponent.php
@@ -18,8 +18,8 @@ use yii\rbac\DbManager;
class AuthDbManagerComponent extends DbManager implements AuthManagerInterface
{
/**
- * @param int|null $type If null will return all auth items
- * @param array $excludeItems Items that should be excluded from result array
+ * @param int|null $type If null will return all auth items
+ * @param array $excludeItems Items that should be excluded from result array
*
* @return array
*/
@@ -63,7 +63,7 @@ class AuthDbManagerComponent extends DbManager implements AuthManagerInterface
->select('b.*')
->from(['a' => $this->assignmentTable, 'b' => $this->itemTable])
->where('{{a}}.[[item_name]]={{b}}.[[name]]')
- ->andWhere(['a.user_id' => (string) $userId]);
+ ->andWhere(['a.user_id' => (string)$userId]);
$roles = [];
foreach ($query->all($this->db) as $row) {
diff --git a/src/User/Contracts/AuthManagerInterface.php b/src/User/Contracts/AuthManagerInterface.php
index 915d911..302469f 100644
--- a/src/User/Contracts/AuthManagerInterface.php
+++ b/src/User/Contracts/AuthManagerInterface.php
@@ -17,7 +17,7 @@ interface AuthManagerInterface extends ManagerInterface
{
/**
* @param int|null $type
- * @param array $excludeItems
+ * @param array $excludeItems
*
* @return mixed
*/
diff --git a/src/User/Controller/AbstractAuthItemController.php b/src/User/Controller/AbstractAuthItemController.php
index c22ffee..2eca800 100644
--- a/src/User/Controller/AbstractAuthItemController.php
+++ b/src/User/Controller/AbstractAuthItemController.php
@@ -33,10 +33,10 @@ abstract class AbstractAuthItemController extends Controller
/**
* AbstractAuthItemController constructor.
*
- * @param string $id
- * @param Module $module
+ * @param string $id
+ * @param Module $module
* @param AuthHelper $authHelper
- * @param array $config
+ * @param array $config
*/
public function __construct($id, Module $module, AuthHelper $authHelper, array $config = [])
{
@@ -92,9 +92,8 @@ abstract class AbstractAuthItemController extends Controller
->setFlash('success', Yii::t('usuario', 'Authorization item successfully created.'));
return $this->redirect(['index']);
- } else {
- Yii::$app->getSession()->setFlash('danger', Yii::t('usuario', 'Unable to create authorization item.'));
}
+ Yii::$app->getSession()->setFlash('danger', Yii::t('usuario', 'Unable to create authorization item.'));
}
return $this->render(
@@ -122,9 +121,8 @@ abstract class AbstractAuthItemController extends Controller
->setFlash('success', Yii::t('usuario', 'Authorization item successfully updated.'));
return $this->redirect(['index']);
- } else {
- Yii::$app->getSession()->setFlash('danger', Yii::t('usuario', 'Unable to update authorization item.'));
}
+ Yii::$app->getSession()->setFlash('danger', Yii::t('usuario', 'Unable to update authorization item.'));
}
return $this->render(
diff --git a/src/User/Controller/AdminController.php b/src/User/Controller/AdminController.php
index f30621e..47d75ec 100644
--- a/src/User/Controller/AdminController.php
+++ b/src/User/Controller/AdminController.php
@@ -43,10 +43,10 @@ class AdminController extends Controller
/**
* AdminController constructor.
*
- * @param string $id
- * @param Module $module
+ * @param string $id
+ * @param Module $module
* @param UserQuery $userQuery
- * @param array $config
+ * @param array $config
*/
public function __construct($id, Module $module, UserQuery $userQuery, array $config = [])
{
@@ -233,7 +233,10 @@ class AdminController extends Controller
Yii::$app->getSession()->setFlash('success', Yii::t('usuario', 'User has been confirmed'));
$this->trigger(UserEvent::EVENT_AFTER_CONFIRMATION, $event);
} else {
- Yii::$app->getSession()->setFlash('warning', Yii::t('usuario', 'Unable to confirm user. Please, try again.'));
+ Yii::$app->getSession()->setFlash(
+ 'warning',
+ Yii::t('usuario', 'Unable to confirm user. Please, try again.')
+ );
}
return $this->redirect(Url::previous('actions-redirect'));
diff --git a/src/User/Controller/ProfileController.php b/src/User/Controller/ProfileController.php
index c6131e2..df5444b 100644
--- a/src/User/Controller/ProfileController.php
+++ b/src/User/Controller/ProfileController.php
@@ -12,10 +12,10 @@
namespace Da\User\Controller;
use Da\User\Query\ProfileQuery;
+use Yii;
use yii\base\Module;
use yii\filters\AccessControl;
use yii\web\Controller;
-use Yii;
use yii\web\NotFoundHttpException;
class ProfileController extends Controller
@@ -25,10 +25,10 @@ class ProfileController extends Controller
/**
* ProfileController constructor.
*
- * @param string $id
- * @param Module $module
+ * @param string $id
+ * @param Module $module
* @param ProfileQuery $profileQuery
- * @param array $config
+ * @param array $config
*/
public function __construct($id, Module $module, ProfileQuery $profileQuery, array $config = [])
{
diff --git a/src/User/Controller/RecoveryController.php b/src/User/Controller/RecoveryController.php
index 867dcf6..f836e35 100644
--- a/src/User/Controller/RecoveryController.php
+++ b/src/User/Controller/RecoveryController.php
@@ -16,6 +16,7 @@ use Da\User\Event\ResetPasswordEvent;
use Da\User\Factory\MailFactory;
use Da\User\Form\RecoveryForm;
use Da\User\Model\Token;
+use Da\User\Module;
use Da\User\Query\TokenQuery;
use Da\User\Query\UserQuery;
use Da\User\Service\PasswordRecoveryService;
@@ -23,7 +24,6 @@ use Da\User\Service\ResetPasswordService;
use Da\User\Traits\ContainerAwareTrait;
use Da\User\Validator\AjaxRequestModelValidator;
use Yii;
-use Da\User\Module;
use yii\filters\AccessControl;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
@@ -38,11 +38,11 @@ class RecoveryController extends Controller
/**
* RecoveryController constructor.
*
- * @param string $id
- * @param Module $module
- * @param UserQuery $userQuery
+ * @param string $id
+ * @param Module $module
+ * @param UserQuery $userQuery
* @param TokenQuery $tokenQuery
- * @param array $config
+ * @param array $config
*/
public function __construct($id, Module $module, UserQuery $userQuery, TokenQuery $tokenQuery, array $config = [])
{
diff --git a/src/User/Controller/RegistrationController.php b/src/User/Controller/RegistrationController.php
index 546ae0d..966b239 100644
--- a/src/User/Controller/RegistrationController.php
+++ b/src/User/Controller/RegistrationController.php
@@ -44,11 +44,11 @@ class RegistrationController extends Controller
/**
* RegistrationController constructor.
*
- * @param string $id
- * @param Module $module
- * @param UserQuery $userQuery
+ * @param string $id
+ * @param Module $module
+ * @param UserQuery $userQuery
* @param SocialNetworkAccountQuery $socialNetworkAccountQuery
- * @param array $config
+ * @param array $config
*/
public function __construct(
$id,
@@ -232,7 +232,7 @@ class RegistrationController extends Controller
'info',
Yii::t(
'usuario',
- 'A message has been sent to your email address. '.
+ 'A message has been sent to your email address. ' .
'It contains a confirmation link that you must click to complete registration.'
)
);
@@ -243,18 +243,21 @@ class RegistrationController extends Controller
'danger',
Yii::t(
'usuario',
- 'We couldn\'t re-send the mail to confirm your address. '.
+ 'We couldn\'t re-send the mail to confirm your address. ' .
'Please, verify is the correct email or if it has been confirmed already.'
)
);
}
- return $this->render('/shared/message', [
- 'title' => $success
- ? Yii::t('usuario', 'A new confirmation link has been sent')
- : Yii::t('usuario', 'Unable to send confirmation link'),
- 'module' => $this->module,
- ]);
+ return $this->render(
+ '/shared/message',
+ [
+ 'title' => $success
+ ? Yii::t('usuario', 'A new confirmation link has been sent')
+ : Yii::t('usuario', 'Unable to send confirmation link'),
+ 'module' => $this->module,
+ ]
+ );
}
return $this->render(
diff --git a/src/User/Controller/SecurityController.php b/src/User/Controller/SecurityController.php
index 8695c60..c0da973 100644
--- a/src/User/Controller/SecurityController.php
+++ b/src/User/Controller/SecurityController.php
@@ -37,10 +37,10 @@ class SecurityController extends Controller
/**
* SecurityController constructor.
*
- * @param string $id
- * @param Module $module
+ * @param string $id
+ * @param Module $module
* @param SocialNetworkAccountQuery $socialNetworkAccountQuery
- * @param array $config
+ * @param array $config
*/
public function __construct(
$id,
@@ -116,6 +116,7 @@ class SecurityController extends Controller
if (Yii::$app->request->isAjax && $form->load(Yii::$app->request->post())) {
Yii::$app->response->format = Response::FORMAT_JSON;
+
return ActiveForm::validate($form);
}
diff --git a/src/User/Controller/SettingsController.php b/src/User/Controller/SettingsController.php
index 832bf37..1dae8ed 100644
--- a/src/User/Controller/SettingsController.php
+++ b/src/User/Controller/SettingsController.php
@@ -27,10 +27,10 @@ use Da\User\Query\UserQuery;
use Da\User\Service\EmailChangeService;
use Da\User\Traits\ContainerAwareTrait;
use Da\User\Validator\AjaxRequestModelValidator;
+use Yii;
use yii\filters\AccessControl;
use yii\filters\VerbFilter;
use yii\web\Controller;
-use Yii;
use yii\web\ForbiddenHttpException;
use yii\web\NotFoundHttpException;
@@ -38,24 +38,24 @@ class SettingsController extends Controller
{
use ContainerAwareTrait;
- protected $profileQuery;
- protected $userQuery;
- protected $socialNetworkAccountQuery;
-
/**
* {@inheritdoc}
*/
public $defaultAction = 'profile';
+ protected $profileQuery;
+ protected $userQuery;
+ protected $socialNetworkAccountQuery;
+
/**
* SettingsController constructor.
*
- * @param string $id
- * @param Module $module
- * @param ProfileQuery $profileQuery
- * @param UserQuery $userQuery
+ * @param string $id
+ * @param Module $module
+ * @param ProfileQuery $profileQuery
+ * @param UserQuery $userQuery
* @param SocialNetworkAccountQuery $socialNetworkAccountQuery
- * @param array $config
+ * @param array $config
*/
public function __construct(
$id,
@@ -145,7 +145,10 @@ class SettingsController extends Controller
$this->trigger(UserEvent::EVENT_BEFORE_ACCOUNT_UPDATE, $event);
if ($form->save()) {
- Yii::$app->getSession()->setFlash('success', Yii::t('usuario', 'Your account details have been updated'));
+ Yii::$app->getSession()->setFlash(
+ 'success',
+ Yii::t('usuario', 'Your account details have been updated')
+ );
$this->trigger(UserEvent::EVENT_AFTER_ACCOUNT_UPDATE, $event);
return $this->refresh();
diff --git a/src/User/Factory/AuthItemFactory.php b/src/User/Factory/AuthItemFactory.php
index a8ad815..59809c4 100644
--- a/src/User/Factory/AuthItemFactory.php
+++ b/src/User/Factory/AuthItemFactory.php
@@ -11,9 +11,9 @@
namespace Da\User\Factory;
+use Exception;
use Yii;
use yii\rbac\Item;
-use Exception;
class AuthItemFactory
{
diff --git a/src/User/Factory/EmailChangeStrategyFactory.php b/src/User/Factory/EmailChangeStrategyFactory.php
index 202df99..3207bad 100644
--- a/src/User/Factory/EmailChangeStrategyFactory.php
+++ b/src/User/Factory/EmailChangeStrategyFactory.php
@@ -16,8 +16,8 @@ use Da\User\Form\SettingsForm;
use Da\User\Strategy\DefaultEmailChangeStrategy;
use Da\User\Strategy\InsecureEmailChangeStrategy;
use Da\User\Strategy\SecureEmailChangeStrategy;
-use Yii;
use Exception;
+use Yii;
class EmailChangeStrategyFactory
{
diff --git a/src/User/Factory/MailFactory.php b/src/User/Factory/MailFactory.php
index 6f16a37..d5361b9 100644
--- a/src/User/Factory/MailFactory.php
+++ b/src/User/Factory/MailFactory.php
@@ -43,7 +43,7 @@ class MailFactory
/**
* @param string $email
- * @param Token $token
+ * @param Token $token
*
* @return MailService
*/
@@ -63,7 +63,7 @@ class MailFactory
}
/**
- * @param User $user
+ * @param User $user
* @param Token|null $token
*
* @return MailService
@@ -84,7 +84,7 @@ class MailFactory
}
/**
- * @param User $user
+ * @param User $user
* @param Token $token
*
* @return MailService
@@ -114,7 +114,7 @@ class MailFactory
* @param string $to
* @param string $subject
* @param string $view
- * @param array $params
+ * @param array $params
*
* @return MailService
*/
diff --git a/src/User/Filter/AccessRuleFilter.php b/src/User/Filter/AccessRuleFilter.php
index 4b41e17..72ee1cb 100644
--- a/src/User/Filter/AccessRuleFilter.php
+++ b/src/User/Filter/AccessRuleFilter.php
@@ -35,7 +35,6 @@ class AccessRuleFilter extends AccessRule
return true;
}
} elseif ($role === 'admin') {
-
/** @var User $identity */
$identity = $user->getIdentity();
diff --git a/src/User/Form/LoginForm.php b/src/User/Form/LoginForm.php
index aa700c2..639cae2 100644
--- a/src/User/Form/LoginForm.php
+++ b/src/User/Form/LoginForm.php
@@ -48,9 +48,9 @@ class LoginForm extends Model
protected $securityHelper;
/**
- * @param UserQuery $query
+ * @param UserQuery $query
* @param SecurityHelper $securityHelper
- * @param array $config
+ * @param array $config
*/
public function __construct(UserQuery $query, SecurityHelper $securityHelper, $config = [])
{
@@ -119,9 +119,9 @@ class LoginForm extends Model
$duration = $this->rememberMe ? $this->module->rememberLoginLifespan : 0;
return Yii::$app->getUser()->login($this->user, $duration);
- } else {
- return false;
}
+
+ return false;
}
/**
diff --git a/src/User/Form/RecoveryForm.php b/src/User/Form/RecoveryForm.php
index 6264d38..50bb647 100644
--- a/src/User/Form/RecoveryForm.php
+++ b/src/User/Form/RecoveryForm.php
@@ -38,7 +38,7 @@ class RecoveryForm extends Model
/**
* @param UserQuery $query
- * @param array $config
+ * @param array $config
*/
public function __construct(UserQuery $query, array $config = [])
{
diff --git a/src/User/Form/ResendForm.php b/src/User/Form/ResendForm.php
index 601b080..3406bc2 100644
--- a/src/User/Form/ResendForm.php
+++ b/src/User/Form/ResendForm.php
@@ -28,7 +28,7 @@ class ResendForm extends Model
/**
* @param UserQuery $userQuery
- * @param array $config
+ * @param array $config
*/
public function __construct(UserQuery $userQuery, $config = [])
{
diff --git a/src/User/Helper/ClassMapHelper.php b/src/User/Helper/ClassMapHelper.php
index 681f8ad..a3d86bb 100644
--- a/src/User/Helper/ClassMapHelper.php
+++ b/src/User/Helper/ClassMapHelper.php
@@ -54,6 +54,6 @@ class ClassMapHelper
if (array_key_exists($key, $this->map)) {
return $this->map[$key];
}
- throw new \Exception('Unknown model map key: '.$key);
+ throw new \Exception('Unknown model map key: ' . $key);
}
}
diff --git a/src/User/Helper/GravatarHelper.php b/src/User/Helper/GravatarHelper.php
index af7830c..6ecaf5d 100644
--- a/src/User/Helper/GravatarHelper.php
+++ b/src/User/Helper/GravatarHelper.php
@@ -20,6 +20,6 @@ class GravatarHelper
public function getUrl($id, $size = 200)
{
- return '//gravatar.com/avatar/'.$id.'?s='.$size;
+ return '//gravatar.com/avatar/' . $id . '?s=' . $size;
}
}
diff --git a/src/User/Helper/SecurityHelper.php b/src/User/Helper/SecurityHelper.php
index babff35..a8a03e4 100644
--- a/src/User/Helper/SecurityHelper.php
+++ b/src/User/Helper/SecurityHelper.php
@@ -28,7 +28,7 @@ class SecurityHelper
/**
* Generates a secure hash from a password and a random salt.
*
- * @param string $password
+ * @param string $password
* @param null|int $cost
*
* @return string
diff --git a/src/User/Helper/TimezoneHelper.php b/src/User/Helper/TimezoneHelper.php
index 73d56c7..581b48f 100644
--- a/src/User/Helper/TimezoneHelper.php
+++ b/src/User/Helper/TimezoneHelper.php
@@ -11,9 +11,9 @@
namespace Da\User\Helper;
+use DateTime;
use DateTimeZone;
use yii\helpers\ArrayHelper;
-use DateTime;
class TimezoneHelper
{
@@ -32,7 +32,7 @@ class TimezoneHelper
$offset = $date->getOffset() / 60 / 60;
$timeZones[] = [
'timezone' => $timeZone,
- 'name' => "{$timeZone} (UTC ".($offset > 0 ? '+' : '')."{$offset})",
+ 'name' => "{$timeZone} (UTC " . ($offset > 0 ? '+' : '') . "{$offset})",
'offset' => $offset,
];
}
diff --git a/src/User/Migration/m000000_000001_create_user_table.php b/src/User/Migration/m000000_000001_create_user_table.php
index 7158d11..6479a9d 100644
--- a/src/User/Migration/m000000_000001_create_user_table.php
+++ b/src/User/Migration/m000000_000001_create_user_table.php
@@ -17,20 +17,23 @@ class m000000_000001_create_user_table extends Migration
{
public function up()
{
- $this->createTable('{{%user}}', [
- 'id' => $this->primaryKey(),
- 'username' => $this->string(255)->notNull(),
- 'email' => $this->string(255)->notNull(),
- 'password_hash' => $this->string(60)->notNull(),
- 'auth_key' => $this->string(32)->notNull(),
- 'unconfirmed_email' => $this->string(255),
- 'registration_ip' => $this->string(45),
- 'flags' => $this->integer()->notNull()->defaultValue('0'),
- 'confirmed_at' => $this->integer(),
- 'blocked_at' => $this->integer(),
- 'updated_at' => $this->integer()->notNull(),
- 'created_at' => $this->integer()->notNull(),
- ]);
+ $this->createTable(
+ '{{%user}}',
+ [
+ 'id' => $this->primaryKey(),
+ 'username' => $this->string(255)->notNull(),
+ 'email' => $this->string(255)->notNull(),
+ 'password_hash' => $this->string(60)->notNull(),
+ 'auth_key' => $this->string(32)->notNull(),
+ 'unconfirmed_email' => $this->string(255),
+ 'registration_ip' => $this->string(45),
+ 'flags' => $this->integer()->notNull()->defaultValue('0'),
+ 'confirmed_at' => $this->integer(),
+ 'blocked_at' => $this->integer(),
+ 'updated_at' => $this->integer()->notNull(),
+ 'created_at' => $this->integer()->notNull(),
+ ]
+ );
$this->createIndex('idx_user_username', '{{%user}}', 'username', true);
$this->createIndex('idx_user_email', '{{%user}}', 'email', true);
diff --git a/src/User/Model/AbstractAuthItem.php b/src/User/Model/AbstractAuthItem.php
index d3c56a6..04c197d 100644
--- a/src/User/Model/AbstractAuthItem.php
+++ b/src/User/Model/AbstractAuthItem.php
@@ -14,9 +14,9 @@ namespace Da\User\Model;
use Da\User\Traits\AuthManagerAwareTrait;
use Da\User\Validator\RbacItemsValidator;
use Da\User\Validator\RbacRuleValidator;
+use Yii;
use yii\base\Model;
use yii\rbac\Item;
-use Yii;
abstract class AbstractAuthItem extends Model
{
diff --git a/src/User/Model/Assignment.php b/src/User/Model/Assignment.php
index 43dd984..282499f 100644
--- a/src/User/Model/Assignment.php
+++ b/src/User/Model/Assignment.php
@@ -13,9 +13,9 @@ namespace Da\User\Model;
use Da\User\Traits\AuthManagerAwareTrait;
use Da\User\Validator\RbacItemsValidator;
+use Yii;
use yii\base\InvalidConfigException;
use yii\base\Model;
-use Yii;
class Assignment extends Model
{
diff --git a/src/User/Model/Profile.php b/src/User/Model/Profile.php
index 14ea347..6e1151b 100644
--- a/src/User/Model/Profile.php
+++ b/src/User/Model/Profile.php
@@ -16,11 +16,11 @@ use Da\User\Query\ProfileQuery;
use Da\User\Traits\ContainerAwareTrait;
use Da\User\Traits\ModuleAwareTrait;
use Da\User\Validator\TimeZoneValidator;
+use DateTime;
+use DateTimeZone;
+use Exception;
use Yii;
use yii\db\ActiveRecord;
-use Exception;
-use DateTimeZone;
-use DateTime;
/**
* @property int $user_id
diff --git a/src/User/Model/User.php b/src/User/Model/User.php
index f51dc4c..daf00e4 100644
--- a/src/User/Model/User.php
+++ b/src/User/Model/User.php
@@ -259,8 +259,11 @@ class User extends ActiveRecord implements IdentityInterface
{
if ($this->connectedAccounts == null) {
/** @var SocialNetworkAccount[] $accounts */
- $accounts = $this->hasMany($this->getClassMap()
- ->get(SocialNetworkAccount::class), ['user_id' => 'id'])
+ $accounts = $this->hasMany(
+ $this->getClassMap()
+ ->get(SocialNetworkAccount::class),
+ ['user_id' => 'id']
+ )
->all();
foreach ($accounts as $account) {
@@ -284,6 +287,6 @@ class User extends ActiveRecord implements IdentityInterface
*/
public static function findIdentityByAccessToken($token, $type = null)
{
- throw new NotSupportedException('Method "'.__CLASS__.'::'.__METHOD__.'" is not implemented.');
+ throw new NotSupportedException('Method "' . __CLASS__ . '::' . __METHOD__ . '" is not implemented.');
}
}
diff --git a/src/User/Module.php b/src/User/Module.php
index 9fc24e4..a0e4a24 100644
--- a/src/User/Module.php
+++ b/src/User/Module.php
@@ -12,7 +12,6 @@
namespace Da\User;
use Da\User\Contracts\MailChangeStrategyInterface;
-use Da\User\Service\MailService;
use yii\base\Module as BaseModule;
/**
diff --git a/src/User/Search/UserSearch.php b/src/User/Search/UserSearch.php
index 0754a8a..85c2b2d 100644
--- a/src/User/Search/UserSearch.php
+++ b/src/User/Search/UserSearch.php
@@ -43,7 +43,7 @@ class UserSearch extends Model
* UserSearch constructor.
*
* @param UserQuery $query
- * @param array $config
+ * @param array $config
*/
public function __construct(UserQuery $query, $config = [])
{
@@ -84,9 +84,11 @@ class UserSearch extends Model
{
$query = $this->query;
- $dataProvider = new ActiveDataProvider([
- 'query' => $query,
- ]);
+ $dataProvider = new ActiveDataProvider(
+ [
+ 'query' => $query,
+ ]
+ );
if (!($this->load($params) && $this->validate())) {
return $dataProvider;
diff --git a/src/User/Service/AuthItemEditionService.php b/src/User/Service/AuthItemEditionService.php
index 600e4bd..8e9fa9d 100644
--- a/src/User/Service/AuthItemEditionService.php
+++ b/src/User/Service/AuthItemEditionService.php
@@ -81,7 +81,6 @@ class AuthItemEditionService implements ServiceInterface
$childrenNames = array_keys($children);
if (is_array($this->model->children)) {
-
// remove those not linked anymore
foreach (array_diff($childrenNames, $this->model->children) as $item) {
if (!$this->getAuthManager()->removeChild($this->model->item, $children[$item])) {
diff --git a/src/User/Service/EmailChangeService.php b/src/User/Service/EmailChangeService.php
index b5c9c0c..0203144 100644
--- a/src/User/Service/EmailChangeService.php
+++ b/src/User/Service/EmailChangeService.php
@@ -41,45 +41,45 @@ class EmailChangeService implements ServiceInterface
Yii::$app->session->setFlash('danger', Yii::t('usuario', 'Your confirmation token is invalid or expired'));
return false;
- } else {
- $token->delete();
- if (empty($this->model->unconfirmed_email)) {
- Yii::$app->session->setFlash('danger', Yii::t('usuario', 'An error occurred processing your request'));
- } elseif ($this->userQuery->whereEmail($this->model->unconfirmed_email)->exists() === false) {
- if ($this->getModule()->emailChangeStrategy === MailChangeStrategyInterface::TYPE_SECURE) {
- if ($token->type === Token::TYPE_CONFIRM_NEW_EMAIL) {
- $this->model->flags |= User::NEW_EMAIL_CONFIRMED;
- Yii::$app->session->setFlash(
- 'success',
- Yii::t(
- 'usuario',
- 'Awesome, almost there. '.
- 'Now you need to click the confirmation link sent to your old email address.'
- )
- );
- } elseif ($token->type === Token::TYPE_CONFIRM_OLD_EMAIL) {
- $this->model->flags |= User::OLD_EMAIL_CONFIRMED;
- Yii::$app->session->setFlash(
- 'success',
- Yii::t(
- 'usuario',
- 'Awesome, almost there. '.
- 'Now you need to click the confirmation link sent to your new email address.'
- )
- );
- }
- }
- if ($this->getModule()->emailChangeStrategy === MailChangeStrategyInterface::TYPE_DEFAULT
- || ($this->model->flags & User::NEW_EMAIL_CONFIRMED & $this->model->flags & User::OLD_EMAIL_CONFIRMED)
- ) {
- $this->model->email = $this->model->unconfirmed_email;
- $this->model->unconfirmed_email = null;
- Yii::$app->session->setFlash('success', Yii::t('usuario', 'Your email address has been changed'));
- }
-
- return $this->model->save(false);
- }
}
+ $token->delete();
+ if (empty($this->model->unconfirmed_email)) {
+ Yii::$app->session->setFlash('danger', Yii::t('usuario', 'An error occurred processing your request'));
+ } elseif ($this->userQuery->whereEmail($this->model->unconfirmed_email)->exists() === false) {
+ if ($this->getModule()->emailChangeStrategy === MailChangeStrategyInterface::TYPE_SECURE) {
+ if ($token->type === Token::TYPE_CONFIRM_NEW_EMAIL) {
+ $this->model->flags |= User::NEW_EMAIL_CONFIRMED;
+ Yii::$app->session->setFlash(
+ 'success',
+ Yii::t(
+ 'usuario',
+ 'Awesome, almost there. ' .
+ 'Now you need to click the confirmation link sent to your old email address.'
+ )
+ );
+ } elseif ($token->type === Token::TYPE_CONFIRM_OLD_EMAIL) {
+ $this->model->flags |= User::OLD_EMAIL_CONFIRMED;
+ Yii::$app->session->setFlash(
+ 'success',
+ Yii::t(
+ 'usuario',
+ 'Awesome, almost there. ' .
+ 'Now you need to click the confirmation link sent to your new email address.'
+ )
+ );
+ }
+ }
+ if ($this->getModule()->emailChangeStrategy === MailChangeStrategyInterface::TYPE_DEFAULT
+ || ($this->model->flags & User::NEW_EMAIL_CONFIRMED & $this->model->flags & User::OLD_EMAIL_CONFIRMED)
+ ) {
+ $this->model->email = $this->model->unconfirmed_email;
+ $this->model->unconfirmed_email = null;
+ Yii::$app->session->setFlash('success', Yii::t('usuario', 'Your email address has been changed'));
+ }
+
+ return $this->model->save(false);
+ }
+
return false;
}
diff --git a/src/User/Service/MailService.php b/src/User/Service/MailService.php
index 1bff5d7..fc80cb8 100644
--- a/src/User/Service/MailService.php
+++ b/src/User/Service/MailService.php
@@ -20,11 +20,11 @@ class MailService implements ServiceInterface
/**
* MailService constructor.
*
- * @param string $from
- * @param string $to
- * @param string $subject
- * @param string $view
- * @param array $params
+ * @param string $from
+ * @param string $to
+ * @param string $subject
+ * @param string $view
+ * @param array $params
* @param MailerInterface $mailer
*/
public function __construct($from, $to, $subject, $view, array $params, BaseMailer $mailer)
diff --git a/src/User/Service/ResetPasswordService.php b/src/User/Service/ResetPasswordService.php
index 3fed1f7..a54d70d 100644
--- a/src/User/Service/ResetPasswordService.php
+++ b/src/User/Service/ResetPasswordService.php
@@ -30,7 +30,7 @@ class ResetPasswordService implements ServiceInterface
public function run()
{
- return $this->model && (bool) $this->model->updateAttributes(
+ return $this->model && (bool)$this->model->updateAttributes(
[
'password_hash' => $this->securityHelper->generatePasswordHash($this->password),
]
diff --git a/src/User/Service/SocialNetworkAccountConnectService.php b/src/User/Service/SocialNetworkAccountConnectService.php
index aa4c2fa..1d2747d 100644
--- a/src/User/Service/SocialNetworkAccountConnectService.php
+++ b/src/User/Service/SocialNetworkAccountConnectService.php
@@ -32,8 +32,8 @@ class SocialNetworkAccountConnectService implements ServiceInterface
/**
* SocialNetworkAccountUserLinkService constructor.
*
- * @param SecurityController $controller
- * @param AuthClientInterface $client
+ * @param SecurityController $controller
+ * @param AuthClientInterface $client
* @param SocialNetworkAccountQuery $socialNetworkAccountQuery
*/
public function __construct(
@@ -62,12 +62,12 @@ class SocialNetworkAccountConnectService implements ServiceInterface
$this->controller->trigger(SocialNetworkAuthEvent::EVENT_AFTER_CONNECT, $event);
return true;
- } else {
- Yii::$app->session->setFlash(
- 'danger',
- Yii::t('usuario', 'This account has already been connected to another user')
- );
}
+ Yii::$app->session->setFlash(
+ 'danger',
+ Yii::t('usuario', 'This account has already been connected to another user')
+ );
+
return false;
}
diff --git a/src/User/Service/UserBlockService.php b/src/User/Service/UserBlockService.php
index 9414add..51f7e18 100644
--- a/src/User/Service/UserBlockService.php
+++ b/src/User/Service/UserBlockService.php
@@ -40,11 +40,11 @@ class UserBlockService implements ServiceInterface
{
if ($this->model->getIsBlocked()) {
$this->controller->trigger(UserEvent::EVENT_BEFORE_UNBLOCK, $this->event);
- $result = (bool) $this->model->updateAttributes(['blocked_at' => null]);
+ $result = (bool)$this->model->updateAttributes(['blocked_at' => null]);
$this->controller->trigger(UserEvent::EVENT_AFTER_UNBLOCK, $this->event);
} else {
$this->controller->trigger(UserEvent::EVENT_BEFORE_BLOCK, $this->event);
- $result = (bool) $this->model->updateAttributes(
+ $result = (bool)$this->model->updateAttributes(
['blocked_at' => time(), 'auth_key' => $this->securityHelper->generateRandomString()]
);
$this->controller->trigger(UserEvent::EVENT_AFTER_BLOCK, $this->event);
diff --git a/src/User/Service/UserConfirmationService.php b/src/User/Service/UserConfirmationService.php
index 8580040..f0715b8 100644
--- a/src/User/Service/UserConfirmationService.php
+++ b/src/User/Service/UserConfirmationService.php
@@ -27,7 +27,7 @@ class UserConfirmationService implements ServiceInterface
public function run()
{
$this->model->trigger(UserEvent::EVENT_BEFORE_CONFIRMATION);
- if ((bool) $this->model->updateAttributes(['confirmed_at' => time()])) {
+ if ((bool)$this->model->updateAttributes(['confirmed_at' => time()])) {
$this->model->trigger(UserEvent::EVENT_AFTER_CONFIRMATION);
return true;
diff --git a/src/User/Service/UserCreateService.php b/src/User/Service/UserCreateService.php
index 162023a..5a1f7cb 100644
--- a/src/User/Service/UserCreateService.php
+++ b/src/User/Service/UserCreateService.php
@@ -15,8 +15,8 @@ use Da\User\Contracts\ServiceInterface;
use Da\User\Event\UserEvent;
use Da\User\Helper\SecurityHelper;
use Da\User\Model\User;
-use yii\base\InvalidCallException;
use Exception;
+use yii\base\InvalidCallException;
use yii\log\Logger;
class UserCreateService implements ServiceInterface
diff --git a/src/User/Strategy/SecureEmailChangeStrategy.php b/src/User/Strategy/SecureEmailChangeStrategy.php
index b9abf54..1a52a35 100644
--- a/src/User/Strategy/SecureEmailChangeStrategy.php
+++ b/src/User/Strategy/SecureEmailChangeStrategy.php
@@ -47,7 +47,7 @@ class SecureEmailChangeStrategy implements MailChangeStrategyInterface
'info',
Yii::t(
'usuario',
- 'We have sent confirmation links to both old and new email addresses. '.
+ 'We have sent confirmation links to both old and new email addresses. ' .
'You must click both links to complete your request.'
)
);
diff --git a/src/User/Traits/ContainerAwareTrait.php b/src/User/Traits/ContainerAwareTrait.php
index 6648128..4a0d8e8 100644
--- a/src/User/Traits/ContainerAwareTrait.php
+++ b/src/User/Traits/ContainerAwareTrait.php
@@ -34,10 +34,10 @@ trait ContainerAwareTrait
/**
* Gets a class from the container.
*
- * @param string $class he class name or an alias name (e.g. `foo`) that was previously registered via [[set()]]
- * or [[setSingleton()]]
- * @param array $params constructor parameters
- * @param array $config attributes
+ * @param string $class he class name or an alias name (e.g. `foo`) that was previously registered via [[set()]]
+ * or [[setSingleton()]]
+ * @param array $params constructor parameters
+ * @param array $config attributes
*
* @return object
*/
@@ -47,7 +47,7 @@ trait ContainerAwareTrait
}
/**
- * @return \Da\User\Helper\AuthHelper
+ * @return \Da\User\Helper\AuthHelper|object
*/
public function getAuth()
{
@@ -55,7 +55,7 @@ trait ContainerAwareTrait
}
/**
- * @return \Da\User\Helper\ClassMapHelper
+ * @return \Da\User\Helper\ClassMapHelper|object
*/
public function getClassMap()
{
diff --git a/src/User/Validator/AjaxRequestModelValidator.php b/src/User/Validator/AjaxRequestModelValidator.php
index 2a8f32f..f2f1224 100644
--- a/src/User/Validator/AjaxRequestModelValidator.php
+++ b/src/User/Validator/AjaxRequestModelValidator.php
@@ -12,8 +12,8 @@
namespace Da\User\Validator;
use Da\User\Contracts\ValidatorInterface;
-use yii\base\Model;
use Yii;
+use yii\base\Model;
use yii\bootstrap\ActiveForm;
use yii\web\Response;
diff --git a/src/User/Validator/RbacRuleValidator.php b/src/User/Validator/RbacRuleValidator.php
index be4fbdd..96bd778 100644
--- a/src/User/Validator/RbacRuleValidator.php
+++ b/src/User/Validator/RbacRuleValidator.php
@@ -11,10 +11,10 @@
namespace Da\User\Validator;
-use ReflectionClass;
use Exception;
-use yii\validators\Validator;
+use ReflectionClass;
use Yii;
+use yii\validators\Validator;
class RbacRuleValidator extends Validator
{
diff --git a/src/User/Widget/AssignmentsWidget.php b/src/User/Widget/AssignmentsWidget.php
index 89dda49..646ae81 100644
--- a/src/User/Widget/AssignmentsWidget.php
+++ b/src/User/Widget/AssignmentsWidget.php
@@ -42,7 +42,7 @@ class AssignmentsWidget extends Widget
{
parent::init();
if ($this->userId === null) {
- throw new InvalidConfigException(__CLASS__.'::$userId is required');
+ throw new InvalidConfigException(__CLASS__ . '::$userId is required');
}
}
@@ -57,10 +57,13 @@ class AssignmentsWidget extends Widget
$this->make(UpdateAuthAssignmentsService::class, [$model])->run();
}
- return $this->render('/widgets/assignments/form', [
- 'model' => $model,
- 'availableItems' => $this->getAvailableItems(),
- ]);
+ return $this->render(
+ '/widgets/assignments/form',
+ [
+ 'model' => $model,
+ 'availableItems' => $this->getAvailableItems(),
+ ]
+ );
}
/**
@@ -70,10 +73,14 @@ class AssignmentsWidget extends Widget
*/
protected function getAvailableItems()
{
- return ArrayHelper::map($this->getAuthManager()->getItems(), 'name', function ($item) {
- return empty($item->description)
- ? $item->name
- : $item->name.' ('.$item->description.')';
- });
+ return ArrayHelper::map(
+ $this->getAuthManager()->getItems(),
+ 'name',
+ function ($item) {
+ return empty($item->description)
+ ? $item->name
+ : $item->name . ' (' . $item->description . ')';
+ }
+ );
}
}
diff --git a/src/User/Widget/ConnectWidget.php b/src/User/Widget/ConnectWidget.php
index d36f093..3910c48 100644
--- a/src/User/Widget/ConnectWidget.php
+++ b/src/User/Widget/ConnectWidget.php
@@ -32,7 +32,7 @@ class ConnectWidget extends AuthChoice
{
AuthChoiceAsset::register(Yii::$app->view);
if ($this->popupMode) {
- Yii::$app->view->registerJs("\$('#".$this->getId()."').authchoice();");
+ Yii::$app->view->registerJs("\$('#" . $this->getId() . "').authchoice();");
}
$this->options['id'] = $this->getId();
echo Html::beginTag('div', $this->options);
@@ -45,9 +45,9 @@ class ConnectWidget extends AuthChoice
{
if ($this->isConnected($provider)) {
return Url::to(['/user/settings/disconnect', 'id' => $this->accounts[$provider->getId()]->id]);
- } else {
- return parent::createClientUrl($provider);
}
+
+ return parent::createClientUrl($provider);
}
/**
diff --git a/src/User/resources/views/admin/_user.php b/src/User/resources/views/admin/_user.php
index 4dbf4d9..dca3963 100644
--- a/src/User/resources/views/admin/_user.php
+++ b/src/User/resources/views/admin/_user.php
@@ -11,7 +11,7 @@
/**
* @var yii\widgets\ActiveForm
- * @var \Da\User\Model\User $user
+ * @var \Da\User\Model\User $user
*/
?>
diff --git a/src/User/resources/views/admin/create.php b/src/User/resources/views/admin/create.php
index 60505b0..8f92cd0 100644
--- a/src/User/resources/views/admin/create.php
+++ b/src/User/resources/views/admin/create.php
@@ -78,7 +78,10 @@ $this->params['breadcrumbs'][] = $this->title;
= Yii::t('usuario', 'Credentials will be sent to the user by email') ?>.
- = Yii::t('usuario', 'A password will be generated automatically if not provided') ?>.
+ = Yii::t(
+ 'usuario',
+ 'A password will be generated automatically if not provided'
+ ) ?>.
params['breadcrumbs'][] = $this->title;
'attribute' => 'registration_ip',
'value' => function ($model) {
return $model->registration_ip == null
- ? '
'.Yii::t('usuario', '(not set)').' '
+ ? '
' . Yii::t('usuario', '(not set)') . ' '
: $model->registration_ip;
},
'format' => 'html',
@@ -50,9 +50,9 @@ $this->params['breadcrumbs'][] = $this->title;
'value' => function ($model) {
if (extension_loaded('intl')) {
return Yii::t('usuario', '{0, date, MMMM dd, YYYY HH:mm}', [$model->created_at]);
- } else {
- return date('Y-m-d G:i:s', $model->created_at);
}
+
+ return date('Y-m-d G:i:s', $model->created_at);
},
],
[
@@ -60,19 +60,19 @@ $this->params['breadcrumbs'][] = $this->title;
'value' => function ($model) {
if ($model->isConfirmed) {
return '
- ' .Yii::t('usuario', 'Confirmed').'
+ ' . Yii::t('usuario', 'Confirmed') . '
';
- } else {
- return Html::a(
- Yii::t('usuario', 'Confirm'),
- ['confirm', 'id' => $model->id],
- [
- 'class' => 'btn btn-xs btn-success btn-block',
- 'data-method' => 'post',
- 'data-confirm' => Yii::t('usuario', 'Are you sure you want to confirm this user?'),
- ]
- );
}
+
+ return Html::a(
+ Yii::t('usuario', 'Confirm'),
+ ['confirm', 'id' => $model->id],
+ [
+ 'class' => 'btn btn-xs btn-success btn-block',
+ 'data-method' => 'post',
+ 'data-confirm' => Yii::t('usuario', 'Are you sure you want to confirm this user?'),
+ ]
+ );
},
'format' => 'raw',
'visible' => Yii::$app->getModule('user')->enableEmailConfirmation,
@@ -90,17 +90,17 @@ $this->params['breadcrumbs'][] = $this->title;
'data-confirm' => Yii::t('usuario', 'Are you sure you want to unblock this user?'),
]
);
- } else {
- return Html::a(
- Yii::t('usuario', 'Block'),
- ['block', 'id' => $model->id],
- [
- 'class' => 'btn btn-xs btn-danger btn-block',
- 'data-method' => 'post',
- 'data-confirm' => Yii::t('usuario', 'Are you sure you want to block this user?'),
- ]
- );
}
+
+ return Html::a(
+ Yii::t('usuario', 'Block'),
+ ['block', 'id' => $model->id],
+ [
+ 'class' => 'btn btn-xs btn-danger btn-block',
+ 'data-method' => 'post',
+ 'data-confirm' => Yii::t('usuario', 'Are you sure you want to block this user?'),
+ ]
+ );
},
'format' => 'raw',
],
diff --git a/src/User/resources/views/admin/update.php b/src/User/resources/views/admin/update.php
index 72cef44..c08b809 100644
--- a/src/User/resources/views/admin/update.php
+++ b/src/User/resources/views/admin/update.php
@@ -11,8 +11,8 @@
use Da\User\Model\User;
use yii\bootstrap\Nav;
-use yii\web\View;
use yii\helpers\Html;
+use yii\web\View;
/*
* @var View $this
diff --git a/src/User/resources/views/mail/layouts/html.php b/src/User/resources/views/mail/layouts/html.php
index 92d359c..16f2f1c 100644
--- a/src/User/resources/views/mail/layouts/html.php
+++ b/src/User/resources/views/mail/layouts/html.php
@@ -15,20 +15,27 @@
*/
?>
beginPage() ?>
-
-
+
+
-
-
+
+
head() ?>
-
-
+
+
-
-
-
+
+
+
beginBody() ?>
@@ -42,21 +49,28 @@
-