sambal-cle 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. data/README.md +4 -0
  2. data/lib/sambal-cle/base_page.rb +20 -0
  3. data/lib/sambal-cle/core-ext.rb +90 -0
  4. data/lib/sambal-cle/data_objects/announcement.rb +82 -0
  5. data/lib/sambal-cle/data_objects/assessment.rb +32 -0
  6. data/lib/sambal-cle/data_objects/assignment.rb +205 -0
  7. data/lib/sambal-cle/data_objects/blog.rb +46 -0
  8. data/lib/sambal-cle/data_objects/blogger.rb +49 -0
  9. data/lib/sambal-cle/data_objects/chat_room.rb +54 -0
  10. data/lib/sambal-cle/data_objects/event.rb +89 -0
  11. data/lib/sambal-cle/data_objects/forum.rb +212 -0
  12. data/lib/sambal-cle/data_objects/lesson.rb +185 -0
  13. data/lib/sambal-cle/data_objects/message.rb +57 -0
  14. data/lib/sambal-cle/data_objects/poll.rb +74 -0
  15. data/lib/sambal-cle/data_objects/resource.rb +209 -0
  16. data/lib/sambal-cle/data_objects/site.rb +295 -0
  17. data/lib/sambal-cle/data_objects/syllabus.rb +73 -0
  18. data/lib/sambal-cle/data_objects/web_content_tool.rb +51 -0
  19. data/lib/sambal-cle/data_objects/wiki.rb +63 -0
  20. data/lib/sambal-cle/date_makers.rb +118 -0
  21. data/lib/sambal-cle/gem_ext.rb +23 -0
  22. data/lib/sambal-cle/page_helper.rb +22 -0
  23. data/lib/sambal-cle/page_maker.rb +48 -0
  24. data/lib/sambal-cle/page_objects/account.rb +111 -0
  25. data/lib/sambal-cle/page_objects/aliases.rb +43 -0
  26. data/lib/sambal-cle/page_objects/announcements.rb +190 -0
  27. data/lib/sambal-cle/page_objects/assessments.rb +874 -0
  28. data/lib/sambal-cle/page_objects/assignments.rb +770 -0
  29. data/lib/sambal-cle/page_objects/basic_lti.rb +6 -0
  30. data/lib/sambal-cle/page_objects/blogger.rb +205 -0
  31. data/lib/sambal-cle/page_objects/blogs.rb +60 -0
  32. data/lib/sambal-cle/page_objects/calendar.rb +330 -0
  33. data/lib/sambal-cle/page_objects/calendar_summary.rb +1 -0
  34. data/lib/sambal-cle/page_objects/chat_room.rb +22 -0
  35. data/lib/sambal-cle/page_objects/drop_box.rb +9 -0
  36. data/lib/sambal-cle/page_objects/email_archive.rb +22 -0
  37. data/lib/sambal-cle/page_objects/entity_picker.rb +62 -0
  38. data/lib/sambal-cle/page_objects/evaluations.rb +158 -0
  39. data/lib/sambal-cle/page_objects/feedback.rb +36 -0
  40. data/lib/sambal-cle/page_objects/forms.rb +120 -0
  41. data/lib/sambal-cle/page_objects/forums.rb +254 -0
  42. data/lib/sambal-cle/page_objects/glossary.rb +117 -0
  43. data/lib/sambal-cle/page_objects/gradebook.rb +29 -0
  44. data/lib/sambal-cle/page_objects/gradebook2.rb +17 -0
  45. data/lib/sambal-cle/page_objects/home.rb +36 -0
  46. data/lib/sambal-cle/page_objects/jforums.rb +444 -0
  47. data/lib/sambal-cle/page_objects/job_scheduler.rb +121 -0
  48. data/lib/sambal-cle/page_objects/lessons.rb +361 -0
  49. data/lib/sambal-cle/page_objects/login.rb +28 -0
  50. data/lib/sambal-cle/page_objects/matrix.rb +241 -0
  51. data/lib/sambal-cle/page_objects/media_gallery.rb +13 -0
  52. data/lib/sambal-cle/page_objects/messages.rb +622 -0
  53. data/lib/sambal-cle/page_objects/my_workspace.rb +44 -0
  54. data/lib/sambal-cle/page_objects/news.rb +8 -0
  55. data/lib/sambal-cle/page_objects/podcasts.rb +27 -0
  56. data/lib/sambal-cle/page_objects/polls.rb +69 -0
  57. data/lib/sambal-cle/page_objects/portfolio_templates.rb +161 -0
  58. data/lib/sambal-cle/page_objects/portfolios.rb +162 -0
  59. data/lib/sambal-cle/page_objects/post_em.rb +1 -0
  60. data/lib/sambal-cle/page_objects/profile.rb +51 -0
  61. data/lib/sambal-cle/page_objects/profile2.rb +344 -0
  62. data/lib/sambal-cle/page_objects/public_search.rb +61 -0
  63. data/lib/sambal-cle/page_objects/realms.rb +19 -0
  64. data/lib/sambal-cle/page_objects/resources.rb +326 -0
  65. data/lib/sambal-cle/page_objects/resources_roster.rb +0 -0
  66. data/lib/sambal-cle/page_objects/rosters.rb +70 -0
  67. data/lib/sambal-cle/page_objects/rwiki.rb +34 -0
  68. data/lib/sambal-cle/page_objects/search.rb +34 -0
  69. data/lib/sambal-cle/page_objects/sections.rb +295 -0
  70. data/lib/sambal-cle/page_objects/single_user.rb +1 -0
  71. data/lib/sambal-cle/page_objects/site_setup.rb +621 -0
  72. data/lib/sambal-cle/page_objects/site_statistics.rb +1 -0
  73. data/lib/sambal-cle/page_objects/sites.rb +255 -0
  74. data/lib/sambal-cle/page_objects/styles.rb +74 -0
  75. data/lib/sambal-cle/page_objects/syllabus.rb +166 -0
  76. data/lib/sambal-cle/page_objects/user_membership.rb +57 -0
  77. data/lib/sambal-cle/page_objects/users.rb +88 -0
  78. data/lib/sambal-cle/randomizers.rb +117 -0
  79. data/lib/sambal-cle/rich_text.rb +38 -0
  80. data/lib/sambal-cle/utilities.rb +31 -0
  81. data/lib/sambal-cle/workflows.rb +223 -0
  82. data/lib/sambal-cle.rb +31 -0
  83. data/sambal-cle.gemspec +14 -0
  84. data/test/add_assignment_to_calendar_spec.rb +86 -0
  85. data/test/assignment_announcements_spec.rb +71 -0
  86. data/test/assignment_gradebook_spec.rb +98 -0
  87. data/test/config.yml.template +4 -0
  88. data/test/directory.yml.template +123 -0
  89. data/test/duplicate_site_spec.rb +244 -0
  90. metadata +167 -0
