activeldap 1.2.3 → 1.2.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (319) hide show
  1. data/CHANGES +6 -0
  2. data/README +1 -0
  3. data/lib/active_ldap/get_text_support.rb +3 -1
  4. data/lib/active_ldap.rb +1 -1
  5. metadata +5 -321
  6. data/examples/al-admin/README +0 -182
  7. data/examples/al-admin/Rakefile +0 -16
  8. data/examples/al-admin/app/controllers/account_controller.rb +0 -60
  9. data/examples/al-admin/app/controllers/application_controller.rb +0 -46
  10. data/examples/al-admin/app/controllers/attributes_controller.rb +0 -17
  11. data/examples/al-admin/app/controllers/directory_controller.rb +0 -49
  12. data/examples/al-admin/app/controllers/object_classes_controller.rb +0 -17
  13. data/examples/al-admin/app/controllers/syntaxes_controller.rb +0 -17
  14. data/examples/al-admin/app/controllers/users_controller.rb +0 -66
  15. data/examples/al-admin/app/controllers/welcome_controller.rb +0 -12
  16. data/examples/al-admin/app/helpers/account_helper.rb +0 -2
  17. data/examples/al-admin/app/helpers/application_helper.rb +0 -46
  18. data/examples/al-admin/app/helpers/attributes_helper.rb +0 -15
  19. data/examples/al-admin/app/helpers/directory_helper.rb +0 -7
  20. data/examples/al-admin/app/helpers/object_classes_helper.rb +0 -10
  21. data/examples/al-admin/app/helpers/syntaxes_helper.rb +0 -10
  22. data/examples/al-admin/app/helpers/url_helper.rb +0 -17
  23. data/examples/al-admin/app/helpers/users_helper.rb +0 -17
  24. data/examples/al-admin/app/helpers/welcome_helper.rb +0 -2
  25. data/examples/al-admin/app/models/entry.rb +0 -23
  26. data/examples/al-admin/app/models/ldap_user.rb +0 -58
  27. data/examples/al-admin/app/models/user.rb +0 -91
  28. data/examples/al-admin/app/views/_entry/_attributes_information.html.erb +0 -29
  29. data/examples/al-admin/app/views/_entry/_entry.html.erb +0 -15
  30. data/examples/al-admin/app/views/_schema/_aliases.html.erb +0 -7
  31. data/examples/al-admin/app/views/_switcher/_after.html.erb +0 -2
  32. data/examples/al-admin/app/views/_switcher/_before.html.erb +0 -5
  33. data/examples/al-admin/app/views/account/login.html.erb +0 -26
  34. data/examples/al-admin/app/views/account/sign_up.html.erb +0 -29
  35. data/examples/al-admin/app/views/attributes/_attributes.html.erb +0 -19
  36. data/examples/al-admin/app/views/attributes/_detail.html.erb +0 -29
  37. data/examples/al-admin/app/views/attributes/index.html.erb +0 -3
  38. data/examples/al-admin/app/views/attributes/show.html.erb +0 -31
  39. data/examples/al-admin/app/views/directory/_tree.html.erb +0 -10
  40. data/examples/al-admin/app/views/directory/_tree_view_js.html.erb +0 -25
  41. data/examples/al-admin/app/views/directory/index.html.erb +0 -13
  42. data/examples/al-admin/app/views/directory/populate.html.erb +0 -2
  43. data/examples/al-admin/app/views/layouts/_footer.html.erb +0 -11
  44. data/examples/al-admin/app/views/layouts/_header_menu.html.erb +0 -10
  45. data/examples/al-admin/app/views/layouts/_main_menu.html.erb +0 -18
  46. data/examples/al-admin/app/views/layouts/application.html.erb +0 -57
  47. data/examples/al-admin/app/views/object_classes/_attributes.html.erb +0 -28
  48. data/examples/al-admin/app/views/object_classes/_object_classes.html.erb +0 -19
  49. data/examples/al-admin/app/views/object_classes/index.html.erb +0 -3
  50. data/examples/al-admin/app/views/object_classes/show.html.erb +0 -39
  51. data/examples/al-admin/app/views/syntaxes/_detail.html.erb +0 -14
  52. data/examples/al-admin/app/views/syntaxes/_syntaxes.html.erb +0 -19
  53. data/examples/al-admin/app/views/syntaxes/index.html.erb +0 -3
  54. data/examples/al-admin/app/views/syntaxes/show.html.erb +0 -22
  55. data/examples/al-admin/app/views/users/_attributes_update_form.html.erb +0 -42
  56. data/examples/al-admin/app/views/users/_form.html.erb +0 -13
  57. data/examples/al-admin/app/views/users/_object_classes_update_form.html.erb +0 -46
  58. data/examples/al-admin/app/views/users/_password_change_form.html.erb +0 -20
  59. data/examples/al-admin/app/views/users/edit.html.erb +0 -15
  60. data/examples/al-admin/app/views/users/index.html.erb +0 -10
  61. data/examples/al-admin/app/views/users/show.html.erb +0 -11
  62. data/examples/al-admin/app/views/welcome/index.html.erb +0 -13
  63. data/examples/al-admin/config/boot.rb +0 -110
  64. data/examples/al-admin/config/database.yml.example +0 -19
  65. data/examples/al-admin/config/environment.rb +0 -73
  66. data/examples/al-admin/config/environments/development.rb +0 -17
  67. data/examples/al-admin/config/environments/production.rb +0 -24
  68. data/examples/al-admin/config/environments/test.rb +0 -22
  69. data/examples/al-admin/config/initializers/exception_notifier.rb +0 -2
  70. data/examples/al-admin/config/initializers/fast_gettext.rb +0 -3
  71. data/examples/al-admin/config/initializers/inflections.rb +0 -10
  72. data/examples/al-admin/config/initializers/mime_types.rb +0 -5
  73. data/examples/al-admin/config/initializers/session_store.rb +0 -23
  74. data/examples/al-admin/config/ldap.yml.example +0 -21
  75. data/examples/al-admin/config/routes.rb +0 -58
  76. data/examples/al-admin/config/session_secret.txt +0 -1
  77. data/examples/al-admin/config.ru +0 -7
  78. data/examples/al-admin/db/migrate/001_create_users.rb +0 -16
  79. data/examples/al-admin/db/schema.rb +0 -23
  80. data/examples/al-admin/lib/authenticated_system.rb +0 -124
  81. data/examples/al-admin/lib/authenticated_test_helper.rb +0 -113
  82. data/examples/al-admin/lib/ldap_test_helper.rb +0 -38
  83. data/examples/al-admin/lib/tasks/testing.rake +0 -10
  84. data/examples/al-admin/po/en/al-admin.po +0 -343
  85. data/examples/al-admin/po/ja/al-admin.po +0 -343
  86. data/examples/al-admin/po/nl/al-admin.po +0 -380
  87. data/examples/al-admin/public/.htaccess +0 -40
  88. data/examples/al-admin/public/404.html +0 -30
  89. data/examples/al-admin/public/500.html +0 -30
  90. data/examples/al-admin/public/dispatch.cgi +0 -10
  91. data/examples/al-admin/public/dispatch.fcgi +0 -24
  92. data/examples/al-admin/public/dispatch.rb +0 -10
  93. data/examples/al-admin/public/favicon.ico +0 -0
  94. data/examples/al-admin/public/images/active-ldap.svg +0 -6351
  95. data/examples/al-admin/public/images/al-admin.png +0 -0
  96. data/examples/al-admin/public/images/al-admin.svg +0 -6371
  97. data/examples/al-admin/public/images/header-background.png +0 -0
  98. data/examples/al-admin/public/images/header-background.svg +0 -99
  99. data/examples/al-admin/public/images/rails.png +0 -0
  100. data/examples/al-admin/public/images/spinelz/accordion_tab_left_active.gif +0 -0
  101. data/examples/al-admin/public/images/spinelz/accordion_tab_left_inactive.gif +0 -0
  102. data/examples/al-admin/public/images/spinelz/accordion_tab_middle_active.gif +0 -0
  103. data/examples/al-admin/public/images/spinelz/accordion_tab_middle_inactive.gif +0 -0
  104. data/examples/al-admin/public/images/spinelz/accordion_tab_right_active.gif +0 -0
  105. data/examples/al-admin/public/images/spinelz/accordion_tab_right_inactive.gif +0 -0
  106. data/examples/al-admin/public/images/spinelz/balloon_back.gif +0 -0
  107. data/examples/al-admin/public/images/spinelz/balloon_bottom_left.gif +0 -0
  108. data/examples/al-admin/public/images/spinelz/balloon_bottom_middle.gif +0 -0
  109. data/examples/al-admin/public/images/spinelz/balloon_bottom_right.gif +0 -0
  110. data/examples/al-admin/public/images/spinelz/balloon_left_down_arrow.gif +0 -0
  111. data/examples/al-admin/public/images/spinelz/balloon_left_up_arrow.gif +0 -0
  112. data/examples/al-admin/public/images/spinelz/balloon_middle_left.gif +0 -0
  113. data/examples/al-admin/public/images/spinelz/balloon_middle_right.gif +0 -0
  114. data/examples/al-admin/public/images/spinelz/balloon_right_down_arrow.gif +0 -0
  115. data/examples/al-admin/public/images/spinelz/balloon_right_up_arrow.gif +0 -0
  116. data/examples/al-admin/public/images/spinelz/balloon_top_left.gif +0 -0
  117. data/examples/al-admin/public/images/spinelz/balloon_top_middle.gif +0 -0
  118. data/examples/al-admin/public/images/spinelz/balloon_top_right.gif +0 -0
  119. data/examples/al-admin/public/images/spinelz/barchart_h.gif +0 -0
  120. data/examples/al-admin/public/images/spinelz/barchart_v.gif +0 -0
  121. data/examples/al-admin/public/images/spinelz/button.gif +0 -0
  122. data/examples/al-admin/public/images/spinelz/calendar_default_handler.gif +0 -0
  123. data/examples/al-admin/public/images/spinelz/calendar_delete.gif +0 -0
  124. data/examples/al-admin/public/images/spinelz/calendar_next.gif +0 -0
  125. data/examples/al-admin/public/images/spinelz/calendar_next_second.gif +0 -0
  126. data/examples/al-admin/public/images/spinelz/calendar_pre.gif +0 -0
  127. data/examples/al-admin/public/images/spinelz/calendar_pre_second.gif +0 -0
  128. data/examples/al-admin/public/images/spinelz/calendar_private_icon.gif +0 -0
  129. data/examples/al-admin/public/images/spinelz/calendar_schedule.gif +0 -0
  130. data/examples/al-admin/public/images/spinelz/calender_back.gif +0 -0
  131. data/examples/al-admin/public/images/spinelz/calender_back_second.gif +0 -0
  132. data/examples/al-admin/public/images/spinelz/datepicker2_back.gif +0 -0
  133. data/examples/al-admin/public/images/spinelz/datepicker2_back_second.gif +0 -0
  134. data/examples/al-admin/public/images/spinelz/datepicker2_next.gif +0 -0
  135. data/examples/al-admin/public/images/spinelz/datepicker2_next_second.gif +0 -0
  136. data/examples/al-admin/public/images/spinelz/datepicker2_pre.gif +0 -0
  137. data/examples/al-admin/public/images/spinelz/datepicker2_pre_second.gif +0 -0
  138. data/examples/al-admin/public/images/spinelz/datepicker_back.gif +0 -0
  139. data/examples/al-admin/public/images/spinelz/datepicker_back_second.gif +0 -0
  140. data/examples/al-admin/public/images/spinelz/datepicker_next.gif +0 -0
  141. data/examples/al-admin/public/images/spinelz/datepicker_next_second.gif +0 -0
  142. data/examples/al-admin/public/images/spinelz/datepicker_pre.gif +0 -0
  143. data/examples/al-admin/public/images/spinelz/datepicker_pre_second.gif +0 -0
  144. data/examples/al-admin/public/images/spinelz/grid_down.gif +0 -0
  145. data/examples/al-admin/public/images/spinelz/grid_state.gif +0 -0
  146. data/examples/al-admin/public/images/spinelz/grid_up.gif +0 -0
  147. data/examples/al-admin/public/images/spinelz/icon_day.gif +0 -0
  148. data/examples/al-admin/public/images/spinelz/icon_month.gif +0 -0
  149. data/examples/al-admin/public/images/spinelz/icon_week.gif +0 -0
  150. data/examples/al-admin/public/images/spinelz/menubar_back.gif +0 -0
  151. data/examples/al-admin/public/images/spinelz/menubar_subcontents_back.gif +0 -0
  152. data/examples/al-admin/public/images/spinelz/navPanel_tab_left_active.gif +0 -0
  153. data/examples/al-admin/public/images/spinelz/navPanel_tab_left_inactive.gif +0 -0
  154. data/examples/al-admin/public/images/spinelz/navPanel_tab_middle_active.gif +0 -0
  155. data/examples/al-admin/public/images/spinelz/navPanel_tab_middle_inactive.gif +0 -0
  156. data/examples/al-admin/public/images/spinelz/navPanel_tab_right_active.gif +0 -0
  157. data/examples/al-admin/public/images/spinelz/navPanel_tab_right_inactive.gif +0 -0
  158. data/examples/al-admin/public/images/spinelz/select_date.gif +0 -0
  159. data/examples/al-admin/public/images/spinelz/selectabletable_selected.gif +0 -0
  160. data/examples/al-admin/public/images/spinelz/sideBarBox_about.gif +0 -0
  161. data/examples/al-admin/public/images/spinelz/sideBarBox_menu.gif +0 -0
  162. data/examples/al-admin/public/images/spinelz/sideBarBox_sample.gif +0 -0
  163. data/examples/al-admin/public/images/spinelz/sideBarBox_tabBottomActive.gif +0 -0
  164. data/examples/al-admin/public/images/spinelz/sideBarBox_tabBottomInactive.gif +0 -0
  165. data/examples/al-admin/public/images/spinelz/sideBarBox_tabMiddleActive.gif +0 -0
  166. data/examples/al-admin/public/images/spinelz/sideBarBox_tabMiddleActive2.gif +0 -0
  167. data/examples/al-admin/public/images/spinelz/sideBarBox_tabMiddleInactive.gif +0 -0
  168. data/examples/al-admin/public/images/spinelz/sideBarBox_tabMiddleInactive2.gif +0 -0
  169. data/examples/al-admin/public/images/spinelz/sideBarBox_tabTopActive.gif +0 -0
  170. data/examples/al-admin/public/images/spinelz/sideBarBox_tabTopInactive.gif +0 -0
  171. data/examples/al-admin/public/images/spinelz/sideBarBox_tabbar.gif +0 -0
  172. data/examples/al-admin/public/images/spinelz/sortableTable_down.gif +0 -0
  173. data/examples/al-admin/public/images/spinelz/sortableTable_normal.gif +0 -0
  174. data/examples/al-admin/public/images/spinelz/sortableTable_up.gif +0 -0
  175. data/examples/al-admin/public/images/spinelz/switcher_close.gif +0 -0
  176. data/examples/al-admin/public/images/spinelz/switcher_open.gif +0 -0
  177. data/examples/al-admin/public/images/spinelz/tabBox_close.gif +0 -0
  178. data/examples/al-admin/public/images/spinelz/tabBox_tabLeftActive.gif +0 -0
  179. data/examples/al-admin/public/images/spinelz/tabBox_tabLeftInactive.gif +0 -0
  180. data/examples/al-admin/public/images/spinelz/tabBox_tabMiddleActive.gif +0 -0
  181. data/examples/al-admin/public/images/spinelz/tabBox_tabMiddleInactive.gif +0 -0
  182. data/examples/al-admin/public/images/spinelz/tabBox_tabRightActive.gif +0 -0
  183. data/examples/al-admin/public/images/spinelz/tabBox_tabRightInactive.gif +0 -0
  184. data/examples/al-admin/public/images/spinelz/tab_bar.gif +0 -0
  185. data/examples/al-admin/public/images/spinelz/table_back.gif +0 -0
  186. data/examples/al-admin/public/images/spinelz/timepicker_clock.gif +0 -0
  187. data/examples/al-admin/public/images/spinelz/toolbar_close.gif +0 -0
  188. data/examples/al-admin/public/images/spinelz/toolbar_left.gif +0 -0
  189. data/examples/al-admin/public/images/spinelz/toolbar_max.gif +0 -0
  190. data/examples/al-admin/public/images/spinelz/toolbar_middle.gif +0 -0
  191. data/examples/al-admin/public/images/spinelz/toolbar_min.gif +0 -0
  192. data/examples/al-admin/public/images/spinelz/toolbar_next.gif +0 -0
  193. data/examples/al-admin/public/images/spinelz/toolbar_right.gif +0 -0
  194. data/examples/al-admin/public/images/spinelz/treeview_dir.gif +0 -0
  195. data/examples/al-admin/public/images/spinelz/treeview_file.gif +0 -0
  196. data/examples/al-admin/public/images/spinelz/treeview_group.gif +0 -0
  197. data/examples/al-admin/public/images/spinelz/treeview_group_special.gif +0 -0
  198. data/examples/al-admin/public/images/spinelz/treeview_state.gif +0 -0
  199. data/examples/al-admin/public/images/spinelz/treeview_user.gif +0 -0
  200. data/examples/al-admin/public/images/spinelz/window_bottom_left.gif +0 -0
  201. data/examples/al-admin/public/images/spinelz/window_bottom_middle.gif +0 -0
  202. data/examples/al-admin/public/images/spinelz/window_bottom_right.gif +0 -0
  203. data/examples/al-admin/public/images/spinelz/window_close.gif +0 -0
  204. data/examples/al-admin/public/images/spinelz/window_max.gif +0 -0
  205. data/examples/al-admin/public/images/spinelz/window_middle_left.gif +0 -0
  206. data/examples/al-admin/public/images/spinelz/window_middle_right.gif +0 -0
  207. data/examples/al-admin/public/images/spinelz/window_min.gif +0 -0
  208. data/examples/al-admin/public/images/spinelz/window_top_left.gif +0 -0
  209. data/examples/al-admin/public/images/spinelz/window_top_middle.gif +0 -0
  210. data/examples/al-admin/public/images/spinelz/window_top_right.gif +0 -0
  211. data/examples/al-admin/public/javascripts/application.js +0 -2
  212. data/examples/al-admin/public/javascripts/controls.js +0 -963
  213. data/examples/al-admin/public/javascripts/dragdrop.js +0 -973
  214. data/examples/al-admin/public/javascripts/effects.js +0 -1128
  215. data/examples/al-admin/public/javascripts/prototype.js +0 -4320
  216. data/examples/al-admin/public/javascripts/spinelz/accordion.js +0 -185
  217. data/examples/al-admin/public/javascripts/spinelz/ajaxHistory.js +0 -157
  218. data/examples/al-admin/public/javascripts/spinelz/balloon.js +0 -287
  219. data/examples/al-admin/public/javascripts/spinelz/barchart.js +0 -524
  220. data/examples/al-admin/public/javascripts/spinelz/calendar.js +0 -3012
  221. data/examples/al-admin/public/javascripts/spinelz/colorpicker.js +0 -128
  222. data/examples/al-admin/public/javascripts/spinelz/datepicker.js +0 -438
  223. data/examples/al-admin/public/javascripts/spinelz/grid.js +0 -1391
  224. data/examples/al-admin/public/javascripts/spinelz/grid_resizeEx.js +0 -100
  225. data/examples/al-admin/public/javascripts/spinelz/grid_sortabletableEx.js +0 -129
  226. data/examples/al-admin/public/javascripts/spinelz/inplaceEditorEx.js +0 -148
  227. data/examples/al-admin/public/javascripts/spinelz/menubar.js +0 -232
  228. data/examples/al-admin/public/javascripts/spinelz/navPanel.js +0 -170
  229. data/examples/al-admin/public/javascripts/spinelz/selectableTable.js +0 -433
  230. data/examples/al-admin/public/javascripts/spinelz/sideBarBox.js +0 -282
  231. data/examples/al-admin/public/javascripts/spinelz/sideBarBox_effects.js +0 -83
  232. data/examples/al-admin/public/javascripts/spinelz/sortableTable.js +0 -270
  233. data/examples/al-admin/public/javascripts/spinelz/switcher.js +0 -78
  234. data/examples/al-admin/public/javascripts/spinelz/tabBox.js +0 -469
  235. data/examples/al-admin/public/javascripts/spinelz/timepicker.js +0 -384
  236. data/examples/al-admin/public/javascripts/spinelz/toolbar.js +0 -152
  237. data/examples/al-admin/public/javascripts/spinelz/treeview.js +0 -703
  238. data/examples/al-admin/public/javascripts/spinelz/window.js +0 -641
  239. data/examples/al-admin/public/javascripts/spinelz/window_resizeEx.js +0 -130
  240. data/examples/al-admin/public/javascripts/spinelz_lib/builder.js +0 -131
  241. data/examples/al-admin/public/javascripts/spinelz_lib/controls.js +0 -835
  242. data/examples/al-admin/public/javascripts/spinelz_lib/dragdrop.js +0 -944
  243. data/examples/al-admin/public/javascripts/spinelz_lib/effects.js +0 -1090
  244. data/examples/al-admin/public/javascripts/spinelz_lib/json.js +0 -139
  245. data/examples/al-admin/public/javascripts/spinelz_lib/prototype.js +0 -2515
  246. data/examples/al-admin/public/javascripts/spinelz_lib/resize.js +0 -215
  247. data/examples/al-admin/public/javascripts/spinelz_lib/scriptaculous.js +0 -51
  248. data/examples/al-admin/public/javascripts/spinelz_lib/slider.js +0 -278
  249. data/examples/al-admin/public/javascripts/spinelz_lib/spinelz_util.js +0 -1266
  250. data/examples/al-admin/public/javascripts/spinelz_lib/unittest.js +0 -564
  251. data/examples/al-admin/public/robots.txt +0 -1
  252. data/examples/al-admin/public/stylesheets/account.css +0 -41
  253. data/examples/al-admin/public/stylesheets/attributes.css +0 -1
  254. data/examples/al-admin/public/stylesheets/base.css +0 -104
  255. data/examples/al-admin/public/stylesheets/detail.css +0 -36
  256. data/examples/al-admin/public/stylesheets/directory.css +0 -22
  257. data/examples/al-admin/public/stylesheets/object-classes.css +0 -6
  258. data/examples/al-admin/public/stylesheets/rails.css +0 -35
  259. data/examples/al-admin/public/stylesheets/spinelz/accordion.css +0 -59
  260. data/examples/al-admin/public/stylesheets/spinelz/balloon.css +0 -151
  261. data/examples/al-admin/public/stylesheets/spinelz/calendar.css +0 -564
  262. data/examples/al-admin/public/stylesheets/spinelz/datepicker.css +0 -175
  263. data/examples/al-admin/public/stylesheets/spinelz/grid.css +0 -137
  264. data/examples/al-admin/public/stylesheets/spinelz/menubar.css +0 -78
  265. data/examples/al-admin/public/stylesheets/spinelz/modal.css +0 -22
  266. data/examples/al-admin/public/stylesheets/spinelz/navPanel.css +0 -58
  267. data/examples/al-admin/public/stylesheets/spinelz/selectableTable.css +0 -28
  268. data/examples/al-admin/public/stylesheets/spinelz/sideBarBox.css +0 -82
  269. data/examples/al-admin/public/stylesheets/spinelz/sortableTable.css +0 -51
  270. data/examples/al-admin/public/stylesheets/spinelz/switcher.css +0 -23
  271. data/examples/al-admin/public/stylesheets/spinelz/tabBox.css +0 -94
  272. data/examples/al-admin/public/stylesheets/spinelz/timepicker.css +0 -508
  273. data/examples/al-admin/public/stylesheets/spinelz/toolbar.css +0 -82
  274. data/examples/al-admin/public/stylesheets/spinelz/treeview.css +0 -121
  275. data/examples/al-admin/public/stylesheets/spinelz/window.css +0 -140
  276. data/examples/al-admin/public/stylesheets/structure.css +0 -81
  277. data/examples/al-admin/public/stylesheets/syntaxes.css +0 -1
  278. data/examples/al-admin/public/stylesheets/users.css +0 -13
  279. data/examples/al-admin/public/stylesheets/welcome.css +0 -0
  280. data/examples/al-admin/script/about +0 -3
  281. data/examples/al-admin/script/console +0 -3
  282. data/examples/al-admin/script/dbconsole +0 -3
  283. data/examples/al-admin/script/destroy +0 -3
  284. data/examples/al-admin/script/generate +0 -3
  285. data/examples/al-admin/script/performance/benchmarker +0 -3
  286. data/examples/al-admin/script/performance/profiler +0 -3
  287. data/examples/al-admin/script/performance/request +0 -3
  288. data/examples/al-admin/script/plugin +0 -3
  289. data/examples/al-admin/script/process/inspector +0 -3
  290. data/examples/al-admin/script/process/reaper +0 -3
  291. data/examples/al-admin/script/process/spawner +0 -3
  292. data/examples/al-admin/script/runner +0 -3
  293. data/examples/al-admin/script/server +0 -3
  294. data/examples/al-admin/test/fixtures/users.yml +0 -9
  295. data/examples/al-admin/test/functional/account_controller_test.rb +0 -12
  296. data/examples/al-admin/test/functional/attributes_controller_test.rb +0 -8
  297. data/examples/al-admin/test/functional/directory_controller_test.rb +0 -8
  298. data/examples/al-admin/test/functional/object_classes_controller_test.rb +0 -8
  299. data/examples/al-admin/test/functional/syntaxes_controller_test.rb +0 -8
  300. data/examples/al-admin/test/functional/users_controller_test.rb +0 -8
  301. data/examples/al-admin/test/functional/welcome_controller_test.rb +0 -8
  302. data/examples/al-admin/test/integration/sign_up_test.rb +0 -44
  303. data/examples/al-admin/test/run-test.sh +0 -3
  304. data/examples/al-admin/test/test_helper.rb +0 -52
  305. data/examples/al-admin/test/unit/user_test.rb +0 -12
  306. data/examples/al-admin/vendor/plugins/exception_notification/README +0 -111
  307. data/examples/al-admin/vendor/plugins/exception_notification/init.rb +0 -1
  308. data/examples/al-admin/vendor/plugins/exception_notification/lib/exception_notifiable.rb +0 -99
  309. data/examples/al-admin/vendor/plugins/exception_notification/lib/exception_notifier.rb +0 -66
  310. data/examples/al-admin/vendor/plugins/exception_notification/lib/exception_notifier_helper.rb +0 -78
  311. data/examples/al-admin/vendor/plugins/exception_notification/test/exception_notifier_helper_test.rb +0 -61
  312. data/examples/al-admin/vendor/plugins/exception_notification/test/test_helper.rb +0 -7
  313. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/_backtrace.rhtml +0 -1
  314. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/_environment.rhtml +0 -7
  315. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/_inspect_model.rhtml +0 -16
  316. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/_request.rhtml +0 -4
  317. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/_session.rhtml +0 -2
  318. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/_title.rhtml +0 -3
  319. data/examples/al-admin/vendor/plugins/exception_notification/views/exception_notifier/exception_notification.rhtml +0 -6
