Skip to content

Instantly share code, notes, and snippets.

@atomical
atomical / tiny_tds_wrapper.rb
Created Dec 16, 2019
TinyTDS wrapper for Connection Pool gem
View tiny_tds_wrapper.rb
class TinyTdsWrapper
def initialize(config)
@config = config
@client = nil
end
def method_missing(method_name, *args, &block)
connect!
begin
@client.send(method_name, *args, &block)
View net-http-debug.rb
require 'net/http'
# $ cat http_requests.log | grep "GET /" | wc -l
class BacktraceLogger
def initialize
end
def << ( s )
open
@@file.write s
View remove_protocol_from_url.rb
require 'uri'
url = 'http://google.com/'
def remove_protocol_from_url( url )
url = url[2..-1] if url.start_with?('//')
uri = URI(url)
if scheme = uri.scheme
url = url[scheme.length + 3..-1] # :// is 3 bytes
@atomical
atomical / file.js
Created Jan 17, 2014
Parent child window communication javascript
View file.js
var child = parent.open();
$(child.document).find('body').append("Some text");
View gist:5910653
after_save do |record|
record.remove_relationship(:is_manager)
record.add_relationship(:is_manager, "info:fedora/#{record.collection.id}")
end
View gist:5901432
def active_for_controller controller_name
params[:controller].to_s == controller_name.to_s ? 'active' : ''
end
def active_for_action action_name
params[:action].to_s == action_name.to_s ? 'active' : ''
end
Usage:
View controller
class RolesController < ApplicationController
include Hydra::RoleManagement::RolesBehavior
prepend_before_filter :accept_batches, only: [:destroy]
def destroy
@roles.each {|role| role.destroy}
redirect_to roles_path, notice: "Successfully deleted groups: #{params[:ids].join(", ")}"
end
@atomical
atomical / gist:5708693
Last active Dec 18, 2015
Finding records in Active Fedora without knowing the class
View gist:5708693
[147] pry(main)> ActiveFedora::Base.send( :find_one, 'avalon:692', { cast: true })
=> #<MasterFile:3210659936578975662 @pid="avalon:692" >
[148] pry(main)> ActiveFedora::Base.send( :find_one, 'avalon:692', { cast: true }).class
=> MasterFile
View Matterhorn Install.markdown
  1. Install XCode

  2. Install Command Line Tools from XCode Preferences

  3. Install Homebrew

  4. Install rvm or rbenv

  5. Install Matterhorn dependencies within Homebrew