diff --git a/app/Livewire/BooksForPlebs/BookRentalGuide.php b/app/Livewire/BooksForPlebs/BookRentalGuide.php new file mode 100644 index 0000000..db6686c --- /dev/null +++ b/app/Livewire/BooksForPlebs/BookRentalGuide.php @@ -0,0 +1,20 @@ +with( [ + 'SEOData' => new SEOData( + title: __('BooksForPlebs'), + description: __('Lokale Buchausleihe für Bitcoin-Meetups.'), + image: asset('img/book-rental.jpg') + ), + ]); + } +} diff --git a/app/Livewire/Helper/FollowTheRabbit.php b/app/Livewire/Helper/FollowTheRabbit.php new file mode 100644 index 0000000..d0ceeb3 --- /dev/null +++ b/app/Livewire/Helper/FollowTheRabbit.php @@ -0,0 +1,20 @@ +with([ + 'SEOData' => new SEOData( + title: __('Bitcoin - Rabbit Hole'), + description: __('Dies ist ein großartiger Überblick über die Bitcoin-Kaninchenhöhle mit Zugängen zu Bereichen, die Bitcoin umfasst. Jedes Thema hat seine eigene Kaninchenhöhle, die durch Infografiken auf einfache und verständliche Weise visualisiert wird, mit QR-Codes, die zu erklärenden Videos und Artikeln führen. Viel Spaß auf Ihrer Entdeckungsreise!'), + image: asset('img/kaninchenbau.png') + ), + ]); + } +} diff --git a/composer.json b/composer.json index 123a9a4..6254dbd 100644 --- a/composer.json +++ b/composer.json @@ -21,6 +21,7 @@ "livewire/flux-pro": "^2.2", "livewire/volt": "^1.7.0", "outhebox/blade-flags": "^1.5", + "ralphjsmit/laravel-seo": "^1.7", "simplesoftwareio/simple-qrcode": "^4.2", "spatie/icalendar-generator": "^3.1", "spatie/laravel-ciphersweet": "^1.7", diff --git a/composer.lock b/composer.lock index 380ce63..4c36311 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2f835aeeb5cb6ca796bf1916be38cabf", + "content-hash": "e28b129a600ecef71879618baf7b2358", "packages": [ { "name": "akuechler/laravel-geoly", @@ -4589,6 +4589,157 @@ }, "time": "2019-03-08T08:55:37+00:00" }, + { + "name": "ralphjsmit/laravel-helpers", + "version": "1.10.0", + "source": { + "type": "git", + "url": "https://github.com/ralphjsmit/laravel-helpers.git", + "reference": "85f42d56a632b5e7edd60460cf8163b8f7506771" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralphjsmit/laravel-helpers/zipball/85f42d56a632b5e7edd60460cf8163b8f7506771", + "reference": "85f42d56a632b5e7edd60460cf8163b8f7506771", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "^7.4", + "illuminate/contracts": "^10.0|^11.0|^12.0", + "php": "^8.0", + "spatie/laravel-package-tools": "^1.9.2" + }, + "require-dev": { + "livewire/livewire": "^2.9|^3.4", + "nesbot/carbon": "^2.66|^3.0", + "nunomaduro/collision": "^7.0|^8.0", + "orchestra/testbench": "^8.0|^9.0|^10.0", + "pestphp/pest": "^2.34|^3.7", + "pestphp/pest-plugin-laravel": "^2.3|^3.1", + "phpunit/phpunit": "^10.5|^11.5", + "spatie/invade": "^1.0|^2.0", + "spatie/laravel-ray": "^1.39" + }, + "type": "library", + "extra": { + "laravel": { + "aliases": { + "Helpers": "RalphJSmit\\Helpers\\Facades\\Helpers" + }, + "providers": [ + "RalphJSmit\\Helpers\\HelpersServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "src/Laravel/Support/helpers.php", + "src/helpers.php" + ], + "psr-4": { + "RalphJSmit\\Helpers\\": "src", + "RalphJSmit\\Helpers\\Database\\Factories\\": "database/factories" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph J. Smit", + "email": "rjs@ralphjsmit.com", + "role": "Developer" + } + ], + "description": "A package containing handy helpers for your Laravel-application.", + "homepage": "https://github.com/ralphjsmit/laravel-helpers", + "keywords": [ + "laravel", + "laravel-helpers", + "ralphjsmit" + ], + "support": { + "issues": "https://github.com/ralphjsmit/laravel-helpers/issues", + "source": "https://github.com/ralphjsmit/laravel-helpers/tree/1.10.0" + }, + "time": "2025-02-25T17:18:51+00:00" + }, + { + "name": "ralphjsmit/laravel-seo", + "version": "1.7.2", + "source": { + "type": "git", + "url": "https://github.com/ralphjsmit/laravel-seo.git", + "reference": "55f72af14357b22665ed8428f46356f41a61c713" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralphjsmit/laravel-seo/zipball/55f72af14357b22665ed8428f46356f41a61c713", + "reference": "55f72af14357b22665ed8428f46356f41a61c713", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^10.0|^11.0|^12.0", + "php": "^8.0", + "ralphjsmit/laravel-helpers": "^1.10", + "spatie/laravel-package-tools": "^1.9.2" + }, + "require-dev": { + "laravel/pint": "^1.16", + "nesbot/carbon": "^2.66|^3.0", + "nunomaduro/collision": "^7.0|^8.0|^9.0", + "orchestra/testbench": "^9.0|^10.0", + "pestphp/pest": "^2.0|^3.0", + "pestphp/pest-plugin-laravel": "^2.0|^3.0", + "phpunit/phpunit": "^10.5|^11.5", + "spatie/laravel-ray": "^1.39", + "spatie/pest-plugin-test-time": "^2.0" + }, + "type": "library", + "extra": { + "laravel": { + "aliases": { + "SEOManager": "RalphJSmit\\Laravel\\SEO\\Facades\\SEOManager" + }, + "providers": [ + "RalphJSmit\\Laravel\\SEO\\LaravelSEOServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "RalphJSmit\\Laravel\\SEO\\": "src", + "RalphJSmit\\Laravel\\SEO\\Database\\Factories\\": "database/factories" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph J. Smit", + "email": "rjs@ralphjsmit.com", + "role": "Developer" + } + ], + "description": "A package to handle the SEO in any Laravel application, big or small.", + "homepage": "https://github.com/ralphjsmit/laravel-seo", + "keywords": [ + "laravel", + "laravel-seo", + "ralphjsmit" + ], + "support": { + "issues": "https://github.com/ralphjsmit/laravel-seo/issues", + "source": "https://github.com/ralphjsmit/laravel-seo/tree/1.7.2" + }, + "time": "2025-09-22T14:21:04+00:00" + }, { "name": "ramsey/collection", "version": "2.1.1", diff --git a/lang/de.json b/lang/de.json index f14997a..07c1bf6 100644 --- a/lang/de.json +++ b/lang/de.json @@ -377,5 +377,9 @@ "Venue Information": "", "Sprache wechseln": "", "Spracheinstellungen": "", - "Wähle deine Sprache aus...": "" + "Wähle deine Sprache aus...": "", + "BooksForPlebs": "", + "Lokale Buchausleihe für Bitcoin-Meetups.": "", + "Bitcoin - Rabbit Hole": "", + "Dies ist ein großartiger Überblick über die Bitcoin-Kaninchenhöhle mit Zugängen zu Bereichen, die Bitcoin umfasst. Jedes Thema hat seine eigene Kaninchenhöhle, die durch Infografiken auf einfache und verständliche Weise visualisiert wird, mit QR-Codes, die zu erklärenden Videos und Artikeln führen. Viel Spaß auf Ihrer Entdeckungsreise!": "" } \ No newline at end of file diff --git a/lang/en.json b/lang/en.json index 218f5c9..f4eadb1 100644 --- a/lang/en.json +++ b/lang/en.json @@ -377,5 +377,9 @@ "Venue Information": "Venue Information", "Sprache wechseln": "Change language", "Spracheinstellungen": "Language settings", - "Wähle deine Sprache aus...": "Choose your language..." + "Wähle deine Sprache aus...": "Choose your language...", + "BooksForPlebs": "BooksForPlebs", + "Lokale Buchausleihe für Bitcoin-Meetups.": "Local book lending for Bitcoin meetups.", + "Bitcoin - Rabbit Hole": "Bitcoin - Rabbit Hole", + "Dies ist ein großartiger Überblick über die Bitcoin-Kaninchenhöhle mit Zugängen zu Bereichen, die Bitcoin umfasst. Jedes Thema hat seine eigene Kaninchenhöhle, die durch Infografiken auf einfache und verständliche Weise visualisiert wird, mit QR-Codes, die zu erklärenden Videos und Artikeln führen. Viel Spaß auf Ihrer Entdeckungsreise!": "This is a great overview of the Bitcoin rabbit hole with access to areas that Bitcoin encompasses. Each topic has its own rabbit hole that is visualized in a simple and understandable way through infographics, with QR codes leading to explanatory videos and articles. Have fun on your journey of discovery!" } diff --git a/lang/es.json b/lang/es.json index 1fef078..d19e17f 100644 --- a/lang/es.json +++ b/lang/es.json @@ -376,5 +376,8 @@ "Venue Information": "Información del lugar", "Sprache wechseln": "Cambiar idioma", "Spracheinstellungen": "Configuración de idioma", - "Wähle deine Sprache aus...": "Elige tu idioma..." -} + "Wähle deine Sprache aus...": "Elige tu idioma...", + "BooksForPlebs": "LibrosParaPlebs", + "Lokale Buchausleihe für Bitcoin-Meetups.": "Préstamo local de libros para encuentros Bitcoin.", + "Bitcoin - Rabbit Hole": "Bitcoin - La Madriguera del Conejo", + "Dies ist ein großartiger Überblick über die Bitcoin-Kaninchenhöhle mit Zugängen zu Bereichen, die Bitcoin umfasst. Jedes Thema hat seine eigene Kaninchenhöhle, die durch Infografiken auf einfache und verständliche Weise visualisiert wird, mit QR-Codes, die zu erklärenden Videos und Artikeln führen. Viel Spaß auf Ihrer Entdeckungsreise!": "Esta es una excelente visión general de la madriguera del conejo de Bitcoin con acceso a áreas que abarca Bitcoin. Cada tema tiene su propia madriguera, que se visualiza de manera simple y comprensible a través de infografías, con códigos QR que conducen a videos y artículos explicativos. ¡Disfruta tu viaje de descubrimiento!" diff --git a/resources/views/livewire/books-for-plebs/book-rental-guide.blade.php b/resources/views/livewire/books-for-plebs/book-rental-guide.blade.php new file mode 100644 index 0000000..41e087b --- /dev/null +++ b/resources/views/livewire/books-for-plebs/book-rental-guide.blade.php @@ -0,0 +1,213 @@ +
+
+ +
+