@@ -1,128 +0,0 @@
1
- // Copyright (c) 2007 spinelz.org (http://script.spinelz.org/)
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining
4
- // a copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to
8
- // permit persons to whom the Software is furnished to do so, subject to
9
- // the following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be
12
- // included in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
22
- var ColorPicker = Class.create();
23
- ColorPicker.className = {
24
- }
25
-
26
- ColorPicker.prototype = {
27
- initialize: function(element) {
28
- this.element = $(element);
29
- Element.setStyle(this.element, {position: 'absolute'});
30
- this.hide();
31
- this.element.innerHTML = this.build();
32
- this.setEvent();
33
- this.doclistener = this.hide.bindAsEventListener(this);
34
- if (!UserAgent.isIE()) {
35
- Element.setStyle(this.element, {
36
- width: 15 * 18 + 'px',
37
- height: 15 * 12 + 'px'
38
- });
39
- }
40
- Element.setStyle(this.element, {border: '3px solid gray'});
41
- this.setting = $H({});
42
- this.triggerId = null;
43
- },
44
-
45
- set: function(setting) {
46
- var trigger = $(setting.trigger);
47
- this.setting[trigger.id] = setting;
48
- Event.observe(trigger, 'click', this.show.bindAsEventListener(this, trigger.id));
49
- },
50
-
51
- build: function() {
52
- var colors = [0, 0, 0];
53
- var rgb = null;
54
- var id = null;
55
- var idBase = this.element.id;
56
- var html = "<div style='cursor: pointer;'>";
57
- var halfCount = 51 * 3;
58
- this.idList = [];
59
- for (var i = 0; i <= 255; i += 51) {
60
- if (i == halfCount) html += "<div style='clear: left;'></div>";
61
- for (var j = 0; j <= 255; j += 51) {
62
- html += "<div style='float: left; width: 15px;'>";
63
- for (var k = 0; k <= 255; k += 51) {
64
- rgb = "#" + i.toColorPart() + j.toColorPart() + k.toColorPart();
65
- id = idBase.appendSuffix(rgb);
66
- this.idList.push(id);
67
- html += "<div id='" + id + "' style='width: 100%; height: 15px; background-color: " + rgb + "'></div>";
68
- }
69
- html += "</div>"
70
- }
71
- }
72
- return html + "</div>";
73
- },
74
-
75
- setEvent: function() {
76
- this.idList.each(function(id) {
77
- // Event.observe(id, 'mouseover', this.mouseOver.bind(this, id));
78
- Event.observe(id, 'mousedown', this.mouseDown.bind(this, id));
79
- }.bind(this));
80
- },
81
-
82
- mouseOver: function(id) {
83
- this.setColor(id.getSuffix());
84
- },
85
-
86
- mouseDown: function(id) {
87
- this.setValue(id.getSuffix());
88
- this.setColor(id.getSuffix());
89
- },
90
-
91
- setValue: function(color) {
92
- var valueTarget = $(this.setting[this.triggerId].value);
93
- if (valueTarget) {
94
- if (valueTarget.tagName.toLowerCase() == 'input') {
95
- valueTarget.value = color;
96
- } else {
97
- valueTarget.innerHTML = color;
98
- }
99
- }
100
- },
101
-
102
- setColor: function(color) {
103
- var colorTarget = $(this.setting[this.triggerId].color);
104
- if (colorTarget) {
105
- Element.setStyle(colorTarget, {backgroundColor: color});
106
- }
107
- },
108
-
109
- show: function(event, triggerId) {
110
- this.triggerId = triggerId;
111
- Element.setStyle(this.element, {
112
- zIndex: ZindexManager.getIndex(),
113
- left: Event.pointerX(event) + 'px',
114
- top: Event.pointerY(event) + 'px'
115
- });
116
- this.element.show();
117
- Event.observe(document, "click", this.doclistener);
118
- if (event) {
119
- Event.stop(event);
120
- }
121
- },
122
-
123
- hide: function() {
124
- this.triggerId = null;
125
- Event.stopObserving(document, "click", this.doclistener);
126
- this.element.hide();
127
- }
128
- }
@@ -1,438 +0,0 @@
1
- // Copyright (c) 2005 spinelz.org (http://script.spinelz.org/)
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining
4
- // a copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to
8
- // permit persons to whom the Software is furnished to do so, subject to
9
- // the following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be
12
- // included in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
22
- var DatePicker = Class.create();
23
- DatePicker.className = {
24
- container: 'datepicker',
25
- header: 'datepicker_header',
26
- footer: 'datepicker_footer',
27
- preYears: 'datepicker_preYears',
28
- nextYears: 'datepicker_nextYears',
29
- years: 'datepicker_years',
30
- calendar: 'datepicker_calendar',
31
- date: 'datepicker_date',
32
- holiday: 'datepicker_holiday',
33
- ym: 'datepicker_ym',
34
- table: 'datepicker_table',
35
- tableTh: 'datepicker_tableTh',
36
- nextMonthMark: 'datepicker_nextMonthMark',
37
- nextYearMark: 'datepicker_nextYearMark',
38
- preMonthMark: 'datepicker_preMonthMark',
39
- preYearMark: 'datepicker_preYearMark',
40
- today: 'datepicker_today',
41
- zIndex: null
42
- }
43
- DatePicker.prototype = {
44
-
45
- initialize: function(element, target, trigger) {
46
- this.element = $(element);
47
- Element.setStyle(this.element, {visibility: 'hidden'});
48
- this.target = $(target);
49
-
50
- this.options = Object.extend({
51
- date: new Date(),
52
- format: DateUtil.toLocaleDateString,
53
- cssPrefix: 'custom_',
54
- callBack: Prototype.emptyFunction,
55
- standBy: false,
56
- headerFormat: null,
57
- dayOfWeek: DateUtil.dayOfWeek,
58
- appendToBody: false,
59
- invalidDates: []
60
- }, arguments[3] || {});
61
-
62
- this.css = CssUtil.getInstance(this.options.cssPrefix, DatePicker.className);
63
- this.classNames = this.css.allJoinClassNames();
64
-
65
- this.format = this.options.format;
66
- this.callBack = Prototype.emptyFunction;
67
-
68
- if (this.options.date) {
69
- if (this.options.date.constructor == Date) {
70
- this.date = this.options.date;
71
- } else {
72
- this.date = DateUtil.toDate(this.options.date);
73
- }
74
- } else {
75
- this.date = new Date();
76
- }
77
- this.originalDate = new Date(this.date.getTime());
78
-
79
- this.ids = {};
80
- this.dateIds = [];
81
- this.element.innerHTML = this.build();
82
- this.cover = new IECover(this.element);
83
- this.setEvent();
84
-
85
- this.doclistener = this.hide.bindAsEventListener(this);
86
- this.hide();
87
- Element.setStyle(this.element, {visibility: 'visible'});
88
- this.triggerSet = {};
89
- if (trigger && target) this.set(trigger, target, this.options.callBack);
90
- if (this.options.appendToBody) Element.appendToBody.callAfterLoading(this, this.element);
91
- },
92
-
93
- set: function(trigger, target, options) {
94
- trigger = $(trigger);
95
- options = options || {};
96
- if (options.constructor == Function) options = {callBack: options}
97
- options = $H({
98
- callBack: Prototype.emptyFunction,
99
- invalidDates: []
100
- }).merge(options);
101
- if (options.invalidDates.constructor != Array) options.invalidDates = [options.invalidDates];
102
-
103
- this.triggerSet[trigger.id] = {target: $(target), options: options};
104
- this.addTrigger(trigger);
105
- },
106
-
107
- setEvent: function() {
108
- var preMonth = $(this.ids.preMonth)
109
- if (!Event.observers || !Event.observers.any(function(observer) { return preMonth == observer.first(); })) {
110
- Event.observe(this.ids.preMonth, "click", this.changeCalendar.bindAsEventListener(this));
111
- Event.observe(this.ids.preYear, "click", this.changeCalendar.bindAsEventListener(this));
112
- Event.observe(this.ids.nextMonth, "click", this.changeCalendar.bindAsEventListener(this));
113
- Event.observe(this.ids.nextYear, "click", this.changeCalendar.bindAsEventListener(this));
114
- new Hover(this.ids.preMonth);
115
- new Hover(this.ids.preYear);
116
- new Hover(this.ids.nextMonth);
117
- new Hover(this.ids.nextYear);
118
-
119
- this.hovers = {};
120
- this.dateIds.each(function(id) {
121
- this.hovers[id] = new Hover(id, {beforeToggle: this.hasDate.bind(this, id)});
122
- Event.observe(id, "click", this.selectDate.bindAsEventListener(this));
123
- }.bind(this));
124
- }
125
- },
126
-
127
- build: function() {
128
- this.ids.calendar = this.element.id.appendSuffix('calendar');
129
- var html =
130
- "<div id='" + this.ids.calendar + "' class='" + this.classNames['container'] + "'>" +
131
- this.buildHeader() +
132
- this.buildCalendar() +
133
- this.buildFooter() +
134
- "</div>";
135
- return html;
136
- },
137
-
138
- buildHeader: function() {
139
- var html =
140
- "<table class='" + this.classNames['header'] + "'>" +
141
- "<tr>" +
142
- this.buildHeaderLeft() +
143
- this.buildHeaderCenter() +
144
- this.buildHeaderRight() +
145
- "</tr>" +
146
- "</table>";
147
- return html;
148
- },
149
-
150
- buildFooter: function() {
151
- return "<div class='" + this.classNames['footer'] + "'></div>";
152
- },
153
-
154
- buildHeaderLeft: function() {
155
- this.ids.preYear = this.element.id.appendSuffix('preYear');
156
- this.ids.preMonth = this.element.id.appendSuffix('preMonth');
157
-
158
- var html =
159
- "<td class='" + this.classNames['preYears'] + "'>" +
160
- "<div id='" + this.ids.preYear + "' class='" + this.classNames['preYearMark'] + "'></div>" +
161
- "<div id='" + this.ids.preMonth + "' class='" + this.classNames['preMonthMark'] + "'></div>" +
162
- "</td>";
163
- return html;
164
- },
165
-
166
- buildHeaderCenter: function() {
167
- var yearMonth = this.getHeaderYearMonth();
168
- var baseId = this.element.id;
169
- var html =
170
- "<td class='" + this.classNames['years'] + "'>" +
171
- "<span id='" + baseId.appendSuffix('ym0') + "'class='" + this.classNames['ym'] + "'>" +
172
- yearMonth[0] +
173
- "</span>" +
174
- "<span id='" + baseId.appendSuffix('ym1') + "' class='" + this.classNames['ym'] + "'>" +
175
- yearMonth[1] +
176
- "</span>" +
177
- "</td>";
178
- return html;
179
- },
180
-
181
- getHeaderYearMonth: function() {
182
- if (this.options.headerFormat) {
183
- var tmpl = new Template(this.options.headerFormat);
184
- return [tmpl.evaluate({year: this.date.getFullYear(), month: this.date.getMonth() + 1}), ' '];
185
- }
186
- return [DateUtil.months[this.date.getMonth()], this.date.getFullYear()];
187
- },
188
-
189
- buildHeaderRight: function() {
190
- this.ids.nextYear = this.element.id.appendSuffix('nextYear');
191
- this.ids.nextMonth = this.element.id.appendSuffix('nextMonth');
192
-
193
- var html =
194
- "<td class='" + this.classNames['nextYears'] + "'>" +
195
- "<div id='" + this.ids.nextMonth + "' class='" + this.classNames['nextMonthMark'] + "'></div>" +
196
- "<div id='" + this.ids.nextYear + "' class='" + this.classNames['nextYearMark'] + "'></div>" +
197
- "</td>";
198
- return html;
199
- },
200
-
201
- multiBuild: function(tagType, params, className, hover, clickEvent) {
202
- var children = [];
203
- for (var i = 0; i < params.length; i++) {
204
- var node = Builder.node(tagType, [params[i]]);;
205
- if (className)
206
- this.classNames.addClassNames(node, className);
207
- if (hover)
208
- new Hover(node);
209
- if (clickEvent)
210
- Event.observe(node, "click", clickEvent.bindAsEventListener(this));
211
- children.push(node);
212
- }
213
- return children;
214
- },
215
-
216
- buildCalendar: function() {
217
- var html =
218
- "<div class='" + this.classNames['calendar'] + "'>" +
219
- "<table class='" + this.classNames['table'] + "'>" +
220
- this.buildTableHeader() + this.buildTableData() +
221
- "</table>" +
222
- "</div>";
223
- return html;
224
- },
225
-
226
- buildTableHeader: function() {
227
- var className = this.classNames['tableTh'];
228
- var html = "<tr>";
229
- for (var i = 0; i < DateUtil.dayOfWeek.length; i++) {
230
- html += "<th class='" + className + "'>" + this.options.dayOfWeek[i] + "</th>";
231
- }
232
- html += "</tr>";
233
- return html;
234
- },
235
-
236
- buildTableData: function() {
237
- var length = DateUtil.dayOfWeek.length * 6;
238
- var year = this.date.getFullYear();
239
- var month = this.date.getMonth();
240
- var firstDay = DateUtil.getFirstDate(year, month).getDay();
241
- var lastDate = DateUtil.getLastDate(year, month).getDate();
242
- var tdBaseId = this.element.id.appendSuffix('date');
243
- var today = new Date();
244
- var sameMonth = today.sameMonth(this.date);
245
- var trs = '';
246
- var tds = '';
247
-
248
- for (var i = 0, day = 1; i < length; i++) {
249
- var id = tdBaseId.appendSuffix(i);
250
- this.dateIds.push(id);
251
- var classKey = ((i % 7 == 0) || ((i+1) % 7 == 0)) ? 'holiday' : 'date';
252
- var className = this.classNames[classKey];
253
- if ((i < firstDay) || day > lastDate) {
254
- tds += "<td id='" + id + "' class='" + className + "'></td>";
255
- } else {
256
- if (sameMonth && (today.getDate() == day)) {
257
- className = this.classNames['today'] + ' ' + className;
258
- this.todayCell = id;
259
- }
260
- tds += "<td id='" + id + "' class='" + className + "'>" + day + "</td>";
261
- day++;
262
- }
263
-
264
- if ((i + 1) % 7 == 0) {
265
- trs += "<tr>" + tds + "</tr>";
266
- tds = '';
267
- }
268
- }
269
- return trs;
270
- },
271
-
272
- rebuildHeaderCenter: function() {
273
- var yearMonth = this.getHeaderYearMonth();
274
- var baseId = this.element.id;
275
- $(baseId.appendSuffix('ym0')).innerHTML = yearMonth[0];
276
- $(baseId.appendSuffix('ym1')).innerHTML = yearMonth[1];
277
- },
278
-
279
- rebuildTableData: function() {
280
- var length = DateUtil.dayOfWeek.length * 6;
281
- var year = this.date.getFullYear();
282
- var month = this.date.getMonth();
283
- var firstDay = DateUtil.getFirstDate(year, month).getDay();
284
- var lastDate = DateUtil.getLastDate(year, month).getDate();
285
- var tdBaseId = this.element.id.appendSuffix('date');
286
- var today = new Date();
287
- var sameMonth = today.sameMonth(this.date);
288
-
289
- this.todayClassToNormalClass();
290
- for (var i = 0, day = 1; i < length; i++) {
291
- var id = tdBaseId.appendSuffix(i);
292
- var element = $(id);
293
- if ((i < firstDay) || (day > lastDate)) {
294
- element.innerHTML = '';
295
- } else {
296
- element.innerHTML = day;
297
- if (sameMonth && (today.getDate() == day)) {
298
- element.className = this.classNames['today'] + ' ' + element.className;
299
- this.todayCell = id;
300
- this.hovers[id].refresh();
301
- }
302
- day++;
303
- }
304
- }
305
- },
306
-
307
- todayClassToNormalClass: function() {
308
- var todayClassName = this.classNames['today'].split(' ');
309
- var cell = $(this.todayCell);
310
- if (cell) {
311
- cell.className = cell.className.split(' ').select(function(className) {
312
- return !todayClassName.include(className);
313
- }).join(' ');
314
- this.hovers[this.todayCell].refresh();
315
- }
316
- this.todayCell = null;
317
- },
318
-
319
- refresh: function() {
320
- this.rebuildHeaderCenter();
321
- this.rebuildTableData();
322
- },
323
-
324
- getMonth: function() {
325
- return DateUtil.months[this.date.getMonth()];
326
- },
327
-
328
- changeCalendar: function(event) {
329
- var element = Event.element(event);
330
- this.date.setDate(1);
331
- if (this.hasClassName(element, DatePicker.className.preYearMark)) {
332
- this.date.setFullYear(this.date.getFullYear() - 1);
333
- } else if (this.hasClassName(element, DatePicker.className.nextYearMark)) {
334
- this.date.setFullYear(this.date.getFullYear() + 1);
335
- } else if (this.hasClassName(element, DatePicker.className.preMonthMark)) {
336
- this.date.setMonth(this.date.getMonth() - 1);
337
- } else if (this.hasClassName(element, DatePicker.className.nextMonthMark)) {
338
- this.date.setMonth(this.date.getMonth() + 1);
339
- }
340
-
341
- this.refresh();
342
- if (event) Event.stop(event);
343
- },
344
-
345
- hasClassName: function(element, className) {
346
- return Element.hasClassName(element, className) || Element.hasClassName(element, className + 'Hover')
347
- },
348
-
349
- selectDate: function(event) {
350
- var src = Event.element(event);
351
- var text = Element.getTextNodes(src)[0];
352
- if (text) {
353
- this.date.setDate(text.nodeValue);
354
- var value = this.formatDateString();
355
-
356
- if (this.target.value || this.target.value == '') {
357
- this.target.value = value;
358
- } else {
359
- this.target.innerHTML = value;
360
- }
361
-
362
- this.hide();
363
- this.css.refreshClassNames(src, 'date');
364
- this.callBack(this);
365
- }
366
- },
367
-
368
- show: function(event) {
369
- if (event) {
370
- Event.stop(event);
371
- var set = this.triggerSet[Event.element(event).id];
372
- if (set) {
373
- this.target = set.target;
374
- this.options = $H(this.options).merge(set.options);
375
- this.callBack = this.options.callBack;
376
- }
377
-
378
- if (this.options.invalidDates.include(this.target.value)) {
379
- this.date = new Date(this.originalDate.getTime());
380
- } else {
381
- var time = Date.parse(this.target.value);
382
- if (time) {
383
- this.date = new Date(time);
384
- } else {
385
- this.date = new Date(this.originalDate.getTime());
386
- }
387
- }
388
- this.refresh();
389
- }
390
-
391
- var styles = $H({zIndex: ZindexManager.getIndex(this.options.zIndex)});
392
- if (this.options.standBy) {
393
- this.defaultParent = this.element.parentNode;
394
- document.body.appendChild(this.element);
395
- styles = styles.merge({
396
- position: 'absolute',
397
- left: Event.pointerX(event) + 'px',
398
- top: Event.pointerY(event) + 'px'
399
- });
400
- }
401
-
402
- Element.setStyle(this.element, styles);
403
- Element.show(this.element);
404
- this.cover.resetSize();
405
- Event.observe(document, "click", this.doclistener);
406
- },
407
-
408
- hide: function() {
409
- Event.stopObserving(document, "click", this.doclistener);
410
- Element.hide(this.element);
411
- if (this.defaultParent) {
412
- this.defaultParent.appendChild(this.element);
413
- }
414
- },
415
-
416
- addTrigger: function(trigger) {
417
- Event.observe($(trigger), 'click', this.show.bindAsEventListener(this));
418
- },
419
-
420
- changeTarget: function(target) {
421
- this.target = $(target);
422
- },
423
-
424
- formatDateString: function() {
425
- var string = '';
426
- if (this.format.constructor == Function) {
427
- string = this.format(this.date);
428
- } else if (this.format.constructor == String) {
429
- string = this.date.strftime(this.format);
430
- }
431
- return string;
432
- },
433
-
434
- hasDate: function(cell) {
435
- var text = $(cell).innerHTML;
436
- return text && (text != '');
437
- }
438
- }