Skip to content

Instantly share code, notes, and snippets.

View danhorst's full-sized avatar
🛳️
SHIP IT

Dan Brubaker Horst danhorst

🛳️
SHIP IT
View GitHub Profile
@danhorst
danhorst / microfilm.rb
Created June 20, 2012 12:49
Example Rails model that is indexed into Solr with Blacklight
class Microfilm < ActiveRecord::Base
belongs_to :library
belongs_to :location
belongs_to :collection
after_save :update_solr unless ENV['DO_NOT_INDEX']
after_destroy :remove_from_solr
scope :with_shelf_mark, lambda { |*shelf_mark|
where("#{quoted_table_name}.`shelf_mark` LIKE ?", "%#{shelf_mark.flatten.first}%") unless shelf_mark.flatten.first.blank?
@danhorst
danhorst / download_behavior.rb
Created November 18, 2015 14:21
Hydra::Controller::DownloadBehavior from hydra-core 6.4.2
module Hydra
module Controller
module DownloadBehavior
extend ActiveSupport::Concern
included do
before_filter :load_asset
before_filter :load_datastream
end
# No log enteres are made by disadis if a request is made to download an item that is not viewable by the current user
# This single request is logged by disadis for a download request with a valid one-time access token
2015/11/18 09:32:25.159767 dl 10.41.57.0 GET /k6439z92c9d 39.285593ms
# These three requests are logged by disadis for ONE successful request to the downloads controller
2015/11/18 09:32:41.127054 dl 10.41.57.0 GET /k6439z92c9d 37.343704ms
2015/11/18 09:32:41.918609 dl 10.41.57.0 GET /k6439z92c9d 24.011027ms
2015/11/18 09:32:42.127155 dl 10.41.57.0 GET /k6439z92c9d 26.094414ms
@danhorst
danhorst / A Summary
Created April 4, 2013 19:04
Sufia load error
TEMPORARY SOLUTION
`rm spec/factories/senior_thesis_factory.rb`
`bundle exec rake db:drop db:create db:migrate`
`git co -- spec/factories/senior_thesis_factory.rb`
PROBLEM
When the factory for senior thesis loads without the database table 'local_authorities' present it fails:
spec/factories/senior_thesis_factory.rb
@danhorst
danhorst / Boxen project for clamav
Last active December 18, 2015 00:59
How to install the clamav gem on Mac OS X with boxen & homebrew installed clamav. Inspired by: https://gist.github.com/anarchivist/1724852
# /opt/boxen/repo/modules/projects/manifests/your_project.pp
# Install with: boxen your_project
#
# When you're using boxen DO NOT install clamav directly with: brew install clamav
# It won't link the header files correctly.
include homebrew
class projects::your_project {
notify { 'Setting up Your Project': }
@danhorst
danhorst / Gemfile
Last active December 28, 2015 08:39
The Curate gem's internal test application doesn't generate quite right. I make these change two files manually after the test application is generated: `spec/internal/Gemfile`, `spec/internal/app/assets/javascripts/application.js` And re-run bundle install.
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.0'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0'
@danhorst
danhorst / .ruby-version
Last active July 1, 2016 12:58
Working with Locabulary
2.3.1
@danhorst
danhorst / organize-photos.py
Last active July 30, 2018 14:40 — forked from cliss/organize-photos.py
Photo management script. This script will copy photos from "~/Pictures/iPhone Incoming" into a tree the script creates, with folders representing month and years, and photo names timestamped. Completely based on the work of the amazing Dr. Drang; see here: http://www.leancrew.com/all-this/2013/10/photo-management-via-the-finder/You can see more …
#!/usr/bin/python
import sys
import os, shutil
import subprocess
import os.path
from datetime import datetime
######################## Functions #########################
#!/bin/bash
###
### my-script — does one thing well
###
### Usage:
### my-script <input> <output>
###
### Options:
### <input> Input file to read.
### <output> Output file to write. Use '-' for stdout.