compony 0.5.9 → 0.6.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/Gemfile.lock +1 -1
- data/README.md +21 -0
- data/VERSION +1 -1
- data/compony.gemspec +3 -3
- data/config/locales/de.yml +13 -0
- data/config/locales/en.yml +13 -0
- data/config/locales/fr.yml +14 -1
- data/doc/ComponentGenerator.html +16 -4
- data/doc/Components.html +3 -3
- data/doc/ComponentsGenerator.html +3 -3
- data/doc/Compony/Component.html +4 -4
- data/doc/Compony/ComponentMixins/Default/Labelling.html +3 -3
- data/doc/Compony/ComponentMixins/Default/Standalone/ResourcefulVerbDsl.html +3 -3
- data/doc/Compony/ComponentMixins/Default/Standalone/StandaloneDsl.html +3 -3
- data/doc/Compony/ComponentMixins/Default/Standalone/VerbDsl.html +3 -3
- data/doc/Compony/ComponentMixins/Default/Standalone.html +3 -3
- data/doc/Compony/ComponentMixins/Default.html +3 -3
- data/doc/Compony/ComponentMixins/Resourceful.html +4 -4
- data/doc/Compony/ComponentMixins.html +3 -3
- data/doc/Compony/Components/Button.html +3 -3
- data/doc/Compony/Components/Destroy.html +3 -3
- data/doc/Compony/Components/Edit.html +3 -3
- data/doc/Compony/Components/Form.html +3 -3
- data/doc/Compony/Components/Index.html +172 -0
- data/doc/Compony/Components/List.html +2731 -0
- data/doc/Compony/Components/New.html +3 -3
- data/doc/Compony/Components/Show.html +740 -0
- data/doc/Compony/Components/WithForm.html +3 -3
- data/doc/Compony/Components.html +5 -5
- data/doc/Compony/ControllerMixin.html +3 -3
- data/doc/Compony/Engine.html +3 -3
- data/doc/Compony/MethodAccessibleHash.html +3 -3
- data/doc/Compony/ModelFields/Anchormodel.html +136 -4
- data/doc/Compony/ModelFields/Association.html +4 -4
- data/doc/Compony/ModelFields/Attachment.html +4 -4
- data/doc/Compony/ModelFields/Base.html +143 -13
- data/doc/Compony/ModelFields/Boolean.html +136 -4
- data/doc/Compony/ModelFields/Color.html +4 -4
- data/doc/Compony/ModelFields/Currency.html +4 -4
- data/doc/Compony/ModelFields/Date.html +4 -4
- data/doc/Compony/ModelFields/Datetime.html +4 -4
- data/doc/Compony/ModelFields/Decimal.html +4 -4
- data/doc/Compony/ModelFields/Email.html +4 -4
- data/doc/Compony/ModelFields/Float.html +4 -4
- data/doc/Compony/ModelFields/Integer.html +83 -5
- data/doc/Compony/ModelFields/Percentage.html +4 -4
- data/doc/Compony/ModelFields/Phone.html +4 -4
- data/doc/Compony/ModelFields/RichText.html +4 -4
- data/doc/Compony/ModelFields/String.html +4 -4
- data/doc/Compony/ModelFields/Text.html +4 -4
- data/doc/Compony/ModelFields/Time.html +4 -4
- data/doc/Compony/ModelFields/Url.html +4 -4
- data/doc/Compony/ModelFields.html +3 -3
- data/doc/Compony/ModelMixin.html +26 -26
- data/doc/Compony/NaturalOrdering.html +3 -3
- data/doc/Compony/RequestContext.html +3 -3
- data/doc/Compony/Version.html +3 -3
- data/doc/Compony/ViewHelpers.html +3 -3
- data/doc/Compony.html +4 -4
- data/doc/ComponyController.html +3 -3
- data/doc/_index.html +25 -4
- data/doc/class_list.html +3 -6
- data/doc/css/full_list.css +3 -3
- data/doc/css/style.css +0 -6
- data/doc/file.README.html +37 -10
- data/doc/file_list.html +2 -5
- data/doc/frames.html +5 -10
- data/doc/index.html +37 -10
- data/doc/js/app.js +264 -294
- data/doc/js/full_list.js +4 -30
- data/doc/method_list.html +423 -114
- data/doc/top-level-namespace.html +3 -3
- data/lib/compony/components/index.rb +33 -0
- data/lib/compony/components/list.rb +418 -0
- data/lib/compony/components/show.rb +116 -0
- data/lib/compony/model_fields/anchormodel.rb +13 -0
- data/lib/compony/model_fields/base.rb +12 -0
- data/lib/compony/model_fields/boolean.rb +13 -0
- data/lib/compony/model_fields/integer.rb +3 -0
- data/lib/compony/model_mixin.rb +5 -0
- data/lib/compony.rb +3 -0
- data/lib/generators/component/component_generator.rb +6 -0
- data/lib/generators/component/templates/index.rb.erb +2 -0
- data/lib/generators/component/templates/list.rb.erb +7 -0
- data/lib/generators/component/templates/show.rb.erb +2 -0
- metadata +10 -1
@@ -0,0 +1,2731 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
|
+
<title>
|
7
|
+
Class: Compony::Components::List
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.34
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
|
16
|
+
|
17
|
+
<script type="text/javascript">
|
18
|
+
pathId = "Compony::Components::List";
|
19
|
+
relpath = '../../';
|
20
|
+
</script>
|
21
|
+
|
22
|
+
|
23
|
+
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
|
24
|
+
|
25
|
+
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
|
26
|
+
|
27
|
+
|
28
|
+
</head>
|
29
|
+
<body>
|
30
|
+
<div class="nav_wrap">
|
31
|
+
<iframe id="nav" src="../../class_list.html?1"></iframe>
|
32
|
+
<div id="resizer"></div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div id="main" tabindex="-1">
|
36
|
+
<div id="header">
|
37
|
+
<div id="menu">
|
38
|
+
|
39
|
+
<a href="../../_index.html">Index (L)</a> »
|
40
|
+
<span class='title'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span> » <span class='title'><span class='object_link'><a href="../Components.html" title="Compony::Components (module)">Components</a></span></span>
|
41
|
+
»
|
42
|
+
<span class="title">List</span>
|
43
|
+
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="search">
|
47
|
+
|
48
|
+
<a class="full_list_link" id="class_list_link"
|
49
|
+
href="../../class_list.html">
|
50
|
+
|
51
|
+
<svg width="24" height="24">
|
52
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
53
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
54
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
55
|
+
</svg>
|
56
|
+
</a>
|
57
|
+
|
58
|
+
</div>
|
59
|
+
<div class="clear"></div>
|
60
|
+
</div>
|
61
|
+
|
62
|
+
<div id="content"><h1>Class: Compony::Components::List
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
</h1>
|
67
|
+
<div class="box_info">
|
68
|
+
|
69
|
+
<dl>
|
70
|
+
<dt>Inherits:</dt>
|
71
|
+
<dd>
|
72
|
+
<span class="inheritName"><span class='object_link'><a href="../Component.html" title="Compony::Component (class)">Compony::Component</a></span></span>
|
73
|
+
|
74
|
+
<ul class="fullTree">
|
75
|
+
<li>Object</li>
|
76
|
+
|
77
|
+
<li class="next"><span class='object_link'><a href="../Component.html" title="Compony::Component (class)">Compony::Component</a></span></li>
|
78
|
+
|
79
|
+
<li class="next">Compony::Components::List</li>
|
80
|
+
|
81
|
+
</ul>
|
82
|
+
<a href="#" class="inheritanceTree">show all</a>
|
83
|
+
|
84
|
+
</dd>
|
85
|
+
</dl>
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
<dl>
|
93
|
+
<dt>Includes:</dt>
|
94
|
+
<dd><span class='object_link'><a href="../ComponentMixins/Resourceful.html" title="Compony::ComponentMixins::Resourceful (module)">Compony::ComponentMixins::Resourceful</a></span></dd>
|
95
|
+
</dl>
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
<dl>
|
103
|
+
<dt>Defined in:</dt>
|
104
|
+
<dd>lib/compony/components/list.rb</dd>
|
105
|
+
</dl>
|
106
|
+
|
107
|
+
</div>
|
108
|
+
|
109
|
+
<h2>Overview</h2><div class="docstring">
|
110
|
+
<div class="discussion">
|
111
|
+
|
112
|
+
<p>This component is used for the Rails list paradigm. It is meant to be nested inside the same family’s <code>::Index</code> or an owner’s <code>::Show</code> component.</p>
|
113
|
+
|
114
|
+
|
115
|
+
</div>
|
116
|
+
</div>
|
117
|
+
<div class="tags">
|
118
|
+
|
119
|
+
|
120
|
+
</div>
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
<h2>Instance Attribute Summary</h2>
|
127
|
+
|
128
|
+
<h3 class="inherited">Attributes included from <span class='object_link'><a href="../ComponentMixins/Resourceful.html" title="Compony::ComponentMixins::Resourceful (module)">Compony::ComponentMixins::Resourceful</a></span></h3>
|
129
|
+
<p class="inherited"><span class='object_link'><a href="../ComponentMixins/Resourceful.html#data-instance_method" title="Compony::ComponentMixins::Resourceful#data (method)">#data</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#global_after_assign_attributes_block-instance_method" title="Compony::ComponentMixins::Resourceful#global_after_assign_attributes_block (method)">#global_after_assign_attributes_block</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#global_after_load_data_block-instance_method" title="Compony::ComponentMixins::Resourceful#global_after_load_data_block (method)">#global_after_load_data_block</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#global_assign_attributes_block-instance_method" title="Compony::ComponentMixins::Resourceful#global_assign_attributes_block (method)">#global_assign_attributes_block</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#global_load_data_block-instance_method" title="Compony::ComponentMixins::Resourceful#global_load_data_block (method)">#global_load_data_block</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#global_store_data_block-instance_method" title="Compony::ComponentMixins::Resourceful#global_store_data_block (method)">#global_store_data_block</a></span></p>
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Component.html" title="Compony::Component (class)">Compony::Component</a></span></h3>
|
134
|
+
<p class="inherited"><span class='object_link'><a href="../Component.html#comp_opts-instance_method" title="Compony::Component#comp_opts (method)">#comp_opts</a></span>, <span class='object_link'><a href="../Component.html#content_blocks-instance_method" title="Compony::Component#content_blocks (method)">#content_blocks</a></span>, <span class='object_link'><a href="../Component.html#parent_comp-instance_method" title="Compony::Component#parent_comp (method)">#parent_comp</a></span></p>
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
<h2>
|
139
|
+
Instance Method Summary
|
140
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
141
|
+
</h2>
|
142
|
+
|
143
|
+
<ul class="summary">
|
144
|
+
|
145
|
+
<li class="public ">
|
146
|
+
<span class="summary_signature">
|
147
|
+
|
148
|
+
<a href="#column-instance_method" title="#column (instance method)">#<strong>column</strong>(name, label: nil, class: nil, link_opts: {}, &block) ⇒ Object </a>
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
</span>
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
<span class="summary_desc"><div class='inline'>
|
163
|
+
<p>DSL method Adds a new column to the list.</p>
|
164
|
+
</div></span>
|
165
|
+
|
166
|
+
</li>
|
167
|
+
|
168
|
+
|
169
|
+
<li class="public ">
|
170
|
+
<span class="summary_signature">
|
171
|
+
|
172
|
+
<a href="#columns-instance_method" title="#columns (instance method)">#<strong>columns</strong>(*col_names) ⇒ Object </a>
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
</span>
|
177
|
+
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
<span class="summary_desc"><div class='inline'>
|
187
|
+
<p>DSL method Adds multiple columns at once, sharing the same kwargs.</p>
|
188
|
+
</div></span>
|
189
|
+
|
190
|
+
</li>
|
191
|
+
|
192
|
+
|
193
|
+
<li class="public ">
|
194
|
+
<span class="summary_signature">
|
195
|
+
|
196
|
+
<a href="#filter-instance_method" title="#filter (instance method)">#<strong>filter</strong>(name, label: nil, &block) ⇒ Object </a>
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
</span>
|
201
|
+
|
202
|
+
|
203
|
+
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
|
210
|
+
<span class="summary_desc"><div class='inline'>
|
211
|
+
<p>DSL method Adds a ransack filter.</p>
|
212
|
+
</div></span>
|
213
|
+
|
214
|
+
</li>
|
215
|
+
|
216
|
+
|
217
|
+
<li class="public ">
|
218
|
+
<span class="summary_signature">
|
219
|
+
|
220
|
+
<a href="#filter_input_class-instance_method" title="#filter_input_class (instance method)">#<strong>filter_input_class</strong>(class_str) ⇒ Object </a>
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
</span>
|
225
|
+
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
<span class="summary_desc"><div class='inline'>
|
235
|
+
<p>DSL method Sets the CSS class attribute for string form inputs in filters.</p>
|
236
|
+
</div></span>
|
237
|
+
|
238
|
+
</li>
|
239
|
+
|
240
|
+
|
241
|
+
<li class="public ">
|
242
|
+
<span class="summary_signature">
|
243
|
+
|
244
|
+
<a href="#filter_item_wrapper_class-instance_method" title="#filter_item_wrapper_class (instance method)">#<strong>filter_item_wrapper_class</strong>(class_str) ⇒ Object </a>
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
</span>
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
|
258
|
+
<span class="summary_desc"><div class='inline'>
|
259
|
+
<p>DSL method Sets the CSS class attribute for the div that wraps input-related elements in filters (inputs, selects, labels).</p>
|
260
|
+
</div></span>
|
261
|
+
|
262
|
+
</li>
|
263
|
+
|
264
|
+
|
265
|
+
<li class="public ">
|
266
|
+
<span class="summary_signature">
|
267
|
+
|
268
|
+
<a href="#filter_label_class-instance_method" title="#filter_label_class (instance method)">#<strong>filter_label_class</strong>(class_str) ⇒ Object </a>
|
269
|
+
|
270
|
+
|
271
|
+
|
272
|
+
</span>
|
273
|
+
|
274
|
+
|
275
|
+
|
276
|
+
|
277
|
+
|
278
|
+
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
<span class="summary_desc"><div class='inline'>
|
283
|
+
<p>DSL method Sets the CSS class attribute for form label elements in filters.</p>
|
284
|
+
</div></span>
|
285
|
+
|
286
|
+
</li>
|
287
|
+
|
288
|
+
|
289
|
+
<li class="public ">
|
290
|
+
<span class="summary_signature">
|
291
|
+
|
292
|
+
<a href="#filter_select_class-instance_method" title="#filter_select_class (instance method)">#<strong>filter_select_class</strong>(class_str) ⇒ Object </a>
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
</span>
|
297
|
+
|
298
|
+
|
299
|
+
|
300
|
+
|
301
|
+
|
302
|
+
|
303
|
+
|
304
|
+
|
305
|
+
|
306
|
+
<span class="summary_desc"><div class='inline'>
|
307
|
+
<p>DSL method Sets the CSS class attribute for form select inputs in filters.</p>
|
308
|
+
</div></span>
|
309
|
+
|
310
|
+
</li>
|
311
|
+
|
312
|
+
|
313
|
+
<li class="protected ">
|
314
|
+
<span class="summary_signature">
|
315
|
+
|
316
|
+
<a href="#filtering_enabled%3F-instance_method" title="#filtering_enabled? (instance method)">#<strong>filtering_enabled?</strong> ⇒ Boolean </a>
|
317
|
+
|
318
|
+
|
319
|
+
|
320
|
+
</span>
|
321
|
+
|
322
|
+
|
323
|
+
|
324
|
+
<span class="note title protected">protected</span>
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
<span class="summary_desc"><div class='inline'>
|
331
|
+
<p>Returns whether filtering is possible and wanted in general (regardless of whether there are any filters defined).</p>
|
332
|
+
</div></span>
|
333
|
+
|
334
|
+
</li>
|
335
|
+
|
336
|
+
|
337
|
+
<li class="public ">
|
338
|
+
<span class="summary_signature">
|
339
|
+
|
340
|
+
<a href="#filters-instance_method" title="#filters (instance method)">#<strong>filters</strong>(*filter_names) ⇒ Object </a>
|
341
|
+
|
342
|
+
|
343
|
+
|
344
|
+
</span>
|
345
|
+
|
346
|
+
|
347
|
+
|
348
|
+
|
349
|
+
|
350
|
+
|
351
|
+
|
352
|
+
|
353
|
+
|
354
|
+
<span class="summary_desc"><div class='inline'>
|
355
|
+
<p>DSL method Adds multiple filters at once, sharing the same kwargs.</p>
|
356
|
+
</div></span>
|
357
|
+
|
358
|
+
</li>
|
359
|
+
|
360
|
+
|
361
|
+
<li class="public ">
|
362
|
+
<span class="summary_signature">
|
363
|
+
|
364
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(skip_pagination: false, results_per_page: 20, skip_filtering: false, skip_sorting: false, skip_sorting_in_filter: false, skip_sorting_links: false, skip_columns: [], skip_row_actions: [], skip_filters: []) ⇒ List </a>
|
365
|
+
|
366
|
+
|
367
|
+
|
368
|
+
</span>
|
369
|
+
|
370
|
+
|
371
|
+
<span class="note title constructor">constructor</span>
|
372
|
+
|
373
|
+
|
374
|
+
|
375
|
+
|
376
|
+
|
377
|
+
|
378
|
+
|
379
|
+
|
380
|
+
<span class="summary_desc"><div class='inline'>
|
381
|
+
<p>The following parameters are meant for the case where this component is nested and therefore instanciated by a parent comp.</p>
|
382
|
+
</div></span>
|
383
|
+
|
384
|
+
</li>
|
385
|
+
|
386
|
+
|
387
|
+
<li class="protected ">
|
388
|
+
<span class="summary_signature">
|
389
|
+
|
390
|
+
<a href="#pagination_enabled%3F-instance_method" title="#pagination_enabled? (instance method)">#<strong>pagination_enabled?</strong> ⇒ Boolean </a>
|
391
|
+
|
392
|
+
|
393
|
+
|
394
|
+
</span>
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
<span class="note title protected">protected</span>
|
399
|
+
|
400
|
+
|
401
|
+
|
402
|
+
|
403
|
+
|
404
|
+
<span class="summary_desc"><div class='inline'>
|
405
|
+
<p>Returns whether pagination is enabled (regardless of whether there is more than one page).</p>
|
406
|
+
</div></span>
|
407
|
+
|
408
|
+
</li>
|
409
|
+
|
410
|
+
|
411
|
+
<li class="public ">
|
412
|
+
<span class="summary_signature">
|
413
|
+
|
414
|
+
<a href="#process_data!-instance_method" title="#process_data! (instance method)">#<strong>process_data!</strong>(controller) ⇒ Object </a>
|
415
|
+
|
416
|
+
|
417
|
+
|
418
|
+
</span>
|
419
|
+
|
420
|
+
|
421
|
+
|
422
|
+
|
423
|
+
|
424
|
+
|
425
|
+
|
426
|
+
|
427
|
+
|
428
|
+
<span class="summary_desc"><div class='inline'>
|
429
|
+
<p>This method must be called before the data is read for the first time.</p>
|
430
|
+
</div></span>
|
431
|
+
|
432
|
+
</li>
|
433
|
+
|
434
|
+
|
435
|
+
<li class="public ">
|
436
|
+
<span class="summary_signature">
|
437
|
+
|
438
|
+
<a href="#results_per_page-instance_method" title="#results_per_page (instance method)">#<strong>results_per_page</strong>(new_results_per_page) ⇒ Object </a>
|
439
|
+
|
440
|
+
|
441
|
+
|
442
|
+
</span>
|
443
|
+
|
444
|
+
|
445
|
+
|
446
|
+
|
447
|
+
|
448
|
+
|
449
|
+
|
450
|
+
|
451
|
+
|
452
|
+
<span class="summary_desc"><div class='inline'>
|
453
|
+
<p>DSL method In case pagination is active, defines the amount of records to display per page.</p>
|
454
|
+
</div></span>
|
455
|
+
|
456
|
+
</li>
|
457
|
+
|
458
|
+
|
459
|
+
<li class="public ">
|
460
|
+
<span class="summary_signature">
|
461
|
+
|
462
|
+
<a href="#row_action-instance_method" title="#row_action (instance method)">#<strong>row_action</strong>(name, button_opts: {}, &block) ⇒ Object </a>
|
463
|
+
|
464
|
+
|
465
|
+
|
466
|
+
</span>
|
467
|
+
|
468
|
+
|
469
|
+
|
470
|
+
|
471
|
+
|
472
|
+
|
473
|
+
|
474
|
+
|
475
|
+
|
476
|
+
<span class="summary_desc"><div class='inline'>
|
477
|
+
<p>DSL method Adds a row action.</p>
|
478
|
+
</div></span>
|
479
|
+
|
480
|
+
</li>
|
481
|
+
|
482
|
+
|
483
|
+
<li class="public ">
|
484
|
+
<span class="summary_signature">
|
485
|
+
|
486
|
+
<a href="#skip_column-instance_method" title="#skip_column (instance method)">#<strong>skip_column</strong>(name) ⇒ Object </a>
|
487
|
+
|
488
|
+
|
489
|
+
|
490
|
+
</span>
|
491
|
+
|
492
|
+
|
493
|
+
|
494
|
+
|
495
|
+
|
496
|
+
|
497
|
+
|
498
|
+
|
499
|
+
|
500
|
+
<span class="summary_desc"><div class='inline'>
|
501
|
+
<p>DSL method Marks a single column as skipped.</p>
|
502
|
+
</div></span>
|
503
|
+
|
504
|
+
</li>
|
505
|
+
|
506
|
+
|
507
|
+
<li class="public ">
|
508
|
+
<span class="summary_signature">
|
509
|
+
|
510
|
+
<a href="#skip_filtering!-instance_method" title="#skip_filtering! (instance method)">#<strong>skip_filtering!</strong> ⇒ Object </a>
|
511
|
+
|
512
|
+
|
513
|
+
|
514
|
+
</span>
|
515
|
+
|
516
|
+
|
517
|
+
|
518
|
+
|
519
|
+
|
520
|
+
|
521
|
+
|
522
|
+
|
523
|
+
|
524
|
+
<span class="summary_desc"><div class='inline'>
|
525
|
+
<p>DSL method Disables filtering entirely (sorting is independent of this setting).</p>
|
526
|
+
</div></span>
|
527
|
+
|
528
|
+
</li>
|
529
|
+
|
530
|
+
|
531
|
+
<li class="public ">
|
532
|
+
<span class="summary_signature">
|
533
|
+
|
534
|
+
<a href="#skip_pagination!-instance_method" title="#skip_pagination! (instance method)">#<strong>skip_pagination!</strong> ⇒ Object </a>
|
535
|
+
|
536
|
+
|
537
|
+
|
538
|
+
</span>
|
539
|
+
|
540
|
+
|
541
|
+
|
542
|
+
|
543
|
+
|
544
|
+
|
545
|
+
|
546
|
+
|
547
|
+
|
548
|
+
<span class="summary_desc"><div class='inline'>
|
549
|
+
<p>DSL method Disables pagination (caution: all records will be loaded).</p>
|
550
|
+
</div></span>
|
551
|
+
|
552
|
+
</li>
|
553
|
+
|
554
|
+
|
555
|
+
<li class="public ">
|
556
|
+
<span class="summary_signature">
|
557
|
+
|
558
|
+
<a href="#skip_row_action-instance_method" title="#skip_row_action (instance method)">#<strong>skip_row_action</strong>(name) ⇒ Object </a>
|
559
|
+
|
560
|
+
|
561
|
+
|
562
|
+
</span>
|
563
|
+
|
564
|
+
|
565
|
+
|
566
|
+
|
567
|
+
|
568
|
+
|
569
|
+
|
570
|
+
|
571
|
+
|
572
|
+
<span class="summary_desc"><div class='inline'>
|
573
|
+
<p>DSL method Marks a single row action as skipped.</p>
|
574
|
+
</div></span>
|
575
|
+
|
576
|
+
</li>
|
577
|
+
|
578
|
+
|
579
|
+
<li class="public ">
|
580
|
+
<span class="summary_signature">
|
581
|
+
|
582
|
+
<a href="#skip_sorting!-instance_method" title="#skip_sorting! (instance method)">#<strong>skip_sorting!</strong> ⇒ Object </a>
|
583
|
+
|
584
|
+
|
585
|
+
|
586
|
+
</span>
|
587
|
+
|
588
|
+
|
589
|
+
|
590
|
+
|
591
|
+
|
592
|
+
|
593
|
+
|
594
|
+
|
595
|
+
|
596
|
+
<span class="summary_desc"><div class='inline'>
|
597
|
+
<p>DSL method Disables sorting entirely (both links and sorting input in filter).</p>
|
598
|
+
</div></span>
|
599
|
+
|
600
|
+
</li>
|
601
|
+
|
602
|
+
|
603
|
+
<li class="public ">
|
604
|
+
<span class="summary_signature">
|
605
|
+
|
606
|
+
<a href="#skip_sorting_in_filter!-instance_method" title="#skip_sorting_in_filter! (instance method)">#<strong>skip_sorting_in_filter!</strong> ⇒ Object </a>
|
607
|
+
|
608
|
+
|
609
|
+
|
610
|
+
</span>
|
611
|
+
|
612
|
+
|
613
|
+
|
614
|
+
|
615
|
+
|
616
|
+
|
617
|
+
|
618
|
+
|
619
|
+
|
620
|
+
<span class="summary_desc"><div class='inline'>
|
621
|
+
<p>DSL method Disables sorting in filter.</p>
|
622
|
+
</div></span>
|
623
|
+
|
624
|
+
</li>
|
625
|
+
|
626
|
+
|
627
|
+
<li class="public ">
|
628
|
+
<span class="summary_signature">
|
629
|
+
|
630
|
+
<a href="#skip_sorting_links!-instance_method" title="#skip_sorting_links! (instance method)">#<strong>skip_sorting_links!</strong> ⇒ Object </a>
|
631
|
+
|
632
|
+
|
633
|
+
|
634
|
+
</span>
|
635
|
+
|
636
|
+
|
637
|
+
|
638
|
+
|
639
|
+
|
640
|
+
|
641
|
+
|
642
|
+
|
643
|
+
|
644
|
+
<span class="summary_desc"><div class='inline'>
|
645
|
+
<p>DSL method Disables sorting links.</p>
|
646
|
+
</div></span>
|
647
|
+
|
648
|
+
</li>
|
649
|
+
|
650
|
+
|
651
|
+
<li class="public ">
|
652
|
+
<span class="summary_signature">
|
653
|
+
|
654
|
+
<a href="#sort-instance_method" title="#sort (instance method)">#<strong>sort</strong>(name, label: nil) ⇒ Object </a>
|
655
|
+
|
656
|
+
|
657
|
+
|
658
|
+
</span>
|
659
|
+
|
660
|
+
|
661
|
+
|
662
|
+
|
663
|
+
|
664
|
+
|
665
|
+
|
666
|
+
|
667
|
+
|
668
|
+
<span class="summary_desc"><div class='inline'>
|
669
|
+
<p>DSL method Adds a sorting criterion that will be processed by ransack.</p>
|
670
|
+
</div></span>
|
671
|
+
|
672
|
+
</li>
|
673
|
+
|
674
|
+
|
675
|
+
<li class="protected ">
|
676
|
+
<span class="summary_signature">
|
677
|
+
|
678
|
+
<a href="#sorting_enabled%3F-instance_method" title="#sorting_enabled? (instance method)">#<strong>sorting_enabled?</strong> ⇒ Boolean </a>
|
679
|
+
|
680
|
+
|
681
|
+
|
682
|
+
</span>
|
683
|
+
|
684
|
+
|
685
|
+
|
686
|
+
<span class="note title protected">protected</span>
|
687
|
+
|
688
|
+
|
689
|
+
|
690
|
+
|
691
|
+
|
692
|
+
<span class="summary_desc"><div class='inline'>
|
693
|
+
<p>Returns whether sorting is possible and wanted in general (regardless of whether there are any sorts defined).</p>
|
694
|
+
</div></span>
|
695
|
+
|
696
|
+
</li>
|
697
|
+
|
698
|
+
|
699
|
+
<li class="protected ">
|
700
|
+
<span class="summary_signature">
|
701
|
+
|
702
|
+
<a href="#sorting_in_filter_enabled%3F-instance_method" title="#sorting_in_filter_enabled? (instance method)">#<strong>sorting_in_filter_enabled?</strong> ⇒ Boolean </a>
|
703
|
+
|
704
|
+
|
705
|
+
|
706
|
+
</span>
|
707
|
+
|
708
|
+
|
709
|
+
|
710
|
+
<span class="note title protected">protected</span>
|
711
|
+
|
712
|
+
|
713
|
+
|
714
|
+
|
715
|
+
|
716
|
+
<span class="summary_desc"><div class='inline'>
|
717
|
+
<p>Returns whether sorting in filter is possible and wanted in general (regardless of whether there are any sorts defined).</p>
|
718
|
+
</div></span>
|
719
|
+
|
720
|
+
</li>
|
721
|
+
|
722
|
+
|
723
|
+
<li class="protected ">
|
724
|
+
<span class="summary_signature">
|
725
|
+
|
726
|
+
<a href="#sorting_in_filter_select_opts-instance_method" title="#sorting_in_filter_select_opts (instance method)">#<strong>sorting_in_filter_select_opts</strong> ⇒ Object </a>
|
727
|
+
|
728
|
+
|
729
|
+
|
730
|
+
</span>
|
731
|
+
|
732
|
+
|
733
|
+
|
734
|
+
<span class="note title protected">protected</span>
|
735
|
+
|
736
|
+
|
737
|
+
|
738
|
+
|
739
|
+
|
740
|
+
<span class="summary_desc"><div class='inline'>
|
741
|
+
<p>Returns the select options for sorting suitable for passing in a <code>f.select</code>.</p>
|
742
|
+
</div></span>
|
743
|
+
|
744
|
+
</li>
|
745
|
+
|
746
|
+
|
747
|
+
<li class="protected ">
|
748
|
+
<span class="summary_signature">
|
749
|
+
|
750
|
+
<a href="#sorting_links_enabled%3F-instance_method" title="#sorting_links_enabled? (instance method)">#<strong>sorting_links_enabled?</strong> ⇒ Boolean </a>
|
751
|
+
|
752
|
+
|
753
|
+
|
754
|
+
</span>
|
755
|
+
|
756
|
+
|
757
|
+
|
758
|
+
<span class="note title protected">protected</span>
|
759
|
+
|
760
|
+
|
761
|
+
|
762
|
+
|
763
|
+
|
764
|
+
<span class="summary_desc"><div class='inline'>
|
765
|
+
<p>Returns whether generating sorting links is possible and wanted in general (regardless of whether there are any sorts defined).</p>
|
766
|
+
</div></span>
|
767
|
+
|
768
|
+
</li>
|
769
|
+
|
770
|
+
|
771
|
+
<li class="public ">
|
772
|
+
<span class="summary_signature">
|
773
|
+
|
774
|
+
<a href="#sorts-instance_method" title="#sorts (instance method)">#<strong>sorts</strong>(*names) ⇒ Object </a>
|
775
|
+
|
776
|
+
|
777
|
+
|
778
|
+
</span>
|
779
|
+
|
780
|
+
|
781
|
+
|
782
|
+
|
783
|
+
|
784
|
+
|
785
|
+
|
786
|
+
|
787
|
+
|
788
|
+
<span class="summary_desc"><div class='inline'>
|
789
|
+
<p>DSL method Adds multiple sorts at once, sharing the same kwargs.</p>
|
790
|
+
</div></span>
|
791
|
+
|
792
|
+
</li>
|
793
|
+
|
794
|
+
|
795
|
+
</ul>
|
796
|
+
|
797
|
+
|
798
|
+
|
799
|
+
|
800
|
+
|
801
|
+
|
802
|
+
|
803
|
+
|
804
|
+
|
805
|
+
|
806
|
+
|
807
|
+
<h3 class="inherited">Methods included from <span class='object_link'><a href="../ComponentMixins/Resourceful.html" title="Compony::ComponentMixins::Resourceful (module)">Compony::ComponentMixins::Resourceful</a></span></h3>
|
808
|
+
<p class="inherited"><span class='object_link'><a href="../ComponentMixins/Resourceful.html#after_assign_attributes-instance_method" title="Compony::ComponentMixins::Resourceful#after_assign_attributes (method)">#after_assign_attributes</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#after_load_data-instance_method" title="Compony::ComponentMixins::Resourceful#after_load_data (method)">#after_load_data</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#assign_attributes-instance_method" title="Compony::ComponentMixins::Resourceful#assign_attributes (method)">#assign_attributes</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#data_class-instance_method" title="Compony::ComponentMixins::Resourceful#data_class (method)">#data_class</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#load_data-instance_method" title="Compony::ComponentMixins::Resourceful#load_data (method)">#load_data</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#resourceful%3F-instance_method" title="Compony::ComponentMixins::Resourceful#resourceful? (method)">#resourceful?</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#resourceful_sub_comp-instance_method" title="Compony::ComponentMixins::Resourceful#resourceful_sub_comp (method)">#resourceful_sub_comp</a></span>, <span class='object_link'><a href="../ComponentMixins/Resourceful.html#store_data-instance_method" title="Compony::ComponentMixins::Resourceful#store_data (method)">#store_data</a></span></p>
|
809
|
+
|
810
|
+
|
811
|
+
|
812
|
+
|
813
|
+
|
814
|
+
|
815
|
+
|
816
|
+
|
817
|
+
|
818
|
+
|
819
|
+
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Component.html" title="Compony::Component (class)">Compony::Component</a></span></h3>
|
820
|
+
<p class="inherited"><span class='object_link'><a href="../Component.html#action-instance_method" title="Compony::Component#action (method)">#action</a></span>, <span class='object_link'><a href="../Component.html#before_render-instance_method" title="Compony::Component#before_render (method)">#before_render</a></span>, <span class='object_link'><a href="../Component.html#comp_cst-class_method" title="Compony::Component.comp_cst (method)">comp_cst</a></span>, <span class='object_link'><a href="../Component.html#comp_name-class_method" title="Compony::Component.comp_name (method)">comp_name</a></span>, <span class='object_link'><a href="../Component.html#content-instance_method" title="Compony::Component#content (method)">#content</a></span>, <span class='object_link'><a href="../Component.html#family_cst-class_method" title="Compony::Component.family_cst (method)">family_cst</a></span>, <span class='object_link'><a href="../Component.html#family_name-class_method" title="Compony::Component.family_name (method)">family_name</a></span>, <span class='object_link'><a href="../Component.html#id-instance_method" title="Compony::Component#id (method)">#id</a></span>, <span class='object_link'><a href="../Component.html#inspect-instance_method" title="Compony::Component#inspect (method)">#inspect</a></span>, <span class='object_link'><a href="../Component.html#param_name-instance_method" title="Compony::Component#param_name (method)">#param_name</a></span>, <span class='object_link'><a href="../Component.html#path-instance_method" title="Compony::Component#path (method)">#path</a></span>, <span class='object_link'><a href="../Component.html#path_hash-instance_method" title="Compony::Component#path_hash (method)">#path_hash</a></span>, <span class='object_link'><a href="../Component.html#remove_content-instance_method" title="Compony::Component#remove_content (method)">#remove_content</a></span>, <span class='object_link'><a href="../Component.html#remove_content!-instance_method" title="Compony::Component#remove_content! (method)">#remove_content!</a></span>, <span class='object_link'><a href="../Component.html#render-instance_method" title="Compony::Component#render (method)">#render</a></span>, <span class='object_link'><a href="../Component.html#render_actions-instance_method" title="Compony::Component#render_actions (method)">#render_actions</a></span>, <span class='object_link'><a href="../Component.html#resourceful%3F-instance_method" title="Compony::Component#resourceful? (method)">#resourceful?</a></span>, <span class='object_link'><a href="../Component.html#root_comp-instance_method" title="Compony::Component#root_comp (method)">#root_comp</a></span>, <span class='object_link'><a href="../Component.html#root_comp%3F-instance_method" title="Compony::Component#root_comp? (method)">#root_comp?</a></span>, <span class='object_link'><a href="../Component.html#setup-class_method" title="Compony::Component.setup (method)">setup</a></span>, <span class='object_link'><a href="../Component.html#skip_action-instance_method" title="Compony::Component#skip_action (method)">#skip_action</a></span>, <span class='object_link'><a href="../Component.html#sub_comp-instance_method" title="Compony::Component#sub_comp (method)">#sub_comp</a></span></p>
|
821
|
+
<div id="constructor_details" class="method_details_list">
|
822
|
+
<h2>Constructor Details</h2>
|
823
|
+
|
824
|
+
<div class="method_details first">
|
825
|
+
<h3 class="signature first" id="initialize-instance_method">
|
826
|
+
|
827
|
+
#<strong>initialize</strong>(skip_pagination: false, results_per_page: 20, skip_filtering: false, skip_sorting: false, skip_sorting_in_filter: false, skip_sorting_links: false, skip_columns: [], skip_row_actions: [], skip_filters: []) ⇒ <tt><span class='object_link'><a href="" title="Compony::Components::List (class)">List</a></span></tt>
|
828
|
+
|
829
|
+
|
830
|
+
|
831
|
+
|
832
|
+
|
833
|
+
</h3><div class="docstring">
|
834
|
+
<div class="discussion">
|
835
|
+
|
836
|
+
<p>The following parameters are meant for the case where this component is nested and therefore instanciated by a parent comp. If the component is to configure itself, use the DSL calls below instead.</p>
|
837
|
+
|
838
|
+
|
839
|
+
</div>
|
840
|
+
</div>
|
841
|
+
<div class="tags">
|
842
|
+
<p class="tag_title">Parameters:</p>
|
843
|
+
<ul class="param">
|
844
|
+
|
845
|
+
<li>
|
846
|
+
|
847
|
+
<span class='name'>skip_pagination</span>
|
848
|
+
|
849
|
+
|
850
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
851
|
+
|
852
|
+
|
853
|
+
<em class="default">(defaults to: <tt>false</tt>)</em>
|
854
|
+
|
855
|
+
|
856
|
+
—
|
857
|
+
<div class='inline'>
|
858
|
+
<p>Disables pagination (caution: all records will be loaded)</p>
|
859
|
+
</div>
|
860
|
+
|
861
|
+
</li>
|
862
|
+
|
863
|
+
<li>
|
864
|
+
|
865
|
+
<span class='name'>results_per_page</span>
|
866
|
+
|
867
|
+
|
868
|
+
<span class='type'>(<tt>Integer</tt>)</span>
|
869
|
+
|
870
|
+
|
871
|
+
<em class="default">(defaults to: <tt>20</tt>)</em>
|
872
|
+
|
873
|
+
|
874
|
+
—
|
875
|
+
<div class='inline'>
|
876
|
+
<p>In case pagination is active, defines the amount of records to display per page.</p>
|
877
|
+
</div>
|
878
|
+
|
879
|
+
</li>
|
880
|
+
|
881
|
+
<li>
|
882
|
+
|
883
|
+
<span class='name'>skip_filtering</span>
|
884
|
+
|
885
|
+
|
886
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
887
|
+
|
888
|
+
|
889
|
+
<em class="default">(defaults to: <tt>false</tt>)</em>
|
890
|
+
|
891
|
+
|
892
|
+
—
|
893
|
+
<div class='inline'>
|
894
|
+
<p>Disables filtering entirely (sorting is independent of this setting).</p>
|
895
|
+
</div>
|
896
|
+
|
897
|
+
</li>
|
898
|
+
|
899
|
+
<li>
|
900
|
+
|
901
|
+
<span class='name'>skip_sorting</span>
|
902
|
+
|
903
|
+
|
904
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
905
|
+
|
906
|
+
|
907
|
+
<em class="default">(defaults to: <tt>false</tt>)</em>
|
908
|
+
|
909
|
+
|
910
|
+
—
|
911
|
+
<div class='inline'>
|
912
|
+
<p>Disables sorting entirely (both links and sorting input in filter).</p>
|
913
|
+
</div>
|
914
|
+
|
915
|
+
</li>
|
916
|
+
|
917
|
+
<li>
|
918
|
+
|
919
|
+
<span class='name'>skip_sorting_in_filter</span>
|
920
|
+
|
921
|
+
|
922
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
923
|
+
|
924
|
+
|
925
|
+
<em class="default">(defaults to: <tt>false</tt>)</em>
|
926
|
+
|
927
|
+
|
928
|
+
—
|
929
|
+
<div class='inline'>
|
930
|
+
<p>Disables sorting in filter.</p>
|
931
|
+
</div>
|
932
|
+
|
933
|
+
</li>
|
934
|
+
|
935
|
+
<li>
|
936
|
+
|
937
|
+
<span class='name'>skip_sorting_links</span>
|
938
|
+
|
939
|
+
|
940
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
941
|
+
|
942
|
+
|
943
|
+
<em class="default">(defaults to: <tt>false</tt>)</em>
|
944
|
+
|
945
|
+
|
946
|
+
—
|
947
|
+
<div class='inline'>
|
948
|
+
<p>Disables sorting links.</p>
|
949
|
+
</div>
|
950
|
+
|
951
|
+
</li>
|
952
|
+
|
953
|
+
<li>
|
954
|
+
|
955
|
+
<span class='name'>skip_columns</span>
|
956
|
+
|
957
|
+
|
958
|
+
<span class='type'>(<tt>Array</tt>)</span>
|
959
|
+
|
960
|
+
|
961
|
+
<em class="default">(defaults to: <tt>[]</tt>)</em>
|
962
|
+
|
963
|
+
|
964
|
+
—
|
965
|
+
<div class='inline'>
|
966
|
+
<p>Column names to be skipped.</p>
|
967
|
+
</div>
|
968
|
+
|
969
|
+
</li>
|
970
|
+
|
971
|
+
<li>
|
972
|
+
|
973
|
+
<span class='name'>skip_row_actions</span>
|
974
|
+
|
975
|
+
|
976
|
+
<span class='type'>(<tt>Array</tt>)</span>
|
977
|
+
|
978
|
+
|
979
|
+
<em class="default">(defaults to: <tt>[]</tt>)</em>
|
980
|
+
|
981
|
+
|
982
|
+
—
|
983
|
+
<div class='inline'>
|
984
|
+
<p>Row action names to be skipped.</p>
|
985
|
+
</div>
|
986
|
+
|
987
|
+
</li>
|
988
|
+
|
989
|
+
<li>
|
990
|
+
|
991
|
+
<span class='name'>skip_filters</span>
|
992
|
+
|
993
|
+
|
994
|
+
<span class='type'>(<tt>Array</tt>)</span>
|
995
|
+
|
996
|
+
|
997
|
+
<em class="default">(defaults to: <tt>[]</tt>)</em>
|
998
|
+
|
999
|
+
|
1000
|
+
—
|
1001
|
+
<div class='inline'>
|
1002
|
+
<p>Filter names to be skipped.</p>
|
1003
|
+
</div>
|
1004
|
+
|
1005
|
+
</li>
|
1006
|
+
|
1007
|
+
</ul>
|
1008
|
+
|
1009
|
+
|
1010
|
+
</div><table class="source_code">
|
1011
|
+
<tr>
|
1012
|
+
<td>
|
1013
|
+
<pre class="lines">
|
1014
|
+
|
1015
|
+
|
1016
|
+
19
|
1017
|
+
20
|
1018
|
+
21
|
1019
|
+
22
|
1020
|
+
23
|
1021
|
+
24
|
1022
|
+
25
|
1023
|
+
26
|
1024
|
+
27
|
1025
|
+
28
|
1026
|
+
29
|
1027
|
+
30
|
1028
|
+
31
|
1029
|
+
32
|
1030
|
+
33
|
1031
|
+
34
|
1032
|
+
35
|
1033
|
+
36
|
1034
|
+
37
|
1035
|
+
38
|
1036
|
+
39
|
1037
|
+
40
|
1038
|
+
41
|
1039
|
+
42
|
1040
|
+
43
|
1041
|
+
44
|
1042
|
+
45
|
1043
|
+
46
|
1044
|
+
47</pre>
|
1045
|
+
</td>
|
1046
|
+
<td>
|
1047
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 19</span>
|
1048
|
+
|
1049
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>*</span><span class='comma'>,</span>
|
1050
|
+
<span class='label'>skip_pagination:</span> <span class='kw'>false</span><span class='comma'>,</span>
|
1051
|
+
<span class='label'>results_per_page:</span> <span class='int'>20</span><span class='comma'>,</span>
|
1052
|
+
<span class='label'>skip_filtering:</span> <span class='kw'>false</span><span class='comma'>,</span>
|
1053
|
+
<span class='label'>skip_sorting:</span> <span class='kw'>false</span><span class='comma'>,</span>
|
1054
|
+
<span class='label'>skip_sorting_in_filter:</span> <span class='kw'>false</span><span class='comma'>,</span>
|
1055
|
+
<span class='label'>skip_sorting_links:</span> <span class='kw'>false</span><span class='comma'>,</span>
|
1056
|
+
<span class='label'>skip_columns:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
1057
|
+
<span class='label'>skip_row_actions:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
1058
|
+
<span class='label'>skip_filters:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
1059
|
+
<span class='op'>**</span><span class='rparen'>)</span>
|
1060
|
+
<span class='ivar'>@pagination</span> <span class='op'>=</span> <span class='op'>!</span><span class='id identifier rubyid_skip_pagination'>skip_pagination</span>
|
1061
|
+
<span class='ivar'>@results_per_page</span> <span class='op'>=</span> <span class='id identifier rubyid_results_per_page'>results_per_page</span>
|
1062
|
+
<span class='ivar'>@filtering</span> <span class='op'>=</span> <span class='op'>!</span><span class='id identifier rubyid_skip_filtering'>skip_filtering</span>
|
1063
|
+
<span class='ivar'>@sorting_in_filter</span> <span class='op'>=</span> <span class='op'>!</span><span class='id identifier rubyid_skip_sorting'>skip_sorting</span> <span class='op'>&&</span> <span class='op'>!</span><span class='id identifier rubyid_skip_sorting_in_filter'>skip_sorting_in_filter</span>
|
1064
|
+
<span class='ivar'>@sorting_links</span> <span class='op'>=</span> <span class='op'>!</span><span class='id identifier rubyid_skip_sorting'>skip_sorting</span> <span class='op'>&&</span> <span class='op'>!</span><span class='id identifier rubyid_skip_sorting_links'>skip_sorting_links</span>
|
1065
|
+
<span class='ivar'>@columns</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../NaturalOrdering.html" title="Compony::NaturalOrdering (class)">NaturalOrdering</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
1066
|
+
<span class='ivar'>@row_actions</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../NaturalOrdering.html" title="Compony::NaturalOrdering (class)">NaturalOrdering</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
1067
|
+
<span class='ivar'>@skipped_columns</span> <span class='op'>=</span> <span class='id identifier rubyid_skip_columns'>skip_columns</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&</span><span class='symbol'>:to_sym</span><span class='rparen'>)</span>
|
1068
|
+
<span class='ivar'>@skipped_row_actions</span> <span class='op'>=</span> <span class='id identifier rubyid_skip_row_actions'>skip_row_actions</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&</span><span class='symbol'>:to_sym</span><span class='rparen'>)</span>
|
1069
|
+
<span class='ivar'>@filters</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../NaturalOrdering.html" title="Compony::NaturalOrdering (class)">NaturalOrdering</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
1070
|
+
<span class='ivar'>@sorts</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../NaturalOrdering.html" title="Compony::NaturalOrdering (class)">NaturalOrdering</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
1071
|
+
<span class='ivar'>@skipped_filters</span> <span class='op'>=</span> <span class='id identifier rubyid_skip_filters'>skip_filters</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&</span><span class='symbol'>:to_sym</span><span class='rparen'>)</span>
|
1072
|
+
<span class='ivar'>@filter_label_class</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>list-filter-label</span><span class='tstring_end'>'</span></span>
|
1073
|
+
<span class='ivar'>@filter_input_class</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>list-filter-input</span><span class='tstring_end'>'</span></span>
|
1074
|
+
<span class='ivar'>@filter_select_class</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>list-filter-select</span><span class='tstring_end'>'</span></span>
|
1075
|
+
<span class='ivar'>@filter_item_wrapper_class</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
1076
|
+
<span class='kw'>super</span><span class='lparen'>(</span><span class='op'>*</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
1077
|
+
<span class='kw'>end</span></pre>
|
1078
|
+
</td>
|
1079
|
+
</tr>
|
1080
|
+
</table>
|
1081
|
+
</div>
|
1082
|
+
|
1083
|
+
</div>
|
1084
|
+
|
1085
|
+
|
1086
|
+
<div id="instance_method_details" class="method_details_list">
|
1087
|
+
<h2>Instance Method Details</h2>
|
1088
|
+
|
1089
|
+
|
1090
|
+
<div class="method_details first">
|
1091
|
+
<h3 class="signature first" id="column-instance_method">
|
1092
|
+
|
1093
|
+
#<strong>column</strong>(name, label: nil, class: nil, link_opts: {}, &block) ⇒ <tt>Object</tt>
|
1094
|
+
|
1095
|
+
|
1096
|
+
|
1097
|
+
|
1098
|
+
|
1099
|
+
</h3><div class="docstring">
|
1100
|
+
<div class="discussion">
|
1101
|
+
|
1102
|
+
<p>DSL method Adds a new column to the list. If <code>name</code> corresponds to that of a field, everything is auto-inferred. Custom columns can be added by providing at least <code>label</code> and a block that will be given a record and instance-execed for every row. Please note that the column is only shown if the current user has permission to index the attribute.</p>
|
1103
|
+
|
1104
|
+
|
1105
|
+
</div>
|
1106
|
+
</div>
|
1107
|
+
<div class="tags">
|
1108
|
+
<p class="tag_title">Parameters:</p>
|
1109
|
+
<ul class="param">
|
1110
|
+
|
1111
|
+
<li>
|
1112
|
+
|
1113
|
+
<span class='name'>name</span>
|
1114
|
+
|
1115
|
+
|
1116
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1117
|
+
|
1118
|
+
|
1119
|
+
|
1120
|
+
—
|
1121
|
+
<div class='inline'>
|
1122
|
+
<p>Name of the field that is supposed to be displayed. If custom name, make sure the user has the permission to index the attribute.</p>
|
1123
|
+
</div>
|
1124
|
+
|
1125
|
+
</li>
|
1126
|
+
|
1127
|
+
<li>
|
1128
|
+
|
1129
|
+
<span class='name'>label</span>
|
1130
|
+
|
1131
|
+
|
1132
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1133
|
+
|
1134
|
+
|
1135
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
1136
|
+
|
1137
|
+
|
1138
|
+
—
|
1139
|
+
<div class='inline'>
|
1140
|
+
<p>Title of the column to be displayed in the table header.</p>
|
1141
|
+
</div>
|
1142
|
+
|
1143
|
+
</li>
|
1144
|
+
|
1145
|
+
<li>
|
1146
|
+
|
1147
|
+
<span class='name'>class</span>
|
1148
|
+
|
1149
|
+
|
1150
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1151
|
+
|
1152
|
+
|
1153
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
1154
|
+
|
1155
|
+
|
1156
|
+
—
|
1157
|
+
<div class='inline'>
|
1158
|
+
<p>Space-separated list of CSS classes for each cell</p>
|
1159
|
+
</div>
|
1160
|
+
|
1161
|
+
</li>
|
1162
|
+
|
1163
|
+
<li>
|
1164
|
+
|
1165
|
+
<span class='name'>link_opts</span>
|
1166
|
+
|
1167
|
+
|
1168
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1169
|
+
|
1170
|
+
|
1171
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1172
|
+
|
1173
|
+
|
1174
|
+
—
|
1175
|
+
<div class='inline'>
|
1176
|
+
<p>Only used in the case of a model field, this is used to pass options to the field’s <code>value_for</code>.</p>
|
1177
|
+
</div>
|
1178
|
+
|
1179
|
+
</li>
|
1180
|
+
|
1181
|
+
<li>
|
1182
|
+
|
1183
|
+
<span class='name'>block</span>
|
1184
|
+
|
1185
|
+
|
1186
|
+
<span class='type'>(<tt>Block</tt>)</span>
|
1187
|
+
|
1188
|
+
|
1189
|
+
|
1190
|
+
—
|
1191
|
+
<div class='inline'>
|
1192
|
+
<p>Custom block, given the record and instance-execed in the context of the cell for every row.</p>
|
1193
|
+
</div>
|
1194
|
+
|
1195
|
+
</li>
|
1196
|
+
|
1197
|
+
</ul>
|
1198
|
+
|
1199
|
+
|
1200
|
+
</div><table class="source_code">
|
1201
|
+
<tr>
|
1202
|
+
<td>
|
1203
|
+
<pre class="lines">
|
1204
|
+
|
1205
|
+
|
1206
|
+
123
|
1207
|
+
124
|
1208
|
+
125
|
1209
|
+
126
|
1210
|
+
127
|
1211
|
+
128
|
1212
|
+
129
|
1213
|
+
130
|
1214
|
+
131
|
1215
|
+
132
|
1216
|
+
133
|
1217
|
+
134
|
1218
|
+
135</pre>
|
1219
|
+
</td>
|
1220
|
+
<td>
|
1221
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 123</span>
|
1222
|
+
|
1223
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_column'>column</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>label:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>class:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>link_opts:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>**</span><span class='comma'>,</span> <span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
1224
|
+
<span class='id identifier rubyid_name'>name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
1225
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
|
1226
|
+
<span class='comment'># Assume field column
|
1227
|
+
</span> <span class='id identifier rubyid_field'>field</span> <span class='op'>=</span> <span class='id identifier rubyid_data_class'>data_class</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Field </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> was not found for data class </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_data_class'>data_class</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1228
|
+
<span class='id identifier rubyid_block'>block</span> <span class='op'>=</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_record'>record</span><span class='op'>|</span>
|
1229
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='period'>.</span><span class='id identifier rubyid_permitted_attributes'>permitted_attributes</span><span class='lparen'>(</span><span class='symbol'>:index</span><span class='comma'>,</span> <span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rparen'>)</span>
|
1230
|
+
<span class='kw'>next</span> <span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_value_for'>value_for</span><span class='lparen'>(</span><span class='id identifier rubyid_record'>record</span><span class='comma'>,</span> <span class='label'>link_to_component:</span> <span class='symbol'>:show</span><span class='comma'>,</span> <span class='label'>controller:</span><span class='comma'>,</span> <span class='label'>link_opts:</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
|
1231
|
+
<span class='kw'>end</span>
|
1232
|
+
<span class='kw'>end</span>
|
1233
|
+
<span class='kw'>end</span>
|
1234
|
+
<span class='ivar'>@columns</span><span class='period'>.</span><span class='id identifier rubyid_natural_push'>natural_push</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_block'>block</span><span class='comma'>,</span> <span class='label'>label:</span> <span class='id identifier rubyid_label'>label</span> <span class='op'>||</span> <span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_label'>label</span><span class='comma'>,</span> <span class='label'>class:</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
1235
|
+
<span class='kw'>end</span></pre>
|
1236
|
+
</td>
|
1237
|
+
</tr>
|
1238
|
+
</table>
|
1239
|
+
</div>
|
1240
|
+
|
1241
|
+
<div class="method_details ">
|
1242
|
+
<h3 class="signature " id="columns-instance_method">
|
1243
|
+
|
1244
|
+
#<strong>columns</strong>(*col_names) ⇒ <tt>Object</tt>
|
1245
|
+
|
1246
|
+
|
1247
|
+
|
1248
|
+
|
1249
|
+
|
1250
|
+
</h3><div class="docstring">
|
1251
|
+
<div class="discussion">
|
1252
|
+
|
1253
|
+
<p>DSL method Adds multiple columns at once, sharing the same kwargs.</p>
|
1254
|
+
|
1255
|
+
|
1256
|
+
</div>
|
1257
|
+
</div>
|
1258
|
+
<div class="tags">
|
1259
|
+
|
1260
|
+
|
1261
|
+
</div><table class="source_code">
|
1262
|
+
<tr>
|
1263
|
+
<td>
|
1264
|
+
<pre class="lines">
|
1265
|
+
|
1266
|
+
|
1267
|
+
139
|
1268
|
+
140
|
1269
|
+
141</pre>
|
1270
|
+
</td>
|
1271
|
+
<td>
|
1272
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 139</span>
|
1273
|
+
|
1274
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_columns'>columns</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_col_names'>col_names</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
1275
|
+
<span class='id identifier rubyid_col_names'>col_names</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_col_name'>col_name</span><span class='op'>|</span> <span class='id identifier rubyid_column'>column</span><span class='lparen'>(</span><span class='id identifier rubyid_col_name'>col_name</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
1276
|
+
<span class='kw'>end</span></pre>
|
1277
|
+
</td>
|
1278
|
+
</tr>
|
1279
|
+
</table>
|
1280
|
+
</div>
|
1281
|
+
|
1282
|
+
<div class="method_details ">
|
1283
|
+
<h3 class="signature " id="filter-instance_method">
|
1284
|
+
|
1285
|
+
#<strong>filter</strong>(name, label: nil, &block) ⇒ <tt>Object</tt>
|
1286
|
+
|
1287
|
+
|
1288
|
+
|
1289
|
+
|
1290
|
+
|
1291
|
+
</h3><div class="docstring">
|
1292
|
+
<div class="discussion">
|
1293
|
+
|
1294
|
+
<p>DSL method Adds a ransack filter. If <code>name</code> is the name of an existing model field, the filter is auto-generated. If <code>name</code> is a valid Ransack search string (e.g. <code>id_eq</code>), all you need to pass is <code>name</code> and <code>label</code>. To create a fully custom filter, pass <code>name</code> and <code>block</code>. The block will be given the Ransack search form and should return HTML.</p>
|
1295
|
+
|
1296
|
+
|
1297
|
+
</div>
|
1298
|
+
</div>
|
1299
|
+
<div class="tags">
|
1300
|
+
<p class="tag_title">Parameters:</p>
|
1301
|
+
<ul class="param">
|
1302
|
+
|
1303
|
+
<li>
|
1304
|
+
|
1305
|
+
<span class='name'>name</span>
|
1306
|
+
|
1307
|
+
|
1308
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1309
|
+
|
1310
|
+
|
1311
|
+
|
1312
|
+
—
|
1313
|
+
<div class='inline'>
|
1314
|
+
<p>The name of the filter. Can either be the name of a field, a ransack search string or a custom name (see above).</p>
|
1315
|
+
</div>
|
1316
|
+
|
1317
|
+
</li>
|
1318
|
+
|
1319
|
+
<li>
|
1320
|
+
|
1321
|
+
<span class='name'>label</span>
|
1322
|
+
|
1323
|
+
|
1324
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1325
|
+
|
1326
|
+
|
1327
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
1328
|
+
|
1329
|
+
|
1330
|
+
—
|
1331
|
+
<div class='inline'>
|
1332
|
+
<p>The text to use in the input’s label.</p>
|
1333
|
+
</div>
|
1334
|
+
|
1335
|
+
</li>
|
1336
|
+
|
1337
|
+
<li>
|
1338
|
+
|
1339
|
+
<span class='name'>block</span>
|
1340
|
+
|
1341
|
+
|
1342
|
+
<span class='type'>(<tt>Block</tt>)</span>
|
1343
|
+
|
1344
|
+
|
1345
|
+
|
1346
|
+
—
|
1347
|
+
<div class='inline'>
|
1348
|
+
<p>Custom block that will be given the Ransack search form and should produce a label and a search input.</p>
|
1349
|
+
</div>
|
1350
|
+
|
1351
|
+
</li>
|
1352
|
+
|
1353
|
+
</ul>
|
1354
|
+
|
1355
|
+
|
1356
|
+
</div><table class="source_code">
|
1357
|
+
<tr>
|
1358
|
+
<td>
|
1359
|
+
<pre class="lines">
|
1360
|
+
|
1361
|
+
|
1362
|
+
182
|
1363
|
+
183
|
1364
|
+
184
|
1365
|
+
185
|
1366
|
+
186
|
1367
|
+
187
|
1368
|
+
188
|
1369
|
+
189
|
1370
|
+
190
|
1371
|
+
191
|
1372
|
+
192
|
1373
|
+
193
|
1374
|
+
194
|
1375
|
+
195
|
1376
|
+
196
|
1377
|
+
197
|
1378
|
+
198
|
1379
|
+
199
|
1380
|
+
200
|
1381
|
+
201
|
1382
|
+
202
|
1383
|
+
203</pre>
|
1384
|
+
</td>
|
1385
|
+
<td>
|
1386
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 182</span>
|
1387
|
+
|
1388
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>label:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='comma'>,</span> <span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
1389
|
+
<span class='id identifier rubyid_name'>name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
1390
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
|
1391
|
+
<span class='id identifier rubyid_field'>field</span> <span class='op'>=</span> <span class='id identifier rubyid_data_class'>data_class</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span>
|
1392
|
+
<span class='id identifier rubyid_block'>block</span> <span class='op'>||=</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
|
1393
|
+
<span class='id identifier rubyid_label'>label</span> <span class='op'>||=</span> <span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_label'>label</span> <span class='kw'>if</span> <span class='id identifier rubyid_field'>field</span>
|
1394
|
+
<span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>You must provide a label to filter </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>.</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_label'>label</span>
|
1395
|
+
|
1396
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_field'>field</span>
|
1397
|
+
<span class='id identifier rubyid_filter_name'>filter_name</span> <span class='op'>=</span> <span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_ransack_filter_name'>ransack_filter_name</span>
|
1398
|
+
<span class='id identifier rubyid_filter_input_html'>filter_input_html</span> <span class='op'>=</span> <span class='id identifier rubyid_capture'>capture</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_ransack_filter_input'>ransack_filter_input</span><span class='lparen'>(</span><span class='id identifier rubyid_f'>f</span><span class='comma'>,</span> <span class='label'>filter_input_class:</span> <span class='ivar'>@filter_input_class</span><span class='comma'>,</span> <span class='label'>filter_select_class:</span> <span class='ivar'>@filter_select_class</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
1399
|
+
<span class='kw'>else</span>
|
1400
|
+
<span class='id identifier rubyid_filter_name'>filter_name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
|
1401
|
+
<span class='id identifier rubyid_filter_input_html'>filter_input_html</span> <span class='op'>=</span> <span class='id identifier rubyid_capture'>capture</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_search_field'>search_field</span><span class='lparen'>(</span><span class='id identifier rubyid_filter_name'>filter_name</span><span class='comma'>,</span> <span class='label'>class:</span> <span class='ivar'>@filter_input_class</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
1402
|
+
<span class='kw'>end</span>
|
1403
|
+
<span class='id identifier rubyid_div'>div</span> <span class='id identifier rubyid_tag'>tag</span><span class='period'>.</span><span class='id identifier rubyid_label'>label</span><span class='lparen'>(</span><span class='id identifier rubyid_label'>label</span><span class='comma'>,</span> <span class='label'>for:</span> <span class='id identifier rubyid_filter_name'>filter_name</span><span class='comma'>,</span> <span class='label'>class:</span> <span class='ivar'>@filter_label_class</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='label'>class:</span> <span class='ivar'>@filter_item_wrapper_class</span>
|
1404
|
+
<span class='id identifier rubyid_div'>div</span> <span class='id identifier rubyid_filter_input_html'>filter_input_html</span><span class='comma'>,</span> <span class='label'>class:</span> <span class='ivar'>@filter_item_wrapper_class</span>
|
1405
|
+
<span class='kw'>end</span>
|
1406
|
+
<span class='kw'>end</span>
|
1407
|
+
|
1408
|
+
<span class='ivar'>@filters</span><span class='period'>.</span><span class='id identifier rubyid_natural_push'>natural_push</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_block'>block</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
1409
|
+
<span class='kw'>end</span></pre>
|
1410
|
+
</td>
|
1411
|
+
</tr>
|
1412
|
+
</table>
|
1413
|
+
</div>
|
1414
|
+
|
1415
|
+
<div class="method_details ">
|
1416
|
+
<h3 class="signature " id="filter_input_class-instance_method">
|
1417
|
+
|
1418
|
+
#<strong>filter_input_class</strong>(class_str) ⇒ <tt>Object</tt>
|
1419
|
+
|
1420
|
+
|
1421
|
+
|
1422
|
+
|
1423
|
+
|
1424
|
+
</h3><div class="docstring">
|
1425
|
+
<div class="discussion">
|
1426
|
+
|
1427
|
+
<p>DSL method Sets the CSS class attribute for string form inputs in filters.</p>
|
1428
|
+
|
1429
|
+
|
1430
|
+
</div>
|
1431
|
+
</div>
|
1432
|
+
<div class="tags">
|
1433
|
+
<p class="tag_title">Parameters:</p>
|
1434
|
+
<ul class="param">
|
1435
|
+
|
1436
|
+
<li>
|
1437
|
+
|
1438
|
+
<span class='name'>class_str</span>
|
1439
|
+
|
1440
|
+
|
1441
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1442
|
+
|
1443
|
+
|
1444
|
+
|
1445
|
+
—
|
1446
|
+
<div class='inline'>
|
1447
|
+
<p>Space-separated list of CSS classes</p>
|
1448
|
+
</div>
|
1449
|
+
|
1450
|
+
</li>
|
1451
|
+
|
1452
|
+
</ul>
|
1453
|
+
|
1454
|
+
|
1455
|
+
</div><table class="source_code">
|
1456
|
+
<tr>
|
1457
|
+
<td>
|
1458
|
+
<pre class="lines">
|
1459
|
+
|
1460
|
+
|
1461
|
+
96
|
1462
|
+
97
|
1463
|
+
98</pre>
|
1464
|
+
</td>
|
1465
|
+
<td>
|
1466
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 96</span>
|
1467
|
+
|
1468
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter_input_class'>filter_input_class</span><span class='lparen'>(</span><span class='id identifier rubyid_class_str'>class_str</span><span class='rparen'>)</span>
|
1469
|
+
<span class='ivar'>@filter_input_class</span> <span class='op'>=</span> <span class='id identifier rubyid_class_str'>class_str</span>
|
1470
|
+
<span class='kw'>end</span></pre>
|
1471
|
+
</td>
|
1472
|
+
</tr>
|
1473
|
+
</table>
|
1474
|
+
</div>
|
1475
|
+
|
1476
|
+
<div class="method_details ">
|
1477
|
+
<h3 class="signature " id="filter_item_wrapper_class-instance_method">
|
1478
|
+
|
1479
|
+
#<strong>filter_item_wrapper_class</strong>(class_str) ⇒ <tt>Object</tt>
|
1480
|
+
|
1481
|
+
|
1482
|
+
|
1483
|
+
|
1484
|
+
|
1485
|
+
</h3><div class="docstring">
|
1486
|
+
<div class="discussion">
|
1487
|
+
|
1488
|
+
<p>DSL method Sets the CSS class attribute for the div that wraps input-related elements in filters (inputs, selects, labels).</p>
|
1489
|
+
|
1490
|
+
|
1491
|
+
</div>
|
1492
|
+
</div>
|
1493
|
+
<div class="tags">
|
1494
|
+
<p class="tag_title">Parameters:</p>
|
1495
|
+
<ul class="param">
|
1496
|
+
|
1497
|
+
<li>
|
1498
|
+
|
1499
|
+
<span class='name'>class_str</span>
|
1500
|
+
|
1501
|
+
|
1502
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1503
|
+
|
1504
|
+
|
1505
|
+
|
1506
|
+
—
|
1507
|
+
<div class='inline'>
|
1508
|
+
<p>Space-separated list of CSS classes</p>
|
1509
|
+
</div>
|
1510
|
+
|
1511
|
+
</li>
|
1512
|
+
|
1513
|
+
</ul>
|
1514
|
+
|
1515
|
+
|
1516
|
+
</div><table class="source_code">
|
1517
|
+
<tr>
|
1518
|
+
<td>
|
1519
|
+
<pre class="lines">
|
1520
|
+
|
1521
|
+
|
1522
|
+
110
|
1523
|
+
111
|
1524
|
+
112</pre>
|
1525
|
+
</td>
|
1526
|
+
<td>
|
1527
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 110</span>
|
1528
|
+
|
1529
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter_item_wrapper_class'>filter_item_wrapper_class</span><span class='lparen'>(</span><span class='id identifier rubyid_class_str'>class_str</span><span class='rparen'>)</span>
|
1530
|
+
<span class='ivar'>@filter_item_wrapper_class</span> <span class='op'>=</span> <span class='id identifier rubyid_class_str'>class_str</span>
|
1531
|
+
<span class='kw'>end</span></pre>
|
1532
|
+
</td>
|
1533
|
+
</tr>
|
1534
|
+
</table>
|
1535
|
+
</div>
|
1536
|
+
|
1537
|
+
<div class="method_details ">
|
1538
|
+
<h3 class="signature " id="filter_label_class-instance_method">
|
1539
|
+
|
1540
|
+
#<strong>filter_label_class</strong>(class_str) ⇒ <tt>Object</tt>
|
1541
|
+
|
1542
|
+
|
1543
|
+
|
1544
|
+
|
1545
|
+
|
1546
|
+
</h3><div class="docstring">
|
1547
|
+
<div class="discussion">
|
1548
|
+
|
1549
|
+
<p>DSL method Sets the CSS class attribute for form label elements in filters.</p>
|
1550
|
+
|
1551
|
+
|
1552
|
+
</div>
|
1553
|
+
</div>
|
1554
|
+
<div class="tags">
|
1555
|
+
<p class="tag_title">Parameters:</p>
|
1556
|
+
<ul class="param">
|
1557
|
+
|
1558
|
+
<li>
|
1559
|
+
|
1560
|
+
<span class='name'>class_str</span>
|
1561
|
+
|
1562
|
+
|
1563
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1564
|
+
|
1565
|
+
|
1566
|
+
|
1567
|
+
—
|
1568
|
+
<div class='inline'>
|
1569
|
+
<p>Space-separated list of CSS classes</p>
|
1570
|
+
</div>
|
1571
|
+
|
1572
|
+
</li>
|
1573
|
+
|
1574
|
+
</ul>
|
1575
|
+
|
1576
|
+
|
1577
|
+
</div><table class="source_code">
|
1578
|
+
<tr>
|
1579
|
+
<td>
|
1580
|
+
<pre class="lines">
|
1581
|
+
|
1582
|
+
|
1583
|
+
89
|
1584
|
+
90
|
1585
|
+
91</pre>
|
1586
|
+
</td>
|
1587
|
+
<td>
|
1588
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 89</span>
|
1589
|
+
|
1590
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter_label_class'>filter_label_class</span><span class='lparen'>(</span><span class='id identifier rubyid_class_str'>class_str</span><span class='rparen'>)</span>
|
1591
|
+
<span class='ivar'>@filter_label_class</span> <span class='op'>=</span> <span class='id identifier rubyid_class_str'>class_str</span>
|
1592
|
+
<span class='kw'>end</span></pre>
|
1593
|
+
</td>
|
1594
|
+
</tr>
|
1595
|
+
</table>
|
1596
|
+
</div>
|
1597
|
+
|
1598
|
+
<div class="method_details ">
|
1599
|
+
<h3 class="signature " id="filter_select_class-instance_method">
|
1600
|
+
|
1601
|
+
#<strong>filter_select_class</strong>(class_str) ⇒ <tt>Object</tt>
|
1602
|
+
|
1603
|
+
|
1604
|
+
|
1605
|
+
|
1606
|
+
|
1607
|
+
</h3><div class="docstring">
|
1608
|
+
<div class="discussion">
|
1609
|
+
|
1610
|
+
<p>DSL method Sets the CSS class attribute for form select inputs in filters.</p>
|
1611
|
+
|
1612
|
+
|
1613
|
+
</div>
|
1614
|
+
</div>
|
1615
|
+
<div class="tags">
|
1616
|
+
<p class="tag_title">Parameters:</p>
|
1617
|
+
<ul class="param">
|
1618
|
+
|
1619
|
+
<li>
|
1620
|
+
|
1621
|
+
<span class='name'>class_str</span>
|
1622
|
+
|
1623
|
+
|
1624
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1625
|
+
|
1626
|
+
|
1627
|
+
|
1628
|
+
—
|
1629
|
+
<div class='inline'>
|
1630
|
+
<p>Space-separated list of CSS classes</p>
|
1631
|
+
</div>
|
1632
|
+
|
1633
|
+
</li>
|
1634
|
+
|
1635
|
+
</ul>
|
1636
|
+
|
1637
|
+
|
1638
|
+
</div><table class="source_code">
|
1639
|
+
<tr>
|
1640
|
+
<td>
|
1641
|
+
<pre class="lines">
|
1642
|
+
|
1643
|
+
|
1644
|
+
103
|
1645
|
+
104
|
1646
|
+
105</pre>
|
1647
|
+
</td>
|
1648
|
+
<td>
|
1649
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 103</span>
|
1650
|
+
|
1651
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter_select_class'>filter_select_class</span><span class='lparen'>(</span><span class='id identifier rubyid_class_str'>class_str</span><span class='rparen'>)</span>
|
1652
|
+
<span class='ivar'>@filter_select_class</span> <span class='op'>=</span> <span class='id identifier rubyid_class_str'>class_str</span>
|
1653
|
+
<span class='kw'>end</span></pre>
|
1654
|
+
</td>
|
1655
|
+
</tr>
|
1656
|
+
</table>
|
1657
|
+
</div>
|
1658
|
+
|
1659
|
+
<div class="method_details ">
|
1660
|
+
<h3 class="signature " id="filtering_enabled?-instance_method">
|
1661
|
+
|
1662
|
+
#<strong>filtering_enabled?</strong> ⇒ <tt>Boolean</tt> <span class="extras">(protected)</span>
|
1663
|
+
|
1664
|
+
|
1665
|
+
|
1666
|
+
|
1667
|
+
|
1668
|
+
</h3><div class="docstring">
|
1669
|
+
<div class="discussion">
|
1670
|
+
|
1671
|
+
<p>Returns whether filtering is possible and wanted in general (regardless of whether there are any filters defined)</p>
|
1672
|
+
|
1673
|
+
|
1674
|
+
</div>
|
1675
|
+
</div>
|
1676
|
+
<div class="tags">
|
1677
|
+
|
1678
|
+
<p class="tag_title">Returns:</p>
|
1679
|
+
<ul class="return">
|
1680
|
+
|
1681
|
+
<li>
|
1682
|
+
|
1683
|
+
|
1684
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1685
|
+
|
1686
|
+
|
1687
|
+
|
1688
|
+
</li>
|
1689
|
+
|
1690
|
+
</ul>
|
1691
|
+
|
1692
|
+
</div><table class="source_code">
|
1693
|
+
<tr>
|
1694
|
+
<td>
|
1695
|
+
<pre class="lines">
|
1696
|
+
|
1697
|
+
|
1698
|
+
382
|
1699
|
+
383
|
1700
|
+
384</pre>
|
1701
|
+
</td>
|
1702
|
+
<td>
|
1703
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 382</span>
|
1704
|
+
|
1705
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filtering_enabled?'>filtering_enabled?</span>
|
1706
|
+
<span class='ivar'>@filtering</span> <span class='op'>&&</span> <span class='kw'>defined?</span><span class='lparen'>(</span><span class='const'>Ransack</span><span class='rparen'>)</span>
|
1707
|
+
<span class='kw'>end</span></pre>
|
1708
|
+
</td>
|
1709
|
+
</tr>
|
1710
|
+
</table>
|
1711
|
+
</div>
|
1712
|
+
|
1713
|
+
<div class="method_details ">
|
1714
|
+
<h3 class="signature " id="filters-instance_method">
|
1715
|
+
|
1716
|
+
#<strong>filters</strong>(*filter_names) ⇒ <tt>Object</tt>
|
1717
|
+
|
1718
|
+
|
1719
|
+
|
1720
|
+
|
1721
|
+
|
1722
|
+
</h3><div class="docstring">
|
1723
|
+
<div class="discussion">
|
1724
|
+
|
1725
|
+
<p>DSL method Adds multiple filters at once, sharing the same kwargs.</p>
|
1726
|
+
|
1727
|
+
|
1728
|
+
</div>
|
1729
|
+
</div>
|
1730
|
+
<div class="tags">
|
1731
|
+
|
1732
|
+
|
1733
|
+
</div><table class="source_code">
|
1734
|
+
<tr>
|
1735
|
+
<td>
|
1736
|
+
<pre class="lines">
|
1737
|
+
|
1738
|
+
|
1739
|
+
207
|
1740
|
+
208
|
1741
|
+
209</pre>
|
1742
|
+
</td>
|
1743
|
+
<td>
|
1744
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 207</span>
|
1745
|
+
|
1746
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filters'>filters</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_filter_names'>filter_names</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
1747
|
+
<span class='id identifier rubyid_filter_names'>filter_names</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_filter_name'>filter_name</span><span class='op'>|</span> <span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='id identifier rubyid_filter_name'>filter_name</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
1748
|
+
<span class='kw'>end</span></pre>
|
1749
|
+
</td>
|
1750
|
+
</tr>
|
1751
|
+
</table>
|
1752
|
+
</div>
|
1753
|
+
|
1754
|
+
<div class="method_details ">
|
1755
|
+
<h3 class="signature " id="pagination_enabled?-instance_method">
|
1756
|
+
|
1757
|
+
#<strong>pagination_enabled?</strong> ⇒ <tt>Boolean</tt> <span class="extras">(protected)</span>
|
1758
|
+
|
1759
|
+
|
1760
|
+
|
1761
|
+
|
1762
|
+
|
1763
|
+
</h3><div class="docstring">
|
1764
|
+
<div class="discussion">
|
1765
|
+
|
1766
|
+
<p>Returns whether pagination is enabled (regardless of whether there is more than one page)</p>
|
1767
|
+
|
1768
|
+
|
1769
|
+
</div>
|
1770
|
+
</div>
|
1771
|
+
<div class="tags">
|
1772
|
+
|
1773
|
+
<p class="tag_title">Returns:</p>
|
1774
|
+
<ul class="return">
|
1775
|
+
|
1776
|
+
<li>
|
1777
|
+
|
1778
|
+
|
1779
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1780
|
+
|
1781
|
+
|
1782
|
+
|
1783
|
+
</li>
|
1784
|
+
|
1785
|
+
</ul>
|
1786
|
+
|
1787
|
+
</div><table class="source_code">
|
1788
|
+
<tr>
|
1789
|
+
<td>
|
1790
|
+
<pre class="lines">
|
1791
|
+
|
1792
|
+
|
1793
|
+
402
|
1794
|
+
403
|
1795
|
+
404</pre>
|
1796
|
+
</td>
|
1797
|
+
<td>
|
1798
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 402</span>
|
1799
|
+
|
1800
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_pagination_enabled?'>pagination_enabled?</span>
|
1801
|
+
<span class='ivar'>@pagination</span>
|
1802
|
+
<span class='kw'>end</span></pre>
|
1803
|
+
</td>
|
1804
|
+
</tr>
|
1805
|
+
</table>
|
1806
|
+
</div>
|
1807
|
+
|
1808
|
+
<div class="method_details ">
|
1809
|
+
<h3 class="signature " id="process_data!-instance_method">
|
1810
|
+
|
1811
|
+
#<strong>process_data!</strong>(controller) ⇒ <tt>Object</tt>
|
1812
|
+
|
1813
|
+
|
1814
|
+
|
1815
|
+
|
1816
|
+
|
1817
|
+
</h3><div class="docstring">
|
1818
|
+
<div class="discussion">
|
1819
|
+
|
1820
|
+
<p>This method must be called before the data is read for the first time. It makes the data fit for display. Only call it once.</p>
|
1821
|
+
|
1822
|
+
|
1823
|
+
</div>
|
1824
|
+
</div>
|
1825
|
+
<div class="tags">
|
1826
|
+
|
1827
|
+
|
1828
|
+
</div><table class="source_code">
|
1829
|
+
<tr>
|
1830
|
+
<td>
|
1831
|
+
<pre class="lines">
|
1832
|
+
|
1833
|
+
|
1834
|
+
228
|
1835
|
+
229
|
1836
|
+
230
|
1837
|
+
231
|
1838
|
+
232
|
1839
|
+
233
|
1840
|
+
234
|
1841
|
+
235
|
1842
|
+
236
|
1843
|
+
237
|
1844
|
+
238
|
1845
|
+
239
|
1846
|
+
240
|
1847
|
+
241
|
1848
|
+
242
|
1849
|
+
243
|
1850
|
+
244
|
1851
|
+
245
|
1852
|
+
246
|
1853
|
+
247
|
1854
|
+
248
|
1855
|
+
249
|
1856
|
+
250
|
1857
|
+
251
|
1858
|
+
252
|
1859
|
+
253
|
1860
|
+
254
|
1861
|
+
255
|
1862
|
+
256
|
1863
|
+
257</pre>
|
1864
|
+
</td>
|
1865
|
+
<td>
|
1866
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 228</span>
|
1867
|
+
|
1868
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_process_data!'>process_data!</span><span class='lparen'>(</span><span class='id identifier rubyid_controller'>controller</span><span class='rparen'>)</span>
|
1869
|
+
<span class='id identifier rubyid_fail'>fail</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Data was already processed!</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@processed_data</span>
|
1870
|
+
<span class='comment'># Filtering
|
1871
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_filtering_enabled?'>filtering_enabled?</span>
|
1872
|
+
<span class='ivar'>@q</span> <span class='op'>=</span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_ransack'>ransack</span><span class='lparen'>(</span><span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='id identifier rubyid_param_name'>param_name</span><span class='lparen'>(</span><span class='symbol'>:q</span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='label'>auth_object:</span> <span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='comma'>,</span> <span class='label'>search_key:</span> <span class='id identifier rubyid_param_name'>param_name</span><span class='lparen'>(</span><span class='symbol'>:q</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
1873
|
+
<span class='id identifier rubyid_filtered_data'>filtered_data</span> <span class='op'>=</span> <span class='ivar'>@q</span><span class='period'>.</span><span class='id identifier rubyid_result'>result</span><span class='period'>.</span><span class='id identifier rubyid_accessible_by'>accessible_by</span><span class='lparen'>(</span><span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='rparen'>)</span>
|
1874
|
+
<span class='kw'>else</span>
|
1875
|
+
<span class='id identifier rubyid_filtered_data'>filtered_data</span> <span class='op'>=</span> <span class='ivar'>@data</span>
|
1876
|
+
<span class='kw'>end</span>
|
1877
|
+
<span class='comment'># Pagination
|
1878
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_pagination_enabled?'>pagination_enabled?</span>
|
1879
|
+
<span class='ivar'>@page</span> <span class='op'>=</span> <span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='id identifier rubyid_param_name'>param_name</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>page</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_presence'>presence</span><span class='op'>&.</span><span class='id identifier rubyid_to_i'>to_i</span> <span class='op'>||</span> <span class='int'>1</span>
|
1880
|
+
<span class='ivar'>@pagination_offset</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='ivar'>@page</span> <span class='op'>-</span> <span class='int'>1</span><span class='rparen'>)</span> <span class='op'>*</span> <span class='ivar'>@results_per_page</span>
|
1881
|
+
<span class='ivar'>@total_pages</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_filtered_data'>filtered_data</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span> <span class='op'>/</span> <span class='ivar'>@results_per_page</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_ceil'>ceil</span>
|
1882
|
+
<span class='kw'>if</span> <span class='ivar'>@pagination_offset</span> <span class='op'><</span> <span class='int'>0</span> <span class='op'>||</span> <span class='ivar'>@pagination_offset</span> <span class='op'>>=</span> <span class='id identifier rubyid_filtered_data'>filtered_data</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span> <span class='comment'># out of bounds check
|
1883
|
+
</span> <span class='ivar'>@page</span> <span class='op'>=</span> <span class='int'>1</span>
|
1884
|
+
<span class='ivar'>@pagination_offset</span> <span class='op'>=</span> <span class='int'>0</span>
|
1885
|
+
<span class='kw'>end</span>
|
1886
|
+
<span class='ivar'>@processed_data</span> <span class='op'>=</span> <span class='id identifier rubyid_filtered_data'>filtered_data</span><span class='period'>.</span><span class='id identifier rubyid_offset'>offset</span><span class='lparen'>(</span><span class='ivar'>@pagination_offset</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_limit'>limit</span><span class='lparen'>(</span><span class='ivar'>@results_per_page</span><span class='rparen'>)</span>
|
1887
|
+
<span class='kw'>else</span>
|
1888
|
+
<span class='ivar'>@processed_data</span> <span class='op'>=</span> <span class='id identifier rubyid_filtered_data'>filtered_data</span>
|
1889
|
+
<span class='kw'>end</span>
|
1890
|
+
<span class='comment'># Apply skips to configs
|
1891
|
+
</span> <span class='comment'># Exclude columns that are skipped or the user is not allowed to display
|
1892
|
+
</span> <span class='ivar'>@columns</span><span class='period'>.</span><span class='id identifier rubyid_select!'>select!</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_col'>col</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span>
|
1893
|
+
<span class='ivar'>@skipped_columns</span><span class='period'>.</span><span class='id identifier rubyid_exclude?'>exclude?</span><span class='lparen'>(</span><span class='id identifier rubyid_col'>col</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='op'>&&</span> <span class='id identifier rubyid_controller'>controller</span><span class='period'>.</span><span class='id identifier rubyid_current_ability'>current_ability</span><span class='period'>.</span><span class='id identifier rubyid_permitted_attributes'>permitted_attributes</span><span class='lparen'>(</span><span class='symbol'>:index</span><span class='comma'>,</span> <span class='id identifier rubyid_data_class'>data_class</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_col'>col</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
1894
|
+
<span class='kw'>end</span>
|
1895
|
+
<span class='comment'># Exclude skipped filters
|
1896
|
+
</span> <span class='ivar'>@filters</span><span class='period'>.</span><span class='id identifier rubyid_select!'>select!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_filter'>filter</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='op'>|</span> <span class='ivar'>@skipped_filters</span><span class='period'>.</span><span class='id identifier rubyid_exclude?'>exclude?</span><span class='lparen'>(</span><span class='id identifier rubyid_filter'>filter</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
1897
|
+
<span class='kw'>end</span></pre>
|
1898
|
+
</td>
|
1899
|
+
</tr>
|
1900
|
+
</table>
|
1901
|
+
</div>
|
1902
|
+
|
1903
|
+
<div class="method_details ">
|
1904
|
+
<h3 class="signature " id="results_per_page-instance_method">
|
1905
|
+
|
1906
|
+
#<strong>results_per_page</strong>(new_results_per_page) ⇒ <tt>Object</tt>
|
1907
|
+
|
1908
|
+
|
1909
|
+
|
1910
|
+
|
1911
|
+
|
1912
|
+
</h3><div class="docstring">
|
1913
|
+
<div class="discussion">
|
1914
|
+
|
1915
|
+
<p>DSL method In case pagination is active, defines the amount of records to display per page.</p>
|
1916
|
+
|
1917
|
+
|
1918
|
+
</div>
|
1919
|
+
</div>
|
1920
|
+
<div class="tags">
|
1921
|
+
|
1922
|
+
|
1923
|
+
</div><table class="source_code">
|
1924
|
+
<tr>
|
1925
|
+
<td>
|
1926
|
+
<pre class="lines">
|
1927
|
+
|
1928
|
+
|
1929
|
+
57
|
1930
|
+
58
|
1931
|
+
59</pre>
|
1932
|
+
</td>
|
1933
|
+
<td>
|
1934
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 57</span>
|
1935
|
+
|
1936
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_results_per_page'>results_per_page</span><span class='lparen'>(</span><span class='id identifier rubyid_new_results_per_page'>new_results_per_page</span><span class='rparen'>)</span>
|
1937
|
+
<span class='ivar'>@results_per_page</span> <span class='op'>=</span> <span class='id identifier rubyid_new_results_per_page'>new_results_per_page</span>
|
1938
|
+
<span class='kw'>end</span></pre>
|
1939
|
+
</td>
|
1940
|
+
</tr>
|
1941
|
+
</table>
|
1942
|
+
</div>
|
1943
|
+
|
1944
|
+
<div class="method_details ">
|
1945
|
+
<h3 class="signature " id="row_action-instance_method">
|
1946
|
+
|
1947
|
+
#<strong>row_action</strong>(name, button_opts: {}, &block) ⇒ <tt>Object</tt>
|
1948
|
+
|
1949
|
+
|
1950
|
+
|
1951
|
+
|
1952
|
+
|
1953
|
+
</h3><div class="docstring">
|
1954
|
+
<div class="discussion">
|
1955
|
+
|
1956
|
+
<p>DSL method Adds a row action. The very last col provides actions such as :show, :edit or :destroy. Use this method to add your own. In case the action exists as a component in the family of <code>data_class</code>, it is enough to pass the action’s name, and the rest is auto-generated. In order to create a custom row action, pass a block that will be given the current record and instance-execed once per row, for every record.</p>
|
1957
|
+
|
1958
|
+
|
1959
|
+
</div>
|
1960
|
+
</div>
|
1961
|
+
<div class="tags">
|
1962
|
+
<p class="tag_title">Parameters:</p>
|
1963
|
+
<ul class="param">
|
1964
|
+
|
1965
|
+
<li>
|
1966
|
+
|
1967
|
+
<span class='name'>name</span>
|
1968
|
+
|
1969
|
+
|
1970
|
+
<span class='type'>(<tt>Symbol</tt>, <tt>String</tt>)</span>
|
1971
|
+
|
1972
|
+
|
1973
|
+
|
1974
|
+
—
|
1975
|
+
<div class='inline'>
|
1976
|
+
<p>The name of the action (e.g. :edit).</p>
|
1977
|
+
</div>
|
1978
|
+
|
1979
|
+
</li>
|
1980
|
+
|
1981
|
+
<li>
|
1982
|
+
|
1983
|
+
<span class='name'>button_opts</span>
|
1984
|
+
|
1985
|
+
|
1986
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1987
|
+
|
1988
|
+
|
1989
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1990
|
+
|
1991
|
+
|
1992
|
+
—
|
1993
|
+
<div class='inline'>
|
1994
|
+
<p>Only relevant in case of an auto-generated row action, this allows to configure the generated button.</p>
|
1995
|
+
</div>
|
1996
|
+
|
1997
|
+
</li>
|
1998
|
+
|
1999
|
+
<li>
|
2000
|
+
|
2001
|
+
<span class='name'>block</span>
|
2002
|
+
|
2003
|
+
|
2004
|
+
<span class='type'>(<tt>Block</tt>)</span>
|
2005
|
+
|
2006
|
+
|
2007
|
+
|
2008
|
+
—
|
2009
|
+
<div class='inline'>
|
2010
|
+
<p>To create a custom row action; block will be given the current record and instance-execed once per row, for every record.</p>
|
2011
|
+
</div>
|
2012
|
+
|
2013
|
+
</li>
|
2014
|
+
|
2015
|
+
</ul>
|
2016
|
+
|
2017
|
+
|
2018
|
+
</div><table class="source_code">
|
2019
|
+
<tr>
|
2020
|
+
<td>
|
2021
|
+
<pre class="lines">
|
2022
|
+
|
2023
|
+
|
2024
|
+
157
|
2025
|
+
158
|
2026
|
+
159
|
2027
|
+
160
|
2028
|
+
161
|
2029
|
+
162
|
2030
|
+
163
|
2031
|
+
164
|
2032
|
+
165
|
2033
|
+
166</pre>
|
2034
|
+
</td>
|
2035
|
+
<td>
|
2036
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 157</span>
|
2037
|
+
|
2038
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_row_action'>row_action</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>button_opts:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>**</span><span class='comma'>,</span> <span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
2039
|
+
<span class='id identifier rubyid_name'>name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
2040
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
|
2041
|
+
<span class='id identifier rubyid_block'>block</span> <span class='op'>=</span> <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_record'>record</span><span class='op'>|</span>
|
2042
|
+
<span class='kw'>next</span> <span class='kw'>if</span> <span class='const'><span class='object_link'><a href="../../Compony.html" title="Compony (module)">Compony</a></span></span><span class='period'>.</span><span class='id identifier rubyid_comp_class_for'><span class='object_link'><a href="../../Compony.html#comp_class_for-class_method" title="Compony.comp_class_for (method)">comp_class_for</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
2043
|
+
<span class='id identifier rubyid_compony_button'>compony_button</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_record'>record</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_button_opts'>button_opts</span><span class='rparen'>)</span>
|
2044
|
+
<span class='kw'>end</span>
|
2045
|
+
<span class='kw'>end</span>
|
2046
|
+
<span class='ivar'>@row_actions</span><span class='period'>.</span><span class='id identifier rubyid_natural_push'>natural_push</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_block'>block</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
2047
|
+
<span class='kw'>end</span></pre>
|
2048
|
+
</td>
|
2049
|
+
</tr>
|
2050
|
+
</table>
|
2051
|
+
</div>
|
2052
|
+
|
2053
|
+
<div class="method_details ">
|
2054
|
+
<h3 class="signature " id="skip_column-instance_method">
|
2055
|
+
|
2056
|
+
#<strong>skip_column</strong>(name) ⇒ <tt>Object</tt>
|
2057
|
+
|
2058
|
+
|
2059
|
+
|
2060
|
+
|
2061
|
+
|
2062
|
+
</h3><div class="docstring">
|
2063
|
+
<div class="discussion">
|
2064
|
+
|
2065
|
+
<p>DSL method Marks a single column as skipped. It will not be displayed, even if it is defined.</p>
|
2066
|
+
|
2067
|
+
|
2068
|
+
</div>
|
2069
|
+
</div>
|
2070
|
+
<div class="tags">
|
2071
|
+
<p class="tag_title">Parameters:</p>
|
2072
|
+
<ul class="param">
|
2073
|
+
|
2074
|
+
<li>
|
2075
|
+
|
2076
|
+
<span class='name'>name</span>
|
2077
|
+
|
2078
|
+
|
2079
|
+
<span class='type'>(<tt>Symbol</tt>, <tt>String</tt>)</span>
|
2080
|
+
|
2081
|
+
|
2082
|
+
|
2083
|
+
—
|
2084
|
+
<div class='inline'>
|
2085
|
+
<p>Name of the column to be skipped.</p>
|
2086
|
+
</div>
|
2087
|
+
|
2088
|
+
</li>
|
2089
|
+
|
2090
|
+
</ul>
|
2091
|
+
|
2092
|
+
|
2093
|
+
</div><table class="source_code">
|
2094
|
+
<tr>
|
2095
|
+
<td>
|
2096
|
+
<pre class="lines">
|
2097
|
+
|
2098
|
+
|
2099
|
+
146
|
2100
|
+
147
|
2101
|
+
148</pre>
|
2102
|
+
</td>
|
2103
|
+
<td>
|
2104
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 146</span>
|
2105
|
+
|
2106
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_column'>skip_column</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span>
|
2107
|
+
<span class='ivar'>@skipped_columns</span> <span class='op'><<</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
2108
|
+
<span class='kw'>end</span></pre>
|
2109
|
+
</td>
|
2110
|
+
</tr>
|
2111
|
+
</table>
|
2112
|
+
</div>
|
2113
|
+
|
2114
|
+
<div class="method_details ">
|
2115
|
+
<h3 class="signature " id="skip_filtering!-instance_method">
|
2116
|
+
|
2117
|
+
#<strong>skip_filtering!</strong> ⇒ <tt>Object</tt>
|
2118
|
+
|
2119
|
+
|
2120
|
+
|
2121
|
+
|
2122
|
+
|
2123
|
+
</h3><div class="docstring">
|
2124
|
+
<div class="discussion">
|
2125
|
+
|
2126
|
+
<p>DSL method Disables filtering entirely (sorting is independent of this setting).</p>
|
2127
|
+
|
2128
|
+
|
2129
|
+
</div>
|
2130
|
+
</div>
|
2131
|
+
<div class="tags">
|
2132
|
+
|
2133
|
+
|
2134
|
+
</div><table class="source_code">
|
2135
|
+
<tr>
|
2136
|
+
<td>
|
2137
|
+
<pre class="lines">
|
2138
|
+
|
2139
|
+
|
2140
|
+
63
|
2141
|
+
64
|
2142
|
+
65</pre>
|
2143
|
+
</td>
|
2144
|
+
<td>
|
2145
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 63</span>
|
2146
|
+
|
2147
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_filtering!'>skip_filtering!</span>
|
2148
|
+
<span class='ivar'>@filtering</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2149
|
+
<span class='kw'>end</span></pre>
|
2150
|
+
</td>
|
2151
|
+
</tr>
|
2152
|
+
</table>
|
2153
|
+
</div>
|
2154
|
+
|
2155
|
+
<div class="method_details ">
|
2156
|
+
<h3 class="signature " id="skip_pagination!-instance_method">
|
2157
|
+
|
2158
|
+
#<strong>skip_pagination!</strong> ⇒ <tt>Object</tt>
|
2159
|
+
|
2160
|
+
|
2161
|
+
|
2162
|
+
|
2163
|
+
|
2164
|
+
</h3><div class="docstring">
|
2165
|
+
<div class="discussion">
|
2166
|
+
|
2167
|
+
<p>DSL method Disables pagination (caution: all records will be loaded).</p>
|
2168
|
+
|
2169
|
+
|
2170
|
+
</div>
|
2171
|
+
</div>
|
2172
|
+
<div class="tags">
|
2173
|
+
|
2174
|
+
|
2175
|
+
</div><table class="source_code">
|
2176
|
+
<tr>
|
2177
|
+
<td>
|
2178
|
+
<pre class="lines">
|
2179
|
+
|
2180
|
+
|
2181
|
+
51
|
2182
|
+
52
|
2183
|
+
53</pre>
|
2184
|
+
</td>
|
2185
|
+
<td>
|
2186
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 51</span>
|
2187
|
+
|
2188
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_pagination!'>skip_pagination!</span>
|
2189
|
+
<span class='ivar'>@pagination</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2190
|
+
<span class='kw'>end</span></pre>
|
2191
|
+
</td>
|
2192
|
+
</tr>
|
2193
|
+
</table>
|
2194
|
+
</div>
|
2195
|
+
|
2196
|
+
<div class="method_details ">
|
2197
|
+
<h3 class="signature " id="skip_row_action-instance_method">
|
2198
|
+
|
2199
|
+
#<strong>skip_row_action</strong>(name) ⇒ <tt>Object</tt>
|
2200
|
+
|
2201
|
+
|
2202
|
+
|
2203
|
+
|
2204
|
+
|
2205
|
+
</h3><div class="docstring">
|
2206
|
+
<div class="discussion">
|
2207
|
+
|
2208
|
+
<p>DSL method Marks a single row action as skipped. It will not be displayed, even if it is defined.</p>
|
2209
|
+
|
2210
|
+
|
2211
|
+
</div>
|
2212
|
+
</div>
|
2213
|
+
<div class="tags">
|
2214
|
+
<p class="tag_title">Parameters:</p>
|
2215
|
+
<ul class="param">
|
2216
|
+
|
2217
|
+
<li>
|
2218
|
+
|
2219
|
+
<span class='name'>name</span>
|
2220
|
+
|
2221
|
+
|
2222
|
+
<span class='type'>(<tt>Symbol</tt>, <tt>String</tt>)</span>
|
2223
|
+
|
2224
|
+
|
2225
|
+
|
2226
|
+
—
|
2227
|
+
<div class='inline'>
|
2228
|
+
<p>Name of the row action to be skipped.</p>
|
2229
|
+
</div>
|
2230
|
+
|
2231
|
+
</li>
|
2232
|
+
|
2233
|
+
</ul>
|
2234
|
+
|
2235
|
+
|
2236
|
+
</div><table class="source_code">
|
2237
|
+
<tr>
|
2238
|
+
<td>
|
2239
|
+
<pre class="lines">
|
2240
|
+
|
2241
|
+
|
2242
|
+
171
|
2243
|
+
172
|
2244
|
+
173</pre>
|
2245
|
+
</td>
|
2246
|
+
<td>
|
2247
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 171</span>
|
2248
|
+
|
2249
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_row_action'>skip_row_action</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span>
|
2250
|
+
<span class='ivar'>@skipped_row_actions</span> <span class='op'><<</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
|
2251
|
+
<span class='kw'>end</span></pre>
|
2252
|
+
</td>
|
2253
|
+
</tr>
|
2254
|
+
</table>
|
2255
|
+
</div>
|
2256
|
+
|
2257
|
+
<div class="method_details ">
|
2258
|
+
<h3 class="signature " id="skip_sorting!-instance_method">
|
2259
|
+
|
2260
|
+
#<strong>skip_sorting!</strong> ⇒ <tt>Object</tt>
|
2261
|
+
|
2262
|
+
|
2263
|
+
|
2264
|
+
|
2265
|
+
|
2266
|
+
</h3><div class="docstring">
|
2267
|
+
<div class="discussion">
|
2268
|
+
|
2269
|
+
<p>DSL method Disables sorting entirely (both links and sorting input in filter).</p>
|
2270
|
+
|
2271
|
+
|
2272
|
+
</div>
|
2273
|
+
</div>
|
2274
|
+
<div class="tags">
|
2275
|
+
|
2276
|
+
|
2277
|
+
</div><table class="source_code">
|
2278
|
+
<tr>
|
2279
|
+
<td>
|
2280
|
+
<pre class="lines">
|
2281
|
+
|
2282
|
+
|
2283
|
+
69
|
2284
|
+
70
|
2285
|
+
71
|
2286
|
+
72</pre>
|
2287
|
+
</td>
|
2288
|
+
<td>
|
2289
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 69</span>
|
2290
|
+
|
2291
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_sorting!'>skip_sorting!</span>
|
2292
|
+
<span class='ivar'>@sorting_in_filter</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2293
|
+
<span class='ivar'>@sorting_links</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2294
|
+
<span class='kw'>end</span></pre>
|
2295
|
+
</td>
|
2296
|
+
</tr>
|
2297
|
+
</table>
|
2298
|
+
</div>
|
2299
|
+
|
2300
|
+
<div class="method_details ">
|
2301
|
+
<h3 class="signature " id="skip_sorting_in_filter!-instance_method">
|
2302
|
+
|
2303
|
+
#<strong>skip_sorting_in_filter!</strong> ⇒ <tt>Object</tt>
|
2304
|
+
|
2305
|
+
|
2306
|
+
|
2307
|
+
|
2308
|
+
|
2309
|
+
</h3><div class="docstring">
|
2310
|
+
<div class="discussion">
|
2311
|
+
|
2312
|
+
<p>DSL method Disables sorting in filter.</p>
|
2313
|
+
|
2314
|
+
|
2315
|
+
</div>
|
2316
|
+
</div>
|
2317
|
+
<div class="tags">
|
2318
|
+
|
2319
|
+
|
2320
|
+
</div><table class="source_code">
|
2321
|
+
<tr>
|
2322
|
+
<td>
|
2323
|
+
<pre class="lines">
|
2324
|
+
|
2325
|
+
|
2326
|
+
76
|
2327
|
+
77
|
2328
|
+
78</pre>
|
2329
|
+
</td>
|
2330
|
+
<td>
|
2331
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 76</span>
|
2332
|
+
|
2333
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_sorting_in_filter!'>skip_sorting_in_filter!</span>
|
2334
|
+
<span class='ivar'>@sorting_in_filter</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2335
|
+
<span class='kw'>end</span></pre>
|
2336
|
+
</td>
|
2337
|
+
</tr>
|
2338
|
+
</table>
|
2339
|
+
</div>
|
2340
|
+
|
2341
|
+
<div class="method_details ">
|
2342
|
+
<h3 class="signature " id="skip_sorting_links!-instance_method">
|
2343
|
+
|
2344
|
+
#<strong>skip_sorting_links!</strong> ⇒ <tt>Object</tt>
|
2345
|
+
|
2346
|
+
|
2347
|
+
|
2348
|
+
|
2349
|
+
|
2350
|
+
</h3><div class="docstring">
|
2351
|
+
<div class="discussion">
|
2352
|
+
|
2353
|
+
<p>DSL method Disables sorting links.</p>
|
2354
|
+
|
2355
|
+
|
2356
|
+
</div>
|
2357
|
+
</div>
|
2358
|
+
<div class="tags">
|
2359
|
+
|
2360
|
+
|
2361
|
+
</div><table class="source_code">
|
2362
|
+
<tr>
|
2363
|
+
<td>
|
2364
|
+
<pre class="lines">
|
2365
|
+
|
2366
|
+
|
2367
|
+
82
|
2368
|
+
83
|
2369
|
+
84</pre>
|
2370
|
+
</td>
|
2371
|
+
<td>
|
2372
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 82</span>
|
2373
|
+
|
2374
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_skip_sorting_links!'>skip_sorting_links!</span>
|
2375
|
+
<span class='ivar'>@sorting_links</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2376
|
+
<span class='kw'>end</span></pre>
|
2377
|
+
</td>
|
2378
|
+
</tr>
|
2379
|
+
</table>
|
2380
|
+
</div>
|
2381
|
+
|
2382
|
+
<div class="method_details ">
|
2383
|
+
<h3 class="signature " id="sort-instance_method">
|
2384
|
+
|
2385
|
+
#<strong>sort</strong>(name, label: nil) ⇒ <tt>Object</tt>
|
2386
|
+
|
2387
|
+
|
2388
|
+
|
2389
|
+
|
2390
|
+
|
2391
|
+
</h3><div class="docstring">
|
2392
|
+
<div class="discussion">
|
2393
|
+
|
2394
|
+
<p>DSL method Adds a sorting criterion that will be processed by ransack. <code>data_class</code> must be sortable by this criterion. See Ransack’s sorting for constraints. For every call of this method, one sorting link and two entries (asc, desc) in the sorting-in-filter feature will be generated, if enabled.</p>
|
2395
|
+
|
2396
|
+
|
2397
|
+
</div>
|
2398
|
+
</div>
|
2399
|
+
<div class="tags">
|
2400
|
+
<p class="tag_title">Parameters:</p>
|
2401
|
+
<ul class="param">
|
2402
|
+
|
2403
|
+
<li>
|
2404
|
+
|
2405
|
+
<span class='name'>name</span>
|
2406
|
+
|
2407
|
+
|
2408
|
+
<span class='type'>(<tt>Symbol</tt>, <tt>String</tt>)</span>
|
2409
|
+
|
2410
|
+
|
2411
|
+
|
2412
|
+
—
|
2413
|
+
<div class='inline'>
|
2414
|
+
<p>Sorting criteria, e.g. <code>:id</code> or <code>:label</code>.</p>
|
2415
|
+
</div>
|
2416
|
+
|
2417
|
+
</li>
|
2418
|
+
|
2419
|
+
<li>
|
2420
|
+
|
2421
|
+
<span class='name'>label</span>
|
2422
|
+
|
2423
|
+
|
2424
|
+
<span class='type'>(<tt>String</tt>)</span>
|
2425
|
+
|
2426
|
+
|
2427
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
2428
|
+
|
2429
|
+
|
2430
|
+
—
|
2431
|
+
<div class='inline'>
|
2432
|
+
<p>Label of the sorting link / entries.</p>
|
2433
|
+
</div>
|
2434
|
+
|
2435
|
+
</li>
|
2436
|
+
|
2437
|
+
</ul>
|
2438
|
+
|
2439
|
+
|
2440
|
+
</div><table class="source_code">
|
2441
|
+
<tr>
|
2442
|
+
<td>
|
2443
|
+
<pre class="lines">
|
2444
|
+
|
2445
|
+
|
2446
|
+
216
|
2447
|
+
217
|
2448
|
+
218
|
2449
|
+
219</pre>
|
2450
|
+
</td>
|
2451
|
+
<td>
|
2452
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 216</span>
|
2453
|
+
|
2454
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sort'>sort</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>label:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
2455
|
+
<span class='id identifier rubyid_label'>label</span> <span class='op'>||=</span> <span class='id identifier rubyid_data_class'>data_class</span><span class='period'>.</span><span class='id identifier rubyid_fields'>fields</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_label'>label</span>
|
2456
|
+
<span class='ivar'>@sorts</span><span class='period'>.</span><span class='id identifier rubyid_natural_push'>natural_push</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>label:</span><span class='rparen'>)</span>
|
2457
|
+
<span class='kw'>end</span></pre>
|
2458
|
+
</td>
|
2459
|
+
</tr>
|
2460
|
+
</table>
|
2461
|
+
</div>
|
2462
|
+
|
2463
|
+
<div class="method_details ">
|
2464
|
+
<h3 class="signature " id="sorting_enabled?-instance_method">
|
2465
|
+
|
2466
|
+
#<strong>sorting_enabled?</strong> ⇒ <tt>Boolean</tt> <span class="extras">(protected)</span>
|
2467
|
+
|
2468
|
+
|
2469
|
+
|
2470
|
+
|
2471
|
+
|
2472
|
+
</h3><div class="docstring">
|
2473
|
+
<div class="discussion">
|
2474
|
+
|
2475
|
+
<p>Returns whether sorting is possible and wanted in general (regardless of whether there are any sorts defined)</p>
|
2476
|
+
|
2477
|
+
|
2478
|
+
</div>
|
2479
|
+
</div>
|
2480
|
+
<div class="tags">
|
2481
|
+
|
2482
|
+
<p class="tag_title">Returns:</p>
|
2483
|
+
<ul class="return">
|
2484
|
+
|
2485
|
+
<li>
|
2486
|
+
|
2487
|
+
|
2488
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
2489
|
+
|
2490
|
+
|
2491
|
+
|
2492
|
+
</li>
|
2493
|
+
|
2494
|
+
</ul>
|
2495
|
+
|
2496
|
+
</div><table class="source_code">
|
2497
|
+
<tr>
|
2498
|
+
<td>
|
2499
|
+
<pre class="lines">
|
2500
|
+
|
2501
|
+
|
2502
|
+
387
|
2503
|
+
388
|
2504
|
+
389</pre>
|
2505
|
+
</td>
|
2506
|
+
<td>
|
2507
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 387</span>
|
2508
|
+
|
2509
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sorting_enabled?'>sorting_enabled?</span>
|
2510
|
+
<span class='lparen'>(</span><span class='ivar'>@sorting_in_filter</span> <span class='op'>||</span> <span class='ivar'>@sorting_links</span><span class='rparen'>)</span> <span class='op'>&&</span> <span class='kw'>defined?</span><span class='lparen'>(</span><span class='const'>Ransack</span><span class='rparen'>)</span>
|
2511
|
+
<span class='kw'>end</span></pre>
|
2512
|
+
</td>
|
2513
|
+
</tr>
|
2514
|
+
</table>
|
2515
|
+
</div>
|
2516
|
+
|
2517
|
+
<div class="method_details ">
|
2518
|
+
<h3 class="signature " id="sorting_in_filter_enabled?-instance_method">
|
2519
|
+
|
2520
|
+
#<strong>sorting_in_filter_enabled?</strong> ⇒ <tt>Boolean</tt> <span class="extras">(protected)</span>
|
2521
|
+
|
2522
|
+
|
2523
|
+
|
2524
|
+
|
2525
|
+
|
2526
|
+
</h3><div class="docstring">
|
2527
|
+
<div class="discussion">
|
2528
|
+
|
2529
|
+
<p>Returns whether sorting in filter is possible and wanted in general (regardless of whether there are any sorts defined)</p>
|
2530
|
+
|
2531
|
+
|
2532
|
+
</div>
|
2533
|
+
</div>
|
2534
|
+
<div class="tags">
|
2535
|
+
|
2536
|
+
<p class="tag_title">Returns:</p>
|
2537
|
+
<ul class="return">
|
2538
|
+
|
2539
|
+
<li>
|
2540
|
+
|
2541
|
+
|
2542
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
2543
|
+
|
2544
|
+
|
2545
|
+
|
2546
|
+
</li>
|
2547
|
+
|
2548
|
+
</ul>
|
2549
|
+
|
2550
|
+
</div><table class="source_code">
|
2551
|
+
<tr>
|
2552
|
+
<td>
|
2553
|
+
<pre class="lines">
|
2554
|
+
|
2555
|
+
|
2556
|
+
392
|
2557
|
+
393
|
2558
|
+
394</pre>
|
2559
|
+
</td>
|
2560
|
+
<td>
|
2561
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 392</span>
|
2562
|
+
|
2563
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sorting_in_filter_enabled?'>sorting_in_filter_enabled?</span>
|
2564
|
+
<span class='id identifier rubyid_sorting_enabled?'>sorting_enabled?</span> <span class='op'>&&</span> <span class='ivar'>@sorting_in_filter</span>
|
2565
|
+
<span class='kw'>end</span></pre>
|
2566
|
+
</td>
|
2567
|
+
</tr>
|
2568
|
+
</table>
|
2569
|
+
</div>
|
2570
|
+
|
2571
|
+
<div class="method_details ">
|
2572
|
+
<h3 class="signature " id="sorting_in_filter_select_opts-instance_method">
|
2573
|
+
|
2574
|
+
#<strong>sorting_in_filter_select_opts</strong> ⇒ <tt>Object</tt> <span class="extras">(protected)</span>
|
2575
|
+
|
2576
|
+
|
2577
|
+
|
2578
|
+
|
2579
|
+
|
2580
|
+
</h3><div class="docstring">
|
2581
|
+
<div class="discussion">
|
2582
|
+
|
2583
|
+
<p>Returns the select options for sorting suitable for passing in a <code>f.select</code>. Used in sorting-in-filter feature. Useful for custom subclasses of List.</p>
|
2584
|
+
|
2585
|
+
|
2586
|
+
</div>
|
2587
|
+
</div>
|
2588
|
+
<div class="tags">
|
2589
|
+
|
2590
|
+
|
2591
|
+
</div><table class="source_code">
|
2592
|
+
<tr>
|
2593
|
+
<td>
|
2594
|
+
<pre class="lines">
|
2595
|
+
|
2596
|
+
|
2597
|
+
407
|
2598
|
+
408
|
2599
|
+
409
|
2600
|
+
410
|
2601
|
+
411
|
2602
|
+
412
|
2603
|
+
413
|
2604
|
+
414
|
2605
|
+
415</pre>
|
2606
|
+
</td>
|
2607
|
+
<td>
|
2608
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 407</span>
|
2609
|
+
|
2610
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sorting_in_filter_select_opts'>sorting_in_filter_select_opts</span>
|
2611
|
+
<span class='ivar'>@sorts</span><span class='period'>.</span><span class='id identifier rubyid_flat_map'>flat_map</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_sort'>sort</span><span class='op'>|</span>
|
2612
|
+
<span class='qwords_beg'>%w[</span><span class='tstring_content'>asc</span><span class='words_sep'> </span><span class='tstring_content'>desc</span><span class='tstring_end'>]</span></span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_order'>order</span><span class='op'>|</span>
|
2613
|
+
<span class='id identifier rubyid_label'>label</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sort'>sort</span><span class='lbracket'>[</span><span class='symbol'>:label</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_order'>order</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>asc</span><span class='tstring_end'>'</span></span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>↑</span><span class='tstring_end'>'</span></span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>↓</span><span class='tstring_end'>'</span></span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2614
|
+
<span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sort'>sort</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_order'>order</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2615
|
+
<span class='lbracket'>[</span><span class='id identifier rubyid_label'>label</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span>
|
2616
|
+
<span class='kw'>end</span>
|
2617
|
+
<span class='kw'>end</span>
|
2618
|
+
<span class='kw'>end</span></pre>
|
2619
|
+
</td>
|
2620
|
+
</tr>
|
2621
|
+
</table>
|
2622
|
+
</div>
|
2623
|
+
|
2624
|
+
<div class="method_details ">
|
2625
|
+
<h3 class="signature " id="sorting_links_enabled?-instance_method">
|
2626
|
+
|
2627
|
+
#<strong>sorting_links_enabled?</strong> ⇒ <tt>Boolean</tt> <span class="extras">(protected)</span>
|
2628
|
+
|
2629
|
+
|
2630
|
+
|
2631
|
+
|
2632
|
+
|
2633
|
+
</h3><div class="docstring">
|
2634
|
+
<div class="discussion">
|
2635
|
+
|
2636
|
+
<p>Returns whether generating sorting links is possible and wanted in general (regardless of whether there are any sorts defined)</p>
|
2637
|
+
|
2638
|
+
|
2639
|
+
</div>
|
2640
|
+
</div>
|
2641
|
+
<div class="tags">
|
2642
|
+
|
2643
|
+
<p class="tag_title">Returns:</p>
|
2644
|
+
<ul class="return">
|
2645
|
+
|
2646
|
+
<li>
|
2647
|
+
|
2648
|
+
|
2649
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
2650
|
+
|
2651
|
+
|
2652
|
+
|
2653
|
+
</li>
|
2654
|
+
|
2655
|
+
</ul>
|
2656
|
+
|
2657
|
+
</div><table class="source_code">
|
2658
|
+
<tr>
|
2659
|
+
<td>
|
2660
|
+
<pre class="lines">
|
2661
|
+
|
2662
|
+
|
2663
|
+
397
|
2664
|
+
398
|
2665
|
+
399</pre>
|
2666
|
+
</td>
|
2667
|
+
<td>
|
2668
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 397</span>
|
2669
|
+
|
2670
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sorting_links_enabled?'>sorting_links_enabled?</span>
|
2671
|
+
<span class='id identifier rubyid_sorting_enabled?'>sorting_enabled?</span> <span class='op'>&&</span> <span class='ivar'>@sorting_links</span>
|
2672
|
+
<span class='kw'>end</span></pre>
|
2673
|
+
</td>
|
2674
|
+
</tr>
|
2675
|
+
</table>
|
2676
|
+
</div>
|
2677
|
+
|
2678
|
+
<div class="method_details ">
|
2679
|
+
<h3 class="signature " id="sorts-instance_method">
|
2680
|
+
|
2681
|
+
#<strong>sorts</strong>(*names) ⇒ <tt>Object</tt>
|
2682
|
+
|
2683
|
+
|
2684
|
+
|
2685
|
+
|
2686
|
+
|
2687
|
+
</h3><div class="docstring">
|
2688
|
+
<div class="discussion">
|
2689
|
+
|
2690
|
+
<p>DSL method Adds multiple sorts at once, sharing the same kwargs.</p>
|
2691
|
+
|
2692
|
+
|
2693
|
+
</div>
|
2694
|
+
</div>
|
2695
|
+
<div class="tags">
|
2696
|
+
|
2697
|
+
|
2698
|
+
</div><table class="source_code">
|
2699
|
+
<tr>
|
2700
|
+
<td>
|
2701
|
+
<pre class="lines">
|
2702
|
+
|
2703
|
+
|
2704
|
+
223
|
2705
|
+
224
|
2706
|
+
225</pre>
|
2707
|
+
</td>
|
2708
|
+
<td>
|
2709
|
+
<pre class="code"><span class="info file"># File 'lib/compony/components/list.rb', line 223</span>
|
2710
|
+
|
2711
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sorts'>sorts</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_names'>names</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span>
|
2712
|
+
<span class='id identifier rubyid_names'>names</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_name'>name</span><span class='op'>|</span> <span class='id identifier rubyid_sort'>sort</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='op'>**</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
2713
|
+
<span class='kw'>end</span></pre>
|
2714
|
+
</td>
|
2715
|
+
</tr>
|
2716
|
+
</table>
|
2717
|
+
</div>
|
2718
|
+
|
2719
|
+
</div>
|
2720
|
+
|
2721
|
+
</div>
|
2722
|
+
|
2723
|
+
<div id="footer">
|
2724
|
+
Generated on Fri Sep 5 14:00:25 2025 by
|
2725
|
+
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
2726
|
+
0.9.34 (ruby-3.3.5).
|
2727
|
+
</div>
|
2728
|
+
|
2729
|
+
</div>
|
2730
|
+
</body>
|
2731
|
+
</html>
|