redis_analytics 0.6.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (291) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile.lock +159 -40
  3. data/{LICENSE → MIT-LICENSE} +0 -0
  4. data/README.md +54 -64
  5. data/TODO.md +1 -0
  6. data/app/controllers/redis_analytics/api_controller.rb +50 -0
  7. data/app/controllers/redis_analytics/application_controller.rb +4 -0
  8. data/app/controllers/redis_analytics/visits_controller.rb +9 -0
  9. data/app/helpers/redis_analytics/application_helper.rb +4 -0
  10. data/app/helpers/redis_analytics/visits_helper.rb +74 -0
  11. data/app/views/layouts/redis_analytics/application.html.erb +17 -0
  12. data/app/views/redis_analytics/application/_footer.html.erb +3 -0
  13. data/{lib/redis_analytics/dashboard/views/footer.erb → app/views/redis_analytics/application/_footer.html.erb~} +0 -0
  14. data/{lib/redis_analytics/dashboard/views/header.erb → app/views/redis_analytics/application/_header.html.erb} +1 -1
  15. data/{lib/redis_analytics/dashboard/views/widgets/bounce_rate.erb → app/views/redis_analytics/visits/_bounce_rate.html.erb} +1 -1
  16. data/{lib/redis_analytics/dashboard/views/widgets/browsers_donut.erb → app/views/redis_analytics/visits/_browsers_donut.html.erb} +1 -1
  17. data/{lib/redis_analytics/dashboard/views/widgets/first_visits.erb → app/views/redis_analytics/visits/_first_visits.html.erb} +1 -1
  18. data/{lib/redis_analytics/dashboard/views/widgets/page_depth.erb → app/views/redis_analytics/visits/_page_depth.html.erb} +1 -1
  19. data/{lib/redis_analytics/dashboard/views/widgets/referers_donut.erb → app/views/redis_analytics/visits/_referers_donut.html.erb} +0 -0
  20. data/{lib/redis_analytics/dashboard/views/widgets/total_page_views.erb → app/views/redis_analytics/visits/_total_page_views.html.erb} +1 -1
  21. data/{lib/redis_analytics/dashboard/views/widgets/total_visits.erb → app/views/redis_analytics/visits/_total_visits.html.erb} +1 -1
  22. data/app/views/redis_analytics/visits/_unique_visits_line.html.erb +26 -0
  23. data/{lib/redis_analytics/dashboard/views/widgets/unique_visits_line.erb → app/views/redis_analytics/visits/_unique_visits_line.html.erb~} +1 -1
  24. data/app/views/redis_analytics/visits/_visit_duration.html.erb +3 -0
  25. data/{lib/redis_analytics/dashboard/views/widgets/visit_spark.erb → app/views/redis_analytics/visits/_visit_spark.html.erb} +1 -1
  26. data/{lib/redis_analytics/dashboard/views/widgets/visitor_recency_slices.erb → app/views/redis_analytics/visits/_visitor_recency_slices.html.erb} +1 -1
  27. data/{lib/redis_analytics/dashboard/views/widgets/visits_area.erb → app/views/redis_analytics/visits/_visits_area.html.erb} +2 -2
  28. data/{lib/redis_analytics/dashboard/views/widgets/visits_donut.erb → app/views/redis_analytics/visits/_visits_donut.html.erb} +0 -0
  29. data/{lib/redis_analytics/dashboard/views/visits_js.erb → app/views/redis_analytics/visits/_visits_js.html.erb} +13 -10
  30. data/{lib/redis_analytics/dashboard/views/widgets/world_map.erb → app/views/redis_analytics/visits/_world_map.html.erb} +1 -1
  31. data/app/views/redis_analytics/visits/index.html.erb +69 -0
  32. data/{lib/redis_analytics/dashboard/views/visits.erb → app/views/redis_analytics/visits/index.html.erb~} +0 -0
  33. data/bin/GeoIP.dat +0 -0
  34. data/config.ru +2 -2
  35. data/config/routes.rb +5 -0
  36. data/coverage/assets/0.8.0/application.css +799 -0
  37. data/coverage/assets/0.8.0/application.js +1559 -0
  38. data/coverage/assets/0.8.0/colorbox/border.png +0 -0
  39. data/coverage/assets/0.8.0/colorbox/controls.png +0 -0
  40. data/coverage/assets/0.8.0/colorbox/loading.gif +0 -0
  41. data/coverage/assets/0.8.0/colorbox/loading_background.png +0 -0
  42. data/coverage/assets/0.8.0/favicon_green.png +0 -0
  43. data/coverage/assets/0.8.0/favicon_red.png +0 -0
  44. data/coverage/assets/0.8.0/favicon_yellow.png +0 -0
  45. data/coverage/assets/0.8.0/loading.gif +0 -0
  46. data/coverage/assets/0.8.0/magnify.png +0 -0
  47. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  48. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  49. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  50. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  51. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  52. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  53. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  54. data/coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  55. data/coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  56. data/coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  57. data/coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  58. data/coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  59. data/coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  60. data/coverage/index.html +3484 -0
  61. data/lib/redis_analytics.rb +5 -12
  62. data/lib/redis_analytics/configuration.rb +2 -3
  63. data/lib/redis_analytics/engine.rb +18 -0
  64. data/lib/redis_analytics/filter.rb +1 -2
  65. data/lib/redis_analytics/helpers.rb +1 -2
  66. data/lib/redis_analytics/metrics.rb +1 -2
  67. data/lib/redis_analytics/time_ext.rb +0 -76
  68. data/lib/redis_analytics/tracker.rb +35 -24
  69. data/lib/redis_analytics/version.rb +2 -3
  70. data/lib/redis_analytics/visit.rb +4 -5
  71. data/lib/tasks/redis_analytics_tasks.rake +4 -0
  72. data/redis_analytics.gemspec +20 -20
  73. data/script/rails +8 -0
  74. data/spec/lib/redis_analytics/analytics_spec.rb +0 -59
  75. data/spec/lib/redis_analytics/configuration_spec.rb +19 -19
  76. data/spec/lib/redis_analytics/{dashboard_spec.rb → engine_spec.rb} +2 -8
  77. data/spec/lib/redis_analytics/filter_spec.rb +4 -4
  78. data/spec/lib/redis_analytics/tracker_spec.rb +45 -6
  79. data/spec/spec_helper.rb +2 -2
  80. data/test/dummy/README.rdoc +261 -0
  81. data/test/dummy/Rakefile +7 -0
  82. data/test/dummy/app/assets/javascripts/application.js +15 -0
  83. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  84. data/test/dummy/app/controllers/application_controller.rb +3 -0
  85. data/test/dummy/app/helpers/application_helper.rb +2 -0
  86. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  87. data/test/dummy/config.ru +4 -0
  88. data/test/dummy/config/application.rb +67 -0
  89. data/test/dummy/config/boot.rb +10 -0
  90. data/test/dummy/config/database.yml +25 -0
  91. data/test/dummy/config/environment.rb +5 -0
  92. data/test/dummy/config/environments/development.rb +37 -0
  93. data/test/dummy/config/environments/production.rb +67 -0
  94. data/test/dummy/config/environments/test.rb +37 -0
  95. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  96. data/test/dummy/config/initializers/inflections.rb +15 -0
  97. data/test/dummy/config/initializers/mime_types.rb +5 -0
  98. data/test/dummy/config/initializers/secret_token.rb +7 -0
  99. data/test/dummy/config/initializers/session_store.rb +8 -0
  100. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  101. data/test/dummy/config/locales/en.yml +5 -0
  102. data/test/dummy/config/routes.rb +4 -0
  103. data/test/dummy/db/development.sqlite3 +0 -0
  104. data/test/dummy/db/production.sqlite3 +0 -0
  105. data/test/dummy/log/development.log +1605 -0
  106. data/test/dummy/log/production.log +882 -0
  107. data/test/dummy/public/404.html +26 -0
  108. data/test/dummy/public/422.html +26 -0
  109. data/test/dummy/public/500.html +25 -0
  110. data/test/dummy/public/assets/application-ac39e235d42f60499cd65a4b78076ba3.css +14 -0
  111. data/test/dummy/public/assets/application-ac39e235d42f60499cd65a4b78076ba3.css.gz +0 -0
  112. data/test/dummy/public/assets/application-c900658d554ff9f314a2e1b97cd68997.js +10752 -0
  113. data/test/dummy/public/assets/application-c900658d554ff9f314a2e1b97cd68997.js.gz +0 -0
  114. data/test/dummy/public/assets/manifest-5bcba723c313582b1d428fc3bf592b29.json +1 -0
  115. data/test/dummy/public/favicon.ico +0 -0
  116. data/test/dummy/script/rails +6 -0
  117. data/test/dummy/tmp/cache/assets/C86/E20/sprockets%2F04d6293b6d7c30b20475e886dc634936 +0 -0
  118. data/test/dummy/tmp/cache/assets/C88/400/sprockets%2F1bb834b9f3b720193591960cf7f31497 +0 -0
  119. data/test/dummy/tmp/cache/assets/C8D/800/sprockets%2Fb484d3480591b77bf84376f1f41a6457 +0 -0
  120. data/test/dummy/tmp/cache/assets/C97/230/sprockets%2Ff8c56a6d1d5685424871464fc480f956 +0 -0
  121. data/test/dummy/tmp/cache/assets/C98/560/sprockets%2Ff14a2366122e6017b965b32290b8abb0 +0 -0
  122. data/test/dummy/tmp/cache/assets/CAE/7D0/sprockets%2F1f0b25ca08195d3582e4fe04396e9270 +0 -0
  123. data/test/dummy/tmp/cache/assets/CB9/550/sprockets%2F0505a9fb5602a3fae429f389832747d8 +0 -0
  124. data/test/dummy/tmp/cache/assets/CBA/030/sprockets%2F510aa1c63fe533f77a197367b79f2919 +0 -0
  125. data/test/dummy/tmp/cache/assets/CBC/630/sprockets%2F8fca8928788707a4ba625519ab402d58 +0 -0
  126. data/test/dummy/tmp/cache/assets/CC6/EE0/sprockets%2Fb6d3cc91f7b3559f985a978176b44324 +0 -0
  127. data/test/dummy/tmp/cache/assets/CC9/9C0/sprockets%2F84294e9b30cf387e6d8a35f82616a796 +0 -0
  128. data/test/dummy/tmp/cache/assets/CDA/880/sprockets%2F6b1913c56c962748122caf34704afdb5 +0 -0
  129. data/test/dummy/tmp/cache/assets/CDD/BF0/sprockets%2F1f5080b606781094922ecaccd9d508f2 +0 -0
  130. data/test/dummy/tmp/cache/assets/CF0/BB0/sprockets%2F48cd49adc4f96c8324c46c45641b6865 +0 -0
  131. data/test/dummy/tmp/cache/assets/CFE/380/sprockets%2F8e8d04799794da144a9907a9f82e0cf8 +0 -0
  132. data/test/dummy/tmp/cache/assets/D06/470/sprockets%2F2e9124aa82b45552ba5a8307f4f16a8e +0 -0
  133. data/test/dummy/tmp/cache/assets/D06/B80/sprockets%2Fb658eb46471a1b356c0e13962f1a52ee +0 -0
  134. data/test/dummy/tmp/cache/assets/D07/520/sprockets%2F0176f74cb205f694569fa21a53b2fa0e +0 -0
  135. data/test/dummy/tmp/cache/assets/D0A/3C0/sprockets%2F8fd1601c6d442f22a88d0e43bb87117f +0 -0
  136. data/test/dummy/tmp/cache/assets/D10/130/sprockets%2F7af0bd97720d268b9835405c8bae2d06 +0 -0
  137. data/test/dummy/tmp/cache/assets/D15/450/sprockets%2Fae3344670b608424cdc864eca5496fb9 +0 -0
  138. data/test/dummy/tmp/cache/assets/D16/7F0/sprockets%2F73d738bf9b779ad016ed62131d85cc16 +0 -0
  139. data/test/dummy/tmp/cache/assets/D16/A30/sprockets%2F23659e6e2161bb90c6f382ecbef73906 +0 -0
  140. data/test/dummy/tmp/cache/assets/D2B/060/sprockets%2Fd5891eb52eb6329a928461796e9ddfe5 +0 -0
  141. data/test/dummy/tmp/cache/assets/D32/810/sprockets%2F640ab72cec151bc94248b091f6b763bb +0 -0
  142. data/test/dummy/tmp/cache/assets/D37/C50/sprockets%2F00afdaa74ea16690227f771ae0879e1c +0 -0
  143. data/test/dummy/tmp/cache/assets/D39/A80/sprockets%2Ff850350eb319d86a5e0c02c2279cffa5 +0 -0
  144. data/test/dummy/tmp/cache/assets/D3F/170/sprockets%2F3b7a50f2bb29ad782e0352fc784d582f +0 -0
  145. data/test/dummy/tmp/cache/assets/D54/280/sprockets%2F8e51b269010978fe78fa369f6dfa1bf6 +0 -0
  146. data/test/dummy/tmp/cache/assets/D5C/120/sprockets%2F6b74e64b0422b8c574caba3a1746acd2 +0 -0
  147. data/test/dummy/tmp/cache/assets/D5D/E00/sprockets%2Fee3d10401f2a2d4a84f4fe56181fe1c1 +0 -0
  148. data/test/dummy/tmp/cache/assets/D68/310/sprockets%2Fa6108a4fca3b4012f99dcf46e24f5f60 +0 -0
  149. data/test/dummy/tmp/cache/assets/D6C/8C0/sprockets%2F06e1e915faab12cbf879a6b15b9136e7 +0 -0
  150. data/test/dummy/tmp/cache/assets/D70/310/sprockets%2Fab142f83166b2fc048379c9dfddd355a +0 -0
  151. data/test/dummy/tmp/cache/assets/D74/9F0/sprockets%2F59ed8bd7c6ca0dbe0f1921ee14667375 +0 -0
  152. data/test/dummy/tmp/cache/assets/D76/270/sprockets%2F006a046ae88edf3f8c84dc30ef8056d8 +0 -0
  153. data/test/dummy/tmp/cache/assets/D82/590/sprockets%2Fa6f6f970aa669d95690af983eb2b6a5c +0 -0
  154. data/test/dummy/tmp/cache/assets/D8D/440/sprockets%2F486b3eff5dce57385a599ef92be18c65 +0 -0
  155. data/test/dummy/tmp/cache/assets/D93/FF0/sprockets%2Fd06dd1928f37e37a29edb4dbaeb20403 +0 -0
  156. data/test/dummy/tmp/cache/assets/D99/350/sprockets%2F31bdb7fc1c62c06d71678d04fd0db9b8 +0 -0
  157. data/test/dummy/tmp/cache/assets/D9C/070/sprockets%2F9be5d5a71da06ce64d0ed17b3937e15d +0 -0
  158. data/test/dummy/tmp/cache/assets/D9E/5B0/sprockets%2Fd3f2f56488b7ac4890a2ad0bfef7c322 +0 -0
  159. data/test/dummy/tmp/cache/assets/DA4/020/sprockets%2F0fc75dd594e2c890f93a6dcd7332aaa8 +0 -0
  160. data/test/dummy/tmp/cache/assets/DA4/6B0/sprockets%2F17a2e22cd7356ee86da5d99f0a08bbf7 +0 -0
  161. data/test/dummy/tmp/cache/assets/DA5/470/sprockets%2Fa49ebde3ec35e12d52892e188a5cfd90 +0 -0
  162. data/test/dummy/tmp/cache/assets/DA6/D90/sprockets%2Fe3d875d9f2fb7341ae0e31f64c90e6bf +0 -0
  163. data/test/dummy/tmp/cache/assets/DA7/CA0/sprockets%2F0a03bffc91afd8872e8986daf8a2309b +0 -0
  164. data/test/dummy/tmp/cache/assets/DAD/FC0/sprockets%2F9b6809cd65f83a6bfaee80543f9e0ab7 +0 -0
  165. data/test/dummy/tmp/cache/assets/DC4/410/sprockets%2F7c23fbd015fe022d7eed035b4ff3a59c +0 -0
  166. data/test/dummy/tmp/cache/assets/DCB/CA0/sprockets%2F940121ecc7ae38abf79cc78efadf2212 +0 -0
  167. data/test/dummy/tmp/cache/assets/DCC/C10/sprockets%2F7cb37eb6b6ca3028ffd5c5420d8d7fc1 +0 -0
  168. data/test/dummy/tmp/cache/assets/DCD/4E0/sprockets%2Fcff1de305ed821d80d98f4cafa27414d +0 -0
  169. data/test/dummy/tmp/cache/assets/E07/1E0/sprockets%2Fd79ac6cbbaf490e5a3f09ab8288d3c9e +0 -0
  170. data/test/dummy/tmp/cache/assets/E39/680/sprockets%2F1e91e9837edc18aeeaf8df3c82f2af0e +0 -0
  171. data/test/dummy/tmp/cache/assets/E56/670/sprockets%2Fbd0e4d12cea996e0d2eebaa879a17eca +0 -0
  172. data/test/dummy/tmp/cache/assets/E57/150/sprockets%2Fdfa6edddd9357edcafaf06c20d21e561 +0 -0
  173. data/test/dummy/tmp/cache/assets/E5B/2B0/sprockets%2Ffebbeb2ea0bcd485bf5b9bd6190b9f44 +0 -0
  174. data/test/dummy/tmp/cache/assets/development/sprockets/006eb7cc017cf18c3ea32cab97f0cc3c +0 -0
  175. data/test/dummy/tmp/cache/assets/development/sprockets/00afdaa74ea16690227f771ae0879e1c +0 -0
  176. data/test/dummy/tmp/cache/assets/development/sprockets/0125613fec11977628d50d4198ef25f3 +0 -0
  177. data/test/dummy/tmp/cache/assets/development/sprockets/04d6293b6d7c30b20475e886dc634936 +0 -0
  178. data/test/dummy/tmp/cache/assets/development/sprockets/0c6b5095a86cd9aa4d15f4258a08f315 +0 -0
  179. data/test/dummy/tmp/cache/assets/development/sprockets/17a2e22cd7356ee86da5d99f0a08bbf7 +0 -0
  180. data/test/dummy/tmp/cache/assets/development/sprockets/192691b9e0bedebfde12633bb3629d0b +0 -0
  181. data/test/dummy/tmp/cache/assets/development/sprockets/1e91e9837edc18aeeaf8df3c82f2af0e +0 -0
  182. data/test/dummy/tmp/cache/assets/development/sprockets/1f0b25ca08195d3582e4fe04396e9270 +0 -0
  183. data/test/dummy/tmp/cache/assets/development/sprockets/23659e6e2161bb90c6f382ecbef73906 +0 -0
  184. data/test/dummy/tmp/cache/assets/development/sprockets/23b9bf2d5f9b45144a2803844eaa826e +0 -0
  185. data/test/dummy/tmp/cache/assets/development/sprockets/243cc575289b3170af701574d19d6353 +0 -0
  186. data/test/dummy/tmp/cache/assets/development/sprockets/24abc0717cf109a24278323c0d6756a0 +0 -0
  187. data/test/dummy/tmp/cache/assets/development/sprockets/2b6cc5f28a12c36cd4095832a5107969 +0 -0
  188. data/test/dummy/tmp/cache/assets/development/sprockets/326592f095651b767387e7c1d2b01dfe +0 -0
  189. data/test/dummy/tmp/cache/assets/development/sprockets/3bb822a002a8951f71e53f450090799b +0 -0
  190. data/test/dummy/tmp/cache/assets/development/sprockets/3f91dad02acd15d7437b62ddca53c58b +0 -0
  191. data/test/dummy/tmp/cache/assets/development/sprockets/486b3eff5dce57385a599ef92be18c65 +0 -0
  192. data/test/dummy/tmp/cache/assets/development/sprockets/48cd49adc4f96c8324c46c45641b6865 +0 -0
  193. data/test/dummy/tmp/cache/assets/development/sprockets/4b5d99d538ae32ad329cb37e413dbacc +0 -0
  194. data/test/dummy/tmp/cache/assets/development/sprockets/4e89e9cec1b5e275bfeb078a9abfef44 +0 -0
  195. data/test/dummy/tmp/cache/assets/development/sprockets/510aa1c63fe533f77a197367b79f2919 +0 -0
  196. data/test/dummy/tmp/cache/assets/development/sprockets/5cf60638cb580f41112a5a83eb3b72ef +0 -0
  197. data/test/dummy/tmp/cache/assets/development/sprockets/5dfbbe7f012f6cb7c29b1298cd9ff406 +0 -0
  198. data/test/dummy/tmp/cache/assets/development/sprockets/640ab72cec151bc94248b091f6b763bb +0 -0
  199. data/test/dummy/tmp/cache/assets/development/sprockets/6760a9b2947edeec5433ca0ff9d7a295 +0 -0
  200. data/test/dummy/tmp/cache/assets/development/sprockets/6b74e64b0422b8c574caba3a1746acd2 +0 -0
  201. data/test/dummy/tmp/cache/assets/development/sprockets/6c2f18f7338d56feecce32780357521c +0 -0
  202. data/test/dummy/tmp/cache/assets/development/sprockets/6f292799ddb92a69f64c5a60c921a2d6 +0 -0
  203. data/test/dummy/tmp/cache/assets/development/sprockets/731ed4a2128ad4c7240bb520611c8404 +0 -0
  204. data/test/dummy/tmp/cache/assets/development/sprockets/73d738bf9b779ad016ed62131d85cc16 +0 -0
  205. data/test/dummy/tmp/cache/assets/development/sprockets/7477fb841e65b8c9c48c40c13935a851 +0 -0
  206. data/test/dummy/tmp/cache/assets/development/sprockets/77412054774bd02630c93c1e8ac6b26a +0 -0
  207. data/test/dummy/tmp/cache/assets/development/sprockets/7751914469530dae0646d92467e9d72e +0 -0
  208. data/test/dummy/tmp/cache/assets/development/sprockets/794a40bf52fa0deda8b4e5efa8ac523a +0 -0
  209. data/test/dummy/tmp/cache/assets/development/sprockets/7af0bd97720d268b9835405c8bae2d06 +0 -0
  210. data/test/dummy/tmp/cache/assets/development/sprockets/82ecc84179ce77914906a81d29b483cf +0 -0
  211. data/test/dummy/tmp/cache/assets/development/sprockets/8d62150b658b3a8b6fed7e8951f52392 +0 -0
  212. data/test/dummy/tmp/cache/assets/development/sprockets/8e51b269010978fe78fa369f6dfa1bf6 +0 -0
  213. data/test/dummy/tmp/cache/assets/development/sprockets/8e8d04799794da144a9907a9f82e0cf8 +0 -0
  214. data/test/dummy/tmp/cache/assets/development/sprockets/8ea331810c31cbe1ba34b91a02f769e7 +0 -0
  215. data/test/dummy/tmp/cache/assets/development/sprockets/8fd1601c6d442f22a88d0e43bb87117f +0 -0
  216. data/test/dummy/tmp/cache/assets/development/sprockets/953bc37b1ee0915247dba29773960202 +0 -0
  217. data/test/dummy/tmp/cache/assets/development/sprockets/978f6f32b21b72d3e89b0c0f6f3a4a83 +0 -0
  218. data/test/dummy/tmp/cache/assets/development/sprockets/994386d11af17e88b6d107b83f41f8b5 +0 -0
  219. data/test/dummy/tmp/cache/assets/development/sprockets/9b077a68a557a208cf34297edadebdd2 +0 -0
  220. data/test/dummy/tmp/cache/assets/development/sprockets/9b54afa4ef026f4c288feeec49f2f526 +0 -0
  221. data/test/dummy/tmp/cache/assets/development/sprockets/9b6809cd65f83a6bfaee80543f9e0ab7 +0 -0
  222. data/test/dummy/tmp/cache/assets/development/sprockets/9be5d5a71da06ce64d0ed17b3937e15d +0 -0
  223. data/test/dummy/tmp/cache/assets/development/sprockets/a29d0dc527ff5ce1252ccf6370514620 +0 -0
  224. data/test/dummy/tmp/cache/assets/development/sprockets/a49ebde3ec35e12d52892e188a5cfd90 +0 -0
  225. data/test/dummy/tmp/cache/assets/development/sprockets/a6108a4fca3b4012f99dcf46e24f5f60 +0 -0
  226. data/test/dummy/tmp/cache/assets/development/sprockets/aad6778bf60f6f1919628606c92cfd6f +0 -0
  227. data/test/dummy/tmp/cache/assets/development/sprockets/ab142f83166b2fc048379c9dfddd355a +0 -0
  228. data/test/dummy/tmp/cache/assets/development/sprockets/ae3344670b608424cdc864eca5496fb9 +0 -0
  229. data/test/dummy/tmp/cache/assets/development/sprockets/b01583a39abd5ce0a3d2b2967c6f75bd +0 -0
  230. data/test/dummy/tmp/cache/assets/development/sprockets/b2780e7c581a2f0cb1d61346c6d1c1cd +0 -0
  231. data/test/dummy/tmp/cache/assets/development/sprockets/b3f0354298e8a43af381a6e42a03f0bc +0 -0
  232. data/test/dummy/tmp/cache/assets/development/sprockets/b52b477f01cb65c5e1c6a91f6f0be20c +0 -0
  233. data/test/dummy/tmp/cache/assets/development/sprockets/b6fbc3e4c5191de2cc58174a3eeb7cfc +0 -0
  234. data/test/dummy/tmp/cache/assets/development/sprockets/bb39143b57041f96c48b71e92f7e09f2 +0 -0
  235. data/test/dummy/tmp/cache/assets/development/sprockets/be0b9e741941205338510e296868aab2 +0 -0
  236. data/test/dummy/tmp/cache/assets/development/sprockets/c9e69990b1552b575b271aaabbfc4eb5 +0 -0
  237. data/test/dummy/tmp/cache/assets/development/sprockets/c9eeea792acbd377e29de43d6b491291 +0 -0
  238. data/test/dummy/tmp/cache/assets/development/sprockets/cb67795d1180b371b5b749662b9adefb +0 -0
  239. data/test/dummy/tmp/cache/assets/development/sprockets/cfdf466647e83eb93e0d6630e4b51a25 +0 -0
  240. data/test/dummy/tmp/cache/assets/development/sprockets/cff1de305ed821d80d98f4cafa27414d +0 -0
  241. data/test/dummy/tmp/cache/assets/development/sprockets/d5891eb52eb6329a928461796e9ddfe5 +0 -0
  242. data/test/dummy/tmp/cache/assets/development/sprockets/d7491740e7757fe2ec57fd6d25461e5c +0 -0
  243. data/test/dummy/tmp/cache/assets/development/sprockets/d80f54242a6e7f4399481b7357d439a4 +0 -0
  244. data/test/dummy/tmp/cache/assets/development/sprockets/df16db3bfcc56fafc73b853b7999be1f +0 -0
  245. data/test/dummy/tmp/cache/assets/development/sprockets/dfa6edddd9357edcafaf06c20d21e561 +0 -0
  246. data/test/dummy/tmp/cache/assets/development/sprockets/e3d875d9f2fb7341ae0e31f64c90e6bf +0 -0
  247. data/test/dummy/tmp/cache/assets/development/sprockets/e7bd439b274a2155050b47e5a64ea72d +0 -0
  248. data/test/dummy/tmp/cache/assets/development/sprockets/ee3d10401f2a2d4a84f4fe56181fe1c1 +0 -0
  249. data/test/dummy/tmp/cache/assets/development/sprockets/f14a2366122e6017b965b32290b8abb0 +0 -0
  250. data/test/dummy/tmp/cache/assets/development/sprockets/f9a412f49281cc7e6512f0787f7ba05f +0 -0
  251. data/test/dummy/tmp/cache/assets/development/sprockets/febbeb2ea0bcd485bf5b9bd6190b9f44 +0 -0
  252. data/test/dummy/tmp/cache/assets/production/sprockets/00afdaa74ea16690227f771ae0879e1c +0 -0
  253. data/test/dummy/tmp/cache/assets/production/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  254. data/test/dummy/tmp/cache/assets/production/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  255. data/test/dummy/tmp/cache/assets/production/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  256. data/test/dummy/tmp/cache/assets/production/sprockets/73d738bf9b779ad016ed62131d85cc16 +0 -0
  257. data/test/dummy/tmp/cache/assets/production/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  258. data/test/dummy/tmp/cache/assets/production/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  259. data/test/dummy/tmp/cache/assets/production/sprockets/dfa6edddd9357edcafaf06c20d21e561 +0 -0
  260. data/test/dummy/tmp/cache/assets/production/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  261. data/test/dummy/tmp/cache/assets/production/sprockets/febbeb2ea0bcd485bf5b9bd6190b9f44 +0 -0
  262. data/test/integration/navigation_test.rb +10 -0
  263. data/test/redis_analytics_test.rb +7 -0
  264. data/test/test_helper.rb +15 -0
  265. data/{lib/redis_analytics/dashboard/public/javascripts/vendor/bootstrap → vendor/assets/javascripts/redis_analytics}/bootstrap.min.js +0 -0
  266. data/vendor/assets/javascripts/redis_analytics/engine.js +15 -0
  267. data/{lib/redis_analytics/dashboard/public/javascripts/vendor → vendor/assets/javascripts/redis_analytics}/jquery-jvectormap-1.2.2.min.js +0 -0
  268. data/{lib/redis_analytics/dashboard/public/javascripts/vendor → vendor/assets/javascripts/redis_analytics}/jquery-jvectormap-world-mill-en.js +0 -0
  269. data/{lib/redis_analytics/dashboard/public/javascripts/vendor → vendor/assets/javascripts/redis_analytics}/morris.min.js +0 -0
  270. data/{lib/redis_analytics/dashboard/public/javascripts/vendor → vendor/assets/javascripts/redis_analytics}/raphael-min.js +0 -0
  271. data/{lib/redis_analytics/dashboard/public/css → vendor/assets/stylesheets/redis_analytics}/bootstrap-responsive.min.css +0 -0
  272. data/{lib/redis_analytics/dashboard/public/css → vendor/assets/stylesheets/redis_analytics}/bootstrap.min.css +0 -0
  273. data/vendor/assets/stylesheets/redis_analytics/engine.css +12 -0
  274. data/{lib/redis_analytics/dashboard/public/css → vendor/assets/stylesheets/redis_analytics}/jquery-jvectormap-1.2.2.css +0 -0
  275. data/{lib/redis_analytics/dashboard/public/css → vendor/assets/stylesheets/redis_analytics}/morris.css +0 -0
  276. metadata +307 -122
  277. data/bin/redis_analytics_dashboard +0 -17
  278. data/lib/redis_analytics/analytics.rb +0 -45
  279. data/lib/redis_analytics/api.rb +0 -60
  280. data/lib/redis_analytics/dashboard.rb +0 -53
  281. data/lib/redis_analytics/dashboard/public/img/favicon.ico +0 -0
  282. data/lib/redis_analytics/dashboard/public/img/glyphicons-halflings-white.png +0 -0
  283. data/lib/redis_analytics/dashboard/public/img/glyphicons-halflings.png +0 -0
  284. data/lib/redis_analytics/dashboard/public/javascripts/vendor/jquery-1.9.1.min.js +0 -5
  285. data/lib/redis_analytics/dashboard/views/activity.erb +0 -7
  286. data/lib/redis_analytics/dashboard/views/dialogs/unique_visits.erb +0 -41
  287. data/lib/redis_analytics/dashboard/views/dialogs/visits.erb +0 -40
  288. data/lib/redis_analytics/dashboard/views/layout.erb +0 -16
  289. data/lib/redis_analytics/dashboard/views/widgets/visit_duration.erb +0 -3
  290. data/lib/redis_analytics/railtie.rb +0 -13
  291. data/wsd.png +0 -0
