Skip to content

Instantly share code, notes, and snippets.

View atomjoy's full-sized avatar

Atomjoy atomjoy

View GitHub Profile
@atomjoy
atomjoy / Laravel-Notification-Email-Test.md
Last active September 8, 2025 11:12
Laravel notification email message testing.

Test Email Notifications in Laravel

How to test email message from notifications in Laravel (MailMessage).

Activation Notification

<?php

namespace App\Notifications;
@atomjoy
atomjoy / Laravel-Schedule.md
Created September 5, 2025 08:20
Schedule Laravel.

Schedule Laravel

Polecenia

# Lista
php artisan schedule:list
# Lokalnie
php artisan schedule:work
# Cron
@atomjoy
atomjoy / Laravel-Sanctum-Multi-Guards.md
Last active September 3, 2025 18:05
Laravel sanctum multiple guards.

Laravel Sanctum Multi Guards

Sanctum loguje zawsze guardy z ustawień 'guard' => ['web', 'admin'] trzeba sprawdzać który user jest zalogowany (sanctum guard nie działają podwójne logowania, zawsze brany jest pierwszy guard) można to zmienić dodając auth:web,sanctum i auth:admin,sanctum middleware.

<?php

// Działa to z tokenem i guardami, nawet z podwójnie zalogowanymi userami SPA z testów!

// Użyj web guard a jak nie to sanctum guard
@atomjoy
atomjoy / Laravel-Payment-Gateways.md
Last active August 28, 2025 19:01
How to set up a payment system in Laravel that supports multiple payment gateways with interfaces and collection.

Laravel Payment Gateways

How to set up a payment system in Laravel that supports multiple payment gateways with interfaces and collection.

Payment Gateway Interface

<?php

namespace App\Payments\Contracts;
@atomjoy
atomjoy / Sanctum-Spatie-Permissions-Laravel.md
Last active September 3, 2025 12:04
Jak dodać role i uprawnienia do zalogowanego użytkownika z Sanctum w Laravel.

Laravel Sanctum Spatie Permissions

Jak dodać role i uprawnienia do zalogowanego użytkownika z Sanctum w Laravel.

Zalogowany user

W sanctum ładujesz relacje za pomocą ->fresh(['roles','permissions']) dla zalogowanego użytkownika.

<?php
@atomjoy
atomjoy / ExpiredToken.php
Last active August 8, 2025 15:10
Laravel Sanctum Expired Token Middleware
<?php
namespace App\Http\Middleware\Api;
use Closure;
use Illuminate\Http\Request;
use Laravel\Sanctum\PersonalAccessToken;
/**
* Sanctum expired token middleware.
@atomjoy
atomjoy / Component-Slot-Event.vue
Last active July 15, 2025 11:26
Vue componen slot event.
<script setup>
import { ref } from 'vue';
let selector_slot = ref('accept');
</script>
<template>
<SelectorSlot v-model="selector_slot" name="selector_slot">
<template v-slot:default="{ onClick }">
<SelectorSlotButton v-model="selector_slot" value="accept" @click="onClick('accept')">✔️ Accept</SelectorSlotButton>
<SelectorSlotButton v-model="selector_slot" value="reject" @click="onClick('reject')">🚩 Reject</SelectorSlotButton>
@atomjoy
atomjoy / Load-Json-Translations-Dynamically.vue
Last active July 2, 2025 10:06
Load JSON translations dynamically from API in Vue 3 component with axios.
<script setup>
import { onBeforeMount, ref, watch } from 'vue';
import { useI18n } from 'vue-i18n';
let { locale } = useI18n({ useScope: 'global' });
let list = ref(null);
onBeforeMount(async () => {
await load();
});
@atomjoy
atomjoy / Locales.vue
Last active July 2, 2025 09:30
Vue component local locales
<script setup>
// See: https://vue-i18n.intlify.dev/guide/advanced/composition
import { computed } from 'vue'
import { useI18n } from 'vue-i18n'
const { t } = useI18n({
// useScope: 'global', // Overwrite global
locale: 'en',
messages: {
en: {
@atomjoy
atomjoy / Queue-Mail-Jobs-Laravel.md
Last active June 21, 2025 08:23
Kolejkowanie wiadomości email w Laravel (queue, jobs, events).

Queue Mail Jobs Laravel

Laravel pozwala na łatwe tworzenie zadań w kolejce, które mogą być przetwarzane w tle. Przenosząc czasochłonne zadania do kolejki, Twoja aplikacja może odpowiadać na żądania internetowe szybciej i zapewniać lepsze wrażenia użytkownika.

Dodaj zadanie do kolejki