This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class GooglePlayVerification | |
require 'google/api_client' | |
# Refer: | |
# https://code.google.com/p/google-api-ruby-client/issues/detail?id=72 | |
# and | |
# http://jonathanotto.com/blog/google_oauth2_api_quick_tutorial.html | |
# and | |
# http://milancermak.wordpress.com/2012/08/24/server-side-verification-of-google-play-subsc/ | |
GOOGLE_KEY = 'xxx-xxx.apps.googleusercontent.com' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Place in config/initializers/00_pending_migrations.rb | |
# Raise an error and abort the run there are any pending migrations: | |
if Rails.env.development? | |
# Rails 4 way ;) | |
if Rails.version >= '4' | |
ActiveRecord::Migration.check_pending! | |
else | |
# Rails 3 way - TODO: remove when we up to Rails 4 | |
migrator = ActiveRecord::Migrator.new( |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# QUESTION 1 | |
# What’s the problem with the following controller code? What would be the consequence of leaving this code in a production app? How would you fix it? | |
class MyController < ApplicationController | |
def options | |
options = {} | |
available_option_keys = [:first_option, :second_option, :third_option] | |
all_keys = params.keys.map(&:to_sym) | |
set_option_keys = all_keys & available_option_keys | |
set_option_keys.each do |key| | |
options[key] = params[key] |