@@ -0,0 +1,295 @@
1
+ #================
2
+ # Sections - Site Management
3
+ #================
4
+
5
+ class SectionsBase < BasePage
6
+
7
+ frame_element
8
+ basic_page_elements
9
+
10
+ class << self
11
+ def menu_elements
12
+ # Clicks the Add Sections button/link and instantiates
13
+ # the AddEditSections Class.
14
+ action(:add_sections) { |b| b.frm.link(:text=>"Add Sections").click }
15
+ action(:overview) { |b| b.frm.link(:text=>"Overview").click }
16
+ action(:student_memberships) { |b| b.frm.link(:text=>"Student Memberships").click }
17
+ action(:options) { |b| b.frm.link(:text=>"Options").click }
18
+ end
19
+ end
20
+ end
21
+
22
+ # Topmost page for Sections in Site Management
23
+ class Sections < SectionsBase
24
+
25
+ menu_elements
26
+
27
+ # Clicks the Edit link for the specified section.
28
+ # Then instantiates the AddEditSections class.
29
+ def edit(title)
30
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/).link(:text=>/Edit/).click
31
+ AddEditSections.new(@browser)
32
+ end
33
+
34
+ def assign_tas(title)
35
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/).link(:text=>/Assign TAs/).click
36
+ AssignTeachingAssistants.new(@browser)
37
+ end
38
+
39
+ def assign_students(title)
40
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/).link(:text=>/Assign Students/).click
41
+ AssignStudents.new(@browser)
42
+ end
43
+
44
+ def check(title)
45
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/).checkbox(:name=>/remove/).set
46
+ end
47
+
48
+ def section_names
49
+ names = []
50
+ frm.table(:class=>/listHier/).rows.each do |row|
51
+ if row.td(:class=>"leftIndent").exist?
52
+ names << row.td(:class=>"leftIndent").div(:index=>0).text
53
+ end
54
+ end
55
+ return names
56
+ end
57
+
58
+ def remove_sections
59
+ frm.button(:value=>"Remove Sections").click
60
+ Sections.new(@browser)
61
+ end
62
+
63
+ # Returns the text of the Teach Assistant cell for the specified
64
+ # Section.
65
+ def tas_for(title)
66
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/)[1].text
67
+ end
68
+
69
+ #
70
+ def days_for(title)
71
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/)[2].text
72
+ end
73
+
74
+ #
75
+ def time_for(title)
76
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/)[3].text
77
+ end
78
+
79
+ #
80
+ def location_for(title)
81
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/)[4].text
82
+ end
83
+
84
+ #
85
+ def current_size_for(title)
86
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/)[5].text
87
+ end
88
+
89
+ #
90
+ def availability_for(title)
91
+ frm.table(:class=>/listHier/).row(:text=>/#{Regexp.escape(title)}/)[6].text
92
+ end
93
+
94
+ def alert_text
95
+ frm.div(:class=>"validation").text
96
+ end
97
+
98
+ def success_text
99
+ frm.div(:class=>"success").text
100
+ end
101
+
102
+ end
103
+
104
+ # Methods in this class currently do not support
105
+ # adding multiple instances of sections simultaneously.
106
+ # That will be added at some future time.
107
+ # The same goes for adding days with different meeting times. This will hopefully
108
+ # be supported in the future.
109
+ class AddEditSections < SectionsBase
110
+
111
+ menu_elements
112
+
113
+ # The Update button is only available when editing an existing Sections record.
114
+ def update
115
+ frm.button(:value=>"Update").click
116
+ if frm.div(:class=>"validation").exist?
117
+ AddEditSections.new(@browser)
118
+ else
119
+ Sections.new(@browser)
120
+ end
121
+ end
122
+
123
+ # This method takes an array object containing strings of the
124
+ # days of the week and then clicks the appropriate checkboxes, based
125
+ # on those strings.
126
+ def check_days(array)
127
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:monday/).set if array.include?(/mon/i)
128
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:tuesday/).set if array.include?(/tue/i)
129
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:wednesday/).set if array.include?(/wed/i)
130
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:thursday/).set if array.include?(/thu/i)
131
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:friday/).set if array.include?(/fri/i)
132
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:saturday/).set if array.include?(/sat/i)
133
+ frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:sunday/).set if array.include?(/sun/i)
134
+ end
135
+
136
+ element(:category) { |b| b.frm.select(:id=>/SectionsForm:category/) }
137
+ element(:name) { |b| b.frm.text_field(:id=>/SectionsForm:sectionTable:0:titleInput/) }
138
+ element(:monday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:monday/) }
139
+ element(:tuesday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:tuesday/) }
140
+ element(:wednesday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:wednesday/) }
141
+ element(:thursday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:thursday/) }
142
+ element(:friday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:friday/) }
143
+ element(:saturday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:saturday/) }
144
+ element(:sunday) { |b| b.frm.checkbox(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:sunday/) }
145
+ element(:start_time) { |b| b.frm.text_field(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:startTime/) }
146
+ element(:end_time) { |b| b.frm.text_field(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:endTime/) }
147
+ element(:location) { |b| b.frm.text_field(:id=>/SectionsForm:sectionTable:0:meetingsTable:0:location/) }
148
+ element(:startAM) { |b| b.frm.radio(:name=>/SectionsForm:sectionTable:0:meetingsTable:0:startTimeAm/, :index=>0) }
149
+ element(:startPM) { |b| b.frm.radio(:name=>/SectionsForm:sectionTable:0:meetingsTable:0:startTimeAm/, :index=>1) }
150
+ element(:endAM) { |b| b.frm.radio(:name=>/SectionsForm:sectionTable:0:meetingsTable:0:endTimeAm/, :index=>0) }
151
+ element(:endPM) { |b| b.frm.radio(:name=>/SectionsForm:sectionTable:0:meetingsTable:0:endTimeAm/, :index=>1) }
152
+ element(:unlimited_students) { |b| b.frm.radio(:name=>/SectionsForm:sectionTable:0:limit/, :index=>0) }
153
+ element(:limited_students) { |b| b.frm.radio(:name=>/SectionsForm:sectionTable:0:limit/, :index=>1) }
154
+ element(:max_students) { |b| b.frm.text_field(:id=>/SectionsForm:sectionTable:0:maxEnrollmentInput/) }
155
+
156
+ end
157
+
158
+ #
159
+ class AssignTeachingAssistants < SectionsBase
160
+
161
+ menu_elements
162
+
163
+ def assign_TAs
164
+ frm.button(:value=>"Assign TAs").click
165
+ Sections.new(@browser)
166
+ end
167
+
168
+ element(:available_tas) { |b| b.frm.select(:id=>"memberForm:availableUsers") }
169
+ element(:assigned_tas) { |b| b.frm.select(:id=>"memberForm:selectedUsers") }
170
+ action(:assign) { |b| b.frm.button(:value=>">").click }
171
+ action(:unassign) { |b| b.frm.button(:value=>"<").click }
172
+ action(:assign_all) { |b| b.frm.button(:value=>">>").click }
173
+ action(:unassign_all) { |b| b.frm.button(:value=>"<<").click }
174
+
175
+ end
176
+
177
+ #
178
+ class AssignStudents < SectionsBase
179
+
180
+ menu_elements
181
+
182
+ def assign_students
183
+ frm.button(:value=>"Assign students").click
184
+ Sections.new(@browser)
185
+ end
186
+
187
+ element(:available_students) { |b| b.frm.select(:id=>"memberForm:availableUsers") }
188
+ element(:assigned_students) { |b| b.frm.select(:id=>"memberForm:selectedUsers") }
189
+ action(:assign) { |b| b.frm.button(:value=>">").click }
190
+ action(:unassign) { |b| b.frm.button(:value=>"<").click }
191
+ action(:assign_all) { |b| b.frm.button(:value=>">>").click }
192
+ action(:unassign_all) { |b| b.frm.button(:value=>"<<").click }
193
+
194
+ end
195
+
196
+ # The Options page for Sections.
197
+ class SectionsOptions < SectionsBase
198
+
199
+ menu_elements
200
+
201
+ element(:students_can_sign_up) { |b| b.frm.checkbox(:id=>"optionsForm:selfRegister") }
202
+ element(:students_can_switch) { |b| b.frm.checkbox(:id=>"optionsForm:selfSwitch") }
203
+
204
+ action(:update) { |b| b.frm.button(:id=>"optionsForm:_idJsp50").click }
205
+ action(:cancel) { |b| b.frm.button(:id=>"optionsForm:_idJsp51").click }
206
+
207
+ end
208
+
209
+ # The Add Sections Page in Site Management
210
+ class AddSections < SectionsBase
211
+
212
+ menu_elements
213
+
214
+ element(:num_to_add) { |b| b.frm.select_list(:id=>"addSectionsForm:numToAdd") }
215
+ element(:category) { |b| b.frm.select_list(:id=>"addSectionsForm:category") }
216
+ action(:cancel) { |b| b.frm.button(:id=>"addSectionsForm:_idJsp90").click }
217
+ # Note that the following field definitions are appropriate for
218
+ # ONLY THE FIRST instance of each of the fields. The Add Sections page
219
+ # allows for an arbitrary number of these fields to exist.
220
+ # If you are going to test the addition of multiple sections
221
+ # and/or meetings, then their elements will have to be
222
+ # explicitly called or defined in the test scripts themselves.
223
+ element(:name) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:titleInput") }
224
+ element(:unlimited_size) { |b| b.frm.radio(:name=>"addSectionsForm:sectionTable:0:limit") }
225
+ element(:limited_size) { |b| b.frm.select_list(:name=>"addSectionsForm:sectionTable:0:limit") }
226
+ element(:max_enrollment) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:maxEnrollmentInput") }
227
+ element(:monday) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:monday") }
228
+ element(:tuesday) { |b| b.frm.checkbox(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:tuesday") }
229
+ element(:wednesday) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:wednesday") }
230
+ element(:thursday) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:thursday") }
231
+ element(:friday) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:friday") }
232
+ element(:saturday) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:saturday") }
233
+ element(:sunday) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:sunday") }
234
+ element(:start_time) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:startTime") }
235
+ element(:start_am) { |b| b.frm.select_list(:name=>"addSectionsForm:sectionTable:0:meetingsTable:0:startTimeAm") }
236
+ element(:start_pm) { |b| b.frm.select_list(:name=>"addSectionsForm:sectionTable:0:meetingsTable:0:startTimeAm") }
237
+ element(:end_time) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:endTime") }
238
+ element(:end_am) { |b| b.frm.select_list(:name=>"addSectionsForm:sectionTable:0:meetingsTable:0:endTimeAm") }
239
+ element(:end_pm) { |b| b.frm.select_list(:name=>"addSectionsForm:sectionTable:0:meetingsTable:0:endTimeAm") }
240
+ element(:location) { |b| b.frm.text_field(:id=>"addSectionsForm:sectionTable:0:meetingsTable:0:location") }
241
+ action(:add_days) { |b| b.frm.link(:id=>"addSectionsForm:sectionTable:0:addMeeting").click }
242
+
243
+ end
244
+
245
+ # Exactly like the Add Sections page, but used when editing an existing section
246
+ class EditSections < SectionsBase
247
+
248
+ menu_elements
249
+
250
+ element(:num_to_add) { |b| b.frm.select_list(:id=>"editSectionsForm:numToAdd") }
251
+ element(:category) { |b| b.frm.select_list(:id=>"editSectionsForm:category") }
252
+ action(:cancel) { |b| b.frm.button(:id=>"editSectionsForm:_idJsp90").click }
253
+ # Note that the following field definitions are appropriate for
254
+ # ONLY THE FIRST instance of each of the fields. The Edit Sections page
255
+ # allows for an arbitrary number of these fields to exist.
256
+ # If you are going to test the editing of multiple sections
257
+ # and/or meetings, then their elements will have to be
258
+ # explicitly called or defined in the test scripts themselves.
259
+ element(:name) { |b| b.frm.text_field(:id=>"editSectionsForm:sectionTable:0:titleInput") }
260
+ element(:unlimited_size) { |b| b.frm.select_list(:name=>"editSectionsForm:sectionTable:0:limit") }
261
+ element(:limited_size) { |b| b.frm.select_list(:name=>"editSectionsForm:sectionTable:0:limit") }
262
+ element(:max_enrollment) { |b| b.frm.text_field(:id=>"editSectionsForm:sectionTable:0:maxEnrollmentInput") }
263
+ element(:monday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:monday") }
264
+ element(:tuesday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:tuesday") }
265
+ element(:wednesday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:wednesday") }
266
+ element(:thursday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:thursday") }
267
+ element(:friday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:friday") }
268
+ element(:saturday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:saturday") }
269
+ element(:sunday) { |b| b.checkbox(id=>"editSectionsForm:sectionTable:0:meetingsTable:0:sunday") }
270
+ element(:start_time) { |b| b.frm.text_field(:id=>"editSectionsForm:sectionTable:0:meetingsTable:0:startTime") }
271
+ element(:start_am) { |b| b.frm.select_list(:name=>"editSectionsForm:sectionTable:0:meetingsTable:0:startTimeAm") }
272
+ element(:start_pm) { |b| b.frm.select_list(:name=>"editSectionsForm:sectionTable:0:meetingsTable:0:startTimeAm") }
273
+ element(:end_time) { |b| b.frm.text_field(:id=>"editSectionsForm:sectionTable:0:meetingsTable:0:endTime") }
274
+ element(:end_am) { |b| b.frm.select_list(:name=>"editSectionsForm:sectionTable:0:meetingsTable:0:endTimeAm") }
275
+ element(:end_pm) { |b| b.frm.select_list(:name=>"editSectionsForm:sectionTable:0:meetingsTable:0:endTimeAm") }
276
+ element(:location) { |b| b.frm.text_field(:id=>"editSectionsForm:sectionTable:0:meetingsTable:0:location") }
277
+ action(:add_days) { |b| b.frm.link(:id=>"editSectionsForm:sectionTable:0:addMeeting").click }
278
+
279
+ end
280
+
281
+ # The Sections page
282
+ # found in the SITE MANAGEMENT menu for a Site
283
+ class SectionsOverview < SectionsBase
284
+
285
+ menu_elements
286
+
287
+ action(:sort_name) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp54").click }
288
+ action(:sort_ta) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp73").click }
289
+ action(:sort_day) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp78").click }
290
+ action(:sort_time) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp83").click }
291
+ action(:sort_location) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp88").click }
292
+ action(:sort_current_size) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp93").click }
293
+ action(:sort_avail) { |b| b.frm.link(id=>"overviewForm:sectionsTable:_idJsp97").click }
294
+
295
+ end
@@ -0,0 +1 @@
1
+ # This needs some work. :-)