@@ -0,0 +1 @@
1
+ {"files":{"application-c900658d554ff9f314a2e1b97cd68997.js":{"logical_path":"application.js","mtime":"2014-04-11T21:34:53+05:30","size":299105,"digest":"c900658d554ff9f314a2e1b97cd68997"},"application-ac39e235d42f60499cd65a4b78076ba3.css":{"logical_path":"application.css","mtime":"2014-04-09T14:05:13+05:30","size":513,"digest":"ac39e235d42f60499cd65a4b78076ba3"}},"assets":{"application.js":"application-c900658d554ff9f314a2e1b97cd68997.js","application.css":"application-ac39e235d42f60499cd65a4b78076ba3.css"}}
File without changes
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+ # This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
3
+
4
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
5
+ require File.expand_path('../../config/boot', __FILE__)
6
+ require 'rails/commands'
@@ -0,0 +1,10 @@
1
+ require 'test_helper'
2
+
3
+ class NavigationTest < ActionDispatch::IntegrationTest
4
+ fixtures :all
5
+
6
+ # test "the truth" do
7
+ # assert true
8
+ # end
9
+ end
10
+
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class RedisAnalyticsTest < ActiveSupport::TestCase
4
+ test "truth" do
5
+ assert_kind_of Module, RedisAnalytics
6
+ end
7
+ end
@@ -0,0 +1,15 @@
1
+ # Configure Rails Environment
2
+ ENV["RAILS_ENV"] = "test"
3
+
4
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
5
+ require "rails/test_help"
6
+
7
+ Rails.backtrace_cleaner.remove_silencers!
8
+
9
+ # Load support files
10
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
11
+
12
+ # Load fixtures from the engine
13
+ if ActiveSupport::TestCase.method_defined?(:fixture_path=)
14
+ ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
15
+ end
@@ -0,0 +1,15 @@
1
+ // This is a manifest file that'll be compiled into application.js, which will include all the files
2
+ // listed below.
3
+ //
4
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
+ // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6
+ //
7
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
+ // the compiled file.
9
+ //
10
+ // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
11
+ // GO AFTER THE REQUIRES BELOW.
12
+ //
13
+ //= require jquery
14
+ //= require jquery_ujs
15
+ //= require_tree .
@@ -0,0 +1,12 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the top of the
9
+ * compiled file, but it's generally better to create a new file per style scope.
10
+ *
11
+ *= require_tree .
12
+ */
metadata CHANGED
@@ -1,254 +1,229 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis_analytics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
5
- prerelease:
4
+ version: 0.7.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Schubert Cardozo
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-04-07 00:00:00.000000000 Z
11
+ date: 2014-04-23 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: rack
14
+ name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: 3.2.0
20
+ - - <
21
+ - !ruby/object:Gem::Version
22
+ version: '5'
22
23
  type: :runtime
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
26
  requirements:
