95 lines
2.8 KiB
JavaScript
95 lines
2.8 KiB
JavaScript
/**
|
|
* Created by Pensare Software.
|
|
* User: Theo Weijmer
|
|
* Date: 25/12/2017
|
|
* Time: 19:01
|
|
*/
|
|
|
|
dbo.helpers = {
|
|
validateEmail: function ( email ) {
|
|
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
|
|
return re.test( email.toLowerCase() );
|
|
},
|
|
|
|
thousandSeparator: function ( x ) {
|
|
return x.toString().replace( /\B(?=(\d{3})+(?!\d))/g, "." );
|
|
},
|
|
|
|
validateNumber: function ( input, point = true ) {
|
|
var validNumbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', ','];
|
|
var pointTaken = false;
|
|
var pointedString = '';
|
|
|
|
// convert to comma or point number
|
|
if ( point ) {
|
|
input = input.toString().replace( ',', '' );
|
|
} else {
|
|
input = input.toString().replace( '.', '' );
|
|
}
|
|
|
|
//remain only last comma or point and remove all non numbers
|
|
var reverse = dbo.helpers.reverseString( input ).toString();
|
|
for ( let character of reverse ) {
|
|
if ( character == ',' || character == '.' ) {
|
|
if ( pointTaken == false ) pointedString += character
|
|
pointTaken = true;
|
|
} else {
|
|
if ( dbo.helpers.inArray( character, validNumbers ) ) {
|
|
pointedString += character;
|
|
}
|
|
}
|
|
}
|
|
|
|
pointedString = dbo.helpers.reverseString( pointedString );
|
|
|
|
return pointedString;
|
|
},
|
|
|
|
inArray: function ( needle, hayStack ) {
|
|
var valid = false;
|
|
|
|
$.each( hayStack, function ( i, p ) {
|
|
if ( p == needle ) valid = true;
|
|
} );
|
|
|
|
return valid;
|
|
},
|
|
|
|
findArrayElement: function ( toFind, element, value, array ) {
|
|
// console.log( toFind ); // het element in de array
|
|
// console.log( element );
|
|
// console.log( value );
|
|
// console.log( array );
|
|
if ( !Array.isArray( array ) ) return null;
|
|
|
|
var foundValue = null
|
|
$.each( array, function ( i, p ) {
|
|
if ( p[toFind] == value ) foundValue = p[element];
|
|
} );
|
|
// console.log( foundValue );
|
|
return foundValue;
|
|
},
|
|
|
|
reverseString: function ( string = '' ) {
|
|
string = string.toString();
|
|
if ( string.length == 0 ) return '';
|
|
return string.split( '' ).reverse().join( '' );
|
|
},
|
|
|
|
mysql2date: function ( date ) {
|
|
if ( !date ) return null;
|
|
if ( date.length != 10 ) return null;
|
|
|
|
var dateParts = date.split( "-" );
|
|
|
|
var newDate = dateParts[2] + '-' + dateParts[1] + '-' + dateParts[0];
|
|
|
|
return newDate;
|
|
},
|
|
|
|
numberWithPoints: function ( myNumber ) {
|
|
if ( !myNumber ) return 0;
|
|
|
|
return myNumber.toString().replace( /\B(?=(\d{3})+(?!\d))/g, "." );
|
|
}
|
|
} |