My favorites | Sign in
Project Home Downloads Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
PageName  
Updated Apr 20, 2011 by vir...@gmail.com

AppBuilder = new function(){

return {
namespace: function(){
var a=arguments,o=null, i, j, d, rt; for (i=0; i<a.length; ++i) {
d=ai.split("."); rt = d0; eval('if (typeof ' + rt + ' == "undefined"){' + rt + ' = {};} o = ' + rt + ';'); for (j=1; j<d.length; ++j) {
o[dj]=o[dj] || {}; o=o[dj];
}
}
}
}
};

AppBuilder.namespace("AppBuilder.xml");

AppBuilder.xml.XmlUtils = new function(){

var NODE_ELEMENT = 1; var NODE_ATTRIBUTE = 2; var NODE_TEXT = 3; var NODE_CDDATA = 4;
var map = {}; function add(obj, key, value){
if(objkey == null){
objkey = value;
}else{
var ev = objkey; if(ev.constructor.name == 'Array'){
ev.push(value);
}else{
ev = value;
} objkey = ev;
}
}; function createObj(name){
var o = mapname; if(o == null) return {}; if(typeof(o) == 'function'){
return new o();
}else{
return o;
}
}; function parse(node, obj){
if(!node.hasChildNodes()){
return;
} for(var i=0 ; i < node.childNodes.length; i++){
if(node.childNodesi.nodeType == NODE_ELEMENT){
if(node.childNodesi.childNodes.length == 1){
add(obj,node.childNodesi.tagName, node.childNodesi.childNodes0.nodeValue);
}else if(node.childNodesi.childNodes.length > 1){
var el = createObj(node.childNodesi.tagName);
add(obj, node.childNodesi.tagName, el); parse(node.childNodesi, el);
}else{
add(obj, node.childNodesi.tagName, '');
}
}
}
}; var getNode = function(member, obj, xcludes){
if(objmember == null){
return ''; }
if(typeof(objmember) == 'function') return ''; if( typeof(objmember) == 'object' && objmember.constructor && objmember.constructor.name){
var localName = objmember.constructor.name; return getXml(objmember, member, objmember.constructor.name, xcludes);
}else{
var localName = (obj.constructor.name == 'Array')?'value':member.replace('',''); return '<' + localName + '>' + objmember + '</' + localName + '>';
}
};
var getXml = function(obj, element, elementType, xcludes){
xcludes = xcludes || ;
var type = (elementType== null)?'':' type="' + elementType + '"'; var xml = '<' + element + type + '>'; for(member in obj){
if(xcludes.indexOf(member) == -1)
xml += getNode(member,obj, xcludes);
} xml += '</' + element + '>'; return xml;
};
return {
bind : function(xml, obj){
obj = obj || {}; var t = xml.documentElement || xml; parse(t, obj); return obj;
}, getXml : function(obj,element,elementType, excludeProperties){
var xml = getXml(obj,element,elementType, excludeProperties); return xml;
}, setTypeMapping : function(m){
map = m;
}
}
}; AppBuilder.Ajax = new function(){
var getXmlHttp = function() {
var xmlhttp=false; try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e2){
xmlhttp = false;
}
} if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
try {
xmlhttp = new XMLHttpRequest();
} catch (e) {
xmlhttp=false;
}
}

if (!xmlhttp && window.createRequest) {
try {
xmlhttp = window.createRequest();
} catch (e) {
xmlhttp=false;
}
} return xmlhttp;
};

return {
post : function(uri, data){
var xmlhttp = getXmlHttp(); xmlhttp.open("POST", uri,false); xmlhttp.setRequestHeader("Man", "POST " + uri + " HTTP/1.1") xmlhttp.setRequestHeader("MessageType", "CALL"); xmlhttp.setRequestHeader("Content-Type", "text/xml"); xmlhttp.send(data); if (xmlhttp.status == 200) {
return {
text : xmlhttp.responseText, xml : xmlhttp.responseXML };
}else{
return {error: xmlhttp.responseText};
}
}, get : function(uri){
var xmlhttp = getXmlHttp(); xmlhttp.open("GET", uri,false); xmlhttp.setRequestHeader("Man", "GET " + uri + " HTTP/1.1") xmlhttp.setRequestHeader("MessageType", "CALL"); xmlhttp.setRequestHeader("Content-Type", "text/xml"); xmlhttp.send(null); if (xmlhttp.status == 200) {
return {
text : xmlhttp.responseText, xml : xmlhttp.responseXML };
}else{
return {error: xmlhttp.responseText};
}
}, getAsync : function(uri, data, callbackFn){
alert('Not Yet!');
}
}
};

Powered by Google Project Hosting