27
- - - ! '>='
27
+ - - '>='
28
28
  - !ruby/object:Gem::Version
29
- version: '0'
29
+ version: 3.2.0
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '5'
30
33
  - !ruby/object:Gem::Dependency
31
- name: redis
34
+ name: jquery-rails
32
35
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
36
  requirements:
35
- - - ! '>='
37
+ - - '>='
36
38
  - !ruby/object:Gem::Version
37
39
  version: '0'
38
40
  type: :runtime
39
41
  prerelease: false
40
42
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
43
  requirements:
43
- - - ! '>='
44
+ - - '>='
44
45
  - !ruby/object:Gem::Version
45
46
  version: '0'
46
47
  - !ruby/object:Gem::Dependency
47
- name: browser
48
+ name: sqlite3
48
49
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
50
  requirements:
51
- - - ! '>='
51
+ - - '>='
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0'
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
57
  requirements:
59
- - - ! '>='
58
+ - - '>='
60
59
  - !ruby/object:Gem::Version
61
60
  version: '0'
62
61
  - !ruby/object:Gem::Dependency
63
- name: sinatra
62
+ name: redis
64
63
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
64
  requirements:
67
- - - ! '>='
65
+ - - '>='
68
66
  - !ruby/object:Gem::Version
69
67
  version: '0'
