UNPKG

utilsxo

Version:

A small, portable library full of utilities, functions, and neat tricks for your project/application

29 lines (28 loc) 1.08 kB
/** * Created by Curtis Gervais on 4/16/2017. * License: MIT * * @desc Security tools for Utils X module */ module.exports = { basic: function(stringOfData) { return String(stringOfData).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;'); }, strip_tags: function(input, allowed) { allowed = (((allowed || '') + '').toLowerCase().match(/<[a-z][a-z0-9]*>/g) || []).join('') var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>/gi var commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi return input.replace(commentsAndPhpTags, '').replace(tags, function ($0, $1) { return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '' }) }, full: function(input) { var tmpInput = input; tmpInput = this.basic(tmpInput); tmpInput = this.strip_tags(tmpInput); return tmpInput; }, query: function(input) { return String(input).replace(/"/g, '').replace(/'/, '').replace(/&/g, ''); } };