Skip to content

Instantly share code, notes, and snippets.

@atomical
atomical / bitstream-from-sub.py
Last active April 21, 2023 18:22 — forked from jinschoi/bitstream-from-sub.py
Python script to clean up and recover an OOK bitstream from a Flipper RAW .sub file.
#!/usr/bin/env python
# Find the raw bitstring from a captured Flipper RAW .sub file.
# Must provide the bitlength in ms, and the allowable error which can be tolerated.
import re
import sys
import math
filename = sys.argv[1]
@atomical
atomical / tiny_tds_wrapper.rb
Created December 16, 2019 17:39
TinyTDS wrapper for Connection Pool gem
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)
@atomical
atomical / remove_protocol_from_url.rb
Created January 28, 2014 18:22
Remove protocol from URL
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 January 17, 2014 16:23
Parent child window communication javascript
var child = parent.open();
$(child.document).find('body').append("Some text");
after_save do |record|
record.remove_relationship(:is_manager)
record.add_relationship(:is_manager, "info:fedora/#{record.collection.id}")
end
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:
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 December 18, 2015 02:09
Finding records in Active Fedora without knowing the class
[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
  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

require 'net/http'
# $ cat http_requests.log | grep "GET /" | wc -l
class BacktraceLogger
def initialize
end
def << ( s )
open
@@file.write s