HTML-Dojo

 view release on metacpan or  search on metacpan

lib/HTML/Dojo/src.pm  view on Meta::CPAN

				content = request.data;
			}

			try{
				xhr.send(content);
			}catch(e){
				if(typeof xhr.abort == "function"){
					xhr.abort();
					xhrDone({status: 404, statusText: "xip_server.html error: " + e});
				}
			}
		}
	}

	function unpackMessage(encodedMessage){
		var parts = encodedMessage.split(":");
		var command = parts[1];
		encodedMessage = parts[2] || "";

		var config = null;
		if(command == "init"){
			var configParts = encodedMessage.split("&");
			config = {};
			for(var i = 0; i < configParts.length; i++){
				var nameValue = configParts[i].split("=");
				config[decodeURIComponent(nameValue[0])] = decodeURIComponent(nameValue[1]);
			}
		}
		return {command: command, message: encodedMessage, config: config};
	}

	function onServerLoad(){
		xipServerInit();

		//Decode the init params
		var config = unpackMessage(window.location.href.split("#")[1]).config;

		xipStateId = config.id;
		xipClientUrl = config.client;
		
		//Make sure we don't have a javascript: url, just for good measure.
		if(xipClientUrl.split(":")[0].match(/javascript/i)){
			throw "Invalid client URL";
		}
		if(!xipStateId.match(/^XhrIframeProxy[0-9]+$/)){
			throw "Invalid state ID";
		}

		xipUseFrameRecursion = config["fr"];

		setInterval(pollHash, 10);
		
		if(xipUseFrameRecursion == "true"){
			var serverUrl = window.location.href.split("#")[0];
			document.getElementById("iframeHolder").innerHTML = '<iframe name="'
				+ xipStateId + '_clientEndPoint'
				+ '" src="javascript:false">'
				+ '</iframe>';
			var iframeNode = document.getElementsByTagName("iframe")[0];
			iframeNode.src = makeClientUrl("init", 'id=' + xipStateId + '&server='
				+ encodeURIComponent(serverUrl) + '&fr=endpoint');
		}else{
			setClientUrl("loaded");
		}
	}

	if(typeof(window.addEventListener) == "undefined"){
		window.attachEvent("onload", onServerLoad);
	}else{
		window.addEventListener('load', onServerLoad, false);
	}
	// -->
	</script>
</head>
<body>
	<h4>The Dojo Toolkit -- xip_server.html</h4>

	<p>This file is used for Dojo's XMLHttpRequest Iframe Proxy. This is the the file
	that should go on the server that will actually be doing the XHR request.</p>
	<div id="iframeHolder"></div>
</body>
</html>

__CPAN_FILE__ src/io/cometd.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/community/licensing.shtml
*/



dojo.hostenv.packageLoaded({depends:[["require", "dojo.io.common"], ["provide", "dojo.io.cometd"], ["require", "dojo.AdapterRegistry"], ["require", "dojo.json"], ["require", "dojo.io.BrowserIO"], ["require", "dojo.io.IframeIO"], ["require", "dojo.io....
	dojo.require("dojo.io.common");
	dojo.provide("dojo.io.cometd");
	dojo.require("dojo.AdapterRegistry");
	dojo.require("dojo.json");
	dojo.require("dojo.io.BrowserIO");
	dojo.require("dojo.io.IframeIO");
	dojo.require("dojo.io.ScriptSrcIO");
	dojo.require("dojo.io.cookie");
	dojo.require("dojo.event.*");
	dojo.require("dojo.lang.common");
	dojo.require("dojo.lang.func");
	cometd = new function () {
		this.initialized = false;
		this.connected = false;
		this.connectionTypes = new dojo.AdapterRegistry(true);
		this.version = 0.1;
		this.minimumVersion = 0.1;
		this.clientId = null;
		this._isXD = false;
		this.handshakeReturn = null;
		this.currentTransport = null;
		this.url = null;
		this.lastMessage = null;
		this.globalTopicChannels = {};

lib/HTML/Dojo/src.pm  view on Meta::CPAN

	}, _setResponseHeaders:function (allHeaders) {
		if (allHeaders) {
			this._allResponseHeaders = allHeaders;
			allHeaders = allHeaders.replace(/\r/g, "");
			var nvPairs = allHeaders.split("\n");
			for (var i = 0; i < nvPairs.length; i++) {
				if (nvPairs[i]) {
					var nameValue = nvPairs[i].split(": ");
					this._responseHeaders[nameValue[0]] = nameValue[1];
				}
			}
		}
	}});
}});


