formize 0.0.19 → 0.0.20
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.
- data/VERSION +1 -1
- data/lib/assets/javascripts/formize.js +57 -40
- data/lib/assets/javascripts/jquery.ui.formize.js +57 -40
- data/lib/formize/helpers/form_tag_helper.rb +1 -1
- metadata +15 -15
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.20
|
@@ -60,16 +60,20 @@ $.datepicker.regional['zh-TW'] = { closeText: '關閉', prevText: '<上月'
|
|
60
60
|
// Replaces `$(selector).live("ready", handler)` which don't work
|
61
61
|
// It rebinds automatically after each ajax request all not-binded.
|
62
62
|
$.behaviours = [];
|
63
|
-
$.behave = function (selector,
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
63
|
+
$.behave = function (selector, events, handler) {
|
64
|
+
events = events.split(/\s+/ig);
|
65
|
+
for (var i = 0; i < events.length; i += 1) {
|
66
|
+
event = events[i];
|
67
|
+
if (event === "load") {
|
68
|
+
$(document).ready(function(event) {
|
69
|
+
$(selector).each(handler);
|
70
|
+
$(selector).prop('alreadyBound', true);
|
71
|
+
});
|
72
|
+
$.behaviours.push({selector: selector, handler: handler});
|
73
|
+
} else {
|
74
|
+
$(selector).live(event, handler);
|
75
|
+
}
|
76
|
+
}
|
73
77
|
}
|
74
78
|
// Rebinds unbound elements on each ajax request.
|
75
79
|
$(document).ajaxComplete(function () {
|
@@ -108,7 +112,7 @@ $.datepicker.regional['zh-TW'] = { closeText: '關閉', prevText: '<上月'
|
|
108
112
|
modal: true,
|
109
113
|
width: 'auto',
|
110
114
|
// height: 'auto',
|
111
|
-
|
115
|
+
height: $(window).height()*0.8
|
112
116
|
});
|
113
117
|
$.ajaxDialogInitialize(frame);
|
114
118
|
frame.dialog("open");
|
@@ -138,6 +142,7 @@ $.datepicker.regional['zh-TW'] = { closeText: '關閉', prevText: '<上月'
|
|
138
142
|
$("#" + frame_id + " form").each(function (index, form) {
|
139
143
|
$(form).attr('data-dialog', frame_id);
|
140
144
|
});
|
145
|
+
|
141
146
|
};
|
142
147
|
|
143
148
|
$.submitAjaxForm = function () {
|
@@ -186,6 +191,7 @@ $.datepicker.regional['zh-TW'] = { closeText: '關閉', prevText: '<上月'
|
|
186
191
|
// Submits dialog forms
|
187
192
|
$.behave(".ajax-dialog form[data-dialog]", "submit", $.submitAjaxForm);
|
188
193
|
|
194
|
+
|
189
195
|
})(jQuery);
|
190
196
|
|
191
197
|
var Formize = {};
|
@@ -207,6 +213,12 @@ Formize.refreshDependents = function (event) {
|
|
207
213
|
success: function(data, textStatus, response) {
|
208
214
|
if (mode == 'update') {
|
209
215
|
$(item).html(response.responseText);
|
216
|
+
} else if (mode == 'update-value') {
|
217
|
+
if (element.data("attribute")) {
|
218
|
+
$(item).val($.parseJSON(data)[element.data("attribute")]);
|
219
|
+
} else {
|
220
|
+
$(item).val(response.responseText);
|
221
|
+
}
|
210
222
|
} else {
|
211
223
|
$(item).replaceWith(response.responseText);
|
212
224
|
}
|
@@ -222,22 +234,20 @@ Formize.refreshDependents = function (event) {
|
|
222
234
|
return false;
|
223
235
|
}
|
224
236
|
|
225
|
-
Formize.
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
$(check_box.attr('data-show')).slideUp();
|
234
|
-
$(check_box.attr('data-hide')).slideDown();
|
235
|
-
}
|
237
|
+
Formize.toggleCheckboxes = function () {
|
238
|
+
var checkable = $(this);
|
239
|
+
if (checkable.prop("checked")) {
|
240
|
+
$(checkable.attr('data-show')).slideDown();
|
241
|
+
$(checkable.attr('data-hide')).slideUp();
|
242
|
+
} else {
|
243
|
+
$(checkable.attr('data-show')).slideUp();
|
244
|
+
$(checkable.attr('data-hide')).slideDown();
|
236
245
|
}
|
246
|
+
};
|
237
247
|
|
238
|
-
|
239
|
-
|
240
|
-
|
248
|
+
Formize.toggleRadios = function () {
|
249
|
+
$("input[type='radio'][data-show], input[type='radio'][data-hide]").each(Formize.toggleCheckboxes);
|
250
|
+
};
|
241
251
|
|
242
252
|
// Initializes unroll inputs
|
243
253
|
$.behave('input[data-unroll]', 'load', function() {
|
@@ -271,12 +281,12 @@ $.behave('input[data-unroll]', 'load', function() {
|
|
271
281
|
// Initializes date fields
|
272
282
|
$.behave('input[data-datepicker]', "load", function() {
|
273
283
|
var element = $(this);
|
274
|
-
var locale = element.
|
284
|
+
var locale = element.data("locale");
|
275
285
|
var options = $.datepicker.regional[locale];
|
276
|
-
if (element.
|
277
|
-
options['dateFormat'] = element.
|
286
|
+
if (element.data("date-format") !== null) {
|
287
|
+
options['dateFormat'] = element.data("date-format");
|
278
288
|
}
|
279
|
-
options['altField'] = '#'+element.
|
289
|
+
options['altField'] = '#'+element.data("datepicker");
|
280
290
|
options['altFormat'] = 'yy-mm-dd';
|
281
291
|
options['defaultDate'] = element.val();
|
282
292
|
element.datepicker(options);
|
@@ -287,15 +297,15 @@ $.behave('input[data-datepicker]', "load", function() {
|
|
287
297
|
// Can't work properly with actual datetimepicker
|
288
298
|
// $.behave('input[data-datetimepicker]', "load", function() {
|
289
299
|
// var element = $(this);
|
290
|
-
// var locale = element.
|
300
|
+
// var locale = element.data("locale");
|
291
301
|
// var options = $.datepicker.regional[locale];
|
292
|
-
// if (element.
|
293
|
-
// options['dateFormat'] = element.
|
302
|
+
// if (element.data("date-format") !== null) {
|
303
|
+
// options['dateFormat'] = element.data("date-format");
|
294
304
|
// }
|
295
|
-
// if (element.
|
296
|
-
// options['timeFormat'] = element.
|
305
|
+
// if (element.data("time-format") !== null) {
|
306
|
+
// options['timeFormat'] = element.data("time-format");
|
297
307
|
// }
|
298
|
-
// options['altField'] = '#'+element.
|
308
|
+
// options['altField'] = '#'+element.data("datetimepicker");
|
299
309
|
// options['altFormat'] = 'yy-mm-dd';
|
300
310
|
// options['altFieldTimeOnly'] = false;
|
301
311
|
// options['showSecond'] = true;
|
@@ -306,6 +316,7 @@ $.behave('input[data-datepicker]', "load", function() {
|
|
306
316
|
|
307
317
|
// Initializes resizable text areas
|
308
318
|
// Minimal size is defined on default size of the area
|
319
|
+
/*
|
309
320
|
$.behave('textarea[data-resizable]', "load", function() {
|
310
321
|
var element = $(this);
|
311
322
|
element.resizable({
|
@@ -316,7 +327,7 @@ $.behave('textarea[data-resizable]', "load", function() {
|
|
316
327
|
stop: function (event, ui) { $(this).css("padding-bottom", "0px"); }
|
317
328
|
});
|
318
329
|
});
|
319
|
-
|
330
|
+
*/
|
320
331
|
// Opens a dialog for a resource creation
|
321
332
|
$.behave("a[data-add-item]", "click", function() {
|
322
333
|
var element = $(this);
|
@@ -348,8 +359,8 @@ $.behave("a[data-add-item]", "click", function() {
|
|
348
359
|
$.behave("input[data-autocomplete]", "load", function () {
|
349
360
|
var element = $(this);
|
350
361
|
element.autocomplete({
|
351
|
-
source: element.
|
352
|
-
minLength: parseInt(element.
|
362
|
+
source: element.data("autocomplete"),
|
363
|
+
minLength: parseInt(element.data("min-length") || 1)
|
353
364
|
});
|
354
365
|
});
|
355
366
|
|
@@ -360,6 +371,12 @@ $.behave("*[data-dependents]", "emulated:change", Formize.refreshDependents);
|
|
360
371
|
$.behave("select[data-dependents]", "keypress", Formize.refreshDependents);
|
361
372
|
|
362
373
|
// Hide/show blocks depending on check boxes
|
363
|
-
$.behave("input[data-show], input[data-hide]", "load", Formize.
|
364
|
-
$.behave("input[data-show], input[data-hide]", "change", Formize.
|
374
|
+
$.behave("input[type='checkbox'][data-show], input[type='checkbox'][data-hide]", "load", Formize.toggleCheckboxes);
|
375
|
+
$.behave("input[type='checkbox'][data-show], input[type='checkbox'][data-hide]", "change", Formize.toggleCheckboxes)
|
376
|
+
$.behave("input[type='radio'][data-show], input[type='radio'][data-hide]", "load", Formize.toggleCheckboxes);
|
377
|
+
$.behave("input[type='radio'][data-show], input[type='radio'][data-hide]", "change", Formize.toggleRadios)
|
378
|
+
// $.behave("input[data-show], input[data-hide]", "load", Formize.Toggles.ifChecked);
|
379
|
+
// $.behave("input[data-show], input[data-hide]", "change", Formize.Toggles.ifChecked);
|
380
|
+
//$.behave("input[type='checkbox'], input[type='radio']", "load", Formize.toggleCheckables);
|
381
|
+
//$.behave("input[type='checkbox'], input[type='radio']", "change", Formize.toggleCheckables);
|
365
382
|
|
@@ -4,16 +4,20 @@
|
|
4
4
|
// Replaces `$(selector).live("ready", handler)` which don't work
|
5
5
|
// It rebinds automatically after each ajax request all not-binded.
|
6
6
|
$.behaviours = [];
|
7
|
-
$.behave = function (selector,
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
7
|
+
$.behave = function (selector, events, handler) {
|
8
|
+
events = events.split(/\s+/ig);
|
9
|
+
for (var i = 0; i < events.length; i += 1) {
|
10
|
+
event = events[i];
|
11
|
+
if (event === "load") {
|
12
|
+
$(document).ready(function(event) {
|
13
|
+
$(selector).each(handler);
|
14
|
+
$(selector).prop('alreadyBound', true);
|
15
|
+
});
|
16
|
+
$.behaviours.push({selector: selector, handler: handler});
|
17
|
+
} else {
|
18
|
+
$(selector).live(event, handler);
|
19
|
+
}
|
20
|
+
}
|
17
21
|
}
|
18
22
|
// Rebinds unbound elements on each ajax request.
|
19
23
|
$(document).ajaxComplete(function () {
|
@@ -52,7 +56,7 @@
|
|
52
56
|
modal: true,
|
53
57
|
width: 'auto',
|
54
58
|
// height: 'auto',
|
55
|
-
|
59
|
+
height: $(window).height()*0.8
|
56
60
|
});
|
57
61
|
$.ajaxDialogInitialize(frame);
|
58
62
|
frame.dialog("open");
|
@@ -82,6 +86,7 @@
|
|
82
86
|
$("#" + frame_id + " form").each(function (index, form) {
|
83
87
|
$(form).attr('data-dialog', frame_id);
|
84
88
|
});
|
89
|
+
|
85
90
|
};
|
86
91
|
|
87
92
|
$.submitAjaxForm = function () {
|
@@ -130,6 +135,7 @@
|
|
130
135
|
// Submits dialog forms
|
131
136
|
$.behave(".ajax-dialog form[data-dialog]", "submit", $.submitAjaxForm);
|
132
137
|
|
138
|
+
|
133
139
|
})(jQuery);
|
134
140
|
|
135
141
|
var Formize = {};
|
@@ -151,6 +157,12 @@ Formize.refreshDependents = function (event) {
|
|
151
157
|
success: function(data, textStatus, response) {
|
152
158
|
if (mode == 'update') {
|
153
159
|
$(item).html(response.responseText);
|
160
|
+
} else if (mode == 'update-value') {
|
161
|
+
if (element.data("attribute")) {
|
162
|
+
$(item).val($.parseJSON(data)[element.data("attribute")]);
|
163
|
+
} else {
|
164
|
+
$(item).val(response.responseText);
|
165
|
+
}
|
154
166
|
} else {
|
155
167
|
$(item).replaceWith(response.responseText);
|
156
168
|
}
|
@@ -166,22 +178,20 @@ Formize.refreshDependents = function (event) {
|
|
166
178
|
return false;
|
167
179
|
}
|
168
180
|
|
169
|
-
Formize.
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
$(check_box.attr('data-show')).slideUp();
|
178
|
-
$(check_box.attr('data-hide')).slideDown();
|
179
|
-
}
|
181
|
+
Formize.toggleCheckboxes = function () {
|
182
|
+
var checkable = $(this);
|
183
|
+
if (checkable.prop("checked")) {
|
184
|
+
$(checkable.attr('data-show')).slideDown();
|
185
|
+
$(checkable.attr('data-hide')).slideUp();
|
186
|
+
} else {
|
187
|
+
$(checkable.attr('data-show')).slideUp();
|
188
|
+
$(checkable.attr('data-hide')).slideDown();
|
180
189
|
}
|
190
|
+
};
|
181
191
|
|
182
|
-
|
183
|
-
|
184
|
-
|
192
|
+
Formize.toggleRadios = function () {
|
193
|
+
$("input[type='radio'][data-show], input[type='radio'][data-hide]").each(Formize.toggleCheckboxes);
|
194
|
+
};
|
185
195
|
|
186
196
|
// Initializes unroll inputs
|
187
197
|
$.behave('input[data-unroll]', 'load', function() {
|
@@ -215,12 +225,12 @@ $.behave('input[data-unroll]', 'load', function() {
|
|
215
225
|
// Initializes date fields
|
216
226
|
$.behave('input[data-datepicker]', "load", function() {
|
217
227
|
var element = $(this);
|
218
|
-
var locale = element.
|
228
|
+
var locale = element.data("locale");
|
219
229
|
var options = $.datepicker.regional[locale];
|
220
|
-
if (element.
|
221
|
-
options['dateFormat'] = element.
|
230
|
+
if (element.data("date-format") !== null) {
|
231
|
+
options['dateFormat'] = element.data("date-format");
|
222
232
|
}
|
223
|
-
options['altField'] = '#'+element.
|
233
|
+
options['altField'] = '#'+element.data("datepicker");
|
224
234
|
options['altFormat'] = 'yy-mm-dd';
|
225
235
|
options['defaultDate'] = element.val();
|
226
236
|
element.datepicker(options);
|
@@ -231,15 +241,15 @@ $.behave('input[data-datepicker]', "load", function() {
|
|
231
241
|
// Can't work properly with actual datetimepicker
|
232
242
|
// $.behave('input[data-datetimepicker]', "load", function() {
|
233
243
|
// var element = $(this);
|
234
|
-
// var locale = element.
|
244
|
+
// var locale = element.data("locale");
|
235
245
|
// var options = $.datepicker.regional[locale];
|
236
|
-
// if (element.
|
237
|
-
// options['dateFormat'] = element.
|
246
|
+
// if (element.data("date-format") !== null) {
|
247
|
+
// options['dateFormat'] = element.data("date-format");
|
238
248
|
// }
|
239
|
-
// if (element.
|
240
|
-
// options['timeFormat'] = element.
|
249
|
+
// if (element.data("time-format") !== null) {
|
250
|
+
// options['timeFormat'] = element.data("time-format");
|
241
251
|
// }
|
242
|
-
// options['altField'] = '#'+element.
|
252
|
+
// options['altField'] = '#'+element.data("datetimepicker");
|
243
253
|
// options['altFormat'] = 'yy-mm-dd';
|
244
254
|
// options['altFieldTimeOnly'] = false;
|
245
255
|
// options['showSecond'] = true;
|
@@ -250,6 +260,7 @@ $.behave('input[data-datepicker]', "load", function() {
|
|
250
260
|
|
251
261
|
// Initializes resizable text areas
|
252
262
|
// Minimal size is defined on default size of the area
|
263
|
+
/*
|
253
264
|
$.behave('textarea[data-resizable]', "load", function() {
|
254
265
|
var element = $(this);
|
255
266
|
element.resizable({
|
@@ -260,7 +271,7 @@ $.behave('textarea[data-resizable]', "load", function() {
|
|
260
271
|
stop: function (event, ui) { $(this).css("padding-bottom", "0px"); }
|
261
272
|
});
|
262
273
|
});
|
263
|
-
|
274
|
+
*/
|
264
275
|
// Opens a dialog for a resource creation
|
265
276
|
$.behave("a[data-add-item]", "click", function() {
|
266
277
|
var element = $(this);
|
@@ -292,8 +303,8 @@ $.behave("a[data-add-item]", "click", function() {
|
|
292
303
|
$.behave("input[data-autocomplete]", "load", function () {
|
293
304
|
var element = $(this);
|
294
305
|
element.autocomplete({
|
295
|
-
source: element.
|
296
|
-
minLength: parseInt(element.
|
306
|
+
source: element.data("autocomplete"),
|
307
|
+
minLength: parseInt(element.data("min-length") || 1)
|
297
308
|
});
|
298
309
|
});
|
299
310
|
|
@@ -304,5 +315,11 @@ $.behave("*[data-dependents]", "emulated:change", Formize.refreshDependents);
|
|
304
315
|
$.behave("select[data-dependents]", "keypress", Formize.refreshDependents);
|
305
316
|
|
306
317
|
// Hide/show blocks depending on check boxes
|
307
|
-
$.behave("input[data-show], input[data-hide]", "load", Formize.
|
308
|
-
$.behave("input[data-show], input[data-hide]", "change", Formize.
|
318
|
+
$.behave("input[type='checkbox'][data-show], input[type='checkbox'][data-hide]", "load", Formize.toggleCheckboxes);
|
319
|
+
$.behave("input[type='checkbox'][data-show], input[type='checkbox'][data-hide]", "change", Formize.toggleCheckboxes)
|
320
|
+
$.behave("input[type='radio'][data-show], input[type='radio'][data-hide]", "load", Formize.toggleCheckboxes);
|
321
|
+
$.behave("input[type='radio'][data-show], input[type='radio'][data-hide]", "change", Formize.toggleRadios)
|
322
|
+
// $.behave("input[data-show], input[data-hide]", "load", Formize.Toggles.ifChecked);
|
323
|
+
// $.behave("input[data-show], input[data-hide]", "change", Formize.Toggles.ifChecked);
|
324
|
+
//$.behave("input[type='checkbox'], input[type='radio']", "load", Formize.toggleCheckables);
|
325
|
+
//$.behave("input[type='checkbox'], input[type='radio']", "change", Formize.toggleCheckables);
|
@@ -12,7 +12,7 @@ module Formize
|
|
12
12
|
format = I18n.translate('date.formats.'+format.to_s)
|
13
13
|
Formize::DATE_FORMAT_TOKENS.each{|js, rb| format.gsub!(rb, js)}
|
14
14
|
html = ""
|
15
|
-
html << hidden_field_tag(name, value.to_s(:db))
|
15
|
+
html << hidden_field_tag(name, (value.is_a?(Date) ? value.to_s(:db) : value.to_s))
|
16
16
|
html << tag(:input, :type=>:text, "data-datepicker"=>name, "data-date-format"=>format, :value=>localized_value, "data-locale"=>::I18n.locale, :size=>options.delete(:size)||10)
|
17
17
|
return html.html_safe
|
18
18
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: formize
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.20
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-09-
|
12
|
+
date: 2011-09-27 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &15013920 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *15013920
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: jquery-rails
|
27
|
-
requirement: &
|
27
|
+
requirement: &15001720 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *15001720
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: fastercsv
|
38
|
-
requirement: &
|
38
|
+
requirement: &14997320 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *14997320
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: jeweler
|
49
|
-
requirement: &
|
49
|
+
requirement: &14986600 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.6.4
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *14986600
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rcov
|
60
|
-
requirement: &
|
60
|
+
requirement: &14984080 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *14984080
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rdoc
|
71
|
-
requirement: &
|
71
|
+
requirement: &14982280 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: 2.4.2
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *14982280
|
80
80
|
description: Like simple_form or formtastic, it aims to handle easily forms but taking
|
81
81
|
in account AJAX and HTML5 on depending fields mainly.
|
82
82
|
email: brice.texier@ekylibre.org
|
@@ -209,7 +209,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
209
209
|
version: '0'
|
210
210
|
segments:
|
211
211
|
- 0
|
212
|
-
hash:
|
212
|
+
hash: 1168190452550627795
|
213
213
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
214
214
|
none: false
|
215
215
|
requirements:
|