From 11a9f87f1dffd26a577f713328a74c99ac989710 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Jaussoin?= Date: Tue, 4 Mar 2025 17:19:54 +0100 Subject: [PATCH] Fix FLEXIAPI-275 Add names in Spaces --- CHANGELOG.md | 1 + INSTALL.md | 2 +- README.md | 2 +- .../Console/Commands/Spaces/CreateUpdate.php | 3 +- .../Spaces/ImportConfigurationFromDotEnv.php | 2 + flexiapi/app/Helpers/Utils.php | 2 +- .../Controllers/Admin/SpaceController.php | 4 + .../Api/Account/AccountController.php | 6 +- .../Controllers/Api/Admin/SpaceController.php | 4 + flexiapi/app/Services/AccountService.php | 10 +- flexiapi/composer.lock | 199 ++++++++---------- flexiapi/composer.phar | Bin 3063028 -> 3063015 bytes flexiapi/config/app.php | 1 - flexiapi/database/factories/SpaceFactory.php | 1 + ..._03_04_105856_add_name_in_spaces_table.php | 30 +++ flexiapi/lang/fr.json | 1 + .../views/account/dashboard.blade.php | 2 +- .../resources/views/account/login.blade.php | 2 +- .../admin/space/administration.blade.php | 10 +- .../views/admin/space/configuration.blade.php | 6 +- .../views/admin/space/create.blade.php | 8 +- .../views/admin/space/edit.blade.php | 4 +- .../views/admin/space/index.blade.php | 4 +- .../views/admin/space/show.blade.php | 4 +- .../api/documentation_markdown.blade.php | 2 + .../resources/views/layouts/main.blade.php | 4 +- .../views/mails/authentication.blade.php | 4 +- .../authentication_custom.blade.php.example | 4 +- .../views/mails/authentication_text.blade.php | 2 +- ...thentication_text_custom.blade.php.example | 2 +- .../mails/confirmed_registration.blade.php | 2 +- .../confirmed_registration_text.blade.php | 2 +- .../mails/register_confirmation.blade.php | 4 +- .../register_confirmation_text.blade.php | 2 +- .../views/mails/register_validate.blade.php | 4 +- .../mails/register_validate_text.blade.php | 2 +- .../views/mails/reset_password.blade.php | 4 +- .../views/mails/reset_password_text.blade.php | 2 +- .../views/vendor/mail/html/message.blade.php | 4 +- .../views/vendor/mail/text/message.blade.php | 4 +- flexiapi/tests/Feature/ApiSpaceTest.php | 4 + 41 files changed, 205 insertions(+), 155 deletions(-) create mode 100644 flexiapi/database/migrations/2025_03_04_105856_add_name_in_spaces_table.php diff --git a/CHANGELOG.md b/CHANGELOG.md index dea6d03..77a7c1c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ v1.7 - Fix FLEXIAPI-271 Handle properly reversed attributes in objects - Fix FLEXIAPI-237 Add internationalisation support in the app - Fix FLEXIAPI-261 Remove the TURN part in the XML provisioning (and only keep the API endpoint) +- Fix FLEXIAPI-275 Add names in Spaces v1.6 ---- diff --git a/INSTALL.md b/INSTALL.md index 616f97d..183c2bf 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -80,7 +80,7 @@ Create a first administator account: For example: - php artisan accounts:create-admin-account admin strong_password my-company-sip-domain.tld + php artisan accounts:create-admin-account -u admin -p strong_password -d my-company-sip-domain.tld You can now try to authenticate on the web panel and continue the setup using your admin account. diff --git a/README.md b/README.md index 09d854f..883ba2b 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ FlexiAPI is shipped with several console commands that you can launch using the Create or update a Space, required to then create accounts afterward. The `super` option enable/disable the domain as a super domain. - php artisan spaces:create-update {sip_domain} {host} {--super} + php artisan spaces:create-update {sip_domain} {host} {name} {--super} ### Import the old DotEnv instance configuration into a Space diff --git a/flexiapi/app/Console/Commands/Spaces/CreateUpdate.php b/flexiapi/app/Console/Commands/Spaces/CreateUpdate.php index d7bf3e2..a897704 100644 --- a/flexiapi/app/Console/Commands/Spaces/CreateUpdate.php +++ b/flexiapi/app/Console/Commands/Spaces/CreateUpdate.php @@ -24,7 +24,7 @@ use Illuminate\Console\Command; class CreateUpdate extends Command { - protected $signature = 'spaces:create-update {sip_domain} {host} {--super}'; + protected $signature = 'spaces:create-update {sip_domain} {host} {name} {--super}'; protected $description = 'Create a Space'; public function handle() @@ -42,6 +42,7 @@ class CreateUpdate extends Command $space = Space::where('domain', $this->argument('sip_domain'))->firstOrNew(); $space->host = $this->argument('host'); $space->domain = $this->argument('sip_domain'); + $space->name = $this->argument('name'); $space->exists ? $this->info('The domain already exists, updating it') diff --git a/flexiapi/app/Console/Commands/Spaces/ImportConfigurationFromDotEnv.php b/flexiapi/app/Console/Commands/Spaces/ImportConfigurationFromDotEnv.php index 6dd1c87..31d78d0 100644 --- a/flexiapi/app/Console/Commands/Spaces/ImportConfigurationFromDotEnv.php +++ b/flexiapi/app/Console/Commands/Spaces/ImportConfigurationFromDotEnv.php @@ -23,6 +23,8 @@ class ImportConfigurationFromDotEnv extends Command $this->info('The following configuration will be imported in the space ' . $space->domain); $this->info('The existing settings will be overwritten:'); + $space->name = env('APP_NAME', null); + $space->custom_theme = env('INSTANCE_CUSTOM_THEME', false); $space->web_panel = env('WEB_PANEL', true); diff --git a/flexiapi/app/Helpers/Utils.php b/flexiapi/app/Helpers/Utils.php index 1e49764..a4c9303 100644 --- a/flexiapi/app/Helpers/Utils.php +++ b/flexiapi/app/Helpers/Utils.php @@ -110,7 +110,7 @@ function markdownDocumentationView(string $view): string return (string) $converter->convert( (string)view($view, [ - 'app_name' => config('app.name') + 'app_name' => space()->name ])->render() ); } diff --git a/flexiapi/app/Http/Controllers/Admin/SpaceController.php b/flexiapi/app/Http/Controllers/Admin/SpaceController.php index cf34920..ebe3de3 100644 --- a/flexiapi/app/Http/Controllers/Admin/SpaceController.php +++ b/flexiapi/app/Http/Controllers/Admin/SpaceController.php @@ -62,12 +62,14 @@ class SpaceController extends Controller $request->merge(['full_host' => $fullHost]); $request->validate([ + 'name' => 'required|unique:spaces', 'domain' => 'required|unique:spaces|regex:/'. Space::DOMAIN_REGEX . '/', 'host' => 'nullable|regex:/'. Space::HOST_REGEX . '/', 'full_host' => 'required|unique:spaces,host', ]); $space = new Space(); + $space->name = $request->get('name'); $space->domain = $request->get('domain'); $space->host = $request->get('full_host'); $space->save(); @@ -119,6 +121,7 @@ class SpaceController extends Controller public function administrationUpdate(Request $request, Space $space) { $request->validate([ + 'name' => ['required', Rule::unique('spaces')->ignore($space->id)], 'max_accounts' => 'required|integer|min:0', 'expire_at' => 'nullable|date|after_or_equal:today' ]); @@ -129,6 +132,7 @@ class SpaceController extends Controller ]); } + $space->name = $request->get('name'); $space->super = getRequestBoolean($request, 'super'); $space->max_accounts = $request->get('max_accounts'); $space->expire_at = $request->get('expire_at'); diff --git a/flexiapi/app/Http/Controllers/Api/Account/AccountController.php b/flexiapi/app/Http/Controllers/Api/Account/AccountController.php index a123118..cd3597f 100644 --- a/flexiapi/app/Http/Controllers/Api/Account/AccountController.php +++ b/flexiapi/app/Http/Controllers/Api/Account/AccountController.php @@ -160,7 +160,7 @@ class AccountController extends Controller : config('app.sip_domain'); $account->ip_address = $request->ip(); $account->created_at = Carbon::now(); - $account->user_agent = $request->header('User-Agent') ?? config('app.name'); + $account->user_agent = $request->header('User-Agent') ?? space()->name; $account->save(); $account->updatePassword($request->get('password'), $request->get('algorithm')); @@ -182,7 +182,7 @@ class AccountController extends Controller Log::channel('events')->info('API deprecated: Account created using the public endpoint by phone', ['id' => $account->identifier]); $ovhSMS = new OvhSMS; - $ovhSMS->send($request->get('phone'), 'Your ' . config('app.name') . ' creation code is ' . $account->confirmation_key); + $ovhSMS->send($request->get('phone'), 'Your ' . space()->name . ' creation code is ' . $account->confirmation_key); } elseif ($request->has('email')) { // Send validation by email $account->confirmation_key = Str::random(WebAuthenticateController::$emailCodeSize); @@ -233,7 +233,7 @@ class AccountController extends Controller Log::channel('events')->info('API deprecated - Account recovery: Account recovery by phone', ['id' => $account->identifier]); $ovhSMS = new OvhSMS; - $ovhSMS->send($request->get('phone'), 'Your ' . config('app.name') . ' recovery code is ' . $account->confirmation_key); + $ovhSMS->send($request->get('phone'), 'Your ' . space()->name . ' recovery code is ' . $account->confirmation_key); } /** diff --git a/flexiapi/app/Http/Controllers/Api/Admin/SpaceController.php b/flexiapi/app/Http/Controllers/Api/Admin/SpaceController.php index a1deb4e..697491a 100644 --- a/flexiapi/app/Http/Controllers/Api/Admin/SpaceController.php +++ b/flexiapi/app/Http/Controllers/Api/Admin/SpaceController.php @@ -35,6 +35,7 @@ class SpaceController extends Controller public function store(Request $request) { $request->validate([ + 'name' => 'required|unique:spaces', 'domain' => 'required|unique:spaces', 'host' => 'required|unique:spaces', 'max_accounts' => 'nullable|integer', @@ -42,6 +43,7 @@ class SpaceController extends Controller ]); $space = new Space; + $space->name = $request->get('name'); $space->domain = $request->get('domain'); $space->host = $request->get('host'); $this->setRequestBoolean($request, $space, 'super'); @@ -120,9 +122,11 @@ class SpaceController extends Controller } $request->validate([ + 'name' => ['required', Rule::unique('spaces')->ignore($space->id)], 'host' => ['required', Rule::unique('spaces')->ignore($space->id)] ]); + $space->name = $request->get('name'); $space->host = $request->get('host'); $space->super = $request->get('super'); $space->disable_chat_feature = $request->get('disable_chat_feature'); diff --git a/flexiapi/app/Services/AccountService.php b/flexiapi/app/Services/AccountService.php index b6870d4..cbd8e03 100644 --- a/flexiapi/app/Services/AccountService.php +++ b/flexiapi/app/Services/AccountService.php @@ -63,7 +63,7 @@ class AccountService $account->domain = config('app.sip_domain'); $account->ip_address = $request->ip(); $account->created_at = Carbon::now(); - $account->user_agent = config('app.name'); + $account->user_agent = space()->name; $account->dtmf_protocol = $request->get('dtmf_protocol'); if ($request->asAdmin) { @@ -71,7 +71,7 @@ class AccountService $account->display_name = $request->get('display_name'); $account->activated = $request->has('activated') ? (bool)$request->get('activated') : false; $account->domain = resolveDomain($request); - $account->user_agent = $request->header('User-Agent') ?? config('app.name'); + $account->user_agent = $request->header('User-Agent') ?? space()->name; $account->admin = $request->has('admin') && (bool)$request->get('admin'); if (!$request->api && $request->has('role')) { @@ -149,7 +149,7 @@ class AccountService $account->email = $request->get('email'); $account->display_name = $request->get('display_name'); $account->dtmf_protocol = $request->get('dtmf_protocol'); - $account->user_agent = $request->header('User-Agent') ?? config('app.name'); + $account->user_agent = $request->header('User-Agent') ?? $account->space->name; $account->admin = $request->has('admin') && (bool)$request->get('admin'); if ($request->api && $request->has('admin')) { @@ -245,7 +245,7 @@ class AccountService Log::channel('events')->info('Account Service: Account phone change requested by SMS', ['id' => $account->identifier]); - $message = 'Your ' . config('app.name') . ' validation code is ' . $phoneChangeCode->code . '.'; + $message = 'Your ' . $account->space->name . ' validation code is ' . $phoneChangeCode->code . '.'; if (config('app.recovery_code_expiration_minutes') > 0) { $message .= ' The code is available for ' . config('app.recovery_code_expiration_minutes') . ' minutes'; @@ -391,7 +391,7 @@ class AccountService { $account = $this->recoverAccount($account); - $message = 'Your ' . config('app.name') . ' validation code is ' . $account->recovery_code . '.'; + $message = 'Your ' . $account->space->name . ' validation code is ' . $account->recovery_code . '.'; if (config('app.recovery_code_expiration_minutes') > 0) { $message .= ' The code is available for ' . config('app.recovery_code_expiration_minutes') . ' minutes'; diff --git a/flexiapi/composer.lock b/flexiapi/composer.lock index c7aca0d..b513414 100644 --- a/flexiapi/composer.lock +++ b/flexiapi/composer.lock @@ -8,25 +8,25 @@ "packages": [ { "name": "awobaz/compoships", - "version": "2.4.0", + "version": "2.4.1", "source": { "type": "git", "url": "https://github.com/topclaudy/compoships.git", - "reference": "63fcb664b8c21d2f98db6a70f7f351b7db77f9f4" + "reference": "49ef79d912201c8649651d63b5682afae092502e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/topclaudy/compoships/zipball/63fcb664b8c21d2f98db6a70f7f351b7db77f9f4", - "reference": "63fcb664b8c21d2f98db6a70f7f351b7db77f9f4", + "url": "https://api.github.com/repos/topclaudy/compoships/zipball/49ef79d912201c8649651d63b5682afae092502e", + "reference": "49ef79d912201c8649651d63b5682afae092502e", "shasum": "" }, "require": { - "illuminate/database": ">=5.6 <12.0" + "illuminate/database": ">=5.6 <13.0" }, "require-dev": { "ext-sqlite3": "*", "fakerphp/faker": "^1.18", - "phpunit/phpunit": "^6.0|^8.0|^9.0|^10.0" + "phpunit/phpunit": "^6.0|^8.0|^9.0|^10.0|^11.0" }, "suggest": { "awobaz/blade-active": "Blade directives for the Laravel 'Active' package", @@ -58,7 +58,7 @@ ], "support": { "issues": "https://github.com/topclaudy/compoships/issues", - "source": "https://github.com/topclaudy/compoships/tree/2.4.0" + "source": "https://github.com/topclaudy/compoships/tree/2.4.1" }, "funding": [ { @@ -66,7 +66,7 @@ "type": "custom" } ], - "time": "2025-01-09T12:32:04+00:00" + "time": "2025-02-24T15:12:08+00:00" }, { "name": "bacon/bacon-qr-code", @@ -124,16 +124,16 @@ }, { "name": "brick/math", - "version": "0.12.1", + "version": "0.12.3", "source": { "type": "git", "url": "https://github.com/brick/math.git", - "reference": "f510c0a40911935b77b86859eb5223d58d660df1" + "reference": "866551da34e9a618e64a819ee1e01c20d8a588ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/f510c0a40911935b77b86859eb5223d58d660df1", - "reference": "f510c0a40911935b77b86859eb5223d58d660df1", + "url": "https://api.github.com/repos/brick/math/zipball/866551da34e9a618e64a819ee1e01c20d8a588ba", + "reference": "866551da34e9a618e64a819ee1e01c20d8a588ba", "shasum": "" }, "require": { @@ -142,7 +142,7 @@ "require-dev": { "php-coveralls/php-coveralls": "^2.2", "phpunit/phpunit": "^10.1", - "vimeo/psalm": "5.16.0" + "vimeo/psalm": "6.8.8" }, "type": "library", "autoload": { @@ -172,7 +172,7 @@ ], "support": { "issues": "https://github.com/brick/math/issues", - "source": "https://github.com/brick/math/tree/0.12.1" + "source": "https://github.com/brick/math/tree/0.12.3" }, "funding": [ { @@ -180,7 +180,7 @@ "type": "github" } ], - "time": "2023-11-29T23:19:16+00:00" + "time": "2025-02-28T13:11:00+00:00" }, { "name": "carbonphp/carbon-doctrine-types", @@ -2784,16 +2784,16 @@ }, { "name": "league/oauth2-client", - "version": "2.8.0", + "version": "2.8.1", "source": { "type": "git", "url": "https://github.com/thephpleague/oauth2-client.git", - "reference": "3d5cf8d0543731dfb725ab30e4d7289891991e13" + "reference": "9df2924ca644736c835fc60466a3a60390d334f9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/3d5cf8d0543731dfb725ab30e4d7289891991e13", - "reference": "3d5cf8d0543731dfb725ab30e4d7289891991e13", + "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/9df2924ca644736c835fc60466a3a60390d334f9", + "reference": "9df2924ca644736c835fc60466a3a60390d334f9", "shasum": "" }, "require": { @@ -2843,9 +2843,9 @@ ], "support": { "issues": "https://github.com/thephpleague/oauth2-client/issues", - "source": "https://github.com/thephpleague/oauth2-client/tree/2.8.0" + "source": "https://github.com/thephpleague/oauth2-client/tree/2.8.1" }, - "time": "2024-12-11T05:05:52+00:00" + "time": "2025-02-26T04:37:30+00:00" }, { "name": "monolog/monolog", @@ -4199,29 +4199,29 @@ }, { "name": "propaganistas/laravel-phone", - "version": "5.3.3", + "version": "5.3.4", "source": { "type": "git", "url": "https://github.com/Propaganistas/Laravel-Phone.git", - "reference": "2172362ae5714ddc397d9df96a44b82bd125631a" + "reference": "a76eae715b927f8f30add4bb2228926091d3e152" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Propaganistas/Laravel-Phone/zipball/2172362ae5714ddc397d9df96a44b82bd125631a", - "reference": "2172362ae5714ddc397d9df96a44b82bd125631a", + "url": "https://api.github.com/repos/Propaganistas/Laravel-Phone/zipball/a76eae715b927f8f30add4bb2228926091d3e152", + "reference": "a76eae715b927f8f30add4bb2228926091d3e152", "shasum": "" }, "require": { "giggsey/libphonenumber-for-php-lite": "^8.13.35", - "illuminate/contracts": "^10.0|^11.0", - "illuminate/support": "^10.0|^11.0", - "illuminate/validation": "^10.0|^11.0", + "illuminate/contracts": "^10.0|^11.0|^12.0", + "illuminate/support": "^10.0|^11.0|^12.0", + "illuminate/validation": "^10.0|^11.0|^12.0", "php": "^8.1" }, "require-dev": { "laravel/pint": "^1.14", "orchestra/testbench": "*", - "phpunit/phpunit": "^10.5" + "phpunit/phpunit": "^10.5|^11.5.3" }, "type": "library", "extra": { @@ -4258,7 +4258,7 @@ ], "support": { "issues": "https://github.com/Propaganistas/Laravel-Phone/issues", - "source": "https://github.com/Propaganistas/Laravel-Phone/tree/5.3.3" + "source": "https://github.com/Propaganistas/Laravel-Phone/tree/5.3.4" }, "funding": [ { @@ -4266,7 +4266,7 @@ "type": "github" } ], - "time": "2024-12-27T11:45:47+00:00" + "time": "2025-02-24T15:09:06+00:00" }, { "name": "psr/cache", @@ -4854,16 +4854,16 @@ }, { "name": "ramsey/collection", - "version": "2.0.0", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/ramsey/collection.git", - "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5" + "reference": "3c5990b8a5e0b79cd1cf11c2dc1229e58e93f109" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/collection/zipball/a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", - "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", + "url": "https://api.github.com/repos/ramsey/collection/zipball/3c5990b8a5e0b79cd1cf11c2dc1229e58e93f109", + "reference": "3c5990b8a5e0b79cd1cf11c2dc1229e58e93f109", "shasum": "" }, "require": { @@ -4871,25 +4871,22 @@ }, "require-dev": { "captainhook/plugin-composer": "^5.3", - "ergebnis/composer-normalize": "^2.28.3", - "fakerphp/faker": "^1.21", + "ergebnis/composer-normalize": "^2.45", + "fakerphp/faker": "^1.24", "hamcrest/hamcrest-php": "^2.0", - "jangregor/phpstan-prophecy": "^1.0", - "mockery/mockery": "^1.5", + "jangregor/phpstan-prophecy": "^2.1", + "mockery/mockery": "^1.6", "php-parallel-lint/php-console-highlighter": "^1.0", - "php-parallel-lint/php-parallel-lint": "^1.3", - "phpcsstandards/phpcsutils": "^1.0.0-rc1", - "phpspec/prophecy-phpunit": "^2.0", - "phpstan/extension-installer": "^1.2", - "phpstan/phpstan": "^1.9", - "phpstan/phpstan-mockery": "^1.1", - "phpstan/phpstan-phpunit": "^1.3", - "phpunit/phpunit": "^9.5", - "psalm/plugin-mockery": "^1.1", - "psalm/plugin-phpunit": "^0.18.4", - "ramsey/coding-standard": "^2.0.3", - "ramsey/conventional-commits": "^1.3", - "vimeo/psalm": "^5.4" + "php-parallel-lint/php-parallel-lint": "^1.4", + "phpspec/prophecy-phpunit": "^2.3", + "phpstan/extension-installer": "^1.4", + "phpstan/phpstan": "^2.1", + "phpstan/phpstan-mockery": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^10.5", + "ramsey/coding-standard": "^2.3", + "ramsey/conventional-commits": "^1.6", + "roave/security-advisories": "dev-latest" }, "type": "library", "extra": { @@ -4927,19 +4924,9 @@ ], "support": { "issues": "https://github.com/ramsey/collection/issues", - "source": "https://github.com/ramsey/collection/tree/2.0.0" + "source": "https://github.com/ramsey/collection/tree/2.1.0" }, - "funding": [ - { - "url": "https://github.com/ramsey", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", - "type": "tidelift" - } - ], - "time": "2022-12-31T21:50:55+00:00" + "time": "2025-03-02T04:48:29+00:00" }, { "name": "ramsey/uuid", @@ -7059,16 +7046,16 @@ }, { "name": "symfony/error-handler", - "version": "v6.4.18", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "e8d3b5b1975e67812a54388b1ba8e9ec28eb770e" + "reference": "3d4e55cd2b8f1979a65eba9ab749d6466c316f71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/e8d3b5b1975e67812a54388b1ba8e9ec28eb770e", - "reference": "e8d3b5b1975e67812a54388b1ba8e9ec28eb770e", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/3d4e55cd2b8f1979a65eba9ab749d6466c316f71", + "reference": "3d4e55cd2b8f1979a65eba9ab749d6466c316f71", "shasum": "" }, "require": { @@ -7114,7 +7101,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.4.18" + "source": "https://github.com/symfony/error-handler/tree/v6.4.19" }, "funding": [ { @@ -7130,7 +7117,7 @@ "type": "tidelift" } ], - "time": "2025-01-06T09:38:16+00:00" + "time": "2025-02-02T20:16:33+00:00" }, { "name": "symfony/event-dispatcher", @@ -7431,16 +7418,16 @@ }, { "name": "symfony/http-kernel", - "version": "v6.4.18", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "fca7197bfe9e99dfae7fb1ad3f7f5bd9ef80e1b7" + "reference": "88f2c9f7feff86bb7b9105c5151bc2c1404cd64c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/fca7197bfe9e99dfae7fb1ad3f7f5bd9ef80e1b7", - "reference": "fca7197bfe9e99dfae7fb1ad3f7f5bd9ef80e1b7", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/88f2c9f7feff86bb7b9105c5151bc2c1404cd64c", + "reference": "88f2c9f7feff86bb7b9105c5151bc2c1404cd64c", "shasum": "" }, "require": { @@ -7525,7 +7512,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.4.18" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.19" }, "funding": [ { @@ -7541,7 +7528,7 @@ "type": "tidelift" } ], - "time": "2025-01-29T07:25:58+00:00" + "time": "2025-02-26T10:51:37+00:00" }, { "name": "symfony/mailer", @@ -7625,16 +7612,16 @@ }, { "name": "symfony/mime", - "version": "v6.4.18", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "917d77981eb1ea963608d5cda4d9c0cf72eaa68e" + "reference": "ac537b6c55ccc2c749f3c979edfa9ec14aaed4f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/917d77981eb1ea963608d5cda4d9c0cf72eaa68e", - "reference": "917d77981eb1ea963608d5cda4d9c0cf72eaa68e", + "url": "https://api.github.com/repos/symfony/mime/zipball/ac537b6c55ccc2c749f3c979edfa9ec14aaed4f3", + "reference": "ac537b6c55ccc2c749f3c979edfa9ec14aaed4f3", "shasum": "" }, "require": { @@ -7690,7 +7677,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.18" + "source": "https://github.com/symfony/mime/tree/v6.4.19" }, "funding": [ { @@ -7706,7 +7693,7 @@ "type": "tidelift" } ], - "time": "2025-01-23T13:10:52+00:00" + "time": "2025-02-17T21:23:52+00:00" }, { "name": "symfony/polyfill-ctype", @@ -8346,16 +8333,16 @@ }, { "name": "symfony/process", - "version": "v6.4.15", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "3cb242f059c14ae08591c5c4087d1fe443564392" + "reference": "7a1c12e87b08ec9c97abdd188c9b3f5a40e37fc3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/3cb242f059c14ae08591c5c4087d1fe443564392", - "reference": "3cb242f059c14ae08591c5c4087d1fe443564392", + "url": "https://api.github.com/repos/symfony/process/zipball/7a1c12e87b08ec9c97abdd188c9b3f5a40e37fc3", + "reference": "7a1c12e87b08ec9c97abdd188c9b3f5a40e37fc3", "shasum": "" }, "require": { @@ -8387,7 +8374,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.15" + "source": "https://github.com/symfony/process/tree/v6.4.19" }, "funding": [ { @@ -8403,7 +8390,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:19:14+00:00" + "time": "2025-02-04T13:35:48+00:00" }, { "name": "symfony/routing", @@ -8659,16 +8646,16 @@ }, { "name": "symfony/translation", - "version": "v6.4.13", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "bee9bfabfa8b4045a66bf82520e492cddbaffa66" + "reference": "3b9bf9f33997c064885a7bfc126c14b9daa0e00e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/bee9bfabfa8b4045a66bf82520e492cddbaffa66", - "reference": "bee9bfabfa8b4045a66bf82520e492cddbaffa66", + "url": "https://api.github.com/repos/symfony/translation/zipball/3b9bf9f33997c064885a7bfc126c14b9daa0e00e", + "reference": "3b9bf9f33997c064885a7bfc126c14b9daa0e00e", "shasum": "" }, "require": { @@ -8734,7 +8721,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.13" + "source": "https://github.com/symfony/translation/tree/v6.4.19" }, "funding": [ { @@ -8750,7 +8737,7 @@ "type": "tidelift" } ], - "time": "2024-09-27T18:14:25+00:00" + "time": "2025-02-13T10:18:43+00:00" }, { "name": "symfony/translation-contracts", @@ -10065,16 +10052,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v6.4.16", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "7a379d8871f6a36f01559c14e11141cc02eb8dc8" + "reference": "b343c3b2f1539fe41331657b37d5c96c1d1ea842" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/7a379d8871f6a36f01559c14e11141cc02eb8dc8", - "reference": "7a379d8871f6a36f01559c14e11141cc02eb8dc8", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/b343c3b2f1539fe41331657b37d5c96c1d1ea842", + "reference": "b343c3b2f1539fe41331657b37d5c96c1d1ea842", "shasum": "" }, "require": { @@ -10126,7 +10113,7 @@ "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/v6.4.16" + "source": "https://github.com/symfony/dependency-injection/tree/v6.4.19" }, "funding": [ { @@ -10142,7 +10129,7 @@ "type": "tidelift" } ], - "time": "2024-11-25T14:52:46+00:00" + "time": "2025-02-20T10:02:49+00:00" }, { "name": "symfony/filesystem", @@ -10212,16 +10199,16 @@ }, { "name": "symfony/var-exporter", - "version": "v6.4.13", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "0f605f72a363f8743001038a176eeb2a11223b51" + "reference": "be6e71b0c257884c1107313de5d247741cfea172" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/0f605f72a363f8743001038a176eeb2a11223b51", - "reference": "0f605f72a363f8743001038a176eeb2a11223b51", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/be6e71b0c257884c1107313de5d247741cfea172", + "reference": "be6e71b0c257884c1107313de5d247741cfea172", "shasum": "" }, "require": { @@ -10269,7 +10256,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.4.13" + "source": "https://github.com/symfony/var-exporter/tree/v6.4.19" }, "funding": [ { @@ -10285,7 +10272,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-02-13T09:33:32+00:00" } ], "aliases": [], diff --git a/flexiapi/composer.phar b/flexiapi/composer.phar index b59d7e1062a6d30e44d75cf6520c60abd8f92fa7..3b71ca645be88d71bc6e393515143364ef01946f 100755 GIT binary patch delta 15464 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 ocxtd?#TSLQM7+UI3jM!TA8NeV_py env('APP_NAME', 'Account Manager'), - //'sip_domain' => 'sip.domain.com', 'project_url' => env('APP_PROJECT_URL', ''), 'terms_of_use_url' => env('TERMS_OF_USE_URL', ''), diff --git a/flexiapi/database/factories/SpaceFactory.php b/flexiapi/database/factories/SpaceFactory.php index da866ad..4310b77 100644 --- a/flexiapi/database/factories/SpaceFactory.php +++ b/flexiapi/database/factories/SpaceFactory.php @@ -30,6 +30,7 @@ class SpaceFactory extends Factory public function definition() { return [ + 'name' => $this->faker->name, 'domain' => config('app.sip_domain'), 'host' => config('app.sip_domain'), ]; diff --git a/flexiapi/database/migrations/2025_03_04_105856_add_name_in_spaces_table.php b/flexiapi/database/migrations/2025_03_04_105856_add_name_in_spaces_table.php new file mode 100644 index 0000000..ea0087c --- /dev/null +++ b/flexiapi/database/migrations/2025_03_04_105856_add_name_in_spaces_table.php @@ -0,0 +1,30 @@ +string('name')->nullable(); + }); + + DB::statement("update spaces set name = domain"); + + Schema::table('spaces', function (Blueprint $table) { + $table->string('name')->nullable(false)->unique()->change(); + }); + } + + public function down(): void + { + Schema::table('spaces', function (Blueprint $table) { + $table->dropColumn('name'); + }); + } +}; diff --git a/flexiapi/lang/fr.json b/flexiapi/lang/fr.json index eda981b..b2c0715 100644 --- a/flexiapi/lang/fr.json +++ b/flexiapi/lang/fr.json @@ -62,6 +62,7 @@ "Features": "Fonctionnalités", "From": "Depuis", "General settings": "Paramètres généraux", + "Host": "Hôte", "I would like to subscribe to the newsletter": "Je voudrais m'inscrire à la newsletter", "I'm not a robot": "Je ne suis pas un robot", "Identifier": "Identifiant", diff --git a/flexiapi/resources/views/account/dashboard.blade.php b/flexiapi/resources/views/account/dashboard.blade.php index 93c755b..1a25985 100644 --- a/flexiapi/resources/views/account/dashboard.blade.php +++ b/flexiapi/resources/views/account/dashboard.blade.php @@ -6,7 +6,7 @@
-