+ Anleitung zum Bücherverleih +

+ Buch Etiketten +
+ +

+ Hallo Pleb, +

+ +

+ Vielen Dank, dass du dich dazu entschieden hast, deine + + ₿itcoin-Bücher + + zur Verfügung zu stellen. Mit dieser Anleitung kannst du eine Bezahladresse + generieren und hast auch alle Materialien, die du benötigst. Wir haben + darauf geachtet, dass es für jedes Meetup geeignet ist. Deshalb stellen + wir dir die Quelldateien zur Verfügung, damit du deinen eigenen QR-Code + einfügen und das Logo eures Meetups verwenden kannst. +
+

+ Du hast keine ₿itcoin Wallet oder kein Programm zum Bearbeiten der Dateien? + Kein Problem! Schreib uns einfach und wir helfen dir. +

+
+ + + + @Awesomo12 + +
+ + + + @LottiTheFuchs + +
+ + + + @Robin_Hodl21 + +

+
+ + +
+
+

+ Bücheretiketten +

+

+ (Zum Editieren brauchst du + + Adobe Illustrator) + +

+ Buch Etiketten + +
+ + +
+

+ Flyer +

+

+ (Zum Editieren brauchst du + + Adobe Illustrator) + +

+ Flyer + +
+ + + + +
+

