Skip to content

Instantly share code, notes, and snippets.

View jhaoda's full-sized avatar

JhaoDa jhaoda

  • Krasnoyarsk, Russia
View GitHub Profile
@jhaoda
jhaoda / brom.php
Created August 5, 2019 18:52
1С:Бром
<?php interface ИНаблюдатель
{
function ВнешнееСобытие($источник, $имяСобытия, ...$параметры);
}
class ИсточникСобытий
{
private $observers;
public function ОповеститьНаблюдателей($имяСобытия, ...$параметры)
@jhaoda
jhaoda / BaseModel.php
Created October 6, 2017 11:56 — forked from Ellrion/BaseModel.php
Additional helper scopes for Laravel Eloquent Models: `->orderByRelation('author', 'name')`; `->orderByRelationCount('posts')`; `->withJoinnedRelated('author', 'name')`;
<?php
namespace App;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Query\Builder as QueryBuilder;
use Illuminate\Database\Query\Expression;
abstract class BaseModel extends Model
<?php
class Model extends \Eloquent
{
protected $observables = ['readed'];
protected static function boot()
{
parent::boot();
@jhaoda
jhaoda / laravel-exceptions.md
Last active February 21, 2016 19:49
Вариант обработки исключений в Laravel 5.1

По мотивам вопроса в чате...

Внимание! Это не обучающая статья, раскрывающая самые базовые принципы работы с исключениями. Предполагается, что читатель знаком с исключениями и их обработкой в общем, а так же внимательно ознакомился с разделом Errors & Logging официальной документации.

Вся работа с исключения происходит в файле app/Exceptions/Handler.php, в котором есть два метода — report(), отвечающий за логирование исключения и render(), отвечающий за формирование представления, а так же массив $dontReport, содержащий имена классов исключений, которые логировать не надо.

@jhaoda
jhaoda / stylish.css
Last active August 6, 2019 13:00
Old gitter.im style
@-moz-document domain("gitter.im") {
body {
font-family: 'Open Sans';
font-size: 14px;
}
/* common */
h1, h2, h3, h4, h5 {
line-height: 1;
}
@jhaoda
jhaoda / AbstractRepository.php
Created April 18, 2015 14:33
Repository pattern
<?php
namespace App\Repositories;
use App\Model;
use App\Repositories\Contracts\Repository as RepositoryContract;
use InvalidArgumentException;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder as QBuilder;
@jhaoda
jhaoda / Model.php
Last active August 24, 2021 15:14
ЧПУ-пагинация
<?php
use App\Services\PrettyPaginator;
use Illuminate\Pagination\Paginator;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Contracts\Pagination\Paginator as PaginatorContract;
/**
* ЧПУ-пагинация.
*