hand-waving {{ __('Welcome on :app_name' , ['app_name' => config('app.name')]) }}

+

hand-waving {{ __('Welcome on :app_name' , ['app_name' => space()->name]) }}

envelope @if (!empty($account->email)) diff --git a/flexiapi/resources/views/account/login.blade.php b/flexiapi/resources/views/account/login.blade.php index ba16cae..dbcad4a 100644 --- a/flexiapi/resources/views/account/login.blade.php +++ b/flexiapi/resources/views/account/login.blade.php @@ -2,7 +2,7 @@ @section('content')

-

hand-waving {{ __('Welcome on :app_name' , ['app_name' => config('app.name')]) }}

+

hand-waving {{ __('Welcome on :app_name' , ['app_name' => space()->name]) }}

@if (space()->intro_registration_text) @parsedown(space()->intro_registration_text) diff --git a/flexiapi/resources/views/admin/space/administration.blade.php b/flexiapi/resources/views/admin/space/administration.blade.php index 544090a..5130e69 100644 --- a/flexiapi/resources/views/admin/space/administration.blade.php +++ b/flexiapi/resources/views/admin/space/administration.blade.php @@ -6,7 +6,7 @@ @@ -14,7 +14,7 @@ @section('content')
-

globe-hemisphere-west {{ $space->host }}

