rugalytics 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,5 @@
1
+ v0.0.4. fix for HTML and URL changes at Google Analytics site
2
+
1
3
  v0.0.3. get some rails integration going on, with config/rugalytics.yml
2
4
 
3
5
  v0.0.2. only use graph points that fall within given report dates
data/README CHANGED
@@ -22,6 +22,7 @@ Should be up at rubyforge, so to install:
22
22
 
23
23
  Login with your Google Analytics user name and password:
24
24
 
25
+ require 'rubygems'
25
26
  require 'rugalytics'
26
27
 
27
28
  Rugalytics.login 'username', 'password'
@@ -114,13 +115,39 @@ Let's now grab 100 lines of the Networks report:
114
115
  => "telecom xtra"
115
116
 
116
117
 
118
+ ==Use in Rails
119
+
120
+ To use from Rails, make a config file rails_root/config/rugalytics.yml
121
+ with the following contents:
122
+
123
+ ---
124
+ account: <account_name>
125
+ profile: <profile_name>
126
+ username: <user_name>
127
+ password: <pass_w>
128
+
129
+ Remember to tell your source control system to ignore this file! If you're
130
+ using git, this means adding config/rugalytics.yml to you .gitignore
131
+ file.
132
+
133
+ vi .gitignore
134
+ config/rugalytics.yml
135
+
136
+ You can now use Rugalytics from within Rails, and login will be done
137
+ automatically, e.g.:
138
+
139
+ profile = Rugalytics.default_profile
140
+ report = profile.load_report('TopContent', :from=>(Date.today - 7) )
141
+ top_items_over_week = report.items.sort_by{|i| i.unique_page_views.to_i}.reverse
142
+
143
+
117
144
  ==Acknowledgements
118
145
 
119
146
  Rugalytics started life as a fork of jnunemaker's Statwhore. As the code and
120
147
  project scope began to diverge significantly from Statwhore, a new project was
121
- initiated.
148
+ initiated. Rugalytics makes use of the googlebase gem to login to Google.
122
149
 
123
- Rugalytics makes use of the Morph gem to emerge Ruby class definitions at
150
+ Rugalytics makes use of the morph gem to emerge Ruby class definitions at
124
151
  runtime based on the contents of the CSV reports from Google Analytics.
125
152
 
126
153
  ==License
data/README.rdoc CHANGED
@@ -22,6 +22,7 @@ Should be up at rubyforge, so to install:
22
22
 
23
23
  Login with your Google Analytics user name and password:
24
24
 
25
+ require 'rubygems'
25
26
  require 'rugalytics'
26
27
 
27
28
  Rugalytics.login 'username', 'password'
@@ -114,13 +115,39 @@ Let's now grab 100 lines of the Networks report:
114
115
  => "telecom xtra"
115
116
 
116
117
 
118
+ ==Use in Rails
119
+
120
+ To use from Rails, make a config file rails_root/config/rugalytics.yml
121
+ with the following contents:
122
+
123
+ ---
124
+ account: <account_name>
125
+ profile: <profile_name>
126
+ username: <user_name>
127
+ password: <pass_w>
128
+
129
+ Remember to tell your source control system to ignore this file! If you're
130
+ using git, this means adding config/rugalytics.yml to you .gitignore
131
+ file.
132
+
133
+ vi .gitignore
134
+ config/rugalytics.yml
135
+
136
+ You can now use Rugalytics from within Rails, and login will be done
137
+ automatically, e.g.:
138
+
139
+ profile = Rugalytics.default_profile
140
+ report = profile.load_report('TopContent', :from=>(Date.today - 7) )
141
+ top_items_over_week = report.items.sort_by{|i| i.unique_page_views.to_i}.reverse
142
+
143
+
117
144
  ==Acknowledgements
118
145
 
119
146
  Rugalytics started life as a fork of jnunemaker's Statwhore. As the code and
120
147
  project scope began to diverge significantly from Statwhore, a new project was
121
- initiated.
148
+ initiated. Rugalytics makes use of the googlebase gem to login to Google.
122
149
 
123
- Rugalytics makes use of the Morph gem to emerge Ruby class definitions at
150
+ Rugalytics makes use of the morph gem to emerge Ruby class definitions at
124
151
  runtime based on the contents of the CSV reports from Google Analytics.
125
152
 
126
153
  ==License
data/Rakefile ADDED
@@ -0,0 +1,23 @@
1
+ require 'rubygems'; require 'spec'; require 'lib/rugalytics'
2
+
3
+ begin
4
+ require 'echoe'
5
+
6
+ Echoe.new("rugalytics", Rugalytics::VERSION) do |m|
7
+ m.author = ["Rob McKinnon"]
8
+ m.email = ["rob ~@nospam@~ rubyforge.org"]
9
+ m.description = File.readlines("README").first
10
+ m.rubyforge_name = "rugalytics"
11
+ m.rdoc_options << '--inline-source'
12
+ m.rdoc_pattern = ["README", "CHANGELOG", "LICENSE"]
13
+ m.dependencies = ["hpricot >=0.6", "activesupport >=2.0.2", "googlebase >=0.2.0", "morph >=0.2.0"]
14
+ end
15
+
16
+ rescue LoadError
17
+ puts "You need to install the echoe gem to perform meta operations on this gem"
18
+ end
19
+
20
+ desc "Open an irb session preloaded with this library"
21
+ task :console do
22
+ sh "irb -rubygems -r ./lib/rugalytics.rb"
23
+ end
@@ -3,8 +3,8 @@ module Rugalytics
3
3
 
4
4
  class << self
5
5
  def find_all
