//
// Manage url parameters.
//
function setUrlParameter( currentUrl, param_key, param_val ) {

      // Store and cut QueryString
      var querystring = '';
      var querystring_pos = currentUrl.indexOf('?');
      if (querystring_pos>0) {
          querystring = currentUrl.substr(querystring_pos);
          currentUrl = currentUrl.replace(querystring, '');
      }

      // Cut off last slash into the url
      currentUrl = rightTrim(currentUrl,'/');

  var hasTag = currentUrl.indexOf('/'+param_key+'/') > 0;
  var replacement = '/'+param_key+'/'+param_val;

  // create new url
  if (!hasTag) {
    currentUrl += replacement;
  } else {
    var pattern = new RegExp('/'+param_key+'/[^/]+',"i");
    currentUrl = currentUrl.replace(pattern, replacement);
  }

      // Adding query string
  return currentUrl + querystring;
}

function rightTrim(s, find) {
    while (s.substring(s.length-1, s.length) == find)
        s = s.substring(0, s.length-1);
    return s;
}
