createdBy fields added

This commit is contained in:
Benjamin Takats
2022-12-15 11:08:03 +01:00
parent 52b2f93c17
commit 362ad81a2b
43 changed files with 381 additions and 22 deletions

View File

@@ -39,6 +39,7 @@ class ReadAndSyncEinundzwanzigPodcastFeed extends Command
'link' => $podcast->feed->link,
'language_code' => $podcast->feed->language,
'data' => $podcast->feed,
'created_by' => 1,
]);
$episodes = $client->episodes->byFeedUrl('https://einundzwanzig.space/feed.xml')
->json();
@@ -47,6 +48,7 @@ class ReadAndSyncEinundzwanzigPodcastFeed extends Command
->updateOrCreate(['guid' => $item->guid], [
'podcast_id' => $einundzwanzigPodcast->id,
'data' => $item,
'created_by' => 1,
]);
}

View File

@@ -49,6 +49,7 @@ class SyncOpenBooks extends Command
'deactreason' => $case['deactreason'],
'entrytype' => $case['entrytype'],
'homepage' => $case['homepage'],
'created_by' => 1,
]
);
}

View File

@@ -51,6 +51,11 @@ class BitcoinEvent extends Model implements HasMedia
->useFallbackUrl(asset('img/einundzwanzig-cover-lesestunde.png'));
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function venue(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Venue::class);

View File

@@ -54,6 +54,11 @@ class BookCase extends Model implements HasMedia
$this->addMediaCollection('images');
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function orangePills(): HasMany
{
return $this->hasMany(OrangePill::class);

View File

@@ -40,6 +40,11 @@ class City extends Model
->usingLanguage('de');
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function country(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Country::class);

View File

@@ -54,6 +54,11 @@ class Course extends Model implements HasMedia
->useFallbackUrl(asset('img/einundzwanzig-cover-lesestunde.png'));
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function categories(): \Illuminate\Database\Eloquent\Relations\BelongsToMany
{
return $this->belongsToMany(Category::class);

View File

@@ -29,6 +29,11 @@ class CourseEvent extends Model
'to' => 'datetime',
];
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function course(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Course::class);

View File

@@ -28,6 +28,11 @@ class Episode extends Model
'data' => 'array',
];
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function podcast(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Podcast::class);

View File

@@ -64,6 +64,11 @@ class Lecturer extends Model implements HasMedia
->usingLanguage('de');
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function team(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Team::class);

View File

