﻿jQuery.extend({
	gup: function(param) {
		var param = param.replace(/[[]/, "[").replace(/[]]/, "]");
		var regexS = "[?&]" + param + "=([^&#]*)";
		var regex = new RegExp(regexS);
		var results = regex.exec(window.location.href);
		if (results) {
			return results[1];
		}
	},
	gpn: function() {
		var params = new Array();
		var regex = /[?&]([^=]+)=/g;
		while ((results = regex.exec(window.location.href)) != null)
			params.push(results[1]);
		return params;
	},
	gfUrlParams: function() {
		var ps = new Object();
		var values = new Array();
		values = $.gpn();
		for (var i = 0; i < values.length; i++) {
			ps[values[i]] = $.gup(values[i]);
		}
		return ps;
	},
	gfReload: function(ps) {
		var s = jQuery.param(ps);
		window.location = window.location.protocol + "//" + window.location.host + window.location.pathname + (s.length > 0 ? "?" + s : "");
	}
}); 
