fuelux-rails 2.4.1 → 2.4.2
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/lib/fuelux-rails/version.rb +1 -1
- data/vendor/assets/javascripts/fuelux/checkbox.js +13 -8
- data/vendor/assets/javascripts/fuelux/combobox.js +13 -8
- data/vendor/assets/javascripts/fuelux/datagrid.js +39 -7
- data/vendor/assets/javascripts/fuelux/pillbox.js +14 -7
- data/vendor/assets/javascripts/fuelux/radio.js +19 -9
- data/vendor/assets/javascripts/fuelux/search.js +15 -6
- data/vendor/assets/javascripts/fuelux/select.js +13 -3
- data/vendor/assets/javascripts/fuelux/spinner.js +19 -12
- data/vendor/assets/javascripts/fuelux/tree.js +12 -7
- data/vendor/assets/javascripts/fuelux/wizard.js +50 -26
- data/vendor/toolkit/fuelux/checkbox.less +1 -1
- data/vendor/toolkit/fuelux/radio.less +13 -3
- data/vendor/toolkit/fuelux/select.less +4 -0
- data/vendor/toolkit/fuelux/tree.less +4 -2
- data/vendor/toolkit/fuelux/wizard.less +20 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55cb9d61718671c8347063ea1b77cfe807b52b9e
|
4
|
+
data.tar.gz: f4e56823b6aa283c6c13f3117f6a58b1669e76f4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0c6c599ad21f11c6a517f076aa9dcddfca793c84693a38908697eecc984099f3423c34178f13fa9db1b21bf65e03f1eb42fedff51afb6dd06cde4dfb2624a3e8
|
7
|
+
data.tar.gz: f795d828313bdef5c100b68659033dde2c2efdf048b54c8f989561fae3be9c483b62a496c64a754138f7351b8d664be89af38594c1fbdca83f6ff54a730007f7
|
data/lib/fuelux-rails/version.rb
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
var old = $.fn.checkbox;
|
13
13
|
|
14
14
|
// CHECKBOX CONSTRUCTOR AND PROTOTYPE
|
15
15
|
|
@@ -89,25 +89,31 @@
|
|
89
89
|
|
90
90
|
// CHECKBOX PLUGIN DEFINITION
|
91
91
|
|
92
|
-
$.fn.checkbox = function (option
|
92
|
+
$.fn.checkbox = function (option) {
|
93
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
93
94
|
var methodReturn;
|
94
95
|
|
95
96
|
var $set = this.each(function () {
|
96
|
-
var $this
|
97
|
-
var data
|
97
|
+
var $this = $( this );
|
98
|
+
var data = $this.data('checkbox');
|
98
99
|
var options = typeof option === 'object' && option;
|
99
100
|
|
100
|
-
if
|
101
|
-
if
|
101
|
+
if( !data ) $this.data('checkbox', (data = new Checkbox(this, options)));
|
102
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
102
103
|
});
|
103
104
|
|
104
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
105
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
105
106
|
};
|
106
107
|
|
107
108
|
$.fn.checkbox.defaults = {};
|
108
109
|
|
109
110
|
$.fn.checkbox.Constructor = Checkbox;
|
110
111
|
|
112
|
+
$.fn.checkbox.noConflict = function () {
|
113
|
+
$.fn.checkbox = old;
|
114
|
+
return this;
|
115
|
+
};
|
116
|
+
|
111
117
|
|
112
118
|
// CHECKBOX DATA-API
|
113
119
|
|
@@ -121,5 +127,4 @@
|
|
121
127
|
});
|
122
128
|
});
|
123
129
|
});
|
124
|
-
|
125
130
|
}(window.jQuery);
|
@@ -9,6 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
+
var old = $.fn.combobox;
|
12
13
|
|
13
14
|
|
14
15
|
// COMBOBOX CONSTRUCTOR AND PROTOTYPE
|
@@ -136,30 +137,35 @@
|
|
136
137
|
|
137
138
|
// COMBOBOX PLUGIN DEFINITION
|
138
139
|
|
139
|
-
$.fn.combobox = function (option
|
140
|
+
$.fn.combobox = function (option) {
|
141
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
140
142
|
var methodReturn;
|
141
143
|
|
142
144
|
var $set = this.each(function () {
|
143
|
-
var $this
|
144
|
-
var data
|
145
|
+
var $this = $( this );
|
146
|
+
var data = $this.data( 'combobox' );
|
145
147
|
var options = typeof option === 'object' && option;
|
146
148
|
|
147
|
-
if
|
148
|
-
if
|
149
|
+
if( !data ) $this.data('combobox', (data = new Combobox( this, options ) ) );
|
150
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
149
151
|
});
|
150
152
|
|
151
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
153
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
152
154
|
};
|
153
155
|
|
154
156
|
$.fn.combobox.defaults = {};
|
155
157
|
|
156
158
|
$.fn.combobox.Constructor = Combobox;
|
157
159
|
|
160
|
+
$.fn.combobox.noConflict = function () {
|
161
|
+
$.fn.combobox = old;
|
162
|
+
return this;
|
163
|
+
};
|
164
|
+
|
158
165
|
|
159
166
|
// COMBOBOX DATA-API
|
160
167
|
|
161
168
|
$(function () {
|
162
|
-
|
163
169
|
$(window).on('load', function () {
|
164
170
|
$('.combobox').each(function () {
|
165
171
|
var $this = $(this);
|
@@ -174,5 +180,4 @@
|
|
174
180
|
$this.combobox($this.data());
|
175
181
|
});
|
176
182
|
});
|
177
|
-
|
178
183
|
}(window.jQuery);
|
@@ -9,6 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
+
var old = $.fn.datagrid;
|
12
13
|
|
13
14
|
// Relates to thead .sorted styles in datagrid.less
|
14
15
|
var SORTED_HEADER_OFFSET = 22;
|
@@ -85,7 +86,7 @@
|
|
85
86
|
constructor: Datagrid,
|
86
87
|
|
87
88
|
renderColumns: function () {
|
88
|
-
var
|
89
|
+
var $target;
|
89
90
|
|
90
91
|
this.$footer.attr('colspan', this.columns.length);
|
91
92
|
this.$topheader.attr('colspan', this.columns.length);
|
@@ -98,7 +99,12 @@
|
|
98
99
|
colHTML += '>' + column.label + '</th>';
|
99
100
|
});
|
100
101
|
|
101
|
-
|
102
|
+
this.$colheader.append(colHTML);
|
103
|
+
|
104
|
+
if (this.options.dataOptions.sortProperty) {
|
105
|
+
$target = this.$colheader.children('th[data-property="' + this.options.dataOptions.sortProperty + '"]');
|
106
|
+
this.updateColumns($target, this.options.dataOptions.sortDirection);
|
107
|
+
}
|
102
108
|
},
|
103
109
|
|
104
110
|
updateColumns: function ($target, direction) {
|
@@ -147,6 +153,18 @@
|
|
147
153
|
this.$tbody.html(this.placeholderRowHTML(this.options.loadingHTML));
|
148
154
|
|
149
155
|
this.options.dataSource.data(this.options.dataOptions, function (data) {
|
156
|
+
if (typeof data === 'string') {
|
157
|
+
// Error-handling
|
158
|
+
|
159
|
+
self.$footerchildren.css('visibility', 'hidden');
|
160
|
+
|
161
|
+
self.$tbody.html(self.errorRowHTML(data));
|
162
|
+
self.stretchHeight();
|
163
|
+
|
164
|
+
self.$element.trigger('loaded');
|
165
|
+
return;
|
166
|
+
}
|
167
|
+
|
150
168
|
var itemdesc = (data.count === 1) ? self.options.itemText : self.options.itemsText;
|
151
169
|
var rowHTML = '';
|
152
170
|
|
@@ -185,6 +203,11 @@
|
|
185
203
|
|
186
204
|
},
|
187
205
|
|
206
|
+
errorRowHTML: function (content) {
|
207
|
+
return '<tr><td style="text-align:center;padding:20px 20px 0 20px;border-bottom:none;" colspan="' +
|
208
|
+
this.columns.length + '"><div class="alert alert-error">' + content + '</div></td></tr>';
|
209
|
+
},
|
210
|
+
|
188
211
|
placeholderRowHTML: function (content) {
|
189
212
|
return '<tr><td style="text-align:center;padding:20px;border-bottom:none;" colspan="' +
|
190
213
|
this.columns.length + '">' + content + '</td></tr>';
|
@@ -327,14 +350,19 @@
|
|
327
350
|
// DATAGRID PLUGIN DEFINITION
|
328
351
|
|
329
352
|
$.fn.datagrid = function (option) {
|
330
|
-
|
331
|
-
|
332
|
-
|
353
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
354
|
+
var methodReturn;
|
355
|
+
|
356
|
+
var $set = this.each(function () {
|
357
|
+
var $this = $( this );
|
358
|
+
var data = $this.data( 'datagrid' );
|
333
359
|
var options = typeof option === 'object' && option;
|
334
360
|
|
335
|
-
if
|
336
|
-
if
|
361
|
+
if( !data ) $this.data('datagrid', (data = new Datagrid( this, options ) ) );
|
362
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
337
363
|
});
|
364
|
+
|
365
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
338
366
|
};
|
339
367
|
|
340
368
|
$.fn.datagrid.defaults = {
|
@@ -347,4 +375,8 @@
|
|
347
375
|
|
348
376
|
$.fn.datagrid.Constructor = Datagrid;
|
349
377
|
|
378
|
+
$.fn.datagrid.noConflict = function () {
|
379
|
+
$.fn.datagrid = old;
|
380
|
+
return this;
|
381
|
+
};
|
350
382
|
}(window.jQuery);
|
@@ -9,6 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
+
var old = $.fn.pillbox;
|
12
13
|
|
13
14
|
// PILLBOX CONSTRUCTOR AND PROTOTYPE
|
14
15
|
|
@@ -88,25 +89,32 @@
|
|
88
89
|
|
89
90
|
// PILLBOX PLUGIN DEFINITION
|
90
91
|
|
91
|
-
$.fn.pillbox = function (option
|
92
|
+
$.fn.pillbox = function (option) {
|
93
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
92
94
|
var methodReturn;
|
93
95
|
|
94
96
|
var $set = this.each(function () {
|
95
|
-
var $this
|
96
|
-
var data
|
97
|
+
var $this = $( this );
|
98
|
+
var data = $this.data( 'pillbox' );
|
97
99
|
var options = typeof option === 'object' && option;
|
98
100
|
|
99
|
-
if
|
100
|
-
if
|
101
|
+
if( !data ) $this.data('pillbox', (data = new Pillbox( this, options ) ) );
|
102
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
101
103
|
});
|
102
104
|
|
103
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
105
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
104
106
|
};
|
105
107
|
|
106
108
|
$.fn.pillbox.defaults = {};
|
107
109
|
|
108
110
|
$.fn.pillbox.Constructor = Pillbox;
|
109
111
|
|
112
|
+
$.fn.pillbox.noConflict = function () {
|
113
|
+
$.fn.pillbox = old;
|
114
|
+
return this;
|
115
|
+
};
|
116
|
+
|
117
|
+
|
110
118
|
// PILLBOX DATA-API
|
111
119
|
|
112
120
|
$(function () {
|
@@ -117,4 +125,3 @@
|
|
117
125
|
});
|
118
126
|
});
|
119
127
|
}(window.jQuery);
|
120
|
-
|
@@ -9,7 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
var old = $.fn.radio;
|
13
13
|
|
14
14
|
// RADIO CONSTRUCTOR AND PROTOTYPE
|
15
15
|
|
@@ -41,10 +41,12 @@
|
|
41
41
|
var disabled = !!$radio.prop('disabled');
|
42
42
|
|
43
43
|
this.$icon.removeClass('checked disabled');
|
44
|
+
this.$label.removeClass('checked');
|
44
45
|
|
45
46
|
// set state of radio
|
46
47
|
if (checked === true) {
|
47
48
|
this.$icon.addClass('checked');
|
49
|
+
this.$label.addClass('checked');
|
48
50
|
}
|
49
51
|
if (disabled === true) {
|
50
52
|
this.$icon.addClass('disabled');
|
@@ -52,8 +54,11 @@
|
|
52
54
|
},
|
53
55
|
|
54
56
|
resetGroup: function () {
|
57
|
+
var group = $('input[name="' + this.groupName + '"]');
|
58
|
+
|
55
59
|
// reset all radio buttons in group
|
56
|
-
|
60
|
+
group.next().removeClass('checked');
|
61
|
+
group.parent().removeClass('checked');
|
57
62
|
},
|
58
63
|
|
59
64
|
enable: function () {
|
@@ -92,25 +97,31 @@
|
|
92
97
|
|
93
98
|
// RADIO PLUGIN DEFINITION
|
94
99
|
|
95
|
-
$.fn.radio = function (option
|
100
|
+
$.fn.radio = function (option) {
|
101
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
96
102
|
var methodReturn;
|
97
103
|
|
98
104
|
var $set = this.each(function () {
|
99
|
-
var $this
|
100
|
-
var data
|
105
|
+
var $this = $( this );
|
106
|
+
var data = $this.data( 'radio' );
|
101
107
|
var options = typeof option === 'object' && option;
|
102
108
|
|
103
|
-
if
|
104
|
-
if
|
109
|
+
if( !data ) $this.data('radio', (data = new Radio( this, options ) ) );
|
110
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
105
111
|
});
|
106
112
|
|
107
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
113
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
108
114
|
};
|
109
115
|
|
110
116
|
$.fn.radio.defaults = {};
|
111
117
|
|
112
118
|
$.fn.radio.Constructor = Radio;
|
113
119
|
|
120
|
+
$.fn.radio.noConflict = function () {
|
121
|
+
$.fn.radio = old;
|
122
|
+
return this;
|
123
|
+
};
|
124
|
+
|
114
125
|
|
115
126
|
// RADIO DATA-API
|
116
127
|
|
@@ -124,5 +135,4 @@
|
|
124
135
|
});
|
125
136
|
});
|
126
137
|
});
|
127
|
-
|
128
138
|
}(window.jQuery);
|
@@ -9,7 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
var old = $.fn.search;
|
13
13
|
|
14
14
|
// SEARCH CONSTRUCTOR AND PROTOTYPE
|
15
15
|
|
@@ -97,20 +97,30 @@
|
|
97
97
|
// SEARCH PLUGIN DEFINITION
|
98
98
|
|
99
99
|
$.fn.search = function (option) {
|
100
|
-
|
101
|
-
|
102
|
-
|
100
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
101
|
+
var methodReturn;
|
102
|
+
|
103
|
+
var $set = this.each(function () {
|
104
|
+
var $this = $( this );
|
105
|
+
var data = $this.data( 'search' );
|
103
106
|
var options = typeof option === 'object' && option;
|
104
107
|
|
105
108
|
if (!data) $this.data('search', (data = new Search(this, options)));
|
106
|
-
if (typeof option === 'string') data[option]();
|
109
|
+
if (typeof option === 'string') methodReturn = data[ option ].apply( data, args );
|
107
110
|
});
|
111
|
+
|
112
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
108
113
|
};
|
109
114
|
|
110
115
|
$.fn.search.defaults = {};
|
111
116
|
|
112
117
|
$.fn.search.Constructor = Search;
|
113
118
|
|
119
|
+
$.fn.search.noConflict = function () {
|
120
|
+
$.fn.search = old;
|
121
|
+
return this;
|
122
|
+
};
|
123
|
+
|
114
124
|
|
115
125
|
// SEARCH DATA-API
|
116
126
|
|
@@ -121,5 +131,4 @@
|
|
121
131
|
$this.search($this.data());
|
122
132
|
});
|
123
133
|
});
|
124
|
-
|
125
134
|
}(window.jQuery);
|
@@ -9,6 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
+
var old = $.fn.select;
|
12
13
|
|
13
14
|
|
14
15
|
// SELECT CONSTRUCTOR AND PROTOTYPE
|
@@ -18,6 +19,7 @@
|
|
18
19
|
this.options = $.extend({}, $.fn.select.defaults, options);
|
19
20
|
this.$element.on('click', 'a', $.proxy(this.itemclicked, this));
|
20
21
|
this.$button = this.$element.find('.btn');
|
22
|
+
this.$hiddenField = this.$element.find('.hidden-field');
|
21
23
|
this.$label = this.$element.find('.dropdown-label');
|
22
24
|
this.setDefaultSelection();
|
23
25
|
|
@@ -32,6 +34,7 @@
|
|
32
34
|
|
33
35
|
itemclicked: function (e) {
|
34
36
|
this.$selectedItem = $(e.target).parent();
|
37
|
+
this.$hiddenField.val(this.$selectedItem.attr('data-value'));
|
35
38
|
this.$label.text(this.$selectedItem.text());
|
36
39
|
|
37
40
|
// pass object including text and any data-attributes
|
@@ -90,6 +93,7 @@
|
|
90
93
|
var item = this.$element.find(selector);
|
91
94
|
|
92
95
|
this.$selectedItem = item;
|
96
|
+
this.$hiddenField.val(this.$selectedItem.attr('data-value'));
|
93
97
|
this.$label.text(this.$selectedItem.text());
|
94
98
|
},
|
95
99
|
|
@@ -121,7 +125,8 @@
|
|
121
125
|
|
122
126
|
// SELECT PLUGIN DEFINITION
|
123
127
|
|
124
|
-
$.fn.select = function (option
|
128
|
+
$.fn.select = function (option) {
|
129
|
+
var args = Array.prototype.slice.call(arguments, 1);
|
125
130
|
var methodReturn;
|
126
131
|
|
127
132
|
var $set = this.each(function () {
|
@@ -130,16 +135,21 @@
|
|
130
135
|
var options = typeof option === 'object' && option;
|
131
136
|
|
132
137
|
if (!data) $this.data('select', (data = new Select(this, options)));
|
133
|
-
if (typeof option === 'string') methodReturn = data[option](
|
138
|
+
if (typeof option === 'string') methodReturn = data[option].apply(data, args);
|
134
139
|
});
|
135
140
|
|
136
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
141
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
137
142
|
};
|
138
143
|
|
139
144
|
$.fn.select.defaults = {};
|
140
145
|
|
141
146
|
$.fn.select.Constructor = Select;
|
142
147
|
|
148
|
+
$.fn.select.noConflict = function () {
|
149
|
+
$.fn.select = old;
|
150
|
+
return this;
|
151
|
+
};
|
152
|
+
|
143
153
|
|
144
154
|
// SELECT DATA-API
|
145
155
|
|
@@ -9,7 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
var old = $.fn.spinner;
|
13
13
|
|
14
14
|
// SPINNER CONSTRUCTOR AND PROTOTYPE
|
15
15
|
|
@@ -72,7 +72,7 @@
|
|
72
72
|
if(newVal/1){
|
73
73
|
this.options.value = newVal/1;
|
74
74
|
}else{
|
75
|
-
newVal = newVal.replace(/[^0-9]/g,'');
|
75
|
+
newVal = newVal.replace(/[^0-9]/g,'') || '';
|
76
76
|
this.$input.val(newVal);
|
77
77
|
this.options.value = newVal/1;
|
78
78
|
}
|
@@ -81,9 +81,11 @@
|
|
81
81
|
},
|
82
82
|
|
83
83
|
stopSpin: function () {
|
84
|
-
|
85
|
-
|
86
|
-
|
84
|
+
if(this.switches.timeout!==undefined){
|
85
|
+
clearTimeout(this.switches.timeout);
|
86
|
+
this.switches.count = 1;
|
87
|
+
this.triggerChangedEvent();
|
88
|
+
}
|
87
89
|
},
|
88
90
|
|
89
91
|
triggerChangedEvent: function () {
|
@@ -170,19 +172,20 @@
|
|
170
172
|
|
171
173
|
// SPINNER PLUGIN DEFINITION
|
172
174
|
|
173
|
-
$.fn.spinner = function (option
|
175
|
+
$.fn.spinner = function (option) {
|
176
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
174
177
|
var methodReturn;
|
175
178
|
|
176
179
|
var $set = this.each(function () {
|
177
|
-
var $this
|
178
|
-
var data
|
180
|
+
var $this = $( this );
|
181
|
+
var data = $this.data( 'spinner' );
|
179
182
|
var options = typeof option === 'object' && option;
|
180
183
|
|
181
|
-
if
|
182
|
-
if
|
184
|
+
if( !data ) $this.data('spinner', (data = new Spinner( this, options ) ) );
|
185
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
183
186
|
});
|
184
187
|
|
185
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
188
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
186
189
|
};
|
187
190
|
|
188
191
|
$.fn.spinner.defaults = {
|
@@ -197,6 +200,11 @@
|
|
197
200
|
|
198
201
|
$.fn.spinner.Constructor = Spinner;
|
199
202
|
|
203
|
+
$.fn.spinner.noConflict = function () {
|
204
|
+
$.fn.spinner = old;
|
205
|
+
return this;
|
206
|
+
};
|
207
|
+
|
200
208
|
|
201
209
|
// SPINNER DATA-API
|
202
210
|
|
@@ -207,5 +215,4 @@
|
|
207
215
|
$this.spinner($this.data());
|
208
216
|
});
|
209
217
|
});
|
210
|
-
|
211
218
|
}(window.jQuery);
|
@@ -9,7 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
var old = $.fn.tree;
|
13
13
|
|
14
14
|
// TREE CONSTRUCTOR AND PROTOTYPE
|
15
15
|
|
@@ -211,19 +211,20 @@
|
|
211
211
|
|
212
212
|
// TREE PLUGIN DEFINITION
|
213
213
|
|
214
|
-
$.fn.tree = function (option
|
214
|
+
$.fn.tree = function (option) {
|
215
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
215
216
|
var methodReturn;
|
216
217
|
|
217
218
|
var $set = this.each(function () {
|
218
|
-
var $this
|
219
|
-
var data
|
219
|
+
var $this = $( this );
|
220
|
+
var data = $this.data( 'tree' );
|
220
221
|
var options = typeof option === 'object' && option;
|
221
222
|
|
222
|
-
if
|
223
|
-
if
|
223
|
+
if( !data ) $this.data('tree', (data = new Tree( this, options ) ) );
|
224
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
224
225
|
});
|
225
226
|
|
226
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
227
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
227
228
|
};
|
228
229
|
|
229
230
|
$.fn.tree.defaults = {
|
@@ -234,4 +235,8 @@
|
|
234
235
|
|
235
236
|
$.fn.tree.Constructor = Tree;
|
236
237
|
|
238
|
+
$.fn.tree.noConflict = function () {
|
239
|
+
$.fn.tree = old;
|
240
|
+
return this;
|
241
|
+
};
|
237
242
|
}(window.jQuery);
|
@@ -9,7 +9,7 @@
|
|
9
9
|
!function ($) {
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
var old = $.fn.wizard;
|
13
13
|
|
14
14
|
// WIZARD CONSTRUCTOR AND PROTOTYPE
|
15
15
|
|
@@ -18,6 +18,7 @@
|
|
18
18
|
|
19
19
|
this.$element = $(element);
|
20
20
|
this.options = $.extend({}, $.fn.wizard.defaults, options);
|
21
|
+
this.options.disablePreviousStep = ( this.$element.data().restrict === "previous" ) ? true : false;
|
21
22
|
this.currentStep = this.options.selectedItem.step;
|
22
23
|
this.numSteps = this.$element.find('.steps li').length;
|
23
24
|
this.$prevBtn = this.$element.find('button.btn-prev');
|
@@ -33,7 +34,12 @@
|
|
33
34
|
this.$element.on('click', 'li.complete', $.proxy(this.stepclicked, this));
|
34
35
|
|
35
36
|
if(this.currentStep > 1) {
|
36
|
-
|
37
|
+
this.selectedItem(this.options.selectedItem);
|
38
|
+
}
|
39
|
+
|
40
|
+
if( this.options.disablePreviousStep ) {
|
41
|
+
this.$prevBtn.attr( 'disabled', true );
|
42
|
+
this.$element.find( '.steps' ).addClass( 'previous-disabled' );
|
37
43
|
}
|
38
44
|
};
|
39
45
|
|
@@ -47,7 +53,9 @@
|
|
47
53
|
var lastStep = (this.currentStep === this.numSteps);
|
48
54
|
|
49
55
|
// disable buttons based on current step
|
50
|
-
this
|
56
|
+
if( !this.options.disablePreviousStep ) {
|
57
|
+
this.$prevBtn.attr('disabled', (firstStep === true || canMovePrev === false));
|
58
|
+
}
|
51
59
|
|
52
60
|
// change button text of last step, if specified
|
53
61
|
var data = this.$nextBtn.data();
|
@@ -84,7 +92,7 @@
|
|
84
92
|
$(target).addClass('active');
|
85
93
|
|
86
94
|
// reset the wizard position to the left
|
87
|
-
|
95
|
+
this.$element.find('.steps').first().attr('style','margin-left: 0');
|
88
96
|
|
89
97
|
// check if the steps are wider than the container div
|
90
98
|
var totalWidth = 0;
|
@@ -92,8 +100,8 @@
|
|
92
100
|
totalWidth += $(this).outerWidth();
|
93
101
|
});
|
94
102
|
var containerWidth = 0;
|
95
|
-
|
96
|
-
|
103
|
+
if (this.$element.find('.actions').length) {
|
104
|
+
containerWidth = this.$element.width() - this.$element.find('.actions').first().outerWidth();
|
97
105
|
} else {
|
98
106
|
containerWidth = this.$element.width();
|
99
107
|
}
|
@@ -101,16 +109,16 @@
|
|
101
109
|
|
102
110
|
// set the position so that the last step is on the right
|
103
111
|
var newMargin = totalWidth - containerWidth;
|
104
|
-
|
112
|
+
this.$element.find('.steps').first().attr('style','margin-left: -' + newMargin + 'px');
|
105
113
|
|
106
114
|
// set the position so that the active step is in a good
|
107
115
|
// position if it has been moved out of view
|
108
|
-
|
109
|
-
|
116
|
+
if (this.$element.find('li.active').first().position().left < 200) {
|
117
|
+
newMargin += this.$element.find('li.active').first().position().left - 200;
|
110
118
|
if (newMargin < 1) {
|
111
|
-
|
119
|
+
this.$element.find('.steps').first().attr('style','margin-left: 0');
|
112
120
|
} else {
|
113
|
-
|
121
|
+
this.$element.find('.steps').first().attr('style','margin-left: -' + newMargin + 'px');
|
114
122
|
}
|
115
123
|
}
|
116
124
|
}
|
@@ -119,20 +127,31 @@
|
|
119
127
|
},
|
120
128
|
|
121
129
|
stepclicked: function (e) {
|
122
|
-
var li
|
130
|
+
var li = $(e.currentTarget);
|
131
|
+
var index = this.$element.find('.steps li').index(li);
|
132
|
+
var canMovePrev = true;
|
123
133
|
|
124
|
-
|
134
|
+
if( this.options.disablePreviousStep ) {
|
135
|
+
if( index < this.currentStep ) {
|
136
|
+
canMovePrev = false;
|
137
|
+
}
|
138
|
+
}
|
125
139
|
|
126
|
-
|
127
|
-
|
128
|
-
|
140
|
+
if( canMovePrev ) {
|
141
|
+
var evt = $.Event('stepclick');
|
142
|
+
this.$element.trigger(evt, {step: index + 1});
|
143
|
+
if (evt.isDefaultPrevented()) return;
|
129
144
|
|
130
|
-
|
131
|
-
|
145
|
+
this.currentStep = (index + 1);
|
146
|
+
this.setState();
|
147
|
+
}
|
132
148
|
},
|
133
149
|
|
134
150
|
previous: function () {
|
135
151
|
var canMovePrev = (this.currentStep > 1);
|
152
|
+
if( this.options.disablePreviousStep ) {
|
153
|
+
canMovePrev = false;
|
154
|
+
}
|
136
155
|
if (canMovePrev) {
|
137
156
|
var e = $.Event('change');
|
138
157
|
this.$element.trigger(e, {step: this.currentStep, direction: 'previous'});
|
@@ -186,19 +205,20 @@
|
|
186
205
|
|
187
206
|
// WIZARD PLUGIN DEFINITION
|
188
207
|
|
189
|
-
$.fn.wizard = function (option
|
208
|
+
$.fn.wizard = function (option) {
|
209
|
+
var args = Array.prototype.slice.call( arguments, 1 );
|
190
210
|
var methodReturn;
|
191
211
|
|
192
212
|
var $set = this.each(function () {
|
193
|
-
var $this
|
194
|
-
var data
|
213
|
+
var $this = $( this );
|
214
|
+
var data = $this.data( 'wizard' );
|
195
215
|
var options = typeof option === 'object' && option;
|
196
216
|
|
197
|
-
if
|
198
|
-
if
|
217
|
+
if( !data ) $this.data('wizard', (data = new Wizard( this, options ) ) );
|
218
|
+
if( typeof option === 'string' ) methodReturn = data[ option ].apply( data, args );
|
199
219
|
});
|
200
220
|
|
201
|
-
return (methodReturn === undefined) ? $set : methodReturn;
|
221
|
+
return ( methodReturn === undefined ) ? $set : methodReturn;
|
202
222
|
};
|
203
223
|
|
204
224
|
$.fn.wizard.defaults = {
|
@@ -207,15 +227,19 @@
|
|
207
227
|
|
208
228
|
$.fn.wizard.Constructor = Wizard;
|
209
229
|
|
230
|
+
$.fn.wizard.noConflict = function () {
|
231
|
+
$.fn.wizard = old;
|
232
|
+
return this;
|
233
|
+
};
|
234
|
+
|
210
235
|
|
211
236
|
// WIZARD DATA-API
|
212
237
|
|
213
238
|
$(function () {
|
214
|
-
$('body').on('
|
239
|
+
$('body').on('mouseover.wizard.data-api', '.wizard', function () {
|
215
240
|
var $this = $(this);
|
216
241
|
if ($this.data('wizard')) return;
|
217
242
|
$this.wizard($this.data());
|
218
243
|
});
|
219
244
|
});
|
220
|
-
|
221
245
|
}(window.jQuery);
|
@@ -1,10 +1,20 @@
|
|
1
1
|
.radio-custom {
|
2
2
|
input[type=radio] {
|
3
|
-
|
4
|
-
|
5
|
-
|
3
|
+
/* IE cannot fire events if display none or visibility hidden */
|
4
|
+
position: relative;
|
5
|
+
left: -99999px;
|
6
6
|
}
|
7
7
|
|
8
|
+
&.highlight {
|
9
|
+
padding: 4px 4px 4px 24px;
|
10
|
+
|
11
|
+
&.checked {
|
12
|
+
background: #e9e9e9;
|
13
|
+
-webkit-border-radius: @borderRadiusSmall;
|
14
|
+
border-radius: @borderRadiusSmall;
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
8
18
|
i {
|
9
19
|
background-image: image-url('fuelux/form.png');
|
10
20
|
background-position: 0 -15px;
|
@@ -14,6 +14,24 @@
|
|
14
14
|
padding: 0;
|
15
15
|
margin: 0;
|
16
16
|
width: 4000px;
|
17
|
+
|
18
|
+
&.previous-disabled {
|
19
|
+
li {
|
20
|
+
&.complete {
|
21
|
+
cursor: default;
|
22
|
+
|
23
|
+
&:hover {
|
24
|
+
background: #f3f4f5;
|
25
|
+
color: @successText;
|
26
|
+
cursor: default;
|
27
|
+
|
28
|
+
.chevron:before {
|
29
|
+
border-left-color: #f3f4f5;
|
30
|
+
}
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
17
35
|
|
18
36
|
li {
|
19
37
|
float: left;
|
@@ -35,7 +53,7 @@
|
|
35
53
|
position: absolute;
|
36
54
|
right: -14px;
|
37
55
|
top: 0;
|
38
|
-
|
56
|
+
z-index: 1;
|
39
57
|
}
|
40
58
|
|
41
59
|
.chevron:before {
|
@@ -92,7 +110,7 @@
|
|
92
110
|
line-height: 46px;
|
93
111
|
float: right;
|
94
112
|
padding-left: 15px;
|
95
|
-
padding-right: 15px;
|
113
|
+
padding-right: 15px;
|
96
114
|
vertical-align: middle;
|
97
115
|
background-color: #e5e5e5;
|
98
116
|
border-left: 1px solid @navbarBorder;
|