70
68
  type: :runtime
71
69
  prerelease: false
72
70
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
71
  requirements:
75
- - - ! '>='
72
+ - - '>='
76
73
  - !ruby/object:Gem::Version
77
74
  version: '0'
78
75
  - !ruby/object:Gem::Dependency
79
- name: sinatra-assetpack
76
+ name: browser
80
77
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
78
  requirements:
83
- - - ! '>='
79
+ - - '>='
84
80
  - !ruby/object:Gem::Version
85
81
  version: '0'
86
82
  type: :runtime
87
83
  prerelease: false
88
84
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
85
  requirements:
91
- - - ! '>='
86
+ - - '>='
92
87
  - !ruby/object:Gem::Version
93
88
  version: '0'
94
89
  - !ruby/object:Gem::Dependency
95
90
  name: geoip
96
91
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
92
  requirements:
99
- - - ! '>='
93
+ - - '>='
100
94
  - !ruby/object:Gem::Version
101
95
  version: '0'
102
96
  type: :runtime
103
97
  prerelease: false
104
98
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
99
  requirements:
107
- - - ! '>='
100
+ - - '>='
108
101
  - !ruby/object:Gem::Version
109
102
  version: '0'
110
103
  - !ruby/object:Gem::Dependency
111
104
  name: json