+ Lesezeichen +

+

+ (Nicht editierbar) +

+ Flyer + +
+ + Download .jpg + +
+
+ + +
+

+ Bookring4Sats +

+

+ (Nicht editierbar) +

+ Flyer + +
+ + Download .jpg + +
+
+
+ +

+ Um deinen + + ₿itcoin + + QR-Code zu erstellen, kopiere einfach die Empfangsadresse aus der Wallet + deiner Wahl und füge sie hier ein: +
+ + www.qr-code-generator.com + +

+ +

+ Der QR-Code-Generator akzeptiert sowohl Lightning als auch Onchain-Empfangsadressen. + Wir empfehlen dir jedoch Lightning zu verwenden, da es schneller und zumeist deutlich günstiger als Onchain ist. +
+ + + + Vorsicht: Bitte KEINE Lightning-Adressen,verwenden, da diese nach einem bestimmten Zeitraum ablaufen! + Stattdessen nutzt Ihr bitte eine LNURL, da diese Statisch sind. + + + Tipp: Der Lightning TipBot "LN.tips" erzeugt euch eine. Dazu müsst Ihr diesen nur aktivieren und mit dem Befehl + "/advanced" eure LNURL anzeigen lassen und diese copy-pasten. + Alternativ kann dies auch die WalletOfSatoshi, dort sehen Sie aus wie E-Mail Adessen, wie zum Beispiel: + "BitcoinKalle@walletofsatoshi.com" + +