__CPAN_FILE__ src/io/common.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/community/licensing.shtml
*/



dojo.provide("dojo.io.common");
dojo.require("dojo.string");
dojo.require("dojo.lang.extras");
dojo.io.transports = [];
dojo.io.hdlrFuncNames = ["load", "error", "timeout"];
dojo.io.Request = function (url, mimetype, transport, changeUrl) {
	if ((arguments.length == 1) && (arguments[0].constructor == Object)) {
		this.fromKwArgs(arguments[0]);
	} else {
		this.url = url;
		if (mimetype) {
			this.mimetype = mimetype;
		}
		if (transport) {
			this.transport = transport;
		}
		if (arguments.length >= 4) {
			this.changeUrl = changeUrl;
		}
	}
};
dojo.lang.extend(dojo.io.Request, {url:"", mimetype:"text/plain", method:"GET", content:undefined, transport:undefined, changeUrl:undefined, formNode:undefined, sync:false, bindSuccess:false, useCache:false, preventCache:false, jsonFilter:function (v...
	if ((this.mimetype == "text/json-comment-filtered") || (this.mimetype == "application/json-comment-filtered")) {
		var cStartIdx = value.indexOf("/*");
		var cEndIdx = value.lastIndexOf("*/");
		if ((cStartIdx == -1) || (cEndIdx == -1)) {
			dojo.debug("your JSON wasn't comment filtered!");
			return "";
		}
		return value.substring(cStartIdx + 2, cEndIdx);
	}
	dojo.debug("please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints");
	return value;
}, load:function (type, data, transportImplementation, kwArgs) {
}, error:function (type, error, transportImplementation, kwArgs) {
}, timeout:function (type, empty, transportImplementation, kwArgs) {
}, handle:function (type, data, transportImplementation, kwArgs) {
}, timeoutSeconds:0, abort:function () {
}, fromKwArgs:function (kwArgs) {
	if (kwArgs["url"]) {
		kwArgs.url = kwArgs.url.toString();
	}
	if (kwArgs["formNode"]) {
		kwArgs.formNode = dojo.byId(kwArgs.formNode);
	}
	if (!kwArgs["method"] && kwArgs["formNode"] && kwArgs["formNode"].method) {
		kwArgs.method = kwArgs["formNode"].method;
	}
	if (!kwArgs["handle"] && kwArgs["handler"]) {
		kwArgs.handle = kwArgs.handler;
	}
	if (!kwArgs["load"] && kwArgs["loaded"]) {
		kwArgs.load = kwArgs.loaded;
	}
	if (!kwArgs["changeUrl"] && kwArgs["changeURL"]) {
		kwArgs.changeUrl = kwArgs.changeURL;
	}
	kwArgs.encoding = dojo.lang.firstValued(kwArgs["encoding"], djConfig["bindEncoding"], "");
	kwArgs.sendTransport = dojo.lang.firstValued(kwArgs["sendTransport"], djConfig["ioSendTransport"], false);
	var isFunction = dojo.lang.isFunction;
	for (var x = 0; x < dojo.io.hdlrFuncNames.length; x++) {
		var fn = dojo.io.hdlrFuncNames[x];
		if (kwArgs[fn] && isFunction(kwArgs[fn])) {
			continue;
		}
		if (kwArgs["handle"] && isFunction(kwArgs["handle"])) {
			kwArgs[fn] = kwArgs.handle;
		}
	}
	dojo.lang.mixin(this, kwArgs);
}});
dojo.io.Error = function (msg, type, num) {
	this.message = msg;
	this.type = type || "unknown";
	this.number = num || 0;
};
dojo.io.transports.addTransport = function (name) {
	this.push(name);
	this[name] = dojo.io[name];
};
dojo.io.bind = function (request) {
	if (!(request instanceof dojo.io.Request)) {
		try {
			request = new dojo.io.Request(request);
		}
		catch (e) {
			dojo.debug(e);
		}
	}
	var tsName = "";
	if (request["transport"]) {
		tsName = request["transport"];

lib/HTML/Dojo/src.pm  view on Meta::CPAN


	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/community/licensing.shtml
*/



dojo.hostenv.packageLoaded({depends:[["kwCompoundRequire", {common:["dojo.io.common"], rhino:["dojo.io.RhinoIO"], browser:["dojo.io.BrowserIO", "dojo.io.cookie"], dashboard:["dojo.io.BrowserIO", "dojo.io.cookie"]}], ["provide", "dojo.io.*"]], defineP...
	dojo.kwCompoundRequire({common:["dojo.io.common"], rhino:["dojo.io.RhinoIO"], browser:["dojo.io.BrowserIO", "dojo.io.cookie"], dashboard:["dojo.io.BrowserIO", "dojo.io.cookie"]});
	dojo.provide("dojo.io.*");
}});


__CPAN_FILE__ src/io/common.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/community/licensing.shtml
*/



dojo.hostenv.packageLoaded({depends:[["provide", "dojo.io.common"], ["require", "dojo.string"], ["require", "dojo.lang.extras"]], definePackage:function (dojo) {
	dojo.provide("dojo.io.common");
	dojo.require("dojo.string");
	dojo.require("dojo.lang.extras");
	dojo.io.transports = [];
	dojo.io.hdlrFuncNames = ["load", "error", "timeout"];
	dojo.io.Request = function (url, mimetype, transport, changeUrl) {
		if ((arguments.length == 1) && (arguments[0].constructor == Object)) {
			this.fromKwArgs(arguments[0]);
		} else {
			this.url = url;
			if (mimetype) {
				this.mimetype = mimetype;
			}
			if (transport) {
				this.transport = transport;
			}
			if (arguments.length >= 4) {
				this.changeUrl = changeUrl;
			}
		}
	};
	dojo.lang.extend(dojo.io.Request, {url:"", mimetype:"text/plain", method:"GET", content:undefined, transport:undefined, changeUrl:undefined, formNode:undefined, sync:false, bindSuccess:false, useCache:false, preventCache:false, jsonFilter:function (...
		if ((this.mimetype == "text/json-comment-filtered") || (this.mimetype == "application/json-comment-filtered")) {
			var cStartIdx = value.indexOf("/*");
			var cEndIdx = value.lastIndexOf("*/");
			if ((cStartIdx == -1) || (cEndIdx == -1)) {
				dojo.debug("your JSON wasn't comment filtered!");
				return "";
			}
			return value.substring(cStartIdx + 2, cEndIdx);
		}
		dojo.debug("please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints");
		return value;
	}, load:function (type, data, transportImplementation, kwArgs) {
	}, error:function (type, error, transportImplementation, kwArgs) {
	}, timeout:function (type, empty, transportImplementation, kwArgs) {
	}, handle:function (type, data, transportImplementation, kwArgs) {
	}, timeoutSeconds:0, abort:function () {
	}, fromKwArgs:function (kwArgs) {
		if (kwArgs["url"]) {
			kwArgs.url = kwArgs.url.toString();
		}
		if (kwArgs["formNode"]) {
			kwArgs.formNode = dojo.byId(kwArgs.formNode);
		}
		if (!kwArgs["method"] && kwArgs["formNode"] && kwArgs["formNode"].method) {
			kwArgs.method = kwArgs["formNode"].method;
		}
		if (!kwArgs["handle"] && kwArgs["handler"]) {
			kwArgs.handle = kwArgs.handler;
		}
		if (!kwArgs["load"] && kwArgs["loaded"]) {
			kwArgs.load = kwArgs.loaded;
		}
		if (!kwArgs["changeUrl"] && kwArgs["changeURL"]) {
			kwArgs.changeUrl = kwArgs.changeURL;
		}
		kwArgs.encoding = dojo.lang.firstValued(kwArgs["encoding"], djConfig["bindEncoding"], "");
		kwArgs.sendTransport = dojo.lang.firstValued(kwArgs["sendTransport"], djConfig["ioSendTransport"], false);
		var isFunction = dojo.lang.isFunction;
		for (var x = 0; x < dojo.io.hdlrFuncNames.length; x++) {
			var fn = dojo.io.hdlrFuncNames[x];
			if (kwArgs[fn] && isFunction(kwArgs[fn])) {
				continue;
			}
			if (kwArgs["handle"] && isFunction(kwArgs["handle"])) {
				kwArgs[fn] = kwArgs.handle;
			}
		}
		dojo.lang.mixin(this, kwArgs);
	}});
	dojo.io.Error = function (msg, type, num) {
		this.message = msg;
		this.type = type || "unknown";
		this.number = num || 0;
	};
	dojo.io.transports.addTransport = function (name) {
		this.push(name);
		this[name] = dojo.io[name];
	};
	dojo.io.bind = function (request) {
		if (!(request instanceof dojo.io.Request)) {
			try {
				request = new dojo.io.Request(request);
			}
			catch (e) {
				dojo.debug(e);
			}
		}
		var tsName = "";
		if (request["transport"]) {
			tsName = request["transport"];

lib/HTML/Dojo/src.pm  view on Meta::CPAN

				cmd = "start";
			}
			
			setServerUrl(cmd, partData);
			xipPartIndex++;
		}
	}
	
	function setServerUrl(cmd, message){
		var serverUrl = makeServerUrl(cmd, message);

		//Safari won't let us replace across domains.
		if(navigator.userAgent.indexOf("Safari") == -1){
			xipServerWindow.location.replace(serverUrl);
		}else{
			xipServerWindow.location = serverUrl;
		}
	}
	
	function makeServerUrl(cmd, message){
		var serverUrl = xipServerUrl + "#" + (xipIdCounter++) + ":" + cmd;
		if(message){
			serverUrl += ":" + message;
		}
		return serverUrl;
	}

	function unpackMessage(encodedMessage){
		var parts = encodedMessage.split(":");
		var command = parts[1];
		encodedMessage = parts[2] || "";

		var config = null;
		if(command == "init"){
			var configParts = encodedMessage.split("&");
			config = {};
			for(var i = 0; i < configParts.length; i++){
				var nameValue = configParts[i].split("=");
				config[decodeURIComponent(nameValue[0])] = decodeURIComponent(nameValue[1]);
			}
		}
		return {command: command, message: encodedMessage, config: config};
	}

	function onClientLoad(){
		//Decode the init params
		var config = unpackMessage(window.location.href.split("#")[1]).config;

		xipStateId = config.id;

		//Remove the query param for the IE7 recursive case.
		xipServerUrl = fixServerUrl(config.server).replace(/(\?|\&)dojo\.fr\=1/, "");
		
		//Make sure we don't have a javascript: url, just for good measure.
		if(xipServerUrl.split(":")[0].match(/javascript/i)){
			throw "Invalid server URL";
		}

		xipUseFrameRecursion = config["fr"];
		
		if(xipUseFrameRecursion == "endpoint"){
			xipMasterFrame = parent.parent;
		}else{
			xipMasterFrame = parent;
		}
		
		//Start counter to inspect hash value.
		setInterval(pollHash, 10);

		var clientUrl = window.location.href.split("#")[0];
		var iframeNode = document.getElementsByTagName("iframe")[0];
		iframeNode.id = xipStateId + "_frame";
		iframeNode.src = makeServerUrl("init", 'id=' + xipStateId + '&client='
			+ encodeURIComponent(clientUrl) + '&fr=' + xipUseFrameRecursion);
	}

	if(typeof(window.addEventListener) == "undefined"){
		window.attachEvent("onload", onClientLoad);
	}else{
		window.addEventListener('load', onClientLoad, false);
	}
	
	// -->
	</script>
</head>
<body>
	<h4>The Dojo Toolkit -- xip_client.html</h4>

	<p>This file is used for Dojo's XMLHttpRequest Iframe Proxy. This is the "client" file used
	internally by dojo.io.XhrIframeProxy.</p>
	
	<iframe src="javascript:false"></iframe>
</body>
</html>

__CPAN_DIR__ src/charting
__CPAN_FILE__ src/charting/Plot.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/community/licensing.shtml
*/



dojo.provide("dojo.charting.Plot");
dojo.require("dojo.lang.common");
dojo.require("dojo.charting.Axis");
dojo.require("dojo.charting.Series");
dojo.charting.RenderPlotSeries = {Singly:"single", Grouped:"grouped"};
dojo.charting.Plot = function (xaxis, yaxis, series) {
	var id = "dojo-charting-plot-" + dojo.charting.Plot.count++;
	this.getId = function () {
		return id;
	};
	this.setId = function (key) {
		id = key;



( run in 1.231 second using v1.01-cache-2.11-cpan-140bd7fdf52 )