muck-users 3.2.12 → 3.2.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (665) hide show
  1. data/Gemfile +6 -0
  2. data/Rakefile +1 -5
  3. data/VERSION +1 -1
  4. data/app/controllers/muck/users_controller.rb +84 -11
  5. data/lib/muck-users/config.rb +2 -0
  6. data/muck-users.gemspec +9 -666
  7. metadata +18 -677
  8. data/test/app/controllers/application_controller.rb +0 -15
  9. data/test/app/controllers/default_controller.rb +0 -7
  10. data/test/app/helpers/application_helper.rb +0 -3
  11. data/test/app/mailers/user_mailer.rb +0 -3
  12. data/test/app/models/access_code.rb +0 -3
  13. data/test/app/models/access_code_request.rb +0 -3
  14. data/test/app/models/country.rb +0 -13
  15. data/test/app/models/language.rb +0 -15
  16. data/test/app/models/state.rb +0 -13
  17. data/test/app/models/user.rb +0 -52
  18. data/test/app/models/user_session.rb +0 -2
  19. data/test/app/views/default/index.html.erb +0 -0
  20. data/test/app/views/layouts/application.html.erb +0 -14
  21. data/test/config/application.rb +0 -42
  22. data/test/config/assets.yml +0 -34
  23. data/test/config/boot.rb +0 -13
  24. data/test/config/database.yml +0 -15
  25. data/test/config/environment.rb +0 -5
  26. data/test/config/environments/development.rb +0 -26
  27. data/test/config/environments/production.rb +0 -49
  28. data/test/config/environments/test.rb +0 -35
  29. data/test/config/initializers/backtrace_silencers.rb +0 -7
  30. data/test/config/initializers/inflections.rb +0 -10
  31. data/test/config/initializers/mime_types.rb +0 -5
  32. data/test/config/initializers/muck.rb +0 -60
  33. data/test/config/initializers/secret_token.rb +0 -7
  34. data/test/config/initializers/session_store.rb +0 -8
  35. data/test/config/locales/en.yml +0 -5
  36. data/test/config/routes.rb +0 -4
  37. data/test/db/migrate/20090320174818_create_muck_permissions_and_roles.rb +0 -16
  38. data/test/db/migrate/20090327231918_create_users.rb +0 -40
  39. data/test/db/migrate/20090402234137_create_languages.rb +0 -18
  40. data/test/db/migrate/20090426041056_create_countries.rb +0 -15
  41. data/test/db/migrate/20090426041103_create_states.rb +0 -18
  42. data/test/db/migrate/20100123035450_create_access_codes.rb +0 -19
  43. data/test/db/migrate/20100123233654_create_access_code_requests.rb +0 -14
  44. data/test/db/migrate/20101117172951_add_name_to_access_code_requests.rb +0 -9
  45. data/test/db/migrate/20110303183433_add_sent_to_to_access_codes.rb +0 -9
  46. data/test/db/migrate/20110420153714_add_provided_by_to_access_codes.rb +0 -9
  47. data/test/db/schema.rb +0 -115
  48. data/test/db/seeds.rb +0 -7
  49. data/test/features/step_definitions/web_steps.rb +0 -219
  50. data/test/features/support/custom_env.rb +0 -19
  51. data/test/features/support/env.rb +0 -58
  52. data/test/features/support/paths.rb +0 -33
  53. data/test/lib/tasks/cucumber.rake +0 -53
  54. data/test/log/production.log +0 -0
  55. data/test/log/server.log +0 -0
  56. data/test/public/404.html +0 -30
  57. data/test/public/422.html +0 -30
  58. data/test/public/500.html +0 -30
  59. data/test/public/dispatch.rb +0 -10
  60. data/test/public/favicon.ico +0 -0
  61. data/test/public/images/admin/Home.gif +0 -0
  62. data/test/public/images/admin/roles.gif +0 -0
  63. data/test/public/images/admin/source/Home.png +0 -0
  64. data/test/public/images/admin/source/User.png +0 -0
  65. data/test/public/images/admin/source/roles.png +0 -0
  66. data/test/public/images/admin/user.gif +0 -0
  67. data/test/public/images/arrow_down.gif +0 -0
  68. data/test/public/images/arrow_left.gif +0 -0
  69. data/test/public/images/arrow_right.gif +0 -0
  70. data/test/public/images/arrow_up.gif +0 -0
  71. data/test/public/images/blue/preview.gif +0 -0
  72. data/test/public/images/fancybox/blank.gif +0 -0
  73. data/test/public/images/fancybox/fancy_close.png +0 -0
  74. data/test/public/images/fancybox/fancy_closebox.png +0 -0
  75. data/test/public/images/fancybox/fancy_left.png +0 -0
  76. data/test/public/images/fancybox/fancy_loading.png +0 -0
  77. data/test/public/images/fancybox/fancy_nav_left.png +0 -0
  78. data/test/public/images/fancybox/fancy_nav_right.png +0 -0
  79. data/test/public/images/fancybox/fancy_progress.png +0 -0
  80. data/test/public/images/fancybox/fancy_right.png +0 -0
  81. data/test/public/images/fancybox/fancy_shadow_e.png +0 -0
  82. data/test/public/images/fancybox/fancy_shadow_n.png +0 -0
  83. data/test/public/images/fancybox/fancy_shadow_ne.png +0 -0
  84. data/test/public/images/fancybox/fancy_shadow_nw.png +0 -0
  85. data/test/public/images/fancybox/fancy_shadow_s.png +0 -0
  86. data/test/public/images/fancybox/fancy_shadow_se.png +0 -0
  87. data/test/public/images/fancybox/fancy_shadow_sw.png +0 -0
  88. data/test/public/images/fancybox/fancy_shadow_w.png +0 -0
  89. data/test/public/images/fancybox/fancy_title_left.png +0 -0
  90. data/test/public/images/fancybox/fancy_title_main.png +0 -0
  91. data/test/public/images/fancybox/fancy_title_over.png +0 -0
  92. data/test/public/images/fancybox/fancy_title_right.png +0 -0
  93. data/test/public/images/fancybox/fancybox-x.png +0 -0
  94. data/test/public/images/fancybox/fancybox-y.png +0 -0
  95. data/test/public/images/fancybox/fancybox.png +0 -0
  96. data/test/public/images/icon_no.gif +0 -0
  97. data/test/public/images/icon_success.gif +0 -0
  98. data/test/public/images/icons/accept.png +0 -0
  99. data/test/public/images/icons/add.png +0 -0
  100. data/test/public/images/icons/blue_guy.png +0 -0
  101. data/test/public/images/icons/button_background.png +0 -0
  102. data/test/public/images/icons/cancel.png +0 -0
  103. data/test/public/images/icons/close.png +0 -0
  104. data/test/public/images/icons/comment.png +0 -0
  105. data/test/public/images/icons/delete.png +0 -0
  106. data/test/public/images/icons/exclaim.png +0 -0
  107. data/test/public/images/icons/external.png +0 -0
  108. data/test/public/images/icons/feed.png +0 -0
  109. data/test/public/images/icons/grey_guy.png +0 -0
  110. data/test/public/images/icons/hide.png +0 -0
  111. data/test/public/images/icons/information.png +0 -0
  112. data/test/public/images/icons/minus.png +0 -0
  113. data/test/public/images/icons/pending.png +0 -0
  114. data/test/public/images/icons/question.png +0 -0
  115. data/test/public/images/icons/search_box.png +0 -0
  116. data/test/public/images/icons/star.png +0 -0
  117. data/test/public/images/icons/stop.png +0 -0
  118. data/test/public/images/icons/thumb_down.png +0 -0
  119. data/test/public/images/icons/thumb_up.png +0 -0
  120. data/test/public/images/icons/vote.png +0 -0
  121. data/test/public/images/loading-spinner.gif +0 -0
  122. data/test/public/images/loading.gif +0 -0
  123. data/test/public/images/nothing.png +0 -0
  124. data/test/public/images/profile_default.jpg +0 -0
  125. data/test/public/images/rails.png +0 -0
  126. data/test/public/images/red/preview.gif +0 -0
  127. data/test/public/images/service_icons/16/amazon.png +0 -0
  128. data/test/public/images/service_icons/16/ask.png +0 -0
  129. data/test/public/images/service_icons/16/bibsonomy.png +0 -0
  130. data/test/public/images/service_icons/16/bing.png +0 -0
  131. data/test/public/images/service_icons/16/blogger.png +0 -0
  132. data/test/public/images/service_icons/16/bloglines.png +0 -0
  133. data/test/public/images/service_icons/16/citeulike.png +0 -0
  134. data/test/public/images/service_icons/16/clipmarks.png +0 -0
  135. data/test/public/images/service_icons/16/connotea.png +0 -0
  136. data/test/public/images/service_icons/16/dailymotion.png +0 -0
  137. data/test/public/images/service_icons/16/delicious.png +0 -0
  138. data/test/public/images/service_icons/16/digg.png +0 -0
  139. data/test/public/images/service_icons/16/diigo.png +0 -0
  140. data/test/public/images/service_icons/16/facebook.png +0 -0
  141. data/test/public/images/service_icons/16/feed.png +0 -0
  142. data/test/public/images/service_icons/16/fireeagle.png +0 -0
  143. data/test/public/images/service_icons/16/flickr.png +0 -0
  144. data/test/public/images/service_icons/16/fotolog.png +0 -0
  145. data/test/public/images/service_icons/16/friendfeed.png +0 -0
  146. data/test/public/images/service_icons/16/friendster.png +0 -0
  147. data/test/public/images/service_icons/16/furl.png +0 -0
  148. data/test/public/images/service_icons/16/goodreads.png +0 -0
  149. data/test/public/images/service_icons/16/google.png +0 -0
  150. data/test/public/images/service_icons/16/googleblog.png +0 -0
  151. data/test/public/images/service_icons/16/googlenews.png +0 -0
  152. data/test/public/images/service_icons/16/icerocket.png +0 -0
  153. data/test/public/images/service_icons/16/identica.png +0 -0
  154. data/test/public/images/service_icons/16/joost.png +0 -0
  155. data/test/public/images/service_icons/16/lastfm.png +0 -0
  156. data/test/public/images/service_icons/16/librarything.png +0 -0
  157. data/test/public/images/service_icons/16/linkedin.png +0 -0
  158. data/test/public/images/service_icons/16/livejournal.png +0 -0
  159. data/test/public/images/service_icons/16/magnolia.png +0 -0
  160. data/test/public/images/service_icons/16/mendeley.png +0 -0
  161. data/test/public/images/service_icons/16/metacafe.png +0 -0
  162. data/test/public/images/service_icons/16/mixx.png +0 -0
  163. data/test/public/images/service_icons/16/myspace.png +0 -0
  164. data/test/public/images/service_icons/16/netflix.png +0 -0
  165. data/test/public/images/service_icons/16/netvibes.png +0 -0
  166. data/test/public/images/service_icons/16/newsvine.png +0 -0
  167. data/test/public/images/service_icons/16/oai.png +0 -0
  168. data/test/public/images/service_icons/16/odeo.png +0 -0
  169. data/test/public/images/service_icons/16/opml.png +0 -0
  170. data/test/public/images/service_icons/16/pandora.png +0 -0
  171. data/test/public/images/service_icons/16/photobucket.png +0 -0
  172. data/test/public/images/service_icons/16/picasa.png +0 -0
  173. data/test/public/images/service_icons/16/polyvore.png +0 -0
  174. data/test/public/images/service_icons/16/pownce.png +0 -0
  175. data/test/public/images/service_icons/16/reddit.png +0 -0
  176. data/test/public/images/service_icons/16/simpy.png +0 -0
  177. data/test/public/images/service_icons/16/smugmug.png +0 -0
  178. data/test/public/images/service_icons/16/stumbleupon.png +0 -0
  179. data/test/public/images/service_icons/16/tag.png +0 -0
  180. data/test/public/images/service_icons/16/technorati.png +0 -0
  181. data/test/public/images/service_icons/16/tumblr.png +0 -0
  182. data/test/public/images/service_icons/16/twine.png +0 -0
  183. data/test/public/images/service_icons/16/twitter.png +0 -0
  184. data/test/public/images/service_icons/16/vimeo.png +0 -0
  185. data/test/public/images/service_icons/16/webshots.png +0 -0
  186. data/test/public/images/service_icons/16/wordpress.png +0 -0
  187. data/test/public/images/service_icons/16/xanga.png +0 -0
  188. data/test/public/images/service_icons/16/yahoo.png +0 -0
  189. data/test/public/images/service_icons/16/yelp.png +0 -0
  190. data/test/public/images/service_icons/16/youtube.png +0 -0
  191. data/test/public/images/service_icons/16/zooomr.png +0 -0
  192. data/test/public/images/service_icons/16/zotero.png +0 -0
  193. data/test/public/images/service_icons/24/amazon.png +0 -0
  194. data/test/public/images/service_icons/24/ask.png +0 -0
  195. data/test/public/images/service_icons/24/bibsonomy.png +0 -0
  196. data/test/public/images/service_icons/24/bing.png +0 -0
  197. data/test/public/images/service_icons/24/blogger.png +0 -0
  198. data/test/public/images/service_icons/24/bloglines.png +0 -0
  199. data/test/public/images/service_icons/24/citeulike.png +0 -0
  200. data/test/public/images/service_icons/24/clipmarks.png +0 -0
  201. data/test/public/images/service_icons/24/connotea.png +0 -0
  202. data/test/public/images/service_icons/24/dailymotion.png +0 -0
  203. data/test/public/images/service_icons/24/delicious.png +0 -0
  204. data/test/public/images/service_icons/24/digg.png +0 -0
  205. data/test/public/images/service_icons/24/diigo.png +0 -0
  206. data/test/public/images/service_icons/24/facebook.png +0 -0
  207. data/test/public/images/service_icons/24/feed.png +0 -0
  208. data/test/public/images/service_icons/24/fireeagle.png +0 -0
  209. data/test/public/images/service_icons/24/flickr.png +0 -0
  210. data/test/public/images/service_icons/24/fotolog.png +0 -0
  211. data/test/public/images/service_icons/24/friendfeed.png +0 -0
  212. data/test/public/images/service_icons/24/friendster.png +0 -0
  213. data/test/public/images/service_icons/24/furl.png +0 -0
  214. data/test/public/images/service_icons/24/goodreads.png +0 -0
  215. data/test/public/images/service_icons/24/google.png +0 -0
  216. data/test/public/images/service_icons/24/googleblog.png +0 -0
  217. data/test/public/images/service_icons/24/googlenews.png +0 -0
  218. data/test/public/images/service_icons/24/icerocket.png +0 -0
  219. data/test/public/images/service_icons/24/identica.png +0 -0
  220. data/test/public/images/service_icons/24/joost.png +0 -0
  221. data/test/public/images/service_icons/24/lastfm.png +0 -0
  222. data/test/public/images/service_icons/24/librarything.png +0 -0
  223. data/test/public/images/service_icons/24/linkedin.png +0 -0
  224. data/test/public/images/service_icons/24/livejournal.png +0 -0
  225. data/test/public/images/service_icons/24/magnolia.png +0 -0
  226. data/test/public/images/service_icons/24/mendeley.png +0 -0
  227. data/test/public/images/service_icons/24/metacafe.png +0 -0
  228. data/test/public/images/service_icons/24/mixx.png +0 -0
  229. data/test/public/images/service_icons/24/myspace.png +0 -0
  230. data/test/public/images/service_icons/24/netflix.png +0 -0
  231. data/test/public/images/service_icons/24/netvibes.png +0 -0
  232. data/test/public/images/service_icons/24/newsvine.png +0 -0
  233. data/test/public/images/service_icons/24/oai.png +0 -0
  234. data/test/public/images/service_icons/24/odeo.png +0 -0
  235. data/test/public/images/service_icons/24/opml.png +0 -0
  236. data/test/public/images/service_icons/24/pandora.png +0 -0
  237. data/test/public/images/service_icons/24/photobucket.png +0 -0
  238. data/test/public/images/service_icons/24/picasa.png +0 -0
  239. data/test/public/images/service_icons/24/polyvore.png +0 -0
  240. data/test/public/images/service_icons/24/pownce.png +0 -0
  241. data/test/public/images/service_icons/24/reddit.png +0 -0
  242. data/test/public/images/service_icons/24/simpy.png +0 -0
  243. data/test/public/images/service_icons/24/smugmug.png +0 -0
  244. data/test/public/images/service_icons/24/stumbleupon.png +0 -0
  245. data/test/public/images/service_icons/24/tag.png +0 -0
  246. data/test/public/images/service_icons/24/technorati.png +0 -0
  247. data/test/public/images/service_icons/24/tumblr.png +0 -0
  248. data/test/public/images/service_icons/24/twine.png +0 -0
  249. data/test/public/images/service_icons/24/twitter.png +0 -0
  250. data/test/public/images/service_icons/24/vimeo.png +0 -0
  251. data/test/public/images/service_icons/24/webshots.png +0 -0
  252. data/test/public/images/service_icons/24/wordpress.png +0 -0
  253. data/test/public/images/service_icons/24/xanga.png +0 -0
  254. data/test/public/images/service_icons/24/yahoo.png +0 -0
  255. data/test/public/images/service_icons/24/yelp.png +0 -0
  256. data/test/public/images/service_icons/24/youtube.png +0 -0
  257. data/test/public/images/service_icons/24/zooomr.png +0 -0
  258. data/test/public/images/service_icons/24/zotero.png +0 -0
  259. data/test/public/images/service_icons/48/amazon.png +0 -0
  260. data/test/public/images/service_icons/48/ask.png +0 -0
  261. data/test/public/images/service_icons/48/bibsonomy.png +0 -0
  262. data/test/public/images/service_icons/48/bing.png +0 -0
  263. data/test/public/images/service_icons/48/blogger.png +0 -0
  264. data/test/public/images/service_icons/48/bloglines.png +0 -0
  265. data/test/public/images/service_icons/48/citeulike.png +0 -0
  266. data/test/public/images/service_icons/48/clipmarks.png +0 -0
  267. data/test/public/images/service_icons/48/connotea.png +0 -0
  268. data/test/public/images/service_icons/48/dailymotion.png +0 -0
  269. data/test/public/images/service_icons/48/delicious.png +0 -0
  270. data/test/public/images/service_icons/48/digg.png +0 -0
  271. data/test/public/images/service_icons/48/diigo.png +0 -0
  272. data/test/public/images/service_icons/48/facebook.png +0 -0
  273. data/test/public/images/service_icons/48/feed.png +0 -0
  274. data/test/public/images/service_icons/48/fireeagle.png +0 -0
  275. data/test/public/images/service_icons/48/flickr.png +0 -0
  276. data/test/public/images/service_icons/48/fotolog.png +0 -0
  277. data/test/public/images/service_icons/48/friendfeed.png +0 -0
  278. data/test/public/images/service_icons/48/friendster.png +0 -0
  279. data/test/public/images/service_icons/48/furl.png +0 -0
  280. data/test/public/images/service_icons/48/goodreads.png +0 -0
  281. data/test/public/images/service_icons/48/google.png +0 -0
  282. data/test/public/images/service_icons/48/googleblog.png +0 -0
  283. data/test/public/images/service_icons/48/googlenews.png +0 -0
  284. data/test/public/images/service_icons/48/icerocket.png +0 -0
  285. data/test/public/images/service_icons/48/identica.png +0 -0
  286. data/test/public/images/service_icons/48/joost.png +0 -0
  287. data/test/public/images/service_icons/48/lastfm.png +0 -0
  288. data/test/public/images/service_icons/48/librarything.png +0 -0
  289. data/test/public/images/service_icons/48/linkedin.png +0 -0
  290. data/test/public/images/service_icons/48/livejournal.png +0 -0
  291. data/test/public/images/service_icons/48/magnolia.png +0 -0
  292. data/test/public/images/service_icons/48/mendeley.png +0 -0
  293. data/test/public/images/service_icons/48/metacafe.png +0 -0
  294. data/test/public/images/service_icons/48/mixx.png +0 -0
  295. data/test/public/images/service_icons/48/myspace.png +0 -0
  296. data/test/public/images/service_icons/48/netflix.png +0 -0
  297. data/test/public/images/service_icons/48/netvibes.png +0 -0
  298. data/test/public/images/service_icons/48/newsvine.png +0 -0
  299. data/test/public/images/service_icons/48/oai.png +0 -0
  300. data/test/public/images/service_icons/48/odeo.png +0 -0
  301. data/test/public/images/service_icons/48/opml.png +0 -0
  302. data/test/public/images/service_icons/48/pandora.png +0 -0
  303. data/test/public/images/service_icons/48/photobucket.png +0 -0
  304. data/test/public/images/service_icons/48/picasa.png +0 -0
  305. data/test/public/images/service_icons/48/polyvore.png +0 -0
  306. data/test/public/images/service_icons/48/pownce.png +0 -0
  307. data/test/public/images/service_icons/48/reddit.png +0 -0
  308. data/test/public/images/service_icons/48/simpy.png +0 -0
  309. data/test/public/images/service_icons/48/smugmug.png +0 -0
  310. data/test/public/images/service_icons/48/stumbleupon.png +0 -0
  311. data/test/public/images/service_icons/48/tag.png +0 -0
  312. data/test/public/images/service_icons/48/technorati.png +0 -0
  313. data/test/public/images/service_icons/48/tumblr.png +0 -0
  314. data/test/public/images/service_icons/48/twine.png +0 -0
  315. data/test/public/images/service_icons/48/twitter.png +0 -0
  316. data/test/public/images/service_icons/48/vimeo.png +0 -0
  317. data/test/public/images/service_icons/48/webshots.png +0 -0
  318. data/test/public/images/service_icons/48/wordpress.png +0 -0
  319. data/test/public/images/service_icons/48/xanga.png +0 -0
  320. data/test/public/images/service_icons/48/yahoo.png +0 -0
  321. data/test/public/images/service_icons/48/yelp.png +0 -0
  322. data/test/public/images/service_icons/48/youtube.png +0 -0
  323. data/test/public/images/service_icons/48/zooomr.png +0 -0
  324. data/test/public/images/service_icons/48/zotero.png +0 -0
  325. data/test/public/images/service_icons/60/amazon.png +0 -0
  326. data/test/public/images/service_icons/60/ask.png +0 -0
  327. data/test/public/images/service_icons/60/bibsonomy.png +0 -0
  328. data/test/public/images/service_icons/60/bing.png +0 -0
  329. data/test/public/images/service_icons/60/blogger.png +0 -0
  330. data/test/public/images/service_icons/60/bloglines.png +0 -0
  331. data/test/public/images/service_icons/60/citeulike.png +0 -0
  332. data/test/public/images/service_icons/60/clipmarks.png +0 -0
  333. data/test/public/images/service_icons/60/connotea.png +0 -0
  334. data/test/public/images/service_icons/60/dailymotion.png +0 -0
  335. data/test/public/images/service_icons/60/delicious.png +0 -0
  336. data/test/public/images/service_icons/60/digg.png +0 -0
  337. data/test/public/images/service_icons/60/diigo.png +0 -0
  338. data/test/public/images/service_icons/60/facebook.png +0 -0
  339. data/test/public/images/service_icons/60/feed.png +0 -0
  340. data/test/public/images/service_icons/60/fireeagle.png +0 -0
  341. data/test/public/images/service_icons/60/flickr.png +0 -0
  342. data/test/public/images/service_icons/60/fotolog.png +0 -0
  343. data/test/public/images/service_icons/60/friendfeed.png +0 -0
  344. data/test/public/images/service_icons/60/friendster.png +0 -0
  345. data/test/public/images/service_icons/60/furl.png +0 -0
  346. data/test/public/images/service_icons/60/goodreads.png +0 -0
  347. data/test/public/images/service_icons/60/google.png +0 -0
  348. data/test/public/images/service_icons/60/googleblog.png +0 -0
  349. data/test/public/images/service_icons/60/googlenews.png +0 -0
  350. data/test/public/images/service_icons/60/icerocket.png +0 -0
  351. data/test/public/images/service_icons/60/identica.png +0 -0
  352. data/test/public/images/service_icons/60/joost.png +0 -0
  353. data/test/public/images/service_icons/60/lastfm.png +0 -0
  354. data/test/public/images/service_icons/60/librarything.png +0 -0
  355. data/test/public/images/service_icons/60/linkedin.png +0 -0
  356. data/test/public/images/service_icons/60/livejournal.png +0 -0
  357. data/test/public/images/service_icons/60/magnolia.png +0 -0
  358. data/test/public/images/service_icons/60/mendeley.png +0 -0
  359. data/test/public/images/service_icons/60/metacafe.png +0 -0
  360. data/test/public/images/service_icons/60/mixx.png +0 -0
  361. data/test/public/images/service_icons/60/myspace.png +0 -0
  362. data/test/public/images/service_icons/60/netflix.png +0 -0
  363. data/test/public/images/service_icons/60/netvibes.png +0 -0
  364. data/test/public/images/service_icons/60/newsvine.png +0 -0
  365. data/test/public/images/service_icons/60/oai.png +0 -0
  366. data/test/public/images/service_icons/60/odeo.png +0 -0
  367. data/test/public/images/service_icons/60/opml.png +0 -0
  368. data/test/public/images/service_icons/60/pandora.png +0 -0
  369. data/test/public/images/service_icons/60/photobucket.png +0 -0
  370. data/test/public/images/service_icons/60/picasa.png +0 -0
  371. data/test/public/images/service_icons/60/polyvore.png +0 -0
  372. data/test/public/images/service_icons/60/pownce.png +0 -0
  373. data/test/public/images/service_icons/60/reddit.png +0 -0
  374. data/test/public/images/service_icons/60/simpy.png +0 -0
  375. data/test/public/images/service_icons/60/smugmug.png +0 -0
  376. data/test/public/images/service_icons/60/stumbleupon.png +0 -0
  377. data/test/public/images/service_icons/60/tag.png +0 -0
  378. data/test/public/images/service_icons/60/technorati.png +0 -0
  379. data/test/public/images/service_icons/60/tumblr.png +0 -0
  380. data/test/public/images/service_icons/60/twine.png +0 -0
  381. data/test/public/images/service_icons/60/twitter.png +0 -0
  382. data/test/public/images/service_icons/60/vimeo.png +0 -0
  383. data/test/public/images/service_icons/60/webshots.png +0 -0
  384. data/test/public/images/service_icons/60/wordpress.png +0 -0
  385. data/test/public/images/service_icons/60/xanga.png +0 -0
  386. data/test/public/images/service_icons/60/yahoo.png +0 -0
  387. data/test/public/images/service_icons/60/yelp.png +0 -0
  388. data/test/public/images/service_icons/60/youtube.png +0 -0
  389. data/test/public/images/service_icons/60/zooomr.png +0 -0
  390. data/test/public/images/service_icons/60/zotero.png +0 -0
  391. data/test/public/images/service_icons/facebook_friend_links.jpg +0 -0
  392. data/test/public/images/service_icons/facebook_my_links.jpg +0 -0
  393. data/test/public/images/service_icons/source/Aquaticus_Social_Icon_template_by_jwloh.psd +0 -0
  394. data/test/public/images/service_icons/source/Google.psd +0 -0
  395. data/test/public/images/service_icons/source/Quake 9 Design.webloc b/data/test/public/images/service_icons/source/Quake 9 → Design.webloc +0 -0
  396. data/test/public/images/service_icons/source/ReadMe.rtf +0 -52
  397. data/test/public/images/service_icons/source/amazon.png +0 -0
  398. data/test/public/images/service_icons/source/aquaticus.social.png +0 -0
  399. data/test/public/images/service_icons/source/ask.png +0 -0
  400. data/test/public/images/service_icons/source/ask.psd +0 -0
  401. data/test/public/images/service_icons/source/bibsonomy.png +0 -0
  402. data/test/public/images/service_icons/source/bibsonomy.psd +0 -0
  403. data/test/public/images/service_icons/source/bing.png +0 -0
  404. data/test/public/images/service_icons/source/bing.psd +0 -0
  405. data/test/public/images/service_icons/source/blogger.png +0 -0
  406. data/test/public/images/service_icons/source/bloglines.png +0 -0
  407. data/test/public/images/service_icons/source/bloglines.psd +0 -0
  408. data/test/public/images/service_icons/source/citeulike.png +0 -0
  409. data/test/public/images/service_icons/source/clipmarks.png +0 -0
  410. data/test/public/images/service_icons/source/connotea.png +0 -0
  411. data/test/public/images/service_icons/source/connotea.psd +0 -0
  412. data/test/public/images/service_icons/source/dailymotion.png +0 -0
  413. data/test/public/images/service_icons/source/delicious.png +0 -0
  414. data/test/public/images/service_icons/source/digg.png +0 -0
  415. data/test/public/images/service_icons/source/diigo.png +0 -0
  416. data/test/public/images/service_icons/source/facebook.png +0 -0
  417. data/test/public/images/service_icons/source/feed.png +0 -0
  418. data/test/public/images/service_icons/source/fireeagle.psd +0 -0
  419. data/test/public/images/service_icons/source/flickr.png +0 -0
  420. data/test/public/images/service_icons/source/fotolog.png +0 -0
  421. data/test/public/images/service_icons/source/friendfeed.png +0 -0
  422. data/test/public/images/service_icons/source/friendster.png +0 -0
  423. data/test/public/images/service_icons/source/furl.png +0 -0
  424. data/test/public/images/service_icons/source/goodreads.png +0 -0
  425. data/test/public/images/service_icons/source/google.png +0 -0
  426. data/test/public/images/service_icons/source/googleblog.png +0 -0
  427. data/test/public/images/service_icons/source/googlenews.png +0 -0
  428. data/test/public/images/service_icons/source/icerocket.png +0 -0
  429. data/test/public/images/service_icons/source/icerocket.psd +0 -0
  430. data/test/public/images/service_icons/source/identica.png +0 -0
  431. data/test/public/images/service_icons/source/joost.png +0 -0
  432. data/test/public/images/service_icons/source/lastfm.png +0 -0
  433. data/test/public/images/service_icons/source/librarything.png +0 -0
  434. data/test/public/images/service_icons/source/linkedin.png +0 -0
  435. data/test/public/images/service_icons/source/livejournal.png +0 -0
  436. data/test/public/images/service_icons/source/magnolia.png +0 -0
  437. data/test/public/images/service_icons/source/mendeley.png +0 -0
  438. data/test/public/images/service_icons/source/metacafe.png +0 -0
  439. data/test/public/images/service_icons/source/metacafe.psd +0 -0
  440. data/test/public/images/service_icons/source/mixx.png +0 -0
  441. data/test/public/images/service_icons/source/myspace.png +0 -0
  442. data/test/public/images/service_icons/source/netflix.png +0 -0
  443. data/test/public/images/service_icons/source/netvibes.png +0 -0
  444. data/test/public/images/service_icons/source/newsvine.png +0 -0
  445. data/test/public/images/service_icons/source/oai.png +0 -0
  446. data/test/public/images/service_icons/source/odeo.png +0 -0
  447. data/test/public/images/service_icons/source/opml.png +0 -0
  448. data/test/public/images/service_icons/source/pandora.png +0 -0
  449. data/test/public/images/service_icons/source/photobucket.png +0 -0
  450. data/test/public/images/service_icons/source/picasa.png +0 -0
  451. data/test/public/images/service_icons/source/polyvore.png +0 -0
  452. data/test/public/images/service_icons/source/posterous.psd +0 -0
  453. data/test/public/images/service_icons/source/pownce.png +0 -0
  454. data/test/public/images/service_icons/source/reddit.png +0 -0
  455. data/test/public/images/service_icons/source/simpy.png +0 -0
  456. data/test/public/images/service_icons/source/smugmug.png +0 -0
  457. data/test/public/images/service_icons/source/stumbleupon.png +0 -0
  458. data/test/public/images/service_icons/source/tag.png +0 -0
  459. data/test/public/images/service_icons/source/technorati.png +0 -0
  460. data/test/public/images/service_icons/source/template.png +0 -0
  461. data/test/public/images/service_icons/source/tumblr.png +0 -0
  462. data/test/public/images/service_icons/source/twine.png +0 -0
  463. data/test/public/images/service_icons/source/twine.psd +0 -0
  464. data/test/public/images/service_icons/source/twitter.png +0 -0
  465. data/test/public/images/service_icons/source/vimeo.png +0 -0
  466. data/test/public/images/service_icons/source/webshots.png +0 -0
  467. data/test/public/images/service_icons/source/wordpress.png +0 -0
  468. data/test/public/images/service_icons/source/xanga.png +0 -0
  469. data/test/public/images/service_icons/source/yahoo.png +0 -0
  470. data/test/public/images/service_icons/source/yelp.png +0 -0
  471. data/test/public/images/service_icons/source/youtube.png +0 -0
  472. data/test/public/images/service_icons/source/zooomr.png +0 -0
  473. data/test/public/images/service_icons/source/zotero.png +0 -0
  474. data/test/public/images/spinner.gif +0 -0
  475. data/test/public/images/sprites.png +0 -0
  476. data/test/public/javascripts/application.js +0 -2
  477. data/test/public/javascripts/builder.js +0 -136
  478. data/test/public/javascripts/controls.js +0 -963
  479. data/test/public/javascripts/dragdrop.js +0 -972
  480. data/test/public/javascripts/effects.js +0 -1120
  481. data/test/public/javascripts/fancyzoom.min.js +0 -1
  482. data/test/public/javascripts/jquery/colorpicker.js +0 -450
  483. data/test/public/javascripts/jquery/jquery-1.5.1.js +0 -8316
  484. data/test/public/javascripts/jquery/jquery-ui-1.8.11.custom.js +0 -11577
  485. data/test/public/javascripts/jquery/jquery-ui-1.8.4.custom.min.js +0 -763
  486. data/test/public/javascripts/jquery/jquery-ui.js +0 -781
  487. data/test/public/javascripts/jquery/jquery.autocomplete.js.readme +0 -6
  488. data/test/public/javascripts/jquery/jquery.autocomplete.min.js +0 -15
  489. data/test/public/javascripts/jquery/jquery.autocomplete.pack.js +0 -767
  490. data/test/public/javascripts/jquery/jquery.cookie.js +0 -96
  491. data/test/public/javascripts/jquery/jquery.easing.js +0 -46
  492. data/test/public/javascripts/jquery/jquery.fancybox.js +0 -46
  493. data/test/public/javascripts/jquery/jquery.form.js +0 -675
  494. data/test/public/javascripts/jquery/jquery.jgrowl.js +0 -9
  495. data/test/public/javascripts/jquery/jquery.js +0 -154
  496. data/test/public/javascripts/jquery/jquery.metadata.min.js +0 -13
  497. data/test/public/javascripts/jquery/jquery.mousewheel.js +0 -13
  498. data/test/public/javascripts/jquery/jquery.queryString.js +0 -33
  499. data/test/public/javascripts/jquery/jquery.swapimage.js +0 -66
  500. data/test/public/javascripts/jquery/jquery.swapimage.min.js +0 -11
  501. data/test/public/javascripts/jquery/jquery.timers.js +0 -138
  502. data/test/public/javascripts/jquery/jquery.tips.js +0 -75
  503. data/test/public/javascripts/jquery/jrails.js +0 -1
  504. data/test/public/javascripts/muck-countries.js +0 -50
  505. data/test/public/javascripts/muck-src.js +0 -147
  506. data/test/public/javascripts/muck-users.js +0 -20
  507. data/test/public/javascripts/muck.js +0 -149
  508. data/test/public/javascripts/muck_activities.js +0 -100
  509. data/test/public/javascripts/muck_admin.js +0 -0
  510. data/test/public/javascripts/muck_countries.js +0 -50
  511. data/test/public/javascripts/muck_time/en.js +0 -53
  512. data/test/public/javascripts/prototype.js +0 -4225
  513. data/test/public/javascripts/rails.js +0 -175
  514. data/test/public/javascripts/scriptaculous.js +0 -58
  515. data/test/public/javascripts/slider.js +0 -277
  516. data/test/public/javascripts/sound.js +0 -60
  517. data/test/public/javascripts/tree.js +0 -107
  518. data/test/public/robots.txt +0 -1
  519. data/test/public/stylesheets/admin.css +0 -75
  520. data/test/public/stylesheets/application.css +0 -0
  521. data/test/public/stylesheets/blueprint/ie.css +0 -26
  522. data/test/public/stylesheets/blueprint/liquid_screen.css +0 -203
  523. data/test/public/stylesheets/blueprint/plugins/buttons/icons/cross.png +0 -0
  524. data/test/public/stylesheets/blueprint/plugins/buttons/icons/key.png +0 -0
  525. data/test/public/stylesheets/blueprint/plugins/buttons/icons/tick.png +0 -0
  526. data/test/public/stylesheets/blueprint/plugins/buttons/readme.txt +0 -32
  527. data/test/public/stylesheets/blueprint/plugins/buttons/screen.css +0 -97
  528. data/test/public/stylesheets/blueprint/plugins/fancy-type/readme.txt +0 -14
  529. data/test/public/stylesheets/blueprint/plugins/fancy-type/screen.css +0 -71
  530. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/doc.png +0 -0
  531. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/email.png +0 -0
  532. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/external.png +0 -0
  533. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/feed.png +0 -0
  534. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/im.png +0 -0
  535. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/pdf.png +0 -0
  536. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/visited.png +0 -0
  537. data/test/public/stylesheets/blueprint/plugins/link-icons/icons/xls.png +0 -0
  538. data/test/public/stylesheets/blueprint/plugins/link-icons/readme.txt +0 -18
  539. data/test/public/stylesheets/blueprint/plugins/link-icons/screen.css +0 -40
  540. data/test/public/stylesheets/blueprint/plugins/liquid/liquid.css +0 -134
  541. data/test/public/stylesheets/blueprint/plugins/liquid/src/liquid.css +0 -197
  542. data/test/public/stylesheets/blueprint/plugins/rtl/readme.txt +0 -10
  543. data/test/public/stylesheets/blueprint/plugins/rtl/screen.css +0 -109
  544. data/test/public/stylesheets/blueprint/print.css +0 -30
  545. data/test/public/stylesheets/blueprint/screen.css +0 -251
  546. data/test/public/stylesheets/blueprint/sprite.css +0 -1
  547. data/test/public/stylesheets/blueprint/src/forms.css +0 -49
  548. data/test/public/stylesheets/blueprint/src/grid.css +0 -213
  549. data/test/public/stylesheets/blueprint/src/grid.png +0 -0
  550. data/test/public/stylesheets/blueprint/src/ie.css +0 -59
  551. data/test/public/stylesheets/blueprint/src/print.css +0 -85
  552. data/test/public/stylesheets/blueprint/src/reset.css +0 -38
  553. data/test/public/stylesheets/blueprint/src/typography.css +0 -105
  554. data/test/public/stylesheets/default.css +0 -0
  555. data/test/public/stylesheets/flick/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  556. data/test/public/stylesheets/flick/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
  557. data/test/public/stylesheets/flick/images/ui-bg_flat_55_ffffff_40x100.png +0 -0
  558. data/test/public/stylesheets/flick/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  559. data/test/public/stylesheets/flick/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  560. data/test/public/stylesheets/flick/images/ui-bg_highlight-soft_100_f6f6f6_1x100.png +0 -0
  561. data/test/public/stylesheets/flick/images/ui-bg_highlight-soft_25_0073ea_1x100.png +0 -0
  562. data/test/public/stylesheets/flick/images/ui-bg_highlight-soft_50_dddddd_1x100.png +0 -0
  563. data/test/public/stylesheets/flick/images/ui-icons_0073ea_256x240.png +0 -0
  564. data/test/public/stylesheets/flick/images/ui-icons_454545_256x240.png +0 -0
  565. data/test/public/stylesheets/flick/images/ui-icons_666666_256x240.png +0 -0
  566. data/test/public/stylesheets/flick/images/ui-icons_ff0084_256x240.png +0 -0
  567. data/test/public/stylesheets/flick/images/ui-icons_ffffff_256x240.png +0 -0
  568. data/test/public/stylesheets/flick/jquery-ui-1.8.1.custom.css +0 -486
  569. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_diagonals-small_0_aaaaaa_40x40.png +0 -0
  570. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_diagonals-thick_15_444444_40x40.png +0 -0
  571. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_glass_100_f0f0f0_1x400.png +0 -0
  572. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_glass_50_99c2ff_1x400.png +0 -0
  573. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_glass_55_fbf5d0_1x400.png +0 -0
  574. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_glass_80_e6e6e6_1x400.png +0 -0
  575. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  576. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_highlight-hard_100_f9f9f9_1x100.png +0 -0
  577. data/test/public/stylesheets/jquery/cupertino/images/ui-bg_highlight-soft_100_e7eef3_1x100.png +0 -0
  578. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_222222_256x240.png +0 -0
  579. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_2694e8_256x240.png +0 -0
  580. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_2e83ff_256x240.png +0 -0
  581. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_72a7cf_256x240.png +0 -0
  582. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_888888_256x240.png +0 -0
  583. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_cd0a0a_256x240.png +0 -0
  584. data/test/public/stylesheets/jquery/cupertino/images/ui-icons_ffffff_256x240.png +0 -0
  585. data/test/public/stylesheets/jquery/cupertino/jquery-ui-1.7.1.custom.css +0 -404
  586. data/test/public/stylesheets/jquery/cupertino/jquery-ui-1.7.2.custom.css +0 -160
  587. data/test/public/stylesheets/jquery/jquery.autocomplete.css +0 -15
  588. data/test/public/stylesheets/jquery/jquery.fancybox.css +0 -77
  589. data/test/public/stylesheets/jquery/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  590. data/test/public/stylesheets/jquery/redmond/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
  591. data/test/public/stylesheets/jquery/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  592. data/test/public/stylesheets/jquery/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  593. data/test/public/stylesheets/jquery/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  594. data/test/public/stylesheets/jquery/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  595. data/test/public/stylesheets/jquery/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  596. data/test/public/stylesheets/jquery/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  597. data/test/public/stylesheets/jquery/redmond/images/ui-icons_217bc0_256x240.png +0 -0
  598. data/test/public/stylesheets/jquery/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
  599. data/test/public/stylesheets/jquery/redmond/images/ui-icons_469bdd_256x240.png +0 -0
  600. data/test/public/stylesheets/jquery/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
  601. data/test/public/stylesheets/jquery/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
  602. data/test/public/stylesheets/jquery/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
  603. data/test/public/stylesheets/jquery/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
  604. data/test/public/stylesheets/jquery/redmond/jquery-ui-1.7.1.custom.css +0 -404
  605. data/test/public/stylesheets/jquery/redmond/jquery-ui-1.7.2.custom.css +0 -160
  606. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  607. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  608. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  609. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  610. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  611. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  612. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  613. data/test/public/stylesheets/jquery/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  614. data/test/public/stylesheets/jquery/smoothness/images/ui-icons_222222_256x240.png +0 -0
  615. data/test/public/stylesheets/jquery/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  616. data/test/public/stylesheets/jquery/smoothness/images/ui-icons_454545_256x240.png +0 -0
  617. data/test/public/stylesheets/jquery/smoothness/images/ui-icons_888888_256x240.png +0 -0
  618. data/test/public/stylesheets/jquery/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  619. data/test/public/stylesheets/jquery/smoothness/jquery-ui-1.7.1.custom.css +0 -404
  620. data/test/public/stylesheets/jquery/smoothness/jquery-ui-1.7.2.custom.css +0 -160
  621. data/test/public/stylesheets/jquery/smoothness/jquery-ui-1.8.11.custom.css +0 -573
  622. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  623. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  624. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
  625. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  626. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  627. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  628. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  629. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  630. data/test/public/stylesheets/jquery/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  631. data/test/public/stylesheets/jquery/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  632. data/test/public/stylesheets/jquery/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  633. data/test/public/stylesheets/jquery/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  634. data/test/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  635. data/test/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  636. data/test/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.1.custom.css +0 -404
  637. data/test/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.2.custom.css +0 -160
  638. data/test/public/stylesheets/jquery/ui-lightness/jquery-ui-1.8.11.custom.css +0 -573
  639. data/test/public/stylesheets/jquery/ui-lightness/jquery-ui-1.8.4.custom.css +0 -572
  640. data/test/public/stylesheets/muck-users.css +0 -10
  641. data/test/public/stylesheets/reset.css +0 -0
  642. data/test/public/stylesheets/styles.css +0 -98
  643. data/test/public/stylesheets/themes/blue/styles.css +0 -1
  644. data/test/public/stylesheets/themes/red/styles.css +0 -1
  645. data/test/script/rails +0 -6
  646. data/test/spec/controllers/access_code_requests_controller_spec.rb +0 -62
  647. data/test/spec/controllers/activations_controller_spec.rb +0 -69
  648. data/test/spec/controllers/admin/access_code_requests_controller_spec.rb +0 -128
  649. data/test/spec/controllers/admin/access_codes_controller_spec.rb +0 -189
  650. data/test/spec/controllers/admin/roles_controller_spec.rb +0 -84
  651. data/test/spec/controllers/admin/users_controller_spec.rb +0 -245
  652. data/test/spec/controllers/password_resets_controller_spec.rb +0 -65
  653. data/test/spec/controllers/user_sessions_controller_spec.rb +0 -122
  654. data/test/spec/controllers/username_request_controller_spec.rb +0 -35
  655. data/test/spec/controllers/users_controller_spec.rb +0 -427
  656. data/test/spec/helpers/muck_users_helper_spec.rb +0 -70
  657. data/test/spec/mailers/user_mailer_spec.rb +0 -108
  658. data/test/spec/models/access_code_request_spec.rb +0 -105
  659. data/test/spec/models/access_code_spec.rb +0 -117
  660. data/test/spec/models/permission_spec.rb +0 -19
  661. data/test/spec/models/role_spec.rb +0 -18
  662. data/test/spec/models/secure_methods_spec.rb +0 -56
  663. data/test/spec/models/user_spec.rb +0 -433
  664. data/test/spec/spec_helper.rb +0 -5
  665. data/test/test/fixtures/rails.png +0 -0