+ +

+ Für die sichere Lagerung deiner Bücher empfehlen wir einen Meetup-Ort, + an dem du regelmäßig bist und die Bücher auch sicher verstaut werden können. + Falls dem nicht der Fall ist, solltet Ihr die Bücher lieber jedes mal separat mit zum Meetup + nehmen und die nicht verliehenen Bücher auch wieder mit zurück. +

+ +

+ Du willst deine Bücher nicht nur deinem lokalen Meetup zur Verfügung stellen, + sondern online an die gesamte Community verschicken, dann komm in die Gruppe: +

+ +

+ +
+ + + @BOOKRING4SATS +
+

+ +

+ + + Vielen Dank, dass du deine Bücher zur Verfügung stellst und uns dabei + hilfst, das Wissen über ₿itcoin zu verbreiten! +

+ +
+ + + Happy Stacking + +
+ +
+
diff --git a/resources/views/livewire/helper/follow-the-rabbit.blade.php b/resources/views/livewire/helper/follow-the-rabbit.blade.php new file mode 100644 index 0000000..ad8101b --- /dev/null +++ b/resources/views/livewire/helper/follow-the-rabbit.blade.php @@ -0,0 +1,4 @@ +
+ +
diff --git a/routes/web.php b/routes/web.php index e3fa224..9aa9b1c 100644 --- a/routes/web.php +++ b/routes/web.php @@ -2,9 +2,31 @@ use Illuminate\Support\Facades\Route; use Livewire\Volt\Volt; +use Illuminate\Http\Request; Route::redirect('/', 'welcome'); +/*Route::get('/download-buecherverleih', function (Request $request) { + $filename = $request->input('filename'); + // Get the file path from the public folder + $filePath = storage_path('app/'.$filename); + dd($filePath); + // Check if the file exists + if (!file_exists($filePath)) { + abort(404); + } + // Generate a response with the file for download + return response()->download($filePath, $filename); +})->name('buecherverleih.download'); + +Route::middleware([]) + ->get('/buecherverleih', \App\Livewire\BooksForPlebs\BookRentalGuide::class) + ->name('buecherverleih');*/ + +Route::middleware([]) + ->get('/kaninchenbau', \App\Livewire\Helper\FollowTheRabbit::class) + ->name('kaninchenbau'); + Route::get('/img/{path}', \App\Http\Controllers\ImageController::class) ->where('path', '.*') ->name('img'); @@ -35,7 +57,8 @@ Route::middleware([]) Volt::route('meetups', 'meetups.index')->name('meetups.index'); Volt::route('map', 'meetups.map')->name('meetups.map'); Volt::route('meetup/{meetup:slug}', 'meetups.landingpage')->name('meetups.landingpage'); - Volt::route('meetup/{meetup:slug}/event/{event}', 'meetups.landingpage-event')->name('meetups.landingpage-event'); + Volt::route('meetup/{meetup:slug}/event/{event}', + 'meetups.landingpage-event')->name('meetups.landingpage-event'); Volt::route('courses', 'courses.index')->name('courses.index'); Volt::route('course/{course}', 'courses.landingpage')->name('courses.landingpage'); @@ -80,4 +103,6 @@ Route::middleware(['auth']) Volt::route('settings/appearance', 'settings.appearance')->name('settings.appearance'); }); +Route::feeds(); + require __DIR__.'/auth.php';