+

globe-hemisphere-west {{ $space->name }}

@include('admin.space.tabs') @@ -25,6 +25,12 @@ @csrf @method('put') +
+ + + @include('parts.errors', ['name' => 'name']) +
+
diff --git a/flexiapi/resources/views/admin/space/configuration.blade.php b/flexiapi/resources/views/admin/space/configuration.blade.php index 3a3c56d..2c3de03 100644 --- a/flexiapi/resources/views/admin/space/configuration.blade.php +++ b/flexiapi/resources/views/admin/space/configuration.blade.php @@ -7,13 +7,13 @@ @else @endif @@ -22,7 +22,7 @@ @section('content')
-

globe-hemisphere-west {{ $space->host }}

+

globe-hemisphere-west {{ $space->name }}

@include('admin.space.tabs') diff --git a/flexiapi/resources/views/admin/space/create.blade.php b/flexiapi/resources/views/admin/space/create.blade.php index 9760f53..2a2e55e 100644 --- a/flexiapi/resources/views/admin/space/create.blade.php +++ b/flexiapi/resources/views/admin/space/create.blade.php @@ -19,7 +19,13 @@ @csrf @method('post') -
+
+ + + @include('parts.errors', ['name' => 'name']) +
+ +
diff --git a/flexiapi/resources/views/admin/space/edit.blade.php b/flexiapi/resources/views/admin/space/edit.blade.php index e1777d6..ef2990a 100644 --- a/flexiapi/resources/views/admin/space/edit.blade.php +++ b/flexiapi/resources/views/admin/space/edit.blade.php @@ -6,7 +6,7 @@ @@ -14,7 +14,7 @@ @section('content')
-

