thorero 0.9.4.4 → 0.9.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (298) hide show
  1. data/LICENSE +1 -1
  2. data/README +21 -0
  3. data/Rakefile +275 -108
  4. data/TODO +0 -0
  5. data/bin/merb +12 -0
  6. data/bin/merb-specs +5 -0
  7. data/docs/bootloading.dox +58 -0
  8. data/docs/documentation_standards +40 -0
  9. data/docs/merb-core-call-stack-diagram.mmap +0 -0
  10. data/docs/merb-core-call-stack-diagram.pdf +0 -0
  11. data/docs/merb-core-call-stack-diagram.png +0 -0
  12. data/docs/new_render_api +51 -0
  13. data/lib/merb-core.rb +603 -0
  14. data/lib/merb-core/autoload.rb +32 -0
  15. data/lib/merb-core/bootloader.rb +708 -0
  16. data/lib/merb-core/config.rb +303 -0
  17. data/lib/merb-core/constants.rb +43 -0
  18. data/lib/merb-core/controller/abstract_controller.rb +578 -0
  19. data/lib/merb-core/controller/exceptions.rb +302 -0
  20. data/lib/merb-core/controller/merb_controller.rb +256 -0
  21. data/lib/merb-core/controller/mime.rb +106 -0
  22. data/lib/merb-core/controller/mixins/authentication.rb +87 -0
  23. data/lib/merb-core/controller/mixins/controller.rb +290 -0
  24. data/lib/merb-core/controller/mixins/render.rb +481 -0
  25. data/lib/merb-core/controller/mixins/responder.rb +472 -0
  26. data/lib/merb-core/controller/template.rb +254 -0
  27. data/lib/merb-core/core_ext.rb +8 -0
  28. data/lib/merb-core/core_ext/kernel.rb +319 -0
  29. data/lib/merb-core/dispatch/cookies.rb +91 -0
  30. data/lib/merb-core/dispatch/dispatcher.rb +278 -0
  31. data/lib/merb-core/dispatch/exceptions.html.erb +303 -0
  32. data/lib/merb-core/dispatch/request.rb +603 -0
  33. data/lib/merb-core/dispatch/router.rb +179 -0
  34. data/lib/merb-core/dispatch/router/behavior.rb +867 -0
  35. data/lib/merb-core/dispatch/router/cached_proc.rb +52 -0
  36. data/lib/merb-core/dispatch/router/route.rb +321 -0
  37. data/lib/merb-core/dispatch/session.rb +78 -0
  38. data/lib/merb-core/dispatch/session/cookie.rb +168 -0
  39. data/lib/merb-core/dispatch/session/memcached.rb +184 -0
  40. data/lib/merb-core/dispatch/session/memory.rb +241 -0
  41. data/lib/merb-core/dispatch/worker.rb +28 -0
  42. data/lib/merb-core/gem_ext/erubis.rb +77 -0
  43. data/lib/{extlib → merb-core}/logger.rb +2 -2
  44. data/lib/merb-core/plugins.rb +59 -0
  45. data/lib/merb-core/rack.rb +21 -0
  46. data/lib/merb-core/rack/adapter.rb +44 -0
  47. data/lib/merb-core/rack/adapter/ebb.rb +25 -0
  48. data/lib/merb-core/rack/adapter/evented_mongrel.rb +26 -0
  49. data/lib/merb-core/rack/adapter/fcgi.rb +17 -0
  50. data/lib/merb-core/rack/adapter/irb.rb +118 -0
  51. data/lib/merb-core/rack/adapter/mongrel.rb +26 -0
  52. data/lib/merb-core/rack/adapter/runner.rb +28 -0
  53. data/lib/merb-core/rack/adapter/swiftiplied_mongrel.rb +26 -0
  54. data/lib/merb-core/rack/adapter/thin.rb +39 -0
  55. data/lib/merb-core/rack/adapter/thin_turbo.rb +24 -0
  56. data/lib/merb-core/rack/adapter/webrick.rb +36 -0
  57. data/lib/merb-core/rack/application.rb +18 -0
  58. data/lib/merb-core/rack/handler/mongrel.rb +97 -0
  59. data/lib/merb-core/rack/middleware.rb +26 -0
  60. data/lib/merb-core/rack/middleware/path_prefix.rb +31 -0
  61. data/lib/merb-core/rack/middleware/profiler.rb +19 -0
  62. data/lib/merb-core/rack/middleware/static.rb +45 -0
  63. data/lib/merb-core/server.rb +252 -0
  64. data/lib/merb-core/tasks/audit.rake +68 -0
  65. data/lib/merb-core/tasks/merb.rb +1 -0
  66. data/lib/merb-core/tasks/merb_rake_helper.rb +12 -0
  67. data/lib/merb-core/test.rb +11 -0
  68. data/lib/merb-core/test/helpers.rb +9 -0
  69. data/lib/merb-core/test/helpers/controller_helper.rb +8 -0
  70. data/lib/merb-core/test/helpers/multipart_request_helper.rb +175 -0
  71. data/lib/merb-core/test/helpers/request_helper.rb +344 -0
  72. data/lib/merb-core/test/helpers/route_helper.rb +33 -0
  73. data/lib/merb-core/test/helpers/view_helper.rb +121 -0
  74. data/lib/merb-core/test/matchers.rb +9 -0
  75. data/lib/merb-core/test/matchers/controller_matchers.rb +319 -0
  76. data/lib/merb-core/test/matchers/route_matchers.rb +136 -0
  77. data/lib/merb-core/test/matchers/view_matchers.rb +335 -0
  78. data/lib/merb-core/test/run_specs.rb +47 -0
  79. data/lib/merb-core/test/tasks/spectasks.rb +68 -0
  80. data/lib/merb-core/test/test_ext/hpricot.rb +32 -0
  81. data/lib/merb-core/test/test_ext/object.rb +14 -0
  82. data/lib/merb-core/test/test_ext/string.rb +14 -0
  83. data/lib/merb-core/vendor/facets.rb +2 -0
  84. data/lib/merb-core/vendor/facets/dictionary.rb +433 -0
  85. data/lib/merb-core/vendor/facets/inflect.rb +345 -0
  86. data/lib/merb-core/version.rb +11 -0
  87. data/spec/private/config/adapter_spec.rb +32 -0
  88. data/spec/private/config/config_spec.rb +202 -0
  89. data/spec/private/config/environment_spec.rb +13 -0
  90. data/spec/private/config/spec_helper.rb +1 -0
  91. data/spec/private/core_ext/kernel_spec.rb +169 -0
  92. data/spec/private/dispatch/bootloader_spec.rb +24 -0
  93. data/spec/private/dispatch/cookies_spec.rb +107 -0
  94. data/spec/private/dispatch/dispatch_spec.rb +35 -0
  95. data/spec/private/dispatch/fixture/app/controllers/application.rb +4 -0
  96. data/spec/private/dispatch/fixture/app/controllers/exceptions.rb +27 -0
  97. data/spec/private/dispatch/fixture/app/controllers/foo.rb +21 -0
  98. data/spec/private/dispatch/fixture/app/helpers/global_helpers.rb +8 -0
  99. data/spec/private/dispatch/fixture/app/views/exeptions/client_error.html.erb +37 -0
  100. data/spec/private/dispatch/fixture/app/views/exeptions/internal_server_error.html.erb +216 -0
  101. data/spec/private/dispatch/fixture/app/views/exeptions/not_acceptable.html.erb +38 -0
  102. data/spec/private/dispatch/fixture/app/views/exeptions/not_found.html.erb +40 -0
  103. data/spec/private/dispatch/fixture/app/views/foo/bar.html.erb +0 -0
  104. data/spec/private/dispatch/fixture/app/views/layout/application.html.erb +11 -0
  105. data/spec/private/dispatch/fixture/config/black_hole.rb +12 -0
  106. data/spec/private/dispatch/fixture/config/environments/development.rb +6 -0
  107. data/spec/private/dispatch/fixture/config/environments/production.rb +5 -0
  108. data/spec/private/dispatch/fixture/config/environments/test.rb +6 -0
  109. data/spec/private/dispatch/fixture/config/init.rb +45 -0
  110. data/spec/private/dispatch/fixture/config/rack.rb +11 -0
  111. data/spec/private/dispatch/fixture/config/router.rb +35 -0
  112. data/spec/private/dispatch/fixture/log/merb_test.log +1874 -0
  113. data/spec/private/dispatch/fixture/public/images/merb.jpg +0 -0
  114. data/spec/private/dispatch/fixture/public/merb.fcgi +4 -0
  115. data/spec/private/dispatch/fixture/public/stylesheets/master.css +119 -0
  116. data/spec/private/dispatch/route_params_spec.rb +24 -0
  117. data/spec/private/dispatch/session_mixin_spec.rb +47 -0
  118. data/spec/private/dispatch/spec_helper.rb +1 -0
  119. data/spec/private/plugins/plugin_spec.rb +166 -0
  120. data/spec/private/rack/application_spec.rb +49 -0
  121. data/spec/private/router/behavior_spec.rb +60 -0
  122. data/spec/private/router/fixture/log/merb_test.log +139 -0
  123. data/spec/private/router/route_spec.rb +414 -0
  124. data/spec/private/router/router_spec.rb +175 -0
  125. data/spec/private/vendor/facets/plural_spec.rb +564 -0
  126. data/spec/private/vendor/facets/singular_spec.rb +489 -0
  127. data/spec/public/DEFINITIONS +11 -0
  128. data/spec/public/abstract_controller/controllers/alt_views/layout/application.erb +1 -0
  129. data/spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract/render_string_controller_layout.erb +1 -0
  130. data/spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract/render_template_controller_layout.erb +1 -0
  131. data/spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots/index.erb +1 -0
  132. data/spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots/show.erb +1 -0
  133. data/spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/render_template_multiple_roots/index.erb +1 -0
  134. data/spec/public/abstract_controller/controllers/alt_views/partial/basic_partial_with_multiple_roots/_partial.erb +1 -0
  135. data/spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_and_custom_location/index.erb +1 -0
  136. data/spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_inherited/index.erb +1 -0
  137. data/spec/public/abstract_controller/controllers/cousins.rb +41 -0
  138. data/spec/public/abstract_controller/controllers/display.rb +54 -0
  139. data/spec/public/abstract_controller/controllers/filters.rb +193 -0
  140. data/spec/public/abstract_controller/controllers/helpers.rb +41 -0
  141. data/spec/public/abstract_controller/controllers/partial.rb +121 -0
  142. data/spec/public/abstract_controller/controllers/render.rb +113 -0
  143. data/spec/public/abstract_controller/controllers/views/helpers/capture/index.erb +1 -0
  144. data/spec/public/abstract_controller/controllers/views/helpers/capture_eq/index.erb +1 -0
  145. data/spec/public/abstract_controller/controllers/views/helpers/capture_with_args/index.erb +1 -0
  146. data/spec/public/abstract_controller/controllers/views/helpers/concat/index.erb +1 -0
  147. data/spec/public/abstract_controller/controllers/views/layout/alt.erb +1 -0
  148. data/spec/public/abstract_controller/controllers/views/layout/custom.erb +1 -0
  149. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object/index.erb +1 -0
  150. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object_with_action/new.erb +1 -0
  151. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template/index.erb +1 -0
  152. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_app_layout/index.erb +0 -0
  153. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_custom_layout/index.erb +1 -0
  154. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots/index.erb +1 -0
  155. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots/show.erb +1 -0
  156. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_two_throw_contents/index.erb +1 -0
  157. data/spec/public/abstract_controller/controllers/views/partial/another_directory/_partial.erb +1 -0
  158. data/spec/public/abstract_controller/controllers/views/partial/basic_partial/_partial.erb +1 -0
  159. data/spec/public/abstract_controller/controllers/views/partial/basic_partial/index.erb +1 -0
  160. data/spec/public/abstract_controller/controllers/views/partial/basic_partial_with_multiple_roots/index.erb +1 -0
  161. data/spec/public/abstract_controller/controllers/views/partial/nested_partial/_first.erb +1 -0
  162. data/spec/public/abstract_controller/controllers/views/partial/nested_partial/_second.erb +1 -0
  163. data/spec/public/abstract_controller/controllers/views/partial/nested_partial/index.erb +1 -0
  164. data/spec/public/abstract_controller/controllers/views/partial/partial_in_another_directory/index.erb +1 -0
  165. data/spec/public/abstract_controller/controllers/views/partial/partial_with_both/_collection.erb +1 -0
  166. data/spec/public/abstract_controller/controllers/views/partial/partial_with_both/index.erb +1 -0
  167. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections/_collection.erb +1 -0
  168. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections/index.erb +1 -0
  169. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as/_collection.erb +1 -0
  170. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as/index.erb +1 -0
  171. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter/_collection.erb +1 -0
  172. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter/index.erb +1 -0
  173. data/spec/public/abstract_controller/controllers/views/partial/partial_with_locals/_variables.erb +1 -0
  174. data/spec/public/abstract_controller/controllers/views/partial/partial_with_locals/index.erb +1 -0
  175. data/spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals/_both.erb +1 -0
  176. data/spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals/index.erb +1 -0
  177. data/spec/public/abstract_controller/controllers/views/partial/with_absolute_partial/_partial.erb +1 -0
  178. data/spec/public/abstract_controller/controllers/views/partial/with_absolute_partial/index.erb +1 -0
  179. data/spec/public/abstract_controller/controllers/views/partial/with_as_partial/_with_partial.erb +1 -0
  180. data/spec/public/abstract_controller/controllers/views/partial/with_as_partial/index.erb +1 -0
  181. data/spec/public/abstract_controller/controllers/views/partial/with_nil_partial/_with_partial.erb +1 -0
  182. data/spec/public/abstract_controller/controllers/views/partial/with_nil_partial/index.erb +1 -0
  183. data/spec/public/abstract_controller/controllers/views/partial/with_partial/_with_partial.erb +1 -0
  184. data/spec/public/abstract_controller/controllers/views/partial/with_partial/index.erb +1 -0
  185. data/spec/public/abstract_controller/controllers/views/test_display/foo.html.erb +1 -0
  186. data/spec/public/abstract_controller/controllers/views/test_render/foo.html.erb +0 -0
  187. data/spec/public/abstract_controller/controllers/views/wonderful/index.erb +1 -0
  188. data/spec/public/abstract_controller/display_spec.rb +33 -0
  189. data/spec/public/abstract_controller/filter_spec.rb +106 -0
  190. data/spec/public/abstract_controller/helper_spec.rb +21 -0
  191. data/spec/public/abstract_controller/partial_spec.rb +61 -0
  192. data/spec/public/abstract_controller/render_spec.rb +90 -0
  193. data/spec/public/abstract_controller/spec_helper.rb +31 -0
  194. data/spec/public/boot_loader/boot_loader_spec.rb +33 -0
  195. data/spec/public/boot_loader/spec_helper.rb +1 -0
  196. data/spec/public/controller/authentication_spec.rb +103 -0
  197. data/spec/public/controller/base_spec.rb +36 -0
  198. data/spec/public/controller/controllers/authentication.rb +45 -0
  199. data/spec/public/controller/controllers/base.rb +36 -0
  200. data/spec/public/controller/controllers/display.rb +118 -0
  201. data/spec/public/controller/controllers/redirect.rb +30 -0
  202. data/spec/public/controller/controllers/responder.rb +93 -0
  203. data/spec/public/controller/controllers/url.rb +7 -0
  204. data/spec/public/controller/controllers/views/layout/custom.html.erb +1 -0
  205. data/spec/public/controller/controllers/views/layout/custom_arg.html.erb +1 -0
  206. data/spec/public/controller/controllers/views/layout/custom_arg.json.erb +1 -0
  207. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides/index.html.erb +1 -0
  208. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides/index.xml.erb +1 -0
  209. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.html.erb +1 -0
  210. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.xml.erb +1 -0
  211. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template/index.html.erb +1 -0
  212. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template/no_layout.html.erb +1 -0
  213. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template_argument/index.html.erb +1 -0
  214. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/html_default/index.html.erb +1 -0
  215. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/layout/custom.html.erb +1 -0
  216. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides/index.html.erb +1 -0
  217. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides/index.xml.erb +1 -0
  218. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides/index.html.erb +1 -0
  219. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides/index.js.erb +1 -0
  220. data/spec/public/controller/display_spec.rb +84 -0
  221. data/spec/public/controller/redirect_spec.rb +27 -0
  222. data/spec/public/controller/responder_spec.rb +163 -0
  223. data/spec/public/controller/spec_helper.rb +11 -0
  224. data/spec/public/controller/url_spec.rb +180 -0
  225. data/spec/public/core/merb_core_spec.rb +45 -0
  226. data/spec/public/core_ext/class_spec.rb +91 -0
  227. data/spec/public/core_ext/fixtures/core_ext_dependency.rb +2 -0
  228. data/spec/public/core_ext/kernel_spec.rb +9 -0
  229. data/spec/public/core_ext/spec_helper.rb +1 -0
  230. data/spec/public/directory_structure/directory/app/controllers/application.rb +3 -0
  231. data/spec/public/directory_structure/directory/app/controllers/base.rb +13 -0
  232. data/spec/public/directory_structure/directory/app/controllers/custom.rb +19 -0
  233. data/spec/public/directory_structure/directory/app/views/base/template.html.erb +1 -0
  234. data/spec/public/directory_structure/directory/app/views/wonderful/template.erb +1 -0
  235. data/spec/public/directory_structure/directory/config/router.rb +3 -0
  236. data/spec/public/directory_structure/directory/log/merb_test.log +562 -0
  237. data/spec/public/directory_structure/directory_spec.rb +44 -0
  238. data/spec/public/logger/logger_spec.rb +181 -0
  239. data/spec/public/logger/spec_helper.rb +1 -0
  240. data/spec/public/reloading/directory/app/controllers/application.rb +3 -0
  241. data/spec/public/reloading/directory/app/controllers/reload.rb +6 -0
  242. data/spec/public/reloading/directory/config/init.rb +2 -0
  243. data/spec/public/reloading/directory/log/merb_test.log +138 -0
  244. data/spec/public/reloading/reload_spec.rb +103 -0
  245. data/spec/public/request/multipart_spec.rb +41 -0
  246. data/spec/public/request/request_spec.rb +228 -0
  247. data/spec/public/router/default_spec.rb +21 -0
  248. data/spec/public/router/deferred_spec.rb +22 -0
  249. data/spec/public/router/fixation_spec.rb +27 -0
  250. data/spec/public/router/fixture/log/merb_test.log +1556 -0
  251. data/spec/public/router/namespace_spec.rb +113 -0
  252. data/spec/public/router/nested_matches_spec.rb +97 -0
  253. data/spec/public/router/nested_resources_spec.rb +41 -0
  254. data/spec/public/router/resource_spec.rb +37 -0
  255. data/spec/public/router/resources_spec.rb +82 -0
  256. data/spec/public/router/spec_helper.rb +90 -0
  257. data/spec/public/router/special_spec.rb +61 -0
  258. data/spec/public/router/string_spec.rb +61 -0
  259. data/spec/public/template/template_spec.rb +104 -0
  260. data/spec/public/template/templates/error.html.erb +2 -0
  261. data/spec/public/template/templates/template.html.erb +1 -0
  262. data/spec/public/template/templates/template.html.myt +1 -0
  263. data/spec/public/test/controller_matchers_spec.rb +402 -0
  264. data/spec/public/test/controllers/controller_assertion_mock.rb +7 -0
  265. data/spec/public/test/controllers/dispatch_controller.rb +11 -0
  266. data/spec/public/test/controllers/spec_helper_controller.rb +38 -0
  267. data/spec/public/test/multipart_request_helper_spec.rb +159 -0
  268. data/spec/public/test/multipart_upload_text_file.txt +1 -0
  269. data/spec/public/test/request_helper_spec.rb +221 -0
  270. data/spec/public/test/route_helper_spec.rb +71 -0
  271. data/spec/public/test/route_matchers_spec.rb +162 -0
  272. data/spec/public/test/view_helper_spec.rb +96 -0
  273. data/spec/public/test/view_matchers_spec.rb +183 -0
  274. data/spec/spec_helper.rb +68 -0
  275. metadata +493 -41
  276. data/README.txt +0 -3
  277. data/lib/extlib.rb +0 -32
  278. data/lib/extlib/assertions.rb +0 -8
  279. data/lib/extlib/blank.rb +0 -42
  280. data/lib/extlib/class.rb +0 -175
  281. data/lib/extlib/hash.rb +0 -410
  282. data/lib/extlib/hook.rb +0 -366
  283. data/lib/extlib/inflection.rb +0 -141
  284. data/lib/extlib/lazy_array.rb +0 -106
  285. data/lib/extlib/mash.rb +0 -143
  286. data/lib/extlib/module.rb +0 -37
  287. data/lib/extlib/object.rb +0 -165
  288. data/lib/extlib/object_space.rb +0 -13
  289. data/lib/extlib/pathname.rb +0 -5
  290. data/lib/extlib/pooling.rb +0 -233
  291. data/lib/extlib/rubygems.rb +0 -38
  292. data/lib/extlib/simple_set.rb +0 -39
  293. data/lib/extlib/string.rb +0 -132
  294. data/lib/extlib/struct.rb +0 -8
  295. data/lib/extlib/tasks/release.rb +0 -9
  296. data/lib/extlib/time.rb +0 -12
  297. data/lib/extlib/version.rb +0 -3
  298. data/lib/extlib/virtual_file.rb +0 -10
