Skip to content

Instantly share code, notes, and snippets.

View swrobel's full-sized avatar

Stefan Wrobel swrobel

View GitHub Profile
@swrobel
swrobel / spree_1.3.3_to_2.0.4.md
Last active December 18, 2018 16:48
HOWTO: Upgrade Spree 1.3.3 to 2.0.4

HOWTO: Upgrade Spree 1.3.3 to 2.0.4

These steps were sufficient to upgrade Cult Cosmetics to Spree 2.0.4 from 1.3.3. Here are some details on our environment.

  • We only have single-variant products
  • We are not making use of stock locations (single warehouse)
  • Frontend entirely overridden w/ custom bootstrap layout
  • Braintree gateway
  • Rails 3.2.14
  • Upgraded from Ruby 1.9.3-p448 to 2.0.0-p247 in the process (no issues)
@swrobel
swrobel / spree2_orders_by_product.sql
Last active December 21, 2015 07:49
Number of orders by product in Spree 2.0+
SELECT p.id,
sum(quantity) AS num_sold
FROM spree_orders o
JOIN spree_line_items li ON o.ID = li.order_id
JOIN spree_variants v ON li.variant_id = v.id
JOIN spree_stock_items i ON v.id = i.variant_id
JOIN spree_products p ON v.product_id = p.id
WHERE o.state = 'complete'
GROUP BY p.id
@swrobel
swrobel / _toggle_macbook_wifi_when_ethernet_conected.md
Last active December 16, 2015 22:08
Toggle airport depending on wired network status. Works on Retina Macbooks using thunderbolt ethernet adapter (en3). Airport should be en0.
  1. sudo mv toggleAirport.sh /Library/Scripts/
  2. sudo chmod 755 /Library/Scripts/toggleAirport.sh
  3. sudo mv com.mine.toggleairport.plist /System/Library/LaunchAgents/
  4. sudo chown root:wheel /System/Library/LaunchAgents/com.mine.toggleairport.plist
  5. sudo launchctl load /System/Library/LaunchAgents/com.mine.toggleairport.plist

The script should run on startup and give you growl notifications when airport status is changed if you have GrowlNotify installed

Credit to www.georges.nu/blog/2011/06/how-to-automatically-turn-off-airport-when-ethernet-is-plugged-in/

@swrobel
swrobel / responsive-mixin.scss
Last active December 16, 2015 07:39
respond-to mixin
$phone: '(max-width: 480px)';
$tablet-portrait: '(max-width: 767px)';
$tablet-landscape-desktop: '(min-width: 768px) and (max-width: 979px)';
$large-desktop: '(min-width: 1200px)';
$non-retina: 'screen and (-webkit-max-device-pixel-ratio: 1)';
$retina: 'screen and (-webkit-min-device-pixel-ratio: 2)';
@mixin respond-to($media) {
@media #{$media} {
@content;
editor
foreground: F8F8F8
background: 141414
caret: A7A7A7
editor-selection
background: 33363a
COMMENT
foreground: 5F5A60
@swrobel
swrobel / copy_db.sql
Created March 23, 2012 17:41
MySQL script to copy from one database to another in pure SQL
DELIMITER $$
DROP PROCEDURE IF EXISTS `CopyDB` $$
CREATE PROCEDURE `CopyDB` (sourceDB VARCHAR(64),targetDB VARCHAR(64))
TheStoredProcedure:BEGIN
DECLARE found_count,ndx,ndx_last INT;
DECLARE sqlcmd VARCHAR(1024);
SELECT COUNT(1) INTO found_count
FROM information_schema.tables
@swrobel
swrobel / gemfile_changelog.rb
Created March 23, 2012 01:21
Get Changelogs for outdated gems in Gemfile
#!/usr/bin/env ruby
def changelog_for_gem(gem)
changelogs = `bundle exec gem contents #{gem}`.lines.grep(/history|changelog|news/i)
if changelogs.empty?
puts "No changelog found for gem #{gem}"
return nil
end