@@ -1,96 +0,0 @@
1
- /**
2
- * Cookie plugin
3
- *
4
- * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
5
- * Dual licensed under the MIT and GPL licenses:
6
- * http://www.opensource.org/licenses/mit-license.php
7
- * http://www.gnu.org/licenses/gpl.html
8
- *
9
- */
10
-
11
- /**
12
- * Create a cookie with the given name and value and other optional parameters.
13
- *
14
- * @example $.cookie('the_cookie', 'the_value');
15
- * @desc Set the value of a cookie.
16
- * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });
17
- * @desc Create a cookie with all available options.
18
- * @example $.cookie('the_cookie', 'the_value');
19
- * @desc Create a session cookie.
20
- * @example $.cookie('the_cookie', null);
21
- * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain
22
- * used when the cookie was set.
23
- *
24
- * @param String name The name of the cookie.
25
- * @param String value The value of the cookie.
26
- * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
27
- * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
28
- * If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
29
- * If set to null or omitted, the cookie will be a session cookie and will not be retained
30
- * when the the browser exits.
31
- * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
32
- * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
33
- * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
34
- * require a secure protocol (like HTTPS).
35
- * @type undefined
36
- *
37
- * @name $.cookie
38
- * @cat Plugins/Cookie
39
- * @author Klaus Hartl/klaus.hartl@stilbuero.de
40
- */
41
-
42
- /**
43
- * Get the value of a cookie with the given name.
44
- *
45
- * @example $.cookie('the_cookie');
46
- * @desc Get the value of a cookie.
47
- *
48
- * @param String name The name of the cookie.
49
- * @return The value of the cookie.
50
- * @type String
51
- *
52
- * @name $.cookie
53
- * @cat Plugins/Cookie
54
- * @author Klaus Hartl/klaus.hartl@stilbuero.de
55
- */
56
- jQuery.cookie = function(name, value, options) {
57
- if (typeof value != 'undefined') { // name and value given, set cookie
58
- options = options || {};
59
- if (value === null) {
60
- value = '';
61
- options.expires = -1;
62
- }
63
- var expires = '';
64
- if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
65
- var date;
66
- if (typeof options.expires == 'number') {
67
- date = new Date();
68
- date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
69
- } else {
70
- date = options.expires;
71
- }
72
- expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
73
- }
74
- // CAUTION: Needed to parenthesize options.path and options.domain
75
- // in the following expressions, otherwise they evaluate to undefined
76
- // in the packed version for some reason...
77
- var path = options.path ? '; path=' + (options.path) : '';
78
- var domain = options.domain ? '; domain=' + (options.domain) : '';
79
- var secure = options.secure ? '; secure' : '';
80
- document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
81
- } else { // only name given, get cookie
82
- var cookieValue = null;
83
- if (document.cookie && document.cookie != '') {
84
- var cookies = document.cookie.split(';');
85
- for (var i = 0; i < cookies.length; i++) {
86
- var cookie = jQuery.trim(cookies[i]);
87
- // Does this cookie string begin with the name we want?
88
- if (cookie.substring(0, name.length + 1) == (name + '=')) {
89
- cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
90
- break;
91
- }
92
- }
93
- }
94
- return cookieValue;
95
- }
96
- };
@@ -1,46 +0,0 @@
1
- /* This lib is to support fancybox. The default compressed version causes errors with Rails caching.
2
- This version is compressed with http://closure-compiler.appspot.com/home
3
- *
4
- * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
5
- *
6
- * Uses the built in easing capabilities added In jQuery 1.1
7
- * to offer multiple easing options
8
- *
9
- * TERMS OF USE - jQuery Easing
10
- *
11
- * Open source under the BSD License.
12
- *
13
- * Copyright © 2008 George McGinley Smith
14
- * All rights reserved.
15
- *
16
- * Redistribution and use in source and binary forms, with or without modification,
17
- * are permitted provided that the following conditions are met:
18
- *
19
- * Redistributions of source code must retain the above copyright notice, this list of
20
- * conditions and the following disclaimer.
21
- * Redistributions in binary form must reproduce the above copyright notice, this list
22
- * of conditions and the following disclaimer in the documentation and/or other materials
23
- * provided with the distribution.
24
- *
25
- * Neither the name of the author nor the names of contributors may be used to endorse
26
- * or promote products derived from this software without specific prior written permission.
27
- *
28
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
29
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
30
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
31
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
32
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
33
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
34
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
36
- * OF THE POSSIBILITY OF SUCH DAMAGE.
37
- *
38
- */
39
- jQuery.easing.jswing=jQuery.easing.swing;
40
- jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(e,a,c,b,d){return jQuery.easing[jQuery.easing.def](e,a,c,b,d)},easeInQuad:function(e,a,c,b,d){return b*(a/=d)*a+c},easeOutQuad:function(e,a,c,b,d){return-b*(a/=d)*(a-2)+c},easeInOutQuad:function(e,a,c,b,d){if((a/=d/2)<1)return b/2*a*a+c;return-b/2*(--a*(a-2)-1)+c},easeInCubic:function(e,a,c,b,d){return b*(a/=d)*a*a+c},easeOutCubic:function(e,a,c,b,d){return b*((a=a/d-1)*a*a+1)+c},easeInOutCubic:function(e,a,c,b,d){if((a/=d/2)<1)return b/
41
- 2*a*a*a+c;return b/2*((a-=2)*a*a+2)+c},easeInQuart:function(e,a,c,b,d){return b*(a/=d)*a*a*a+c},easeOutQuart:function(e,a,c,b,d){return-b*((a=a/d-1)*a*a*a-1)+c},easeInOutQuart:function(e,a,c,b,d){if((a/=d/2)<1)return b/2*a*a*a*a+c;return-b/2*((a-=2)*a*a*a-2)+c},easeInQuint:function(e,a,c,b,d){return b*(a/=d)*a*a*a*a+c},easeOutQuint:function(e,a,c,b,d){return b*((a=a/d-1)*a*a*a*a+1)+c},easeInOutQuint:function(e,a,c,b,d){if((a/=d/2)<1)return b/2*a*a*a*a*a+c;return b/2*((a-=2)*a*a*a*a+2)+c},easeInSine:function(e,
42
- a,c,b,d){return-b*Math.cos(a/d*(Math.PI/2))+b+c},easeOutSine:function(e,a,c,b,d){return b*Math.sin(a/d*(Math.PI/2))+c},easeInOutSine:function(e,a,c,b,d){return-b/2*(Math.cos(Math.PI*a/d)-1)+c},easeInExpo:function(e,a,c,b,d){return a==0?c:b*Math.pow(2,10*(a/d-1))+c},easeOutExpo:function(e,a,c,b,d){return a==d?c+b:b*(-Math.pow(2,-10*a/d)+1)+c},easeInOutExpo:function(e,a,c,b,d){if(a==0)return c;if(a==d)return c+b;if((a/=d/2)<1)return b/2*Math.pow(2,10*(a-1))+c;return b/2*(-Math.pow(2,-10*--a)+2)+c},
43
- easeInCirc:function(e,a,c,b,d){return-b*(Math.sqrt(1-(a/=d)*a)-1)+c},easeOutCirc:function(e,a,c,b,d){return b*Math.sqrt(1-(a=a/d-1)*a)+c},easeInOutCirc:function(e,a,c,b,d){if((a/=d/2)<1)return-b/2*(Math.sqrt(1-a*a)-1)+c;return b/2*(Math.sqrt(1-(a-=2)*a)+1)+c},easeInElastic:function(e,a,c,b,d){e=1.70158;var f=0,g=b;if(a==0)return c;if((a/=d)==1)return c+b;f||(f=d*0.3);if(g<Math.abs(b)){g=b;e=f/4}else e=f/(2*Math.PI)*Math.asin(b/g);return-(g*Math.pow(2,10*(a-=1))*Math.sin((a*d-e)*2*Math.PI/f))+c},easeOutElastic:function(e,
44
- a,c,b,d){e=1.70158;var f=0,g=b;if(a==0)return c;if((a/=d)==1)return c+b;f||(f=d*0.3);if(g<Math.abs(b)){g=b;e=f/4}else e=f/(2*Math.PI)*Math.asin(b/g);return g*Math.pow(2,-10*a)*Math.sin((a*d-e)*2*Math.PI/f)+b+c},easeInOutElastic:function(e,a,c,b,d){e=1.70158;var f=0,g=b;if(a==0)return c;if((a/=d/2)==2)return c+b;f||(f=d*0.3*1.5);if(g<Math.abs(b)){g=b;e=f/4}else e=f/(2*Math.PI)*Math.asin(b/g);if(a<1)return-0.5*g*Math.pow(2,10*(a-=1))*Math.sin((a*d-e)*2*Math.PI/f)+c;return g*Math.pow(2,-10*(a-=1))*Math.sin((a*
45
- d-e)*2*Math.PI/f)*0.5+b+c},easeInBack:function(e,a,c,b,d,f){if(f==undefined)f=1.70158;return b*(a/=d)*a*((f+1)*a-f)+c},easeOutBack:function(e,a,c,b,d,f){if(f==undefined)f=1.70158;return b*((a=a/d-1)*a*((f+1)*a+f)+1)+c},easeInOutBack:function(e,a,c,b,d,f){if(f==undefined)f=1.70158;if((a/=d/2)<1)return b/2*a*a*(((f*=1.525)+1)*a-f)+c;return b/2*((a-=2)*a*(((f*=1.525)+1)*a+f)+2)+c},easeInBounce:function(e,a,c,b,d){return b-jQuery.easing.easeOutBounce(e,d-a,0,b,d)+c},easeOutBounce:function(e,a,c,b,d){return(a/=
46
- d)<1/2.75?b*7.5625*a*a+c:a<2/2.75?b*(7.5625*(a-=1.5/2.75)*a+0.75)+c:a<2.5/2.75?b*(7.5625*(a-=2.25/2.75)*a+0.9375)+c:b*(7.5625*(a-=2.625/2.75)*a+0.984375)+c},easeInOutBounce:function(e,a,c,b,d){if(a<d/2)return jQuery.easing.easeInBounce(e,a*2,0,b,d)*0.5+c;return jQuery.easing.easeOutBounce(e,a*2-d,0,b,d)*0.5+b*0.5+c}});
@@ -1,46 +0,0 @@
1
- /*
2
- * FancyBox - jQuery Plugin
3
- * Simple and fancy lightbox alternative
4
- *
5
- * Examples and documentation at: http://fancybox.net
6
- *
7
- * Copyright (c) 2008 - 2010 Janis Skarnelis
8
- * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
9
- *
10
- * Version: 1.3.4 (11/11/2010)
11
- * Requires: jQuery v1.3+
12
- *
13
- * Dual licensed under the MIT and GPL licenses:
14
- * http://www.opensource.org/licenses/mit-license.php
15
- * http://www.gnu.org/licenses/gpl.html
16
- */
17
-
18
- ;(function(b){var m,t,u,f,D,j,E,n,z,A,q=0,e={},o=[],p=0,d={},l=[],G=null,v=new Image,J=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\.]\.(swf)\s*$/i,K,L=1,y=0,s="",r,i,h=false,B=b.extend(b("<div/>")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){t.hide();v.onerror=v.onload=null;G&&G.abort();m.empty()},O=function(){if(false===e.onError(o,q,e)){t.hide();h=false}else{e.titleShow=false;e.width="auto";e.height="auto";m.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>');
19
- F()}},I=function(){var a=o[q],c,g,k,C,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));w=e.onStart(o,q,e);if(w===false)h=false;else{if(typeof w=="object")e=b.extend(e,w);k=e.title||(a.nodeName?b(a).attr("title"):a.title)||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(k===""&&e.orig&&e.titleFromAlt)k=e.orig.attr("alt");c=e.href||(a.nodeName?b(a).attr("href"):a.href)||null;if(/^(?:javascript)/i.test(c)||
20
- c=="#")c=null;if(e.type){g=e.type;if(!c)c=e.content}else if(e.content)g="html";else if(c)g=c.match(J)?"image":c.match(W)?"swf":b(a).hasClass("iframe")?"iframe":c.indexOf("#")===0?"inline":"ajax";if(g){if(g=="inline"){a=c.substr(c.indexOf("#"));g=b(a).length>0?"inline":"ajax"}e.type=g;e.href=c;e.title=k;if(e.autoDimensions)if(e.type=="html"||e.type=="inline"||e.type=="ajax"){e.width="auto";e.height="auto"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick=
21
- false;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);m.css("padding",e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(j.children())});switch(g){case "html":m.html(e.content);F();break;case "inline":if(b(a).parent().is("#fancybox-content")===true){h=false;break}b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(j.children())}).bind("fancybox-cancel",
22
- function(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case "image":h=false;b.fancybox.showActivity();v=new Image;v.onerror=function(){O()};v.onload=function(){h=true;v.onerror=v.onload=null;e.width=v.width;e.height=v.height;b("<img />").attr({id:"fancybox-img",src:v.src,alt:e.title}).appendTo(m);Q()};v.src=c;break;case "swf":e.scrolling="no";C='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+e.width+'" height="'+e.height+'"><param name="movie" value="'+c+
23
- '"></param>';P="";b.each(e.swf,function(x,H){C+='<param name="'+x+'" value="'+H+'"></param>';P+=" "+x+'="'+H+'"'});C+='<embed src="'+c+'" type="application/x-shockwave-flash" width="'+e.width+'" height="'+e.height+'"'+P+"></embed></object>";m.html(C);F();break;case "ajax":h=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;G=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(x){x.status>0&&O()},success:function(x,H,R){if((typeof R=="object"?R:G).status==200){if(typeof e.ajax.win==
24
- "function"){w=e.ajax.win(c,x,H,R);if(w===false){t.hide();return}else if(typeof w=="string"||typeof w=="object")x=w}m.html(x);F()}}}));break;case "iframe":Q()}}else O()}},F=function(){var a=e.width,c=e.height;a=a.toString().indexOf("%")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+"px":a=="auto"?"auto":a+"px";c=c.toString().indexOf("%")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+"px":c=="auto"?"auto":c+"px";m.wrapInner('<div style="width:'+a+";height:"+c+
25
- ";overflow: "+(e.scrolling=="auto"?"auto":e.scrolling=="yes"?"scroll":"hidden")+';position:relative;"></div>');e.width=m.width();e.height=m.height();Q()},Q=function(){var a,c;t.hide();if(f.is(":visible")&&false===d.onCleanup(l,p,d)){b.event.trigger("fancybox-cancel");h=false}else{h=true;b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");f.is(":visible")&&d.titlePosition!=="outside"&&f.css("height",f.height());l=o;p=q;d=e;if(d.overlayShow){u.css({"background-color":d.overlayColor,
26
- opacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?"pointer":"auto",height:b(document).height()});if(!u.is(":visible")){M&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});u.show()}}else u.hide();i=X();s=d.title||"";y=0;n.empty().removeAttr("style").removeClass();if(d.titleShow!==false){if(b.isFunction(d.titleFormat))a=d.titleFormat(s,l,p,d);else a=s&&s.length?
27
- d.titlePosition=="float"?'<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">'+s+'</td><td id="fancybox-title-float-right"></td></tr></table>':'<div id="fancybox-title-'+d.titlePosition+'">'+s+"</div>":false;s=a;if(!(!s||s==="")){n.addClass("fancybox-title-"+d.titlePosition).html(s).appendTo("body").show();switch(d.titlePosition){case "inside":n.css({width:i.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding});
28
- y=n.outerHeight(true);n.appendTo(D);i.height+=y;break;case "over":n.css({marginLeft:d.padding,width:i.width-d.padding*2,bottom:d.padding}).appendTo(D);break;case "float":n.css("left",parseInt((n.width()-i.width-40)/2,10)*-1).appendTo(f);break;default:n.css({width:i.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f)}}}n.hide();if(f.is(":visible")){b(E.add(z).add(A)).hide();a=f.position();r={top:a.top,left:a.left,width:f.width(),height:f.height()};c=r.width==i.width&&r.height==
29
- i.height;j.fadeTo(d.changeFade,0.3,function(){var g=function(){j.html(m.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger("fancybox-change");j.empty().removeAttr("filter").css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});if(c)g();else{B.prop=0;b(B).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:g})}})}else{f.removeAttr("style");j.css("border-width",d.padding);if(d.transitionIn=="elastic"){r=V();j.html(m.contents());
30
- f.show();if(d.opacity)i.opacity=0;B.prop=0;b(B).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition=="inside"&&y>0&&n.show();j.css({width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2}).html(m.contents());f.css(i).fadeIn(d.transitionIn=="none"?0:d.speedIn,S)}}}},Y=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind("keydown.fb",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if((a.keyCode==
31
- 37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!=="INPUT"&&a.target.tagName!=="TEXTAREA"&&a.target.tagName!=="SELECT"){a.preventDefault();b.fancybox[a.keyCode==37?"prev":"next"]()}});if(d.showNavArrows){if(d.cyclic&&l.length>1||p!==0)z.show();if(d.cyclic&&l.length>1||p!=l.length-1)A.show()}else{z.hide();A.hide()}},S=function(){if(!b.support.opacity){j.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}e.autoDimensions&&j.css("height","auto");f.css("height","auto");
32
- s&&s.length&&n.show();d.showCloseButton&&E.show();Y();d.hideOnContentClick&&j.bind("click",b.fancybox.close);d.hideOnOverlayClick&&u.bind("click",b.fancybox.close);b(window).bind("resize.fb",b.fancybox.resize);d.centerOnScroll&&b(window).bind("scroll.fb",b.fancybox.center);if(d.type=="iframe")b('<iframe id="fancybox-frame" name="fancybox-frame'+(new Date).getTime()+'" frameborder="0" hspace="0" '+(b.browser.msie?'allowtransparency="true""':"")+' scrolling="'+e.scrolling+'" src="'+d.href+'"></iframe>').appendTo(j);
33
- f.show();h=false;b.fancybox.center();d.onComplete(l,p,d);var a,c;if(l.length-1>p){a=l[p+1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}if(p>0){a=l[p-1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(r.width+(i.width-r.width)*a,10),height:parseInt(r.height+(i.height-r.height)*a,10),top:parseInt(r.top+(i.top-r.top)*a,10),left:parseInt(r.left+(i.left-r.left)*a,10)};if(typeof i.opacity!=="undefined")c.opacity=a<0.5?0.5:a;f.css(c);
34
- j.css({width:c.width-d.padding*2,height:c.height-y*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},X=function(){var a=U(),c={},g=d.autoScale,k=d.padding*2;c.width=d.width.toString().indexOf("%")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+k;c.height=d.height.toString().indexOf("%")>-1?parseInt(a[1]*parseFloat(d.height)/100,10):d.height+k;if(g&&(c.width>a[0]||c.height>a[1]))if(e.type==
35
- "image"||e.type=="swf"){g=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-k)/g+k,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-k)*g+k,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){c=a.offset();c.top+=parseInt(a.css("paddingTop"),
36
- 10)||0;c.left+=parseInt(a.css("paddingLeft"),10)||0;c.top+=parseInt(a.css("border-top-width"),10)||0;c.left+=parseInt(a.css("border-left-width"),10)||0;c.width=a.width();c.height=a.height();c={width:c.width+d.padding*2,height:c.height+d.padding*2,top:c.top-d.padding-20,left:c.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+a[0]*0.5,10)}}return c},Z=function(){if(t.is(":visible")){b("div",t).css("top",L*-40+"px");L=(L+1)%12}else clearInterval(K)};
37
- b.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(c){c.preventDefault();if(!h){h=true;b(this).blur();o=[];q=0;c=b(this).attr("rel")||"";if(!c||c==""||c==="nofollow")o.push(this);else{o=b("a[rel="+c+"], area[rel="+c+"]");q=o.index(this)}I()}});return this};b.fancybox=function(a,c){var g;if(!h){h=true;g=typeof c!=="undefined"?c:{};o=[];q=parseInt(g.index,10)||0;if(b.isArray(a)){for(var k=
38
- 0,C=a.length;k<C;k++)if(typeof a[k]=="object")b(a[k]).data("fancybox",b.extend({},g,a[k]));else a[k]=b({}).data("fancybox",b.extend({content:a[k]},g));o=jQuery.merge(o,a)}else{if(typeof a=="object")b(a).data("fancybox",b.extend({},g,a));else a=b({}).data("fancybox",b.extend({content:a},g));o.push(a)}if(q>o.length||q<0)q=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);t.show();K=setInterval(Z,66)};b.fancybox.hideActivity=function(){t.hide()};b.fancybox.next=function(){return b.fancybox.pos(p+
39
- 1)};b.fancybox.prev=function(){return b.fancybox.pos(p-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a);o=l;if(a>-1&&a<l.length){q=a;I()}else if(d.cyclic&&l.length>1){q=a>=l.length?0:l.length-1;I()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger("fancybox-cancel");N();e.onCancel(o,q,e);h=false}};b.fancybox.close=function(){function a(){u.fadeOut("fast");n.empty().hide();f.hide();b.event.trigger("fancybox-cleanup");j.empty();d.onClosed(l,p,d);l=e=[];p=q=0;d=e={};h=false}if(!(h||f.is(":hidden"))){h=
40
- true;if(d&&false===d.onCleanup(l,p,d))h=false;else{N();b(E.add(z).add(A)).hide();b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");j.find("iframe").attr("src",M&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank");d.titlePosition!=="inside"&&n.empty();f.stop();if(d.transitionOut=="elastic"){r=V();var c=f.position();i={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)i.opacity=1;n.empty().hide();B.prop=1;
41
- b(B).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut=="none"?0:d.speedOut,a)}}};b.fancybox.resize=function(){u.is(":visible")&&u.css("height",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,g;if(!h){g=a===true?1:0;c=U();!g&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-20,c[3]+(c[1]-j.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-j.width()-40)*0.5-
42
- d.padding))},typeof a=="number"?a:200)}};b.fancybox.init=function(){if(!b("#fancybox-wrap").length){b("body").append(m=b('<div id="fancybox-tmp"></div>'),t=b('<div id="fancybox-loading"><div></div></div>'),u=b('<div id="fancybox-overlay"></div>'),f=b('<div id="fancybox-wrap"></div>'));D=b('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(f);
43
- D.append(j=b('<div id="fancybox-content"></div>'),E=b('<a id="fancybox-close"></a>'),n=b('<div id="fancybox-title"></div>'),z=b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),A=b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>'));E.click(b.fancybox.close);t.click(b.fancybox.cancel);z.click(function(a){a.preventDefault();b.fancybox.prev()});A.click(function(a){a.preventDefault();b.fancybox.next()});
44
- b.fn.mousewheel&&f.bind("mousewheel.fb",function(a,c){if(h)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?"prev":"next"]()}});b.support.opacity||f.addClass("fancybox-ie");if(M){t.addClass("fancybox-ie6");f.addClass("fancybox-ie6");b('<iframe id="fancybox-hide-sel-frame" src="'+(/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank")+'" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(D)}}};
45
- b.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing",
46
- easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery);
@@ -1,675 +0,0 @@
1
- /*!
2
- * jQuery Form Plugin
3
- * version: 2.43 (12-MAR-2010)
4
- * @requires jQuery v1.3.2 or later
5
- *
6
- * Examples and documentation at: http://malsup.com/jquery/form/
7
- * Dual licensed under the MIT and GPL licenses:
8
- * http://www.opensource.org/licenses/mit-license.php
9
- * http://www.gnu.org/licenses/gpl.html
10
- */
11
- ;(function($) {
12
-
13
- /*
14
- Usage Note:
15
- -----------
16
- Do not use both ajaxSubmit and ajaxForm on the same form. These
17
- functions are intended to be exclusive. Use ajaxSubmit if you want
18
- to bind your own submit handler to the form. For example,
19
-
20
- $(document).ready(function() {
21
- $('#myForm').bind('submit', function() {
22
- $(this).ajaxSubmit({
23
- target: '#output'
24
- });
25
- return false; // <-- important!
26
- });
27
- });
28
-
29
- Use ajaxForm when you want the plugin to manage all the event binding
30
- for you. For example,
31
-
32
- $(document).ready(function() {
33
- $('#myForm').ajaxForm({
34
- target: '#output'
35
- });
36
- });
37
-
38
- When using ajaxForm, the ajaxSubmit function will be invoked for you
39
- at the appropriate time.
40
- */
41
-
42
- /**
43
- * ajaxSubmit() provides a mechanism for immediately submitting
44
- * an HTML form using AJAX.
45
- */
46
- $.fn.ajaxSubmit = function(options) {
47
- // fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
48
- if (!this.length) {
49
- log('ajaxSubmit: skipping submit process - no element selected');
50
- return this;
51
- }
52
-
53
- if (typeof options == 'function')
54
- options = { success: options };
55
-
56
- var url = $.trim(this.attr('action'));
57
- if (url) {
58
- // clean url (don't include hash vaue)
59
- url = (url.match(/^([^#]+)/)||[])[1];
60
- }
61
- url = url || window.location.href || '';
62
-
63
- options = $.extend({
64
- url: url,
65
- type: this.attr('method') || 'GET',
66
- iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
67
- }, options || {});
68
-
69
- // hook for manipulating the form data before it is extracted;
70
- // convenient for use with rich editors like tinyMCE or FCKEditor
71
- var veto = {};
72
- this.trigger('form-pre-serialize', [this, options, veto]);
73
- if (veto.veto) {
74
- log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
75
- return this;
76
- }
77
-
78
- // provide opportunity to alter form data before it is serialized
79
- if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
80
- log('ajaxSubmit: submit aborted via beforeSerialize callback');
81
- return this;
82
- }
83
-
84
- var a = this.formToArray(options.semantic);
85
- if (options.data) {
86
- options.extraData = options.data;
87
- for (var n in options.data) {
88
- if(options.data[n] instanceof Array) {
89
- for (var k in options.data[n])
90
- a.push( { name: n, value: options.data[n][k] } );
91
- }
92
- else
93
- a.push( { name: n, value: options.data[n] } );
94
- }
95
- }
96
-
97
- // give pre-submit callback an opportunity to abort the submit
98
- if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
99
- log('ajaxSubmit: submit aborted via beforeSubmit callback');
100
- return this;
101
- }
102
-
103
- // fire vetoable 'validate' event
104
- this.trigger('form-submit-validate', [a, this, options, veto]);
105
- if (veto.veto) {
106
- log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
107
- return this;
108
- }
109
-
110
- var q = $.param(a);
111
-
112
- if (options.type.toUpperCase() == 'GET') {
113
- options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
114
- options.data = null; // data is null for 'get'
115
- }
116
- else
117
- options.data = q; // data is the query string for 'post'
118
-
119
- var $form = this, callbacks = [];
120
- if (options.resetForm) callbacks.push(function() { $form.resetForm(); });
121
- if (options.clearForm) callbacks.push(function() { $form.clearForm(); });
122
-
123
- // perform a load on the target only if dataType is not provided
124
- if (!options.dataType && options.target) {
125
- var oldSuccess = options.success || function(){};
126
- callbacks.push(function(data) {
127
- var fn = options.replaceTarget ? 'replaceWith' : 'html';
128
- $(options.target)[fn](data).each(oldSuccess, arguments);
129
- });
130
- }
131
- else if (options.success)
132
- callbacks.push(options.success);
133
-
134
- options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
135
- for (var i=0, max=callbacks.length; i < max; i++)
136
- callbacks[i].apply(options, [data, status, xhr || $form, $form]);
137
- };
138
-
139
- // are there files to upload?
140
- var files = $('input:file', this).fieldValue();
141
- var found = false;
142
- for (var j=0; j < files.length; j++)
143
- if (files[j])
144
- found = true;
145
-
146
- var multipart = false;
147
- // var mp = 'multipart/form-data';
148
- // multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
149
-
150
- // options.iframe allows user to force iframe mode
151
- // 06-NOV-09: now defaulting to iframe mode if file input is detected
152
- if ((files.length && options.iframe !== false) || options.iframe || found || multipart) {
153
- // hack to fix Safari hang (thanks to Tim Molendijk for this)
154
- // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
155
- if (options.closeKeepAlive)
156
- $.get(options.closeKeepAlive, fileUpload);
157
- else
158
- fileUpload();
159
- }
160
- else
161
- $.ajax(options);
162
-
163
- // fire 'notify' event
164
- this.trigger('form-submit-notify', [this, options]);
165
- return this;
166
-
167
-
168
- // private function for handling file uploads (hat tip to YAHOO!)
169
- function fileUpload() {
170
- var form = $form[0];
171
-
172
- if ($(':input[name=submit]', form).length) {
173
- alert('Error: Form elements must not be named "submit".');
174
- return;
175
- }
176
-
177
- var opts = $.extend({}, $.ajaxSettings, options);
178
- var s = $.extend(true, {}, $.extend(true, {}, $.ajaxSettings), opts);
179
-
180
- var id = 'jqFormIO' + (new Date().getTime());
181
- var $io = $('<iframe id="' + id + '" name="' + id + '" src="'+ opts.iframeSrc +'" onload="(jQuery(this).data(\'form-plugin-onload\'))()" />');
182
- var io = $io[0];
183
-
184
- $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
185
-
186
- var xhr = { // mock object
187
- aborted: 0,
188
- responseText: null,
189
- responseXML: null,
190
- status: 0,
191
- statusText: 'n/a',
192
- getAllResponseHeaders: function() {},
193
- getResponseHeader: function() {},
194
- setRequestHeader: function() {},
195
- abort: function() {
196
- this.aborted = 1;
197
- $io.attr('src', opts.iframeSrc); // abort op in progress
198
- }
199
- };
200
-
201
- var g = opts.global;
202
- // trigger ajax global events so that activity/block indicators work like normal
203
- if (g && ! $.active++) $.event.trigger("ajaxStart");
204
- if (g) $.event.trigger("ajaxSend", [xhr, opts]);
205
-
206
- if (s.beforeSend && s.beforeSend(xhr, s) === false) {
207
- s.global && $.active--;
208
- return;
209
- }
210
- if (xhr.aborted)
211
- return;
212
-
213
- var cbInvoked = false;
214
- var timedOut = 0;
215
-
216
- // add submitting element to data if we know it
217
- var sub = form.clk;
218
- if (sub) {
219
- var n = sub.name;
220
- if (n && !sub.disabled) {
221
- opts.extraData = opts.extraData || {};
222
- opts.extraData[n] = sub.value;
223
- if (sub.type == "image") {
224
- opts.extraData[n+'.x'] = form.clk_x;
225
- opts.extraData[n+'.y'] = form.clk_y;
226
- }
227
- }
228
- }
229
-
230
- // take a breath so that pending repaints get some cpu time before the upload starts
231
- function doSubmit() {
232
- // make sure form attrs are set
233
- var t = $form.attr('target'), a = $form.attr('action');
234
-
235
- // update form attrs in IE friendly way
236
- form.setAttribute('target',id);
237
- if (form.getAttribute('method') != 'POST')
238
- form.setAttribute('method', 'POST');
239
- if (form.getAttribute('action') != opts.url)
240
- form.setAttribute('action', opts.url);
241
-
242
- // ie borks in some cases when setting encoding
243
- if (! opts.skipEncodingOverride) {
244
- $form.attr({
245
- encoding: 'multipart/form-data',
246
- enctype: 'multipart/form-data'
247
- });
248
- }
249
-
250
- // support timout
251
- if (opts.timeout)
252
- setTimeout(function() { timedOut = true; cb(); }, opts.timeout);
253
-
254
- // add "extra" data to form if provided in options
255
- var extraInputs = [];
256
- try {
257
- if (opts.extraData)
258
- for (var n in opts.extraData)
259
- extraInputs.push(
260
- $('<input type="hidden" name="'+n+'" value="'+opts.extraData[n]+'" />')
261
- .appendTo(form)[0]);
262
-
263
- // add iframe to doc and submit the form
264
- $io.appendTo('body');
265
- $io.data('form-plugin-onload', cb);
266
- form.submit();
267
- }
268
- finally {
269
- // reset attrs and remove "extra" input elements
270
- form.setAttribute('action',a);
271
- t ? form.setAttribute('target', t) : $form.removeAttr('target');
272
- $(extraInputs).remove();
273
- }
274
- };
275
-
276
- if (opts.forceSync)
277
- doSubmit();
278
- else
279
- setTimeout(doSubmit, 10); // this lets dom updates render
280
-
281
- var domCheckCount = 100;
282
-
283
- function cb() {
284
- if (cbInvoked)
285
- return;
286
-
287
- var ok = true;
288
- try {
289
- if (timedOut) throw 'timeout';
290
- // extract the server response from the iframe
291
- var data, doc;
292
-
293
- doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document;
294
-
295
- var isXml = opts.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
296
- log('isXml='+isXml);
297
- if (!isXml && (doc.body == null || doc.body.innerHTML == '')) {
298
- if (--domCheckCount) {
299
- // in some browsers (Opera) the iframe DOM is not always traversable when
300
- // the onload callback fires, so we loop a bit to accommodate
301
- log('requeing onLoad callback, DOM not available');
302
- setTimeout(cb, 250);
303
- return;
304
- }
305
- log('Could not access iframe DOM after 100 tries.');
306
- return;
307
- }
308
-
309
- log('response detected');
310
- cbInvoked = true;
311
- xhr.responseText = doc.body ? doc.body.innerHTML : null;
312
- xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
313
- xhr.getResponseHeader = function(header){
314
- var headers = {'content-type': opts.dataType};
315
- return headers[header];
316
- };
317
-
318
- if (opts.dataType == 'json' || opts.dataType == 'script') {
319
- // see if user embedded response in textarea
320
- var ta = doc.getElementsByTagName('textarea')[0];
321
- if (ta)
322
- xhr.responseText = ta.value;
323
- else {
324
- // account for browsers injecting pre around json response
325
- var pre = doc.getElementsByTagName('pre')[0];
326
- if (pre)
327
- xhr.responseText = pre.innerHTML;
328
- }
329
- }
330
- else if (opts.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) {
331
- xhr.responseXML = toXml(xhr.responseText);
332
- }
333
- data = $.httpData(xhr, opts.dataType);
334
- }
335
- catch(e){
336
- log('error caught:',e);
337
- ok = false;
338
- xhr.error = e;
339
- $.handleError(opts, xhr, 'error', e);
340
- }
341
-
342
- // ordering of these callbacks/triggers is odd, but that's how $.ajax does it
343
- if (ok) {
344
- opts.success(data, 'success');
345
- if (g) $.event.trigger("ajaxSuccess", [xhr, opts]);
346
- }
347
- if (g) $.event.trigger("ajaxComplete", [xhr, opts]);
348
- if (g && ! --$.active) $.event.trigger("ajaxStop");
349
- if (opts.complete) opts.complete(xhr, ok ? 'success' : 'error');
350
-
351
- // clean up
352
- setTimeout(function() {
353
- $io.removeData('form-plugin-onload');
354
- $io.remove();
355
- xhr.responseXML = null;
356
- }, 100);
357
- };
358
-
359
- function toXml(s, doc) {
360
- if (window.ActiveXObject) {
361
- doc = new ActiveXObject('Microsoft.XMLDOM');
362
- doc.async = 'false';
363
- doc.loadXML(s);
364
- }
365
- else
366
- doc = (new DOMParser()).parseFromString(s, 'text/xml');
367
- return (doc && doc.documentElement && doc.documentElement.tagName != 'parsererror') ? doc : null;
368
- };
369
- };
370
- };
371
-
372
- /**
373
- * ajaxForm() provides a mechanism for fully automating form submission.
374
- *
375
- * The advantages of using this method instead of ajaxSubmit() are:
376
- *
377
- * 1: This method will include coordinates for <input type="image" /> elements (if the element
378
- * is used to submit the form).
379
- * 2. This method will include the submit element's name/value data (for the element that was
380
- * used to submit the form).
381
- * 3. This method binds the submit() method to the form for you.
382
- *
383
- * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
384
- * passes the options argument along after properly binding events for submit elements and
385
- * the form itself.
386
- */
387
- $.fn.ajaxForm = function(options) {
388
- return this.ajaxFormUnbind().bind('submit.form-plugin', function(e) {
389
- e.preventDefault();
390
- $(this).ajaxSubmit(options);
391
- }).bind('click.form-plugin', function(e) {
392
- var target = e.target;
393
- var $el = $(target);
394
- if (!($el.is(":submit,input:image"))) {
395
- // is this a child element of the submit el? (ex: a span within a button)
396
- var t = $el.closest(':submit');
397
- if (t.length == 0)
398
- return;
399
- target = t[0];
400
- }
401
- var form = this;
402
- form.clk = target;
403
- if (target.type == 'image') {
404
- if (e.offsetX != undefined) {
405
- form.clk_x = e.offsetX;
406
- form.clk_y = e.offsetY;
407
- } else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin
408
- var offset = $el.offset();
409
- form.clk_x = e.pageX - offset.left;
410
- form.clk_y = e.pageY - offset.top;
411
- } else {
412
- form.clk_x = e.pageX - target.offsetLeft;
413
- form.clk_y = e.pageY - target.offsetTop;
414
- }
415
- }
416
- // clear form vars
417
- setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
418
- });
419
- };
420
-
421
- // ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
422
- $.fn.ajaxFormUnbind = function() {
423
- return this.unbind('submit.form-plugin click.form-plugin');
424
- };
425
-
426
- /**
427
- * formToArray() gathers form element data into an array of objects that can
428
- * be passed to any of the following ajax functions: $.get, $.post, or load.
429
- * Each object in the array has both a 'name' and 'value' property. An example of
430
- * an array for a simple login form might be:
431
- *
432
- * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
433
- *
434
- * It is this array that is passed to pre-submit callback functions provided to the
435
- * ajaxSubmit() and ajaxForm() methods.
436
- */
437
- $.fn.formToArray = function(semantic) {
438
- var a = [];
439
- if (this.length == 0) return a;
440
-
441
- var form = this[0];
442
- var els = semantic ? form.getElementsByTagName('*') : form.elements;
443
- if (!els) return a;
444
- for(var i=0, max=els.length; i < max; i++) {
445
- var el = els[i];
446
- var n = el.name;
447
- if (!n) continue;
448
-
449
- if (semantic && form.clk && el.type == "image") {
450
- // handle image inputs on the fly when semantic == true
451
- if(!el.disabled && form.clk == el) {
452
- a.push({name: n, value: $(el).val()});
453
- a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
454
- }
455
- continue;
456
- }
457
-
458
- var v = $.fieldValue(el, true);
459
- if (v && v.constructor == Array) {
460
- for(var j=0, jmax=v.length; j < jmax; j++)
461
- a.push({name: n, value: v[j]});
462
- }
463
- else if (v !== null && typeof v != 'undefined')
464
- a.push({name: n, value: v});
465
- }
466
-
467
- if (!semantic && form.clk) {
468
- // input type=='image' are not found in elements array! handle it here
469
- var $input = $(form.clk), input = $input[0], n = input.name;
470
- if (n && !input.disabled && input.type == 'image') {
471
- a.push({name: n, value: $input.val()});
472
- a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
473
- }
474
- }
475
- return a;
476
- };
477
-
478
- /**
479
- * Serializes form data into a 'submittable' string. This method will return a string
480
- * in the format: name1=value1&amp;name2=value2
481
- */
482
- $.fn.formSerialize = function(semantic) {
483
- //hand off to jQuery.param for proper encoding
484
- return $.param(this.formToArray(semantic));
485
- };
486
-
487
- /**
488
- * Serializes all field elements in the jQuery object into a query string.
489
- * This method will return a string in the format: name1=value1&amp;name2=value2
490
- */
491
- $.fn.fieldSerialize = function(successful) {
492
- var a = [];
493
- this.each(function() {
494
- var n = this.name;
495
- if (!n) return;
496
- var v = $.fieldValue(this, successful);
497
- if (v && v.constructor == Array) {
498
- for (var i=0,max=v.length; i < max; i++)
499
- a.push({name: n, value: v[i]});
500
- }
501
- else if (v !== null && typeof v != 'undefined')
502
- a.push({name: this.name, value: v});
503
- });
504
- //hand off to jQuery.param for proper encoding
505
- return $.param(a);
506
- };
507
-
508
- /**
509
- * Returns the value(s) of the element in the matched set. For example, consider the following form:
510
- *
511
- * <form><fieldset>
512
- * <input name="A" type="text" />
513
- * <input name="A" type="text" />
514
- * <input name="B" type="checkbox" value="B1" />
515
- * <input name="B" type="checkbox" value="B2"/>
516
- * <input name="C" type="radio" value="C1" />
517
- * <input name="C" type="radio" value="C2" />
518
- * </fieldset></form>
519
- *
520
- * var v = $(':text').fieldValue();
521
- * // if no values are entered into the text inputs
522
- * v == ['','']
523
- * // if values entered into the text inputs are 'foo' and 'bar'
524
- * v == ['foo','bar']
525
- *
526
- * var v = $(':checkbox').fieldValue();
527
- * // if neither checkbox is checked
528
- * v === undefined
529
- * // if both checkboxes are checked
530
- * v == ['B1', 'B2']
531
- *
532
- * var v = $(':radio').fieldValue();
533
- * // if neither radio is checked
534
- * v === undefined
535
- * // if first radio is checked
536
- * v == ['C1']
537
- *
538
- * The successful argument controls whether or not the field element must be 'successful'
539
- * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
540
- * The default value of the successful argument is true. If this value is false the value(s)
541
- * for each element is returned.
542
- *
543
- * Note: This method *always* returns an array. If no valid value can be determined the
544
- * array will be empty, otherwise it will contain one or more values.
545
- */
546
- $.fn.fieldValue = function(successful) {
547
- for (var val=[], i=0, max=this.length; i < max; i++) {
548
- var el = this[i];
549
- var v = $.fieldValue(el, successful);
550
- if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length))
551
- continue;
552
- v.constructor == Array ? $.merge(val, v) : val.push(v);
553
- }
554
- return val;
555
- };
556
-
557
- /**
558
- * Returns the value of the field element.
559
- */
560
- $.fieldValue = function(el, successful) {
561
- var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
562
- if (typeof successful == 'undefined') successful = true;
563
-
564
- if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
565
- (t == 'checkbox' || t == 'radio') && !el.checked ||
566
- (t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
567
- tag == 'select' && el.selectedIndex == -1))
568
- return null;
569
-
570
- if (tag == 'select') {
571
- var index = el.selectedIndex;
572
- if (index < 0) return null;
573
- var a = [], ops = el.options;
574
- var one = (t == 'select-one');
575
- var max = (one ? index+1 : ops.length);
576
- for(var i=(one ? index : 0); i < max; i++) {
577
- var op = ops[i];
578
- if (op.selected) {
579
- var v = op.value;
580
- if (!v) // extra pain for IE...
581
- v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
582
- if (one) return v;
583
- a.push(v);
584
- }
585
- }
586
- return a;
587
- }
588
- return el.value;
589
- };
590
-
591
- /**
592
- * Clears the form data. Takes the following actions on the form's input fields:
593
- * - input text fields will have their 'value' property set to the empty string
594
- * - select elements will have their 'selectedIndex' property set to -1
595
- * - checkbox and radio inputs will have their 'checked' property set to false
596
- * - inputs of type submit, button, reset, and hidden will *not* be effected
597
- * - button elements will *not* be effected
598
- */
599
- $.fn.clearForm = function() {
600
- return this.each(function() {
601
- $('input,select,textarea', this).clearFields();
602
- });
603
- };
604
-
605
- /**
606
- * Clears the selected form elements.
607
- */
608
- $.fn.clearFields = $.fn.clearInputs = function() {
609
- return this.each(function() {
610
- var t = this.type, tag = this.tagName.toLowerCase();
611
- if (t == 'text' || t == 'password' || tag == 'textarea')
612
- this.value = '';
613
- else if (t == 'checkbox' || t == 'radio')
614
- this.checked = false;
615
- else if (tag == 'select')
616
- this.selectedIndex = -1;
617
- });
618
- };
619
-
620
- /**
621
- * Resets the form data. Causes all form elements to be reset to their original value.
622
- */
623
- $.fn.resetForm = function() {
624
- return this.each(function() {
625
- // guard against an input with the name of 'reset'
626
- // note that IE reports the reset function as an 'object'
627
- if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType))
628
- this.reset();
629
- });
630
- };
631
-
632
- /**
633
- * Enables or disables any matching elements.
634
- */
635
- $.fn.enable = function(b) {
636
- if (b == undefined) b = true;
637
- return this.each(function() {
638
- this.disabled = !b;
639
- });
640
- };
641
-
642
- /**
643
- * Checks/unchecks any matching checkboxes or radio buttons and
644
- * selects/deselects and matching option elements.
645
- */
646
- $.fn.selected = function(select) {
647
- if (select == undefined) select = true;
648
- return this.each(function() {
649
- var t = this.type;
650
- if (t == 'checkbox' || t == 'radio')
651
- this.checked = select;
652
- else if (this.tagName.toLowerCase() == 'option') {
653
- var $sel = $(this).parent('select');
654
- if (select && $sel[0] && $sel[0].type == 'select-one') {
655
- // deselect all other options
656
- $sel.find('option').selected(false);
657
- }
658
- this.selected = select;
659
- }
660
- });
661
- };
662
-
663
- // helper fn for console logging
664
- // set $.fn.ajaxSubmit.debug to true to enable debug logging
665
- function log() {
666
- if ($.fn.ajaxSubmit.debug) {
667
- var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
668
- if (window.console && window.console.log)
669
- window.console.log(msg);
670
- else if (window.opera && window.opera.postError)
671
- window.opera.postError(msg);
672
- }
673
- };
674
-
675
- })(jQuery);