thorero 0.9.4.4 → 0.9.4.5

Sign up to get free protection for your applications and to get access to all the features.
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