@@ -26,6 +26,11 @@ class Library extends Model
'language_codes' => 'array',
];
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function libraryItems(): \Illuminate\Database\Eloquent\Relations\BelongsToMany
{
return $this->belongsToMany(LibraryItem::class);

View File

@@ -59,6 +59,11 @@ class LibraryItem extends Model implements HasMedia, Sortable
->useFallbackUrl(asset('img/einundzwanzig-cover-lesestunde.png'));
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function lecturer(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Lecturer::class);

View File

@@ -48,6 +48,11 @@ class Meetup extends Model implements HasMedia
->useFallbackUrl(asset('img/einundzwanzig-cover-lesestunde.png'));
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function city(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(City::class);

View File

@@ -27,6 +27,11 @@ class MeetupEvent extends Model
'start' => 'datetime',
];
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function meetup(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(Meetup::class);

View File

@@ -25,6 +25,11 @@ class Podcast extends Model
'data' => 'array',
];
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function episodes(): HasMany
{
return $this->hasMany(Episode::class);

View File

@@ -63,6 +63,11 @@ class Venue extends Model implements HasMedia
->usingLanguage('de');
}
public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
public function city(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(City::class);

View File

@@ -66,6 +66,8 @@ class BitcoinEvent extends Resource
BelongsTo::make(__('Venue'), 'venue', Venue::class)->searchable(),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -3,6 +3,7 @@
namespace App\Nova;
use Illuminate\Http\Request;
use Laravel\Nova\Fields\BelongsTo;
use Laravel\Nova\Fields\Boolean;
use Laravel\Nova\Fields\HasMany;
use Laravel\Nova\Fields\ID;
@@ -112,6 +113,8 @@ class BookCase extends Resource
MorphMany::make(__('Comments'), 'comments', Comment::class),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -75,6 +75,8 @@ class City extends Resource
HasMany::make(__('Meetups'), 'meetups', Meetup::class),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -98,6 +98,8 @@ class Course extends Resource
BelongsToMany::make(__('Categories'), 'categories', Category::class)
->onlyOnDetail(),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -79,6 +79,8 @@ class CourseEvent extends Resource
BelongsTo::make(__('Venue'), 'venue', Venue::class)
->searchable(),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -52,7 +52,6 @@ class Episode extends Resource
'language_code' => $model->podcast->language_code,
'value' => null,
]);
ray($request->tags);
$libraryItem->syncTagsWithType(is_array($request->tags) ? $request->tags : str($request->tags)->explode('-----'),
'library_item');
$libraryItem->addMediaFromUrl($model->data['image'])
@@ -103,6 +102,8 @@ class Episode extends Resource
BelongsTo::make(__('Podcast'), 'podcast', Podcast::class)
->readonly(),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -86,6 +86,8 @@ class Lecturer extends Resource
BelongsTo::make('Team'),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -3,6 +3,7 @@
namespace App\Nova;
use Illuminate\Http\Request;
use Laravel\Nova\Fields\BelongsTo;
use Laravel\Nova\Fields\BelongsToMany;
use Laravel\Nova\Fields\Boolean;
use Laravel\Nova\Fields\ID;
@@ -62,6 +63,9 @@ class Library extends Resource
),
BelongsToMany::make('Library Items'),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -95,6 +95,8 @@ class LibraryItem extends Resource
BelongsToMany::make(__('Library'), 'libraries', Library::class),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -56,6 +56,8 @@ class Meetup extends Resource
BelongsTo::make(__('City'), 'city', City::class)->searchable(),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -62,6 +62,8 @@ class MeetupEvent extends Resource
BelongsTo::make('Meetup')
->searchable(),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -5,6 +5,7 @@ namespace App\Nova;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
use Laravel\Nova\Fields\Avatar;
use Laravel\Nova\Fields\BelongsTo;
use Laravel\Nova\Fields\Boolean;
use Laravel\Nova\Fields\Code;
use Laravel\Nova\Fields\HasMany;
@@ -80,6 +81,9 @@ class Podcast extends Resource
->json(),
HasMany::make(__('Episodes'), 'episodes', Episode::class),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -63,6 +63,8 @@ class Venue extends Resource
BelongsTo::make(__('City'), 'city', City::class),
BelongsTo::make(__('Created By'), 'createdBy', User::class),
];
}

View File

