Skip to content

Instantly share code, notes, and snippets.

# Detects user's browser.
def browser_name
ua = request.user_agent.downcase
if ua =~ /firefox\//
:firefox
elsif ua =~ /opera\//
:opera
elsif ua =~ /chrome\//
@jalberto
jalberto / _form.html.haml
Created April 7, 2012 12:11
dynamic form with cocoon
= semantic_form_for(@event, :html => {:multipart => true, :id => "logoUpload", :'data-ajax' => false}) do |f|
= f.inputs do
= f.input(:logo, :as => :file)
= f.input(:logo_cache, :as => :hidden)
= f.input(:name)
= f.input(:info)
#matches
= f.inputs :for => [:matches] do |mf|
= render :partial => 'match_fields', :locals => {:f => mf}
@jalberto
jalberto / list_bootstrap.rb
Created April 16, 2012 22:33
simple-navigation render for twiter bootstrap nav-list
class ListBootstrap < SimpleNavigation::Renderer::Base
def render(item_container)
list = item_container.items.inject([]) do |list, item|
if item.html_options[:opts]
if item.html_options[:opts][:nav_header]
list << li_header(item)
elsif item.html_options[:opts][:icon]
list << li_icon(item)
end
else
@jalberto
jalberto / crontab
Last active December 19, 2015 02:58
Simple Backup script
# m h dom mon dow command
0 2 * * * ruby /path/to/db_backup.rb -d -e production -t dayly
0 2 * * 1 ruby /path/to/db_backup.rb -d -e production -t weekly
@jalberto
jalberto / linecache19_install.sh
Last active December 20, 2015 02:09 — forked from tvdeyen/gist:2711329
Small script to install linecache19
#!/bin/bash
# Install with:
# bash < <(curl -L https://gist.github.com/jalberto/6053996/raw/bcbb6e14d4f26b56c6c589882f047a96a3ab587a/linecache19_install)
#
# Reference: http://blog.wyeworks.com/2011/11/1/ruby-1-9-3-and-ruby-debug
ruby_version="$(rvm info ruby | grep version | head -n1 | awk '{print $2}' | tr '"' ' ')"
echo "Installing ruby-debug with $ruby_version ..."
@jalberto
jalberto / 0_reuse_code.js
Created October 3, 2013 15:39
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
@jalberto
jalberto / to_utf8.sh
Created November 21, 2013 15:05
Bash script to change encoding recursively. Use: sh to_utf8.sh path/dir
#!/bin/bash
# vim: set sw=2 sts=2 tw=80 :
shopt -s globstar
for file in $1/**
do
if test -f $file
then
CHARSET="$(file -bi "$file"|awk -F "=" '{print $2}')"
if [ "$CHARSET" != binary ]; then
if [ "$CHARSET" != utf-8 ]; then
@jalberto
jalberto / backup.rake
Created December 16, 2013 22:30
Simple Rails backup script using Backup gem
# lib/tasks/backup.rake
namespace :backup do
desc "Back up the database"
task :db do
sh "backup perform --trigger backupdb --config_file config/backup.rb --data-path db --log-path log --tmp-path tmp"
end
end
@jalberto
jalberto / Capfile.rb
Created January 28, 2014 16:19
Basic capistrano 3 deploy
require 'capistrano/bundler'
require 'capistrano/rails'
require 'capistrano/rails/assets'
require 'capistrano/rails/migrations'
require 'capistrano/rvm'
@jalberto
jalberto / remote_cache_with_project_root_strategy.rb
Created May 6, 2014 14:17
Capistrano 3.1.x Strategy to deploy git projects with subdirectories
# Usage:
# 1. Drop this file into lib/capistrano/remote_cache_with_project_root_strategy.rb
# 2. Add the following to your Capfile:
# require 'capistrano/git'
# require './lib/capistrano/remote_cache_with_project_root_strategy'
# 3. Add the following to your config/deploy.rb
# set :git_strategy, RemoteCacheWithProjectRootStrategy
# set :project_root, 'subdir/path'
# Define a new SCM strategy, so we can deploy only a subdirectory of our repo.