Skip to content

Instantly share code, notes, and snippets.

View maier-stefan's full-sized avatar
🏠
Working from home

Stefan Maier maier-stefan

🏠
Working from home
View GitHub Profile
@maier-stefan
maier-stefan / reports_datatable.rb
Created August 7, 2015 18:02
Issue with datatable
class CampaignOfferIspReportDatatable < AjaxDatatablesRails::Base
def sortable_columns
# Declare strings in this format: ModelName.column_name
@sortable_columns ||= [
'Offer.name',
'Campaign.name',
'Carrier.name',
'visits',
'clicks',
'conversions',
@maier-stefan
maier-stefan / models.rb
Last active August 29, 2015 14:23
Joins Query
Campaign
has_many :campaign_offers
CampaignOffer
has_many :campaign_offer_reports
belongs_to :campaign
CampaignOfferReport
belongs_to :campaign_offer
@maier-stefan
maier-stefan / controller.rb
Last active August 29, 2015 14:21
ajax call rendering partial
def blacklisted_publishers
@campaigns = Campaign.joins(:campaign_publishers).where(:campaign_publishers => {blacklisted: true, blacklisted_on_publisher_network: false}).group(:campaign_id)
end
def manipulate_blacklisted_publishers
@campaigns = Campaign.joins(:campaign_publishers).where(:campaign_publishers => {blacklisted: true, blacklisted_on_publisher_network: false}).group(:campaign_id)
if params[:publisher_network_id].present?
@publisher_network = PublisherNetwork.find(params[:publisher_network_id])
@campaigns = @campaigns.where(publisher_network_id: @publisher_network.id)
end
@maier-stefan
maier-stefan / voluum_api_v2.rb
Last active October 18, 2022 11:07
Voluum Api Wrapper
require 'httparty'
require 'json'
class VoluumApiV2
include HTTParty
def urlify_time(time)
time.strftime("%Y-%m-%dT%H") << "%3A00%3A00Z"
end
def urlify_date(time)
<%= f.collection_check_boxes(:ip_range_ids, @ip_ranges, :id, :isp) do |b| %>
<div class="row">
<%= b.label(class: "check_box") do %>
<div class="col-xs-4">
<%= b.check_box(class: "check_box") %>
</div>
<div class="col-xs-8">
<%= b.object.isp %>
</div>
@maier-stefan
maier-stefan / apiclass.rb
Created February 10, 2015 09:15
API Class how to store a token for several instances
class API
include HTTParty
def initialize(options = {})
@auth = {
:username => options[:username],
:password => options[:password]
}
@token = options[:token]
end
require 'rubygems'
require 'httparty'
require 'curb'
require 'net/http'
require 'benchmark'
include Benchmark
RUNS = 1000
url = 'http://localhost:4567/'
@maier-stefan
maier-stefan / init.rb
Last active August 29, 2015 14:14
initalizer to get auth key from third party provider
def initialize(username, password)
auth = {:username => username, :password => password}
begin
begin
response = HTTParty.get("https://security.example.com/login", :basic_auth => auth)
case response.code
when 200
puts "All good!"
data = JSON.parse(response.body)
@token = token = JSON.parse(response.body)['token']
@maier-stefan
maier-stefan / authenticable.rb
Last active August 29, 2015 14:14
get access to api via auth_token
module Authenticable
# Devise methods overwrites
def current_user
@current_user ||= User.find_by(auth_token: request.headers['Authorization'])
end
def authenticate_with_token!
render json: { errors: "Not authenticated" }, status: :unauthorized unless user_signed_in?
end
@maier-stefan
maier-stefan / console
Created January 26, 2015 14:44
User auth key
$ rails c
Loading development environment (Rails 4.1.6)
2.1.4 :001 > User.create(email: "stefan@gmail.com", password: "somepassword123", password_confirmation: "somepassword123")
(0.2ms) begin transaction
User Exists (0.3ms) SELECT 1 AS one FROM "users" WHERE "users"."auth_token" = '' LIMIT 1
User Exists (0.1ms) SELECT 1 AS one FROM "users" WHERE "users"."email" = 'stefan@gmail.com' LIMIT 1
(0.1ms) rollback transaction
=> #<User id: nil, email: "stefan@gmail.com", encrypted_password: "$2a$10$l6LMCC4/LbAZQUxQBZK04O9ks3WXswUNfzhAQpMwBGe...", reset_password_token: nil, reset_password_sent_at: nil, remember_created_at: nil, sign_in_count: 0, current_sign_in_at: nil, last_sign_in_at: nil, current_sign_in_ip: nil, last_sign_in_ip: nil, created_at: nil, updated_at: nil, auth_token: "">
2.1.4 :002 >