@@ -0,0 +1,41 @@
1
+ require File.join(File.dirname(__FILE__), "..", "..", "spec_helper")
2
+ require "mongrel"
3
+
4
+ describe Merb::Request do
5
+ it "should handle file upload for multipart/form-data posts" do
6
+ file = Struct.new(:read, :filename, :path).
7
+ new("This is a text file with some small content in it.", "sample.txt", "sample.txt")
8
+ m = Merb::Test::MultipartRequestHelper::Post.new :file => file
9
+ body, head = m.to_multipart
10
+ request = fake_request({:request_method => "POST", :content_type => head, :content_length => body.length}, :req => body)
11
+ request.params[:file].should_not be_nil
12
+ request.params[:file][:tempfile].class.should == Tempfile
13
+ request.params[:file][:content_type].should == 'text/plain'
14
+ end
15
+
16
+ it "should accept env['rack.input'] as IO object (instead of StringIO)" do
17
+ file = Struct.new(:read, :filename, :path).
18
+ new("This is a text file with some small content in it.", "sample.txt", "sample.txt")
19
+ m = Merb::Test::MultipartRequestHelper::Post.new :file => file
20
+ body, head = m.to_multipart
21
+
22
+ t = Tempfile.new("io")
23
+ t.write(body)
24
+ t.close
25
+
26
+ fd = IO.sysopen(t.path)
27
+ io = IO.for_fd(fd,"r")
28
+ request = Merb::Test::RequestHelper::FakeRequest.new({:request_method => "POST", :content_type => 'multipart/form-data, boundary=----------0xKhTmLbOuNdArY', :content_length => body.length},io)
29
+
30
+ running {request.params}.should_not raise_error
31
+ request.params[:file].should_not be_nil
32
+ request.params[:file][:tempfile].class.should == Tempfile
33
+ request.params[:file][:content_type].should == 'text/plain'
34
+ end
35
+
36
+ it "should handle GET with a content_type but an empty body (happens in some browsers such as safari after redirect)" do
37
+ request = fake_request({:request_method => "GET", :content_type => 'multipart/form-data, boundary=----------0xKhTmLbOuNdArY', :content_length => 0}, :req => '')
38
+ running {request.params}.should_not raise_error
39
+ end
40
+
41
+ end
@@ -0,0 +1,228 @@
1
+ require File.join(File.dirname(__FILE__), "..", "..", "spec_helper")
2
+ require "mongrel"
3
+
4
+ describe Merb::Request, "#method" do
5
+
6
+ [:get, :head, :put, :delete].each do |method|
7
+ it "should use the HTTP if it was a #{method.to_s.upcase}" do
8
+ fake_request(:request_method => method.to_s).method.should == method
9
+ end
10
+
11
+ it "should use the _method body params for #{method.to_s.upcase} when it came in as a POST" do
12
+ request = fake_request({:request_method => "POST"}, :post_body => "_method=#{method}")
13
+ request.method.should == method
14
+ end
15
+
16
+ it "should use the _method query params for #{method.to_s.upcase} when it came in as a POST" do
17
+ Merb::Request.parse_multipart_params = false
18
+ request = fake_request(:request_method => "POST", :query_string => "_method=#{method}")
19
+ request.method.should == method
20
+ end
21
+
22
+ [:get, :head, :put, :delete].each do |meth|
23
+ it "should return #{method == meth} when calling #{meth}? and the method is :#{method}" do
24
+ request = fake_request({:request_method => method.to_s})
25
+ request.send("#{meth}?").should == (method == meth)
26
+ end
27
+ end
28
+ end
29
+
30
+ it "should not try to parse the request body as JSON on GET" do
31
+ request = fake_request({:request_method => "GET", :content_type => "application/json"}, :req => "")
32
+ lambda { request.params }.should_not raise_error(JSON::ParserError)
33
+ request.params.should == {}
34
+ end
35
+
36
+ it "should return an empty hash when XML is not parsable" do
37
+ request = fake_request({:content_type => "application/xml"}, :req => '')
38
+ lambda { request.params }.should_not raise_error
39
+ request.params.should == {}
40
+ end
41
+
42
+ it "should default to POST if the _method is not defined" do
43
+ request = fake_request({:request_method => "POST"}, :post_body => "_method=zed")
44
+ request.method.should == :post
45
+ end
46
+
47
+ it "should raise an error if an unknown method is used" do
48
+ request = fake_request({:request_method => "foo"})
49
+ running {request.method}.should raise_error
50
+ end
51
+
52
+ end
53
+
54
+ describe Merb::Request, " query and body params" do
55
+
56
+ before(:all) { Merb::BootLoader::Dependencies.enable_json_gem }
57
+
58
+ {"foo=bar&baz=bat" => {"foo" => "bar", "baz" => "bat"},
59
+ "foo[]=bar&foo[]=baz" => {"foo" => ["bar", "baz"]},
60
+ "foo[][bar]=1&foo[][bar]=2" => {"foo" => [{"bar" => "1"},{"bar" => "2"}]},
61
+ "foo[bar][][baz]=1&foo[bar][][baz]=2" => {"foo" => {"bar" => [{"baz" => "1"},{"baz" => "2"}]}},
62
+ "foo[1]=bar&foo[2]=baz" => {"foo" => {"1" => "bar", "2" => "baz"}}}.each do |query, parse|
63
+
64
+ it "should convert #{query.inspect} to #{parse.inspect} in the query string" do
65
+ request = fake_request({:query_string => query})
66
+ request.stub!(:route_params).and_return({})
67
+ request.params.should == parse
68
+ end
69
+
70
+ it "should convert #{query.inspect} to #{parse.inspect} in the post body" do
71
+ request = fake_request({}, :post_body => query)
72
+ request.stub!(:route_params).and_return({})
73
+ request.params.should == parse
74
+ end
75
+
76
+ end
77
+
78
+ it "should support JSON params" do
79
+ request = fake_request({:content_type => "application/json"}, :req => %{{"foo": "bar"}})
80
+ request.stub!(:route_params).and_return({})
81
+ request.params.should == {"foo" => "bar"}
82
+ end
83
+
84
+ it "should populated the inflated_object parameter if JSON params do not inflate to a hash" do
85
+ request = fake_request({:content_type => "application/json"}, :req => %{["foo", "bar"]})
86
+ request.stub!(:route_params).and_return({})
87
+ request.params.should have_key(:inflated_object)
88
+ request.params[:inflated_object].should eql(["foo", "bar"])
89
+ end
90
+
91
+ it "should support XML params" do
92
+ request = fake_request({:content_type => "application/xml"}, :req => %{<foo bar="baz"><baz/></foo>})
93
+ request.stub!(:route_params).and_return({})
94
+ request.params.should == {"foo" => {"baz" => nil, "bar" => "baz"}}
95
+ end
96
+
97
+ end
98
+
99
+ describe Merb::Request, "#remote_ip" do
100
+ it "should be able to get the remote IP of a request with X_FORWARDED_FOR" do
101
+ request = fake_request({:http_x_forwarded_for => "www.example.com"})
102
+ request.remote_ip.should == "www.example.com"
103
+ end
104
+
105
+ it "should be able to get the remote IP when some of the X_FORWARDED_FOR are local" do
106
+ request = fake_request({:http_x_forwarded_for => "192.168.2.1,127.0.0.1,www.example.com"})
107
+ request.remote_ip.should == "www.example.com"
108
+ end
109
+
110
+ it "should be able to get the remote IP when it's in REMOTE_ADDR" do
111
+ request = fake_request({:remote_addr => "www.example.com"})
112
+ request.remote_ip.should == "www.example.com"
113
+ end
114
+ end
115
+
116
+ describe Merb::Request, "#cookies" do
117
+
118
+ it "should take cookies in the HTTP_COOKIE environment variable" do
119
+ request = fake_request({:http_cookie => "merb=canhascookie; version=1"})
120
+ request.cookies.should == {"merb" => "canhascookie", "version" => "1"}
121
+ end
122
+
123
+ it "should handle badly formatted cookies" do
124
+ request = fake_request({:http_cookie => "merb=; ; also=hats"})
125
+ request.cookies.should == {"merb" => "", "also" => "hats", "" => nil}
126
+ end
127
+
128
+ end
129
+
130
+ describe Merb::Request, " misc" do
131
+
132
+ it "should know if a request is an XHR" do
133
+ request = fake_request({:http_x_requested_with => "XMLHttpRequest"})
134
+ request.should be_xhr
135
+ end
136
+
137
+ it "should know if the protocol is http or https (when HTTPS is on)" do
138
+ request = fake_request({:https => "on"})
139
+ request.protocol.should == "https://"
140
+ request.should be_ssl
141
+ end
142
+
143
+ it "should know if the protocol is http or https (when HTTP_X_FORWARDED_PROTO is https)" do
144
+ request = fake_request({:http_x_forwarded_proto => "https"})
145
+ request.protocol.should == "https://"
146
+ request.should be_ssl
147
+ end
148
+
149
+ it "should know if the protocol is http or https (when it's regular HTTP)" do
150
+ request = fake_request({})
151
+ request.protocol.should == "http://"
152
+ end
153
+
154
+ it "should get the content-length" do
155
+ request = fake_request({:content_length => "300"})
156
+ request.content_length.should == 300
157
+ end
158
+
159
+ it "should be able to get the path from the URI (stripping trailing /)" do
160
+ request = fake_request({:request_uri => "foo/bar/baz/?bat"})
161
+ request.path.should == "foo/bar/baz"
162
+ end
163
+
164
+ it "should be able to get the path from the URI (joining multiple //)" do
165
+ request = fake_request({:request_uri => "foo/bar//baz/?bat"})
166
+ request.path.should == "foo/bar/baz"
167
+ end
168
+
169
+ it "should get the remote port" do
170
+ request = fake_request({:server_port => "80"})
171
+ request.port.should == 80
172
+ end
173
+
174
+ it "should get the parts of the remote subdomain" do
175
+ request = fake_request({:http_host => "zoo.boom.foo.com"})
176
+ request.subdomains.should == ["zoo", "boom"]
177
+ end
178
+
179
+ it "should get the parts of the remote subdomain when there's an irregular TLD number" do
180
+ request = fake_request({:http_host => "foo.bar.co.uk"})
181
+ request.subdomains(2).should == ["foo"]
182
+ end
183
+
184
+ it "should get the full domain (not including subdomains and not including the port)" do
185
+ request = fake_request({:http_host => "www.foo.com:80"})
186
+ request.domain.should == "foo.com"
187
+ end
188
+
189
+ it "should get the full domain from an irregular TLD" do
190
+ request = fake_request({:http_host => "www.foo.co.uk:80"})
191
+ request.domain(2).should == "foo.co.uk"
192
+ end
193
+
194
+ it "should get the host (with X_FORWARDED_HOST)" do
195
+ request = fake_request({:http_x_forwarded_host => "www.example.com"})
196
+ request.host.should == "www.example.com"
197
+ end
198
+
199
+ it "should get the host (without X_FORWARDED_HOST)" do
200
+ request = fake_request({:http_host => "www.example.com"})
201
+ request.host.should == "www.example.com"
202
+ end
203
+
204
+ {:http_referer => ["referer", "http://referer.com"],
205
+ :request_uri => ["uri", "http://uri.com/uri"],
206
+ :http_user_agent => ["user_agent", "mozilla"],
207
+ :server_name => ["server_name", "apache"],
208
+ :http_accept_encoding => ["accept_encoding", "application/json"],
209
+ :script_name => ["script_name", "foo"],
210
+ :http_cache_control => ["cache_control", "no-cache"],
211
+ :http_accept_language => ["accept_language", "en"],
212
+ :server_software => ["server_software", "apache"],
213
+ :http_keep_alive => ["keep_alive", "300"],
214
+ :http_accept_charset => ["accept_charset", "UTF-8"],
215
+ :http_version => ["version", "1.1"],
216
+ :gateway_interface => ["gateway", "CGI/1.2"],
217
+ :http_connection => ["connection", "keep-alive"],
218
+ :path_info => ["path_info", "foo/bar/baz"],
219
+ }.each do |env, vars|
220
+
221
+ it "should be able to get the #{env.to_s.upcase}" do
222
+ request = fake_request({env => vars[1]})
223
+ request.send(vars[0]).should == vars[1]
224
+ end
225
+
226
+ end
227
+
228
+ end
@@ -0,0 +1,21 @@
1
+ require File.join(File.dirname(__FILE__), "spec_helper")
2
+
3
+ describe "The default routes" do
4
+
5
+ before :each do
6
+ Merb::Router.prepare {|r| r.default_routes}
7
+ end
8
+
9
+ it "should match /foo to the Foo controller and index action" do
10
+ route_to("/foo").should have_route(:controller => "foo", :action => "index", :id => nil)
11
+ end
12
+
13
+ it "should match /foo/bar to the Foo controller and the bar action" do
14
+ route_to("/foo/bar").should have_route(:controller => "foo", :action => "bar", :id => nil)
15
+ end
16
+
17
+ it "should match /foo/bar/12 to the Foo controller, the bar action, and id of 12" do
18
+ route_to("/foo/bar/12").should have_route(:controller => "foo", :action => "bar", :id => "12")
19
+ end
20
+
21
+ end
@@ -0,0 +1,22 @@
1
+ require File.join(File.dirname(__FILE__), "spec_helper")
2
+
3
+ describe "Deferred routes" do
4
+
5
+ before :each do
6
+ Merb::Router.prepare do |r|
7
+ r.match("/deferred/:zoo").defer_to do |request, params|
8
+ params.merge(:controller => "w00t") if params[:zoo]
9
+ end
10
+ r.default_routes
11
+ end
12
+ end
13
+
14
+ it "should match routes based on the incoming params" do
15
+ route_to("/deferred/baz", :boo => "12").should have_route(:controller => "w00t", :zoo => "baz")
16
+ end
17
+
18
+ it "should fall back to the default route if the deferred condition is not met" do
19
+ route_to("/deferred").should have_route(:controller => "deferred", :action => "index")
20
+ end
21
+
22
+ end
@@ -0,0 +1,27 @@
1
+ require File.join(File.dirname(__FILE__), "spec_helper")
2
+
3
+ describe "A route marked as fixatable" do
4
+ predicate_matchers[:allow_fixation] = :allow_fixation?
5
+
6
+ it "allows fixation" do
7
+ Merb::Router.prepare do |r|
8
+ r.match("/hello/:action/:id").to(:controller => "foo", :action => "fixoid").fixatable
9
+ end
10
+
11
+ matched_route_for("/hello/goodbye/tagging").should allow_fixation
12
+ end
13
+ end
14
+
15
+
16
+
17
+ describe "A route NOT marked as fixatable" do
18
+ predicate_matchers[:allow_fixation] = :allow_fixation?
19
+
20
+ it "DOES NOT allow fixation" do
21
+ Merb::Router.prepare do |r|
22
+ r.match("/hello/:action/:id").to(:controller => "foo", :action => "fixoid")
23
+ end
24
+
25
+ matched_route_for("/hello/goodbye/tagging").should_not allow_fixation
26
+ end
27
+ end
@@ -0,0 +1,1556 @@
1
+ Thu, 15 May 2008 23:38:43 GMT ~ info ~ Logfile created
2
+ ~ Not Using Sessions
3
+ ~ Not Using Sessions
4
+ ~ Not Using Sessions
5
+ ~ Not Using Sessions
6
+ ~ Not Using Sessions
7
+ ~ Not Using Sessions
8
+ ~ Not Using Sessions
9
+ ~ Not Using Sessions
10
+ ~ Not Using Sessions
11
+ ~ Not Using Sessions
12
+ ~ Not Using Sessions
13
+ ~ Not Using Sessions
14
+ ~ Not Using Sessions
15
+ ~ Not Using Sessions
16
+ ~ Not Using Sessions
17
+ ~ Not Using Sessions
18
+ ~ Not Using Sessions
19
+ ~ Not Using Sessions
20
+ ~ Not Using Sessions
21
+ ~ Not Using Sessions
22
+ ~ Not Using Sessions
23
+ ~ Not Using Sessions
24
+ ~ Not Using Sessions
25
+ ~ Not Using Sessions
26
+ ~ Not Using Sessions
27
+ ~ Not Using Sessions
28
+ ~ Not Using Sessions
29
+ ~ Not Using Sessions
30
+ ~ Not Using Sessions
31
+ ~ Not Using Sessions
32
+ ~ Not Using Sessions
33
+ ~ Not Using Sessions
34
+ ~ Not Using Sessions
35
+ ~ Not Using Sessions
36
+ ~ Not Using Sessions
37
+ ~ Not Using Sessions
38
+ ~ Not Using Sessions
39
+ ~ Not Using Sessions
40
+ ~ Not Using Sessions
41
+ ~ Not Using Sessions
42
+ ~ Not Using Sessions
43
+ ~ Not Using Sessions
44
+ ~ Not Using Sessions
45
+ ~ Not Using Sessions
46
+ ~ Not Using Sessions
47
+ ~ Not Using Sessions
48
+ ~ Not Using Sessions
49
+ ~ Not Using Sessions
50
+ ~ Not Using Sessions
51
+ ~ Not Using Sessions
52
+ ~ Not Using Sessions
53
+ ~ Not Using Sessions
54
+ ~ Not Using Sessions
55
+ ~ Not Using Sessions
56
+ ~ Not Using Sessions
57
+ ~ Not Using Sessions
58
+ ~ Not Using Sessions
59
+ ~ Not Using Sessions
60
+ ~ Not Using Sessions
61
+ ~ Not Using Sessions
62
+ ~ Not Using Sessions
63
+ ~ Not Using Sessions
64
+ ~ Not Using Sessions
65
+ ~ Not Using Sessions
66
+ ~ Not Using Sessions
67
+ ~ Not Using Sessions
68
+ ~ Not Using Sessions
69
+ ~ Not Using Sessions
70
+ ~ Not Using Sessions
71
+ ~ Not Using Sessions
72
+ ~ Not Using Sessions
73
+ ~ Not Using Sessions
74
+ ~ Not Using Sessions
75
+ ~ Not Using Sessions
76
+ ~ Not Using Sessions
77
+ ~ Not Using Sessions
78
+ ~ Not Using Sessions
79
+ ~ Not Using Sessions
80
+ ~ Not Using Sessions
81
+ ~ Not Using Sessions
82
+ ~ Not Using Sessions
83
+ ~ Not Using Sessions
84
+ ~ Not Using Sessions
85
+ ~ Not Using Sessions
86
+ ~ Not Using Sessions
87
+ ~ Not Using Sessions
88
+ ~ Not Using Sessions
89
+ ~ Not Using Sessions
90
+ ~ Not Using Sessions
91
+ ~ Not Using Sessions
92
+ ~ Not Using Sessions
93
+ ~ Not Using Sessions
94
+ ~ Not Using Sessions
95
+ ~ Not Using Sessions
96
+ ~ Not Using Sessions
97
+ ~ Not Using Sessions
98
+ ~ Not Using Sessions
99
+ ~ Not Using Sessions
100
+ ~ Not Using Sessions
101
+ ~ Not Using Sessions
102
+ ~ Not Using Sessions
103
+ ~ Not Using Sessions
104
+ ~ Not Using Sessions
105
+ ~ Not Using Sessions
106
+ ~ Not Using Sessions
107
+ ~ Not Using Sessions
108
+ ~ Not Using Sessions
109
+ ~ Not Using Sessions
110
+ ~ Not Using Sessions
111
+ ~ Not Using Sessions
112
+ ~ Not Using Sessions
113
+ ~ Not Using Sessions
114
+ ~ Not Using Sessions
115
+ ~ Not Using Sessions
116
+ ~ Not Using Sessions
117
+ ~ Not Using Sessions
118
+ ~ Not Using Sessions
119
+ ~ Not Using Sessions
120
+ ~ Not Using Sessions
121
+ ~ Not Using Sessions
122
+ ~ Not Using Sessions
123
+ ~ Not Using Sessions
124
+ ~ Not Using Sessions
125
+ ~ Not Using Sessions
126
+ ~ Not Using Sessions
127
+ ~ Not Using Sessions
128
+ ~ Not Using Sessions
129
+ ~ Not Using Sessions
130
+ ~ Not Using Sessions
131
+ ~ Not Using Sessions
132
+ ~ Not Using Sessions
133
+ ~ Not Using Sessions
134
+ ~ Not Using Sessions
135
+ ~ Not Using Sessions
136
+ ~ Not Using Sessions
137
+ ~ Not Using Sessions
138
+ ~ Not Using Sessions
139
+ ~ Not Using Sessions
140
+ ~ Not Using Sessions
141
+ ~ Not Using Sessions
142
+ ~ Not Using Sessions
143
+ ~ Not Using Sessions
144
+ ~ Not Using Sessions
145
+ ~ Not Using Sessions
146
+ ~ Not Using Sessions
147
+ ~ Not Using Sessions
148
+ ~ Not Using Sessions
149
+ ~ Not Using Sessions
150
+ ~ Not Using Sessions
151
+ ~ Not Using Sessions
152
+ ~ Not Using Sessions
153
+ ~ Not Using Sessions
154
+ ~ Not Using Sessions
155
+ ~ Not Using Sessions
156
+ ~ Not Using Sessions
157
+ ~ Not Using Sessions
158
+ ~ Not Using Sessions
159
+ ~ Not Using Sessions
160
+ ~ Not Using Sessions
161
+ ~ Not Using Sessions
162
+ ~ Not Using Sessions
163
+ ~ Not Using Sessions
164
+ ~ Not Using Sessions
165
+ ~ Not Using Sessions
166
+ ~ Not Using Sessions
167
+ ~ Not Using Sessions
168
+ ~ Not Using Sessions
169
+ ~ Not Using Sessions
170
+ ~ Not Using Sessions
171
+ ~ Not Using Sessions
172
+ ~ Not Using Sessions
173
+ ~ Not Using Sessions
174
+ ~ Not Using Sessions
175
+ ~ Not Using Sessions
176
+ ~ Not Using Sessions
177
+ ~ Not Using Sessions
178
+ ~ Not Using Sessions
179
+ ~ Not Using Sessions
180
+ ~ Not Using Sessions
181
+ ~ Not Using Sessions
182
+ ~ Not Using Sessions
183
+ ~ Not Using Sessions
184
+ ~ Not Using Sessions
185
+ ~ Not Using Sessions
186
+ ~ Not Using Sessions
187
+ ~ Not Using Sessions
188
+ ~ Not Using Sessions
189
+ ~ Not Using Sessions
190
+ ~ Not Using Sessions
191
+ ~ Not Using Sessions
192
+ ~ Not Using Sessions
193
+ ~ Not Using Sessions
194
+ ~ Not Using Sessions
195
+ ~ Not Using Sessions
196
+ ~ Not Using Sessions
197
+ ~ Not Using Sessions
198
+ ~ Not Using Sessions
199
+ ~ Not Using Sessions
200
+ ~ Not Using Sessions
201
+ ~ Not Using Sessions
202
+ ~ Not Using Sessions
203
+ ~ Not Using Sessions
204
+ ~ Not Using Sessions
205
+ ~ Not Using Sessions
206
+ ~ Not Using Sessions
207
+ ~ Not Using Sessions
208
+ ~ Not Using Sessions
209
+ ~ Not Using Sessions
210
+ ~ Not Using Sessions
211
+ ~ Not Using Sessions
212
+ ~ Not Using Sessions
213
+ ~ Not Using Sessions
214
+ ~ Not Using Sessions
215
+ ~ Not Using Sessions
216
+ ~ Not Using Sessions
217
+ ~ Not Using Sessions
218
+ ~ Not Using Sessions
219
+ ~ Not Using Sessions
220
+ ~ Not Using Sessions
221
+ ~ Not Using Sessions
222
+ ~ Not Using Sessions
223
+ ~ Not Using Sessions
224
+ ~ Not Using Sessions
225
+ ~ Not Using Sessions
226
+ ~ Not Using Sessions
227
+ ~ Not Using Sessions
228
+ ~ Not Using Sessions
229
+ ~ Not Using Sessions
230
+ ~ Not Using Sessions
231
+ ~ Not Using Sessions
232
+ ~ Not Using Sessions
233
+ ~ Not Using Sessions
234
+ ~ Not Using Sessions
235
+ ~ Not Using Sessions
236
+ ~ Not Using Sessions
237
+ ~ Not Using Sessions
238
+ ~ Not Using Sessions
239
+ ~ Not Using Sessions
240
+ ~ Not Using Sessions
241
+ ~ Not Using Sessions
242
+ ~ Not Using Sessions
243
+ ~ Not Using Sessions
244
+ ~ Not Using Sessions
245
+ ~ Not Using Sessions
246
+ ~ Not Using Sessions
247
+ ~ Not Using Sessions
248
+ ~ Not Using Sessions
249
+ ~ Not Using Sessions
250
+ ~ Not Using Sessions
251
+ ~ Not Using Sessions
252
+ ~ Not Using Sessions
253
+ ~ Not Using Sessions
254
+ ~ Not Using Sessions
255
+ ~ Not Using Sessions
256
+ ~ Not Using Sessions
257
+ ~ Not Using Sessions
258
+ ~ Not Using Sessions
259
+ ~ Not Using Sessions
260
+ ~ Not Using Sessions
261
+ ~ Not Using Sessions
262
+ ~ Not Using Sessions
263
+ ~ Not Using Sessions
264
+ ~ Not Using Sessions
265
+ ~ Not Using Sessions
266
+ ~ Not Using Sessions
267
+ ~ Not Using Sessions
268
+ ~ Not Using Sessions
269
+ ~ Not Using Sessions
270
+ ~ Not Using Sessions
271
+ ~ Not Using Sessions
272
+ ~ Not Using Sessions
273
+ ~ Not Using Sessions
274
+ ~ Not Using Sessions
275
+ ~ Not Using Sessions
276
+ ~ Not Using Sessions
277
+ ~ Not Using Sessions
278
+ ~ Not Using Sessions
279
+ ~ Not Using Sessions
280
+ ~ Not Using Sessions
281
+ ~ Not Using Sessions
282
+ ~ Not Using Sessions
283
+ ~ Not Using Sessions
284
+ ~ Not Using Sessions
285
+ ~ Not Using Sessions
286
+ ~ Not Using Sessions
287
+ ~ Not Using Sessions
288
+ ~ Not Using Sessions
289
+ ~ Not Using Sessions
290
+ ~ Not Using Sessions
291
+ ~ Not Using Sessions
292
+ ~ Not Using Sessions
293
+ ~ Not Using Sessions
294
+ ~ Not Using Sessions
295
+ ~ Not Using Sessions
296
+ ~ Not Using Sessions
297
+ ~ Not Using Sessions
298
+ ~ Not Using Sessions
299
+ ~ Not Using Sessions
300
+ ~ Not Using Sessions
301
+ ~ Not Using Sessions
302
+ ~ Not Using Sessions
303
+ ~ Not Using Sessions
304
+ ~ Not Using Sessions
305
+ ~ Not Using Sessions
306
+ ~ Not Using Sessions
307
+ ~ Not Using Sessions
308
+ ~ Not Using Sessions
309
+ ~ Not Using Sessions
310
+ ~ Not Using Sessions
311
+ ~ Not Using Sessions
312
+ ~ Not Using Sessions
313
+ ~ Not Using Sessions
314
+ ~ Not Using Sessions
315
+ ~ Not Using Sessions
316
+ ~ Not Using Sessions
317
+ ~ Not Using Sessions
318
+ ~ Not Using Sessions
319
+ ~ Not Using Sessions
320
+ ~ Not Using Sessions
321
+ ~ Not Using Sessions
322
+ ~ Not Using Sessions
323
+ ~ Not Using Sessions
324
+ ~ Not Using Sessions
325
+ ~ Not Using Sessions
326
+ ~ Not Using Sessions
327
+ ~ Not Using Sessions
328
+ ~ Not Using Sessions
329
+ ~ Not Using Sessions
330
+ ~ Not Using Sessions
331
+ ~ Not Using Sessions
332
+ ~ Not Using Sessions
333
+ ~ Not Using Sessions
334
+ ~ Not Using Sessions
335
+ ~ Not Using Sessions
336
+ ~ Not Using Sessions
337
+ ~ Not Using Sessions
338
+ ~ Not Using Sessions
339
+ ~ Not Using Sessions
340
+ ~ Not Using Sessions
341
+ ~ Not Using Sessions
342
+ ~ Not Using Sessions
343
+ ~ Not Using Sessions
344
+ ~ Not Using Sessions
345
+ ~ Not Using Sessions
346
+ ~ Not Using Sessions
347
+ ~ Not Using Sessions
348
+ ~ Not Using Sessions
349
+ ~ Not Using Sessions
350
+ ~ Not Using Sessions
351
+ ~ Not Using Sessions
352
+ ~ Not Using Sessions
353
+ ~ Not Using Sessions
354
+ ~ Not Using Sessions
355
+ ~ Not Using Sessions
356
+ ~ Not Using Sessions
357
+ ~ Not Using Sessions
358
+ ~ Not Using Sessions
359
+ ~ Not Using Sessions
360
+ ~ Not Using Sessions
361
+ ~ Not Using Sessions
362
+ ~ Not Using Sessions
363
+ ~ Not Using Sessions
364
+ ~ Not Using Sessions
365
+ ~ Not Using Sessions
366
+ ~ Not Using Sessions
367
+ ~ Not Using Sessions
368
+ ~ Not Using Sessions
369
+ ~ Not Using Sessions
370
+ ~ Not Using Sessions
371
+ ~ Not Using Sessions
372
+ ~ Not Using Sessions
373
+ ~ Not Using Sessions
374
+ ~ Not Using Sessions
375
+ ~ Not Using Sessions
376
+ ~ Not Using Sessions
377
+ ~ Not Using Sessions
378
+ ~ Not Using Sessions
379
+ ~ Not Using Sessions
380
+ ~ Not Using Sessions
381
+ ~ Not Using Sessions
382
+ ~ Not Using Sessions
383
+ ~ Not Using Sessions
384
+ ~ Not Using Sessions
385
+ ~ Not Using Sessions
386
+ ~ Not Using Sessions
387
+ ~ Not Using Sessions
388
+ ~ Not Using Sessions
389
+ ~ Not Using Sessions
390
+ ~ Not Using Sessions
391
+ ~ Not Using Sessions
392
+ ~ Not Using Sessions
393
+ ~ Not Using Sessions
394
+ ~ Not Using Sessions
395
+ ~ Not Using Sessions
396
+ ~ Not Using Sessions
397
+ ~ Not Using Sessions
398
+ ~ Not Using Sessions
399
+ ~ Not Using Sessions
400
+ ~ Not Using Sessions
401
+ ~ Not Using Sessions
402
+ ~ Not Using Sessions
403
+ ~ Not Using Sessions
404
+ ~ Not Using Sessions
405
+ ~ Not Using Sessions
406
+ ~ Not Using Sessions
407
+ ~ Not Using Sessions
408
+ ~ Not Using Sessions
409
+ ~ Not Using Sessions
410
+ ~ Not Using Sessions
411
+ ~ Not Using Sessions
412
+ ~ Not Using Sessions
413
+ ~ Not Using Sessions
414
+ ~ Not Using Sessions
415
+ ~ Not Using Sessions
416
+ ~ Not Using Sessions
417
+ ~ Not Using Sessions
418
+ ~ Not Using Sessions
419
+ ~ Not Using Sessions
420
+ ~ Not Using Sessions
421
+ ~ Not Using Sessions
422
+ ~ Not Using Sessions
423
+ ~ Not Using Sessions
424
+ ~ Not Using Sessions
425
+ ~ Not Using Sessions
426
+ ~ Not Using Sessions
427
+ ~ Not Using Sessions
428
+ ~ Not Using Sessions
429
+ ~ Not Using Sessions
430
+ ~ Not Using Sessions
431
+ ~ Not Using Sessions
432
+ ~ Not Using Sessions
433
+ ~ Not Using Sessions
434
+ ~ Not Using Sessions
435
+ ~ Not Using Sessions
436
+ ~ Not Using Sessions
437
+ ~ Not Using Sessions
438
+ ~ Not Using Sessions
439
+ ~ Not Using Sessions
440
+ ~ Not Using Sessions
441
+ ~ Not Using Sessions
442
+ ~ Not Using Sessions
443
+ ~ Not Using Sessions
444
+ ~ Not Using Sessions
445
+ ~ Not Using Sessions
446
+ ~ Not Using Sessions
447
+ ~ Not Using Sessions
448
+ ~ Not Using Sessions
449
+ ~ Not Using Sessions
450
+ ~ Not Using Sessions
451
+ ~ Not Using Sessions
452
+ ~ Not Using Sessions
453
+ ~ Not Using Sessions
454
+ ~ Not Using Sessions
455
+ ~ Not Using Sessions
456
+ ~ Not Using Sessions
457
+ ~ Not Using Sessions
458
+ ~ Not Using Sessions
459
+ ~ Not Using Sessions
460
+ ~ Not Using Sessions
461
+ ~ Not Using Sessions
462
+ ~ Not Using Sessions
463
+ ~ Not Using Sessions
464
+ ~ Not Using Sessions
465
+ ~ Not Using Sessions
466
+ ~ Not Using Sessions
467
+ ~ Not Using Sessions
468
+ ~ Not Using Sessions
469
+ ~ Not Using Sessions
470
+ ~ Not Using Sessions
471
+ ~ Not Using Sessions
472
+ ~ Not Using Sessions
473
+ ~ Not Using Sessions
474
+ ~ Not Using Sessions
475
+ ~ Not Using Sessions
476
+ ~ Not Using Sessions
477
+ ~ Not Using Sessions
478
+ ~ Not Using Sessions
479
+ ~ Not Using Sessions
480
+ ~ Not Using Sessions
481
+ ~ Not Using Sessions
482
+ ~ Not Using Sessions
483
+ ~ Not Using Sessions
484
+ ~ Not Using Sessions
485
+ ~ Not Using Sessions
486
+ ~ Not Using Sessions
487
+ ~ Not Using Sessions
488
+ ~ Not Using Sessions
489
+ ~ Not Using Sessions
490
+ ~ Not Using Sessions
491
+ ~ Not Using Sessions
492
+ ~ Not Using Sessions
493
+ ~ Not Using Sessions
494
+ ~ Not Using Sessions
495
+ ~ Not Using Sessions
496
+ ~ Not Using Sessions
497
+ ~ Not Using Sessions
498
+ ~ Not Using Sessions
499
+ ~ Not Using Sessions
500
+ ~ Not Using Sessions
501
+ ~ Not Using Sessions
502
+ ~ Not Using Sessions
503
+ ~ Not Using Sessions
504
+ ~ Not Using Sessions
505
+ ~ Not Using Sessions
506
+ ~ Not Using Sessions
507
+ ~ Not Using Sessions
508
+ ~ Not Using Sessions
509
+ ~ Not Using Sessions
510
+ ~ Not Using Sessions
511
+ ~ Not Using Sessions
512
+ ~ Not Using Sessions
513
+ ~ Not Using Sessions
514
+ ~ Not Using Sessions
515
+ ~ Not Using Sessions
516
+ ~ Not Using Sessions
517
+ ~ Not Using Sessions
518
+ ~ Not Using Sessions
519
+ ~ Not Using Sessions
520
+ ~ Not Using Sessions
521
+ ~ Not Using Sessions
522
+ ~ Not Using Sessions
523
+ ~ Not Using Sessions
524
+ ~ Not Using Sessions
525
+ ~ Not Using Sessions
526
+ ~ Not Using Sessions
527
+ ~ Not Using Sessions
528
+ ~ Not Using Sessions
529
+ ~ Not Using Sessions
530
+ ~ Not Using Sessions
531
+ ~ Not Using Sessions
532
+ ~ Not Using Sessions
533
+ ~ Not Using Sessions
534
+ ~ Not Using Sessions
535
+ ~ Not Using Sessions
536
+ ~ Not Using Sessions
537
+ ~ Not Using Sessions
538
+ ~ Not Using Sessions
539
+ ~ Not Using Sessions
540
+ ~ Not Using Sessions
541
+ ~ Not Using Sessions
542
+ ~ Not Using Sessions
543
+ ~ Not Using Sessions
544
+ ~ Not Using Sessions
545
+ ~ Not Using Sessions
546
+ ~ Not Using Sessions
547
+ ~ Not Using Sessions
548
+ ~ Not Using Sessions
549
+ ~ Not Using Sessions
550
+ ~ Not Using Sessions
551
+ ~ Not Using Sessions
552
+ ~ Not Using Sessions
553
+ ~ Not Using Sessions
554
+ ~ Not Using Sessions
555
+ ~ Not Using Sessions
556
+ ~ Not Using Sessions
557
+ ~ Not Using Sessions
558
+ ~ Not Using Sessions
559
+ ~ Not Using Sessions
560
+ ~ Not Using Sessions
561
+ ~ Not Using Sessions
562
+ ~ Not Using Sessions
563
+ ~ Not Using Sessions
564
+ ~ Not Using Sessions
565
+ ~ Not Using Sessions
566
+ ~ Not Using Sessions
567
+ ~ Not Using Sessions
568
+ ~ Not Using Sessions
569
+ ~ Not Using Sessions
570
+ ~ Not Using Sessions
571
+ ~ Not Using Sessions
572
+ ~ Not Using Sessions
573
+ ~ Not Using Sessions
574
+ ~ Not Using Sessions
575
+ ~ Not Using Sessions
576
+ ~ Not Using Sessions
577
+ ~ Not Using Sessions
578
+ ~ Not Using Sessions
579
+ ~ Not Using Sessions
580
+ ~ Not Using Sessions
581
+ ~ Not Using Sessions
582
+ ~ Not Using Sessions
583
+ ~ Not Using Sessions
584
+ ~ Not Using Sessions
585
+ ~ Not Using Sessions
586
+ ~ Not Using Sessions
587
+ ~ Not Using Sessions
588
+ ~ Not Using Sessions
589
+ ~ Not Using Sessions
590
+ ~ Not Using Sessions
591
+ ~ Not Using Sessions
592
+ ~ Not Using Sessions
593
+ ~ Not Using Sessions
594
+ ~ Not Using Sessions
595
+ ~ Not Using Sessions
596
+ ~ Not Using Sessions
597
+ ~ Not Using Sessions
598
+ ~ Not Using Sessions
599
+ ~ Not Using Sessions
600
+ ~ Not Using Sessions
601
+ ~ Not Using Sessions
602
+ ~ Not Using Sessions
603
+ ~ Not Using Sessions
604
+ ~ Not Using Sessions
605
+ ~ Not Using Sessions
606
+ ~ Not Using Sessions
607
+ ~ Not Using Sessions
608
+ ~ Not Using Sessions
609
+ ~ Not Using Sessions
610
+ ~ Not Using Sessions
611
+ ~ Not Using Sessions
612
+ ~ Not Using Sessions
613
+ ~ Not Using Sessions
614
+ ~ Not Using Sessions
615
+ ~ Not Using Sessions
616
+ ~ Not Using Sessions
617
+ ~ Not Using Sessions
618
+ ~ Not Using Sessions
619
+ ~ Not Using Sessions
620
+ ~ Not Using Sessions
621
+ ~ Not Using Sessions
622
+ ~ Not Using Sessions
623
+ ~ Not Using Sessions
624
+ ~ Not Using Sessions
625
+ ~ Not Using Sessions
626
+ ~ Not Using Sessions
627
+ ~ Not Using Sessions
628
+ ~ Not Using Sessions
629
+ ~ Not Using Sessions
630
+ ~ Not Using Sessions
631
+ ~ Not Using Sessions
632
+ ~ Not Using Sessions
633
+ ~ Not Using Sessions
634
+ ~ Not Using Sessions
635
+ ~ Not Using Sessions
636
+ ~ Not Using Sessions
637
+ ~ Not Using Sessions
638
+ ~ Not Using Sessions
639
+ ~ Not Using Sessions
640
+ ~ Not Using Sessions
641
+ ~ Not Using Sessions
642
+ ~ Not Using Sessions
643
+ ~ Not Using Sessions
644
+ ~ Not Using Sessions
645
+ ~ Not Using Sessions
646
+ ~ Not Using Sessions
647
+ ~ Not Using Sessions
648
+ ~ Not Using Sessions
649
+ ~ Not Using Sessions
650
+ ~ Not Using Sessions
651
+ ~ Not Using Sessions
652
+ ~ Not Using Sessions
653
+ ~ Not Using Sessions
654
+ ~ Not Using Sessions
655
+ ~ Not Using Sessions
656
+ ~ Not Using Sessions
657
+ ~ Not Using Sessions
658
+ ~ Not Using Sessions
659
+ ~ Not Using Sessions
660
+ ~ Not Using Sessions
661
+ ~ Not Using Sessions
662
+ ~ Not Using Sessions
663
+ ~ Not Using Sessions
664
+ ~ Not Using Sessions
665
+ ~ Not Using Sessions
666
+ ~ Not Using Sessions
667
+ ~ Not Using Sessions
668
+ ~ Not Using Sessions
669
+ ~ Not Using Sessions
670
+ ~ Not Using Sessions
671
+ ~ Not Using Sessions
672
+ ~ Not Using Sessions
673
+ ~ Not Using Sessions
674
+ ~ Not Using Sessions
675
+ ~ Not Using Sessions
676
+ ~ Not Using Sessions
677
+ ~ Not Using Sessions
678
+ ~ Not Using Sessions
679
+ ~ Not Using Sessions
680
+ ~ Not Using Sessions
681
+ ~ Not Using Sessions
682
+ ~ Not Using Sessions
683
+ ~ Not Using Sessions
684
+ ~ Not Using Sessions
685
+ ~ Not Using Sessions
686
+ ~ Not Using Sessions
687
+ ~ Not Using Sessions
688
+ ~ Not Using Sessions
689
+ ~ Not Using Sessions
690
+ ~ Not Using Sessions
691
+ ~ Not Using Sessions
692
+ ~ Not Using Sessions
693
+ ~ Not Using Sessions
694
+ ~ Not Using Sessions
695
+ ~ Not Using Sessions
696
+ ~ Not Using Sessions
697
+ ~ Not Using Sessions
698
+ ~ Not Using Sessions
699
+ ~ Not Using Sessions
700
+ ~ Not Using Sessions
701
+ ~ Not Using Sessions
702
+ ~ Not Using Sessions
703
+ ~ Not Using Sessions
704
+ ~ Not Using Sessions
705
+ ~ Not Using Sessions
706
+ ~ Not Using Sessions
707
+ ~ Not Using Sessions
708
+ ~ Not Using Sessions
709
+ ~ Not Using Sessions
710
+ ~ Not Using Sessions
711
+ ~ Not Using Sessions
712
+ ~ Not Using Sessions
713
+ ~ Not Using Sessions
714
+ ~ Not Using Sessions
715
+ ~ Not Using Sessions
716
+ ~ Not Using Sessions
717
+ ~ Not Using Sessions
718
+ ~ Not Using Sessions
719
+ ~ Not Using Sessions
720
+ ~ Not Using Sessions
721
+ ~ Not Using Sessions
722
+ ~ Not Using Sessions
723
+ ~ Not Using Sessions
724
+ ~ Not Using Sessions
725
+ ~ Not Using Sessions
726
+ ~ Not Using Sessions
727
+ ~ Not Using Sessions
728
+ ~ Not Using Sessions
729
+ ~ Not Using Sessions
730
+ ~ Not Using Sessions
731
+ ~ Not Using Sessions
732
+ ~ Not Using Sessions
733
+ ~ Not Using Sessions
734
+ ~ Not Using Sessions
735
+ ~ Not Using Sessions
736
+ ~ Not Using Sessions
737
+ ~ Not Using Sessions
738
+ ~ Not Using Sessions
739
+ ~ Not Using Sessions
740
+ ~ Not Using Sessions
741
+ ~ Not Using Sessions
742
+ ~ Not Using Sessions
743
+ ~ Not Using Sessions
744
+ ~ Not Using Sessions
745
+ ~ Not Using Sessions
746
+ ~ Not Using Sessions
747
+ ~ Not Using Sessions
748
+ ~ Not Using Sessions
749
+ ~ Not Using Sessions
750
+ ~ Not Using Sessions
751
+ ~ Not Using Sessions
752
+ ~ Not Using Sessions
753
+ ~ Not Using Sessions
754
+ ~ Not Using Sessions
755
+ ~ Not Using Sessions
756
+ ~ Not Using Sessions
757
+ ~ Not Using Sessions
758
+ ~ Not Using Sessions
759
+ ~ Not Using Sessions
760
+ ~ Not Using Sessions
761
+ ~ Not Using Sessions
762
+ ~ Not Using Sessions
763
+ ~ Not Using Sessions
764
+ ~ Not Using Sessions
765
+ ~ Not Using Sessions
766
+ ~ Not Using Sessions
767
+ ~ Not Using Sessions
768
+ ~ Not Using Sessions
769
+ ~ Not Using Sessions
770
+ ~ Not Using Sessions
771
+ ~ Not Using Sessions
772
+ ~ Not Using Sessions
773
+ ~ Not Using Sessions
774
+ ~ Not Using Sessions
775
+ ~ Not Using Sessions
776
+ ~ Not Using Sessions
777
+ ~ Not Using Sessions
778
+ ~ Not Using Sessions
779
+ ~ Not Using Sessions
780
+ ~ Not Using Sessions
781
+ ~ Not Using Sessions
782
+ ~ Not Using Sessions
783
+ ~ Not Using Sessions
784
+ ~ Not Using Sessions
785
+ ~ Not Using Sessions
786
+ ~ Not Using Sessions
787
+ ~ Not Using Sessions
788
+ ~ Not Using Sessions
789
+ ~ Not Using Sessions
790
+ ~ Not Using Sessions
791
+ ~ Not Using Sessions
792
+ ~ Not Using Sessions
793
+ ~ Not Using Sessions
794
+ ~ Not Using Sessions
795
+ ~ Not Using Sessions
796
+ ~ Not Using Sessions
797
+ ~ Not Using Sessions
798
+ ~ {:after_filters_time=>8.0e-06, :action_time=>0.003858}
799
+ ~ {:after_filters_time=>1.2e-05, :action_time=>0.000467}
800
+ ~ {:after_filters_time=>5.0e-06, :action_time=>0.000316}
801
+ ~ {:after_filters_time=>6.0e-06, :action_time=>0.000331}
802
+ ~ {:before_filters_time=>4.9e-05, :after_filters_time=>5.0e-06, :action_time=>6.8e-05}
803
+ ~ {:after_filters_time=>5.0e-06, :action_time=>0.000309}
804
+ ~ {:after_filters_time=>5.0e-06, :action_time=>0.000319}
805
+ ~ {:after_filters_time=>6.0e-06, :action_time=>0.000376}
806
+ ~ {:after_filters_time=>5.0e-06, :action_time=>0.000325}
807
+ ~ {:after_filters_time=>6.0e-06, :action_time=>0.000314}
808
+ ~ {:after_filters_time=>5.0e-06, :action_time=>0.000434}
809
+ ~ {:before_filters_time=>4.6e-05, :after_filters_time=>4.0e-06, :action_time=>6.5e-05}
810
+ ~ {:after_filters_time=>7.0e-06, :action_time=>0.000473}
811
+ ~ {:after_filters_time=>6.0e-06, :action_time=>0.000318}
812
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000181}
813
+ ~ {:after_filters_time=>6.0e-06, :action_time=>0.000474}
814
+ ~ {:after_filters_time=>6.0e-06, :action_time=>0.00068}
815
+ ~ {:after_filters_time=>7.0e-06, :action_time=>0.000442}
816
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.00014}
817
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.7e-05}
818
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000608}
819
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.00053}
820
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>4.0e-06, :action_time=>0.000316}
821
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000392}
822
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000364}
823
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000628}
824
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>7.0e-06, :action_time=>0.000517}
825
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000526}
826
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>7.0e-06, :action_time=>0.000502}
827
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000478}
828
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000462}
829
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000361}
830
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000591}
831
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>7.0e-06, :action_time=>0.000745}
832
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000481}
833
+ ~ {:before_filters_time=>8.1e-05, :after_filters_time=>6.0e-06, :action_time=>0.00097}
834
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000389}
835
+ ~ {:before_filters_time=>5.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000442}
836
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000524}
837
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000356}
838
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>7.0e-06, :action_time=>0.000313}
839
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>7.0e-06, :action_time=>0.001023}
840
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000158}
841
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>3.0e-05}
842
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.00015}
843
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.2e-05}
844
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>5.0e-06, :action_time=>3.0e-05}
845
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.4e-05}
846
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000333}
847
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000481}
848
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000782}
849
+ ~ {:before_filters_time=>1.0e-05, :after_filters_time=>8.0e-06, :action_time=>0.000288}
850
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>8.0e-06, :action_time=>0.000269}
851
+ ~ {:before_filters_time=>1.1e-05, :after_filters_time=>8.0e-06, :action_time=>0.000167}
852
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.5e-05}
853
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.3e-05}
854
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>3.4e-05}
855
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.3e-05}
856
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>1.5e-05, :action_time=>7.0e-05}
857
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.4e-05}
858
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.5e-05}
859
+ ~ {:before_filters_time=>1.0e-05, :after_filters_time=>7.0e-06, :action_time=>4.0e-05}
860
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>3.5e-05}
861
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.4e-05}
862
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.3e-05}
863
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>7.0e-06, :action_time=>3.5e-05}
864
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>4.0e-06, :action_time=>3.3e-05}
865
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>5.0e-06, :action_time=>2.9e-05}
866
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>1.9e-05}
867
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>1.9e-05}
868
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>1.9e-05}
869
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>3.7e-05}
870
+ ~ {:before_filters_time=>5.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.0e-05}
871
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.0e-05}
872
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.0e-05}
873
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>1.9e-05}
874
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>4.0e-06, :action_time=>3.0e-05}
875
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.0e-05}
876
+ ~ {:before_filters_time=>5.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.0e-05}
877
+ ~ {:before_filters_time=>5.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.0e-05}
878
+ ~ Redirecting to: / (302)
879
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000173}
880
+ ~ Redirecting to: / (302)
881
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>4.2e-05}
882
+ ~ Redirecting to: / (302)
883
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>4.4e-05}
884
+ ~ Redirecting to: / (302)
885
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>5.5e-05}
886
+ ~ Redirecting to: http://example.com/ (302)
887
+ ~ {:before_filters_time=>5.0e-06, :after_filters_time=>4.0e-06, :action_time=>3.0e-05}
888
+ ~ Redirecting to: http://example.com/ (302)
889
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>9.6e-05}
890
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>3.3e-05}
891
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.3e-05}
892
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>5.0e-06, :action_time=>2.0e-05}
893
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000467}
894
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000385}
895
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000379}
896
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000156}
897
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>4.7e-05}
898
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>4.9e-05}
899
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000218}
900
+ ~ {:before_filters_time=>1.0e-05, :after_filters_time=>6.0e-06, :action_time=>6.5e-05}
901
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>5.6e-05}
902
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>5.9e-05}
903
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>6.2e-05}
904
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>6.0e-06, :action_time=>5.8e-05}
905
+ ~ {:before_filters_time=>1.3e-05, :after_filters_time=>7.0e-06, :action_time=>8.2e-05}
906
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>5.0e-06, :action_time=>5.2e-05}
907
+ ~ {:before_filters_time=>5.0e-06, :after_filters_time=>4.0e-06, :action_time=>3.6e-05}
908
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.1e-05}
909
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>5.4e-05}
910
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>5.0e-06, :action_time=>0.000114}
911
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>4.0e-06, :action_time=>4.1e-05}
912
+ ~ {:before_filters_time=>6.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.2e-05}
913
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>5.8e-05}
914
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>4.0e-06, :action_time=>3.9e-05}
915
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>4.3e-05}
916
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.5e-05}
917
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>4.0e-06, :action_time=>2.3e-05}
918
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>4.0e-06, :action_time=>5.0e-05}
919
+ ~ {:before_filters_time=>1.0e-05, :after_filters_time=>6.0e-06, :action_time=>6.2e-05}
920
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>5.0e-06, :action_time=>3.9e-05}
921
+ ~ {:before_filters_time=>9.0e-06, :after_filters_time=>6.0e-06, :action_time=>5.4e-05}
922
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>4.4e-05}
923
+ ~ {:before_filters_time=>8.0e-06, :after_filters_time=>5.0e-06, :action_time=>5.4e-05}
924
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>4.0e-06, :action_time=>4.1e-05}
925
+ ~ {:before_filters_time=>7.0e-06, :after_filters_time=>6.0e-06, :action_time=>0.000158}
926
+ ~ Not Using Sessions
927
+ ~ Not Using Sessions
928
+ ~ Not Using Sessions
929
+ ~ Not Using Sessions
930
+ ~ Not Using Sessions
931
+ ~ Not Using Sessions
932
+ ~ Not Using Sessions
933
+ ~ Not Using Sessions
934
+ ~ Not Using Sessions
935
+ ~ Not Using Sessions
936
+ ~ Not Using Sessions
937
+ ~ Not Using Sessions
938
+ ~ Not Using Sessions
939
+ ~ Not Using Sessions
940
+ ~ Not Using Sessions
941
+ ~ Not Using Sessions
942
+ ~ Not Using Sessions
943
+ ~ Not Using Sessions
944
+ ~ Not Using Sessions
945
+ ~ Not Using Sessions
946
+ ~ Not Using Sessions
947
+ ~ Not Using Sessions
948
+ ~ Not Using Sessions
949
+ ~ Not Using Sessions
950
+ ~ Not Using Sessions
951
+ ~ Not Using Sessions
952
+ ~ Not Using Sessions
953
+ ~ Not Using Sessions
954
+ ~ Not Using Sessions
955
+ ~ Not Using Sessions
956
+ ~ Not Using Sessions
957
+ ~ Not Using Sessions
958
+ ~ Not Using Sessions
959
+ ~ Not Using Sessions
960
+ ~ Not Using Sessions
961
+ ~ Not Using Sessions
962
+ ~ Not Using Sessions
963
+ ~ Not Using Sessions
964
+ ~ Not Using Sessions
965
+ ~ Not Using Sessions
966
+ ~ Not Using Sessions
967
+ ~ Not Using Sessions
968
+ ~ Not Using Sessions
969
+ ~ Not Using Sessions
970
+ ~ Not Using Sessions
971
+ ~ Not Using Sessions
972
+ ~ Not Using Sessions
973
+ ~ Not Using Sessions
974
+ ~ Not Using Sessions
975
+ ~ Not Using Sessions
976
+ ~ Not Using Sessions
977
+ ~ Not Using Sessions
978
+ ~ Not Using Sessions
979
+ ~ Not Using Sessions
980
+ ~ Not Using Sessions
981
+ ~ Not Using Sessions
982
+ ~ Not Using Sessions
983
+ ~ Not Using Sessions
984
+ ~ Not Using Sessions
985
+ ~ Not Using Sessions
986
+ ~ Not Using Sessions
987
+ ~ Not Using Sessions
988
+ ~ Not Using Sessions
989
+ ~ Not Using Sessions
990
+ ~ Not Using Sessions
991
+ ~ Not Using Sessions
992
+ ~ Not Using Sessions
993
+ ~ Not Using Sessions
994
+ ~ Not Using Sessions
995
+ ~ Not Using Sessions
996
+ ~ Not Using Sessions
997
+ ~ Not Using Sessions
998
+ ~ Not Using Sessions
999
+ ~ Not Using Sessions
1000
+ ~ Not Using Sessions
1001
+ ~ Not Using Sessions
1002
+ ~ Not Using Sessions
1003
+ ~ Not Using Sessions
1004
+ ~ Not Using Sessions
1005
+ ~ Not Using Sessions
1006
+ ~ Not Using Sessions
1007
+ ~ Not Using Sessions
1008
+ ~ Not Using Sessions
1009
+ ~ Not Using Sessions
1010
+ ~ Not Using Sessions
1011
+ ~ Not Using Sessions
1012
+ ~ Not Using Sessions
1013
+ ~ Not Using Sessions
1014
+ ~ Not Using Sessions
1015
+ ~ Not Using Sessions
1016
+ ~ Not Using Sessions
1017
+ ~ Not Using Sessions
1018
+ ~ Not Using Sessions
1019
+ ~ Not Using Sessions
1020
+ ~ Not Using Sessions
1021
+ ~ Not Using Sessions
1022
+ ~ Not Using Sessions
1023
+ ~ Not Using Sessions
1024
+ ~ Not Using Sessions
1025
+ ~ Not Using Sessions
1026
+ ~ Not Using Sessions
1027
+ ~ Not Using Sessions
1028
+ ~ Not Using Sessions
1029
+ ~ Not Using Sessions
1030
+ ~ Not Using Sessions
1031
+ ~ Not Using Sessions
1032
+ ~ Not Using Sessions
1033
+ ~ Not Using Sessions
1034
+ ~ Not Using Sessions
1035
+ ~ Not Using Sessions
1036
+ ~ Not Using Sessions
1037
+ ~ Not Using Sessions
1038
+ ~ Not Using Sessions
1039
+ ~ Not Using Sessions
1040
+ ~ Not Using Sessions
1041
+ ~ Not Using Sessions
1042
+ ~ Not Using Sessions
1043
+ ~ Not Using Sessions
1044
+ ~ Not Using Sessions
1045
+ ~ Not Using Sessions
1046
+ ~ Not Using Sessions
1047
+ ~ Not Using Sessions
1048
+ ~ Not Using Sessions
1049
+ ~ Not Using Sessions
1050
+ ~ Not Using Sessions
1051
+ ~ Not Using Sessions
1052
+ ~ Not Using Sessions
1053
+ ~ Not Using Sessions
1054
+ ~ Not Using Sessions
1055
+ ~ Not Using Sessions
1056
+ ~ Not Using Sessions
1057
+ ~ Not Using Sessions
1058
+ ~ Not Using Sessions
1059
+ ~ Not Using Sessions
1060
+ ~ Not Using Sessions
1061
+ ~ Not Using Sessions
1062
+ ~ Not Using Sessions
1063
+ ~ Not Using Sessions
1064
+ ~ Not Using Sessions
1065
+ ~ Not Using Sessions
1066
+ ~ Not Using Sessions
1067
+ ~ Not Using Sessions
1068
+ ~ Not Using Sessions
1069
+ ~ Not Using Sessions
1070
+ ~ Not Using Sessions
1071
+ ~ Not Using Sessions
1072
+ ~ Not Using Sessions
1073
+ ~ Not Using Sessions
1074
+ ~ Not Using Sessions
1075
+ ~ Not Using Sessions
1076
+ ~ Not Using Sessions
1077
+ ~ Not Using Sessions
1078
+ ~ Not Using Sessions
1079
+ ~ Not Using Sessions
1080
+ ~ Not Using Sessions
1081
+ ~ Not Using Sessions
1082
+ ~ Not Using Sessions
1083
+ ~ Not Using Sessions
1084
+ ~ Not Using Sessions
1085
+ ~ Not Using Sessions
1086
+ ~ Not Using Sessions
1087
+ ~ Not Using Sessions
1088
+ ~ Not Using Sessions
1089
+ ~ Not Using Sessions
1090
+ ~ Not Using Sessions
1091
+ ~ Not Using Sessions
1092
+ ~ Not Using Sessions
1093
+ ~ Not Using Sessions
1094
+ ~ Not Using Sessions
1095
+ ~ Not Using Sessions
1096
+ ~ Not Using Sessions
1097
+ ~ Not Using Sessions
1098
+ ~ Not Using Sessions
1099
+ ~ Not Using Sessions
1100
+ ~ Not Using Sessions
1101
+ ~ Not Using Sessions
1102
+ ~ Not Using Sessions
1103
+ ~ Not Using Sessions
1104
+ ~ Not Using Sessions
1105
+ ~ Not Using Sessions
1106
+ ~ Not Using Sessions
1107
+ ~ Not Using Sessions
1108
+ ~ Not Using Sessions
1109
+ ~ Not Using Sessions
1110
+ ~ Not Using Sessions
1111
+ ~ Not Using Sessions
1112
+ ~ Not Using Sessions
1113
+ ~ Not Using Sessions
1114
+ ~ Not Using Sessions
1115
+ ~ Not Using Sessions
1116
+ ~ Not Using Sessions
1117
+ ~ Not Using Sessions
1118
+ ~ Not Using Sessions
1119
+ ~ Not Using Sessions
1120
+ ~ Not Using Sessions
1121
+ ~ Not Using Sessions
1122
+ ~ Not Using Sessions
1123
+ ~ Not Using Sessions
1124
+ ~ Not Using Sessions
1125
+ ~ Not Using Sessions
1126
+ ~ Not Using Sessions
1127
+ ~ Not Using Sessions
1128
+ ~ Not Using Sessions
1129
+ ~ Not Using Sessions
1130
+ ~ Not Using Sessions
1131
+ ~ Not Using Sessions
1132
+ ~ Not Using Sessions
1133
+ ~ Not Using Sessions
1134
+ ~ Not Using Sessions
1135
+ ~ Not Using Sessions
1136
+ ~ Not Using Sessions
1137
+ ~ Not Using Sessions
1138
+ ~ Not Using Sessions
1139
+ ~ Not Using Sessions
1140
+ ~ Not Using Sessions
1141
+ ~ Not Using Sessions
1142
+ ~ Not Using Sessions
1143
+ ~ Not Using Sessions
1144
+ ~ Not Using Sessions
1145
+ ~ Not Using Sessions
1146
+ ~ Not Using Sessions
1147
+ ~ Not Using Sessions
1148
+ ~ Not Using Sessions
1149
+ ~ Not Using Sessions
1150
+ ~ Not Using Sessions
1151
+ ~ Not Using Sessions
1152
+ ~ Not Using Sessions
1153
+ ~ Not Using Sessions
1154
+ ~ Not Using Sessions
1155
+ ~ Not Using Sessions
1156
+ ~ Not Using Sessions
1157
+ ~ Not Using Sessions
1158
+ ~ Not Using Sessions
1159
+ ~ Not Using Sessions
1160
+ ~ Not Using Sessions
1161
+ ~ Not Using Sessions
1162
+ ~ Not Using Sessions
1163
+ ~ Not Using Sessions
1164
+ ~ Not Using Sessions
1165
+ ~ Not Using Sessions
1166
+ ~ Not Using Sessions
1167
+ ~ Not Using Sessions
1168
+ ~ Not Using Sessions
1169
+ ~ Not Using Sessions
1170
+ ~ Not Using Sessions
1171
+ ~ Not Using Sessions
1172
+ ~ Not Using Sessions
1173
+ ~ Not Using Sessions
1174
+ ~ Not Using Sessions
1175
+ ~ Not Using Sessions
1176
+ ~ Not Using Sessions
1177
+ ~ Not Using Sessions
1178
+ ~ Not Using Sessions
1179
+ ~ Not Using Sessions
1180
+ ~ Not Using Sessions
1181
+ ~ Not Using Sessions
1182
+ ~ Not Using Sessions
1183
+ ~ Not Using Sessions
1184
+ ~ Not Using Sessions
1185
+ ~ Not Using Sessions
1186
+ ~ Not Using Sessions
1187
+ ~ Not Using Sessions
1188
+ ~ Not Using Sessions
1189
+ ~ Not Using Sessions
1190
+ ~ Not Using Sessions
1191
+ ~ Not Using Sessions
1192
+ ~ Not Using Sessions
1193
+ ~ Not Using Sessions
1194
+ ~ Not Using Sessions
1195
+ ~ Not Using Sessions
1196
+ ~ Not Using Sessions
1197
+ ~ Not Using Sessions
1198
+ ~ Not Using Sessions
1199
+ ~ Not Using Sessions
1200
+ ~ Not Using Sessions
1201
+ ~ Not Using Sessions
1202
+ ~ Not Using Sessions
1203
+ ~ Not Using Sessions
1204
+ ~ Not Using Sessions
1205
+ ~ Not Using Sessions
1206
+ ~ Not Using Sessions
1207
+ ~ Not Using Sessions
1208
+ ~ Not Using Sessions
1209
+ ~ Not Using Sessions
1210
+ ~ Not Using Sessions
1211
+ ~ Not Using Sessions
1212
+ ~ Not Using Sessions
1213
+ ~ Not Using Sessions
1214
+ ~ Not Using Sessions
1215
+ ~ Not Using Sessions
1216
+ ~ Not Using Sessions
1217
+ ~ Not Using Sessions
1218
+ ~ Not Using Sessions
1219
+ ~ Not Using Sessions
1220
+ ~ Not Using Sessions
1221
+ ~ Not Using Sessions
1222
+ ~ Not Using Sessions
1223
+ ~ Not Using Sessions
1224
+ ~ Not Using Sessions
1225
+ ~ Not Using Sessions
1226
+ ~ Not Using Sessions
1227
+ ~ Not Using Sessions
1228
+ ~ Not Using Sessions
1229
+ ~ Not Using Sessions
1230
+ ~ Not Using Sessions
1231
+ ~ Not Using Sessions
1232
+ ~ Not Using Sessions
1233
+ ~ Not Using Sessions
1234
+ ~ Not Using Sessions
1235
+ ~ Not Using Sessions
1236
+ ~ Not Using Sessions
1237
+ ~ Not Using Sessions
1238
+ ~ Not Using Sessions
1239
+ ~ Not Using Sessions
1240
+ ~ Not Using Sessions
1241
+ ~ Not Using Sessions
1242
+ ~ Not Using Sessions
1243
+ ~ Not Using Sessions
1244
+ ~ Not Using Sessions
1245
+ ~ Not Using Sessions
1246
+ ~ Not Using Sessions
1247
+ ~ Not Using Sessions
1248
+ ~ Not Using Sessions
1249
+ ~ Not Using Sessions
1250
+ ~ Not Using Sessions
1251
+ ~ Not Using Sessions
1252
+ ~ Not Using Sessions
1253
+ ~ Not Using Sessions
1254
+ ~ Not Using Sessions
1255
+ ~ Not Using Sessions
1256
+ ~ Not Using Sessions
1257
+ ~ Not Using Sessions
1258
+ ~ Not Using Sessions
1259
+ ~ Not Using Sessions
1260
+ ~ Not Using Sessions
1261
+ ~ Not Using Sessions
1262
+ ~ Not Using Sessions
1263
+ ~ Not Using Sessions
1264
+ ~ Not Using Sessions
1265
+ ~ Not Using Sessions
1266
+ ~ Not Using Sessions
1267
+ ~ Not Using Sessions
1268
+ ~ Not Using Sessions
1269
+ ~ Not Using Sessions
1270
+ ~ Not Using Sessions
1271
+ ~ Not Using Sessions
1272
+ ~ Not Using Sessions
1273
+ ~ Not Using Sessions
1274
+ ~ Not Using Sessions
1275
+ ~ Not Using Sessions
1276
+ ~ Not Using Sessions
1277
+ ~ Not Using Sessions
1278
+ ~ Not Using Sessions
1279
+ ~ Not Using Sessions
1280
+ ~ Not Using Sessions
1281
+ ~ Not Using Sessions
1282
+ ~ Not Using Sessions
1283
+ ~ Not Using Sessions
1284
+ ~ Not Using Sessions
1285
+ ~ Not Using Sessions
1286
+ ~ Not Using Sessions
1287
+ ~ Not Using Sessions
1288
+ ~ Not Using Sessions
1289
+ ~ Not Using Sessions
1290
+ ~ Not Using Sessions
1291
+ ~ Not Using Sessions
1292
+ ~ Not Using Sessions
1293
+ ~ Not Using Sessions
1294
+ ~ Not Using Sessions
1295
+ ~ Not Using Sessions
1296
+ ~ Not Using Sessions
1297
+ ~ Not Using Sessions
1298
+ ~ Not Using Sessions
1299
+ ~ Not Using Sessions
1300
+ ~ Not Using Sessions
1301
+ ~ Not Using Sessions
1302
+ ~ Not Using Sessions
1303
+ ~ Not Using Sessions
1304
+ ~ Not Using Sessions
1305
+ ~ Not Using Sessions
1306
+ ~ Not Using Sessions
1307
+ ~ Not Using Sessions
1308
+ ~ Not Using Sessions
1309
+ ~ Not Using Sessions
1310
+ ~ Not Using Sessions
1311
+ ~ Not Using Sessions
1312
+ ~ Not Using Sessions
1313
+ ~ Not Using Sessions
1314
+ ~ Not Using Sessions
1315
+ ~ Not Using Sessions
1316
+ ~ Not Using Sessions
1317
+ ~ Not Using Sessions
1318
+ ~ Not Using Sessions
1319
+ ~ Not Using Sessions
1320
+ ~ Not Using Sessions
1321
+ ~ Not Using Sessions
1322
+ ~ Not Using Sessions
1323
+ ~ Not Using Sessions
1324
+ ~ Not Using Sessions
1325
+ ~ Not Using Sessions
1326
+ ~ Not Using Sessions
1327
+ ~ Not Using Sessions
1328
+ ~ Not Using Sessions
1329
+ ~ Not Using Sessions
1330
+ ~ Not Using Sessions
1331
+ ~ Not Using Sessions
1332
+ ~ Not Using Sessions
1333
+ ~ Not Using Sessions
1334
+ ~ Not Using Sessions
1335
+ ~ Not Using Sessions
1336
+ ~ Not Using Sessions
1337
+ ~ Not Using Sessions
1338
+ ~ Not Using Sessions
1339
+ ~ Not Using Sessions
1340
+ ~ Not Using Sessions
1341
+ ~ Not Using Sessions
1342
+ ~ Not Using Sessions
1343
+ ~ Not Using Sessions
1344
+ ~ Not Using Sessions
1345
+ ~ Not Using Sessions
1346
+ ~ Not Using Sessions
1347
+ ~ Not Using Sessions
1348
+ ~ Not Using Sessions
1349
+ ~ Not Using Sessions
1350
+ ~ Not Using Sessions
1351
+ ~ Not Using Sessions
1352
+ ~ Not Using Sessions
1353
+ ~ Not Using Sessions
1354
+ ~ Not Using Sessions
1355
+ ~ Not Using Sessions
1356
+ ~ Not Using Sessions
1357
+ ~ Not Using Sessions
1358
+ ~ Not Using Sessions
1359
+ ~ Not Using Sessions
1360
+ ~ Not Using Sessions
1361
+ ~ Not Using Sessions
1362
+ ~ Not Using Sessions
1363
+ ~ Not Using Sessions
1364
+ ~ Not Using Sessions
1365
+ ~ Not Using Sessions
1366
+ ~ Not Using Sessions
1367
+ ~ Not Using Sessions
1368
+ ~ Not Using Sessions
1369
+ ~ Not Using Sessions
1370
+ ~ Not Using Sessions
1371
+ ~ Not Using Sessions
1372
+ ~ Not Using Sessions
1373
+ ~ Not Using Sessions
1374
+ ~ Not Using Sessions
1375
+ ~ Not Using Sessions
1376
+ ~ Not Using Sessions
1377
+ ~ Not Using Sessions
1378
+ ~ Not Using Sessions
1379
+ ~ Not Using Sessions
1380
+ ~ Not Using Sessions
1381
+ ~ Not Using Sessions
1382
+ ~ Not Using Sessions
1383
+ ~ Not Using Sessions
1384
+ ~ Not Using Sessions
1385
+ ~ Not Using Sessions
1386
+ ~ Not Using Sessions
1387
+ ~ Not Using Sessions
1388
+ ~ Not Using Sessions
1389
+ ~ Not Using Sessions
1390
+ ~ Not Using Sessions
1391
+ ~ Not Using Sessions
1392
+ ~ Not Using Sessions
1393
+ ~ Not Using Sessions
1394
+ ~ Not Using Sessions
1395
+ ~ Not Using Sessions
1396
+ ~ Not Using Sessions
1397
+ ~ Not Using Sessions
1398
+ ~ Not Using Sessions
1399
+ ~ Not Using Sessions
1400
+ ~ Not Using Sessions
1401
+ ~ Not Using Sessions
1402
+ ~ Not Using Sessions
1403
+ ~ Not Using Sessions
1404
+ ~ Not Using Sessions
1405
+ ~ Not Using Sessions
1406
+ ~ Not Using Sessions
1407
+ ~ Not Using Sessions
1408
+ ~ Not Using Sessions
1409
+ ~ Not Using Sessions
1410
+ ~ Not Using Sessions
1411
+ ~ Not Using Sessions
1412
+ ~ Not Using Sessions
1413
+ ~ Not Using Sessions
1414
+ ~ Not Using Sessions
1415
+ ~ Not Using Sessions
1416
+ ~ Not Using Sessions
1417
+ ~ Not Using Sessions
1418
+ ~ Not Using Sessions
1419
+ ~ Not Using Sessions
1420
+ ~ Not Using Sessions
1421
+ ~ Not Using Sessions
1422
+ ~ Not Using Sessions
1423
+ ~ Not Using Sessions
1424
+ ~ Not Using Sessions
1425
+ ~ Not Using Sessions
1426
+ ~ Not Using Sessions
1427
+ ~ Not Using Sessions
1428
+ ~ Not Using Sessions
1429
+ ~ Not Using Sessions
1430
+ ~ Not Using Sessions
1431
+ ~ Not Using Sessions
1432
+ ~ Not Using Sessions
1433
+ ~ Not Using Sessions
1434
+ ~ Not Using Sessions
1435
+ ~ Not Using Sessions
1436
+ ~ Not Using Sessions
1437
+ ~ Not Using Sessions
1438
+ ~ Not Using Sessions
1439
+ ~ Not Using Sessions
1440
+ ~ Not Using Sessions
1441
+ ~ Not Using Sessions
1442
+ ~ Not Using Sessions
1443
+ ~ Not Using Sessions
1444
+ ~ Not Using Sessions
1445
+ ~ Not Using Sessions
1446
+ ~ Not Using Sessions
1447
+ ~ Not Using Sessions
1448
+ ~ Not Using Sessions
1449
+ ~ Not Using Sessions
1450
+ ~ Not Using Sessions
1451
+ ~ Not Using Sessions
1452
+ ~ Not Using Sessions
1453
+ ~ Not Using Sessions
1454
+ ~ Not Using Sessions
1455
+ ~ Not Using Sessions
1456
+ ~ Not Using Sessions
1457
+ ~ Not Using Sessions
1458
+ ~ Not Using Sessions
1459
+ ~ Not Using Sessions
1460
+ ~ Not Using Sessions
1461
+ ~ Not Using Sessions
1462
+ ~ Not Using Sessions
1463
+ ~ Not Using Sessions
1464
+ ~ Not Using Sessions
1465
+ ~ Not Using Sessions
1466
+ ~ Not Using Sessions
1467
+ ~ Not Using Sessions
1468
+ ~ Not Using Sessions
1469
+ ~ Not Using Sessions
1470
+ ~ Not Using Sessions
1471
+ ~ Not Using Sessions
1472
+ ~ Not Using Sessions
1473
+ ~ Not Using Sessions
1474
+ ~ Not Using Sessions
1475
+ ~ Not Using Sessions
1476
+ ~ Not Using Sessions
1477
+ ~ Not Using Sessions
1478
+ ~ Not Using Sessions
1479
+ ~ Not Using Sessions
1480
+ ~ Not Using Sessions
1481
+ ~ Not Using Sessions
1482
+ ~ Not Using Sessions
1483
+ ~ Not Using Sessions
1484
+ ~ Not Using Sessions
1485
+ ~ Not Using Sessions
1486
+ ~ Not Using Sessions
1487
+ ~ Not Using Sessions
1488
+ ~ Not Using Sessions
1489
+ ~ Not Using Sessions
1490
+ ~ Not Using Sessions
1491
+ ~ Not Using Sessions
1492
+ ~ Not Using Sessions
1493
+ ~ Not Using Sessions
1494
+ ~ Not Using Sessions
1495
+ ~ Not Using Sessions
1496
+ ~ Not Using Sessions
1497
+ ~ Not Using Sessions
1498
+ ~ Not Using Sessions
1499
+ ~ Not Using Sessions
1500
+ ~ Not Using Sessions
1501
+ ~ Not Using Sessions
1502
+ ~ Not Using Sessions
1503
+ ~ Not Using Sessions
1504
+ ~ Not Using Sessions
1505
+ ~ Not Using Sessions
1506
+ ~ Not Using Sessions
1507
+ ~ Not Using Sessions
1508
+ ~ Not Using Sessions
1509
+ ~ Not Using Sessions
1510
+ ~ Not Using Sessions
1511
+ ~ Not Using Sessions
1512
+ ~ Not Using Sessions
1513
+ ~ Not Using Sessions
1514
+ ~ Not Using Sessions
1515
+ ~ Not Using Sessions
1516
+ ~ Not Using Sessions
1517
+ ~ Not Using Sessions
1518
+ ~ Not Using Sessions
1519
+ ~ Not Using Sessions
1520
+ ~ Not Using Sessions
1521
+ ~ Not Using Sessions
1522
+ ~ Not Using Sessions
1523
+ ~ Not Using Sessions
1524
+ ~ Not Using Sessions
1525
+ ~ Not Using Sessions
1526
+ ~ Not Using Sessions
1527
+ ~ Not Using Sessions
1528
+ ~ Not Using Sessions
1529
+ ~ Not Using Sessions
1530
+ ~ Not Using Sessions
1531
+ ~ Not Using Sessions
1532
+ ~ Not Using Sessions
1533
+ ~ Not Using Sessions
1534
+ ~ Not Using Sessions
1535
+ ~ Not Using Sessions
1536
+ ~ Not Using Sessions
1537
+ ~ Not Using Sessions
1538
+ ~ Not Using Sessions
1539
+ ~ Not Using Sessions
1540
+ ~ Not Using Sessions
1541
+ ~ Not Using Sessions
1542
+ ~ Not Using Sessions
1543
+ ~ Not Using Sessions
1544
+ ~ Not Using Sessions
1545
+ ~ Not Using Sessions
1546
+ ~ Not Using Sessions
1547
+ ~ Not Using Sessions
1548
+ ~ Not Using Sessions
1549
+ ~ Not Using Sessions
1550
+ ~ Not Using Sessions
1551
+ ~ Not Using Sessions
1552
+ ~ Not Using Sessions
1553
+ ~ Not Using Sessions
1554
+ ~ Not Using Sessions
1555
+ ~ Not Using Sessions
1556
+ ~ Not Using Sessions