Skip to content

Instantly share code, notes, and snippets.

View adriand's full-sized avatar

Adrian Duyzer adriand

  • Hamilton, Ontario
View GitHub Profile
class Video < ActiveRecord::Base
validates_presence_of :title
named_scope :finished, :conditions => { :encoded_state => "finished" }
has_attached_file :video,
:url => ":class/:id/:style/:basename.:extension",
:path => ":class/:id/:style/:basename.:extension",
:storage => :s3
validates_attachment_presence :video
@adriand
adriand / when.rb
Created October 11, 2013 14:35
Ruby case/when for class
# this does not work:
case @object.class
when ModelHome then path_for_model_home
end
# this works:
case @object
when ModelHome then path_for_model_home
end
def get_events
# TODO: remove - this is for testing and benchmarking the two implementations
if false
(conditions ||= []) << "user_id IN (#{params[:employee_ids].split('-').map{|i| i.to_i}.join(',')})" unless params[:employee_ids].blank?
(conditions ||= []) << "client_id IN (#{params[:client_ids].split('-').map{|i| i.to_i}.join(',')})" unless params[:client_ids].blank?
(conditions ||= []) << "group_id IN (#{params[:group_ids].split('-').map{|i| i.to_i}.join(',')})" unless params[:group_ids].blank?
@events = conditions.blank? ? [] : Event.all(:conditions => ["(starts_on >= ? AND ends_on <= ?) AND (#{conditions.join(' OR ')})", Time.at(params[:start].to_i), Time.at(params[:end].to_i)], :include => :group)
render :json => { :events => @events.map {|e| e.attrs_for_json(params[:employee_ids], params[:client_ids]) } }
else
@adriand
adriand / Monokai.dvtcolortheme
Created August 9, 2012 17:41 — forked from kristoferjoseph/Monokai.dvtcolortheme
Molokai theme for XCode4
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>DVTConsoleDebuggerInputTextColor</key>
<string>0.995968 0.995968 0.995968 1</string>
<key>DVTConsoleDebuggerInputTextFont</key>
<string>Inconsolata - 16.0</string>
<key>DVTConsoleDebuggerOutputTextColor</key>
<string>0.995968 0.995968 0.995968 1</string>
@adriand
adriand / gist:3198178
Created July 29, 2012 11:58
ActiveMerchant and PayPal
# controller
def notify
order = Order.capture_payment(request.raw_post)
render :nothing => true
end
# Order model
def self.capture_payment(raw_post)
# class
class DispatchQueueCreator
class << self
def send_to_all_subscribers!(dispatch)
Subscriber.all.each do |subscriber|
qd = QueuedDispatch.create(:subscriber => subscriber, :dispatch => dispatch)
qd.send!
@adriand
adriand / gist:3177806
Created July 25, 2012 18:42
unobtrusive AJAX
# in the view
= form_for([:forge, @job, job_application], :remote => true) do |f|
# in the JS header portion of the view
$("form").on("ajax:success", function(data, status, xhr) {
alert("Success");
});
- (void) handleDataFromRemoteOrigin:(id)data
{
NSString *content;
*content = [data valueForKeyPath:@"content"];
}
@adriand
adriand / class_properties.coffee
Created October 12, 2011 20:43
CS class properties
class Lead
state = "in-progress"
end
# OR
class Lead
constructor: ->
super
module Forge
require 'forge/settings'
require 'forge/credit_card_processor'
@@settings = YAML::load(File.open(Rails.root + 'config/settings.yml')).recursive_symbolize_keys!
def self.settings
@@settings
end