globe-hemisphere-west {{ $space->host }}

+

globe-hemisphere-west {{ $space->name }}

@include('admin.space.tabs') diff --git a/flexiapi/resources/views/admin/space/index.blade.php b/flexiapi/resources/views/admin/space/index.blade.php index 8e2949b..7da71ee 100644 --- a/flexiapi/resources/views/admin/space/index.blade.php +++ b/flexiapi/resources/views/admin/space/index.blade.php @@ -18,6 +18,7 @@ {{ __('Space') }} + {{ __('Host') }} {{ __('SIP Domain') }} {{ __('Accounts') }} {{ __('Expiration') }} @@ -28,10 +29,11 @@ - {{ $space->host }} + {{ $space->name }} @if ($space->super) Super @endif + {{ $space->host }} {{ $space->domain }} {{ $space->accounts_count }} / @if ($space->max_accounts > 0){{ $space->max_accounts }} @else infinity@endif diff --git a/flexiapi/resources/views/admin/space/show.blade.php b/flexiapi/resources/views/admin/space/show.blade.php index 4a79ada..4dd19b7 100644 --- a/flexiapi/resources/views/admin/space/show.blade.php +++ b/flexiapi/resources/views/admin/space/show.blade.php @@ -6,13 +6,13 @@ {{ __('Spaces') }} @endif - + @endsection @section('content')
-

