<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">var ajaxcallback = {
	init:function(){
		$(document).ajaxComplete(function( event,request, settings ) {
		  if (typeof(request.responseJSON) != 'object') return;
		  ajaxcallback.process(request.responseJSON);
		});
	},
	process:function(data){
		if (typeof(data) != 'object') return;
		for(var i in data){
			switch(i){
				case 'html' : {}
				case 'content' : {
					this.processContent(data[i]);
					break;
				}
				case 'class' : {
					this.processClass(data[i],'add');
					break;
				}
				case 'delclass' : {
					this.processClass(data[i]);
					break;
				}
				case 'attr':{
					this.processAttr(data[i]);
					break;
				}
				case 'function':{
					this.processFunction(data[i]);
					break;
				}
				case 'location' : {
					location.href = data[i];
					return;
				}
				case 'alert' : {
					alert(data[i]);
					break;;
				}
			}
		}
	},
	processFunction:function(c){
		if (!c) return;
		if (typeof(c) == 'object') {
			for(i in c){
				this.runFunction(i,c[i]);
			}
			return;
		}
		this.runFunction(c);
		return;
	},
	runFunction:function(c,dat){
		if (eval("typeof " + c + " == 'function'")) {
				//dat = dat.replace("/\"/g",'\\"');
				eval(c+'("'+dat+'")');
		}
	},
	processClass:function(c,type){
		if (typeof(c) != 'object') return;
		for(var i  in c){
			$(i).removeClass(c[i]);
			if (type == 'add') $(i).addClass(c[i]);
		}
	},	
	processContent:function(c){
		if (typeof(c) != 'object') return;
		for(var i  in c){
			$(i).html(c[i]);
		}
	},
	processAttr:function(c){
		if (typeof(c) != 'object') return;
		for(var i in c){
			obj = i;
			attrs = c[i];
			if (typeof(attrs) != 'object') continue;
			for(var j in attrs){
				$(obj).prop(j,attrs[j]);
			}
		}
	}
};
$(document).ready(function(){
	ajaxcallback.init();
});</pre></body></html>