Skip to content

Instantly share code, notes, and snippets.

View terion-name's full-sized avatar

Terion terion-name

View GitHub Profile
@terion-name
terion-name / preload.coffee
Last active August 29, 2015 14:16
Images preload via promises
# helpers
# $ = jQuery
# See: http://learn.jquery.com/code-organization/deferreds/examples/
# Generic asynchronous cache
$.createCache = (requestFunction)->
cache = {};
return (key, callback)->
if ( !cache[key] )
cache[key] = $.Deferred((defer)->
@terion-name
terion-name / convert.sh
Created January 22, 2015 15:21
Convert video for html5
ffmpeg -i "src.mp4" \
-b 2048k -vcodec libvpx -acodec libvorbis -ab 160000 -f webm -g 30 "v.webm" \
-b 3072k -vcodec libtheora -acodec libvorbis -ab 160000 -g 30 "v.ogv" \
-b 2048k -vcodec h264 -acodec libfaac -ab 160000 -g 30 "v.mp4"
@terion-name
terion-name / Video Loader.md
Last active March 3, 2022 03:02
HTML5 Video force preloader
@terion-name
terion-name / FilterableRouteMixin.coffee
Last active August 29, 2015 14:01
Ember REST pagination and filtering
###
To make a route filterable
specify @modelName property in your route as in example below
App.UsersIndexRoute = Ember.Route.extend Ember.FilterableRouteMixin,
modelName: 'user'
###
Ember.FilterableRouteMixin = Ember.Mixin.create
@terion-name
terion-name / routes.coffee
Last active August 29, 2015 14:01
Ember and NProgress
App.ApplicationRoute = Ember.Route.extend
actions:
loading: ->
NProgress.start()
@router.one('didTransition', ->
setTimeout (-> NProgress.done()), 50
)
true
error: ->
setTimeout (-> NProgress.done()), 50
@terion-name
terion-name / store.coffee
Last active August 29, 2015 14:01
Ember extractors for REST when backend returns data wrapped in "data" object, not in model name and "pagination" as a payload field
App.Store = DS.Store.extend
revision: 1,
adapter: DS.RESTAdapter.extend
namespace: 'api'
App.ApplicationSerializer = DS.RESTSerializer.extend
extractMeta: (store, type, payload)->
if payload && payload.pagination
store.metaForType type, payload.pagination
delete payload.pagination
#User scaffolding
php artisan generate:scaffold user --fields="email:string:nullable:unique, password:string:nullable, first_name:string:nullable, last_name:string:nullable, gender:string(16):nullable:default('male'), birthday:date:nullable"
#Social accounts
php artisan generate:migration create_socials_table --fields="user_id:integer:unsigned, soc_uid:string, provider:string(8), user_id:foreign:references('id'):on('users'):onDelete('cascade')"
php artisan generate:model Social
#Social wall posts
php artisan generate:migration create_social_posts_table --fields="user_id:integer:unsigned:nullable, post_id:string, provider:string(8):default('fb'), user_id:foreign:references('id'):on('users'):onDelete('set null')"
php artisan generate:model SocialPost
@terion-name
terion-name / RecursiveTreeCallbackIterator.php
Created October 29, 2013 20:19
RecursiveTreeIterator that accepts callback for flattening non-string items
<?php
use RecursiveTreeIterator, CachingIterator, RecursiveIterator, RecursiveIteratorIterator;
/**
* RecursiveTreeIterator that accepts callback for flattening non-string items
*
* Class RecursiveTreeCallbackIterator
*/
class RecursiveTreeCallbackIterator extends RecursiveTreeIterator
@terion-name
terion-name / FillingAnimation.html
Last active December 24, 2015 21:38
JS "Filling" animation with semi-transparent images (for preloaders, for example). See demos: http://www.youtube.com/watch?v=zsWTjjl29ls and http://jsfiddle.net/FE2jd/
<div id="preloader">
<div class="sun">
<div class="o"></div>
<div class="w"></div>
</div>
Loading
</div>
@terion-name
terion-name / RedirectAjax.php
Last active December 20, 2015 06:39
Laravel 4 lib that provides AJAX redirects in Redirector. Put it in /app/lib/RedirectAxax directory; add "app_path().'/lib'" to ClassLoader in /start/global.php; bind alias in /app/config/app.php: 'Redirect'=> 'RedirectAjax\RedirectAjax'. After that redirects called in ajax requests will output JSON: {"redirect":"http://example.com"}. Also jQuer…
<?php namespace RedirectAjax;
class RedirectAjax extends \Illuminate\Support\Facades\Redirect {
public static function __callStatic($method, $args) {
\App::bind('redirect', function($app)
{
$redirector = new Redirector($app['url']);