112
105
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
106
  requirements:
115
- - - ! '>='
107
+ - - '>='
116
108
  - !ruby/object:Gem::Version
117
109
  version: '0'
118
110
  type: :runtime
119
111
  prerelease: false
120
112
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
113
  requirements:
123
- - - ! '>='
114
+ - - '>='
124
115
  - !ruby/object:Gem::Version
125
116
  version: '0'
126
117
  - !ruby/object:Gem::Dependency
127
118
  name: fakeredis
128
119
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
120
  requirements:
131
- - - ! '>='
121
+ - - '>='
132
122
  - !ruby/object:Gem::Version
133
123
  version: '0'
134
124
  type: :development
135
125
  prerelease: false
136
126
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
127
  requirements:
139
- - - ! '>='
128
+ - - '>='
140
129
  - !ruby/object:Gem::Version
141
130
  version: '0'
142
131
  - !ruby/object:Gem::Dependency
143
132
  name: rake
144
133
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
134
  requirements:
147
- - - ! '>='
135
+ - - '>='
148
136
  - !ruby/object:Gem::Version
149
137
  version: '0'
150
138
  type: :development
151
139
  prerelease: false
152
140
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
141
  requirements:
155
- - - ! '>='
142
+ - - '>='
156
143
  - !ruby/object:Gem::Version
157
144
  version: '0'
158
145
  - !ruby/object:Gem::Dependency
159
146
  name: rspec
160
147
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
148
  requirements:
163
- - - ! '>='
149
+ - - '>='
164
150
  - !ruby/object:Gem::Version
165
151
  version: '0'
166
152
  type: :development
167
153
  prerelease: false
168
154
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
155
  requirements:
171
- - - ! '>='
156
+ - - '>='
172
157
  - !ruby/object:Gem::Version
173
158
  version: '0'
174
159
  - !ruby/object:Gem::Dependency
175
160
  name: guard-rspec
176
161
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
162
  requirements:
179
- - - ! '>='
163
+ - - '>='
180
164
  - !ruby/object:Gem::Version
181
165
  version: '0'
182
166
  type: :development
183
167
  prerelease: false
184
168
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
169
  requirements:
187
- - - ! '>='
170
+ - - '>='
188
171
  - !ruby/object:Gem::Version
189
172
  version: '0'
190
173
  - !ruby/object:Gem::Dependency
191
174
  name: mocha
192
175
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
176
  requirements:
195
- - - ! '>='
177
+ - - '>='
196
178
  - !ruby/object:Gem::Version
197
179
  version: '0'
198
180
  type: :development
199
181
  prerelease: false
200
182
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
183
  requirements:
203
- - - ! '>='
184
+ - - '>='
204
185
  - !ruby/object:Gem::Version
205
186
  version: '0'
206
187
  - !ruby/object:Gem::Dependency
207
188
  name: rack-test
208
189
  requirement: !ruby/object:Gem::Requirement
209
- none: false
210
190
  requirements:
211
- - - ! '>='
191
+ - - '>='
212
192
  - !ruby/object:Gem::Version
213
193
  version: '0'
214
194
  type: :development
215
195
  prerelease: false
216
196
  version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
197
  requirements:
219
- - - ! '>='
198
+ - - '>='
220
199
  - !ruby/object:Gem::Version
221
200
  version: '0'
222
201
  - !ruby/object:Gem::Dependency
223
202
  name: simplecov
224
203
  requirement: !ruby/object:Gem::Requirement
225
- none: false
226
204
  requirements:
227
- - - ! '>='
205
+ - - '>='
228
206
  - !ruby/object:Gem::Version
229
207
  version: '0'
230
208
  type: :development
231
209
  prerelease: false
232
210
  version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
211
  requirements:
235
- - - ! '>='
212
+ - - '>='
236
213
  - !ruby/object:Gem::Version
237
214
  version: '0'
238
215
  - !ruby/object:Gem::Dependency
239
216
  name: coveralls
240
217
  requirement: !ruby/object:Gem::Requirement
241
- none: false
242
218
  requirements:
243
- - - ! '>='
219
+ - - '>='
244
220
  - !ruby/object:Gem::Version
245
221
  version: '0'
246
222
  type: :development
247
223
  prerelease: false
248
224
  version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
225
  requirements:
251
- - - ! '>='
226
+ - - '>='
252
227
  - !ruby/object:Gem::Version
253
228
  version: '0'
254
229
  description: A gem that provides a Redis based web analytics solution for your rack-compliant
@@ -256,103 +231,313 @@ description: A gem that provides a Redis based web analytics solution for your r
256
231
  OS, visitor recency, traffic sources and more
257
232
  email:
258
233
  - cardozoschubert@gmail.com
259
- executables:
260
- - redis_analytics_dashboard
234
+ executables: []
261
235
  extensions: []
262
236
  extra_rdoc_files: []
263
237
  files:
238
+ - app/controllers/redis_analytics/api_controller.rb
239
+ - app/controllers/redis_analytics/application_controller.rb
240
+ - app/controllers/redis_analytics/visits_controller.rb
241
+ - app/helpers/redis_analytics/application_helper.rb
242
+ - app/helpers/redis_analytics/visits_helper.rb
243
+ - app/views/layouts/redis_analytics/application.html.erb
244
+ - app/views/redis_analytics/application/_footer.html.erb
245
+ - app/views/redis_analytics/application/_footer.html.erb~
246
+ - app/views/redis_analytics/application/_header.html.erb
247
+ - app/views/redis_analytics/visits/_bounce_rate.html.erb
248
+ - app/views/redis_analytics/visits/_browsers_donut.html.erb
249
+ - app/views/redis_analytics/visits/_first_visits.html.erb
250
+ - app/views/redis_analytics/visits/_page_depth.html.erb
251
+ - app/views/redis_analytics/visits/_referers_donut.html.erb
252
+ - app/views/redis_analytics/visits/_total_page_views.html.erb
253
+ - app/views/redis_analytics/visits/_total_visits.html.erb
254
+ - app/views/redis_analytics/visits/_unique_visits_line.html.erb
255
+ - app/views/redis_analytics/visits/_unique_visits_line.html.erb~
256
+ - app/views/redis_analytics/visits/_visit_duration.html.erb
257
+ - app/views/redis_analytics/visits/_visit_spark.html.erb
258
+ - app/views/redis_analytics/visits/_visitor_recency_slices.html.erb
259
+ - app/views/redis_analytics/visits/_visits_area.html.erb
260
+ - app/views/redis_analytics/visits/_visits_donut.html.erb
261
+ - app/views/redis_analytics/visits/_visits_js.html.erb
262
+ - app/views/redis_analytics/visits/_world_map.html.erb
263
+ - app/views/redis_analytics/visits/index.html.erb
264
+ - app/views/redis_analytics/visits/index.html.erb~
264
265
  - bin/GeoIP.dat
265
- - bin/redis_analytics_dashboard
266
266
  - CHANGELOG.md
267
+ - config/routes.rb
267
268
  - config.ru
268
269
  - CONTRIBUTING.md
270
+ - coverage/assets/0.8.0/application.css
271
+ - coverage/assets/0.8.0/application.js
272
+ - coverage/assets/0.8.0/colorbox/border.png
273
+ - coverage/assets/0.8.0/colorbox/controls.png
274
+ - coverage/assets/0.8.0/colorbox/loading.gif
275
+ - coverage/assets/0.8.0/colorbox/loading_background.png
276
+ - coverage/assets/0.8.0/favicon_green.png
277
+ - coverage/assets/0.8.0/favicon_red.png
278
+ - coverage/assets/0.8.0/favicon_yellow.png
279
+ - coverage/assets/0.8.0/loading.gif
280
+ - coverage/assets/0.8.0/magnify.png
281
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
282
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
283
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
284
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
285
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png
286
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
287
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
288
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
289
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png
290
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png
291
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png
292
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png
293
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png
294
+ - coverage/index.html
269
295
  - Gemfile
270
296
  - Gemfile.lock
271
297
  - Guardfile
272
- - lib/redis_analytics/analytics.rb
273
- - lib/redis_analytics/api.rb
274
298
  - lib/redis_analytics/configuration.rb
