Get Data Beautifier
Show the GET data in a beatufier format, highly CSS configurable.
by SpacePineapple
HTML
<div id="safecontent">
...
JavaScript
var content = '?';
content += document.getElementById("safecontent").innerText;
/* Safe document.write for jsFiddle */
document.write = function(text){
document.body.innerHTML = text;
};
var getDataBeautifier = function( content ) {
var parameters = content.split("&"),
parameter = null,
name = null,
value = null,
style = null,
result = "",
specialStyle = "font-family:monospace;color:purple;font-weight:lighter;";
stringStyle = "font-family:monospace;color:red;font-weight:lighter;",
intStyle = "font-family:monospace;color:green;font-weight:lighter;",
templateForParam = "<li><span style='font-family:verdana;color:black;font-weight:lighter;'>@name</span> : <span style='@style'>@value</span></li>",
templateForResult = "<ul style='list-style-type:none;'>@params</ul>";
//Delete initial "?" if any
if( parameters[0][0] == "?" ) {
parameters[0] = parameters[0].substr(1);
}
//for each parameter
for( var i = 0; i < parameters.length; i++ ) {
parameter = parameters[i].split("=");
name = parameter[0];
value = parameter[1];
style = intStyle;
//we considerate this case as a string
if( isNaN( parseFloat( value ) ) ) {
if( value === "undefined" || value === "null" || value === "NaN" ) {
style = specialStyle;
}
else {
style = stringStyle;
value = "\"" + decodeURIFix(value) + "\"";
}
}
result += templateForParam.replace( "@name", name ).replace( "@value", value ).replace( "@style",style);
}
result = templateForResult.replace("@params",result);
document.write(result);
};
function decodeURIFix(value){
value = decodeURI(value);
//value = value.replace(new RegExp("%26", "g"), "&");
//value = value.replace(new RegExp("%3AD", "g"), ":");
//value = value.replace(new RegExp("%2F", "g"), "/");
//value = value.replace(new...