Skip to content
Snippets Groups Projects
Commit bbb5e1ca authored by Sandro Weber's avatar Sandro Weber
Browse files

Merged in NRRPLT-7897-xml2json (pull request #284)

[NRRPLT-7897] deleted xml2json

* [NRRPLT-7897] deleted xml2json

* Merge remote-tracking branch 'origin/development' into NRRPLT-7897-xml2json

* [NRRPLT-7897] fix merge

* Merged development into NRRPLT-7897-xml2json

* Merge remote-tracking branch 'origin/development' into NRRPLT-7897-xml2json

* Merged development into NRRPLT-7897-xml2json

* [NRRPLT-7897] delete some merge artifact

* Merge branch 'NRRPLT-7897-xml2json' of bitbucket.org:hbpneurorobotics/ExDFrontend into NRRPLT-7897-xml2json

* Merged development into NRRPLT-7897-xml2json

* Merged development into NRRPLT-7897-xml2json

Approved-by: Manos Angelidis
Approved-by: Antoine Detailleur
parent 84a58bbe
No related branches found
No related tags found
No related merge requests found
...@@ -136,7 +136,6 @@ ...@@ -136,7 +136,6 @@
<!-- bower:js --> <!-- bower:js -->
<script src="bower_components/angular-bbp-config/angular-bbp-config.js"></script> <script src="bower_components/angular-bbp-config/angular-bbp-config.js"></script>
<script src="bower_components/angular.panels/dist/angular.panels.min.js"></script> <script src="bower_components/angular.panels/dist/angular.panels.min.js"></script>
<script src="bower_components/xml2json/xml2json.js"></script>
<script src="bower_components/gz3d-hbp/gz3d/build/gz3d.js"></script> <script src="bower_components/gz3d-hbp/gz3d/build/gz3d.js"></script>
<script src="bower_components/gz3d-hbp/gz3d/client/js/include/ColladaLoader.js"></script> <script src="bower_components/gz3d-hbp/gz3d/client/js/include/ColladaLoader.js"></script>
<script src="bower_components/gz3d-hbp/gz3d/client/js/include/lookat-controls.js"></script> <script src="bower_components/gz3d-hbp/gz3d/client/js/include/lookat-controls.js"></script>
......
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
"angular.panels": "*", "angular.panels": "*",
"hbp-collaboratory-theme": "0.1.0", "hbp-collaboratory-theme": "0.1.0",
"gz3d-hbp": "latest", "gz3d-hbp": "latest",
"xml2json": "1.1.1",
"abdmob/x2js": "1.2.0", "abdmob/x2js": "1.2.0",
"brainvisualizer": "git+ssh://bbpcode.epfl.ch/neurorobotics/brainvisualizer" "brainvisualizer": "git+ssh://bbpcode.epfl.ch/neurorobotics/brainvisualizer"
}, },
......
...@@ -10,11 +10,8 @@ ...@@ -10,11 +10,8 @@
"main": [ "main": [
"gz3d/build/gz3d.js" "gz3d/build/gz3d.js"
], ],
"dependencies": {
"xml2json": "latest"
},
"ignoredDependencies": [ "ignoredDependencies": [
"roslibjs", "eventemitter2", "lodash" "roslibjs", "eventemitter2", "lodash", "xml2json"
], ],
"keywords": [ "keywords": [
"gzweb", "gzweb",
......
{
"name": "xml2json",
"main": "xml2json.js",
"version": "1.1.1",
"homepage": "https://github.com/ron-liu/xml2json",
"authors": [
"Thomas Frank"
],
"description": "xml to json parser",
"keywords": [
"xml2json",
"xml",
"json"
],
"license": "GPLV2",
"ignore": [
"**/.*",
"node_modules",
"bower_components",
"test",
"tests"
],
"_release": "1.1.1",
"_resolution": {
"type": "version",
"tag": "1.1.1",
"commit": "116f763d05b00b54703ecece27bfdbe82ece450e"
},
"_source": "https://github.com/ron-liu/xml2json.git",
"_target": "1.1.1",
"_originalSource": "xml2json"
}
\ No newline at end of file
XML TO JSON PARSER
==================
# I am not the AUTHOR
This package is made by Thomas Frank, see [this page](http://www.thomasfrank.se/xml_to_json.html) for more details.
I put it here just because I want download it from bower.
# License
Based on the js file itself, it applies GNU GPL V2.
{
"name": "xml2json",
"main": "xml2json.js",
"version": "1.1.0",
"homepage": "https://github.com/ron-liu/xml2json",
"authors": [
"Thomas Frank"
],
"description": "xml to json parser",
"keywords": [
"xml2json",
"xml",
"json"
],
"license": "GPLV2",
"ignore": [
"**/.*",
"node_modules",
"bower_components",
"test",
"tests"
]
}
/*
xml2json v 1.1
copyright 2005-2007 Thomas Frank
This program is free software under the terms of the
GNU General Public License version 2 as published by the Free
Software Foundation. It is distributed without any warranty.
*/
xml2json={
parser:function(xmlcode,ignoretags,debug){
if(!ignoretags){ignoretags=""};
xmlcode=xmlcode.replace(/\s*\/>/g,'/>');
xmlcode=xmlcode.replace(/<\?[^>]*>/g,"").replace(/<\![^>]*>/g,"");
if (!ignoretags.sort){ignoretags=ignoretags.split(",")};
var x=this.no_fast_endings(xmlcode);
x=this.attris_to_tags(x);
x=escape(x);
x=x.split("%3C").join("<").split("%3E").join(">").split("%3D").join("=").split("%22").join("\"");
for (var i=0;i<ignoretags.length;i++){
x=x.replace(new RegExp("<"+ignoretags[i]+">","g"),"*$**"+ignoretags[i]+"**$*");
x=x.replace(new RegExp("</"+ignoretags[i]+">","g"),"*$***"+ignoretags[i]+"**$*")
};
x='<JSONTAGWRAPPER>'+x+'</JSONTAGWRAPPER>';
this.xmlobject={};
var y=this.xml_to_object(x).jsontagwrapper;
if(debug){y=this.show_json_structure(y,debug)};
return y
},
xml_to_object:function(xmlcode){
var x=xmlcode.replace(/<\//g,"§");
x=x.split("<");
var y=[];
var level=0;
var opentags=[];
for (var i=1;i<x.length;i++){
var tagname=x[i].split(">")[0];
opentags.push(tagname);
level++
y.push(level+"<"+x[i].split("§")[0]);
while(x[i].indexOf("§"+opentags[opentags.length-1]+">")>=0){level--;opentags.pop()}
};
var oldniva=-1;
var objname="this.xmlobject";
for (var i=0;i<y.length;i++){
var preeval="";
var niva=y[i].split("<")[0];
var tagnamn=y[i].split("<")[1].split(">")[0];
tagnamn=tagnamn.toLowerCase();
var rest=y[i].split(">")[1];
if(niva<=oldniva){
var tabort=oldniva-niva+1;
for (var j=0;j<tabort;j++){objname=objname.substring(0,objname.lastIndexOf("."))}
};
objname+="."+tagnamn;
var pobject=objname.substring(0,objname.lastIndexOf("."));
if (eval("typeof "+pobject) != "object"){preeval+=pobject+"={value:"+pobject+"};\n"};
var objlast=objname.substring(objname.lastIndexOf(".")+1);
var already=false;
for (k in eval(pobject)){if(k==objlast){already=true}};
var onlywhites=true;
for(var s=0;s<rest.length;s+=3){
if(rest.charAt(s)!="%"){onlywhites=false}
};
if (rest!="" && !onlywhites){
if(rest/1!=rest){
rest="'"+rest.replace(/\'/g,"\\'")+"'";
rest=rest.replace(/\*\$\*\*\*/g,"</");
rest=rest.replace(/\*\$\*\*/g,"<");
rest=rest.replace(/\*\*\$\*/g,">")
}
}
else {rest="{}"};
if(rest.charAt(0)=="'"){rest='unescape('+rest+')'};
if (already && !eval(objname+".sort")){preeval+=objname+"=["+objname+"];\n"};
var before="=";after="";
if (already){before=".push(";after=")"};
var toeval=preeval+objname+before+rest+after;
eval(toeval);
if(eval(objname+".sort")){objname+="["+eval(objname+".length-1")+"]"};
oldniva=niva
};
return this.xmlobject
},
show_json_structure:function(obj,debug,l){
var x='';
if (obj.sort){x+="[\n"} else {x+="{\n"};
for (var i in obj){
if (!obj.sort){x+=i+":"};
if (typeof obj[i] == "object"){
x+=this.show_json_structure(obj[i],false,1)
}
else {
if(typeof obj[i]=="function"){
var v=obj[i]+"";
//v=v.replace(/\t/g,"");
x+=v
}
else if(typeof obj[i]!="string"){x+=obj[i]+",\n"}
else {x+="'"+obj[i].replace(/\'/g,"\\'").replace(/\n/g,"\\n").replace(/\t/g,"\\t").replace(/\r/g,"\\r")+"',\n"}
}
};
if (obj.sort){x+="],\n"} else {x+="},\n"};
if (!l){
x=x.substring(0,x.lastIndexOf(","));
x=x.replace(new RegExp(",\n}","g"),"\n}");
x=x.replace(new RegExp(",\n]","g"),"\n]");
var y=x.split("\n");x="";
var lvl=0;
for (var i=0;i<y.length;i++){
if(y[i].indexOf("}")>=0 || y[i].indexOf("]")>=0){lvl--};
tabs="";for(var j=0;j<lvl;j++){tabs+="\t"};
x+=tabs+y[i]+"\n";
if(y[i].indexOf("{")>=0 || y[i].indexOf("[")>=0){lvl++}
};
if(debug=="html"){
x=x.replace(/</g,"&lt;").replace(/>/g,"&gt;");
x=x.replace(/\n/g,"<BR>").replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;")
};
if (debug=="compact"){x=x.replace(/\n/g,"").replace(/\t/g,"")}
};
return x
},
no_fast_endings:function(x){
x=x.split("/>");
for (var i=1;i<x.length;i++){
var t=x[i-1].substring(x[i-1].lastIndexOf("<")+1).split(" ")[0];
x[i]="></"+t+">"+x[i]
} ;
x=x.join("");
return x
},
attris_to_tags: function(x){
var d=' ="\''.split("");
x=x.split(">");
for (var i=0;i<x.length;i++){
var temp=x[i].split("<");
for (var r=0;r<4;r++){temp[0]=temp[0].replace(new RegExp(d[r],"g"),"_jsonconvtemp"+r+"_")};
if(temp[1]){
temp[1]=temp[1].replace(/'/g,'"');
temp[1]=temp[1].split('"');
for (var j=1;j<temp[1].length;j+=2){
for (var r=0;r<4;r++){temp[1][j]=temp[1][j].replace(new RegExp(d[r],"g"),"_jsonconvtemp"+r+"_")}
};
temp[1]=temp[1].join('"')
};
x[i]=temp.join("<")
};
x=x.join(">");
x=x.replace(/ ([^=]*)=([^ |>]*)/g,"><$1>$2</$1");
x=x.replace(/>"/g,">").replace(/"</g,"<");
for (var r=0;r<4;r++){x=x.replace(new RegExp("_jsonconvtemp"+r+"_","g"),d[r])} ;
return x
}
};
if(!Array.prototype.push){
Array.prototype.push=function(x){
this[this.length]=x;
return true
}
};
if (!Array.prototype.pop){
Array.prototype.pop=function(){
var response = this[this.length-1];
this.length--;
return response
}
};
...@@ -71,7 +71,6 @@ module.exports = function(config) { ...@@ -71,7 +71,6 @@ module.exports = function(config) {
'bower_components/angular.panels/dist/angular.panels.min.js', 'bower_components/angular.panels/dist/angular.panels.min.js',
'node_modules/es5-shim/es5-shim.js', 'node_modules/es5-shim/es5-shim.js',
'node_modules/eventemitter2/lib/eventemitter2.js', 'node_modules/eventemitter2/lib/eventemitter2.js',
'bower_components/xml2json/xml2json.js',
'node_modules/roslib/src/RosLibBrowser.js', 'node_modules/roslib/src/RosLibBrowser.js',
'node_modules/lodash/lodash.js', 'node_modules/lodash/lodash.js',
'bower_components/gz3d-hbp/gz3d/build/gz3d.js', 'bower_components/gz3d-hbp/gz3d/build/gz3d.js',
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment