home / fishbowl_archive / biscript

biscript: 4

This data as json

id active data dateLastModified description name note typeId fbVersion fbName published
4 _binary  const UTIL = { "convertHex": function(hex,opacity) { hex = hex.replace('#',''); r = parseInt(hex.substring(0,2), 16); g = parseInt(hex.substring(2,4), 16); b = parseInt(hex.substring(4,6), 16); const result = 'rgba('+r+','+g+','+b+','+opacity/100+')'; return result; }, "dollarify": function (amount, decimalCount = 2, decimal = ".", thousands = ",") { decimalCount = Math.abs(decimalCount); decimalCount = isNaN(decimalCount) ? 2 : decimalCount; const negativeSign = amount < 0 ? "-" : ""; let i = parseInt(amount = Math.abs(Number(amount) || 0).toFixed(decimalCount)).toString(); let j = (i.length > 3) ? i.length % 3 : 0; return '$' + negativeSign + (j ? i.substr(0, j) + thousands : '') + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thousands) + (decimalCount ? decimal + Math.abs(amount - i).toFixed(decimalCount).slice(2) : ""); }, "uomify" : function(qty, uom){ return qty.toString() + " " + uom; }, "convertDate": function(date, isFromDate) { const parsed = new Date(Date.parse(date)); if (isFromDate) { return moment(parsed.setDate(parsed.getDate() + 1)).format('MM/DD/YYYY'); } return moment(parsed.setDate(parsed.getDate())).format('MM/DD/YYYY'); }, "makeTable": function (query, headersArray, dontShow = []) { var tr = "<tr style=\"border-bottom:2pt solid black;\" >"; // SET COLUMN HEADERS for (var h = 0; h < headersArray.length; h++) { tr += "<td>" + headersArray[h] + "</td>"; } //ADD ROW DATA FROM QUERY for (var i = 0; i < query.length; i++) { // ADD NEW ROW tr += "<tr>"; // PRINT COLUMN DATA FOR THIS ROW for (var j in query[i]) { // CHECK TO SEE IF IT IS IN DONT SHOW LIST if (dontShow.includes(j)) { continue; } else { if (query[i].hasOwnProperty(j)) { tr += "<td>" + query[i][j] + "</td>"; } } } tr += "</tr>" } return tr; }, "unflatten" : function(data) { "use strict"; if (Object(data) !== data || Array.isArray(data)) { return data; } var result = {}, cur, prop, idx, last, temp; for(var p in data) { cur = result, prop = "", last = 0; do { idx = p.indexOf(".", last); temp = p.substring(last, idx !== -1 ? idx : undefined); cur = cur[prop] || (cur[prop] = (!isNaN(parseInt(temp)) ? [] : {})); prop = temp; last = idx + 1; } while(idx >= 0); cur[prop] = data[p]; } return result[""]; }, "flatten" : function(data) { var result = {}; function recurse (cur, prop) { if (Object(cur) !== cur) { result[prop] = cur; } else if (Array.isArray(cur)) { for(var i=0, l=cur.length; i<l; i++) { recurse(cur[i], prop ? prop+"."+i : ""+i); } if (l == 0) { result[prop] = []; } } else { var isEmpty = true; for (var p in cur) { isEmpty = false; recurse(cur[p], prop ? prop+"."+p : p); } if (isEmpty) { result[prop] = {}; } } } }, "objContains" : function (obj, key) { var x; for (x in obj) { if (obj.hasOwnProperty(x) && x === key) { return true; } } return false; } } 2023-01-05 17:28:06.927000 Helper JavaScript functions for manipulating data Util   20 3 fb-util 0
Powered by Datasette · Queries took 1.472ms