Added support for multiple subdomains

Andrew Kane committed Apr 08, 2014
commit 450ca38810c2d1f868f685cfe6ba0f8b127fd772
Showing 2 changed files with 14 additions and 6 deletions
README.md +10 -0
@@ @@ -109,6 +109,16 @@ http://datakick.org/?utm_medium=twitter&utm_campaign=social&utm_source=tweet123
Ahoy uses [Geocoder](https://github.com/alexreisner/geocoder) for IP-based geocoding.
+ ### Multiple Subdomains [master]
+
+ To track visits across multiple subdomains, add this to your layout **before** the javascript files.
+
+ ```html
+ <script>
+ var Ahoy = {"domain": "yourdomain.com"};
+ </script>
+ ```
+
### More
- Excludes bots
vendor/assets/javascripts/ahoy.js +4 -6
@@ @@ -4,10 +4,10 @@
"use strict";
var debugMode = false;
- var visitTtl, visitorTtl;
+ var options = window.Ahoy || {};
var $ = window.jQuery || window.Zepto || window.$;
var visitToken, visitorToken;
- var cookieDomain;
+ var visitTtl, visitorTtl;
if (debugMode) {
visitTtl = 0.2;
@@ @@ -17,8 +17,6 @@
visitorTtl = 2 * 365 * 24 * 60; // 2 years
}
- cookieDomain = window.ahoyCookieDomain || null;
-
// cookies
// http://www.quirksmode.org/js/cookies.html
@@ @@ -86,12 +84,12 @@
} else {
if (!visitorToken) {
visitorToken = generateToken();
- setCookie("ahoy_visitor", visitorToken, visitorTtl, cookieDomain);
+ setCookie("ahoy_visitor", visitorToken, visitorTtl, options.domain);
}
// always generate a new visit id here
visitToken = generateToken();
- setCookie("ahoy_visit", visitToken, visitTtl, cookieDomain);
+ setCookie("ahoy_visit", visitToken, visitTtl, options.domain);
// make sure cookies are enabled
if (getCookie("ahoy_visit")) {