275
- - lib/redis_analytics/dashboard/public/css/bootstrap-responsive.min.css
276
- - lib/redis_analytics/dashboard/public/css/bootstrap.min.css
277
- - lib/redis_analytics/dashboard/public/css/jquery-jvectormap-1.2.2.css
278
- - lib/redis_analytics/dashboard/public/css/morris.css
279
- - lib/redis_analytics/dashboard/public/img/favicon.ico
280
- - lib/redis_analytics/dashboard/public/img/glyphicons-halflings-white.png
281
- - lib/redis_analytics/dashboard/public/img/glyphicons-halflings.png
282
- - lib/redis_analytics/dashboard/public/javascripts/vendor/bootstrap/bootstrap.min.js
283
- - lib/redis_analytics/dashboard/public/javascripts/vendor/jquery-1.9.1.min.js
284
- - lib/redis_analytics/dashboard/public/javascripts/vendor/jquery-jvectormap-1.2.2.min.js
285
- - lib/redis_analytics/dashboard/public/javascripts/vendor/jquery-jvectormap-world-mill-en.js
286
- - lib/redis_analytics/dashboard/public/javascripts/vendor/morris.min.js
287
- - lib/redis_analytics/dashboard/public/javascripts/vendor/raphael-min.js
288
- - lib/redis_analytics/dashboard/views/activity.erb
289
- - lib/redis_analytics/dashboard/views/dialogs/unique_visits.erb
290
- - lib/redis_analytics/dashboard/views/dialogs/visits.erb
291
- - lib/redis_analytics/dashboard/views/footer.erb
292
- - lib/redis_analytics/dashboard/views/header.erb
293
- - lib/redis_analytics/dashboard/views/layout.erb
294
- - lib/redis_analytics/dashboard/views/visits.erb
295
- - lib/redis_analytics/dashboard/views/visits_js.erb
296
- - lib/redis_analytics/dashboard/views/widgets/bounce_rate.erb
297
- - lib/redis_analytics/dashboard/views/widgets/browsers_donut.erb
298
- - lib/redis_analytics/dashboard/views/widgets/first_visits.erb
299
- - lib/redis_analytics/dashboard/views/widgets/page_depth.erb
300
- - lib/redis_analytics/dashboard/views/widgets/referers_donut.erb
301
- - lib/redis_analytics/dashboard/views/widgets/total_page_views.erb
302
- - lib/redis_analytics/dashboard/views/widgets/total_visits.erb
303
- - lib/redis_analytics/dashboard/views/widgets/unique_visits_line.erb
304
- - lib/redis_analytics/dashboard/views/widgets/visit_duration.erb
305
- - lib/redis_analytics/dashboard/views/widgets/visit_spark.erb
306
- - lib/redis_analytics/dashboard/views/widgets/visitor_recency_slices.erb
307
- - lib/redis_analytics/dashboard/views/widgets/visits_area.erb
308
- - lib/redis_analytics/dashboard/views/widgets/visits_donut.erb
309
- - lib/redis_analytics/dashboard/views/widgets/world_map.erb
310
- - lib/redis_analytics/dashboard.rb
299
+ - lib/redis_analytics/engine.rb
311
300
  - lib/redis_analytics/filter.rb
312
301
  - lib/redis_analytics/helpers.rb
313
302
  - lib/redis_analytics/metrics.rb
314
- - lib/redis_analytics/railtie.rb
315
303
  - lib/redis_analytics/time_ext.rb
316
304
  - lib/redis_analytics/tracker.rb
317
305
  - lib/redis_analytics/version.rb
318
306
  - lib/redis_analytics/visit.rb
319
307
  - lib/redis_analytics.rb
320
- - LICENSE
308
+ - lib/tasks/redis_analytics_tasks.rake
309
+ - MIT-LICENSE
321
310
  - Rakefile
322
311
  - README.md
323
312
  - redis_analytics.gemspec
324
313
  - screenshot.png
314
+ - script/rails
325
315
  - spec/lib/redis_analytics/analytics_spec.rb
326
316
  - spec/lib/redis_analytics/configuration_spec.rb
327
- - spec/lib/redis_analytics/dashboard_spec.rb
317
+ - spec/lib/redis_analytics/engine_spec.rb
328
318
  - spec/lib/redis_analytics/filter_spec.rb
329
319
  - spec/lib/redis_analytics/tracker_spec.rb
330
320
  - spec/spec_helper.rb
331
321
  - spec/support/fakeredis.rb