6
- doc = Hpricot::XML get('https://www.google.com:443/analytics/home/')
7
- (doc/'select[@name=account_list] option').inject([]) do |accounts, option|
6
+ doc = Hpricot::XML get('https://www.google.com:443/analytics/settings/')
7
+ (doc/'select[@id=account] option').inject([]) do |accounts, option|
8
8
  account_id = option['value'].to_i
9
9
  accounts << new(:account_id => account_id, :name => option.inner_html) if account_id > 0
10
10
  accounts
@@ -3,8 +3,8 @@ module Rugalytics
3
3
 
4
4
  class << self
5
5
  def find_all(account_id)
6
- doc = Hpricot::XML get("https://www.google.com:443/analytics/home/admin?scid=#{account_id}")
7
- (doc/'select[@name=profile_list] option').inject([]) do |profiles, option|
6
+ doc = Hpricot::XML get("https://www.google.com:443/analytics/settings/home?scid=#{account_id}")
7
+ (doc/'select[@id=profile] option').inject([]) do |profiles, option|
8
8
  profile_id = option['value'].to_i
9
9
  profiles << Profile.new(:account_id => account_id, :profile_id => profile_id, :name => option.inner_html) if profile_id > 0
10
10
  profiles
@@ -60,7 +60,7 @@ module Rugalytics
60
60
  :id => profile_id,
61
61
  }
62
62
  puts params.inspect
63
- # https://www.google.com/analytics/reporting/export?fmt=2&id=1712313&pdr=20080504-20080603&cmp=average&&rpt=PageviewsReport
63
+ # https://www.google.com/analytics/reporting/export?fmt=2&id=1712313&pdr=20080701-20080731&cmp=average&&rpt=PageviewsReport
64
64
  self.class.get("https://google.com/analytics/reporting/export", :query_hash => params)
65
65
  end
66
66
 
data/lib/rugalytics.rb CHANGED
@@ -11,7 +11,7 @@ require 'yaml'
11
11
 
12
12
  # See README for usage documentation.
13
13
  module Rugalytics
14
- VERSION = "0.0.3"
14
+ VERSION = "0.0.4"
15
15
 
16
16
  FORMAT_PDF = '0' unless defined? FORMAT_PDF
17
17
  FORMAT_XML = '1' unless defined? FORMAT_XML
data/rugalytics.gemspec CHANGED
@@ -1,57 +1,137 @@
1
1
 
2
- # Gem::Specification for Rugalytics-0.0.3
2
+ # Gem::Specification for Rugalytics-0.0.4
3
3
  # Originally generated by Echoe
4
4
 
5
- Gem::Specification.new do |s|
6
- s.name = %q{rugalytics}
7
- s.version = "0.0.3"
5
+ --- !ruby/object:Gem::Specification
6
+ name: rugalytics
7
+ version: !ruby/object:Gem::Version
8
+ version: 0.0.4
9
+ platform: ruby
10
+ authors:
11
+ - Rob McKinnon
12
+ autorequire:
13
+ bindir: bin
8
14
 
