Sha256: 9321fc3c204ba3196752d360f768cc657917b6e54888aee14df40362b25a8d21

Contents?: true

Size: 1.17 KB

Versions: 10

Compression:

Stored size: 1.17 KB

Contents

/*
	parseUri 1.2.1
	(c) 2007 Steven Levithan <stevenlevithan.com>
	modified by Clemens Kofler <clemens@railway.at> for adva-cms (added namespacing)
	MIT License
*/

var URI = {};

URI.parse = function(str) {
	var	o   = URI.parseOptions,
		m   = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
		uri = {},
		i   = 14;

	while (i--) uri[o.key[i]] = m[i] || "";

	uri[o.q.name] = {};
	uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
		if ($1) uri[o.q.name][$1] = $2;
	});

	return uri;
};

URI.parseOptions = {
	strictMode: false,
	key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
	q:   {
		name:   "queryKey",
		parser: /(?:^|&)([^&=]*)=?([^&]*)/g
	},
	parser: {
		strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
		loose:  /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
	}
};

URI.parseOptions.strictMode = true;

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
adva-core-0.0.14 public/javascripts/backup/parseuri.js
adva-core-0.0.13 public/javascripts/backup/parseuri.js
adva-core-0.0.9 public/javascripts/backup/parseuri.js
adva-core-0.0.8 public/javascripts/backup/parseuri.js
adva-core-0.0.7 public/javascripts/backup/parseuri.js
adva-core-0.0.6 public/javascripts/backup/parseuri.js
adva-core-0.0.5 public/javascripts/backup/parseuri.js
adva-core-0.0.4 public/javascripts/backup/parseuri.js
adva-core-0.0.2 public/javascripts/backup/parseuri.js
adva-core-0.0.1 public/javascripts/backup/parseuri.js