322
+ - test/dummy/app/assets/javascripts/application.js
323
+ - test/dummy/app/assets/stylesheets/application.css
324
+ - test/dummy/app/controllers/application_controller.rb
325
+ - test/dummy/app/helpers/application_helper.rb
326
+ - test/dummy/app/views/layouts/application.html.erb
327
+ - test/dummy/config/application.rb
328
+ - test/dummy/config/boot.rb
329
+ - test/dummy/config/database.yml
330
+ - test/dummy/config/environment.rb
331
+ - test/dummy/config/environments/development.rb
332
+ - test/dummy/config/environments/production.rb
333
+ - test/dummy/config/environments/test.rb
334
+ - test/dummy/config/initializers/backtrace_silencers.rb
335
+ - test/dummy/config/initializers/inflections.rb
336
+ - test/dummy/config/initializers/mime_types.rb
337
+ - test/dummy/config/initializers/secret_token.rb
338
+ - test/dummy/config/initializers/session_store.rb
339
+ - test/dummy/config/initializers/wrap_parameters.rb
340
+ - test/dummy/config/locales/en.yml
341
+ - test/dummy/config/routes.rb
342
+ - test/dummy/config.ru
343
+ - test/dummy/db/development.sqlite3
344
+ - test/dummy/db/production.sqlite3
345
+ - test/dummy/log/development.log
346
+ - test/dummy/log/production.log
347
+ - test/dummy/public/404.html
348
+ - test/dummy/public/422.html
349
+ - test/dummy/public/500.html
350
+ - test/dummy/public/assets/application-ac39e235d42f60499cd65a4b78076ba3.css
351
+ - test/dummy/public/assets/application-ac39e235d42f60499cd65a4b78076ba3.css.gz
352
+ - test/dummy/public/assets/application-c900658d554ff9f314a2e1b97cd68997.js
353
+ - test/dummy/public/assets/application-c900658d554ff9f314a2e1b97cd68997.js.gz
354
+ - test/dummy/public/assets/manifest-5bcba723c313582b1d428fc3bf592b29.json
355
+ - test/dummy/public/favicon.ico
356
+ - test/dummy/Rakefile
357
+ - test/dummy/README.rdoc
358
+ - test/dummy/script/rails
359
+ - test/dummy/tmp/cache/assets/C86/E20/sprockets%2F04d6293b6d7c30b20475e886dc634936
360
+ - test/dummy/tmp/cache/assets/C88/400/sprockets%2F1bb834b9f3b720193591960cf7f31497
361
+ - test/dummy/tmp/cache/assets/C8D/800/sprockets%2Fb484d3480591b77bf84376f1f41a6457
362
+ - test/dummy/tmp/cache/assets/C97/230/sprockets%2Ff8c56a6d1d5685424871464fc480f956
363
+ - test/dummy/tmp/cache/assets/C98/560/sprockets%2Ff14a2366122e6017b965b32290b8abb0
364
+ - test/dummy/tmp/cache/assets/CAE/7D0/sprockets%2F1f0b25ca08195d3582e4fe04396e9270
365
+ - test/dummy/tmp/cache/assets/CB9/550/sprockets%2F0505a9fb5602a3fae429f389832747d8
366
+ - test/dummy/tmp/cache/assets/CBA/030/sprockets%2F510aa1c63fe533f77a197367b79f2919
367
+ - test/dummy/tmp/cache/assets/CBC/630/sprockets%2F8fca8928788707a4ba625519ab402d58
368
+ - test/dummy/tmp/cache/assets/CC6/EE0/sprockets%2Fb6d3cc91f7b3559f985a978176b44324
369
+ - test/dummy/tmp/cache/assets/CC9/9C0/sprockets%2F84294e9b30cf387e6d8a35f82616a796
370
+ - test/dummy/tmp/cache/assets/CDA/880/sprockets%2F6b1913c56c962748122caf34704afdb5
371
+ - test/dummy/tmp/cache/assets/CDD/BF0/sprockets%2F1f5080b606781094922ecaccd9d508f2
372
+ - test/dummy/tmp/cache/assets/CF0/BB0/sprockets%2F48cd49adc4f96c8324c46c45641b6865
373
+ - test/dummy/tmp/cache/assets/CFE/380/sprockets%2F8e8d04799794da144a9907a9f82e0cf8
374
+ - test/dummy/tmp/cache/assets/D06/470/sprockets%2F2e9124aa82b45552ba5a8307f4f16a8e
375
+ - test/dummy/tmp/cache/assets/D06/B80/sprockets%2Fb658eb46471a1b356c0e13962f1a52ee
376
+ - test/dummy/tmp/cache/assets/D07/520/sprockets%2F0176f74cb205f694569fa21a53b2fa0e
377
+ - test/dummy/tmp/cache/assets/D0A/3C0/sprockets%2F8fd1601c6d442f22a88d0e43bb87117f
378
+ - test/dummy/tmp/cache/assets/D10/130/sprockets%2F7af0bd97720d268b9835405c8bae2d06
379
+ - test/dummy/tmp/cache/assets/D15/450/sprockets%2Fae3344670b608424cdc864eca5496fb9
380
+ - test/dummy/tmp/cache/assets/D16/7F0/sprockets%2F73d738bf9b779ad016ed62131d85cc16
381
+ - test/dummy/tmp/cache/assets/D16/A30/sprockets%2F23659e6e2161bb90c6f382ecbef73906
382
+ - test/dummy/tmp/cache/assets/D2B/060/sprockets%2Fd5891eb52eb6329a928461796e9ddfe5
383
+ - test/dummy/tmp/cache/assets/D32/810/sprockets%2F640ab72cec151bc94248b091f6b763bb
384
+ - test/dummy/tmp/cache/assets/D37/C50/sprockets%2F00afdaa74ea16690227f771ae0879e1c
385
+ - test/dummy/tmp/cache/assets/D39/A80/sprockets%2Ff850350eb319d86a5e0c02c2279cffa5
386
+ - test/dummy/tmp/cache/assets/D3F/170/sprockets%2F3b7a50f2bb29ad782e0352fc784d582f
387
+ - test/dummy/tmp/cache/assets/D54/280/sprockets%2F8e51b269010978fe78fa369f6dfa1bf6
388
+ - test/dummy/tmp/cache/assets/D5C/120/sprockets%2F6b74e64b0422b8c574caba3a1746acd2
389
+ - test/dummy/tmp/cache/assets/D5D/E00/sprockets%2Fee3d10401f2a2d4a84f4fe56181fe1c1
390
+ - test/dummy/tmp/cache/assets/D68/310/sprockets%2Fa6108a4fca3b4012f99dcf46e24f5f60
391
+ - test/dummy/tmp/cache/assets/D6C/8C0/sprockets%2F06e1e915faab12cbf879a6b15b9136e7
392
+ - test/dummy/tmp/cache/assets/D70/310/sprockets%2Fab142f83166b2fc048379c9dfddd355a
393
+ - test/dummy/tmp/cache/assets/D74/9F0/sprockets%2F59ed8bd7c6ca0dbe0f1921ee14667375
394
+ - test/dummy/tmp/cache/assets/D76/270/sprockets%2F006a046ae88edf3f8c84dc30ef8056d8
395
+ - test/dummy/tmp/cache/assets/D82/590/sprockets%2Fa6f6f970aa669d95690af983eb2b6a5c
396
+ - test/dummy/tmp/cache/assets/D8D/440/sprockets%2F486b3eff5dce57385a599ef92be18c65
397
+ - test/dummy/tmp/cache/assets/D93/FF0/sprockets%2Fd06dd1928f37e37a29edb4dbaeb20403
398
+ - test/dummy/tmp/cache/assets/D99/350/sprockets%2F31bdb7fc1c62c06d71678d04fd0db9b8
399
+ - test/dummy/tmp/cache/assets/D9C/070/sprockets%2F9be5d5a71da06ce64d0ed17b3937e15d
400
+ - test/dummy/tmp/cache/assets/D9E/5B0/sprockets%2Fd3f2f56488b7ac4890a2ad0bfef7c322
401
+ - test/dummy/tmp/cache/assets/DA4/020/sprockets%2F0fc75dd594e2c890f93a6dcd7332aaa8
402
+ - test/dummy/tmp/cache/assets/DA4/6B0/sprockets%2F17a2e22cd7356ee86da5d99f0a08bbf7
403
+ - test/dummy/tmp/cache/assets/DA5/470/sprockets%2Fa49ebde3ec35e12d52892e188a5cfd90
404
+ - test/dummy/tmp/cache/assets/DA6/D90/sprockets%2Fe3d875d9f2fb7341ae0e31f64c90e6bf
405
+ - test/dummy/tmp/cache/assets/DA7/CA0/sprockets%2F0a03bffc91afd8872e8986daf8a2309b
406
+ - test/dummy/tmp/cache/assets/DAD/FC0/sprockets%2F9b6809cd65f83a6bfaee80543f9e0ab7
407
+ - test/dummy/tmp/cache/assets/DC4/410/sprockets%2F7c23fbd015fe022d7eed035b4ff3a59c
408
+ - test/dummy/tmp/cache/assets/DCB/CA0/sprockets%2F940121ecc7ae38abf79cc78efadf2212
409
+ - test/dummy/tmp/cache/assets/DCC/C10/sprockets%2F7cb37eb6b6ca3028ffd5c5420d8d7fc1
410
+ - test/dummy/tmp/cache/assets/DCD/4E0/sprockets%2Fcff1de305ed821d80d98f4cafa27414d
411
+ - test/dummy/tmp/cache/assets/development/sprockets/006eb7cc017cf18c3ea32cab97f0cc3c
412
+ - test/dummy/tmp/cache/assets/development/sprockets/00afdaa74ea16690227f771ae0879e1c
413
+ - test/dummy/tmp/cache/assets/development/sprockets/0125613fec11977628d50d4198ef25f3
414
+ - test/dummy/tmp/cache/assets/development/sprockets/04d6293b6d7c30b20475e886dc634936
415
+ - test/dummy/tmp/cache/assets/development/sprockets/0c6b5095a86cd9aa4d15f4258a08f315
416
+ - test/dummy/tmp/cache/assets/development/sprockets/17a2e22cd7356ee86da5d99f0a08bbf7
417
+ - test/dummy/tmp/cache/assets/development/sprockets/192691b9e0bedebfde12633bb3629d0b
418
+ - test/dummy/tmp/cache/assets/development/sprockets/1e91e9837edc18aeeaf8df3c82f2af0e
419
+ - test/dummy/tmp/cache/assets/development/sprockets/1f0b25ca08195d3582e4fe04396e9270
420
+ - test/dummy/tmp/cache/assets/development/sprockets/23659e6e2161bb90c6f382ecbef73906
421
+ - test/dummy/tmp/cache/assets/development/sprockets/23b9bf2d5f9b45144a2803844eaa826e
422
+ - test/dummy/tmp/cache/assets/development/sprockets/243cc575289b3170af701574d19d6353
423
+ - test/dummy/tmp/cache/assets/development/sprockets/24abc0717cf109a24278323c0d6756a0
424
+ - test/dummy/tmp/cache/assets/development/sprockets/2b6cc5f28a12c36cd4095832a5107969
425
+ - test/dummy/tmp/cache/assets/development/sprockets/326592f095651b767387e7c1d2b01dfe
426
+ - test/dummy/tmp/cache/assets/development/sprockets/3bb822a002a8951f71e53f450090799b
427
+ - test/dummy/tmp/cache/assets/development/sprockets/3f91dad02acd15d7437b62ddca53c58b
428
+ - test/dummy/tmp/cache/assets/development/sprockets/486b3eff5dce57385a599ef92be18c65
429
+ - test/dummy/tmp/cache/assets/development/sprockets/48cd49adc4f96c8324c46c45641b6865
430
+ - test/dummy/tmp/cache/assets/development/sprockets/4b5d99d538ae32ad329cb37e413dbacc
431
+ - test/dummy/tmp/cache/assets/development/sprockets/4e89e9cec1b5e275bfeb078a9abfef44
432
+ - test/dummy/tmp/cache/assets/development/sprockets/510aa1c63fe533f77a197367b79f2919
433
+ - test/dummy/tmp/cache/assets/development/sprockets/5cf60638cb580f41112a5a83eb3b72ef
434
+ - test/dummy/tmp/cache/assets/development/sprockets/5dfbbe7f012f6cb7c29b1298cd9ff406
435
+ - test/dummy/tmp/cache/assets/development/sprockets/640ab72cec151bc94248b091f6b763bb
436
+ - test/dummy/tmp/cache/assets/development/sprockets/6760a9b2947edeec5433ca0ff9d7a295
437
+ - test/dummy/tmp/cache/assets/development/sprockets/6b74e64b0422b8c574caba3a1746acd2
438
+ - test/dummy/tmp/cache/assets/development/sprockets/6c2f18f7338d56feecce32780357521c
439
+ - test/dummy/tmp/cache/assets/development/sprockets/6f292799ddb92a69f64c5a60c921a2d6
440
+ - test/dummy/tmp/cache/assets/development/sprockets/731ed4a2128ad4c7240bb520611c8404
441
+ - test/dummy/tmp/cache/assets/development/sprockets/73d738bf9b779ad016ed62131d85cc16
442
+ - test/dummy/tmp/cache/assets/development/sprockets/7477fb841e65b8c9c48c40c13935a851
443
+ - test/dummy/tmp/cache/assets/development/sprockets/77412054774bd02630c93c1e8ac6b26a
444
+ - test/dummy/tmp/cache/assets/development/sprockets/7751914469530dae0646d92467e9d72e
445
+ - test/dummy/tmp/cache/assets/development/sprockets/794a40bf52fa0deda8b4e5efa8ac523a
446
+ - test/dummy/tmp/cache/assets/development/sprockets/7af0bd97720d268b9835405c8bae2d06
447
+ - test/dummy/tmp/cache/assets/development/sprockets/82ecc84179ce77914906a81d29b483cf
448
+ - test/dummy/tmp/cache/assets/development/sprockets/8d62150b658b3a8b6fed7e8951f52392
449
+ - test/dummy/tmp/cache/assets/development/sprockets/8e51b269010978fe78fa369f6dfa1bf6
450
+ - test/dummy/tmp/cache/assets/development/sprockets/8e8d04799794da144a9907a9f82e0cf8
451
+ - test/dummy/tmp/cache/assets/development/sprockets/8ea331810c31cbe1ba34b91a02f769e7
452
+ - test/dummy/tmp/cache/assets/development/sprockets/8fd1601c6d442f22a88d0e43bb87117f
453
+ - test/dummy/tmp/cache/assets/development/sprockets/953bc37b1ee0915247dba29773960202
454
+ - test/dummy/tmp/cache/assets/development/sprockets/978f6f32b21b72d3e89b0c0f6f3a4a83
455
+ - test/dummy/tmp/cache/assets/development/sprockets/994386d11af17e88b6d107b83f41f8b5
456
+ - test/dummy/tmp/cache/assets/development/sprockets/9b077a68a557a208cf34297edadebdd2
457
+ - test/dummy/tmp/cache/assets/development/sprockets/9b54afa4ef026f4c288feeec49f2f526
458
+ - test/dummy/tmp/cache/assets/development/sprockets/9b6809cd65f83a6bfaee80543f9e0ab7
459
+ - test/dummy/tmp/cache/assets/development/sprockets/9be5d5a71da06ce64d0ed17b3937e15d
460
+ - test/dummy/tmp/cache/assets/development/sprockets/a29d0dc527ff5ce1252ccf6370514620
461
+ - test/dummy/tmp/cache/assets/development/sprockets/a49ebde3ec35e12d52892e188a5cfd90
462
+ - test/dummy/tmp/cache/assets/development/sprockets/a6108a4fca3b4012f99dcf46e24f5f60
463
+ - test/dummy/tmp/cache/assets/development/sprockets/aad6778bf60f6f1919628606c92cfd6f
464
+ - test/dummy/tmp/cache/assets/development/sprockets/ab142f83166b2fc048379c9dfddd355a
465
+ - test/dummy/tmp/cache/assets/development/sprockets/ae3344670b608424cdc864eca5496fb9
466
+ - test/dummy/tmp/cache/assets/development/sprockets/b01583a39abd5ce0a3d2b2967c6f75bd
467
+ - test/dummy/tmp/cache/assets/development/sprockets/b2780e7c581a2f0cb1d61346c6d1c1cd
468
+ - test/dummy/tmp/cache/assets/development/sprockets/b3f0354298e8a43af381a6e42a03f0bc
469
+ - test/dummy/tmp/cache/assets/development/sprockets/b52b477f01cb65c5e1c6a91f6f0be20c
470
+ - test/dummy/tmp/cache/assets/development/sprockets/b6fbc3e4c5191de2cc58174a3eeb7cfc
471
+ - test/dummy/tmp/cache/assets/development/sprockets/bb39143b57041f96c48b71e92f7e09f2
472
+ - test/dummy/tmp/cache/assets/development/sprockets/be0b9e741941205338510e296868aab2
473
+ - test/dummy/tmp/cache/assets/development/sprockets/c9e69990b1552b575b271aaabbfc4eb5
474
+ - test/dummy/tmp/cache/assets/development/sprockets/c9eeea792acbd377e29de43d6b491291
475
+ - test/dummy/tmp/cache/assets/development/sprockets/cb67795d1180b371b5b749662b9adefb
476
+ - test/dummy/tmp/cache/assets/development/sprockets/cfdf466647e83eb93e0d6630e4b51a25
477
+ - test/dummy/tmp/cache/assets/development/sprockets/cff1de305ed821d80d98f4cafa27414d
478
+ - test/dummy/tmp/cache/assets/development/sprockets/d5891eb52eb6329a928461796e9ddfe5
479
+ - test/dummy/tmp/cache/assets/development/sprockets/d7491740e7757fe2ec57fd6d25461e5c
480
+ - test/dummy/tmp/cache/assets/development/sprockets/d80f54242a6e7f4399481b7357d439a4
481
+ - test/dummy/tmp/cache/assets/development/sprockets/df16db3bfcc56fafc73b853b7999be1f
482
+ - test/dummy/tmp/cache/assets/development/sprockets/dfa6edddd9357edcafaf06c20d21e561
483
+ - test/dummy/tmp/cache/assets/development/sprockets/e3d875d9f2fb7341ae0e31f64c90e6bf
484
+ - test/dummy/tmp/cache/assets/development/sprockets/e7bd439b274a2155050b47e5a64ea72d
485
+ - test/dummy/tmp/cache/assets/development/sprockets/ee3d10401f2a2d4a84f4fe56181fe1c1
486
+ - test/dummy/tmp/cache/assets/development/sprockets/f14a2366122e6017b965b32290b8abb0
487
+ - test/dummy/tmp/cache/assets/development/sprockets/f9a412f49281cc7e6512f0787f7ba05f
488
+ - test/dummy/tmp/cache/assets/development/sprockets/febbeb2ea0bcd485bf5b9bd6190b9f44
489
+ - test/dummy/tmp/cache/assets/E07/1E0/sprockets%2Fd79ac6cbbaf490e5a3f09ab8288d3c9e
490
+ - test/dummy/tmp/cache/assets/E39/680/sprockets%2F1e91e9837edc18aeeaf8df3c82f2af0e
491
+ - test/dummy/tmp/cache/assets/E56/670/sprockets%2Fbd0e4d12cea996e0d2eebaa879a17eca
492
+ - test/dummy/tmp/cache/assets/E57/150/sprockets%2Fdfa6edddd9357edcafaf06c20d21e561
493
+ - test/dummy/tmp/cache/assets/E5B/2B0/sprockets%2Ffebbeb2ea0bcd485bf5b9bd6190b9f44
494
+ - test/dummy/tmp/cache/assets/production/sprockets/00afdaa74ea16690227f771ae0879e1c
495
+ - test/dummy/tmp/cache/assets/production/sprockets/13fe41fee1fe35b49d145bcc06610705
496
+ - test/dummy/tmp/cache/assets/production/sprockets/2f5173deea6c795b8fdde723bb4b63af
497
+ - test/dummy/tmp/cache/assets/production/sprockets/357970feca3ac29060c1e3861e2c0953
498
+ - test/dummy/tmp/cache/assets/production/sprockets/73d738bf9b779ad016ed62131d85cc16
499
+ - test/dummy/tmp/cache/assets/production/sprockets/cffd775d018f68ce5dba1ee0d951a994
500
+ - test/dummy/tmp/cache/assets/production/sprockets/d771ace226fc8215a3572e0aa35bb0d6
501
+ - test/dummy/tmp/cache/assets/production/sprockets/dfa6edddd9357edcafaf06c20d21e561
502
+ - test/dummy/tmp/cache/assets/production/sprockets/f7cbd26ba1d28d48de824f0e94586655
503
+ - test/dummy/tmp/cache/assets/production/sprockets/febbeb2ea0bcd485bf5b9bd6190b9f44
504
+ - test/integration/navigation_test.rb
505
+ - test/redis_analytics_test.rb
506
+ - test/test_helper.rb
332
507
  - TODO.md
