Skip to content

Instantly share code, notes, and snippets.

Avatar

Blair Anderson blairanderson

View GitHub Profile
@blairanderson
blairanderson / bs_toast.js
Last active Aug 23, 2020
Bootstrap 5 : jQuery Toast Builder
View bs_toast.js
var toastIDCounter = 0;
(function ($) {
$.fn.bsToast = function (options) {
if (typeof options === "string") {
options = {
body: options
}
}
var settings = $.extend({
@blairanderson
blairanderson / cleanup.rb
Created Aug 22, 2020
just some nasty file cleanup for an old computer
View cleanup.rb
require 'fileutils'
Dir.glob('/Documents/dev/*').each do |directory|
dir = directory.split("/").last
next if File.file?(dir)
is_git = false
git_remote = ""
has_changes = false
message = ""
@blairanderson
blairanderson / fetch.rake
Last active Jul 22, 2020
Rakefile for fetching the current dist/sass/etc folders from the bootstrap and tachyons GitHub repository
View fetch.rake
namespace :fetch do
desc "fetch tachyons scss files"
task :tachyons do
`curl -LkSs https://github.com/tachyons-css/tachyons-sass/archive/v4.7.1.tar.gz | tar xz`
`mv -f ./tachyons-sass-*/scss ./_sass/tachyons-sass`
`mv -f ./tachyons-sass-*/tachyons.scss ./_sass/tachyons-sass`
`rm -rf ./tachyons-sass-*`
end
desc "fetch bootstrap scss files"
@blairanderson
blairanderson / extract.rb
Created May 14, 2020
write JSON file data to multiple files [ruby]
View extract.rb
require 'active_support'
require 'active_support/core_ext'
require 'json'
JSON.parse(File.open("./_data/companies.json").read).each do |company|
File.open("./_companies/#{company['name'].parameterize}.md", "w") do |f|
f.write "---\n"
f.write "layout: company\n"
f.write "title: #{company['name']}\n"
f.write "categories: prep\n"
@blairanderson
blairanderson / gist:f0b49fb84abfb56e32f13395ddba0196
Created Mar 5, 2020
idea for rails ETL with ActiveStorage
View gist:f0b49fb84abfb56e32f13395ddba0196
class HighAvailabilityETL < RailsFoo
has_one_attached :input
has_one_attached :translate_step1
has_one_attached :translate_step2
has_one_attached :translate_step3
has_one_attached :output
def runner
step1_errors = input_to_translate_step1! unless input.attached?
step2_errors = step1_to_step2! unless translate_step1.attached?
@blairanderson
blairanderson / gist:40eb58d41a7f8a4271f01e3453b69154
Created Nov 7, 2019
DIRECT FULFILMENT (lead time calculation)
View gist:40eb58d41a7f8a4271f01e3453b69154
1. download all orders from https://vendorcentral.amazon.com/hz/vendor/members/df/orders
2. Move column Y to column E
3. Remove timezone string from the columns D & E
4. column F =ROUND(24*(E2-D2),1)
@blairanderson
blairanderson / transfer.rb
Created Nov 5, 2019
Ruby / Rails transfer files from SFTP to FTP folder
View transfer.rb
# ftp_uri is calculated from environment variable and database encrypted account/password
class Transfer
def transfer
require 'net/sftp'
require 'net/ftp'
current_business = Business.find(business_id)
old_directory = "/orders/"
directory = "orders"
sftpuri = current_business.sftp_uri
View keybase.md

Keybase proof

I hereby claim:

  • I am blairanderson on github.
  • I am blairanderson (https://keybase.io/blairanderson) on keybase.
  • I have a public key ASBO7gg1K05ibXO41y3bjm2-S6xY6ixX2Zft1TXd2wJNkwo

To claim this, I am signing this object:

View rails-query-by-email-domain.md

A simple way to add querying by email

# frozen_string_literal: true

module DomainQuery
  extend ActiveSupport::Concern

  class_methods do
    def by_email(domain=nil)
You can’t perform that action at this time.