fomantic-ui-sass 2.7.2 → 2.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +7 -7
- data/app/assets/javascripts/semantic-ui/accordion.js +0 -6
- data/app/assets/javascripts/semantic-ui/api.js +1 -1
- data/app/assets/javascripts/semantic-ui/calendar.js +40 -12
- data/app/assets/javascripts/semantic-ui/checkbox.js +9 -0
- data/app/assets/javascripts/semantic-ui/dimmer.js +2 -4
- data/app/assets/javascripts/semantic-ui/dropdown.js +9 -11
- data/app/assets/javascripts/semantic-ui/embed.js +0 -1
- data/app/assets/javascripts/semantic-ui/form.js +10 -16
- data/app/assets/javascripts/semantic-ui/modal.js +28 -17
- data/app/assets/javascripts/semantic-ui/nag.js +1 -20
- data/app/assets/javascripts/semantic-ui/popup.js +0 -4
- data/app/assets/javascripts/semantic-ui/progress.js +161 -102
- data/app/assets/javascripts/semantic-ui/rating.js +0 -1
- data/app/assets/javascripts/semantic-ui/search.js +2 -7
- data/app/assets/javascripts/semantic-ui/shape.js +68 -145
- data/app/assets/javascripts/semantic-ui/sidebar.js +14 -12
- data/app/assets/javascripts/semantic-ui/site.js +0 -1
- data/app/assets/javascripts/semantic-ui/state.js +0 -1
- data/app/assets/javascripts/semantic-ui/sticky.js +1 -7
- data/app/assets/javascripts/semantic-ui/tab.js +17 -4
- data/app/assets/javascripts/semantic-ui/transition.js +7 -23
- data/app/assets/javascripts/semantic-ui/visibility.js +1 -3
- data/app/assets/stylesheets/semantic-ui/collections/_form.scss +4 -3
- data/app/assets/stylesheets/semantic-ui/collections/_grid.scss +16 -16
- data/app/assets/stylesheets/semantic-ui/collections/_menu.scss +8 -4
- data/app/assets/stylesheets/semantic-ui/collections/_table.scss +12 -3
- data/app/assets/stylesheets/semantic-ui/elements/_button.scss +3 -11
- data/app/assets/stylesheets/semantic-ui/elements/_container.scss +3 -3
- data/app/assets/stylesheets/semantic-ui/elements/_divider.scss +1 -1
- data/app/assets/stylesheets/semantic-ui/elements/_input.scss +3 -0
- data/app/assets/stylesheets/semantic-ui/elements/_label.scss +7 -5
- data/app/assets/stylesheets/semantic-ui/elements/_segment.scss +5 -5
- data/app/assets/stylesheets/semantic-ui/elements/_step.scss +21 -4
- data/app/assets/stylesheets/semantic-ui/globals/_site.scss +0 -1
- data/app/assets/stylesheets/semantic-ui/modules/_calendar.scss +4 -0
- data/app/assets/stylesheets/semantic-ui/modules/_checkbox.scss +6 -0
- data/app/assets/stylesheets/semantic-ui/modules/_dimmer.scss +1 -1
- data/app/assets/stylesheets/semantic-ui/modules/_dropdown.scss +72 -3
- data/app/assets/stylesheets/semantic-ui/modules/_modal.scss +60 -41
- data/app/assets/stylesheets/semantic-ui/modules/_popup.scss +1 -1
- data/app/assets/stylesheets/semantic-ui/modules/_progress.scss +73 -35
- data/app/assets/stylesheets/semantic-ui/modules/_search.scss +1 -1
- data/app/assets/stylesheets/semantic-ui/modules/_shape.scss +5 -0
- data/app/assets/stylesheets/semantic-ui/modules/_sidebar.scss +4 -1
- data/app/assets/stylesheets/semantic-ui/modules/_slider.scss +4 -4
- data/app/assets/stylesheets/semantic-ui/views/_ad.scss +1 -1
- data/app/assets/stylesheets/semantic-ui/views/_card.scss +189 -3
- data/app/assets/stylesheets/semantic-ui/views/_item.scss +3 -3
- data/app/assets/stylesheets/semantic-ui/views/_statistic.scss +1 -1
- data/lib/fomantic/ui/sass/version.rb +2 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef20fb1c252044257d1c28fc77f1778d6cbd841d43503bfad759f085ef791436
|
4
|
+
data.tar.gz: ba73d1f502558cee4f155621707acc8128e173f0ad3590eec7425b04aa17f105
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6a2867ba287c417d665775963bb81b47c43914446cf2aa4fef1b0c42b30003ba25f3ff7db6b45e4c375980f3ffa51012c24a80e177b191e0a696dd68e14f100c
|
7
|
+
data.tar.gz: bf121ef4d63f49dbc72da1a5e0bfd007a05b8c1c7d710f851f110c58fe529f33fb5cac7bd349df0498e22182d9a0f226b82a2b4ec7bd0ea7755d1a837a4cf61a
|
data/README.md
CHANGED
@@ -38,25 +38,25 @@ You can also include modules
|
|
38
38
|
|
39
39
|
## Custom font
|
40
40
|
|
41
|
-
```
|
41
|
+
```scss
|
42
42
|
$font-url: 'http://fonts.useso.com/css?family=Lato:400,700,400italic,700italic&subset=latin';
|
43
43
|
@import 'semantic-ui';
|
44
44
|
```
|
45
45
|
|
46
46
|
## Skip font loading
|
47
|
-
```
|
47
|
+
```scss
|
48
48
|
$import-google-fonts: false;
|
49
49
|
@import 'semantic-ui';
|
50
50
|
```
|
51
51
|
|
52
52
|
## Custom font family
|
53
|
-
```
|
53
|
+
```scss
|
54
54
|
$font-family: 'custom-font-family';
|
55
55
|
@import 'semantic-ui';
|
56
56
|
```
|
57
57
|
|
58
58
|
## All variables, you can custom any of that
|
59
|
-
```
|
59
|
+
```scss
|
60
60
|
$import-google-fonts: true !default;
|
61
61
|
$font-url: 'https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic&subset=latin,latin-ext' !default;
|
62
62
|
$font-name: 'Lato' !default;
|
@@ -86,8 +86,8 @@ You can also load individual modules, provided you also require any dependencies
|
|
86
86
|
Install the gem and create a new project using the gem.
|
87
87
|
|
88
88
|
```console
|
89
|
-
gem install
|
90
|
-
compass create compass-project -r
|
89
|
+
gem install fomantic-ui-sass
|
90
|
+
compass create compass-project -r fomantic-ui-sass --using semantic-ui
|
91
91
|
```
|
92
92
|
|
93
93
|
This will sort a few things out:
|
@@ -106,7 +106,7 @@ gem install fomantic-ui-sass
|
|
106
106
|
|
107
107
|
```ruby
|
108
108
|
# In config.rb
|
109
|
-
require '
|
109
|
+
require 'fomantic-ui-sass'
|
110
110
|
```
|
111
111
|
|
112
112
|
```console
|
@@ -34,12 +34,6 @@ $.fn.accordion = function(parameters) {
|
|
34
34
|
methodInvoked = (typeof query == 'string'),
|
35
35
|
queryArguments = [].slice.call(arguments, 1),
|
36
36
|
|
37
|
-
requestAnimationFrame = window.requestAnimationFrame
|
38
|
-
|| window.mozRequestAnimationFrame
|
39
|
-
|| window.webkitRequestAnimationFrame
|
40
|
-
|| window.msRequestAnimationFrame
|
41
|
-
|| function(callback) { setTimeout(callback, 0); },
|
42
|
-
|
43
37
|
returnedValue
|
44
38
|
;
|
45
39
|
$allModules
|
@@ -577,7 +577,7 @@ $.api = $.fn.api = function(parameters) {
|
|
577
577
|
if(xhr !== undefined) {
|
578
578
|
module.debug('XHR produced a server error', status, httpMessage);
|
579
579
|
// make sure we have an error to display to console
|
580
|
-
if( xhr.status
|
580
|
+
if( (xhr.status < 200 || xhr.status >= 300) && httpMessage !== undefined && httpMessage !== '') {
|
581
581
|
module.error(error.statusMessage + httpMessage, ajaxSettings.url);
|
582
582
|
}
|
583
583
|
settings.onError.call(context, errorMessage, $module, xhr);
|
@@ -183,7 +183,13 @@ $.fn.calendar = function(parameters) {
|
|
183
183
|
}
|
184
184
|
},
|
185
185
|
date: function () {
|
186
|
-
if (
|
186
|
+
if (settings.initialDate) {
|
187
|
+
var date = parser.date(settings.initialDate, settings);
|
188
|
+
module.set.date(date, settings.formatInput, false);
|
189
|
+
} else if ($module.data(metadata.date) !== undefined) {
|
190
|
+
var date = parser.date($module.data(metadata.date), settings);
|
191
|
+
module.set.date(date, settings.formatInput, false);
|
192
|
+
} else if ($input.length) {
|
187
193
|
var val = $input.val();
|
188
194
|
var date = parser.date(val, settings);
|
189
195
|
module.set.date(date, settings.formatInput, false);
|
@@ -298,7 +304,7 @@ $.fn.calendar = function(parameters) {
|
|
298
304
|
if(settings.showWeekNumbers) {
|
299
305
|
cell = $('<th/>').appendTo(row);
|
300
306
|
cell.text(settings.text.weekNo);
|
301
|
-
cell.addClass(className.
|
307
|
+
cell.addClass(className.weekCell);
|
302
308
|
textColumns--;
|
303
309
|
}
|
304
310
|
for (i = 0; i < textColumns; i++) {
|
@@ -315,7 +321,7 @@ $.fn.calendar = function(parameters) {
|
|
315
321
|
if(isDay && settings.showWeekNumbers){
|
316
322
|
cell = $('<th/>').appendTo(row);
|
317
323
|
cell.text(module.get.weekOfYear(year,month,i+1-settings.firstDayOfWeek));
|
318
|
-
cell.addClass(className.
|
324
|
+
cell.addClass(className.weekCell);
|
319
325
|
}
|
320
326
|
for (c = 0; c < textColumns; c++, i++) {
|
321
327
|
var cellDate = isYear ? new Date(i, month, 1, hour, minute) :
|
@@ -328,7 +334,7 @@ $.fn.calendar = function(parameters) {
|
|
328
334
|
cell.text(cellText);
|
329
335
|
cell.data(metadata.date, cellDate);
|
330
336
|
var adjacent = isDay && cellDate.getMonth() !== ((month + 12) % 12);
|
331
|
-
var disabled = adjacent || !module.helper.isDateInRange(cellDate, mode) || settings.isDisabled(cellDate, mode) || module.helper.isDisabled(cellDate, mode);
|
337
|
+
var disabled = (!settings.selectAdjacentDays && adjacent) || !module.helper.isDateInRange(cellDate, mode) || settings.isDisabled(cellDate, mode) || module.helper.isDisabled(cellDate, mode) || !module.helper.isEnabled(cellDate, mode);
|
332
338
|
if (disabled) {
|
333
339
|
var disabledReason = module.helper.disabledReason(cellDate, mode);
|
334
340
|
if (disabledReason !== null) {
|
@@ -398,7 +404,7 @@ $.fn.calendar = function(parameters) {
|
|
398
404
|
var inRange = !rangeDate ? false :
|
399
405
|
((!!startDate && module.helper.isDateInRange(cellDate, mode, startDate, rangeDate)) ||
|
400
406
|
(!!endDate && module.helper.isDateInRange(cellDate, mode, rangeDate, endDate)));
|
401
|
-
cell.toggleClass(className.focusCell, focused && (!isTouch || isTouchDown) && !adjacent && !disabled);
|
407
|
+
cell.toggleClass(className.focusCell, focused && (!isTouch || isTouchDown) && (!adjacent || (settings.selectAdjacentDays && adjacent)) && !disabled);
|
402
408
|
cell.toggleClass(className.rangeCell, inRange && !active && !disabled);
|
403
409
|
});
|
404
410
|
}
|
@@ -518,7 +524,7 @@ $.fn.calendar = function(parameters) {
|
|
518
524
|
//enter
|
519
525
|
var mode = module.get.mode();
|
520
526
|
var date = module.get.focusDate();
|
521
|
-
if (date && !settings.isDisabled(date, mode) && !module.helper.isDisabled(date, mode)) {
|
527
|
+
if (date && !settings.isDisabled(date, mode) && !module.helper.isDisabled(date, mode) && module.helper.isEnabled(date, mode)) {
|
522
528
|
module.selectDate(date);
|
523
529
|
}
|
524
530
|
//disable form submission:
|
@@ -569,7 +575,7 @@ $.fn.calendar = function(parameters) {
|
|
569
575
|
}();
|
570
576
|
},
|
571
577
|
date: function () {
|
572
|
-
return $module.data(metadata.date) || null;
|
578
|
+
return module.helper.sanitiseDate($module.data(metadata.date)) || null;
|
573
579
|
},
|
574
580
|
focusDate: function () {
|
575
581
|
return $module.data(metadata.focusDate) || null;
|
@@ -822,6 +828,20 @@ $.fn.calendar = function(parameters) {
|
|
822
828
|
}
|
823
829
|
}));
|
824
830
|
},
|
831
|
+
isEnabled: function(date, mode) {
|
832
|
+
if (mode === 'day') {
|
833
|
+
return settings.enabledDates.length == 0 || settings.enabledDates.some(function(d){
|
834
|
+
if (d instanceof Date) {
|
835
|
+
return module.helper.dateEqual(date, d, mode);
|
836
|
+
}
|
837
|
+
if (d !== null && typeof d === 'object') {
|
838
|
+
return module.helper.dateEqual(date, d[metadata.date], mode);
|
839
|
+
}
|
840
|
+
});
|
841
|
+
} else {
|
842
|
+
return true;
|
843
|
+
}
|
844
|
+
},
|
825
845
|
disabledReason: function(date, mode) {
|
826
846
|
if (mode === 'day') {
|
827
847
|
for (var i = 0; i < settings.disabledDates.length; i++) {
|
@@ -1122,6 +1142,10 @@ $.fn.calendar.settings = {
|
|
1122
1142
|
showWeekNumbers : null, // show Number of Week at the very first column of a dayView
|
1123
1143
|
disabledDates : [], // specific day(s) which won't be selectable and contain additional information.
|
1124
1144
|
disabledDaysOfWeek : [], // day(s) which won't be selectable(s) (0 = Sunday)
|
1145
|
+
enabledDates : [], // specific day(s) which will be selectable, all other days will be disabled
|
1146
|
+
centuryBreak : 60, // starting short year until 99 where it will be assumed to belong to the last century
|
1147
|
+
currentCentury : 2000, // century to be added to 2-digit years (00 to {centuryBreak}-1)
|
1148
|
+
selectAdjacentDays : false, // The calendar can show dates from adjacent month. These adjacent month dates can also be made selectable.
|
1125
1149
|
// popup options ('popup', 'on', 'hoverable', and show/hide callbacks are overridden)
|
1126
1150
|
popupOptions: {
|
1127
1151
|
position: 'bottom left',
|
@@ -1279,13 +1303,16 @@ $.fn.calendar.settings = {
|
|
1279
1303
|
}
|
1280
1304
|
}
|
1281
1305
|
|
1282
|
-
//year >
|
1306
|
+
//year > settings.centuryBreak
|
1283
1307
|
for (i = 0; i < numbers.length; i++) {
|
1284
1308
|
j = parseInt(numbers[i]);
|
1285
1309
|
if (isNaN(j)) {
|
1286
1310
|
continue;
|
1287
1311
|
}
|
1288
|
-
if (j
|
1312
|
+
if (j >= settings.centuryBreak && i === numbers.length-1) {
|
1313
|
+
if (j <= 99) {
|
1314
|
+
j += settings.currentCentury - 100;
|
1315
|
+
}
|
1289
1316
|
year = j;
|
1290
1317
|
numbers.splice(i, 1);
|
1291
1318
|
break;
|
@@ -1321,15 +1348,15 @@ $.fn.calendar.settings = {
|
|
1321
1348
|
}
|
1322
1349
|
}
|
1323
1350
|
|
1324
|
-
//year <=
|
1351
|
+
//year <= settings.centuryBreak
|
1325
1352
|
if (year < 0) {
|
1326
1353
|
for (i = numbers.length - 1; i >= 0; i--) {
|
1327
1354
|
j = parseInt(numbers[i]);
|
1328
1355
|
if (isNaN(j)) {
|
1329
1356
|
continue;
|
1330
1357
|
}
|
1331
|
-
if (j
|
1332
|
-
j +=
|
1358
|
+
if (j <= 99) {
|
1359
|
+
j += settings.currentCentury;
|
1333
1360
|
}
|
1334
1361
|
year = j;
|
1335
1362
|
numbers.splice(i, 1);
|
@@ -1465,6 +1492,7 @@ $.fn.calendar.settings = {
|
|
1465
1492
|
link: 'link',
|
1466
1493
|
cell: 'link',
|
1467
1494
|
disabledCell: 'disabled',
|
1495
|
+
weekCell: 'disabled',
|
1468
1496
|
adjacentCell: 'adjacent',
|
1469
1497
|
activeCell: 'active',
|
1470
1498
|
rangeCell: 'range',
|
@@ -174,6 +174,13 @@ $.fn.checkbox = function(parameters) {
|
|
174
174
|
}
|
175
175
|
},
|
176
176
|
|
177
|
+
preventDefaultOnInputTarget: function() {
|
178
|
+
if(typeof event !== 'undefined' && $(event.target).is(selector.input)) {
|
179
|
+
module.verbose('Preventing default check action after manual check action');
|
180
|
+
event.preventDefault();
|
181
|
+
}
|
182
|
+
},
|
183
|
+
|
177
184
|
event: {
|
178
185
|
change: function(event) {
|
179
186
|
if( !module.should.ignoreCallbacks() ) {
|
@@ -263,6 +270,7 @@ $.fn.checkbox = function(parameters) {
|
|
263
270
|
settings.onChecked.call(input);
|
264
271
|
module.trigger.change();
|
265
272
|
}
|
273
|
+
module.preventDefaultOnInputTarget();
|
266
274
|
},
|
267
275
|
|
268
276
|
uncheck: function() {
|
@@ -275,6 +283,7 @@ $.fn.checkbox = function(parameters) {
|
|
275
283
|
settings.onUnchecked.call(input);
|
276
284
|
module.trigger.change();
|
277
285
|
}
|
286
|
+
module.preventDefaultOnInputTarget();
|
278
287
|
},
|
279
288
|
|
280
289
|
indeterminate: function() {
|
@@ -306,10 +306,8 @@ $.fn.dimmer = function(parameters) {
|
|
306
306
|
queue : false,
|
307
307
|
duration : module.get.duration(),
|
308
308
|
useFailSafe : true,
|
309
|
-
onStart : function() {
|
310
|
-
module.remove.dimmed();
|
311
|
-
},
|
312
309
|
onComplete : function() {
|
310
|
+
module.remove.dimmed();
|
313
311
|
module.remove.variation();
|
314
312
|
module.remove.active();
|
315
313
|
callback();
|
@@ -319,10 +317,10 @@ $.fn.dimmer = function(parameters) {
|
|
319
317
|
}
|
320
318
|
else {
|
321
319
|
module.verbose('Hiding dimmer with javascript');
|
322
|
-
module.remove.dimmed();
|
323
320
|
$dimmer
|
324
321
|
.stop()
|
325
322
|
.fadeOut(module.get.duration(), function() {
|
323
|
+
module.remove.dimmed();
|
326
324
|
module.remove.active();
|
327
325
|
$dimmer.removeAttr('style');
|
328
326
|
callback();
|
@@ -81,6 +81,7 @@ $.fn.dropdown = function(parameters) {
|
|
81
81
|
activated = false,
|
82
82
|
itemActivated = false,
|
83
83
|
internalChange = false,
|
84
|
+
iconClicked = false,
|
84
85
|
element = this,
|
85
86
|
instance = $module.data(moduleNamespace),
|
86
87
|
|
@@ -751,7 +752,7 @@ $.fn.dropdown = function(parameters) {
|
|
751
752
|
}
|
752
753
|
var preSelected = $input.val();
|
753
754
|
if(!Array.isArray(preSelected)) {
|
754
|
-
preSelected = preSelected!=="" ? preSelected.split(settings.delimiter) : [];
|
755
|
+
preSelected = preSelected && preSelected!=="" ? preSelected.split(settings.delimiter) : [];
|
755
756
|
}
|
756
757
|
$.each(preSelected,function(index,value){
|
757
758
|
$item.filter('[data-value="'+value+'"]')
|
@@ -1061,12 +1062,12 @@ $.fn.dropdown = function(parameters) {
|
|
1061
1062
|
}
|
1062
1063
|
},
|
1063
1064
|
search: {
|
1064
|
-
focus: function() {
|
1065
|
+
focus: function(event) {
|
1065
1066
|
activated = true;
|
1066
1067
|
if(module.is.multiple()) {
|
1067
1068
|
module.remove.activeLabel();
|
1068
1069
|
}
|
1069
|
-
if(settings.showOnFocus || event.type !== 'focus') {
|
1070
|
+
if(settings.showOnFocus || (event.type !== 'focus' && event.type !== 'focusin')) {
|
1070
1071
|
module.search();
|
1071
1072
|
}
|
1072
1073
|
},
|
@@ -1095,6 +1096,7 @@ $.fn.dropdown = function(parameters) {
|
|
1095
1096
|
},
|
1096
1097
|
icon: {
|
1097
1098
|
click: function(event) {
|
1099
|
+
iconClicked=true;
|
1098
1100
|
if(module.has.search()) {
|
1099
1101
|
if(!module.is.active()) {
|
1100
1102
|
if(settings.showOnFocus){
|
@@ -1669,7 +1671,7 @@ $.fn.dropdown = function(parameters) {
|
|
1669
1671
|
$target = $(event.target),
|
1670
1672
|
$label = $target.closest(selector.siblingLabel),
|
1671
1673
|
inVisibleDOM = document.body.contains(event.target),
|
1672
|
-
notOnLabel = ($module.find($label).length === 0),
|
1674
|
+
notOnLabel = ($module.find($label).length === 0 || !(module.is.multiple() && settings.useLabels)),
|
1673
1675
|
notInMenu = ($target.closest($menu).length === 0)
|
1674
1676
|
;
|
1675
1677
|
callback = $.isFunction(callback)
|
@@ -2613,8 +2615,7 @@ $.fn.dropdown = function(parameters) {
|
|
2613
2615
|
},
|
2614
2616
|
selected: function(value, $selectedItem) {
|
2615
2617
|
var
|
2616
|
-
isMultiple = module.is.multiple()
|
2617
|
-
$userSelectedItem
|
2618
|
+
isMultiple = module.is.multiple()
|
2618
2619
|
;
|
2619
2620
|
$selectedItem = (settings.allowAdditions)
|
2620
2621
|
? $selectedItem || module.get.itemWithAdditions(value)
|
@@ -2821,7 +2822,6 @@ $.fn.dropdown = function(parameters) {
|
|
2821
2822
|
hasCount = (message.search('{count}') !== -1),
|
2822
2823
|
hasMaxCount = (message.search('{maxCount}') !== -1),
|
2823
2824
|
hasTerm = (message.search('{term}') !== -1),
|
2824
|
-
values,
|
2825
2825
|
count,
|
2826
2826
|
query
|
2827
2827
|
;
|
@@ -3132,13 +3132,14 @@ $.fn.dropdown = function(parameters) {
|
|
3132
3132
|
return ( $input.is('select') );
|
3133
3133
|
},
|
3134
3134
|
minCharacters: function(searchTerm) {
|
3135
|
-
if(settings.minCharacters) {
|
3135
|
+
if(settings.minCharacters && !iconClicked) {
|
3136
3136
|
searchTerm = (searchTerm !== undefined)
|
3137
3137
|
? String(searchTerm)
|
3138
3138
|
: String(module.get.query())
|
3139
3139
|
;
|
3140
3140
|
return (searchTerm.length >= settings.minCharacters);
|
3141
3141
|
}
|
3142
|
+
iconClicked=false;
|
3142
3143
|
return true;
|
3143
3144
|
},
|
3144
3145
|
firstLetter: function($item, letter) {
|
@@ -3508,9 +3509,6 @@ $.fn.dropdown = function(parameters) {
|
|
3508
3509
|
hide: function(callback, $subMenu) {
|
3509
3510
|
var
|
3510
3511
|
$currentMenu = $subMenu || $menu,
|
3511
|
-
duration = ($subMenu)
|
3512
|
-
? (settings.duration * 0.9)
|
3513
|
-
: settings.duration,
|
3514
3512
|
start = ($subMenu)
|
3515
3513
|
? function() {}
|
3516
3514
|
: function() {
|
@@ -473,8 +473,7 @@ $.fn.form = function(parameters) {
|
|
473
473
|
keys = Object.keys(parameters),
|
474
474
|
isLegacySettings = (keys.length > 0)
|
475
475
|
? (parameters[keys[0]].identifier !== undefined && parameters[keys[0]].rules !== undefined)
|
476
|
-
: false
|
477
|
-
ruleKeys
|
476
|
+
: false
|
478
477
|
;
|
479
478
|
if(isLegacySettings) {
|
480
479
|
// 1.x (ducktyped)
|
@@ -581,7 +580,6 @@ $.fn.form = function(parameters) {
|
|
581
580
|
$fields.each(function(index, field) {
|
582
581
|
var
|
583
582
|
$field = $(field),
|
584
|
-
type = $field.prop('type'),
|
585
583
|
name = $field.prop('name'),
|
586
584
|
value = $field.val(),
|
587
585
|
isCheckbox = $field.is(selector.checkbox),
|
@@ -764,12 +762,12 @@ $.fn.form = function(parameters) {
|
|
764
762
|
? rule
|
765
763
|
: [rule]
|
766
764
|
;
|
767
|
-
if(
|
768
|
-
module.debug('Removed all rules');
|
769
|
-
validation[field].rules = [];
|
765
|
+
if(validation[field] === undefined || !Array.isArray(validation[field].rules)) {
|
770
766
|
return;
|
771
767
|
}
|
772
|
-
if(
|
768
|
+
if(rule === undefined) {
|
769
|
+
module.debug('Removed all rules');
|
770
|
+
validation[field].rules = [];
|
773
771
|
return;
|
774
772
|
}
|
775
773
|
$.each(validation[field].rules, function(index, rule) {
|
@@ -792,7 +790,7 @@ $.fn.form = function(parameters) {
|
|
792
790
|
// alias
|
793
791
|
rules: function(field, rules) {
|
794
792
|
if(Array.isArray(field)) {
|
795
|
-
$.each(
|
793
|
+
$.each(field, function(index, field) {
|
796
794
|
module.remove.rule(field, rules);
|
797
795
|
});
|
798
796
|
}
|
@@ -924,8 +922,7 @@ $.fn.form = function(parameters) {
|
|
924
922
|
|
925
923
|
form: function(event, ignoreCallbacks) {
|
926
924
|
var
|
927
|
-
values = module.get.values()
|
928
|
-
apiRequest
|
925
|
+
values = module.get.values()
|
929
926
|
;
|
930
927
|
|
931
928
|
// input keydown event will fire submit repeatedly by browser default
|
@@ -1035,14 +1032,13 @@ $.fn.form = function(parameters) {
|
|
1035
1032
|
rule: function(field, rule, internal) {
|
1036
1033
|
var
|
1037
1034
|
$field = module.get.field(field.identifier),
|
1038
|
-
type = rule.type,
|
1039
1035
|
ancillary = module.get.ancillaryValue(rule),
|
1040
1036
|
ruleName = module.get.ruleName(rule),
|
1041
1037
|
ruleFunction = settings.rules[ruleName],
|
1042
1038
|
invalidFields = [],
|
1043
|
-
|
1039
|
+
isCheckbox = $field.is(selector.checkbox),
|
1044
1040
|
isValid = function(field){
|
1045
|
-
var value = (
|
1041
|
+
var value = (isCheckbox ? $(field).filter(':checked').val() : $(field).val());
|
1046
1042
|
// cast to string avoiding encoding special values
|
1047
1043
|
value = (value === undefined || value === '' || value === null)
|
1048
1044
|
? ''
|
@@ -1055,7 +1051,7 @@ $.fn.form = function(parameters) {
|
|
1055
1051
|
module.error(error.noRule, ruleName);
|
1056
1052
|
return;
|
1057
1053
|
}
|
1058
|
-
if(
|
1054
|
+
if(isCheckbox) {
|
1059
1055
|
if (!isValid($field)) {
|
1060
1056
|
invalidFields = $field;
|
1061
1057
|
}
|
@@ -1554,7 +1550,6 @@ $.fn.form.settings = {
|
|
1554
1550
|
// matches another field
|
1555
1551
|
match: function(value, identifier) {
|
1556
1552
|
var
|
1557
|
-
$form = $(this),
|
1558
1553
|
matchingValue
|
1559
1554
|
;
|
1560
1555
|
if( $('[data-validate="'+ identifier +'"]').length > 0 ) {
|
@@ -1579,7 +1574,6 @@ $.fn.form.settings = {
|
|
1579
1574
|
different: function(value, identifier) {
|
1580
1575
|
// use either id or name of field
|
1581
1576
|
var
|
1582
|
-
$form = $(this),
|
1583
1577
|
matchingValue
|
1584
1578
|
;
|
1585
1579
|
if( $('[data-validate="'+ identifier +'"]').length > 0 ) {
|