Files
dbois/public/js/lib/helpers.js
T
2019-08-30 13:41:06 +02:00

102 lines
2.9 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( 'inside' );
// 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, "." );
},
isNumeric: function ( n ) {
return !isNaN( parseFloat( n ) ) && isFinite( n );
}
}