Skip to content

Instantly share code, notes, and snippets.

View cgallagher's full-sized avatar

Chris Gallagher cgallagher

View GitHub Profile
@cgallagher
cgallagher / index.html
Created October 2, 2018 14:48
Konva Image Demo // source https://jsbin.com/gatibubelo
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.rawgit.com/konvajs/konva/2.4.0/konva.min.js"></script>
<meta charset="utf-8">
<title>Konva Image Demo</title>
<style>
body {
margin: 0;
padding: 0;
<script src="//platform.twitter.com/oct.js" type="text/javascript"></script>
<script type="text/javascript">twttr.conversion.trackPid('<PIXEL_ID_HERE>', { tw_product_id: '<SKU_ID_HERE>', tw_country_code: '<ISO_COUNTRY_CODE_HERE>' });</script>
<noscript>
<img height="1" width="1" style="display:none;" alt="" src="https://analytics.twitter.com/i/adsct?txn_id=<PIXEL_ID_HERE>&p_id=Twitter&tw_product_id=<SKU_ID_HERE>&tw_country_code=<ISO_COUNTRY_CODE_HERE>" />
<img height="1" width="1" style="display:none;" alt="" src="//t.co/i/adsct?txn_id=<PIXEL_ID_HERE>&p_id=Twitter&tw_product_id=<SKU_ID_HERE>&tw_country_code=<ISO_COUNTRY_CODE_HERE>" />
</noscript>
@cgallagher
cgallagher / traffikr.rb
Last active December 20, 2015 03:19
Not really production ready code in any sense of the word but will build up an ad and point it at a facebook custom audience... you can also generate a lookalike audience if you're bothered.
# not production code - just a bunch of calls that run through the process of creating an ad and pointing it at a custom audience on Facebook.
class Traffikr
cattr_accessor :custom_audience_id, :access_token, :users_json, :account_id, :campaign_id, :image_hash, :creative_id
class << self
@cgallagher
cgallagher / gist:5293000
Last active December 15, 2015 16:59
FQL to find your friends who have iPhones or iOS devices in the Graph API
//find all friends with iOS devices
SELECT uid, name, devices FROM user
WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())
AND "iOS" IN devices
ORDER BY profile_update_time DESC
LIMIT 0, 100
//find friends with iPhones
@cgallagher
cgallagher / instagrammer.rb
Created March 13, 2013 06:49
Include this in your services directory of your Rails application in order to pull in and parse a hashtag RSS feed from Instagram.
class Instagrammer
cattr_accessor :config, :url
class << self
def perform(url, options = {})
defaults = {:expires_in => 15.minutes }
self.config = defaults.merge(options)
self.url = url
@cgallagher
cgallagher / blaa.rb
Created December 17, 2012 17:01
check it all
def redirect_to_canvas_if_no_signed_request_and_not_mobile
if !mobile_device? and !request.post?()
extended_url = ""
if params
extended_url = "#{request.fullpath}"
end
redirect_to "#{Settings.facebook.canvas_url}#{extended_url}"
end
@cgallagher
cgallagher / deploy.rake
Created November 16, 2012 09:34 — forked from ndbroadbent/deploy.rake
Rake task for precompiling assets locally before deploying to Heroku
require 'fileutils'
# Warning: The following deploy task will completely overwrite whatever is currently deployed to Heroku.
# The deploy branch is rebased onto master, so the push needs to be forced.
desc "Deploy app to Heroku after precompiling assets"
task :deploy do
deploy_branch = 'heroku'
remote = 'heroku'
deploy_repo_dir = "tmp/heroku_deploy"
@cgallagher
cgallagher / geo.rb
Created November 8, 2012 10:44
Geo Restriction Logic using geocode gem
def check_user_location
# need to intro a whitelist for IP addresses
user_ip = request.ip
unless user_ip.nil?
logger.info("User IP Address is: #{user_ip}")
user_country = request.location.country
logger.info("User Country is: #{user_country}")
# if in production mode and the user country doesnt match one on the whitelist
# then throw them out to a restricted page.
redirect_to restricted_path() unless knock_knock(user_ip, user_country)
@cgallagher
cgallagher / addtopage.js
Created November 4, 2012 14:24
Bookmarklet for adding to fan page.
%20var%20template%20=%20'http://www.facebook.com/dialog/pagetab?app_id=%7Bid%7D&next=%7Bnext%7D',%20id%20=%20prompt('App%20ID'),next%20=%20prompt('App%20URL',%20'http://example.heroku.com');%20if(id%20&&%20next)%7B%20url%20=%20template.replace('%7Bid%7D',%20id).replace('%7Bnext%7D',%20next);window.location%20=%20url;%7D
@cgallagher
cgallagher / entry.rb
Created November 1, 2012 17:35
Validating Paperclip
# check the type of file and tell them to F off if its wrong.
validates_attachment :image, :presence => true, :size => { :in => 0..10.kilobytes }