summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/lib/utils/param_helper.js.es6
blob: 2b150c415c8f2abca5793cf522deba2af8b1bef2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* eslint-disable no-param-reassign */

((w) => {
  /**
    this will take in the `name` of the param you want to parse in the url
    if the name does not exist this function will return `null`
    otherwise it will return the value of the param key provided
  */
  w.getParameterByName = (name) => {
    const url = window.location.href;
    name = name.replace(/[[\]]/g, '\\$&');
    const regex = new RegExp(`[?&]${name}(=([^&#]*)|&|#|$)`);
    const results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, ' '));
  };
})(window.gl || (window.gl = {}));