Skip to content

Instantly share code, notes, and snippets.

View TiagoSilvaPereira's full-sized avatar
💻
Always coding...

Tiago S. P. Rodrigues TiagoSilvaPereira

💻
Always coding...
View GitHub Profile
@TiagoSilvaPereira
TiagoSilvaPereira / Select01.php
Last active March 14, 2019 20:18
KISS aplicado ao código
<?php
// Código complexo gerado pela falta de simplicidade na estrutura
$labels = DB::table('labelables')
->select(['labelables.*', 'labels.id as label_id', 'labels.slug', 'labels.title'])
->join('labels', 'labels.id', 'labelables.label_id')
->where('labels.title', 'like', '%'.$search.'%')
->where('labelables.labelable_type', $request->labelable_type)
->whereRaw('(SELECT count(id)
FROM labelables AS count_labelables
@TiagoSilvaPereira
TiagoSilvaPereira / Select02.php
Created March 14, 2019 20:19
KISS aplicado ao código 02
<?php
// Código mais simples gerada pela restruturação, focada na simplicidade
$currentLabels = $this->getCurrentLabels();
$labels = Label::where('company_id', $company->id)
->whereNotIn('labels.id', $currentLabels);
@extends('layouts.app')
@section('content')
<table class="table">
<tr>
<th>Name</th>
<th>Email</th>
</tr>
@foreach ($users as $user)
<?php
namespace App\Http\Controllers;
use App\User;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function index()
@TiagoSilvaPereira
TiagoSilvaPereira / CrudController.php
Created April 18, 2020 17:07
AbstractCrudController
<?php
namespace App\Http\Controllers\Base;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
abstract class CrudController extends BaseController
@TiagoSilvaPereira
TiagoSilvaPereira / CrudController.php
Last active April 18, 2020 17:34
AbstractCrudController 02
<?php
namespace App\Http\Controllers\Base;
use ReflectionClass;
use Illuminate\Support\Str;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<script id="jsbin-javascript">
@TiagoSilvaPereira
TiagoSilvaPereira / UserController.php
Last active December 3, 2020 21:08
Laravel Controller generated with Vemto Code Generator
<?php
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
use Spatie\Permission\Models\Role;
use Illuminate\Support\Facades\Hash;
use App\Http\Requests\UserStoreRequest;
use Illuminate\Support\Facades\Storage;
@TiagoSilvaPereira
TiagoSilvaPereira / component01.js
Created February 13, 2021 18:08
Alpine.js Image Preview tutorial
function imageViewer() {
return {
imageUrl: '',
}
}
@TiagoSilvaPereira
TiagoSilvaPereira / component02.js
Created February 13, 2021 18:24
Alpine.js image viewer with fileChosen method
function imageViewer() {
return {
imageUrl: '',
fileChosen(event) {
this.fileToDataUrl(event, src => this.imageUrl = src)
},
fileToDataUrl(event, callback) {
if (! event.target.files.length) return