event photo wasserzeichen umgesetzt. Event admins können eigene einsetzen (als branding) falls das Paket es erlaubt. der Super Admin kann für die günstigen Pakete eigene Wasserzeichen erzwingen
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::table('events', function (Blueprint $table) {
|
||||
if (! Schema::hasColumn('events', 'settings')) {
|
||||
$table->json('settings')->nullable()->after('max_participants');
|
||||
}
|
||||
|
||||
$table->boolean('watermark_serve_originals')->default(false)->after('photobooth_metadata');
|
||||
$table->json('watermark_settings')->nullable()->after('photobooth_metadata');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::table('events', function (Blueprint $table) {
|
||||
$table->dropColumn(['watermark_settings', 'watermark_serve_originals']);
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration
|
||||
{
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('watermark_settings', function (Blueprint $table) {
|
||||
$table->id();
|
||||
$table->string('asset')->nullable();
|
||||
$table->string('position')->default('bottom-right');
|
||||
$table->float('opacity')->default(0.25);
|
||||
$table->float('scale')->default(0.2);
|
||||
$table->unsignedInteger('padding')->default(16);
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('watermark_settings');
|
||||
}
|
||||
};
|
||||
@@ -30,7 +30,7 @@ class PackageSeeder extends Seeder
|
||||
'max_tasks' => 30,
|
||||
'watermark_allowed' => true,
|
||||
'branding_allowed' => false,
|
||||
'features' => ['basic_uploads', 'limited_sharing', 'custom_tasks'],
|
||||
'features' => ['basic_uploads', 'custom_tasks'],
|
||||
'paddle_product_id' => 'pro_01k8jcxx2g1vj9snqbga4283ej',
|
||||
'paddle_price_id' => 'pri_01k8jcxx8qktxvqzzv0nkjjj27',
|
||||
'description' => <<<TEXT
|
||||
@@ -63,7 +63,7 @@ TEXT,
|
||||
'max_tasks' => 100,
|
||||
'watermark_allowed' => false,
|
||||
'branding_allowed' => true,
|
||||
'features' => ['basic_uploads', 'unlimited_sharing', 'no_watermark', 'custom_branding', 'custom_tasks'],
|
||||
'features' => ['basic_uploads', 'custom_branding', 'custom_tasks'],
|
||||
'paddle_product_id' => 'pro_01k8jcxwjv4ne8vf9pvd9bye3j',
|
||||
'paddle_price_id' => 'pri_01k8jcxws51pze5xc3vj2ea0yc',
|
||||
'description' => <<<TEXT
|
||||
@@ -96,7 +96,7 @@ TEXT,
|
||||
'max_tasks' => 200,
|
||||
'watermark_allowed' => false,
|
||||
'branding_allowed' => true,
|
||||
'features' => ['basic_uploads', 'unlimited_sharing', 'no_watermark', 'custom_branding', 'advanced_analytics', 'live_slideshow', 'priority_support'],
|
||||
'features' => ['basic_uploads', 'custom_branding', 'advanced_analytics', 'live_slideshow', 'priority_support'],
|
||||
'paddle_product_id' => 'pro_01k8jcxvwp38gay6jj2akjg76s',
|
||||
'paddle_price_id' => 'pri_01k8jcxw5sap4r306wcvc0ephy',
|
||||
'description' => <<<TEXT
|
||||
@@ -129,7 +129,7 @@ TEXT,
|
||||
'max_tasks' => null,
|
||||
'watermark_allowed' => true,
|
||||
'branding_allowed' => false,
|
||||
'features' => ['basic_uploads', 'unlimited_sharing', 'no_watermark', 'custom_branding', 'custom_tasks'],
|
||||
'features' => ['basic_uploads', 'unlimited_sharing', 'custom_branding', 'custom_tasks'],
|
||||
'paddle_product_id' => 'pro_01k8jcxsmxrs45v1qvtpsepn13',
|
||||
'paddle_price_id' => 'pri_01k8jcxswh74jv8vy5q7a4h70p',
|
||||
'description' => null,
|
||||
|
||||
@@ -40,10 +40,11 @@ class DemoLifecycleSeeder extends Seeder
|
||||
'max_photos' => 1500,
|
||||
'max_guests' => 400,
|
||||
'gallery_days' => 60,
|
||||
'watermark_allowed' => false,
|
||||
'branding_allowed' => false,
|
||||
'features' => [
|
||||
'basic_uploads' => true,
|
||||
'unlimited_sharing' => true,
|
||||
'no_watermark' => true,
|
||||
'custom_tasks' => true,
|
||||
],
|
||||
]
|
||||
@@ -59,10 +60,11 @@ class DemoLifecycleSeeder extends Seeder
|
||||
'max_photos' => 5000,
|
||||
'max_guests' => 1000,
|
||||
'gallery_days' => 180,
|
||||
'watermark_allowed' => false,
|
||||
'branding_allowed' => true,
|
||||
'features' => [
|
||||
'basic_uploads' => true,
|
||||
'unlimited_sharing' => true,
|
||||
'no_watermark' => true,
|
||||
'custom_branding' => true,
|
||||
'custom_tasks' => true,
|
||||
],
|
||||
@@ -77,6 +79,8 @@ class DemoLifecycleSeeder extends Seeder
|
||||
'name_translations' => ['de' => 'Studio Jahrespaket', 'en' => 'Studio Annual'],
|
||||
'price' => 1299,
|
||||
'max_events_per_year' => 24,
|
||||
'watermark_allowed' => false,
|
||||
'branding_allowed' => true,
|
||||
'features' => [
|
||||
'custom_branding' => true,
|
||||
'unlimited_sharing' => true,
|
||||
|
||||
Reference in New Issue
Block a user