mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig-portal.git
synced 2025-12-11 06:46:47 +00:00
guarded instead of fillable
This commit is contained in:
24
.blueprint
24
.blueprint
@@ -8,16 +8,16 @@ created:
|
||||
- database/factories/VenueFactory.php
|
||||
- database/factories/EventFactory.php
|
||||
- database/factories/RegistrationFactory.php
|
||||
- database/migrations/2022_12_01_100450_create_countries_table.php
|
||||
- database/migrations/2022_12_01_100451_create_cities_table.php
|
||||
- database/migrations/2022_12_01_100452_create_lecturers_table.php
|
||||
- database/migrations/2022_12_01_100453_create_participants_table.php
|
||||
- database/migrations/2022_12_01_100454_create_categories_table.php
|
||||
- database/migrations/2022_12_01_100455_create_courses_table.php
|
||||
- database/migrations/2022_12_01_100456_create_venues_table.php
|
||||
- database/migrations/2022_12_01_100457_create_events_table.php
|
||||
- database/migrations/2022_12_01_100458_create_registrations_table.php
|
||||
- database/migrations/2022_12_01_100459_create_category_course_table.php
|
||||
- database/migrations/2022_12_01_145948_create_countries_table.php
|
||||
- database/migrations/2022_12_01_145949_create_cities_table.php
|
||||
- database/migrations/2022_12_01_145950_create_lecturers_table.php
|
||||
- database/migrations/2022_12_01_145951_create_participants_table.php
|
||||
- database/migrations/2022_12_01_145952_create_categories_table.php
|
||||
- database/migrations/2022_12_01_145953_create_courses_table.php
|
||||
- database/migrations/2022_12_01_145954_create_venues_table.php
|
||||
- database/migrations/2022_12_01_145955_create_events_table.php
|
||||
- database/migrations/2022_12_01_145956_create_registrations_table.php
|
||||
- database/migrations/2022_12_01_145957_create_category_course_table.php
|
||||
- app/Models/Country.php
|
||||
- app/Models/City.php
|
||||
- app/Models/Lecturer.php
|
||||
@@ -40,9 +40,9 @@ models:
|
||||
Membership: { team_id: biginteger, user_id: biginteger, role: 'string nullable' }
|
||||
Team: { user_id: biginteger, name: string, personal_team: boolean }
|
||||
TeamInvitation: { team_id: biginteger, email: string, role: 'string nullable' }
|
||||
User: { name: string, email: string, email_verified_at: 'datetime nullable', password: string, remember_token: 'string:100 nullable', current_team_id: 'biginteger nullable', profile_photo_path: 'string:2048 nullable', two_factor_secret: 'text nullable', two_factor_recovery_codes: 'text nullable', two_factor_confirmed_at: 'datetime nullable' }
|
||||
User: { name: string, email: string, email_verified_at: 'datetime nullable', password: string, remember_token: 'string:100 nullable', current_team_id: 'biginteger nullable', profile_photo_path: 'string:2048 nullable', is_lecturer: 'boolean default:', two_factor_secret: 'text nullable', two_factor_recovery_codes: 'text nullable', two_factor_confirmed_at: 'datetime nullable' }
|
||||
Country: { name: string, code: string, relationships: { hasMany: City } }
|
||||
City: { country_id: 'id foreign', name: string }
|
||||
City: { country_id: 'id foreign', name: string, slug: 'string unique' }
|
||||
Lecturer: { team_id: 'id foreign', name: string, slug: 'string unique', active: 'boolean default:true' }
|
||||
Participant: { first_name: string, last_name: string }
|
||||
Category: { name: string, slug: 'string unique', relationships: { belongsToMany: Course } }
|
||||
|
||||
@@ -10,14 +10,11 @@ class Category extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'name',
|
||||
'slug',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -4,31 +4,40 @@ namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Spatie\Sluggable\HasSlug;
|
||||
use Spatie\Sluggable\SlugOptions;
|
||||
|
||||
class City extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
use HasSlug;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
*
|
||||
* The attributes that aren't mass assignable.
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'country_id',
|
||||
'name',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $casts = [
|
||||
'id' => 'integer',
|
||||
'id' => 'integer',
|
||||
'country_id' => 'integer',
|
||||
];
|
||||
|
||||
/**
|
||||
* Get the options for generating the slug.
|
||||
*/
|
||||
public function getSlugOptions(): SlugOptions
|
||||
{
|
||||
return SlugOptions::create()
|
||||
->generateSlugsFrom('name')
|
||||
->saveSlugsTo('slug')
|
||||
->usingLanguage('de');
|
||||
}
|
||||
|
||||
public function country(): \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
{
|
||||
return $this->belongsTo(Country::class);
|
||||
|
||||
@@ -10,14 +10,11 @@ class Country extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'name',
|
||||
'code',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -10,14 +10,11 @@ class Course extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'lecturer_id',
|
||||
'name',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -10,16 +10,11 @@ class Event extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'course_id',
|
||||
'venue_id',
|
||||
'from',
|
||||
'to',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -10,16 +10,11 @@ class Lecturer extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'team_id',
|
||||
'name',
|
||||
'slug',
|
||||
'active',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -10,14 +10,11 @@ class Participant extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'first_name',
|
||||
'last_name',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -10,15 +10,11 @@ class Registration extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'event_id',
|
||||
'participant_id',
|
||||
'active',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -10,16 +10,11 @@ class Venue extends Model
|
||||
use HasFactory;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
* The attributes that aren't mass assignable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'city_id',
|
||||
'name',
|
||||
'slug',
|
||||
'street',
|
||||
];
|
||||
protected $guarded = [];
|
||||
|
||||
/**
|
||||
* The attributes that should be cast to native types.
|
||||
|
||||
@@ -9,8 +9,6 @@ use Laravel\Nova\Fields\BelongsToMany;
|
||||
|
||||
class Category extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -34,11 +32,6 @@ class Category extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Categories');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -2,52 +2,53 @@
|
||||
|
||||
namespace App\Nova;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\BelongsTo;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\Text;
|
||||
use Laravel\Nova\Fields\BelongsTo;
|
||||
|
||||
class City extends Resource
|
||||
{
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
public static $model = \App\Models\City::class;
|
||||
|
||||
/**
|
||||
* The single value that should be used to represent the resource when being displayed.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
public static $title = 'id';
|
||||
|
||||
/**
|
||||
* The columns that should be searched.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
public static $search = [
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Cities');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function fields(Request $request)
|
||||
{
|
||||
return [
|
||||
ID::make()
|
||||
->sortable(),
|
||||
ID::make()->sortable(),
|
||||
|
||||
Text::make('Name')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Text::make('Slug')
|
||||
->rules('required', 'string', 'unique:cities,slug'),
|
||||
|
||||
BelongsTo::make('Country'),
|
||||
|
||||
|
||||
@@ -58,7 +59,6 @@ class City extends Resource
|
||||
* Get the cards available for the request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function cards(Request $request)
|
||||
@@ -70,7 +70,6 @@ class City extends Resource
|
||||
* Get the filters available for the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function filters(Request $request)
|
||||
@@ -82,7 +81,6 @@ class City extends Resource
|
||||
* Get the lenses available for the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function lenses(Request $request)
|
||||
@@ -94,7 +92,6 @@ class City extends Resource
|
||||
* Get the actions available for the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function actions(Request $request)
|
||||
|
||||
@@ -9,8 +9,6 @@ use Laravel\Nova\Fields\HasMany;
|
||||
|
||||
class Country extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -34,11 +32,6 @@ class Country extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Countries');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -10,8 +10,6 @@ use Laravel\Nova\Fields\BelongsToMany;
|
||||
|
||||
class Course extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -35,11 +33,6 @@ class Course extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Courses');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -9,8 +9,6 @@ use Laravel\Nova\Fields\BelongsTo;
|
||||
|
||||
class Event extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -34,11 +32,6 @@ class Event extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Events');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -10,8 +10,6 @@ use Laravel\Nova\Fields\BelongsTo;
|
||||
|
||||
class Lecturer extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -35,11 +33,6 @@ class Lecturer extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Lecturers');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -8,8 +8,6 @@ use Laravel\Nova\Fields\Text;
|
||||
|
||||
class Participant extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -33,11 +31,6 @@ class Participant extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Participants');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -9,8 +9,6 @@ use Laravel\Nova\Fields\BelongsTo;
|
||||
|
||||
class Registration extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -34,11 +32,6 @@ class Registration extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Registrations');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -9,8 +9,6 @@ use Laravel\Nova\Fields\BelongsTo;
|
||||
|
||||
class Venue extends Resource
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
@@ -34,11 +32,6 @@ class Venue extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
public static function label()
|
||||
{
|
||||
return __('Venues');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -14,6 +14,7 @@ class TeamPolicy
|
||||
* Determine whether the user can view any models.
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function viewAny(User $user)
|
||||
@@ -26,6 +27,7 @@ class TeamPolicy
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
* @param \App\Models\Team $team
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function view(User $user, Team $team)
|
||||
@@ -37,11 +39,12 @@ class TeamPolicy
|
||||
* Determine whether the user can create models.
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function create(User $user)
|
||||
{
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -49,6 +52,7 @@ class TeamPolicy
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
* @param \App\Models\Team $team
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function update(User $user, Team $team)
|
||||
@@ -61,6 +65,7 @@ class TeamPolicy
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
* @param \App\Models\Team $team
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function addTeamMember(User $user, Team $team)
|
||||
@@ -73,6 +78,7 @@ class TeamPolicy
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
* @param \App\Models\Team $team
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function updateTeamMember(User $user, Team $team)
|
||||
@@ -85,6 +91,7 @@ class TeamPolicy
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
* @param \App\Models\Team $team
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function removeTeamMember(User $user, Team $team)
|
||||
@@ -97,10 +104,12 @@ class TeamPolicy
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
* @param \App\Models\Team $team
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function delete(User $user, Team $team)
|
||||
{
|
||||
return $user->ownsTeam($team);
|
||||
// return $user->ownsTeam($team);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ return [
|
||||
| generated "unguarded" models.
|
||||
|
|
||||
*/
|
||||
'use_guarded' => false,
|
||||
'use_guarded' => true,
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
||||
@@ -104,6 +104,7 @@ return [
|
||||
DispatchServingNovaEvent::class,
|
||||
BootTools::class,
|
||||
\Itsmejoshua\Novaspatiepermissions\ForgetCachedPermissions::class,
|
||||
'verified'
|
||||
],
|
||||
|
||||
'api_middleware' => [
|
||||
|
||||
@@ -26,6 +26,7 @@ class CityFactory extends Factory
|
||||
return [
|
||||
'country_id' => Country::factory(),
|
||||
'name' => $this->faker->name,
|
||||
'slug' => $this->faker->slug,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ class CreateCitiesTable extends Migration
|
||||
$table->id();
|
||||
$table->foreignId('country_id')->constrained()->cascadeOnDelete()->cascadeOnUpdate();
|
||||
$table->string('name');
|
||||
$table->string('slug')->unique();
|
||||
$table->timestamps();
|
||||
});
|
||||
|
||||
@@ -59,14 +59,17 @@ class DatabaseSeeder extends Seeder
|
||||
City::create([
|
||||
'country_id' => 1,
|
||||
'name' => 'Füssen',
|
||||
'slug' => str('Füssen')->slug('-', 'de'),
|
||||
]);
|
||||
City::create([
|
||||
'country_id' => 2,
|
||||
'name' => 'Wien',
|
||||
'slug' => str('Wien')->slug('-', 'de'),
|
||||
]);
|
||||
City::create([
|
||||
'country_id' => 3,
|
||||
'name' => 'Zürich',
|
||||
'slug' => str('Zürich')->slug('-', 'de'),
|
||||
]);
|
||||
Venue::create([
|
||||
'city_id' => 1,
|
||||
|
||||
@@ -7,6 +7,7 @@ models:
|
||||
City:
|
||||
country_id: id foreign
|
||||
name: string
|
||||
slug: string unique
|
||||
Lecturer:
|
||||
team_id: id foreign
|
||||
name: string
|
||||
|
||||
58
nova-components/Start/dist/js/card.js
vendored
58
nova-components/Start/dist/js/card.js
vendored
@@ -19,32 +19,24 @@ __webpack_require__.r(__webpack_exports__);
|
||||
},
|
||||
methods: {
|
||||
link: function link(path) {
|
||||
return "https://nova.laravel.com/docs/".concat(this.version, "/").concat(path);
|
||||
return "/nova/".concat(path);
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
resources: function resources() {
|
||||
return this.link('resources');
|
||||
cities: function cities() {
|
||||
return this.link('resources/cities');
|
||||
},
|
||||
actions: function actions() {
|
||||
return this.link('actions/defining-actions.html');
|
||||
venues: function venues() {
|
||||
return this.link('resources/venues');
|
||||
},
|
||||
filters: function filters() {
|
||||
return this.link('filters/defining-filters.html');
|
||||
lecturers: function lecturers() {
|
||||
return this.link('resources/lecturers');
|
||||
},
|
||||
lenses: function lenses() {
|
||||
return this.link('lenses/defining-lenses.html');
|
||||
courses: function courses() {
|
||||
return this.link('resources/courses');
|
||||
},
|
||||
metrics: function metrics() {
|
||||
return this.link('metrics/defining-metrics.html');
|
||||
},
|
||||
cards: function cards() {
|
||||
return this.link('customization/cards.html');
|
||||
},
|
||||
version: function version() {
|
||||
var parts = Nova.config('version').split('.');
|
||||
parts.splice(-2);
|
||||
return "".concat(parts, ".0");
|
||||
events: function events() {
|
||||
return this.link('resources/events');
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -142,7 +134,10 @@ var _hoisted_25 = {
|
||||
var _hoisted_26 = {
|
||||
"class": "md:border-b-0 border-b border-gray-200 dark:border-gray-700"
|
||||
};
|
||||
var _hoisted_27 = ["href"];
|
||||
var _hoisted_27 = {
|
||||
href: "#",
|
||||
"class": "no-underline flex p-6"
|
||||
};
|
||||
var _hoisted_28 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", {
|
||||
"class": "flex justify-center w-11 flex-shrink-0 mr-6"
|
||||
}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", {
|
||||
@@ -165,7 +160,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
}, {
|
||||
"default": (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(function () {
|
||||
return [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", {
|
||||
href: $options.resources,
|
||||
target: "_blank",
|
||||
href: $options.cities,
|
||||
"class": "no-underline flex p-6"
|
||||
}, [_hoisted_8, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
level: 3
|
||||
@@ -176,7 +172,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
|
||||
_: 1 /* STABLE */
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_9, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Gehe auf die Seite "Städte" und suche nach der Stadt, in der du die Items anlegen möchtest. Wenn du die Stadt nicht findest, kannst du sie anlegen.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_7)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_10, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", {
|
||||
href: $options.actions,
|
||||
target: "_blank",
|
||||
href: $options.venues,
|
||||
"class": "no-underline flex p-6"
|
||||
}, [_hoisted_12, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
level: 3
|
||||
@@ -187,7 +184,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
|
||||
_: 1 /* STABLE */
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_13, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Gehe auf die Seite "Veranstaltungs-Orte" und suche nach dem Ort, an dem du die Items anlegen möchtest. Wenn du den Ort nicht findest, kannst du ihn anlegen.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_11)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_14, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", {
|
||||
href: $options.filters,
|
||||
target: "_blank",
|
||||
href: $options.lecturers,
|
||||
"class": "no-underline flex p-6"
|
||||
}, [_hoisted_16, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
level: 3
|
||||
@@ -198,7 +196,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
|
||||
_: 1 /* STABLE */
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_17, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Gehe auf die Seite "Dozenten" und suche nach deinem Dozenten-Profil. Wenn du es nicht findest, kannst du es anlegen.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_15)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_18, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", {
|
||||
href: $options.lenses,
|
||||
target: "_blank",
|
||||
href: $options.courses,
|
||||
"class": "no-underline flex p-6"
|
||||
}, [_hoisted_20, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
level: 3
|
||||
@@ -209,7 +208,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
|
||||
_: 1 /* STABLE */
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_21, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Gehe auf die Seite "Kurse" und suche nach dem Kurs, den du editieren möchtest. Wenn du den Kurs nicht findest, kannst du ihn anlegen.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_19)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_22, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", {
|
||||
href: $options.metrics,
|
||||
target: "_blank",
|
||||
href: $options.events,
|
||||
"class": "no-underline flex p-6"
|
||||
}, [_hoisted_24, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
level: 3
|
||||
@@ -219,10 +219,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
}),
|
||||
|
||||
_: 1 /* STABLE */
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_25, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Gehe auf die Seite "Termine" und suche nach dem Termin, den du editieren möchtest. Wenn du den Termin nicht findest, kannst du ihn anlegen.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_23)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_26, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", {
|
||||
href: $options.cards,
|
||||
"class": "no-underline flex p-6"
|
||||
}, [_hoisted_28, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_25, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Gehe auf die Seite "Termine" und suche nach dem Termin, den du editieren möchtest. Wenn du den Termin nicht findest, kannst du ihn anlegen.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_23)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_26, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("a", _hoisted_27, [_hoisted_28, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Heading, {
|
||||
level: 3
|
||||
}, {
|
||||
"default": (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(function () {
|
||||
@@ -230,8 +227,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
}),
|
||||
|
||||
_: 1 /* STABLE */
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_29, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Wenn Buttons zur Bearbeitung fehlen, dann hast du nicht die nötigen Berechtigungen. Melde dich bei einem der Admins.')), 1 /* TEXT */)])], 8 /* PROPS */, _hoisted_27)])])];
|
||||
}), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("p", _hoisted_29, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(_ctx.__('Wenn Buttons zur Bearbeitung fehlen, dann hast du nicht die nötigen Berechtigungen. Melde dich bei einem der Admins.')), 1 /* TEXT */)])])])])];
|
||||
}),
|
||||
|
||||
_: 1 /* STABLE */
|
||||
})])]);
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<Card class="mt-8">
|
||||
<div class="md:grid md:grid-cols-2">
|
||||
<div class="border-r border-b border-gray-200 dark:border-gray-700">
|
||||
<a :href="resources" class="no-underline flex p-6">
|
||||
<a target="_blank" :href="cities" class="no-underline flex p-6">
|
||||
<div class="flex justify-center w-11 flex-shrink-0 mr-6">
|
||||
<div class="text-4xl text-primary-500 dark:text-primary-600">1.</div>
|
||||
</div>
|
||||
@@ -29,7 +29,7 @@
|
||||
</div>
|
||||
|
||||
<div class="border-b border-gray-200 dark:border-gray-700">
|
||||
<a :href="actions" class="no-underline flex p-6">
|
||||
<a target="_blank" :href="venues" class="no-underline flex p-6">
|
||||
<div class="flex justify-center w-11 flex-shrink-0 mr-6">
|
||||
<div class="text-4xl text-primary-500 dark:text-primary-600">2.</div>
|
||||
</div>
|
||||
@@ -46,7 +46,7 @@
|
||||
</div>
|
||||
|
||||
<div class="border-r border-b border-gray-200 dark:border-gray-700">
|
||||
<a :href="filters" class="no-underline flex p-6">
|
||||
<a target="_blank" :href="lecturers" class="no-underline flex p-6">
|
||||
<div class="flex justify-center w-11 flex-shrink-0 mr-6">
|
||||
<div class="text-4xl text-primary-500 dark:text-primary-600">3.</div>
|
||||
</div>
|
||||
@@ -63,7 +63,7 @@
|
||||
</div>
|
||||
|
||||
<div class="border-b border-gray-200 dark:border-gray-700">
|
||||
<a :href="lenses" class="no-underline flex p-6">
|
||||
<a target="_blank" :href="courses" class="no-underline flex p-6">
|
||||
<div class="flex justify-center w-11 flex-shrink-0 mr-6">
|
||||
<div class="text-4xl text-primary-500 dark:text-primary-600">4.</div>
|
||||
</div>
|
||||
@@ -82,7 +82,7 @@
|
||||
<div
|
||||
class="border-r md:border-b-0 border-b border-gray-200 dark:border-gray-700"
|
||||
>
|
||||
<a :href="metrics" class="no-underline flex p-6">
|
||||
<a target="_blank" :href="events" class="no-underline flex p-6">
|
||||
<div class="flex justify-center w-11 flex-shrink-0 mr-6">
|
||||
<div class="text-4xl text-primary-500 dark:text-primary-600">5.</div>
|
||||
</div>
|
||||
@@ -101,7 +101,7 @@
|
||||
<div
|
||||
class="md:border-b-0 border-b border-gray-200 dark:border-gray-700"
|
||||
>
|
||||
<a :href="cards" class="no-underline flex p-6">
|
||||
<a href="#" class="no-underline flex p-6">
|
||||
<div class="flex justify-center w-11 flex-shrink-0 mr-6">
|
||||
<div class="text-4xl text-primary-500 dark:text-primary-600">6.</div>
|
||||
</div>
|
||||
@@ -132,35 +132,25 @@ export default {
|
||||
|
||||
methods: {
|
||||
link (path) {
|
||||
return `https://nova.laravel.com/docs/${this.version}/${path}`
|
||||
return `/nova/${path}`
|
||||
},
|
||||
},
|
||||
|
||||
computed: {
|
||||
resources () {
|
||||
return this.link('resources')
|
||||
cities () {
|
||||
return this.link('resources/cities')
|
||||
},
|
||||
actions () {
|
||||
return this.link('actions/defining-actions.html')
|
||||
venues () {
|
||||
return this.link('resources/venues')
|
||||
},
|
||||
filters () {
|
||||
return this.link('filters/defining-filters.html')
|
||||
lecturers () {
|
||||
return this.link('resources/lecturers')
|
||||
},
|
||||
lenses () {
|
||||
return this.link('lenses/defining-lenses.html')
|
||||
courses () {
|
||||
return this.link('resources/courses')
|
||||
},
|
||||
metrics () {
|
||||
return this.link('metrics/defining-metrics.html')
|
||||
},
|
||||
cards () {
|
||||
return this.link('customization/cards.html')
|
||||
},
|
||||
version () {
|
||||
const parts = Nova.config('version')
|
||||
.split('.')
|
||||
parts.splice(-2)
|
||||
|
||||
return `${parts}.0`
|
||||
events () {
|
||||
return this.link('resources/events')
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user