zet-lib 3.1.4 → 3.1.5
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.
- package/lib/zRoute.js +54 -2
- package/package.json +1 -1
package/lib/zRoute.js
CHANGED
|
@@ -4167,6 +4167,8 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = "", data = {}) => {
|
|
|
4167
4167
|
let hasLocation = false;
|
|
4168
4168
|
let hasDragdrop = false;
|
|
4169
4169
|
let hasDropbox = false;
|
|
4170
|
+
let hasDropdownMulti = false;
|
|
4171
|
+
let hasSelectize = false;
|
|
4170
4172
|
let lexicals = [];
|
|
4171
4173
|
let mapKey = "";
|
|
4172
4174
|
let hasAttributes = [];
|
|
@@ -4182,6 +4184,8 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = "", data = {}) => {
|
|
|
4182
4184
|
hasDatePicker = true;
|
|
4183
4185
|
} else if (widgets[key].name == "number") {
|
|
4184
4186
|
hasNumber = true;
|
|
4187
|
+
} else if (widgets[key].name == "dropdown_multi") {
|
|
4188
|
+
hasDropdownMulti = true;
|
|
4185
4189
|
} else if (widgets[key].name == "money") {
|
|
4186
4190
|
hasNumber = true;
|
|
4187
4191
|
moneys.push(key);
|
|
@@ -4261,6 +4265,7 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = "", data = {}) => {
|
|
|
4261
4265
|
//add search on select
|
|
4262
4266
|
if (widgets[key].isSearch) {
|
|
4263
4267
|
selectize.push(key);
|
|
4268
|
+
hasSelectize = true;
|
|
4264
4269
|
}
|
|
4265
4270
|
}
|
|
4266
4271
|
}
|
|
@@ -4363,12 +4368,15 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = "", data = {}) => {
|
|
|
4363
4368
|
headObj.datetimepicker = datetimepickerObj.head;
|
|
4364
4369
|
endObj.datetimepicker = datetimepickerObj.end;
|
|
4365
4370
|
}
|
|
4371
|
+
if(hasSelectize || hasDropdownMulti) {
|
|
4372
|
+
let selectizeObject = moduleLib.selectize(req, res);
|
|
4373
|
+
headObj.selectize = selectizeObject.head;
|
|
4374
|
+
endObj.selectize = selectizeObject.end;
|
|
4375
|
+
}
|
|
4366
4376
|
if (selectize.length > 0) {
|
|
4367
4377
|
selectize.map((item) => {
|
|
4368
4378
|
let selectizeObj = moduleLib.selectize(req, res, `#${item}`);
|
|
4369
4379
|
scriptForm += selectizeObj.script;
|
|
4370
|
-
headObj.selectize = selectizeObj.head;
|
|
4371
|
-
endObj.selectize = selectizeObj.end;
|
|
4372
4380
|
});
|
|
4373
4381
|
}
|
|
4374
4382
|
if (hasIde) {
|
|
@@ -4643,6 +4651,50 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = "", data = {}) => {
|
|
|
4643
4651
|
break;
|
|
4644
4652
|
|
|
4645
4653
|
case "dropdown_multi":
|
|
4654
|
+
scriptForm += `$(document).ready(function () {
|
|
4655
|
+
var $${keys}Select = $('#${keys}');
|
|
4656
|
+
if ($${keys}Select.length && typeof $.fn.selectize !== 'undefined') {
|
|
4657
|
+
if (!$${keys}Select[0].selectize) {
|
|
4658
|
+
var isMultiple = $${keys}Select.hasClass('dropdown-multi');
|
|
4659
|
+
if (isMultiple && !$${keys}Select.attr('multiple')) {
|
|
4660
|
+
$${keys}Select.attr('multiple', 'multiple');
|
|
4661
|
+
}
|
|
4662
|
+
var selectizeOptions = {
|
|
4663
|
+
plugins: isMultiple ? ['remove_button'] : [],
|
|
4664
|
+
delimiter: ',',
|
|
4665
|
+
persist: false,
|
|
4666
|
+
create: false,
|
|
4667
|
+
search: true,
|
|
4668
|
+
openOnFocus: true,
|
|
4669
|
+
closeAfterSelect: true,
|
|
4670
|
+
maxItems: 1,
|
|
4671
|
+
placeholder: 'Please select ${keys}',
|
|
4672
|
+
onType: function (str) {
|
|
4673
|
+
var results = this.search(str);
|
|
4674
|
+
if (results.length === 1) {
|
|
4675
|
+
var self = this;
|
|
4676
|
+
setTimeout(function () {
|
|
4677
|
+
self.setValue(results[0].value);
|
|
4678
|
+
self.close();
|
|
4679
|
+
}, 100);
|
|
4680
|
+
}
|
|
4681
|
+
}
|
|
4682
|
+
};
|
|
4683
|
+
$${keys}Select.selectize(selectizeOptions);
|
|
4684
|
+
}
|
|
4685
|
+
}
|
|
4686
|
+
$(document).on('click', '#dropdownadd${keys}', function () {
|
|
4687
|
+
var $select = $('#${keys}');
|
|
4688
|
+
if ($select.length) {
|
|
4689
|
+
var selectize = $select[0].selectize;
|
|
4690
|
+
if (selectize) {
|
|
4691
|
+
selectize.clear();
|
|
4692
|
+
} else {
|
|
4693
|
+
$select.val('').trigger('change');
|
|
4694
|
+
}
|
|
4695
|
+
}
|
|
4696
|
+
});
|
|
4697
|
+
});`
|
|
4646
4698
|
scriptForm += ` $("#dropdownadd${keys}").on("click", function () {
|
|
4647
4699
|
var val = $("#${keys}").val();
|
|
4648
4700
|
if(val == ""){
|