9
- s.specification_version = 2 if s.respond_to? :specification_version=
15
+ date: 2008-08-01 00:00:00 +01:00
16
+ default_executable:
17
+ dependencies:
18
+ - !ruby/object:Gem::Dependency
19
+ name: hpricot
20
+ type: :runtime
21
+ version_requirement:
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: "0.6"
27
+ version:
28
+ - !ruby/object:Gem::Dependency
29
+ name: activesupport
30
+ type: :runtime
31
+ version_requirement:
32
+ version_requirements: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 2.0.2
37
+ version:
38
+ - !ruby/object:Gem::Dependency
39
+ name: googlebase
40
+ type: :runtime
41
+ version_requirement:
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 0.2.0
47
+ version:
48
+ - !ruby/object:Gem::Dependency
49
+ name: morph
50
+ type: :runtime
51
+ version_requirement:
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 0.2.0
57
+ version:
58
+ - !ruby/object:Gem::Dependency
59
+ name: echoe
60
+ type: :development
61
+ version_requirement:
62
+ version_requirements: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: "0"
67
+ version:
68
+ description: Rugalytics is a Ruby API for Google Analytics.
69
+ email:
70
+ - rob ~@nospam@~ rubyforge.org
71
+ executables: []
10
72
 
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.authors = ["Rob McKinnon"]
13
- s.date = %q{2008-06-16}
14
- s.description = %q{Rugalytics is a Ruby API for Google Analytics.}
15
- s.email = ["rob ~@nospam@~ rubyforge.org"]
16
- s.extra_rdoc_files = ["CHANGELOG", "LICENSE", "README"]
17
- s.files = ["CHANGELOG", "lib/rugalytics/account.rb", "lib/rugalytics/connection.rb", "lib/rugalytics/graph.rb", "lib/rugalytics/item.rb", "lib/rugalytics/profile.rb", "lib/rugalytics/report.rb", "lib/rugalytics.rb", "LICENSE", "Manifest", "README", "README.rdoc", "rugalytics.yml.example", "spec/fixtures/analytics_account_find_all.html", "spec/fixtures/analytics_profile_find_all.html", "spec/fixtures/dashboard_report_webgroup.xml", "spec/lib/rugalytics/account_spec.rb", "spec/lib/rugalytics/graph_spec.rb", "spec/lib/rugalytics/item_spec.rb", "spec/lib/rugalytics/profile_spec.rb", "spec/lib/rugalytics/report_spec.rb", "spec/lib/rugalytics_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "rugalytics.gemspec"]
18
- s.has_rdoc = true
19
- s.homepage = %q{}
20
- s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Rugalytics", "--main", "README", "--inline-source"]
21
- s.require_paths = ["lib"]
22
- s.rubyforge_project = %q{rugalytics}
23
- s.rubygems_version = %q{1.1.0}
24
- s.summary = %q{Rugalytics is a Ruby API for Google Analytics.}
73
+ extensions: []
25
74
 
26
- s.add_dependency(%q<hpricot>, [">= 0.6"])
27
- s.add_dependency(%q<activesupport>, [">= 2.0.2"])
28
- s.add_dependency(%q<googlebase>, [">= 0.2.0"])
29
- s.add_dependency(%q<morph>, [">= 0.2.0"])
30
- end
75
+ extra_rdoc_files:
76
+ - CHANGELOG
77
+ - LICENSE
78
+ - README
79
+ files:
80
+ - CHANGELOG
81
+ - lib/rugalytics/account.rb
82
+ - lib/rugalytics/connection.rb
83
+ - lib/rugalytics/graph.rb
84
+ - lib/rugalytics/item.rb
85
+ - lib/rugalytics/profile.rb
86
+ - lib/rugalytics/report.rb
87
+ - lib/rugalytics.rb
88
+ - LICENSE
89
+ - Manifest
90
+ - README
91
+ - README.rdoc
92
+ - rugalytics.yml.example
93
+ - spec/fixtures/analytics_account_find_all.html
94
+ - spec/fixtures/analytics_profile_find_all.html
95
+ - spec/fixtures/dashboard_report_webgroup.xml
96
+ - spec/lib/rugalytics/account_spec.rb
97
+ - spec/lib/rugalytics/graph_spec.rb
98
+ - spec/lib/rugalytics/item_spec.rb
99
+ - spec/lib/rugalytics/profile_spec.rb
100
+ - spec/lib/rugalytics/report_spec.rb
101
+ - spec/lib/rugalytics_spec.rb
102
+ - spec/spec.opts
103
+ - spec/spec_helper.rb
104
+ - rugalytics.gemspec
105
+ - Rakefile
106
+ has_rdoc: true
107
+ homepage: ""
108
+ post_install_message:
109
+ rdoc_options:
110
+ - --line-numbers
111
+ - --inline-source
112
+ - --title
113
+ - Rugalytics
114
+ - --main
115
+ - README
116
+ - --inline-source
117
+ require_paths:
118
+ - lib
119
+ required_ruby_version: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: "0"
124
+ version:
125
+ required_rubygems_version: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "="
128
+ - !ruby/object:Gem::Version
129
+ version: "1.2"
130
+ version:
131
+ requirements: []
31
132
 
32
-
33
- # # Original Rakefile source (requires the Echoe gem):
34
- #
35
- # require 'rubygems'; require 'spec'; require 'lib/rugalytics'
36
- #
37
- # begin
38
- # require 'echoe'
39
- #
40
- # Echoe.new("rugalytics", Rugalytics::VERSION) do |m|
41
- # m.author = ["Rob McKinnon"]
42
- # m.email = ["rob ~@nospam@~ rubyforge.org"]
43
- # m.description = File.readlines("README").first
44
- # m.rubyforge_name = "rugalytics"
45
- # m.rdoc_options << '--inline-source'
46
- # m.rdoc_pattern = ["README", "CHANGELOG", "LICENSE"]
47
- # m.dependencies = ["hpricot >=0.6", "activesupport >=2.0.2", "googlebase >=0.2.0", "morph >=0.2.0"]
48
- # end
49
- #
50
- # rescue LoadError
51
- # puts "You need to install the echoe gem to perform meta operations on this gem"
52
- # end
53
- #
54
- # desc "Open an irb session preloaded with this library"
55
- # task :console do
56
- # sh "irb -rubygems -r ./lib/rugalytics.rb"
57
- # end
133
+ rubyforge_project: rugalytics
134
+ rubygems_version: 1.2.0
135
+ specification_version: 2
136
+ summary: Rugalytics is a Ruby API for Google Analytics.
137
+ test_files: []
@@ -1,296 +1,57 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
1
2
  <html>
2
- <head>
3
- <title>Google Analytics</title>
4
- <meta http-equiv="Expires" content="now" />
5
- <meta http-equiv="pragma" content="no-cache" />
6
- <meta http-equiv="cache-control" content="no-cache" />
7
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8
- <script src="https://ssl.google-analytics.com/ga.js" type="text/javascript">
9
- </script>
10
- <script type="text/javascript">
11
- var pageTracker = _gat._getTracker("UA-10005-1");
12
- pageTracker._setCookiePath("/analytics/");
13
- pageTracker._initData();
14
- pageTracker._trackPageview();
15
- </script>
16
-
17
- <script src="ujs/ugen.js"></script>
18
- <script src="ujs/admin.js"></script>
19
-
20
- <body bgcolor="#FFFFFF" id="ur_body">
21
-
22
-
23
- <link rel="stylesheet" type="text/css" href="ucss/ugen.css" />
24
- <link rel="stylesheet" type="text/css" href="ucss/ureport.css" />
25
- <table cellpadding="0" width="100%" cellspacing="0" border="0">
26
- <tr valign="middle">
27
- <td width="1%" class="uh_logo"><a href="http://www.google.com/analytics/"><img src="images/logo.gif" align="left" alt="Google" border="0" /></a></td>
28
- <td>
29
- <table cellpadding="0" width="100%" cellspacing="0" border="0">
30
- <tr valign="top">
31
- <td nowrap="nowrap" valign="middle"></td>
32
- <td align="right" nowrap="nowrap">
33
- <table cellpadding="0" cellspacing="0" border="0">
34
- <tr>
35
- <td align="right" valign="top" class="uh_prefs">
36
- <span class="uh_user">webgroup@nd.edu </span> <span class="uh_psep">|</span>
37
-
38
-
39
- <a href="admin?vid=1303&scid=1254221&rid=190283" class="uh_link">My Account&nbsp;</a> <span class="uh_psep">|</span>
40
-
41
- <a href="http://www.google.com/support/googleanalytics/?hl=en_US" target="GoogleHelp" class="uh_link">Help</a> <span class="uh_psep">|</span>
42
- <a href="http://www.google.com/support/googleanalytics/bin/request.py?hl=en_US" target="GoogleHelp" class="uh_link">Contact us</a> <span class="uh_psep">|</span>
43
- <a href="https://www.google.com/accounts/Logout?hl=en-US&continue=http://www.google.com/analytics/home/%3Fet%3Dreset%26hl%3Den-US" class="uh_link">Sign Out</a>
44
- </td>
45
- </tr>
46
- </table>
47
- </td>
48
- </tr>
3
+ <head><title>Analytics Settings - Google Analytics</title>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5
+ <link rel="Stylesheet" type="text/css" href="/analytics/static/s/3101978544-ga-ltr.css">
6
+ </head>
7
+ <body>
8
+ <div id="container" class="admin_container">
9
+ <span class="">
10
+ <div id="header">
11
+ <div id="main_header">
12
+ <p id="logo"><a href="/analytics/settings/home">Google Analytics</a></p>
13
+ <p id="skip_link"><a href="#main_content">Skip to main content</a></p>
14
+ <table id="global_header_nav">
15
+ <tr><td><span id="f_email" class="email_address">@gmail.com</span></td>
16
+ <td>|</td>
17
+ <td><a href="/analytics/settings/my_account?scid=1254221">Settings</a></td>
18
+ <td>|</td>
19
+ <td><a href="https://www.google.com/accounts/ManageAccount">My Account</a></td>
20
+ <td>|</td>
21
+ <td><a href="http://www.google.com/support/googleanalytics/" target="GoogleHelp">Help</a></td>
22
+ <td>|</td>
23
+ <td><a href="https://www.google.com/accounts/Logout?continue=https://www.google.com/analytics/settings/" id="logout">Sign Out</a></td>
24
+ </tr>
49
25
  </table>
50
- <br/>
51
- </td>
52
- </tr>
53
- </table>
54
-
55
-
56
-
57
-
58
-
59
-
60
- <div class="topnav_section topnav_tl">
61
- <div class="topnav_bl">
62
- <div class="topnav_tr">
63
- <div class="topnav_br">
64
- <table cellpadding="0" width="100%" cellspacing="0" border="0">
65
- <tr>
66
- <form name="select_profile" autocomplete="off">
67
- <td nowrap="nowrap" class="topnav_settings">
68
-
69
-
70
-
71
-
72
-
73
-
74
- <A href="admin?scid=1254221" class="topnav_active">Analytics Home</a>
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
- <span class="topnav_sep"> | </span>
86
-
87
- <span class="topnav_item">
88
-
89
-
90
-
91
- <A href="javascript: goToProfile(1);" class="topnav_inactive">
92
-
93
- View Reports:</a></span>
94
- <select class="topnav_select" name="profile_list" onchange="goToProfile(1)">
95
- <option value="0">Click to select Website Profile</option>
96
-
97
- <option value="2420755" >blog.your_site.com</option>
98
-
99
- </select>
100
-
101
-
102
-
103
- </td>
104
- </form>
105
- <form name="select_account" autocomplete="off">
106
- <td align="right" class="topnav_options">
107
-
108
-
109
-
110
- <span class="topnav_heading">My Analytics Accounts: </span>
111
- <select class="topnav_select2" name="account_list" onchange="goToAccount()">
112
-
113
- <option value="1254221" >your_site.com</option>
114
-
115
- <option value="344381" >webgroup.nd.edu</option>
116
-
117
- <option value=""> ------------------------------- </option>
118
- <option value="0"> Create New Account...</option>
119
- </select>
120
-
121
-
122
-
123
-
124
-
125
- </td>
126
-
127
- </form>
128
-
129
-
130
- </tr>
131
- </table>
26
+ </div>
27
+ <div id="subheader">
28
+ <div id="account_profile_nav">
29
+ <form id="account_profile_selector" action="/analytics/reporting/" method="get">
30
+ <p id="profile_nav">
31
+ <input type="hidden" name="reset" value="1">
32
+ <input type="hidden" name="scid" value="3110135">
33
+ <a class="settings" href="/analytics/settings/home?scid=1254221">Analytics Settings</a>
34
+ <a class="view_report" href="/analytics/reporting/?id=5996429"> View Reports: </a>
35
+ <select name="id" id="profile" onchange="this.form.submit()">
36
+ <option selected value="2420755">blog.your_site.com</option>
37
+ </select>
38
+ </p>
39
+ </form>
40
+ <form id="account_selector" name="account_selector" action="/analytics/settings/home" method="get">
41
+ <p id="account_nav">
42
+ <label for="account"> My Analytics Accounts: </label>
43
+ <select name="scid" id="account" onchange="submitAccountSelectorForm(this.value)">
44
+ <option selected value="1254221">your_site.com</option>
45
+ <option value="344381">another_site.com</option>
46
+ <optgroup style="font-weight: normal" label="-------------------------------"></optgroup>
47
+ <option value="0">Create New Account...</option>
48
+ </select>
49
+ </p>
50
+ </form>
51
+ </div>
52
+ </div>
132
53
  </div>
54
+ </span>
133
55
  </div>
134
- </div>
135
- </div>
136
-
137
-
138
-
139
- <!-- Start Main Body -->
140
- <div class="page_body">
141
-
142
-
143
-
144
-
145
- <div class="page_title">Analytics Home</div>
146
- <br />
147
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
148
- <tr>
149
- <td valign="top" class="page_content">
150
- <!-- Start Content -->
151
- <table cellpadding="0" cellspacing="0" border="0" width="100%" class="list_table">
152
- <tr class="list_title">
153
- <td class="list_title">Website Profiles</td>
154
- </tr>
155
-
156
- <tr>
157
- <td class="list_control">
158
-
159
- <!-- Start Controls -->
160
- <table cellpadding="0" cellspacing="0" border="0" width="100%">
161
- <tr>
162
- <td align="center" nowrap="nowrap">
163
- <span class="list_cstrong">
164
-
165
- <img src="images/setprev.gif" border="0"> Prev
166
-
167
- </span>
168
-
169
- &nbsp; 1 - 1 / 1&nbsp;
170
-
171
- <span class="list_cstrong">
172
-
173
- Next <img src="images/setnext.gif" border="0">
174
-
175
- </span>
176
- </td>
177
-
178
- <td align="center" class="list_control_cell">
179
- <form name="length">
180
- <table cellpadding="0" cellspacing="0" border="0">
181
- <tr>
182
- <td align="left" class="list_control_cell2" nowrap="nowrap">
183
- Show
184
- <select name="number" onChange="setLengthAdmin(self); return false;" >
185
- <option value="5" > 5
186
- <option value="10" selected="selected"> 10
187
- <option value="20" > 20
188
- <option value="35" > 35
189
- <option value="50" > 50
190
- <option value="100" >100
191
- </select>&nbsp;
192
- </td>
193
- </form>
194
-
195
- <form name="search" onsubmit="setQuery(); return false;">
196
- <td class="list_control_cell2" nowrap="nowrap">
197
- Search
198
- <input type="text" name="uquery" value="" size="10"><input type="hidden" name="ftype" value="" /> &nbsp;
199
- </td>
200
- <td>
201
- <a href="javascript:fToggle(0,'',1,1,4)">
202
- <img src="images/fin_active.gif" name="fin" width="21" height="19" border="0"></a>
203
- </td>
204
- <td>
205
- <a href="javascript:fToggle(1,'',1,1,4);">
206
- <img src="images/fout_inactive.gif" name="fout" width="21" height="19" border="0"></a>
207
- </td>
208
- </tr>
209
- </table>
210
- </form>
211
- </td>
212
- </tr>
213
- </table>
214
-
215
-
216
- </td>
217
- </tr>
218
- <tr>
219
- <td bgcolor="#FFFFFF">
220
- <img src="images/tspace.gif" height="5" width="100">
221
-
222
- <table border="0" cellspacing="0" cellpadding="0" width="100%">
223
- <tr class="list_ctitle">
224
- <td width="5%" class="list_ctitle">&nbsp;</td>
225
- <td width="45%" class="list_ctitle" nowrap="nowrap">Name</td>
226
- <td width="25%" class="list_ctitle" align="center" nowrap="nowrap">Settings</td>
227
- <td width="25%" class="list_ctitle" nowrap="nowrap">Status</td>
228
- </tr>
229
-
230
- <tr class="ug_row1">
231
- <td nowrap="nowrap" class="list_cell">1.</td>
232
- <td class="list_cell">blog.your_site.com</td>
233
- <td class="list_cell" align="center">
234
- <a href="/analytics/reporting/dashboard?id=2420755&scid=1254221" class="normal">View Reports</a> <br />
235
- </td>
236
- <td class="list_cell" nowrap="nowrap">
237
-
238
-
239
-
240
- <img src="images/check.gif"> Receiving Data
241
-
242
-
243
- <br />
244
-
245
- <img src="images/warning.gif">
246
- Conversion Goals (0)
247
- </td>
248
- </tr>
249
-
250
-
251
- </table>
252
- </td>
253
- </tr>
254
- </table>
255
-
256
- </td>
257
-
258
- <td class="dotted_border">&nbsp;</td>
259
-
260
- <!-- Start Questions -->
261
- <td valign="top" width="200" class="page_question">
262
- <div class="help_title">Helpful Links</div>
263
- <ul>
264
- <!--
265
- <li class="question_list"><a href="" onclick="return helpPopup(27394, 'en-US', '');" class="normal">How do I view reports?</a></li>
266
- -->
267
- <li class="question_list"><a href="" onclick="return helpPopup(69588, 'en-US', '');" class="normal">What's new with Google Analytics?</a></li>
268
- <li class="question_list"><a href="" onclick="return helpPopup(57053, 'en-US', '');" class="normal">I'm not seeing any data in my reports.</a></li>
269
- <li class="question_list"><a href="" onclick="return helpPopup(55595, 'en-US', '');" class="normal">What is a website profile, and what can I do with it?</a></li>
270
- </ul>
271
-
272
- </td>
273
- <!-- End Questions -->
274
-
275
- </tr>
276
- </table>
277
- </div>
278
-
279
- <!-- End Main Body -->
280
-
281
- <br /><br />
282
- <table width="100%" border="0" cellspacing="0" cellpadding="0">
283
- <tr>
284
- <td align="center" class="uf_copy">
285
- <span class="copy">&copy; 2007 Google</span> |
286
- <a href="http://www.google.com/analytics/" target="GoogleHome" class="normal">Analytics Home</a> |
287
- <a href="http://www.google.com/analytics/tos.html" target="GoogleHome" class="normal">Terms of Service</a> |
288
- <a href="http://www.google.com/intl/en/privacy.html" target="GoogleHome" class="normal">Privacy Policy</a> |
289
- <a href="http://www.google.com/support/googleanalytics/bin/request.py?hl=en_US" target="GoogleHelp" class="normal">Contact us</a> |
290
- <a href="http://analytics.blogspot.com/" target="GoogleBlog" class="normal">Analytics Blog&nbsp;(in English)</a>
291
- </td>
292
- </tr>
293
- </table>
294
-
295
56
  </body>
296
57
  </html>
@@ -1,296 +1,57 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
1
2
  <html>
2
- <head>
3
- <title>Google Analytics</title>
4
- <meta http-equiv="Expires" content="now" />
5
- <meta http-equiv="pragma" content="no-cache" />
6
- <meta http-equiv="cache-control" content="no-cache" />
7
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8
- <script src="https://ssl.google-analytics.com/ga.js" type="text/javascript">
9
- </script>
10
- <script type="text/javascript">
11
- var pageTracker = _gat._getTracker("UA-10005-1");
12
- pageTracker._setCookiePath("/analytics/");
13
- pageTracker._initData();
14
- pageTracker._trackPageview();
15
- </script>
16
-
17
- <script src="ujs/ugen.js"></script>
18
- <script src="ujs/admin.js"></script>
19
-
20
- <body bgcolor="#FFFFFF" id="ur_body">
21
-
22
-
23
- <link rel="stylesheet" type="text/css" href="ucss/ugen.css" />
24
- <link rel="stylesheet" type="text/css" href="ucss/ureport.css" />
25
- <table cellpadding="0" width="100%" cellspacing="0" border="0">
26
- <tr valign="middle">
27
- <td width="1%" class="uh_logo"><a href="http://www.google.com/analytics/"><img src="images/logo.gif" align="left" alt="Google" border="0" /></a></td>
28
- <td>
29
- <table cellpadding="0" width="100%" cellspacing="0" border="0">
30
- <tr valign="top">
31
- <td nowrap="nowrap" valign="middle"></td>
32
- <td align="right" nowrap="nowrap">
33
- <table cellpadding="0" cellspacing="0" border="0">
34
- <tr>
35
- <td align="right" valign="top" class="uh_prefs">
36
- <span class="uh_user">webgroup@nd.edu </span> <span class="uh_psep">|</span>
37
-
38
-
39
- <a href="admin?vid=1303&scid=1254221&rid=190283" class="uh_link">My Account&nbsp;</a> <span class="uh_psep">|</span>
40
-
41
- <a href="http://www.google.com/support/googleanalytics/?hl=en_US" target="GoogleHelp" class="uh_link">Help</a> <span class="uh_psep">|</span>
42
- <a href="http://www.google.com/support/googleanalytics/bin/request.py?hl=en_US" target="GoogleHelp" class="uh_link">Contact us</a> <span class="uh_psep">|</span>
43
- <a href="https://www.google.com/accounts/Logout?hl=en-US&continue=http://www.google.com/analytics/home/%3Fet%3Dreset%26hl%3Den-US" class="uh_link">Sign Out</a>
44
- </td>
45
- </tr>
46
- </table>
47
- </td>
48
- </tr>
3
+ <head><title>Analytics Settings - Google Analytics</title>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5
+ <link rel="Stylesheet" type="text/css" href="/analytics/static/s/3101978544-ga-ltr.css">
6
+ </head>
7
+ <body>
8
+ <div id="container" class="admin_container">
9
+ <span class="">
10
+ <div id="header">
11
+ <div id="main_header">
12
+ <p id="logo"><a href="/analytics/settings/home">Google Analytics</a></p>
13
+ <p id="skip_link"><a href="#main_content">Skip to main content</a></p>
14
+ <table id="global_header_nav">
15
+ <tr><td><span id="f_email" class="email_address">@gmail.com</span></td>
16
+ <td>|</td>
17
+ <td><a href="/analytics/settings/my_account?scid=1254221">Settings</a></td>
18
+ <td>|</td>
19
+ <td><a href="https://www.google.com/accounts/ManageAccount">My Account</a></td>
20
+ <td>|</td>
21
+ <td><a href="http://www.google.com/support/googleanalytics/" target="GoogleHelp">Help</a></td>
22
+ <td>|</td>
23
+ <td><a href="https://www.google.com/accounts/Logout?continue=https://www.google.com/analytics/settings/" id="logout">Sign Out</a></td>
24
+ </tr>
49
25
  </table>
50
- <br/>
51
- </td>
52
- </tr>
53
- </table>
54
-
55
-
56
-
57
-
58
-
59
-
60
- <div class="topnav_section topnav_tl">
61
- <div class="topnav_bl">
62
- <div class="topnav_tr">
63
- <div class="topnav_br">
64
- <table cellpadding="0" width="100%" cellspacing="0" border="0">
65
- <tr>
66
- <form name="select_profile" autocomplete="off">
67
- <td nowrap="nowrap" class="topnav_settings">
68
-
69
-
70
-
71
-
72
-
73
-
74
- <A href="admin?scid=1254221" class="topnav_active">Analytics Home</a>
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
- <span class="topnav_sep"> | </span>
86
-
87
- <span class="topnav_item">
88
-
89
-
90
-
91
- <A href="javascript: goToProfile(1);" class="topnav_inactive">
92
-
93
- View Reports:</a></span>
94
- <select class="topnav_select" name="profile_list" onchange="goToProfile(1)">
95
- <option value="0">Click to select Website Profile</option>
96
-
97
- <option value="2420755" >blog.your_site.com</option>
98
-
99
- </select>
100
-
101
-
102
-
103
- </td>
104
- </form>
105
- <form name="select_account" autocomplete="off">
106
- <td align="right" class="topnav_options">
107
-
108
-
109
-
110
- <span class="topnav_heading">My Analytics Accounts: </span>
111
- <select class="topnav_select2" name="account_list" onchange="goToAccount()">
112
-
113
- <option value="1254221" >your_site.com</option>
114
-
115
- <option value="344381" >webgroup.nd.edu</option>
116
-
117
- <option value=""> ------------------------------- </option>
118
- <option value="0"> Create New Account...</option>
119
- </select>
120
-
121
-
122
-
123
-
124
-
125
- </td>
126
-
127
- </form>
128
-
129
-
130
- </tr>
131
- </table>
26
+ </div>
27
+ <div id="subheader">
28
+ <div id="account_profile_nav">
29
+ <form id="account_profile_selector" action="/analytics/reporting/" method="get">
30
+ <p id="profile_nav">
31
+ <input type="hidden" name="reset" value="1">
32
+ <input type="hidden" name="scid" value="3110135">
33
+ <a class="settings" href="/analytics/settings/home?scid=1254221">Analytics Settings</a>
34
+ <a class="view_report" href="/analytics/reporting/?id=5996429"> View Reports: </a>
35
+ <select name="id" id="profile" onchange="this.form.submit()">
36
+ <option selected value="2420755">blog.your_site.com</option>
37
+ </select>
38
+ </p>
39
+ </form>
40
+ <form id="account_selector" name="account_selector" action="/analytics/settings/home" method="get">
41
+ <p id="account_nav">
42
+ <label for="account"> My Analytics Accounts: </label>
43
+ <select name="scid" id="account" onchange="submitAccountSelectorForm(this.value)">
44
+ <option selected value="1254221">your_site.com</option>
45
+ <option value="344381">another_site.com</option>
46
+ <optgroup style="font-weight: normal" label="-------------------------------"></optgroup>
47
+ <option value="0">Create New Account...</option>
48
+ </select>
49
+ </p>
50
+ </form>
51
+ </div>
52
+ </div>
132
53
  </div>
54
+ </span>
133
55
  </div>
134
- </div>
135
- </div>
136
-
137
-
138
-
139
- <!-- Start Main Body -->
140
- <div class="page_body">
141
-
142
-
143
-
144
-
145
- <div class="page_title">Analytics Home</div>
146
- <br />
147
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
148
- <tr>
149
- <td valign="top" class="page_content">
150
- <!-- Start Content -->
151
- <table cellpadding="0" cellspacing="0" border="0" width="100%" class="list_table">
152
- <tr class="list_title">
153
- <td class="list_title">Website Profiles</td>
154
- </tr>
155
-
156
- <tr>
157
- <td class="list_control">
158
-
159
- <!-- Start Controls -->
160
- <table cellpadding="0" cellspacing="0" border="0" width="100%">
161
- <tr>
162
- <td align="center" nowrap="nowrap">
163
- <span class="list_cstrong">
164
-
165
- <img src="images/setprev.gif" border="0"> Prev
166
-
167
- </span>
168
-
169
- &nbsp; 1 - 1 / 1&nbsp;
170
-
171
- <span class="list_cstrong">
172
-
173
- Next <img src="images/setnext.gif" border="0">
174
-
175
- </span>
176
- </td>
177
-
178
- <td align="center" class="list_control_cell">
179
- <form name="length">
180
- <table cellpadding="0" cellspacing="0" border="0">
181
- <tr>
182
- <td align="left" class="list_control_cell2" nowrap="nowrap">
183
- Show
184
- <select name="number" onChange="setLengthAdmin(self); return false;" >
185
- <option value="5" > 5
186
- <option value="10" selected="selected"> 10
187
- <option value="20" > 20
188
- <option value="35" > 35
189
- <option value="50" > 50
190
- <option value="100" >100
191
- </select>&nbsp;
192
- </td>
193
- </form>
194
-
195
- <form name="search" onsubmit="setQuery(); return false;">
196
- <td class="list_control_cell2" nowrap="nowrap">
197
- Search
198
- <input type="text" name="uquery" value="" size="10"><input type="hidden" name="ftype" value="" /> &nbsp;
199
- </td>
200
- <td>
201
- <a href="javascript:fToggle(0,'',1,1,4)">
202
- <img src="images/fin_active.gif" name="fin" width="21" height="19" border="0"></a>
203
- </td>
204
- <td>
205
- <a href="javascript:fToggle(1,'',1,1,4);">
206
- <img src="images/fout_inactive.gif" name="fout" width="21" height="19" border="0"></a>
207
- </td>
208
- </tr>
209
- </table>
210
- </form>
211
- </td>
212
- </tr>
213
- </table>
214
-
215
-
216
- </td>
217
- </tr>
218
- <tr>
219
- <td bgcolor="#FFFFFF">
220
- <img src="images/tspace.gif" height="5" width="100">
221
-
222
- <table border="0" cellspacing="0" cellpadding="0" width="100%">
223
- <tr class="list_ctitle">
224
- <td width="5%" class="list_ctitle">&nbsp;</td>
225
- <td width="45%" class="list_ctitle" nowrap="nowrap">Name</td>
226
- <td width="25%" class="list_ctitle" align="center" nowrap="nowrap">Settings</td>
227
- <td width="25%" class="list_ctitle" nowrap="nowrap">Status</td>
228
- </tr>
229
-
230
- <tr class="ug_row1">
231
- <td nowrap="nowrap" class="list_cell">1.</td>
232
- <td class="list_cell">blog.your_site.com</td>
233
- <td class="list_cell" align="center">
234
- <a href="/analytics/reporting/dashboard?id=2420755&scid=1254221" class="normal">View Reports</a> <br />
235
- </td>
236
- <td class="list_cell" nowrap="nowrap">
237
-
238
-
239
-
240
- <img src="images/check.gif"> Receiving Data
241
-
242
-
243
- <br />
244
-
245
- <img src="images/warning.gif">
246
- Conversion Goals (0)
247
- </td>
248
- </tr>
249
-
250
-
251
- </table>
252
- </td>
253
- </tr>
254
- </table>
255
-
256
- </td>
257
-
258
- <td class="dotted_border">&nbsp;</td>
259
-
260
- <!-- Start Questions -->
261
- <td valign="top" width="200" class="page_question">
262
- <div class="help_title">Helpful Links</div>
263
- <ul>
264
- <!--
265
- <li class="question_list"><a href="" onclick="return helpPopup(27394, 'en-US', '');" class="normal">How do I view reports?</a></li>
266
- -->
267
- <li class="question_list"><a href="" onclick="return helpPopup(69588, 'en-US', '');" class="normal">What's new with Google Analytics?</a></li>
268
- <li class="question_list"><a href="" onclick="return helpPopup(57053, 'en-US', '');" class="normal">I'm not seeing any data in my reports.</a></li>
269
- <li class="question_list"><a href="" onclick="return helpPopup(55595, 'en-US', '');" class="normal">What is a website profile, and what can I do with it?</a></li>
270
- </ul>
271
-
272
- </td>
273
- <!-- End Questions -->
274
-
275
- </tr>
276
- </table>
277
- </div>
278
-
279
- <!-- End Main Body -->
280
-
281
- <br /><br />
282
- <table width="100%" border="0" cellspacing="0" cellpadding="0">
283
- <tr>
284
- <td align="center" class="uf_copy">
285
- <span class="copy">&copy; 2007 Google</span> |
286
- <a href="http://www.google.com/analytics/" target="GoogleHome" class="normal">Analytics Home</a> |
287
- <a href="http://www.google.com/analytics/tos.html" target="GoogleHome" class="normal">Terms of Service</a> |
288
- <a href="http://www.google.com/intl/en/privacy.html" target="GoogleHome" class="normal">Privacy Policy</a> |
289
- <a href="http://www.google.com/support/googleanalytics/bin/request.py?hl=en_US" target="GoogleHelp" class="normal">Contact us</a> |
290
- <a href="http://analytics.blogspot.com/" target="GoogleBlog" class="normal">Analytics Blog&nbsp;(in English)</a>
291
- </td>
292
- </tr>
293
- </table>
294
-
295
56
  </body>
296
57
  </html>
@@ -18,15 +18,15 @@ describe Rugalytics::Account do
18
18
  html = fixture('analytics_account_find_all.html')
19
19
  Rugalytics::Account.should_receive(:get).and_return(html)
20
20
  accounts = Rugalytics::Account.find_all
21
- accounts.collect(&:name).should == %w[your_site.com webgroup.nd.edu]
21
+ accounts.collect(&:name).should == %w[your_site.com another_site.com]
22
22
  accounts.collect(&:account_id).should == %w[1254221 344381].map(&:to_i)
23
23
  end
24
24
 
25
25
  it "should be able to find profiles for an account" do
26
26
  html = fixture('analytics_profile_find_all.html')
27
27
  Rugalytics::Profile.should_receive(:get).and_return(html)
28
- accounts = Rugalytics::Account.new(:name => 'your_site.com', :account_id => '1254221').profiles
29
- accounts.collect(&:name).should == ["blog.your_site.com"]
28
+ profiles = Rugalytics::Account.new(:name => 'your_site.com', :account_id => '1254221').profiles
29
+ profiles.collect(&:name).should == ["blog.your_site.com"]
30
30
  end
31
31
 
32
32
  it "should print kind of pretty" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rugalytics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob McKinnon
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-06-16 00:00:00 +01:00
12
+ date: 2008-08-01 00:00:00 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: hpricot
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -23,6 +24,7 @@ dependencies:
23
24
  version:
24
25
  - !ruby/object:Gem::Dependency
25
26
  name: activesupport
27
+ type: :runtime
26
28
  version_requirement:
27
29
  version_requirements: !ruby/object:Gem::Requirement
28
30
  requirements:
@@ -32,6 +34,7 @@ dependencies:
32
34
  version:
33
35
  - !ruby/object:Gem::Dependency
34
36
  name: googlebase
37
+ type: :runtime
35
38
  version_requirement:
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
@@ -41,6 +44,7 @@ dependencies:
41
44
  version:
42
45
  - !ruby/object:Gem::Dependency
43
46
  name: morph
47
+ type: :runtime
44
48
  version_requirement:
45
49
  version_requirements: !ruby/object:Gem::Requirement
46
50
  requirements:
@@ -48,6 +52,16 @@ dependencies:
48
52
  - !ruby/object:Gem::Version
49
53
  version: 0.2.0
50
54
  version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: echoe
57
+ type: :development
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: "0"
64
+ version:
51
65
  description: Rugalytics is a Ruby API for Google Analytics.
52
66
  email:
53
67
  - rob ~@nospam@~ rubyforge.org
@@ -85,6 +99,7 @@ files:
85
99
  - spec/spec.opts
86
100
  - spec/spec_helper.rb
87
101
  - rugalytics.gemspec
102
+ - Rakefile
88
103
  has_rdoc: true
89
104
  homepage: ""
90
105
  post_install_message:
@@ -106,14 +121,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
121
  version:
107
122
  required_rubygems_version: !ruby/object:Gem::Requirement
108
123
  requirements:
109
- - - ">="
124
+ - - "="
110
125
  - !ruby/object:Gem::Version
111
- version: "0"
126
+ version: "1.2"
112
127
  version:
113
128
  requirements: []
114
129
 
115
130
  rubyforge_project: rugalytics
116
- rubygems_version: 1.1.0
131
+ rubygems_version: 1.2.0
117
132
  signing_key:
118
133
  specification_version: 2
119
134
  summary: Rugalytics is a Ruby API for Google Analytics.