333
- - wsd.png
508
+ - vendor/assets/javascripts/redis_analytics/bootstrap.min.js
509
+ - vendor/assets/javascripts/redis_analytics/engine.js
510
+ - vendor/assets/javascripts/redis_analytics/jquery-jvectormap-1.2.2.min.js
511
+ - vendor/assets/javascripts/redis_analytics/jquery-jvectormap-world-mill-en.js
512
+ - vendor/assets/javascripts/redis_analytics/morris.min.js
513
+ - vendor/assets/javascripts/redis_analytics/raphael-min.js
514
+ - vendor/assets/stylesheets/redis_analytics/bootstrap-responsive.min.css
515
+ - vendor/assets/stylesheets/redis_analytics/bootstrap.min.css
516
+ - vendor/assets/stylesheets/redis_analytics/engine.css
517
+ - vendor/assets/stylesheets/redis_analytics/jquery-jvectormap-1.2.2.css
518
+ - vendor/assets/stylesheets/redis_analytics/morris.css
334
519
  homepage: https://github.com/saturnine/redis_analytics
335
- licenses: []
520
+ licenses:
521
+ - MIT
522
+ metadata: {}
336
523
  post_install_message:
337
524
  rdoc_options: []
338
525
  require_paths:
339
526
  - lib
340
527
  required_ruby_version: !ruby/object:Gem::Requirement
341
- none: false
342
528
  requirements:
343
- - - ! '>='
529
+ - - '>='
344
530
  - !ruby/object:Gem::Version
345
531
  version: 1.9.2
346
532
  required_rubygems_version: !ruby/object:Gem::Requirement
347
- none: false
348
533
  requirements:
349
- - - ! '>='
534
+ - - '>='
350
535
  - !ruby/object:Gem::Version
351
536
  version: '0'
352
537
  requirements: []
353
538
  rubyforge_project: redis_analytics
354
- rubygems_version: 1.8.23
539
+ rubygems_version: 2.0.3
355
540
  signing_key:
356
- specification_version: 3
541
+ specification_version: 4
357
542
  summary: Fast and efficient web analytics for Rack apps
358
543
  test_files: []