mirror of
https://gitlab.linphone.org/BC/public/flexisip-account-manager.git
synced 2026-01-17 10:08:05 +00:00
parent
a0dd7e17ce
commit
10d601b95c
19 changed files with 654 additions and 109 deletions
|
|
@ -41,6 +41,7 @@ centos7-rpm-test:
|
|||
- yum -y localinstall rpmbuild/x86_64/*.rpm
|
||||
- cd /opt/belledonne-communications/share/flexisip-account-manager/flexiapi
|
||||
- scl enable rh-php73 "vendor/bin/phpcs"
|
||||
- scl enable rh-php73 "vendor/bin/phpmd . ansi phpmd.xml"
|
||||
- scl enable rh-php73 "php artisan key:generate"
|
||||
- scl enable rh-php73 "vendor/bin/phpunit --log-junit $CI_PROJECT_DIR/flexiapi_phpunit.log"
|
||||
artifacts:
|
||||
|
|
|
|||
1
Makefile
1
Makefile
|
|
@ -25,6 +25,7 @@ package-common:
|
|||
cp flexiapi/artisan $(OUTPUT_DIR)/flexisip-account-manager/flexiapi/
|
||||
cp flexiapi/phpunit.xml $(OUTPUT_DIR)/flexisip-account-manager/flexiapi/
|
||||
cp flexiapi/phpcs.xml $(OUTPUT_DIR)/flexisip-account-manager/flexiapi/
|
||||
cp flexiapi/phpmd.xml $(OUTPUT_DIR)/flexisip-account-manager/flexiapi/
|
||||
|
||||
# General
|
||||
cp README.md $(OUTPUT_DIR)/flexisip-account-manager/
|
||||
|
|
|
|||
|
|
@ -58,9 +58,11 @@ class Account extends Authenticatable
|
|||
if (!$user->admin || !config('app.admins_manage_multi_domains')) {
|
||||
$builder->where('domain', config('app.sip_domain'));
|
||||
}
|
||||
} else {
|
||||
$builder->where('domain', config('app.sip_domain'));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
$builder->where('domain', config('app.sip_domain'));
|
||||
});
|
||||
|
||||
/**
|
||||
|
|
@ -274,7 +276,7 @@ class Account extends Authenticatable
|
|||
'<',
|
||||
Carbon::now()->subMinutes(AuthToken::$expirationMinutes)
|
||||
)->orWhere('account_id', $this->id)
|
||||
->delete();
|
||||
->delete();
|
||||
|
||||
$authToken = new AuthToken;
|
||||
$authToken->account_id = $this->id;
|
||||
|
|
@ -314,13 +316,10 @@ VERSION:4.0
|
|||
KIND:individual
|
||||
IMPP:sip:' . $this->getIdentifierAttribute();
|
||||
|
||||
if (!empty($this->attributes['display_name'])) {
|
||||
$vcard .= '
|
||||
FN:' . $this->attributes['display_name'];
|
||||
} else {
|
||||
$vcard .= '
|
||||
FN:' . $this->getIdentifierAttribute();
|
||||
}
|
||||
$vcard .= '
|
||||
FN:' . !empty($this->attributes['display_name'])
|
||||
? $this->attributes['display_name']
|
||||
: $this->getIdentifierAttribute();
|
||||
|
||||
if ($this->dtmf_protocol) {
|
||||
$vcard .= '
|
||||
|
|
|
|||
|
|
@ -44,8 +44,11 @@ class ClearOldAccountsTombstones extends Command
|
|||
if ($this->option('apply')) {
|
||||
$this->info($tombstones->count() . ' tombstones deleted');
|
||||
$tombstones->delete();
|
||||
} else {
|
||||
$this->info($tombstones->count() . ' tombstones to delete');
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
$this->info($tombstones->count() . ' tombstones to delete');
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -69,9 +69,7 @@ class ImportDatabase extends Command
|
|||
'prefix' => '',
|
||||
], 'default');
|
||||
|
||||
if (!$this->argument('sqlite-file-path')) {
|
||||
$this->confirm('No SQLite database file was specified : Do you wish to continue?');
|
||||
} else {
|
||||
if ($this->argument('sqlite-file-path')) {
|
||||
$capsule->addConnection([
|
||||
'driver' => 'sqlite',
|
||||
'database' => $this->argument('sqlite-file-path'),
|
||||
|
|
@ -80,6 +78,10 @@ class ImportDatabase extends Command
|
|||
|
||||
$capsule->setAsGlobal();
|
||||
|
||||
if (!$this->argument('sqlite-file-path')) {
|
||||
$this->confirm('No SQLite database file was specified : Do you wish to continue?');
|
||||
}
|
||||
|
||||
// Ensure that the target database is empty
|
||||
if (Account::count() > 0) {
|
||||
$this->error('An empty database is required to run the migration');
|
||||
|
|
|
|||
|
|
@ -41,17 +41,18 @@ class ImportExternalAccounts extends Command
|
|||
foreach ($json as $account) {
|
||||
if ($existingUsernames->contains($account->username)) {
|
||||
$existingCounter++;
|
||||
} else {
|
||||
$externalAccount = new ExternalAccount;
|
||||
$externalAccount->username = $account->username;
|
||||
$externalAccount->domain = $account->domain;
|
||||
$externalAccount->group = $account->group;
|
||||
$externalAccount->password = $account->password;
|
||||
$externalAccount->algorithm = $account->algorithm;
|
||||
|
||||
$externalAccounts->push($externalAccount->toArray());
|
||||
$importedCounter++;
|
||||
continue;
|
||||
}
|
||||
|
||||
$externalAccount = new ExternalAccount;
|
||||
$externalAccount->username = $account->username;
|
||||
$externalAccount->domain = $account->domain;
|
||||
$externalAccount->group = $account->group;
|
||||
$externalAccount->password = $account->password;
|
||||
$externalAccount->algorithm = $account->algorithm;
|
||||
|
||||
$externalAccounts->push($externalAccount->toArray());
|
||||
$importedCounter++;
|
||||
}
|
||||
|
||||
ExternalAccount::insert($externalAccounts->toArray());
|
||||
|
|
|
|||
|
|
@ -52,8 +52,11 @@ class RemoveUnconfirmedAccounts extends Command
|
|||
$this->info($count . ' accounts in deletion…');
|
||||
$accounts->delete();
|
||||
$this->info($count . ' accounts deleted');
|
||||
} else {
|
||||
$this->info($count . ' accounts to delete');
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
$this->info($count . ' accounts to delete');
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,16 +38,16 @@ class EmailController extends Controller
|
|||
|
||||
public function requestUpdate(Request $request)
|
||||
{
|
||||
if ($request->user()->email) {
|
||||
$request->validate([
|
||||
'email_current' => ['required', Rule::in([$request->user()->email])],
|
||||
'email' => 'required|different:email_current|confirmed|email',
|
||||
]);
|
||||
} else {
|
||||
$request->validate([
|
||||
'email' => 'required|confirmed|email',
|
||||
]);
|
||||
}
|
||||
$request->validate(
|
||||
$request->user()->email
|
||||
? [
|
||||
'email_current' => ['required', Rule::in([$request->user()->email])],
|
||||
'email' => 'required|different:email_current|confirmed|email',
|
||||
]
|
||||
: [
|
||||
'email' => 'required|confirmed|email',
|
||||
]
|
||||
);
|
||||
|
||||
$request->user()->requestEmailUpdate($request->get('email'));
|
||||
|
||||
|
|
|
|||
|
|
@ -52,13 +52,15 @@ class PasswordController extends Controller
|
|||
if ($account->passwords()->count() > 0) {
|
||||
Log::channel('events')->info('Web: Password changed', ['id' => $account->identifier]);
|
||||
$request->session()->flash('success', 'Password successfully changed');
|
||||
} else {
|
||||
Log::channel('events')->info('Web: Password set for the first time', ['id' => $account->identifier]);
|
||||
$request->session()->flash('success', 'Password successfully set. Your SIP account creation process is now finished.');
|
||||
|
||||
if (!empty($account->email)) {
|
||||
Mail::to($account)->send(new ConfirmedRegistration($account));
|
||||
}
|
||||
return redirect()->route('account.panel');
|
||||
}
|
||||
|
||||
Log::channel('events')->info('Web: Password set for the first time', ['id' => $account->identifier]);
|
||||
$request->session()->flash('success', 'Password successfully set. Your SIP account creation process is now finished.');
|
||||
|
||||
if (!empty($account->email)) {
|
||||
Mail::to($account)->send(new ConfirmedRegistration($account));
|
||||
}
|
||||
|
||||
return redirect()->route('account.panel');
|
||||
|
|
|
|||
|
|
@ -65,8 +65,9 @@ class AccountCreationTokenController extends Controller
|
|||
Log::channel('events')->info('API: Token sent', ['token' => $token->token]);
|
||||
|
||||
$token->save();
|
||||
} else {
|
||||
abort(503, "Token not sent");
|
||||
return;
|
||||
}
|
||||
|
||||
abort(503, "Token not sent");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,12 +58,12 @@ class PasswordController extends Controller
|
|||
}
|
||||
|
||||
return response()->json(['errors' => ['old_password' => 'Incorrect old password']], 422);
|
||||
} else {
|
||||
$account->updatePassword($request->get('password'), $algorithm);
|
||||
}
|
||||
|
||||
if (!empty($account->email)) {
|
||||
Mail::to($account)->send(new ConfirmedRegistration($account));
|
||||
}
|
||||
$account->updatePassword($request->get('password'), $algorithm);
|
||||
|
||||
if (!empty($account->email)) {
|
||||
Mail::to($account)->send(new ConfirmedRegistration($account));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
hop
|
||||
|
||||
use Illuminate\Auth\Middleware\Authenticate as Middleware;
|
||||
|
||||
|
|
|
|||
|
|
@ -128,18 +128,18 @@ class AuthenticateDigestOrKey
|
|||
$hash = self::ALGORITHMS[$auth['algorithm']];
|
||||
|
||||
// Hashing and checking
|
||||
$A1 = $password->algorithm == 'CLRTXT'
|
||||
$a1 = $password->algorithm == 'CLRTXT'
|
||||
? hash($hash, $account->username.':'.$resolvedRealm.':'.$password->password)
|
||||
: $password->password; // username:realm/domain:password
|
||||
$A2 = hash($hash, $request->method().':'.$auth['uri']);
|
||||
$a2 = hash($hash, $request->method().':'.$auth['uri']);
|
||||
|
||||
$validResponse = hash($hash,
|
||||
$A1.
|
||||
$a1.
|
||||
':'.$auth['nonce'].
|
||||
':'.$auth['nc'].
|
||||
':'.$auth['cnonce'].
|
||||
':'.$auth['qop'].
|
||||
':'.$A2
|
||||
':'.$a2
|
||||
);
|
||||
|
||||
// Auth response don't match
|
||||
|
|
|
|||
|
|
@ -28,7 +28,8 @@
|
|||
"mockery/mockery": "^1.4",
|
||||
"nunomaduro/collision": "^5.0",
|
||||
"phpunit/phpunit": "^9.0",
|
||||
"squizlabs/php_codesniffer": "^3.7"
|
||||
"squizlabs/php_codesniffer": "^3.7",
|
||||
"phpmd/phpmd": "^2.13"
|
||||
},
|
||||
"config": {
|
||||
"platform": {
|
||||
|
|
|
|||
601
flexiapi/composer.lock
generated
601
flexiapi/composer.lock
generated
|
|
@ -4,7 +4,7 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "5491f03249bb73afd568b82584b43311",
|
||||
"content-hash": "6be6fea08638d583a0607ed9582e56d5",
|
||||
"packages": [
|
||||
{
|
||||
"name": "anhskohbo/no-captcha",
|
||||
|
|
@ -738,16 +738,16 @@
|
|||
},
|
||||
{
|
||||
"name": "dragonmantank/cron-expression",
|
||||
"version": "v3.3.1",
|
||||
"version": "v3.3.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/dragonmantank/cron-expression.git",
|
||||
"reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa"
|
||||
"reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/be85b3f05b46c39bbc0d95f6c071ddff669510fa",
|
||||
"reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa",
|
||||
"url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/782ca5968ab8b954773518e9e49a6f892a34b2a8",
|
||||
"reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -787,7 +787,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/dragonmantank/cron-expression/issues",
|
||||
"source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.1"
|
||||
"source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.2"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -795,7 +795,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-01-18T15:43:28+00:00"
|
||||
"time": "2022-09-10T18:51:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "egulias/email-validator",
|
||||
|
|
@ -1638,16 +1638,16 @@
|
|||
},
|
||||
{
|
||||
"name": "laravel/serializable-closure",
|
||||
"version": "v1.2.1",
|
||||
"version": "v1.2.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/serializable-closure.git",
|
||||
"reference": "d78fd36ba031a1a695ea5a406f29996948d7011b"
|
||||
"reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/serializable-closure/zipball/d78fd36ba031a1a695ea5a406f29996948d7011b",
|
||||
"reference": "d78fd36ba031a1a695ea5a406f29996948d7011b",
|
||||
"url": "https://api.github.com/repos/laravel/serializable-closure/zipball/47afb7fae28ed29057fdca37e16a84f90cc62fae",
|
||||
"reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -1694,7 +1694,7 @@
|
|||
"issues": "https://github.com/laravel/serializable-closure/issues",
|
||||
"source": "https://github.com/laravel/serializable-closure"
|
||||
},
|
||||
"time": "2022-08-26T15:25:27+00:00"
|
||||
"time": "2022-09-08T13:45:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/tinker",
|
||||
|
|
@ -3256,16 +3256,16 @@
|
|||
},
|
||||
{
|
||||
"name": "react/dns",
|
||||
"version": "v1.9.0",
|
||||
"version": "v1.10.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/dns.git",
|
||||
"reference": "6d38296756fa644e6cb1bfe95eff0f9a4ed6edcb"
|
||||
"reference": "a5427e7dfa47713e438016905605819d101f238c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/reactphp/dns/zipball/6d38296756fa644e6cb1bfe95eff0f9a4ed6edcb",
|
||||
"reference": "6d38296756fa644e6cb1bfe95eff0f9a4ed6edcb",
|
||||
"url": "https://api.github.com/repos/reactphp/dns/zipball/a5427e7dfa47713e438016905605819d101f238c",
|
||||
"reference": "a5427e7dfa47713e438016905605819d101f238c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -3273,11 +3273,11 @@
|
|||
"react/cache": "^1.0 || ^0.6 || ^0.5",
|
||||
"react/event-loop": "^1.2",
|
||||
"react/promise": "^3.0 || ^2.7 || ^1.2.1",
|
||||
"react/promise-timer": "^1.8"
|
||||
"react/promise-timer": "^1.9"
|
||||
},
|
||||
"require-dev": {
|
||||
"clue/block-react": "^1.2",
|
||||
"phpunit/phpunit": "^9.3 || ^4.8.35"
|
||||
"phpunit/phpunit": "^9.3 || ^4.8.35",
|
||||
"react/async": "^4 || ^3 || ^2"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
|
|
@ -3320,7 +3320,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/reactphp/dns/issues",
|
||||
"source": "https://github.com/reactphp/dns/tree/v1.9.0"
|
||||
"source": "https://github.com/reactphp/dns/tree/v1.10.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3332,7 +3332,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2021-12-20T08:46:54+00:00"
|
||||
"time": "2022-09-08T12:22:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "react/event-loop",
|
||||
|
|
@ -6142,16 +6142,16 @@
|
|||
},
|
||||
{
|
||||
"name": "tijsverkoyen/css-to-inline-styles",
|
||||
"version": "2.2.4",
|
||||
"version": "2.2.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/tijsverkoyen/CssToInlineStyles.git",
|
||||
"reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c"
|
||||
"reference": "4348a3a06651827a27d989ad1d13efec6bb49b19"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/da444caae6aca7a19c0c140f68c6182e337d5b1c",
|
||||
"reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c",
|
||||
"url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/4348a3a06651827a27d989ad1d13efec6bb49b19",
|
||||
"reference": "4348a3a06651827a27d989ad1d13efec6bb49b19",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -6189,9 +6189,9 @@
|
|||
"homepage": "https://github.com/tijsverkoyen/CssToInlineStyles",
|
||||
"support": {
|
||||
"issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues",
|
||||
"source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.4"
|
||||
"source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.5"
|
||||
},
|
||||
"time": "2021-12-08T09:12:39+00:00"
|
||||
"time": "2022-09-12T13:28:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "vlucas/phpdotenv",
|
||||
|
|
@ -6491,6 +6491,143 @@
|
|||
],
|
||||
"time": "2022-07-11T09:26:42+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/pcre",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/pcre.git",
|
||||
"reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/pcre/zipball/c8e9d27cfc5ed22643c19c160455b473ffd8aabe",
|
||||
"reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.2 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^1.3",
|
||||
"phpstan/phpstan-strict-rules": "^1.1",
|
||||
"symfony/phpunit-bridge": "^5"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "2.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Composer\\Pcre\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Jordi Boggiano",
|
||||
"email": "j.boggiano@seld.be",
|
||||
"homepage": "http://seld.be"
|
||||
}
|
||||
],
|
||||
"description": "PCRE wrapping library that offers type-safe preg_* replacements.",
|
||||
"keywords": [
|
||||
"PCRE",
|
||||
"preg",
|
||||
"regex",
|
||||
"regular expression"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/composer/pcre/issues",
|
||||
"source": "https://github.com/composer/pcre/tree/2.0.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://packagist.com",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/composer",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/composer/composer",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-25T20:05:29+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/xdebug-handler",
|
||||
"version": "3.0.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/xdebug-handler.git",
|
||||
"reference": "ced299686f41dce890debac69273b47ffe98a40c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c",
|
||||
"reference": "ced299686f41dce890debac69273b47ffe98a40c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer/pcre": "^1 || ^2 || ^3",
|
||||
"php": "^7.2.5 || ^8.0",
|
||||
"psr/log": "^1 || ^2 || ^3"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^1.0",
|
||||
"phpstan/phpstan-strict-rules": "^1.1",
|
||||
"symfony/phpunit-bridge": "^6.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Composer\\XdebugHandler\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "John Stevenson",
|
||||
"email": "john-stevenson@blueyonder.co.uk"
|
||||
}
|
||||
],
|
||||
"description": "Restarts a process without Xdebug.",
|
||||
"keywords": [
|
||||
"Xdebug",
|
||||
"performance"
|
||||
],
|
||||
"support": {
|
||||
"irc": "irc://irc.freenode.org/composer",
|
||||
"issues": "https://github.com/composer/xdebug-handler/issues",
|
||||
"source": "https://github.com/composer/xdebug-handler/tree/3.0.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://packagist.com",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/composer",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/composer/composer",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-25T21:32:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/instantiator",
|
||||
"version": "1.4.1",
|
||||
|
|
@ -7218,6 +7355,63 @@
|
|||
],
|
||||
"time": "2022-01-10T16:22:52+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pdepend/pdepend",
|
||||
"version": "2.12.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/pdepend/pdepend.git",
|
||||
"reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/pdepend/pdepend/zipball/7a892d56ceafd804b4a2ecc85184640937ce9e84",
|
||||
"reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.7",
|
||||
"symfony/config": "^2.3.0|^3|^4|^5|^6.0",
|
||||
"symfony/dependency-injection": "^2.3.0|^3|^4|^5|^6.0",
|
||||
"symfony/filesystem": "^2.3.0|^3|^4|^5|^6.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"easy-doc/easy-doc": "0.0.0|^1.2.3",
|
||||
"gregwar/rst": "^1.0",
|
||||
"phpunit/phpunit": "^4.8.36|^5.7.27",
|
||||
"squizlabs/php_codesniffer": "^2.0.0"
|
||||
},
|
||||
"bin": [
|
||||
"src/bin/pdepend"
|
||||
],
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"PDepend\\": "src/main/php/PDepend"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"description": "Official version of pdepend to be handled with Composer",
|
||||
"support": {
|
||||
"issues": "https://github.com/pdepend/pdepend/issues",
|
||||
"source": "https://github.com/pdepend/pdepend/tree/2.12.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/pdepend/pdepend",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-09-08T19:30:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phar-io/manifest",
|
||||
"version": "2.0.3",
|
||||
|
|
@ -7329,6 +7523,89 @@
|
|||
},
|
||||
"time": "2022-02-21T01:04:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpmd/phpmd",
|
||||
"version": "2.13.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpmd/phpmd.git",
|
||||
"reference": "dad0228156856b3ad959992f9748514fa943f3e3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpmd/phpmd/zipball/dad0228156856b3ad959992f9748514fa943f3e3",
|
||||
"reference": "dad0228156856b3ad959992f9748514fa943f3e3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer/xdebug-handler": "^1.0 || ^2.0 || ^3.0",
|
||||
"ext-xml": "*",
|
||||
"pdepend/pdepend": "^2.12.1",
|
||||
"php": ">=5.3.9"
|
||||
},
|
||||
"require-dev": {
|
||||
"easy-doc/easy-doc": "0.0.0 || ^1.3.2",
|
||||
"ext-json": "*",
|
||||
"ext-simplexml": "*",
|
||||
"gregwar/rst": "^1.0",
|
||||
"mikey179/vfsstream": "^1.6.8",
|
||||
"phpunit/phpunit": "^4.8.36 || ^5.7.27",
|
||||
"squizlabs/php_codesniffer": "^2.0"
|
||||
},
|
||||
"bin": [
|
||||
"src/bin/phpmd"
|
||||
],
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"PHPMD\\": "src/main/php"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Manuel Pichler",
|
||||
"email": "github@manuel-pichler.de",
|
||||
"homepage": "https://github.com/manuelpichler",
|
||||
"role": "Project Founder"
|
||||
},
|
||||
{
|
||||
"name": "Marc Würth",
|
||||
"email": "ravage@bluewin.ch",
|
||||
"homepage": "https://github.com/ravage84",
|
||||
"role": "Project Maintainer"
|
||||
},
|
||||
{
|
||||
"name": "Other contributors",
|
||||
"homepage": "https://github.com/phpmd/phpmd/graphs/contributors",
|
||||
"role": "Contributors"
|
||||
}
|
||||
],
|
||||
"description": "PHPMD is a spin-off project of PHP Depend and aims to be a PHP equivalent of the well known Java tool PMD.",
|
||||
"homepage": "https://phpmd.org/",
|
||||
"keywords": [
|
||||
"mess detection",
|
||||
"mess detector",
|
||||
"pdepend",
|
||||
"phpmd",
|
||||
"pmd"
|
||||
],
|
||||
"support": {
|
||||
"irc": "irc://irc.freenode.org/phpmd",
|
||||
"issues": "https://github.com/phpmd/phpmd/issues",
|
||||
"source": "https://github.com/phpmd/phpmd/tree/2.13.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/phpmd/phpmd",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-09-10T08:44:15+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "9.2.17",
|
||||
|
|
@ -7914,16 +8191,16 @@
|
|||
},
|
||||
{
|
||||
"name": "sebastian/comparator",
|
||||
"version": "4.0.6",
|
||||
"version": "4.0.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/comparator.git",
|
||||
"reference": "55f4261989e546dc112258c7a75935a81a7ce382"
|
||||
"reference": "fa0f136dd2334583309d32b62544682ee972b51a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382",
|
||||
"reference": "55f4261989e546dc112258c7a75935a81a7ce382",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a",
|
||||
"reference": "fa0f136dd2334583309d32b62544682ee972b51a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -7976,7 +8253,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/comparator/issues",
|
||||
"source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6"
|
||||
"source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -7984,7 +8261,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-10-26T15:49:45+00:00"
|
||||
"time": "2022-09-14T12:41:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/complexity",
|
||||
|
|
@ -8174,16 +8451,16 @@
|
|||
},
|
||||
{
|
||||
"name": "sebastian/exporter",
|
||||
"version": "4.0.4",
|
||||
"version": "4.0.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/exporter.git",
|
||||
"reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9"
|
||||
"reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9",
|
||||
"reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
|
||||
"reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -8239,7 +8516,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
||||
"source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4"
|
||||
"source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -8247,7 +8524,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2021-11-11T14:18:36+00:00"
|
||||
"time": "2022-09-14T06:03:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/global-state",
|
||||
|
|
@ -8602,16 +8879,16 @@
|
|||
},
|
||||
{
|
||||
"name": "sebastian/type",
|
||||
"version": "3.1.0",
|
||||
"version": "3.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/type.git",
|
||||
"reference": "fb44e1cc6e557418387ad815780360057e40753e"
|
||||
"reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb44e1cc6e557418387ad815780360057e40753e",
|
||||
"reference": "fb44e1cc6e557418387ad815780360057e40753e",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e",
|
||||
"reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -8623,7 +8900,7 @@
|
|||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "3.1-dev"
|
||||
"dev-master": "3.2-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
|
@ -8646,7 +8923,7 @@
|
|||
"homepage": "https://github.com/sebastianbergmann/type",
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/type/issues",
|
||||
"source": "https://github.com/sebastianbergmann/type/tree/3.1.0"
|
||||
"source": "https://github.com/sebastianbergmann/type/tree/3.2.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -8654,7 +8931,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-08-29T06:55:37+00:00"
|
||||
"time": "2022-09-12T14:47:03+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/version",
|
||||
|
|
@ -8765,6 +9042,238 @@
|
|||
},
|
||||
"time": "2022-06-18T07:21:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/config",
|
||||
"version": "v5.4.11",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/config.git",
|
||||
"reference": "ec79e03125c1d2477e43dde8528535d90cc78379"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/config/zipball/ec79e03125c1d2477e43dde8528535d90cc78379",
|
||||
"reference": "ec79e03125c1d2477e43dde8528535d90cc78379",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"symfony/deprecation-contracts": "^2.1|^3",
|
||||
"symfony/filesystem": "^4.4|^5.0|^6.0",
|
||||
"symfony/polyfill-ctype": "~1.8",
|
||||
"symfony/polyfill-php80": "^1.16",
|
||||
"symfony/polyfill-php81": "^1.22"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/finder": "<4.4"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/event-dispatcher": "^4.4|^5.0|^6.0",
|
||||
"symfony/finder": "^4.4|^5.0|^6.0",
|
||||
"symfony/messenger": "^4.4|^5.0|^6.0",
|
||||
"symfony/service-contracts": "^1.1|^2|^3",
|
||||
"symfony/yaml": "^4.4|^5.0|^6.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/yaml": "To use the yaml reference dumper"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Component\\Config\\": ""
|
||||
},
|
||||
"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": "Helps you find, load, combine, autofill and validate configuration values of any kind",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/config/tree/v5.4.11"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-07-20T13:00:38+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/dependency-injection",
|
||||
"version": "v5.4.11",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/dependency-injection.git",
|
||||
"reference": "a8b9251016e9476db73e25fa836904bc0bf74c62"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62",
|
||||
"reference": "a8b9251016e9476db73e25fa836904bc0bf74c62",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"psr/container": "^1.1.1",
|
||||
"symfony/deprecation-contracts": "^2.1|^3",
|
||||
"symfony/polyfill-php80": "^1.16",
|
||||
"symfony/polyfill-php81": "^1.22",
|
||||
"symfony/service-contracts": "^1.1.6|^2"
|
||||
},
|
||||
"conflict": {
|
||||
"ext-psr": "<1.1|>=2",
|
||||
"symfony/config": "<5.3",
|
||||
"symfony/finder": "<4.4",
|
||||
"symfony/proxy-manager-bridge": "<4.4",
|
||||
"symfony/yaml": "<4.4.26"
|
||||
},
|
||||
"provide": {
|
||||
"psr/container-implementation": "1.0",
|
||||
"symfony/service-implementation": "1.0|2.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/config": "^5.3|^6.0",
|
||||
"symfony/expression-language": "^4.4|^5.0|^6.0",
|
||||
"symfony/yaml": "^4.4.26|^5.0|^6.0"
|
||||
},
|
||||
"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",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Component\\DependencyInjection\\": ""
|
||||
},
|
||||
"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": "Allows you to standardize and centralize the way objects are constructed in your application",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/dependency-injection/tree/v5.4.11"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-07-20T13:00:38+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/filesystem",
|
||||
"version": "v5.4.12",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/filesystem.git",
|
||||
"reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447",
|
||||
"reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.2.5",
|
||||
"symfony/polyfill-ctype": "~1.8",
|
||||
"symfony/polyfill-mbstring": "~1.8",
|
||||
"symfony/polyfill-php80": "^1.16"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Component\\Filesystem\\": ""
|
||||
},
|
||||
"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": "Provides basic utilities for the filesystem",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/filesystem/tree/v5.4.12"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-08-02T13:48:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "theseer/tokenizer",
|
||||
"version": "1.2.1",
|
||||
|
|
|
|||
|
|
@ -16,9 +16,10 @@ class AddLastUsedAtColumnToApiKeysTable extends Migration
|
|||
Schema::table('api_keys', function (Blueprint $table) {
|
||||
if (DB::getDriverName() == 'sqlite') {
|
||||
$table->dateTime('last_used_at')->default('');
|
||||
} else {
|
||||
$table->dateTime('last_used_at');
|
||||
return;
|
||||
}
|
||||
|
||||
$table->dateTime('last_used_at');
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
22
flexiapi/phpmd.xml
Normal file
22
flexiapi/phpmd.xml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<ruleset name="Clean Code Rules"
|
||||
xmlns="http://pmd.sf.net/ruleset/1.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
|
||||
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
|
||||
|
||||
<description>
|
||||
The Clean Code ruleset contains rules that enforce a clean code base. This includes rules from SOLID and object calisthenics.
|
||||
</description>
|
||||
|
||||
<rule ref="rulesets/cleancode.xml/ElseExpression" />
|
||||
<rule ref="rulesets/controversial.xml/CamelCaseClassName" />
|
||||
<rule ref="rulesets/controversial.xml/CamelCasePropertyName" />
|
||||
<rule ref="rulesets/controversial.xml/CamelCaseMethodName" />
|
||||
<rule ref="rulesets/controversial.xml/CamelCaseParameterName" />
|
||||
<rule ref="rulesets/controversial.xml/CamelCaseVariableName" />
|
||||
|
||||
<exclude-pattern>*/vendor/*</exclude-pattern>
|
||||
|
||||
</ruleset>
|
||||
|
|
@ -59,18 +59,18 @@ abstract class TestCase extends BaseTestCase
|
|||
|
||||
$cnonce = generateNonce();
|
||||
|
||||
$A1 = $password->password;
|
||||
$A2 = hash($hash, $this->method . ':' . $this->route);
|
||||
$a1 = $password->password;
|
||||
$a2 = hash($hash, $this->method . ':' . $this->route);
|
||||
$response = hash(
|
||||
$hash,
|
||||
sprintf(
|
||||
'%s:%s:%s:%s:%s:%s',
|
||||
$A1,
|
||||
$a1,
|
||||
$extractedChallenge['nonce'],
|
||||
$nc,
|
||||
$cnonce,
|
||||
$extractedChallenge['qop'],
|
||||
$A2
|
||||
$a2
|
||||
)
|
||||
);
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
#%define _datadir %{_datarootdir}
|
||||
#%define _docdir %{_datadir}/doc
|
||||
|
||||
%define build_number 151
|
||||
%define build_number 152
|
||||
%define var_dir /var/opt/belledonne-communications
|
||||
%define opt_dir /opt/belledonne-communications/share/flexisip-account-manager
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue