Skip to content

Instantly share code, notes, and snippets.

View dux's full-sized avatar

Dino Reić dux

  • Trifolium
  • London, Zagreb, Berlin
View GitHub Profile
@dux
dux / post-commit
Last active August 29, 2015 14:04
StashBuckets.com post commit hook wor Work Logs app
#!/usr/bin/ruby
# create .git/hooks/post-commit
# chmod +x .git/hooks/post-commit
# http://githooks.com/
# to test if it works just run ".git/hooks/post-commit" and it should post last git commit
require 'net/http'
require 'uri'
require 'colorize' # gem install colorize
@dux
dux / remote.rb
Last active August 29, 2015 14:05
simple replacement for Rails capistrano
#!/usr/bin/ruby
require 'open3'
require 'colorize'
# CODE
@actions = {}
def action(id, name, &block)
@actions[id] = { name:name, func:block }
@dux
dux / PubSub
Last active August 29, 2015 14:06
NodeJS PubSub server - simple firebase API clone
sudo npm install nodemon -g
nodemon server.coffee
open stand-alone.html
stand-alone.html?room1
stand-alone.html?room2
stand-alone.html?room3
@dux
dux / app.rb
Last active April 4, 2024 08:01
Sinatra/puma optimized ruby image resizer
#!/usr/bin/ruby
require 'sinatra'
require 'digest'
ROOT = Dir.getwd
error = nil
for dir in ['cache','cache/originals', 'cache/resized', 'cache/pages', 'cache/croped']
dir = "#{ROOT}/#{dir}"
@dux
dux / persona_init.coffee
Last active August 29, 2015 14:09
Mozilla Persona flawless init
window.Persona =
loaded: false
button: null
init: (element) ->
$ ->
Persona.button = $(element)
return unless Persona.button[0]
unless Persona.button[0].persona_binded
@dux
dux / gist:919453968151fe916af2
Created January 25, 2015 04:10
Postgre SQL sequence fix for all tables
--- https://wiki.postgresql.org/wiki/Fixing_Sequences
SELECT 'SELECT SETVAL(' ||
quote_literal(quote_ident(PGT.schemaname) || '.' || quote_ident(S.relname)) ||
', COALESCE(MAX(' ||quote_ident(C.attname)|| '), 1) ) FROM ' ||
quote_ident(PGT.schemaname)|| '.'||quote_ident(T.relname)|| ';'
FROM pg_class AS S,
pg_depend AS D,
pg_class AS T,
pg_attribute AS C,
@dux
dux / application_controller.rb
Last active September 22, 2015 09:34
Rails localizations
def set_request_locale
I18n.default_locale ||= I18n.available_locales[0]
if params[:locale]
if I18n.available_locales.index(params[:locale].to_sym)
session[:locale] = params[:locale]
else
avail = I18n.available_locales.map{|el| %[<a href="#{request.path.sub(/\w+/,el.to_s)}">#{el}</a>] }
page_error 404, "Locale &quot;#{params[:locale]}&quot; is not supported, try with #{avail.to_sentence.sub(/\sand\s/,' or ')}"
end
else
@dux
dux / array_values
Created April 7, 2015 09:47
Custom data types for input.rb
def as_array_values
name = @opts[:name]
ret = []
values = @opts[:value].kind_of?(String) ? @opts[:value].split(',') : @opts[:value]
for el in @opts[:collection]
ret.push %[<label style="position:relative; top:4px;">
<input name="#{name}[#{el[1]}]" value="1" type="checkbox" #{values[el[1]].present? ? 'checked=""' : ''} style="position:relative;top:2px; left:2px;" />
<span style="margin-right:10px;">#{el[0]}</span>
</label>]
end
@dux
dux / assets.rb
Last active August 29, 2015 14:21
Assets parser, raw and uninteligent. parses coffee, less, csss
#!/usr/bin/env ruby
# gem install sass
# npm install -g clean-css
# npm install -g uglify-js
# less, scss, coffee
require 'colorize'
require 'pathname'
require 'json'
require 'listen'
@dux
dux / helper_method.rb
Last active August 29, 2015 14:23
Super simple Ruby/Rails/Sinatra pagination
def paginate(list)
ret = ['<div class="paginate"><div>']
if list.paginate_page > 0
url = Url.current
list.paginate_page == 1 ? url.delete(list.paginate_var) : url.qs(list.paginate_var, list.paginate_page)
ret.push %[<a href="#{url.relative}">&larr;</a>]
else
ret.push %[<span>&larr;</span>]
end