﻿var njs;

if (!njs) njs = {};
njs.QueryString = {};

///Retrieves an Integer value from the Query String
njs.QueryString.ToInteger = function(key) { 
    if (njs.QueryString.ToString(key))        
        var intValue = parseInt(njs.QueryString.ToString(key));
       
    if(!isNaN(intValue))
        return intValue;
    else 
        throw new Error("Invalid URL: Parameter '" + key + "' is not a number.");
}

///Retrieves a String value from the Query String
njs.QueryString.ToString = function(key) {
    var keyValuePairs = njs.QueryString.Parse();
    for(var j=0; j<njs.QueryString.Parse().length; j++) {   
        if((keyValuePairs[j].split("=")[0]).toLowerCase() == key.toLowerCase())
            return keyValuePairs[j].split("=")[1];
    }
    throw new Error("Invalid URL: Parameter '" + key + "' is not a number.");
}

///Private method
njs.QueryString.Parse = function () {
    var keyValuePairs = new Array();
    var searchQuery = window.location.search
    if (searchQuery.length > 1)  {
        searchQuery= searchQuery.substring(1, searchQuery.length);
        for (var i=0; i<searchQuery.split("&").length; i++) 
            keyValuePairs[i] = searchQuery.split("&")[i];
    }
    return keyValuePairs;
}





