Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
- Base: wintercms/winter branch 1.2 (full framework) - Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS - Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication - Partials: hero (offline-first), features, modes (offline/nube toggle), screenshots, pricing (3 planes), comparison, FAQ, CTA - Plugin VivesPOS.Site with ContactForm - Dockerfile: PHP 8.2 Apache, port 80, healthcheck - Added winter/wn-pages, blog, sitemap, seo plugins - Active theme set to vivespos
68 lines
2.3 KiB
JavaScript
68 lines
2.3 KiB
JavaScript
/*
|
|
* String length table validator.
|
|
*/
|
|
+function ($) { "use strict";
|
|
|
|
// NAMESPACE CHECK
|
|
// ============================
|
|
|
|
if ($.wn.table === undefined)
|
|
throw new Error("The $.wn.table namespace is not defined. Make sure that the table.js script is loaded.");
|
|
|
|
if ($.wn.table.validator === undefined)
|
|
throw new Error("The $.wn.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");
|
|
|
|
// CLASS DEFINITION
|
|
// ============================
|
|
|
|
var Base = $.wn.table.validator.base,
|
|
BaseProto = Base.prototype
|
|
|
|
var Length = function(options) {
|
|
Base.call(this, options)
|
|
};
|
|
|
|
Length.prototype = Object.create(BaseProto)
|
|
Length.prototype.constructor = Length
|
|
|
|
/*
|
|
* Validates a value and returns the error message. If there
|
|
* are no errors, returns undefined.
|
|
* The rowData parameter is an object containing all values in the
|
|
* target row.
|
|
*/
|
|
Length.prototype.validateValue = function(value, rowData) {
|
|
value = this.trim(value)
|
|
|
|
if (value.length == 0)
|
|
return
|
|
|
|
if (this.options.min !== undefined || this.options.max !== undefined) {
|
|
if (this.options.min !== undefined) {
|
|
if (this.options.min.value === undefined)
|
|
throw new Error('The min.value parameter is not defined in the Length table validator configuration')
|
|
|
|
if (value.length < this.options.min.value) {
|
|
return this.options.min.message !== undefined ?
|
|
this.options.min.message :
|
|
"The string should not be shorter than " + this.options.min.value
|
|
}
|
|
}
|
|
|
|
if (this.options.max !== undefined) {
|
|
if (this.options.max.value === undefined)
|
|
throw new Error('The max.value parameter is not defined in the Length table validator configuration')
|
|
|
|
if (value.length > this.options.max.value) {
|
|
return this.options.max.message !== undefined ?
|
|
this.options.max.message :
|
|
"The string should not be longer than " + this.options.max.value
|
|
}
|
|
}
|
|
}
|
|
|
|
return
|
|
}
|
|
|
|
$.wn.table.validator.length = Length
|
|
}(window.jQuery); |