ko.bindUrlToViewModel = function (viewModel) {
//parse the url into an object
var url = document.location.toString();
var queryStart = url.indexOf("?")
if (queryStart < 0)
return;
var query = url.substr(queryStart + 1);
if (query.length == 0)
return;
var nvps = query.split("&");
for (var i = 0, l = nvps.length; i < l; i++) {
var nv = nvps[i].split("=");
if (nv.length >= 1) {
var name = window.decodeURIComponent(nv[0]);
if (ko.isObservable(viewModel[name])) {
var value = true;
if (nv.length == 2)
value = window.decodeURIComponent(nv[1]);
viewModel[name](value);
}
}
}
}