New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

ga-love

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ga-love

  • 0.0.1
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

ga-love

A tool for generating click event tracking & cohorts using google analytics.

Installation Gemspec

gem 'ga-love'

Create config/google_analytics.yml

development:
  google_analytics_stream_id: <YOUR STREAM ACCOUNT ID>
  google_analytics_id: <YOUR CLEAN ACCOUNT ID>

test:
  ...

production:
  ...

Create config/initializers/app_config.rb

AppConfig = YAML.load_file(Rails.root.join('config', 'google_analytics.yml'))

# Override config options by correct environment
env_options = AppConfig.delete(Rails.env)

AppConfig.merge!(env_options) unless env_options.nil?

Include in your layout

  = render(:partial => "ga-love/index")

Sample Use

Clicks are tracked to <YOUR STREAM ACCOUNT> and pageviews are logged to <YOUR CLEAN ACCOUNT>. The following elements are tracked by default:

  • .pinit
  • a
  • input[type=submit]
  • input[type=button]
  • button

You can add custom data to each click event by setting an object in your controller. This example logs data that would be useful in making a cohort analysis.

class ApplicationController < ActionController::Base
  ...
  before_filter :ga_stuff
  ...
  def ga_stuff
    @ga_url = URI.parse(request.fullpath)
    @ga_url.query ||= ""
    session[:session_id] ||= nil
    @ga_user = {:session_id => request.session_options[:id]}
    if user_signed_in?
      @ga_user.merge!( {
        :id => current_user.id,
        :signed_up_at => current_user.created_at.strftime("%-d-%-m-%Y"),
        :login_count => current_user.login_count
      })
    end
    @ga_url.query += "&#{@ga_user.to_query}"    
  end
  ...
end

To Do

  • remove .pinit
  • offer a way to add classes/elements

Submitting an Issue

We use the GitHub issue tracker to track bugs and features. Before submitting a bug report or feature request, check to make sure it hasn't already been submitted. You can indicate support for an existing issuse by voting it up. When submitting a bug report, please include a Gist that includes a stack trace and any details that may be necessary to reproduce the bug, including your gem version, Ruby version, and operating system. Ideally, a bug report should include a pull request with failing specs.

Submitting a Pull Request

  1. Fork the project.
  2. Create a topic branch.
  3. Implement your feature or bug fix.
  4. Add documentation for your feature or bug fix.
  5. Run rake doc:yard. If your changes are not 100% documented, go back to step 4.
  6. Add specs for your feature or bug fix.
  7. Run rake spec. If your changes are not 100% covered, go back to step 6.
  8. Commit and push your changes.
  9. Submit a pull request. Please do not include changes to the gemspec, version, or history file. (If you want to create your own version for some reason, please do so in a separate commit.)

Copyright (c) 2013 K$. See LICENSE for details.

FAQs

Package last updated on 18 Mar 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc