Skip to content

Instantly share code, notes, and snippets.

View lorenzo's full-sized avatar

José Lorenzo Rodríguez lorenzo

View GitHub Profile
<?php
namespace App\Routing\Filter;
use Cake\Event\Event;
use Cake\Routing\DispatcherFilter;
class JsonInputFilter extends DispatcherFilter
{
public function beforeDispatch(Event $e)
<?php
namespace App\Controller\Component;
use Cake\Controller\Component\PaginatorComponent;
use Cake\Datasource\RepositoryInterface;
use Cake\Network\Exception\NotFoundException;
use Cake\ElasticSearch\Query;
class ElasticPaginatorComponent extends PaginatorComponent
var div = document.createElement('div');
var container = document.getElementById('container');
div.className = "chat";
container.insertBefore(div, div.firstChild);
var win = Elm.embed(Elm.ChatWindow, div, {
url: url,
userId: client.id,
userName: client.name,
operatorName: 'Tester'
@lorenzo
lorenzo / Chat.elm
Last active February 28, 2016 13:46
port autoScroll : Signal ()
port autoScroll = Signal.map (always ()) scrollMailbox.signal
scrollMailbox : Signal.Mailbox Action
scrollMailbox = Signal.mailbox FromEffect
{- configuration for the start app -}
config : StartApp.Config Model Action
config =
{ init = (initialModel, initialEffect)
<?php
->finder('comment', [
'finder' => 'byComment'
])
...
public function findByComment($query, $options) {
return $query->matching('SomethingHere.Comments', function ($q) use ($options) {
<?php
namespace App\Form;
use JsonSerializable;
class ErrorBag implements JsonSerializable
{
protected $_errors;
<?php
Router::addUrlFilter(function ($params, $request) {
if (empty($params['controller'])) {
return $params;
}
if ($params['controller'] === 'Languages' && $params['action'] === 'view') {
$params['controller'] = 'Locations';
$params['action'] = 'index';
<?php
function unsafeIN($field, $values)
{
return function ($expression) use ($field,$values) {
if (empty($values)) {
return $expression->add(['1 != 1']);
}
return $expression->in($field, $values);
};
}
<?php
$values = [
['title' => 'foo', 'body' => 'bar'],
['title' => 'foo 2', 'body' => 'bar 2'],
];
$query = $table->query();
$query
->insert(['title', 'body'])
->clause('values')
->values($values);
<?php
function isContained($normalized, $ImLookingForYou) {
foreach ($normalized as $alias => $meta) {
$exists = $alias === $ImLookingForYou;
return $exists || $this->isContained($meta->associations(), $ImLookingForYou);
}
return false;
};