Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
export const findFieldset = fieldIndex => $(`fieldset.new-field[data-id=${fieldIndex}]`);// effet d'affichageexport const showField = $field => $field.hide().show(200);export const hideNRemove = ($element, $elemenToRemove = $element) => $element.hide(200, () => {$elemenToRemove.remove();});// JSON.stringify : Gestion des apostrophes dans les valeurs :export const replacer = (key, value) => {if ('fieldValues' === key && 'object' === typeof value) {for (let i in value) {if (typeof value[i] === 'string') {// value[i] = value[i].replace( /\u0027/g, "''" );// La solution ci-dessus convient pour stockage dans la base mais pas pour la lecture dans saisie// du coup astuce moisie:value[i] = value[i].replace(/\u0027/g, "@apos@").replace(/\u0022/g, '@quot@')}}} else if (typeof value === 'string') {// value = value.replace( /\u0027/g, "''" );// La solution ci-dessus convient pour stockage dans la base mais pas pour la lecture dans saisie// du coup astuce moisie:value = value.replace(/\u0027/g, "@apos@").replace(/\u0022/g, '@quot@')}return value;}/*** Permet à la fois de vérifier qu'une valeur ou objet existe et n'est pas vide* et de comparer à une autre valeur :* Vérifie qu'une variable ou objet n'est pas : vide, null, undefined, NaN* Si comparer est défini on le compare à valeur en fonction de sensComparaison* Un booléen est une variable valide : on retourne true* @param { string || number || object || undefined } valeur* @param { boolean } sensComparaison : true = rechercher, false = refuser* @param { string || number || object || undefined || boolean } comparer :valeur à comparer* @returns {boolean}*/export const valeurOk = (valeur,sensComparaison = true,comparer = undefined) => {let retour;if ('boolean' !== typeof valeur) {switch(typeof valeur) {case 'string' :retour = ('' !== valeur);break;case 'number' :retour = (NaN !== valeur);break;case 'object' :retour = (null !== valeur && undefined !== valeur && !$.isEmptyObject(valeur));if (retour && undefined !== valeur.length) {retour = (retour && 0 < valeur.length);}break;case 'undefined' :default :retour = false;}if (retour && comparer !== undefined) {const resultComparaison = (comparer === valeur);retour = (sensComparaison) ? resultComparaison : !resultComparaison;}return retour;} else {// Un booléen est une valeur valablereturn true;}};export const potDeMiel = () => {const $submit = $('#signup_submit');if (!valeurOk($('#basic-widget-form #email').val())) {$submit.prop('disabled', false);}$submit.off().on('click dblclick mousedown submit focus keydown keypress keyup touchstart touchend', () => {if (valeurOk($('#basic-widget-form #email').val())) {return false;}});$('#basic-widget-form #email').css({position: 'absolute', left: '-2000px'}).on('input blur change', function(event) {event.preventDefault();if (valeurOk($(this).val())) {$('form').each(function() {$(this)[0].reset();});$submit.prop('disabled', true);}});};