1 // Library for Dragonblocks
4 elem.style.left = elem.parentNode.clientWidth / 2 - parseInt(elem.clientWidth) / 2 + "px";
6 static centerVertical(elem){
7 let parent = elem.parentNode;
8 if (parent == document.body)
9 parent = document.documentElement;
10 elem.style.top = parent.clientHeight / 2 - parseInt(elem.clientHeight) / 2 + "px";
12 static random(min, max){
13 return Math.floor(min + Math.random() * (max - min + 1));
15 static humanFormat(str){
16 str = str.replace("_", " ");
17 str = str[0].toUpperCase() + str.slice(1, str.length);
20 static copy(dest, src){
22 if(src[prop] instanceof Array){
24 this.copy(dest[prop], src[prop]);
26 else if(src[prop] instanceof Function){
27 dest[prop] = src[prop];
29 else if(src[prop] instanceof Object){
31 this.copy(dest[prop], src[prop]);
34 dest[prop] = src[prop];
38 static copySimple(dest, src){
40 dest[prop] = src[prop];
43 static htmlEntities(str){
44 return str.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/\n/g, "<br>").replace(/\t/g, "  ").replace(/ /g, " ");
46 static removeTmp(src){
48 if(src instanceof Array)
57 static replaceRecursive(src, search, replace){
59 if(src instanceof Array)
61 dblib.copySimple(obj, src);
63 if(obj[prop] === search)
65 else if(obj[prop] instanceof Object)
66 obj[prop] = this.replaceRecursive(obj[prop], search, replace);