Skip to content

Instantly share code, notes, and snippets.

@mkwsra
mkwsra / Controller.php
Created December 25, 2021 14:40
Laravel - Code snippet - SQL REGEXP search with users full name not only first & last
namespace App\Http\Controllers;
// ....
public static function sanitizeAndPrepareForRegexSearch($searchQuery)
{
// General input sanitization
$sanitized = trim(filter_var($searchQuery, FILTER_SANITIZE_STRING));
// Reserved chars for regex operator
$excludedChars = config('app.excluded_chars'); // ['(', ')', '[', ']', '#', '@', '?', '!', '_', '-', '/', '\\', '^', '~']
@mkwsra
mkwsra / form.blade.php
Created December 21, 2021 22:38
An Example of using StoreMarketingQueryParamsMiddleware.php
<!-- .... -->
<!-- UTM params -->
<input type="hidden" name="utm_source" value="{{ session('utm_source') }}">
<input type="hidden" name="utm_medium" value="{{ session('utm_medium') }}">
<input type="hidden" name="utm_campaign" value="{{ session('utm_campaign') }}">
<input type="hidden" name="utm_term" value="{{ session('utm_term') }}">
<input type="hidden" name="utm_content" value="{{ session('utm_content') }}">
<!-- Other handy inputs for marketing ROIs -->
<input type="hidden" name="url" value="{{request()->url()}}">
@mkwsra
mkwsra / Kernel.php
Last active January 6, 2022 21:38
Laravel middleware to store marketing related query string params
// Usage
class Kernel extends HttpKernel
{
// .....
// .....
// .....
protected $routeMiddleware = [
// .....
@mkwsra
mkwsra / HasStatuses.php
Created December 19, 2021 00:00
Laravel - Has Statuses Trait
<?php
namespace App\Traits;
use Illuminate\Database\Eloquent\Builder;
trait HasStatuses
{
const STATUS_DRAFT = 0;
const STATUS_ACTIVE = 1;
<?php
namespace App\Http\Controllers;
use App\Models\Post;
use App\Traits\HasUuid;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
<?php
namespace App\Providers;
// Example models.
use App\Models\Post;
use App\Models\Taxonomy;
use App\Models\University;
use App\Models\LanguageInstitute;
use App\Models\Exam;
<?php
namespace App\Traits;
use App\Http\Controllers\Controller;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
trait HasUuid
{
<?php
namespace App\Models;
// ...
// Remember to import it
use App\Traits\HasUuid;
class Post extends Model
{
<?php
namespace App\Http\Controllers;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
class Controller extends BaseController
<?php
namespace App\Models;
class Post extends Model implements HasMedia, ShouldHaveTypes
{
// ...
// Add/override the boot function
protected static function boot()