@@ -16,7 +16,7 @@ class BasePolicy
*/
public function before(User $user, $ability)
{
if ($user->hasRole('super-admin') || app()->environment('local')) {
if ($user->hasRole('super-admin') || config('app.super-admin')) {
return true;
}
}

View File

@@ -0,0 +1,101 @@
<?php
namespace App\Policies;
use App\Models\BitcoinEvent;
use App\Models\User;
use Illuminate\Auth\Access\HandlesAuthorization;
class BitcoinEventPolicy extends BasePolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any models.
*
* @param \App\Models\User $user
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function viewAny(User $user)
{
return true;
}
/**
* Determine whether the user can view the model.
*
* @param \App\Models\User $user
* @param \App\Models\BitcoinEvent $bitcoinEvent
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function view(User $user, BitcoinEvent $bitcoinEvent)
{
return true;
}
/**
* Determine whether the user can create models.
*
* @param \App\Models\User $user
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function create(User $user)
{
return true;
}
/**
* Determine whether the user can update the model.
*
* @param \App\Models\User $user
* @param \App\Models\BitcoinEvent $bitcoinEvent
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function update(User $user, BitcoinEvent $bitcoinEvent)
{
return $bitcoinEvent->created_by === $user->id;
}
/**
* Determine whether the user can delete the model.
*
* @param \App\Models\User $user
* @param \App\Models\BitcoinEvent $bitcoinEvent
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function delete(User $user, BitcoinEvent $bitcoinEvent)
{
//
}
/**
* Determine whether the user can restore the model.
*
* @param \App\Models\User $user
* @param \App\Models\BitcoinEvent $bitcoinEvent
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function restore(User $user, BitcoinEvent $bitcoinEvent)
{
//
}
/**
* Determine whether the user can permanently delete the model.
*
* @param \App\Models\User $user
* @param \App\Models\BitcoinEvent $bitcoinEvent
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function forceDelete(User $user, BitcoinEvent $bitcoinEvent)
{
//
}
}

View File

@@ -53,7 +53,7 @@ class CityPolicy extends BasePolicy
*/
public function update(User $user, City $city)
{
return $user->is_lecturer;
return $city->created_by === $user->id;
}
/**

View File

@@ -57,7 +57,7 @@ class LecturerPolicy extends BasePolicy
*/
public function update(User $user, Lecturer $lecturer)
{
return $user->belongsToTeam($lecturer->team);
return $lecturer->created_by === $user->id;
}
/**

View File

@@ -53,7 +53,7 @@ class LibraryItemPolicy extends BasePolicy
*/
public function update(User $user, LibraryItem $libraryItem)
{
return false;
return $libraryItem->created_by === $user->id;
}
/**

View File

@@ -53,7 +53,7 @@ class LibraryPolicy extends BasePolicy
*/
public function update(User $user, Library $library)
{
return false;
return $library->created_by === $user->id;
}
/**

View File

@@ -53,7 +53,7 @@ class MeetupEventPolicy extends BasePolicy
*/
public function update(User $user, MeetupEvent $meetupEvent)
{
return false;
return $meetupEvent->created_by === $user->id;
}
/**

View File

@@ -57,7 +57,7 @@ class MeetupPolicy extends BasePolicy
*/
public function update(User $user, Meetup $meetup)
{
return false;
return $meetup->created_by === $user->id;
}
/**

View File

@@ -14,6 +14,7 @@ class OrangePillPolicy extends BasePolicy
* Determine whether the user can view any models.
*
* @param \App\Models\User $user
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function viewAny(User $user)
@@ -26,6 +27,7 @@ class OrangePillPolicy extends BasePolicy
*
* @param \App\Models\User $user
* @param \App\Models\OrangePill $orangePill
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function view(User $user, OrangePill $orangePill)
@@ -37,6 +39,7 @@ class OrangePillPolicy extends BasePolicy
* Determine whether the user can create models.
*
* @param \App\Models\User $user
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function create(User $user)
@@ -49,11 +52,12 @@ class OrangePillPolicy extends BasePolicy
*
* @param \App\Models\User $user
* @param \App\Models\OrangePill $orangePill
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function update(User $user, OrangePill $orangePill)
{
return false;
return $orangePill->user_id === $user->id;
}
/**
@@ -61,6 +65,7 @@ class OrangePillPolicy extends BasePolicy
*
* @param \App\Models\User $user
* @param \App\Models\OrangePill $orangePill
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function delete(User $user, OrangePill $orangePill)
@@ -73,6 +78,7 @@ class OrangePillPolicy extends BasePolicy
*
* @param \App\Models\User $user
* @param \App\Models\OrangePill $orangePill
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function restore(User $user, OrangePill $orangePill)
@@ -85,6 +91,7 @@ class OrangePillPolicy extends BasePolicy
*
* @param \App\Models\User $user
* @param \App\Models\OrangePill $orangePill
*
* @return \Illuminate\Auth\Access\Response|bool
*/
public function forceDelete(User $user, OrangePill $orangePill)

View File

@@ -57,8 +57,7 @@ class VenuePolicy extends BasePolicy
*/
public function update(User $user, Venue $venue)
{
return $venue->lecturers->where('team_id', $user->current_team_id)
->isNotEmpty();
return $venue->created_by === $user->id;
}
/**

22
composer.lock generated
View File

@@ -13011,16 +13011,16 @@
},
{
"name": "laravel-lang/lang",
"version": "12.7.0",
"version": "12.7.2",
"source": {
"type": "git",
"url": "https://github.com/Laravel-Lang/lang.git",
"reference": "d900bc6dc001a8ca63cc13184c0720d4262e0d23"
"reference": "839ce5d81cd4a8deda5c09bb74af995371345c5b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Laravel-Lang/lang/zipball/d900bc6dc001a8ca63cc13184c0720d4262e0d23",
"reference": "d900bc6dc001a8ca63cc13184c0720d4262e0d23",
"url": "https://api.github.com/repos/Laravel-Lang/lang/zipball/839ce5d81cd4a8deda5c09bb74af995371345c5b",
"reference": "839ce5d81cd4a8deda5c09bb74af995371345c5b",
"shasum": ""
},
"require": {
@@ -13082,7 +13082,7 @@
"type": "open_collective"
}
],
"time": "2022-12-14T07:53:56+00:00"
"time": "2022-12-14T13:47:21+00:00"
},
{
"name": "laravel-lang/publisher",
@@ -13820,16 +13820,16 @@
},
{
"name": "phpunit/php-code-coverage",
"version": "9.2.20",
"version": "9.2.21",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
"reference": "af7463c955007de36db0c5e26d03e2f933c2e980"
"reference": "3f893e19712bb0c8bc86665d1562e9fd509c4ef0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/af7463c955007de36db0c5e26d03e2f933c2e980",
"reference": "af7463c955007de36db0c5e26d03e2f933c2e980",
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/3f893e19712bb0c8bc86665d1562e9fd509c4ef0",
"reference": "3f893e19712bb0c8bc86665d1562e9fd509c4ef0",
"shasum": ""
},
"require": {
@@ -13885,7 +13885,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.20"
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.21"
},
"funding": [
{
@@ -13893,7 +13893,7 @@
"type": "github"
}
],
"time": "2022-12-13T07:49:28+00:00"
"time": "2022-12-14T13:26:54+00:00"
},
{
"name": "phpunit/php-file-iterator",

View File

@@ -4,6 +4,8 @@ use Illuminate\Support\Facades\Facade;
return [
'super-admin' => env('SUPERADMIN', false),
/*
|--------------------------------------------------------------------------
| Application Name

View File

@@ -0,0 +1,117 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration {
/**
* Run the migrations.
* @return void
*/
public function up()
{
Schema::table('cities', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('venues', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('lecturers', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('meetups', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('meetup_events', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('bitcoin_events', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('courses', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('course_events', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('libraries', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('library_items', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('podcasts', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('episodes', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
Schema::table('book_cases', function (Blueprint $table) {
$table->foreignId('created_by')
->default(1)
->constrained('users')
->cascadeOnDelete()
->cascadeOnUpdate();
});
}
/**
* Reverse the migrations.
* @return void
*/
public function down()
{
Schema::table('cities', function (Blueprint $table) {
//
});
}
};

View File

@@ -81,70 +81,83 @@ class DatabaseSeeder extends Seeder
'name' => 'Füssen',
'latitude' => 47.57143,
'longitude' => 10.70171,
'created_by' => 1,
]);
City::create([
'country_id' => 1,
'name' => 'Kempten',
'latitude' => 47.728569,
'longitude' => 10.315784,
'created_by' => 1,
]);
City::create([
'country_id' => 1,
'name' => 'Pfronten',
'latitude' => 47.582359,
'longitude' => 10.5598,
'created_by' => 1,
]);
City::create([
'country_id' => 2,
'name' => 'Wien',
'latitude' => 48.20835,
'longitude' => 16.37250,
'created_by' => 1,
]);
City::create([
'country_id' => 3,
'name' => 'Zürich',
'latitude' => 47.41330,
'longitude' => 8.65639,
'created_by' => 1,
]);
Venue::create([
'city_id' => 1,
'name' => 'The Blue Studio Coworking (Füssen)',
'street' => 'Teststraße 1',
'created_by' => 1,
]);
Venue::create([
'city_id' => 2,
'name' => 'The Blue Studio Coworking (Kempten)',
'street' => 'Teststraße 2',
'created_by' => 1,
]);
Venue::create([
'city_id' => 3,
'name' => 'The Blue Studio Coworking (Pfronten)',
'street' => 'Teststraße 3',
'created_by' => 1,
]);
Venue::create([
'city_id' => 4,
'name' => 'Innsbruck',
'street' => 'Innsbrucker Straße 1',
'created_by' => 1,
]);
Lecturer::create([
'team_id' => 1,
'name' => 'Markus Turm',
'active' => true,
'created_by' => 1,
]);
Lecturer::create([
'team_id' => 1,
'name' => 'Beppo',
'active' => true,
'created_by' => 1,
]);
Lecturer::create([
'team_id' => 1,
'name' => 'Helper',
'active' => true,
'created_by' => 1,
]);
Lecturer::create([
'team_id' => 1,
'name' => 'Gigi',
'active' => true,
'created_by' => 1,
]);
$category = Category::create([
'name' => 'Präsenzunterricht',
@@ -157,6 +170,7 @@ class DatabaseSeeder extends Seeder
$course = Course::create([
'lecturer_id' => 1,
'name' => 'Hands on Bitcoin',
'created_by' => 1,
]);
$course->syncTagsWithType(['Hardware Wallet'], 'course');
$course->categories()
@@ -164,6 +178,7 @@ class DatabaseSeeder extends Seeder
$course = Course::create([
'lecturer_id' => 1,
'name' => 'Bitcoin <> Crypto',
'created_by' => 1,
]);
$course->syncTagsWithType(['Lightning'], 'course');
$course->categories()
@@ -171,6 +186,7 @@ class DatabaseSeeder extends Seeder
$course = Course::create([
'lecturer_id' => 2,
'name' => 'Bitcoin Lightning Network',
'created_by' => 1,
]);
$course->syncTagsWithType(['Für Unternehmen'], 'course');
$course->categories()
@@ -190,6 +206,7 @@ class DatabaseSeeder extends Seeder
->addDays(14)
->startOfDay()
->addHour(),
'created_by' => 1,
]);
CourseEvent::create([
'course_id' => 1,
@@ -202,6 +219,7 @@ class DatabaseSeeder extends Seeder
->addDays(3)
->startOfDay()
->addHour(),
'created_by' => 1,
]);
CourseEvent::create([
'course_id' => 1,
@@ -214,6 +232,7 @@ class DatabaseSeeder extends Seeder
->addDays(4)
->startOfDay()
->addHour(),
'created_by' => 1,
]);
CourseEvent::create([
'course_id' => 3,
@@ -226,6 +245,7 @@ class DatabaseSeeder extends Seeder
->addDays(4)
->startOfDay()
->addHour(),
'created_by' => 1,
]);
Registration::create([
'course_event_id' => 1,
@@ -234,6 +254,7 @@ class DatabaseSeeder extends Seeder
$library = Library::create([
'name' => 'Einundzwanzig',
'language_codes' => ['de'],
'created_by' => 1,
]);
$libraryItem = LibraryItem::create([
'lecturer_id' => 3,
@@ -241,6 +262,7 @@ class DatabaseSeeder extends Seeder
'type' => 'youtube_video',
'language_code' => 'de',
'value' => 'https://www.youtube.com/watch?v=Oztd2Sja4k0',
'created_by' => 1,
]);
$libraryItem->syncTagsWithType(['Bitcoin'], 'library_item');
$library->libraryItems()
@@ -248,6 +270,7 @@ class DatabaseSeeder extends Seeder
$library = Library::create([
'name' => 'Apricot',
'language_codes' => ['de', 'en'],
'created_by' => 1,
]);
$libraryItem = LibraryItem::create([
'lecturer_id' => 4,
@@ -255,6 +278,7 @@ class DatabaseSeeder extends Seeder
'type' => 'blog_article',
'language_code' => 'de',
'value' => 'https://aprycot.media/blog/liebe-krypto-und-fiat-bros/',
'created_by' => 1,
]);
$libraryItem->syncTagsWithType(['Bitcoin'], 'library_item');
$library->libraryItems()
@@ -262,6 +286,7 @@ class DatabaseSeeder extends Seeder
$library = Library::create([
'name' => 'Gigi',
'language_codes' => ['de', 'en'],
'created_by' => 1,
]);
$libraryItem = LibraryItem::create([
'lecturer_id' => 4,
@@ -269,6 +294,7 @@ class DatabaseSeeder extends Seeder
'type' => 'youtube_video',
'language_code' => 'de',
'value' => 'https://www.youtube.com/watch?v=C7ynm0Zkwfk',
'created_by' => 1,
]);
$libraryItem->syncTagsWithType(['Proof of Work'], 'library_item');
$library->libraryItems()
@@ -277,6 +303,7 @@ class DatabaseSeeder extends Seeder
'name' => 'Einundzwanzig Dozenten',
'is_public' => false,
'language_codes' => ['de', 'en'],
'created_by' => 1,
]);
$libraryItem = LibraryItem::create([
'lecturer_id' => 4,
@@ -284,6 +311,7 @@ class DatabaseSeeder extends Seeder
'type' => 'downloadable_file',
'language_code' => 'de',
'value' => null,
'created_by' => 1,
]);
$libraryItem->syncTagsWithType(['Präsentationen'], 'library_item');
$nonPublicLibrary->libraryItems()
@@ -294,6 +322,7 @@ class DatabaseSeeder extends Seeder
'city_id' => 1,
'name' => 'Einundzwanzig Kempten',
'link' => 'https://t.me/EinundzwanzigKempten',
'created_by' => 1,
]);
MeetupEvent::create([
'meetup_id' => 1,
@@ -304,6 +333,7 @@ class DatabaseSeeder extends Seeder
'location' => 'Einundzwanzig Kempten',
'description' => fake()->text(),
'link' => 'https://t.me/EinundzwanzigKempten',
'created_by' => 1,
]);
BitcoinEvent::create([
'venue_id' => 4,
@@ -321,6 +351,7 @@ Advance ticket sales begin on December 21, 2022 at 9:21 p.m. with time-limited e
Ticket presale begins on December 21, 2022 at 9:21 p.m. Be quick - there are a limited amount of early bird tickets again.
',
'link' => 'https://bconf.de/en/',
'created_by' => 1,
]);
}
}

View File

@@ -0,0 +1,4 @@
models:
Item:
name: string:unique
link: string