globe-hemisphere-west {{ $space->host }}

+

globe-hemisphere-west {{ $space->name }}

isFull())disabled @endif href="{{ route('admin.account.create', ['domain' => $space->domain]) }}"> user-plus {{ __('Create') }} diff --git a/flexiapi/resources/views/api/documentation_markdown.blade.php b/flexiapi/resources/views/api/documentation_markdown.blade.php index 0098349..1606fc7 100644 --- a/flexiapi/resources/views/api/documentation_markdown.blade.php +++ b/flexiapi/resources/views/api/documentation_markdown.blade.php @@ -153,6 +153,7 @@ Create a new `sip_domain`. JSON parameters: +* `name` **required**, the space name * `domain` **required**, the SIP domain to use, must be unique * `super` **required**, boolean, set the domain as a Super Domain * `disable_chat_feature` boolean, disable the chat feature, default to `false` @@ -190,6 +191,7 @@ Update an existing `sip_domain`. JSON parameters: +* `name` **required**, the space name * `super` **required**, boolean, set the domain as a Super Domain * `disable_chat_feature` **required**, boolean * `disable_meetings_feature` **required**, boolean diff --git a/flexiapi/resources/views/layouts/main.blade.php b/flexiapi/resources/views/layouts/main.blade.php index 1eca4d2..c42ed5d 100644 --- a/flexiapi/resources/views/layouts/main.blade.php +++ b/flexiapi/resources/views/layouts/main.blade.php @@ -6,7 +6,7 @@ - {{ config('app.name') }} + {{ space()->name }} @@ -27,7 +27,7 @@