This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,86 @@
var KretaForm = (function () {
var kretaform = function () {};
kretaform.validate = function (form) {
validate(form);
};
function validate(form) {
form.validate({
errorPlacement: function (error, element) {
element.attr('title', error.text());
element
.prev(
'label[for="' + $(element).attr('name').replace('_', '.') + '"]'
)
.addClass('labelError');
element
.closest('div')
.prev()
.find(
'label[for="' + $(element).attr('name').replace('_', '.') + '"]'
)
.addClass('labelError');
var container = form.find('.kreta-validation-summary');
list = container.find('ul');
if (error && error.length > 0) {
$.each(error, function (i, ival) {
$('<li/>').html(ival).appendTo(list);
});
container
.addClass('validation-summary-errors')
.removeClass('validation-summary-valid');
}
},
success: function (errorLabel) {
$(
'label[for="' + $(errorLabel).attr('for').replace('_', '.') + '"]'
).removeClass('labelError'); //Nested Model Hack
$('label[for=' + $(errorLabel).attr('for') + ']').removeClass(
'labelError'
); //DropDown Hack
errorLabel.parent('li').css({ display: 'none' });
},
showErrors: function (errorMap, errorList) {
var errorCount = this.numberOfInvalids();
this.defaultShowErrors();
$.each(errorList, function (i, ival) {
var elementId = $(ival.element).attr('id');
if (typeof elementId !== 'undefined') {
$('label[for=' + elementId + ']').addClass('labelError'); //DropDown Hack
$('label[for="' + elementId.replace('_', '.') + '"]').addClass(
'labelError'
); //Nested Model Hack
var elem = '#' + elementId + '-error';
$(elem).parent('li').css({ display: 'list-item' });
}
});
var container = form.find('.kreta-validation-summary');
var labelErrors = container.find('.labelError');
var textContents = container.find('ul');
$.each(labelErrors, function (i, element) {
if ($(element).text() === '') {
$(element).parent('li').css({ display: 'none' });
}
});
if (
errorCount > 0 ||
(typeof labelErrors !== 'undefined' && labelErrors.length > 0)
) {
container.css({ display: 'block' });
}
if (typeof textContents !== 'undefined' && textContents.text() === '') {
container.css({ display: 'none' });
}
},
ignore: "input[type='file'].ignore-validation"
});
}
return kretaform;
})();