///
if (!Page_Validators)
var Page_Validators;
var PortalTools;
(function (PortalTools) {
/**
* Will allow user to set a field to toggle based off a specific value on another field within the form.
* @param fieldname - field to verify
* @param fieldvalue - value of field that needs to be present to show field-to-display.
* @param fieldtodisplay - the field you wish to conditionally show.
* @param closest - tr || td
* @param requireotherfield [Optional param] - bool to determine if the child field is required.
* @param changefunctionname [Optional param] - will be called when the provided field has changed.
* @param requirecallbackfunction [Optional param] - will be called when the form is submitted.
*/
function ToggleOptionSetOtherField(fieldname, fieldvalue, fieldtodisplay, closest, requireotherfield, changefunctionname, requirecallbackfunction) {
if (!exists(fieldname) || !exists(fieldtodisplay))
return;
if (!PortalTools._data)
PortalTools._data = [];
fieldname = validatefieldid(fieldname);
fieldtodisplay = validatefieldid(fieldtodisplay);
PortalTools._data.push(new CallbackData(fieldname, fieldvalue, fieldtodisplay, closest, false, requireotherfield));
if (!PortalTools.defaultotherback)
PortalTools.defaultotherback = GetToggleOptionSetDefaultFunction();
//does value match provided optionsetvalue
var display = ($(fieldname).val() !== null && $(fieldname).val() === fieldvalue);
PortalTools.addOnChangeEvents(fieldname, changefunctionname ? changefunctionname : PortalTools.defaultotherback);
PortalTools.ToggleField(display, fieldtodisplay, closest, display && requireotherfield, requirecallbackfunction);
}
PortalTools.ToggleOptionSetOtherField = ToggleOptionSetOtherField;
/**
*
* */
function GetToggleOptionSetDefaultFunction() {
return function (control) {
var _this = this;
var dataset = PortalTools._data.filter(function (t) { return t.fieldname === "#" + _this.id; });
dataset[0].display = this.value !== null && this.value === dataset[0].fieldvalue;
ToggleField(dataset[0].display, dataset[0].fieldtodisplay, dataset[0].closest, dataset[0].display && dataset[0].require, null);
};
}
PortalTools.GetToggleOptionSetDefaultFunction = GetToggleOptionSetDefaultFunction;
/**
* Will allow user to set a field to toggle based off a specific value on another field within the form.
* @param fieldname - field to verify
* @param fieldvalue - value of field that needs to be present to show field-to-display.
* @param fieldtodisplay - the field you wish to conditionally show.
* @param closest - tr || td
* @param requireotherfield [Optional param] - bool to determine if the child field is required.
* @param changefunctionname [Optional param] - will be called when the provided field has changed.
* @param requirecallbackfunction [Optional param] - will be called when the form is submitted.
*/
function ToggleRadioOtherField(fieldname, fieldvalue, fieldtodisplay, closest, requireotherfield, changefunctionname, requirecallbackfunction) {
fieldname = validatefieldid(fieldname);
fieldtodisplay = validatefieldid(fieldtodisplay);
if (!validate(fieldname) || !validate(fieldtodisplay))
return;
//Create Onload in memory Obj if not found.
if (!PortalTools._data)
PortalTools._data = [];
PortalTools._data.push(new CallbackData(fieldname, fieldvalue, fieldtodisplay, closest, false, requireotherfield));
//default Call Back function. TODO: move to own func.
if (!PortalTools.defaultradioback)
PortalTools.defaultradioback = GetToggleRadioOtherDefaultFunction();
var display = (GetRadioFieldValue(fieldname) === fieldvalue);
PortalTools.addOnChangeEvents(fieldname, changefunctionname ? changefunctionname : PortalTools.defaultradioback);
PortalTools.ToggleField(display, fieldtodisplay, closest, display && requireotherfield, requirecallbackfunction);
}
PortalTools.ToggleRadioOtherField = ToggleRadioOtherField;
function GetToggleRadioOtherDefaultFunction() {
return function (control) {
var _this = this;
var dataset = PortalTools._data.filter(function (t) { return t.fieldname === "#" + _this.id; });
for (var d = 0; d <= dataset.length; d++) {
dataset[d].display = dataset[d].fieldvalue && control.target ? control.target.id.contains(dataset[d].fieldvalue) : false;
ToggleField(dataset[d].display, dataset[d].fieldtodisplay, dataset[d].closest, dataset[d].display && dataset[d].require, null);
}
};
}
PortalTools.GetToggleRadioOtherDefaultFunction = GetToggleRadioOtherDefaultFunction;
/**
* Will return the value of the radio button depending on the control selected.
* @param fieldname
*/
function GetRadioFieldValue(fieldname) {
fieldname = validatefieldid(fieldname);
if (!validate(fieldname))
return "0";
//@ts-ignore
if (exists(fieldname + "_0") && $(fieldname + "_0")[0].checked)
return "0";
//@ts-ignore
if (exists(fieldname + "_1") && $(fieldname + "_1")[0].checked)
return "1";
}
PortalTools.GetRadioFieldValue = GetRadioFieldValue;
function CreateCustomSaveButton(buttonname, custombuttonname, onchangefunction) {
if (!validate(buttonname) || !custombuttonname)
return;
buttonname = validatefieldid(buttonname);
custombuttonname = validatefieldid(custombuttonname);
if ($(custombuttonname).length > 0)
return; //stop button is already created
var clone = $(buttonname).clone();
clone[0].id = custombuttonname;
clone[0].onclick = onchangefunction ? onchangefunction : null;
clone[0]["name"] = '';
//push to DOM
$(buttonname).parent().append(clone);
//hide primary button
$(buttonname).hide();
return clone;
}
PortalTools.CreateCustomSaveButton = CreateCustomSaveButton;
/**
* Will display a field and set required if requested.
* @param display Boolean to show or hide field.
* @param fieldname Name of the field you wish to toggle with the # prefix
* @param closest Typically a tr or td, this is the closest tag that you wish to show and hide for toggling field.
* @param require - [Optional param] - that will also toggle the requirement of the field if provided.
*/
function ToggleField(display, fieldname, closest, require, callbackfunction) {
fieldname = validatefieldid(fieldname);
if (!exists(fieldname))
return;
if (display)
$(fieldname).closest(closest).show();
else
$(fieldname).closest(closest).hide();
ToggleRequire(fieldname, typeof require === 'undefined' ? null : require, callbackfunction);
}
PortalTools.ToggleField = ToggleField;
/**
* Will set requirement on a field provided and will not allow save until the field has a value.
* @param fieldname - string name of field to toggle.
* @param require - boolean to indicate true for require and false for remove-require.
* @param callbackfunction - [Optional param] - when the field being toggled has changed this function will run.
*/
function ToggleRequire(fieldname, require, callbackfunction) {
try {
fieldname = validatefieldid(fieldname);
if (!exists(fieldname) || typeof require === 'undefined')
return;
if (require !== true) {
$(fieldname).attr('aria-required', "false");
$(fieldname).parent().prev().removeClass("required");
RemoveValidatorRecord(fieldname);
}
else {
$(fieldname).attr('aria-required', "true");
$(fieldname).parent().prev().addClass("required");
CreateValidatorRecord(fieldname, callbackfunction);
}
}
catch (error) {
alert(error);
}
}
PortalTools.ToggleRequire = ToggleRequire;
/**
*
* @param fieldname - whatever
* @param callbackfunction [Optional] - any function you supply that will run when the change event is triggered.
*/
function CreateValidatorRecord(fieldname, callbackfunction) {
if (fieldname.charAt(0) !== "#")
fieldname = "#" + fieldname;
if (Page_Validators.filter(function (p) { return p.controltovalidate === fieldname; }).length > 0)
return;
if (!exists(fieldname) || typeof (Page_Validators) == 'undefined')
return;
var newValidator = document.createElement('span');
newValidator.style.display = "none";
newValidator.id = fieldname + "Validator";
newValidator.controltovalidate = fieldname;
newValidator.errormessage = " " + GetControlLabel(fieldname)[0].innerHTML + " is a required field.";
newValidator.evaluationfunction = !callbackfunction ? GetDefaultFunction() : callbackfunction;
Page_Validators.push(newValidator);
}
PortalTools.CreateValidatorRecord = CreateValidatorRecord;
function GetDefaultFunction() {
return function DefaultEmptyCheck(control) {
return $(control.controltovalidate).val() !== undefined
&& $(control.controltovalidate).val() !== null
&& $(control.controltovalidate).val().trim() !== "";
};
}
PortalTools.GetDefaultFunction = GetDefaultFunction;
function GetControlLabel(fieldname) {
if (!exists(fieldname))
return;
if ($(fieldname)[0].nodeName.toLowerCase() === "input")
return $(fieldname + "_label");
if ($(fieldname)[0].nodeName.toLowerCase() === "select")
return $(fieldname + "_label");
if ($(fieldname)[0].nodeName.toLowerCase() === "input")
return $(fieldname + "_label");
}
PortalTools.GetControlLabel = GetControlLabel;
function RemoveValidatorRecord(fieldname) {
if (fieldname.charAt(0) !== "#")
fieldname = "#" + fieldname;
if (!exists(fieldname) || typeof (Page_Validators) == 'undefined')
return;
Page_Validators = Page_Validators.filter(function (p) { return p.controltovalidate !== fieldname; });
}
PortalTools.RemoveValidatorRecord = RemoveValidatorRecord;
/**
* Will add the internal primary function to the change event for the provided field.
* @param fieldname
*/
function addOnChangeEvents(fieldname, onchangefunction) {
if (!exists(fieldname))
return;
$(fieldname).change(onchangefunction);
}
PortalTools.addOnChangeEvents = addOnChangeEvents;
/**
* Will Determine if the supplied string has a field and wil return a boolean if it exists.
* @param fieldname
*/
function validate(fieldname) {
fieldname = validatefieldid(fieldname);
return exists(fieldname);
}
PortalTools.validate = validate;
/**
* Determines if the jQuery control is present on the form. *Does not change field name value*
* @param fieldname
*/
function exists(fieldname) {
return $(fieldname).length > 0;
}
PortalTools.exists = exists;
/**
* Verifies the string name is in jQuery format, if not it is updated.
* @param name
*/
function validatefieldid(name) {
if (name.length > 0 && name.charAt && name.charAt(0) !== "#")
return "#" + name;
return name;
}
PortalTools.validatefieldid = validatefieldid;
/**
* Verifies the string name is in jQuery format, if not it is updated.
* @param name
*/
function removefieldid(name) {
if (name.length > 0 && name.charAt && name.charAt(0) === "#")
return name.slice(1);
return name;
}
PortalTools.removefieldid = removefieldid;
function toarray(value, isid) {
if (!value)
return [];
if (Array.isArray(value))
return value.map(function (v) { return v = isid ? validatefieldid(v) : v; });
if (typeof (value) === 'string')
return [isid ? validatefieldid(value) : value];
}
PortalTools.toarray = toarray;
/**
* Will verify each value supplied has an # at start and set it if missing.
* @param gridstovalidate
* @param buttonname
*/
function validatearrayitems(arraytovalidate, isid) {
var array = toarray(arraytovalidate, isid === true);
//Validate supplied controls
var hasValidItems = true;
array.forEach(function (fieldname, index) {
return validate(fieldname) && isid === true ?
array[index] = validatefieldid(fieldname) :
hasValidItems = false;
});
return hasValidItems;
}
PortalTools.validatearrayitems = validatearrayitems;
var FormatField;
(function (FormatField) {
function FormatMoney(value, addcommas, roundto, callbackfunction) {
value = validatefieldid(value);
if (exists(value) === false)
return;
reformatmoney(value, addcommas, roundto);
if (!PortalTools.FormatField._Formatter)
PortalTools.FormatField._Formatter = [];
var formatter = new Formatter(value, "", addcommas, roundto, false, false);
formatter.callback = GetFormatMoney();
PortalTools.FormatField._Formatter.push(formatter);
PortalTools.addOnChangeEvents(value, callbackfunction ? callbackfunction : formatter.callback);
}
FormatField.FormatMoney = FormatMoney;
function GetFormatMoney() {
return function formatmoney() {
var _this = this;
var formatrecord = PortalTools.FormatField._Formatter.filter(function (f) { return f.fieldname === PortalTools.validatefieldid(_this.id); });
formatrecord.forEach(function (record) { return reformatmoney(record.fieldname, record.addcommas, record.roundto); });
};
}
FormatField.GetFormatMoney = GetFormatMoney;
function reformatmoney(name, addcommas, roundto) {
var number = $(validatefieldid(name));
var numVal = number.val();
if (!numVal)
return;
//strip NaN
numVal = numVal.replace(/[^0-9.]/g, "");
//set to n or 2 places
numVal = parseFloat(numVal).toFixed(roundto ? roundto : 2);
if (addcommas)
numVal = numVal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
//push to control
number.val(numVal);
}
FormatField.reformatmoney = reformatmoney;
var Formatter = /** @class */ (function () {
function Formatter(fieldname, fieldvalue, addcommas, roundto, display, require) {
this.fieldname = fieldname;
this.fieldvalue = fieldvalue;
this.addcommas = addcommas;
this.roundto = roundto;
this.display = display;
this.require = require;
}
return Formatter;
}());
FormatField.Formatter = Formatter;
})(FormatField = PortalTools.FormatField || (PortalTools.FormatField = {}));
var GridValidator;
(function (GridValidator) {
/**
* Primary Function to add Grid Validation to any page. This logic creates a fake button to replace the supplied, it will validate the supplied grid has at least 1 record before clicking intended button.
* @param gridstovalidate - string array - ["#new_field", "#new_field1", "#new_field2"]
* @param buttonname - name of the save/submit button
* @param onclickfunction - callback function for when the newly created button is clicked
* @param errormessage [optional] - return message displayed to end user.
*/
function ValidateGridsHaveRecordsBeforeButtonClick(gridstovalidate, buttonname, onclickfunction, errormessages) {
if (!validate(buttonname))
return;
buttonname = validatefieldid(buttonname);
gridstovalidate = toarray(gridstovalidate, true);
errormessages = toarray(errormessages, false);
if (validatearrayitems(gridstovalidate, true) === false)
return;
if (gridstovalidate.length > 1 && errormessages.length !== gridstovalidate.length)
alert("DEV ALERT: The validation request does not have an error message per grid control being validated. Please ensure that every supplied grid as one error message.");
//Push to mem
if (SetMemory(gridstovalidate, buttonname, errormessages, null) === false)
return;
//Create New Button
if (!GridValidator._gridButton)
GridValidator._gridButton = CreateCustomSaveButton(buttonname, buttonname + "_gridvalidatortool", onclickfunction ? onclickfunction : GetNewButtonDefaultCallback());
}
GridValidator.ValidateGridsHaveRecordsBeforeButtonClick = ValidateGridsHaveRecordsBeforeButtonClick;
/**
* Will create a logic to on button click (supplied), validate the grid(s) match the supplied value(s) before that click event is run.
* @param gridtovalidate - single grid record to validate.
* @param buttonname - name of button to be bypassed.
* @param valuestocheck - value(s) in array or single, to verify presence of during save.
* @param onclickfunction [optional] - function to set for onclick verification.
* @param errormessage [optional] - return message displayed to end user.
*/
function ValidateGridHasValuesBeforeButtonClick(gridtovalidate, buttonname, valuestocheck, onclickfunction, errormessage) {
if (!validate(buttonname))
return;
buttonname = validatefieldid(buttonname);
valuestocheck = toarray(valuestocheck, false);
var gridstovalidate = toarray(gridtovalidate, true);
if (validatearrayitems(toarray(gridtovalidate, false), true) === false)
return;
var errormessages = toarray(errormessage, false);
//Push values to memory
if (SetMemory(gridstovalidate, buttonname, errormessages, valuestocheck) === false)
return;
//Create New Button
if (!GridValidator._gridButton)
GridValidator._gridButton = CreateCustomSaveButton(buttonname, buttonname + "_gridvalidatortool", onclickfunction ? onclickfunction : GetNewButtonDefaultCallback());
}
GridValidator.ValidateGridHasValuesBeforeButtonClick = ValidateGridHasValuesBeforeButtonClick;
function SetMemory(gridstovalidate, buttonname, errormessage, valuestocheck) {
try {
//create mem obj
if (!GridValidator._gridValidator) {
if (valuestocheck === null)
GridValidator._gridValidator = new GridValidator.ValidationData(new Validation(gridstovalidate, null, buttonname, errormessage), null);
else
GridValidator._gridValidator = new GridValidator.ValidationData(null, new Validation(gridstovalidate, valuestocheck, buttonname, errormessage));
}
else if (valuestocheck === null)
gridstovalidate.forEach(function (grid, index) { return GridValidator._gridValidator.ValdateGridRecords.records.push(new ValidationRecord(grid, null, false, errormessage[index] ? errormessage[index] : null)); });
else
valuestocheck.forEach(function (value, index) { return GridValidator._gridValidator.ValdateGridsValues.records.push(new ValidationRecord(gridstovalidate[0], value, false, errormessage[index] ? errormessage[index] : null)); });
//if button name not set
GridValidator._gridValidator.ValdateGridRecords.buttonName = buttonname;
GridValidator._gridValidator.ValdateGridsValues.buttonName = buttonname;
return true;
}
catch (_a) {
return false;
}
}
GridValidator.SetMemory = SetMemory;
function GetNewButtonDefaultCallback() {
return function () {
ValidateAllGrids();
if (GridValidator._gridValidator.ValdateGridsValues.records.filter(function (r) { return r.isvalid === false; }).length < 1 &&
GridValidator._gridValidator.ValdateGridRecords.records.filter(function (r) { return r.display === false; }).length < 1)
$(validatefieldid(GridValidator._gridValidator.ValdateGridRecords.buttonName)).trigger("click");
else {
AlertGridValidation(true, true);
}
};
}
GridValidator.GetNewButtonDefaultCallback = GetNewButtonDefaultCallback;
function ValidateAllGrids() {
ValidateRecords();
ValidateValues();
}
GridValidator.ValidateAllGrids = ValidateAllGrids;
function ValidateRecords() {
if (GridValidator._gridValidator.ValdateGridRecords.records !== null && GridValidator._gridValidator.ValdateGridRecords.records.length > 0)
GridValidator._gridValidator.ValdateGridRecords.records.forEach(function (record) { return MustHaveOneRecord(record); });
}
GridValidator.ValidateRecords = ValidateRecords;
function ValidateValues() {
if (GridValidator._gridValidator.ValdateGridsValues.records !== null && GridValidator._gridValidator.ValdateGridsValues.records.length > 0)
GridValidator._gridValidator.ValdateGridsValues.records.forEach(function (r) { return ValidateControlValue(r); });
}
GridValidator.ValidateValues = ValidateValues;
function AlertGridValidation(alertrecords, alertvalues) {
var message = "";
if (alertrecords)
GridValidator._gridValidator.ValdateGridRecords.records.filter(function (r) { return r.display === false; }).forEach(function (record) {
return message += message.indexOf(record.errorMessage) < 0 && record.errorMessage !== null ? record.errorMessage + "\n" : "";
});
if (alertvalues)
GridValidator._gridValidator.ValdateGridsValues.records.filter(function (r) { return r.isvalid === false; }).forEach(function (record) {
return message += message.indexOf(record.errorMessage) < 0 && record.errorMessage !== null ? record.errorMessage + "\n" : "";
});
alert(message);
}
GridValidator.AlertGridValidation = AlertGridValidation;
/**
*
* @param record
*/
function ValidateControlValue(record) {
record.isvalid = true;
if (!exists(record.controlToValidate)) {
//not on form
record.isvalid = false;
return;
}
var body = $(validatefieldid(record.controlToValidate) + ' > div > div.view-grid > table > tbody');
if (body.length < 1 || body[0].children.length < 1) {
//View Grid missing
record.isvalid = true;
return;
}
var rows = body[0].children;
var itemstocheck = GridValidator._gridValidator.ValdateGridsValues.records.filter(function (r) { return r.controlToValidate === record.controlToValidate; });
for (var r = 0; r < rows.length; r++) {
var message = rows[r].innerText.split("\t");
if (itemstocheck.every(function (record) { return message.includes(record.valueToValidate); }))
record.isvalid = false;
}
}
GridValidator.ValidateControlValue = ValidateControlValue;
function MustHaveOneRecord(item) {
if (!exists(item.controlToValidate))
return true; //not on form
var fieldname = validatefieldid(item.controlToValidate);
var children = $(fieldname)[0].firstElementChild.children;
if (typeof (children) === 'undefined' || children === null)
item.display = false;
for (var i = 0; i < children.length; i++) {
//@ts-ignore
if (typeof (children[i].className) === 'undefined' && typeof (children[i].style) === 'undefined')
item.display = false;
//@ts-ignore
if (children[i].className === 'view-empty message' && children[i].style.hasOwnProperty("display") && children[i].style.display !== "block")
item.display = true;
}
}
GridValidator.MustHaveOneRecord = MustHaveOneRecord;
/**
* Principle Validation Memory Object
* */
var ValidationData = /** @class */ (function () {
function ValidationData(validategridrecords, validategridsvalues) {
this.ValdateGridRecords = validategridrecords ? validategridrecords : new Validation();
this.ValdateGridsValues = validategridsvalues ? validategridsvalues : new Validation();
}
return ValidationData;
}());
GridValidator.ValidationData = ValidationData;
/**
* Generic for each valtion record type
* */
var Validation = /** @class */ (function () {
function Validation(gridstovalidate, valuestovalidate, buttonname, errorMessage) {
this.buttonName = buttonname ? buttonname : "";
this.records = [];
if (valuestovalidate === null)
gridstovalidate.forEach(function (grid, index) { return GridValidator._gridValidator.ValdateGridRecords.records.push(new ValidationRecord(grid, null, false, errorMessage[index] ? errorMessage[index] : null)); });
else if (gridstovalidate && valuestovalidate)
valuestovalidate.forEach(function (value, index) { return GridValidator._gridValidator.ValdateGridsValues.records.push(new ValidationRecord(gridstovalidate[0], value, false, errorMessage[index] ? errorMessage[index] : null)); });
}
return Validation;
}());
GridValidator.Validation = Validation;
var ValidationRecord = /** @class */ (function () {
function ValidationRecord(control, value, display, errormessage) {
this.display = false;
this.isvalid = false;
this.controlToValidate = control ? control : "";
this.valueToValidate = value ? value : "";
this.errorMessage = errormessage;
}
;
return ValidationRecord;
}());
GridValidator.ValidationRecord = ValidationRecord;
GridValidator._gridValidator = new ValidationData();
})(GridValidator = PortalTools.GridValidator || (PortalTools.GridValidator = {}));
var FilterFieldLookUp;
(function (FilterFieldLookUp) {
/**
* Primary Function that will set a lookup field to the provided values.
* @param id traditional Guid value.
* @param name Name of the record being set, this is what the user will see in the lookup field.
* @param entityname schema of the record, NOT always the name of the field.
* @param fieldname this is the name of the field on the form.
*/
function SetLookupField(id, name, entityname, fieldname) {
if (fieldname.charAt(0) !== "#")
fieldname = "#" + fieldname;
var field = $(fieldname);
if (!field)
return;
$(fieldname + "_name").attr("value", name);
$(fieldname).attr("value", id);
$(fieldname + "_entityname").attr("value", entityname);
}
FilterFieldLookUp.SetLookupField = SetLookupField;
})(FilterFieldLookUp = PortalTools.FilterFieldLookUp || (PortalTools.FilterFieldLookUp = {})); //filter field
var PhoneValidator;
(function (PhoneValidator) {
PhoneValidator.regexInvalidPattern = new RegExp(/\D/g);
/**
* Primary function to filter a field with phone validation.
* @param fieldname
*/
function FilterPhoneNumber(fieldname) {
if (fieldname.charAt(0) !== "#")
fieldname = "#" + fieldname;
if (!exists(fieldname))
return;
//set on change
PortalTools.addOnChangeEvents(fieldname, PortalTools.PhoneValidator.GetfilterPhoneNumber());
ProcessOnLoad(fieldname);
}
PhoneValidator.FilterPhoneNumber = FilterPhoneNumber;
function ProcessOnLoad(fieldname) {
var phoneNumberField = $(fieldname);
if (phoneNumberField.val() === null || phoneNumberField.val() === "")
return;
//basic validation
if (testPhoneNumber(fieldname))
stripNonValidCharacters(phoneNumberField);
//format
formatPhoneNumber(phoneNumberField);
}
PhoneValidator.ProcessOnLoad = ProcessOnLoad;
function GetfilterPhoneNumber() {
return function () {
if (!this || this.value === null || this.value === "" || !$("#" + this.id))
return;
if (testPhoneNumber(this.value))
stripNonValidCharacters($("#" + this.id));
formatPhoneNumber($("#" + this.id));
};
}
PhoneValidator.GetfilterPhoneNumber = GetfilterPhoneNumber;
/**
* returns a boolean that indicates if the value of the field who's name is provided passes the internal validation.
* @param fieldname
*/
function testPhoneNumber(fieldvalue) {
return PhoneValidator.regexInvalidPattern.test(fieldvalue);
}
PhoneValidator.testPhoneNumber = testPhoneNumber;
function stripNonValidCharacters(field) {
if (PhoneValidator.regexInvalidPattern && field.val())
field.val(field.val().replace(PhoneValidator.regexInvalidPattern, ''));
}
PhoneValidator.stripNonValidCharacters = stripNonValidCharacters;
function formatPhoneNumber(phoneNumberField) {
var string = phoneNumberField.val();
phoneNumberField.val('(' + string.substring(0, 3) + ') ' + string.substring(3, 6) + '-' + string.substring(6, 10));
}
PhoneValidator.formatPhoneNumber = formatPhoneNumber;
})(PhoneValidator = PortalTools.PhoneValidator || (PortalTools.PhoneValidator = {})); //phone
/**
*
* @param fieldname
*/
var Form_Type = /** @class */ (function () {
function Form_Type() {
this.FORM_TYPE_CREATE = 1;
this.FORM_TYPE_UPDATE = 2;
this.FORM_TYPE_READ_ONLY = 3;
this.FORM_TYPE_DISABLED = 4;
this.FORM_TYPE_QUICK_CREATE = 5;
this.FORM_TYPE_BULK_EDIT = 6;
}
return Form_Type;
}());
var CallbackData = /** @class */ (function () {
function CallbackData(fieldname, fieldvalue, fieldtodisplay, closest, display, require) {
this.fieldname = fieldname;
this.fieldtodisplay = fieldtodisplay;
this.fieldvalue = fieldvalue;
this.closest = closest;
this.display = display;
this.require = require;
}
return CallbackData;
}());
})(PortalTools || (PortalTools = {})); //PortalTools
//# sourceMappingURL=PortalTools.js.map