1
|
$(function() {
|
2
|
// product edit
|
3
|
altair_product_edit.init();
|
4
|
});
|
5
|
|
6
|
altair_product_edit = {
|
7
|
init: function() {
|
8
|
// product edit form
|
9
|
altair_product_edit.edit_form();
|
10
|
// product tags
|
11
|
altair_product_edit.product_tags();
|
12
|
},
|
13
|
edit_form: function() {
|
14
|
// form variables
|
15
|
var $product_edit_form = $('#product_edit_form'),
|
16
|
$product_edit_submit_btn = $('#product_edit_submit'),
|
17
|
product_name = $('#product_edit_name'),
|
18
|
product_name_control= $('#product_edit_name_control'),
|
19
|
product_sn = $('#product_edit_sn'),
|
20
|
product_sn_control = $('#product_edit_sn_control'),
|
21
|
product_manufacturer_control = $('#product_edit_manufacturer_control'),
|
22
|
product_color_control = $('#product_edit_color_control'),
|
23
|
product_memory_control = $('#product_edit_memory_control');
|
24
|
|
25
|
|
26
|
// change full product name
|
27
|
var product_name_change = function() {
|
28
|
return product_name.text(product_manufacturer_control.val() + ' ' + product_name_control.val() + ', ' + product_memory_control.val() + ', ' + product_color_control.val())
|
29
|
};
|
30
|
|
31
|
product_name_control
|
32
|
// change product name on keyup
|
33
|
.on('keyup',function() {
|
34
|
product_name_change();
|
35
|
});
|
36
|
|
37
|
product_manufacturer_control
|
38
|
// change product name on keyup
|
39
|
.on('keyup',function() {
|
40
|
product_name_change();
|
41
|
});
|
42
|
|
43
|
product_sn_control
|
44
|
// change product name on product serial number keyup
|
45
|
.on('keyup',function() {
|
46
|
product_sn.text(product_sn_control.val());
|
47
|
});
|
48
|
|
49
|
product_color_control
|
50
|
// change product name on product color change
|
51
|
.on('change',function() {
|
52
|
product_name_change();
|
53
|
});
|
54
|
|
55
|
product_memory_control
|
56
|
// change product name on product memory change
|
57
|
.on('change',function() {
|
58
|
product_name_change();
|
59
|
});
|
60
|
|
61
|
// submit form
|
62
|
$product_edit_submit_btn.on('click',function(e) {
|
63
|
e.preventDefault();
|
64
|
var form_serialized = JSON.stringify( $product_edit_form.serializeObject(), null, 2 );
|
65
|
UIkit.modal.alert('<p>Product data:</p><pre>' + form_serialized + '</pre>');
|
66
|
})
|
67
|
},
|
68
|
product_tags: function() {
|
69
|
|
70
|
$('#product_edit_tags_control').selectize({
|
71
|
plugins: {
|
72
|
'remove_button': {
|
73
|
label: ''
|
74
|
}
|
75
|
},
|
76
|
placeholder: 'Select product tag(s)',
|
77
|
options: [
|
78
|
{id: 1, title: 'LTE', value: 'lte'},
|
79
|
{id: 2, title: 'Quad HD', value: 'quad_hd'},
|
80
|
{id: 3, title: 'Android™ 5.0', value: 'android_5'},
|
81
|
{id: 4, title: '64GB', value: '64gb'}
|
82
|
],
|
83
|
render: {
|
84
|
option: function(data, escape) {
|
85
|
return '<div class="option">' +
|
86
|
'<span>' + escape(data.title) + '</span>' +
|
87
|
'</div>';
|
88
|
},
|
89
|
item: function(data, escape) {
|
90
|
return '<div class="item">' + escape(data.title) + '</div>';
|
91
|
}
|
92
|
},
|
93
|
maxItems: null,
|
94
|
valueField: 'value',
|
95
|
labelField: 'title',
|
96
|
searchField: 'title',
|
97
|
create: true,
|
98
|
onDropdownOpen: function($dropdown) {
|
99
|
$dropdown
|
100
|
.hide()
|
101
|
.velocity('slideDown', {
|
102
|
begin: function() {
|
103
|
$dropdown.css({'margin-top':'0'})
|
104
|
},
|
105
|
duration: 200,
|
106
|
easing: easing_swiftOut
|
107
|
})
|
108
|
},
|
109
|
onDropdownClose: function($dropdown) {
|
110
|
$dropdown
|
111
|
.show()
|
112
|
.velocity('slideUp', {
|
113
|
complete: function() {
|
114
|
$dropdown.css({'margin-top':''})
|
115
|
},
|
116
|
duration: 200,
|
117
|
easing: easing_swiftOut
|
118
|
})
|
119
|
}
|
120
|
});
|
121
|
}
|
122
|
};
|