diff --git a/phpcs.xml b/phpcs.xml
--- a/phpcs.xml
+++ b/phpcs.xml
@@ -9,4 +9,5 @@
src/app/
src/tests/
+ src/database/
diff --git a/src/database/migrations/2014_10_12_100000_create_password_resets_table.php b/src/database/migrations/2014_10_12_100000_create_password_resets_table.php
--- a/src/database/migrations/2014_10_12_100000_create_password_resets_table.php
+++ b/src/database/migrations/2014_10_12_100000_create_password_resets_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreatePasswordResetsTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_17_102626_create_wallet_table.php b/src/database/migrations/2019_09_17_102626_create_wallet_table.php
--- a/src/database/migrations/2019_09_17_102626_create_wallet_table.php
+++ b/src/database/migrations/2019_09_17_102626_create_wallet_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateWalletTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_17_102627_wallet_controllers.php b/src/database/migrations/2019_09_17_102627_wallet_controllers.php
--- a/src/database/migrations/2019_09_17_102627_wallet_controllers.php
+++ b/src/database/migrations/2019_09_17_102627_wallet_controllers.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class WalletControllers extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_17_105606_create_jobs_table.php b/src/database/migrations/2019_09_17_105606_create_jobs_table.php
--- a/src/database/migrations/2019_09_17_105606_create_jobs_table.php
+++ b/src/database/migrations/2019_09_17_105606_create_jobs_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateJobsTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_17_132012_create_user_settings_table.php b/src/database/migrations/2019_09_17_132012_create_user_settings_table.php
--- a/src/database/migrations/2019_09_17_132012_create_user_settings_table.php
+++ b/src/database/migrations/2019_09_17_132012_create_user_settings_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateUserSettingsTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_23_071701_create_domains_table.php b/src/database/migrations/2019_09_23_071701_create_domains_table.php
--- a/src/database/migrations/2019_09_23_071701_create_domains_table.php
+++ b/src/database/migrations/2019_09_23_071701_create_domains_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateDomainsTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_23_110000_create_signupcodes_table.php b/src/database/migrations/2019_09_23_110000_create_signupcodes_table.php
--- a/src/database/migrations/2019_09_23_110000_create_signupcodes_table.php
+++ b/src/database/migrations/2019_09_23_110000_create_signupcodes_table.php
@@ -3,6 +3,7 @@
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
+// phpcs:ignore
class CreateSignupCodesTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_09_24_082203_create_failed_jobs_table.php b/src/database/migrations/2019_09_24_082203_create_failed_jobs_table.php
--- a/src/database/migrations/2019_09_24_082203_create_failed_jobs_table.php
+++ b/src/database/migrations/2019_09_24_082203_create_failed_jobs_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateFailedJobsTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_10_10_095050_create_quota_table.php b/src/database/migrations/2019_10_10_095050_create_quota_table.php
--- a/src/database/migrations/2019_10_10_095050_create_quota_table.php
+++ b/src/database/migrations/2019_10_10_095050_create_quota_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateQuotaTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_12_10_095027_create_packages_table.php b/src/database/migrations/2019_12_10_095027_create_packages_table.php
--- a/src/database/migrations/2019_12_10_095027_create_packages_table.php
+++ b/src/database/migrations/2019_12_10_095027_create_packages_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreatePackagesTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_12_10_105428_create_plans_table.php b/src/database/migrations/2019_12_10_105428_create_plans_table.php
--- a/src/database/migrations/2019_12_10_105428_create_plans_table.php
+++ b/src/database/migrations/2019_12_10_105428_create_plans_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreatePlansTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_12_10_105942_create_plan_packages_table.php b/src/database/migrations/2019_12_10_105942_create_plan_packages_table.php
--- a/src/database/migrations/2019_12_10_105942_create_plan_packages_table.php
+++ b/src/database/migrations/2019_12_10_105942_create_plan_packages_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreatePlanPackagesTable extends Migration
{
/**
diff --git a/src/database/migrations/2019_12_20_130000_create_verification_codes_table.php b/src/database/migrations/2019_12_20_130000_create_verification_codes_table.php
--- a/src/database/migrations/2019_12_20_130000_create_verification_codes_table.php
+++ b/src/database/migrations/2019_12_20_130000_create_verification_codes_table.php
@@ -3,6 +3,7 @@
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
+// phpcs:ignore
class CreateVerificationCodesTable extends Migration
{
/**
diff --git a/src/database/migrations/2020_02_26_000000_create_user_aliases_table.php b/src/database/migrations/2020_02_26_000000_create_user_aliases_table.php
--- a/src/database/migrations/2020_02_26_000000_create_user_aliases_table.php
+++ b/src/database/migrations/2020_02_26_000000_create_user_aliases_table.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateUserAliasesTable extends Migration
{
/**
diff --git a/src/database/migrations/2020_04_21_100000_create_wallet_settings.php b/src/database/migrations/2020_04_21_100000_create_wallet_settings.php
--- a/src/database/migrations/2020_04_21_100000_create_wallet_settings.php
+++ b/src/database/migrations/2020_04_21_100000_create_wallet_settings.php
@@ -4,6 +4,7 @@
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
+// phpcs:ignore
class CreateWalletSettings extends Migration
{
/**
diff --git a/src/database/seeds/DatabaseSeeder.php b/src/database/seeds/DatabaseSeeder.php
--- a/src/database/seeds/DatabaseSeeder.php
+++ b/src/database/seeds/DatabaseSeeder.php
@@ -2,6 +2,7 @@
use Illuminate\Database\Seeder;
+// phpcs:ignore
class DatabaseSeeder extends Seeder
{
/**
@@ -11,15 +12,26 @@
*/
public function run()
{
- $this->call(
- [
- DiscountSeeder::class,
- DomainSeeder::class,
- SkuSeeder::class,
- PackageSeeder::class,
- PlanSeeder::class,
- UserSeeder::class
- ]
- );
+ // Define seeders order
+ $seeders = [
+ 'DiscountSeeder',
+ 'DomainSeeder',
+ 'SkuSeeder',
+ 'PackageSeeder',
+ 'PlanSeeder',
+ 'UserSeeder'
+ ];
+
+ $env = ucfirst(App::environment());
+
+ // Check if the seeders exists
+ foreach ($seeders as $idx => $name) {
+ $class = "Database\\Seeds\\$env\\$name";
+ $seeders[$idx] = class_exists($class) ? $class : null;
+ }
+
+ $seeders = array_filter($seeders);
+
+ $this->call($seeders);
}
}
diff --git a/src/database/seeds/DiscountSeeder.php b/src/database/seeds/local/DiscountSeeder.php
rename from src/database/seeds/DiscountSeeder.php
rename to src/database/seeds/local/DiscountSeeder.php
--- a/src/database/seeds/DiscountSeeder.php
+++ b/src/database/seeds/local/DiscountSeeder.php
@@ -1,5 +1,7 @@
true,
]
);
-
- Discount::create(
- [
- 'description' => 'Test voucher',
- 'discount' => 10,
- 'active' => true,
- 'code' => 'TEST',
- ]
- );
}
}
diff --git a/src/database/seeds/DomainSeeder.php b/src/database/seeds/production/DomainSeeder.php
rename from src/database/seeds/DomainSeeder.php
rename to src/database/seeds/production/DomainSeeder.php
--- a/src/database/seeds/DomainSeeder.php
+++ b/src/database/seeds/production/DomainSeeder.php
@@ -1,5 +1,7 @@
\config('app.domain'),
- 'status' => DOMAIN::STATUS_CONFIRMED + Domain::STATUS_ACTIVE,
- 'type' => Domain::TYPE_PUBLIC
- ]
- );
- }
-
- $domains = [
- 'example.com',
- 'example.net',
- 'example.org'
- ];
-
- foreach ($domains as $domain) {
- Domain::create(
- [
- 'namespace' => $domain,
- 'status' => Domain::STATUS_CONFIRMED + Domain::STATUS_ACTIVE,
- 'type' => Domain::TYPE_EXTERNAL
- ]
- );
- }
}
}
diff --git a/src/database/seeds/PackageSeeder.php b/src/database/seeds/production/PackageSeeder.php
rename from src/database/seeds/PackageSeeder.php
rename to src/database/seeds/production/PackageSeeder.php
--- a/src/database/seeds/PackageSeeder.php
+++ b/src/database/seeds/production/PackageSeeder.php
@@ -1,10 +1,11 @@
Everything you need to get started or try Kolab Now, including:
+
+ - Perfect for anyone wanting to move to Kolab Now
+ - Suite of online apps: Secure email, calendar, address book, files and more
+ - Access for anywhere: Sync all your devices to your Kolab Now account
+ - Secure hosting: Managed right here on our own servers in Switzerland
+ - Start protecting your data today, no ads, no crawling, no compromise
+ - An ideal replacement for services like Gmail, Office 365, etc…
+
+EOD;
+
+ $plan = Plan::create(
+ [
+ 'title' => 'individual',
+ 'name' => 'Individual Account',
+ 'description' => $description,
+ 'discount_qty' => 0,
+ 'discount_rate' => 0
+ ]
+ );
+
+ $packages = [
+ Package::firstOrCreate(['title' => 'kolab'])
+ ];
+
+ $plan->packages()->saveMany($packages);
+
+ $description = <<<'EOD'
+All the features of the Individual Account, with the following extras:
+
+ - Perfect for anyone wanting to move a group or small business to Kolab Now
+ - Recommended to support users from 1 to 100
+ - Use your own personal domains with Kolab Now
+ - Manage and add users through our online admin area
+ - Flexible pricing based on user count
+
+EOD;
+
+ $plan = Plan::create(
+ [
+ 'title' => 'group',
+ 'name' => 'Group Account',
+ 'description' => $description,
+ 'discount_qty' => 0,
+ 'discount_rate' => 0
+ ]
+ );
+
+ $packages = [
+ Package::firstOrCreate(['title' => 'domain-hosting']),
+ Package::firstOrCreate(['title' => 'kolab']),
+ ];
+
+ $plan->packages()->saveMany($packages);
+ }
+}
diff --git a/src/database/seeds/SkuSeeder.php b/src/database/seeds/production/SkuSeeder.php
rename from src/database/seeds/SkuSeeder.php
rename to src/database/seeds/production/SkuSeeder.php
--- a/src/database/seeds/SkuSeeder.php
+++ b/src/database/seeds/production/SkuSeeder.php
@@ -1,5 +1,7 @@