welcome page
13
app/Http/Livewire/Frontend/Welcome.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Livewire\Frontend;
|
||||
|
||||
use Livewire\Component;
|
||||
|
||||
class Welcome extends Component
|
||||
{
|
||||
public function render()
|
||||
{
|
||||
return view('livewire.frontend.welcome');
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,6 @@ namespace App\Nova;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\Boolean;
|
||||
use Laravel\Nova\Fields\Code;
|
||||
use Laravel\Nova\Fields\HasMany;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\MorphMany;
|
||||
@@ -47,67 +46,67 @@ class BookCase extends Resource
|
||||
ID::make()
|
||||
->sortable(),
|
||||
|
||||
Text::make('Title')
|
||||
Text::make(__('Title'), 'title')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Number::make('Latitude')
|
||||
Number::make(__('Latitude'), 'latitude')
|
||||
->rules('required', 'numeric')
|
||||
->step(0.000001)
|
||||
->hideFromIndex(),
|
||||
|
||||
Number::make('Longitude')
|
||||
Number::make(__('Longitude'), 'longitude')
|
||||
->rules('required', 'numeric')
|
||||
->step(0.000001)
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Address')
|
||||
Text::make(__('Address'), 'address')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Text::make('Type')
|
||||
Text::make(__('Type'), 'type')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Text::make('Open')
|
||||
Text::make(__('Open'), 'open')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Comment')
|
||||
Text::make(__('Comment'), 'comment')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Contact')
|
||||
Text::make(__('Contact'), 'contact')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Bcz')
|
||||
Text::make(__('Bcz'), 'bcz')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Boolean::make('Digital')
|
||||
Boolean::make(__('Digital'), 'digital')
|
||||
->rules('required')
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Icontype')
|
||||
Text::make(__('Icontype'), 'icontype')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Boolean::make('Deactivated')
|
||||
Boolean::make(__('Deactivated'), 'deactivated')
|
||||
->rules('required'),
|
||||
|
||||
Text::make('Deactreason')
|
||||
Text::make(__('Deactreason'), 'deactreason')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Entrytype')
|
||||
Text::make(__('Entrytype'), 'entrytype')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
Text::make('Homepage')
|
||||
Text::make(__('Homepage'), 'homepage')
|
||||
->rules('required', 'string')
|
||||
->hideFromIndex(),
|
||||
|
||||
HasMany::make('OrangePills'),
|
||||
HasMany::make(__('OrangePills'), 'orangePills', OrangePill::class),
|
||||
|
||||
MorphMany::make('Comments'),
|
||||
MorphMany::make(__('Comments'), 'comments', Comment::class),
|
||||
|
||||
];
|
||||
}
|
||||
|
||||
@@ -2,55 +2,54 @@
|
||||
|
||||
namespace App\Nova;
|
||||
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\Text;
|
||||
use Laravel\Nova\Fields\BelongsToMany;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\Text;
|
||||
|
||||
class Category extends Resource
|
||||
{
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
public static $model = \App\Models\Category::class;
|
||||
|
||||
/**
|
||||
* The single value that should be used to represent the resource when being displayed.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
public static $title = 'id';
|
||||
public static $title = 'name';
|
||||
|
||||
/**
|
||||
* The columns that should be searched.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
public static $search = [
|
||||
'id',
|
||||
'name',
|
||||
];
|
||||
|
||||
/**
|
||||
* 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')
|
||||
Text::make(__('Name'), 'name')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Text::make('Slug')
|
||||
Text::make(__('Slug'), 'slug')
|
||||
->rules('required', 'string', 'unique:categories,slug'),
|
||||
|
||||
BelongsToMany::make('Courses'),
|
||||
|
||||
BelongsToMany::make(__('Courses'), 'courses', Course::class),
|
||||
|
||||
];
|
||||
}
|
||||
@@ -59,6 +58,7 @@ class Category extends Resource
|
||||
* Get the cards available for the request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function cards(Request $request)
|
||||
@@ -70,6 +70,7 @@ class Category extends Resource
|
||||
* Get the filters available for the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function filters(Request $request)
|
||||
@@ -81,6 +82,7 @@ class Category extends Resource
|
||||
* Get the lenses available for the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function lenses(Request $request)
|
||||
@@ -92,6 +94,7 @@ class Category extends Resource
|
||||
* Get the actions available for the resource.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function actions(Request $request)
|
||||
|
||||
@@ -44,23 +44,23 @@ class City extends Resource
|
||||
ID::make()
|
||||
->sortable(),
|
||||
|
||||
Text::make('Name')
|
||||
Text::make(__('Name'), 'name')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Text::make('Slug')
|
||||
Text::make(__('Slug'), 'slug')
|
||||
->exceptOnForms(),
|
||||
|
||||
Number::make('Latitude')
|
||||
Number::make(__('Latitude'), 'latitude')
|
||||
->rules('required', 'numeric')
|
||||
->step(0.000001)
|
||||
->help('<a target="_blank" href="https://www.latlong.net/">https://www.latlong.net/</a>'),
|
||||
|
||||
Number::make('Longitude')
|
||||
Number::make(__('Longitude'), 'longitude')
|
||||
->rules('required', 'numeric')
|
||||
->step(0.000001)
|
||||
->help('<a target="_blank" href="https://www.latlong.net/">https://www.latlong.net/</a>'),
|
||||
|
||||
BelongsTo::make('Country'),
|
||||
BelongsTo::make(__('Country'), 'country', Country::class),
|
||||
|
||||
];
|
||||
}
|
||||
|
||||
@@ -20,26 +20,26 @@ class Comment extends Resource
|
||||
public function fields(NovaRequest $request)
|
||||
{
|
||||
return [
|
||||
Text::make('title', function (CommentModel $comment) {
|
||||
Text::make(__('Title'), function (CommentModel $comment) {
|
||||
return $comment->topLevel()->commentable?->commentableName() ?? 'Deleted...';
|
||||
})->readonly(),
|
||||
|
||||
MorphTo::make('Commentator')->types([
|
||||
MorphTo::make(__('Commentator'), 'commentator')->types([
|
||||
User::class,
|
||||
]),
|
||||
|
||||
Markdown::make('Original text'),
|
||||
Markdown::make(__('Original text'), 'original_text'),
|
||||
|
||||
Text::make('', function (CommentModel $comment) {
|
||||
if (! $url = $comment?->commentUrl()) {
|
||||
return '';
|
||||
}
|
||||
|
||||
return "<a target=\"show_comment\" href=\"{$url}\">Show</a>";
|
||||
return "<a target=\"show_comment\" href=\"{$url}\">".__('Show')."</a>";
|
||||
|
||||
})->asHtml(),
|
||||
|
||||
Text::make('status', function(CommentModel $comment) {
|
||||
Text::make(__('Status'), function(CommentModel $comment) {
|
||||
if ($comment->isApproved()) {
|
||||
return "<div class='inline-flex items-center px-3 py-0.5 rounded-full text-sm font-medium bg-green-100 text-green-800'>Approved</div>";
|
||||
}
|
||||
@@ -47,7 +47,8 @@ class Comment extends Resource
|
||||
return "<div class='inline-flex items-center px-3 py-0.5 rounded-full text-sm font-medium bg-yellow-100 text-yellow-800'>Pending</div>";
|
||||
})->asHtml(),
|
||||
|
||||
DateTime::make('Created at'),
|
||||
DateTime::make(__('Created at'), 'created_at'),
|
||||
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,18 +44,18 @@ class Country extends Resource
|
||||
ID::make()
|
||||
->sortable(),
|
||||
|
||||
Text::make('Name')
|
||||
Text::make(__('Name'), 'name')
|
||||
->rules('required', 'string'),
|
||||
|
||||
MultiSelect::make('Languages', 'language_codes')
|
||||
MultiSelect::make(__('Languages'), 'language_codes')
|
||||
->options(
|
||||
config('languages.languages'),
|
||||
),
|
||||
|
||||
Text::make('Code')
|
||||
Text::make(__('Code'), 'code')
|
||||
->rules('required', 'string'),
|
||||
|
||||
HasMany::make('Cities'),
|
||||
HasMany::make(__('Cities'), 'cities', City::class),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -59,28 +59,34 @@ class Course extends Resource
|
||||
ID::make()
|
||||
->sortable(),
|
||||
|
||||
Images::make('Main picture', 'logo')
|
||||
Images::make(__('Main picture'), 'logo')
|
||||
->conversionOnIndexView('thumb'),
|
||||
|
||||
Images::make('Images', 'images')
|
||||
// todo: english
|
||||
Images::make(__('Images'), 'images')
|
||||
->conversionOnIndexView('thumb')
|
||||
->help('Lade hier Bilder hoch, um sie eventuell später in der Markdown Description einzufügen. Du musst vorher aber Speichern.'),
|
||||
->help(__('Lade hier Bilder hoch, um sie eventuell später in der Markdown Description einzufügen. Du musst vorher aber Speichern.')),
|
||||
|
||||
Tags::make('Tags')->type('course')->withLinkToTagResource(Tag::class),
|
||||
Tags::make(__('Tags'))
|
||||
->type('course')
|
||||
->withLinkToTagResource(Tag::class),
|
||||
|
||||
Text::make('Name')
|
||||
Text::make(__('Name'), 'name')
|
||||
->rules('required', 'string'),
|
||||
|
||||
Markdown::make('Description')
|
||||
Markdown::make(__('Description'), 'description')
|
||||
->alwaysShow()
|
||||
->help('Markdown ist erlaubt. Du kannst Bilder aus dem Feld "Images" hier einfügen. Benutze das Link Symbol der Bilder für die Urls, nach dem du auf "Aktualisieren und Weiterarbeiten" geklickt hast.'),
|
||||
->help(__('Markdown ist erlaubt. Du kannst Bilder aus dem Feld "Images" hier einfügen. Benutze das Link Symbol der Bilder für die Urls, nach dem du auf "Aktualisieren und Weiterarbeiten" geklickt hast.')),
|
||||
|
||||
BelongsTo::make('Lecturer'),
|
||||
BelongsTo::make(__('Lecturer'), 'lecturer', Lecturer::class)
|
||||
->searchable()
|
||||
->help(__('Wähle hier den Dozenten aus, der den Kurs hält. Wenn der Dozent nicht in der Liste ist, dann erstelle ihn zuerst unter "Dozenten".')),
|
||||
|
||||
SelectPlus::make('Categories', 'categories', Category::class)
|
||||
SelectPlus::make(__('Categories'), 'categories', Category::class)
|
||||
->usingIndexLabel('name'),
|
||||
|
||||
BelongsToMany::make('Categories')->onlyOnDetail(),
|
||||
BelongsToMany::make(__('Categories'), 'categories', Category::class)
|
||||
->onlyOnDetail(),
|
||||
|
||||
];
|
||||
}
|
||||
|
||||
@@ -80,27 +80,27 @@ class Episode extends Resource
|
||||
ID::make()
|
||||
->sortable(),
|
||||
|
||||
Avatar::make('Image')
|
||||
Avatar::make(__('Image'))
|
||||
->squared()
|
||||
->thumbnail(function () {
|
||||
return $this->data['image'];
|
||||
})
|
||||
->exceptOnForms(),
|
||||
|
||||
Tags::make('Tags')
|
||||
Tags::make(__('Tags'))
|
||||
->type('library_item')
|
||||
->withLinkToTagResource(Tag::class),
|
||||
|
||||
Text::make('Title', 'data->title')
|
||||
Text::make(__('Title'), 'data->title')
|
||||
->readonly()
|
||||
->rules('required', 'string'),
|
||||
|
||||
Code::make('Data')
|
||||
Code::make(__('Data'), 'data')
|
||||
->readonly()
|
||||
->rules('required', 'json')
|
||||
->json(),
|
||||
|
||||
BelongsTo::make('Podcast')
|
||||
BelongsTo::make(__('Podcast'), 'podcast', Podcast::class)
|
||||
->readonly(),
|
||||
|
||||
];
|
||||
|
||||
@@ -70,6 +70,7 @@ class Event extends Resource
|
||||
->displayUsing(fn($value) => $value->asDateTime()),
|
||||
|
||||
BelongsTo::make('Course'),
|
||||
|
||||
BelongsTo::make('Venue')
|
||||
->searchable(),
|
||||
|
||||
|
||||
74
composer.lock
generated
@@ -3067,16 +3067,16 @@
|
||||
},
|
||||
{
|
||||
"name": "league/commonmark",
|
||||
"version": "2.3.7",
|
||||
"version": "2.3.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/commonmark.git",
|
||||
"reference": "a36bd2be4f5387c0f3a8792a0d76b7d68865abbf"
|
||||
"reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/commonmark/zipball/a36bd2be4f5387c0f3a8792a0d76b7d68865abbf",
|
||||
"reference": "a36bd2be4f5387c0f3a8792a0d76b7d68865abbf",
|
||||
"url": "https://api.github.com/repos/thephpleague/commonmark/zipball/c493585c130544c4e91d2e0e131e6d35cb0cbc47",
|
||||
"reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3104,7 +3104,7 @@
|
||||
"symfony/finder": "^5.3 | ^6.0",
|
||||
"symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0",
|
||||
"unleashedtech/php-coding-standard": "^3.1.1",
|
||||
"vimeo/psalm": "^4.24.0"
|
||||
"vimeo/psalm": "^4.24.0 || ^5.0.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/yaml": "v2.3+ required if using the Front Matter extension"
|
||||
@@ -3169,20 +3169,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-11-03T17:29:46+00:00"
|
||||
"time": "2022-12-10T16:02:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/config",
|
||||
"version": "v1.1.1",
|
||||
"version": "v1.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/config.git",
|
||||
"reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e"
|
||||
"reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e",
|
||||
"reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e",
|
||||
"url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3",
|
||||
"reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3191,7 +3191,7 @@
|
||||
"php": "^7.4 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^0.12.90",
|
||||
"phpstan/phpstan": "^1.8.2",
|
||||
"phpunit/phpunit": "^9.5.5",
|
||||
"scrutinizer/ocular": "^1.8.1",
|
||||
"unleashedtech/php-coding-standard": "^3.1",
|
||||
@@ -3251,7 +3251,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2021-08-14T12:15:32+00:00"
|
||||
"time": "2022-12-11T20:36:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem",
|
||||
@@ -3711,23 +3711,23 @@
|
||||
},
|
||||
{
|
||||
"name": "maennchen/zipstream-php",
|
||||
"version": "2.3.0",
|
||||
"version": "v2.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/maennchen/ZipStream-PHP.git",
|
||||
"reference": "8df0a40fff7b5cbf86cf9a6d7d8d15b9bc03bc98"
|
||||
"reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/8df0a40fff7b5cbf86cf9a6d7d8d15b9bc03bc98",
|
||||
"reference": "8df0a40fff7b5cbf86cf9a6d7d8d15b9bc03bc98",
|
||||
"url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3",
|
||||
"reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-mbstring": "*",
|
||||
"myclabs/php-enum": "^1.5",
|
||||
"php": "^8.0",
|
||||
"psr/http-message": "^1.0",
|
||||
"symfony/polyfill-mbstring": "^1.0"
|
||||
"psr/http-message": "^1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-zip": "*",
|
||||
@@ -3736,7 +3736,7 @@
|
||||
"mikey179/vfsstream": "^1.6",
|
||||
"php-coveralls/php-coveralls": "^2.4",
|
||||
"phpunit/phpunit": "^8.5.8 || ^9.4.2",
|
||||
"vimeo/psalm": "^4.1"
|
||||
"vimeo/psalm": "^5.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@@ -3773,7 +3773,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/maennchen/ZipStream-PHP/issues",
|
||||
"source": "https://github.com/maennchen/ZipStream-PHP/tree/2.3.0"
|
||||
"source": "https://github.com/maennchen/ZipStream-PHP/tree/v2.4.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -3785,7 +3785,7 @@
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"time": "2022-11-28T12:13:34+00:00"
|
||||
"time": "2022-12-08T12:29:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "masterminds/html5",
|
||||
@@ -12944,16 +12944,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel-lang/lang",
|
||||
"version": "12.5.8",
|
||||
"version": "12.6.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Laravel-Lang/lang.git",
|
||||
"reference": "c11b2cb92a8873b9ea16b25012b5b13dce7a2935"
|
||||
"reference": "4d099a2b7f5cfcda82cc8dc1c39620eb69d66d1f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Laravel-Lang/lang/zipball/c11b2cb92a8873b9ea16b25012b5b13dce7a2935",
|
||||
"reference": "c11b2cb92a8873b9ea16b25012b5b13dce7a2935",
|
||||
"url": "https://api.github.com/repos/Laravel-Lang/lang/zipball/4d099a2b7f5cfcda82cc8dc1c39620eb69d66d1f",
|
||||
"reference": "4d099a2b7f5cfcda82cc8dc1c39620eb69d66d1f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -13015,7 +13015,7 @@
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"time": "2022-12-05T18:46:34+00:00"
|
||||
"time": "2022-12-11T22:31:57+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel-lang/publisher",
|
||||
@@ -14071,16 +14071,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "9.5.26",
|
||||
"version": "9.5.27",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "851867efcbb6a1b992ec515c71cdcf20d895e9d2"
|
||||
"reference": "a2bc7ffdca99f92d959b3f2270529334030bba38"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/851867efcbb6a1b992ec515c71cdcf20d895e9d2",
|
||||
"reference": "851867efcbb6a1b992ec515c71cdcf20d895e9d2",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38",
|
||||
"reference": "a2bc7ffdca99f92d959b3f2270529334030bba38",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -14153,7 +14153,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.26"
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -14169,7 +14169,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-10-28T06:00:21+00:00"
|
||||
"time": "2022-12-09T07:31:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/cli-parser",
|
||||
@@ -15281,16 +15281,16 @@
|
||||
},
|
||||
{
|
||||
"name": "spatie/laravel-ignition",
|
||||
"version": "1.6.1",
|
||||
"version": "1.6.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/spatie/laravel-ignition.git",
|
||||
"reference": "2b79cf6ed40946b64ac6713d7d2da8a9d87f612b"
|
||||
"reference": "d6e1e1ad93abe280abf41c33f8ea7647dfc0c233"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/2b79cf6ed40946b64ac6713d7d2da8a9d87f612b",
|
||||
"reference": "2b79cf6ed40946b64ac6713d7d2da8a9d87f612b",
|
||||
"url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/d6e1e1ad93abe280abf41c33f8ea7647dfc0c233",
|
||||
"reference": "d6e1e1ad93abe280abf41c33f8ea7647dfc0c233",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -15367,7 +15367,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-10-26T17:39:54+00:00"
|
||||
"time": "2022-12-08T15:31:38+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
|
||||
BIN
public/img/20220915_007_industryday.webp
Normal file
|
After Width: | Height: | Size: 174 KiB |
BIN
public/img/Krypto-Fiat-Bros.webp
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
public/img/aprycot-media-bitcoin-21-lektionen-01.webp
Normal file
|
After Width: | Height: | Size: 142 KiB |
BIN
public/img/einundzwanzig_podcast_niko_jilch.jpg
Normal file
|
After Width: | Height: | Size: 484 KiB |
48
public/img/gradient-blob.svg
Normal file
@@ -0,0 +1,48 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="1152" height="1152" viewBox="0 0 1152 1152" preserveAspectRatio="xMinYMin" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated by PQINA - https://pqina.nl/ -->
|
||||
<title/>
|
||||
<g transform="rotate(NaN 576 576) translate(576 576) scale(NaN) translate(-576 -576) translate(0 0)">
|
||||
<g transform="scale(1 1) translate(0 0)">
|
||||
<svg width="1152" height="1152" viewBox="0 0 1152 1152" fill="none" xmlns="http://www.w3.org/2000/svg" style="overflow: visible;">
|
||||
<g filter="url(#filter0_f)">
|
||||
<rect x="356" y="356" width="440" height="440" rx="24" fill="url(#paint0_linear)"/>
|
||||
<rect x="356" y="356" width="440" height="440" rx="24" fill="url(#paint1_radial)" fill-opacity="0.78"/>
|
||||
<rect x="356" y="356" width="440" height="440" rx="24" fill="url(#paint2_radial)"/>
|
||||
<rect x="356" y="356" width="440" height="440" rx="24" fill="url(#paint3_linear)"/>
|
||||
<rect x="356" y="356" width="440" height="440" rx="24" fill="url(#paint4_radial)"/>
|
||||
</g>
|
||||
<defs>
|
||||
<filter id="filter0_f" x="0" y="0" width="1152" height="1152" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
|
||||
<feGaussianBlur stdDeviation="178" result="effect1_foregroundBlur"/>
|
||||
</filter>
|
||||
<linearGradient id="paint0_linear" x1="796" y1="787.5" x2="229" y2="258" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#F7931A"/>
|
||||
<stop offset="1" stop-color="#FABE75"/>
|
||||
</linearGradient>
|
||||
<radialGradient id="paint1_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(771 771.5) rotate(-134.198) scale(353.588 681.193)">
|
||||
<stop stop-color="#41F4FF"/>
|
||||
<stop offset="0.322917" stop-color="#83DAFF" stop-opacity="0.84"/>
|
||||
<stop offset="0.640625" stop-color="#63AFF0" stop-opacity="0.51"/>
|
||||
<stop offset="1" stop-color="#2B5AD3" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint2_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(510.5 307.5) rotate(82.4148) scale(200.757)">
|
||||
<stop stop-color="#F7931A"/>
|
||||
<stop offset="1" stop-color="#FABE75" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<linearGradient id="paint3_linear" x1="367.5" y1="784.5" x2="649.5" y2="695.5" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#F7931A"/>
|
||||
<stop offset="1" stop-color="#FABE75" stop-opacity="0"/>
|
||||
</linearGradient>
|
||||
<radialGradient id="paint4_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(775 382.5) rotate(124.873) scale(335.804)">
|
||||
<stop stop-color="#F7931A"/>
|
||||
<stop offset="0.547057" stop-color="#FABE75" stop-opacity="0.26"/>
|
||||
<stop offset="1" stop-color="#5A23F8" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.7 KiB |
BIN
public/img/meetup_saarland.jpg
Normal file
|
After Width: | Height: | Size: 236 KiB |
BIN
public/img/vhs_kurs.jpg
Normal file
|
After Width: | Height: | Size: 92 KiB |
@@ -2,7 +2,7 @@
|
||||
<div>
|
||||
<x-button amber wire:click="proximitySearch({{ $row->id }})" class="text-21gray">
|
||||
<i class="fa fa-thin fa-person-chalkboard mr-2"></i>
|
||||
Umkreis-Suche Kurs-Termin {{ $row->name }}(100km)
|
||||
Umkreis-Suche Kurs-Termin {{ $row->name }} (100km)
|
||||
</x-button>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@@ -5,6 +5,10 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
<meta name="description" content="Dies ist die Kontakt-Seite ">
|
||||
<meta name="keywords" content="Kontakt, Kontaktseite, Kontaktformular, Kontaktformularseite">
|
||||
|
||||
<link rel="stylesheet" href="{{ mix('css/app.css') }}">
|
||||
<!-- Fonts -->
|
||||
@googlefonts
|
||||
<!-- Scripts -->
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<div
|
||||
class="relative sm:sticky sm:top-0 bg-21gray z-10 flex flex-col flex-wrap items-center justify-between py-7 mx-auto md:flex-row max-w-screen-2xl">
|
||||
<div class="relative flex flex-col md:flex-row">
|
||||
<a href="{{ route('search.city', ['country' => $c]) }}"
|
||||
<a href="{{ route('welcome') }}"
|
||||
class="flex items-center mb-5 font-medium text-gray-900 lg:w-auto lg:items-center lg:justify-center md:mb-0">
|
||||
<img src="{{ asset('img/einundzwanzig-horizontal-inverted.svg') }}">
|
||||
</a>
|
||||
|
||||
146
resources/views/livewire/frontend/welcome.blade.php
Normal file
@@ -0,0 +1,146 @@
|
||||
<div class="bg-21gray flex flex-col h-screen justify-between">
|
||||
<section class="relative px-10 py-16 overflow-hidden">
|
||||
<img class="absolute left-0 z-0 w-3/4 transform -translate-y-1/2 opacity-70 top-1/2"
|
||||
src="{{ asset('img/gradient-blob.svg') }}">
|
||||
<img class="absolute left-0 z-0 object-cover object-center w-full h-full opacity-50 top-24"
|
||||
src="https://cdn.devdojo.com/tails/images/swirl-white.svg">
|
||||
<div class="container relative z-10 px-4 mx-auto">
|
||||
<div class="w-full mb-8 sm:w-1/2 md:w-3/4 sm:pr-4 md:pr-12 sm:-mb-32 md:-mb-24 lg:-mb-36 xl:-mb-28">
|
||||
<h2 class="tracking-widest text-amber-500 uppercase">Einundzwanzig</h2>
|
||||
<p class="my-3 text-5xl font-bold tracking-tighter text-amber-500 lg:text-6xl">Bitcoin Portal</p>
|
||||
<p class="max-w-sm text-lg text-gray-200">
|
||||
Eine Bitcoin Community für alle.
|
||||
</p>
|
||||
</div>
|
||||
<div class="grid w-full grid-cols-1 gap-8 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4">
|
||||
<div class="row-span-2 col-span-full sm:col-span-1 md:col-start-1 sm:row-start-2 md:row-start-3">
|
||||
<a href="#"
|
||||
class="relative flex flex-col items-start justify-end w-full h-full overflow-hidden bg-black shadow-lg rounded-xl group"
|
||||
style="aspect-ratio: 1/1;">
|
||||
<div class="absolute inset-0 w-full h-full">
|
||||
<div
|
||||
class="absolute bottom-0 left-0 z-10 w-full h-full opacity-30 bg-gradient-to-b from-transparent to-gray-900"></div>
|
||||
<img
|
||||
class="absolute inset-0 object-cover object-center w-full h-full transition duration-500 lg:opacity-80 group-hover:opacity-100 group-hover:scale-110"
|
||||
src="{{ asset('img/meetup_saarland.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="relative z-10 flex flex-col items-start justify-start w-full px-6 py-7">
|
||||
<span
|
||||
class="px-2 py-1 mb-3 text-xs font-semibold tracking-tight text-white uppercase bg-amber-500 rounded-md">Get together</span>
|
||||
<h4 class="text-4xl font-bold tracking-tight text-gray-100 sm:text-3xl md:text-2xl lg:text-3xl">
|
||||
Meetups
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div
|
||||
class="row-span-2 col-span-full sm:col-span-1 md:col-start-1 xl:col-start-2 sm:row-start-4 md:row-start-5 xl:row-start-2">
|
||||
<a href="{{ route('search.city', ['country' => 'de']) }}"
|
||||
class="relative flex flex-col items-start justify-end w-full h-full overflow-hidden bg-black shadow-lg rounded-xl group"
|
||||
style="aspect-ratio: 1/1;">
|
||||
<div class="absolute inset-0 w-full h-full">
|
||||
<div
|
||||
class="absolute bottom-0 left-0 z-10 w-full h-full opacity-30 bg-gradient-to-b from-transparent to-gray-900"></div>
|
||||
<img
|
||||
class="absolute inset-0 object-cover object-center w-full h-full transition duration-500 lg:opacity-80 group-hover:opacity-100 group-hover:scale-110"
|
||||
src="{{ asset('img/vhs_kurs.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="relative z-10 flex flex-col items-start justify-start w-full px-6 py-7">
|
||||
<span
|
||||
class="px-2 py-1 mb-3 text-xs font-semibold tracking-tight text-white uppercase bg-amber-500 rounded-md">Education</span>
|
||||
<h4 class="text-4xl font-bold tracking-tight text-gray-100 sm:text-3xl md:text-2xl lg:text-3xl">
|
||||
Kurse
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div
|
||||
class="row-span-2 col-span-full sm:col-span-1 md:col-start-2 xl:col-start-2 sm:row-start-6 md:row-start-2 xl:row-start-4">
|
||||
<a href="{{ route('library', ['country' => 'de']) }}"
|
||||
class="relative flex flex-col items-start justify-end w-full h-full overflow-hidden bg-black shadow-lg rounded-xl group"
|
||||
style="aspect-ratio: 1/1;">
|
||||
<div class="absolute inset-0 w-full h-full">
|
||||
<div
|
||||
class="absolute bottom-0 left-0 z-10 w-full h-full opacity-30 bg-gradient-to-b from-transparent to-gray-900"></div>
|
||||
<img
|
||||
class="absolute inset-0 object-cover object-center w-full h-full transition duration-500 lg:opacity-80 group-hover:opacity-100 group-hover:scale-110"
|
||||
src="{{ asset('img/Krypto-Fiat-Bros.webp') }}" alt="">
|
||||
</div>
|
||||
<div class="relative z-10 flex flex-col items-start justify-start w-full px-6 py-7">
|
||||
<span
|
||||
class="px-2 py-1 mb-3 text-xs font-semibold tracking-tight text-white uppercase bg-amber-500 rounded-md">Content</span>
|
||||
<h4 class="text-4xl font-bold tracking-tight text-gray-100 sm:text-3xl md:text-2xl lg:text-3xl">
|
||||
Bibliothek
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div
|
||||
class="row-span-2 col-span-full sm:col-span-1 md:col-start-2 xl:col-start-3 sm:row-start-1 md:row-start-4 xl:row-start-1">
|
||||
<a href="#"
|
||||
class="relative flex flex-col items-start justify-end w-full h-full overflow-hidden bg-black shadow-lg rounded-xl group"
|
||||
style="aspect-ratio: 1/1;">
|
||||
<div class="absolute inset-0 w-full h-full">
|
||||
<div
|
||||
class="absolute bottom-0 left-0 z-10 w-full h-full opacity-30 bg-gradient-to-b from-transparent to-gray-900"></div>
|
||||
<img
|
||||
class="absolute inset-0 object-cover object-center w-full h-full transition duration-500 lg:opacity-80 group-hover:opacity-100 group-hover:scale-110"
|
||||
src="{{ asset('img/20220915_007_industryday.webp') }}" alt="">
|
||||
</div>
|
||||
<div class="relative z-10 flex flex-col items-start justify-start w-full px-6 py-7">
|
||||
<span
|
||||
class="px-2 py-1 mb-3 text-xs font-semibold tracking-tight text-white uppercase bg-amber-500 rounded-md">Worldwide</span>
|
||||
<h4 class="text-4xl font-bold tracking-tight text-gray-100 sm:text-3xl md:text-2xl lg:text-3xl">
|
||||
Events
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div
|
||||
class="row-span-2 col-span-full sm:col-span-1 md:col-start-3 xl:col-start-3 sm:row-start-3 md:row-start-1 xl:row-start-3">
|
||||
<a href="{{ route('library', ['country' => 'de']) }}"
|
||||
class="relative flex flex-col items-start justify-end w-full h-full overflow-hidden bg-black shadow-lg rounded-xl group"
|
||||
style="aspect-ratio: 1/1;">
|
||||
<div class="absolute inset-0 w-full h-full">
|
||||
<div
|
||||
class="absolute bottom-0 left-0 z-10 w-full h-full opacity-30 bg-gradient-to-b from-transparent to-gray-900"></div>
|
||||
<img
|
||||
class="absolute inset-0 object-cover object-center w-full h-full transition duration-500 lg:opacity-80 group-hover:opacity-100 group-hover:scale-110"
|
||||
src="{{ asset('img/einundzwanzig_podcast_niko_jilch.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="relative z-10 flex flex-col items-start justify-start w-full px-6 py-7">
|
||||
<span
|
||||
class="px-2 py-1 mb-3 text-xs font-semibold tracking-tight text-white uppercase bg-amber-500 rounded-md">Listening</span>
|
||||
<h4 class="text-4xl font-bold tracking-tight text-gray-100 sm:text-3xl md:text-2xl lg:text-3xl">
|
||||
Podcasts
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div
|
||||
class="row-span-2 col-span-full sm:col-span-1 md:col-start-3 xl:col-start-4 sm:row-start-5 md:row-start-3 xl:row-start-2">
|
||||
<a href="{{ route('search.bookcases', ['country' => 'de']) }}"
|
||||
class="relative flex flex-col items-start justify-end w-full h-full overflow-hidden bg-black shadow-lg rounded-xl group"
|
||||
style="aspect-ratio: 1/1;">
|
||||
<div class="absolute inset-0 w-full h-full">
|
||||
<div
|
||||
class="absolute bottom-0 left-0 z-10 w-full h-full bg-gradient-to-b from-transparent to-gray-900 opacity-30"></div>
|
||||
<img
|
||||
class="absolute inset-0 object-cover object-center w-full h-full transition duration-500 lg:opacity-80 group-hover:opacity-100 group-hover:scale-110"
|
||||
src="{{ asset('img/aprycot-media-bitcoin-21-lektionen-01.webp') }}" alt="">
|
||||
</div>
|
||||
<div class="relative z-10 flex flex-col items-start justify-start w-full px-6 py-7">
|
||||
<span
|
||||
class="px-2 py-1 mb-3 text-xs font-semibold tracking-tight text-white uppercase bg-amber-500 rounded-md">Reading</span>
|
||||
<h4 class="text-4xl font-bold tracking-tight text-gray-100 sm:text-3xl md:text-2xl lg:text-3xl">
|
||||
Bücher-Schränke
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{{-- FOOTER --}}
|
||||
<livewire:frontend.footer/>
|
||||
</div>
|
||||
@@ -2,9 +2,7 @@
|
||||
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
Route::get('/', function () {
|
||||
return to_route('search.city', ['country' => 'de']);
|
||||
})
|
||||
Route::get('/', \App\Http\Livewire\Frontend\Welcome::class)
|
||||
->name('welcome');
|
||||
|
||||
Route::get('/auth/ln', \App\Http\Livewire\Auth\LNUrlAuth::class)
|
||||
|
||||