kai-jacobsen/kontentblocks

View on GitHub
js/third-party/leaflet-geocoder.js

Summary

Maintainability
F
1 mo
Test Coverage

Function Geocoder has 1175 lines of code (exceeds 25 allowed). Consider refactoring.
Open

this.L.Control.Geocoder = (function (L) {
  'use strict';

  L = L && L.hasOwnProperty('default') ? L['default'] : L;

Severity: Major
Found in js/third-party/leaflet-geocoder.js - About 5 days to fix

    Function Geocoder has a Cognitive Complexity of 161 (exceeds 5 allowed). Consider refactoring.
    Open

    this.L.Control.Geocoder = (function (L) {
      'use strict';
    
      L = L && L.hasOwnProperty('default') ? L['default'] : L;
    
    
    Severity: Minor
    Found in js/third-party/leaflet-geocoder.js - About 3 days to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    File leaflet-geocoder.js has 1180 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    this.L = this.L || {};
    this.L.Control = this.L.Control || {};
    this.L.Control.Geocoder = (function (L) {
      'use strict';
    
    
    Severity: Major
    Found in js/third-party/leaflet-geocoder.js - About 3 days to fix

      Function onAdd has 104 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

            onAdd: function(map) {
              var className = 'leaflet-control-geocoder',
                container = L.DomUtil.create('div', className + ' leaflet-bar'),
                icon = L.DomUtil.create('button', className + '-icon', container),
                form = (this._form = L.DomUtil.create('div', className + '-form', container)),
      Severity: Major
      Found in js/third-party/leaflet-geocoder.js - About 4 hrs to fix

        Method 'htmlTemplate' has a complexity of 11.
        Open

                htmlTemplate: function(r) {
        Severity: Minor
        Found in js/third-party/leaflet-geocoder.js by eslint

        Limit Cyclomatic Complexity (complexity)

        Cyclomatic complexity measures the number of linearly independent paths through a program's source code. This rule allows setting a cyclomatic complexity threshold.

        function a(x) {
            if (true) {
                return x; // 1st path
            } else if (false) {
                return x+1; // 2nd path
            } else {
                return 4; // 3rd path
            }
        }

        Rule Details

        This rule is aimed at reducing code complexity by capping the amount of cyclomatic complexity allowed in a program. As such, it will warn when the cyclomatic complexity crosses the configured threshold (default is 20).

        Examples of incorrect code for a maximum of 2:

        /*eslint complexity: ["error", 2]*/
        
        function a(x) {
            if (true) {
                return x;
            } else if (false) {
                return x+1;
            } else {
                return 4; // 3rd path
            }
        }

        Examples of correct code for a maximum of 2:

        /*eslint complexity: ["error", 2]*/
        
        function a(x) {
            if (true) {
                return x;
            } else {
                return 4;
            }
        }

        Options

        Optionally, you may specify a max object property:

        "complexity": ["error", 2]

        is equivalent to

        "complexity": ["error", { "max": 2 }]

        Deprecated: the object property maximum is deprecated. Please use the property max instead.

        When Not To Use It

        If you can't determine an appropriate complexity limit for your code, then it's best to disable this rule.

        Further Reading

        Related Rules

        • [max-depth](max-depth.md)
        • [max-len](max-len.md)
        • [max-nested-callbacks](max-nested-callbacks.md)
        • [max-params](max-params.md)
        • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

        Method 'onAdd' has too many statements (33). Maximum allowed is 30.
        Open

              onAdd: function(map) {
        Severity: Minor
        Found in js/third-party/leaflet-geocoder.js by eslint

        enforce a maximum number of statements allowed in function blocks (max-statements)

        The max-statements rule allows you to specify the maximum number of statements allowed in a function.

        function foo() {
          var bar = 1; // one statement
          var baz = 2; // two statements
          var qux = 3; // three statements
        }

        Rule Details

        This rule enforces a maximum number of statements allowed in function blocks.

        Options

        This rule has a number or object option:

        • "max" (default 10) enforces a maximum number of statements allows in function blocks

        Deprecated: The object property maximum is deprecated; please use the object property max instead.

        This rule has an object option:

        • "ignoreTopLevelFunctions": true ignores top-level functions

        max

        Examples of incorrect code for this rule with the default { "max": 10 } option:

        /*eslint max-statements: ["error", 10]*/
        /*eslint-env es6*/
        
        function foo() {
          var foo1 = 1;
          var foo2 = 2;
          var foo3 = 3;
          var foo4 = 4;
          var foo5 = 5;
          var foo6 = 6;
          var foo7 = 7;
          var foo8 = 8;
          var foo9 = 9;
          var foo10 = 10;
        
          var foo11 = 11; // Too many.
        }
        
        let foo = () => {
          var foo1 = 1;
          var foo2 = 2;
          var foo3 = 3;
          var foo4 = 4;
          var foo5 = 5;
          var foo6 = 6;
          var foo7 = 7;
          var foo8 = 8;
          var foo9 = 9;
          var foo10 = 10;
        
          var foo11 = 11; // Too many.
        };

        Examples of correct code for this rule with the default { "max": 10 } option:

        /*eslint max-statements: ["error", 10]*/
        /*eslint-env es6*/
        
        function foo() {
          var foo1 = 1;
          var foo2 = 2;
          var foo3 = 3;
          var foo4 = 4;
          var foo5 = 5;
          var foo6 = 6;
          var foo7 = 7;
          var foo8 = 8;
          var foo9 = 9;
          var foo10 = 10;
          return function () {
        
            // The number of statements in the inner function does not count toward the
            // statement maximum.
        
            return 42;
          };
        }
        
        let foo = () => {
          var foo1 = 1;
          var foo2 = 2;
          var foo3 = 3;
          var foo4 = 4;
          var foo5 = 5;
          var foo6 = 6;
          var foo7 = 7;
          var foo8 = 8;
          var foo9 = 9;
          var foo10 = 10;
          return function () {
        
            // The number of statements in the inner function does not count toward the
            // statement maximum.
        
            return 42;
          };
        }

        ignoreTopLevelFunctions

        Examples of additional correct code for this rule with the { "max": 10 }, { "ignoreTopLevelFunctions": true } options:

        /*eslint max-statements: ["error", 10, { "ignoreTopLevelFunctions": true }]*/
        
        function foo() {
          var foo1 = 1;
          var foo2 = 2;
          var foo3 = 3;
          var foo4 = 4;
          var foo5 = 5;
          var foo6 = 6;
          var foo7 = 7;
          var foo8 = 8;
          var foo9 = 9;
          var foo10 = 10;
          var foo11 = 11;
        }

        Related Rules

        • [complexity](complexity.md)
        • [max-depth](max-depth.md)
        • [max-len](max-len.md)
        • [max-nested-callbacks](max-nested-callbacks.md)
        • [max-params](max-params.md) Source: http://eslint.org/docs/rules/

        Method 'onAdd' has a complexity of 7.
        Open

              onAdd: function(map) {
        Severity: Minor
        Found in js/third-party/leaflet-geocoder.js by eslint

        Limit Cyclomatic Complexity (complexity)

        Cyclomatic complexity measures the number of linearly independent paths through a program's source code. This rule allows setting a cyclomatic complexity threshold.

        function a(x) {
            if (true) {
                return x; // 1st path
            } else if (false) {
                return x+1; // 2nd path
            } else {
                return 4; // 3rd path
            }
        }

        Rule Details

        This rule is aimed at reducing code complexity by capping the amount of cyclomatic complexity allowed in a program. As such, it will warn when the cyclomatic complexity crosses the configured threshold (default is 20).

        Examples of incorrect code for a maximum of 2:

        /*eslint complexity: ["error", 2]*/
        
        function a(x) {
            if (true) {
                return x;
            } else if (false) {
                return x+1;
            } else {
                return 4; // 3rd path
            }
        }

        Examples of correct code for a maximum of 2:

        /*eslint complexity: ["error", 2]*/
        
        function a(x) {
            if (true) {
                return x;
            } else {
                return 4;
            }
        }

        Options

        Optionally, you may specify a max object property:

        "complexity": ["error", 2]

        is equivalent to

        "complexity": ["error", { "max": 2 }]

        Deprecated: the object property maximum is deprecated. Please use the property max instead.

        When Not To Use It

        If you can't determine an appropriate complexity limit for your code, then it's best to disable this rule.

        Further Reading

        Related Rules

        • [max-depth](max-depth.md)
        • [max-len](max-len.md)
        • [max-nested-callbacks](max-nested-callbacks.md)
        • [max-params](max-params.md)
        • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

        Method '_keydown' has a complexity of 7.
        Open

              _keydown: function(e) {
        Severity: Minor
        Found in js/third-party/leaflet-geocoder.js by eslint

        Limit Cyclomatic Complexity (complexity)

        Cyclomatic complexity measures the number of linearly independent paths through a program's source code. This rule allows setting a cyclomatic complexity threshold.

        function a(x) {
            if (true) {
                return x; // 1st path
            } else if (false) {
                return x+1; // 2nd path
            } else {
                return 4; // 3rd path
            }
        }

        Rule Details

        This rule is aimed at reducing code complexity by capping the amount of cyclomatic complexity allowed in a program. As such, it will warn when the cyclomatic complexity crosses the configured threshold (default is 20).

        Examples of incorrect code for a maximum of 2:

        /*eslint complexity: ["error", 2]*/
        
        function a(x) {
            if (true) {
                return x;
            } else if (false) {
                return x+1;
            } else {
                return 4; // 3rd path
            }
        }

        Examples of correct code for a maximum of 2:

        /*eslint complexity: ["error", 2]*/
        
        function a(x) {
            if (true) {
                return x;
            } else {
                return 4;
            }
        }

        Options

        Optionally, you may specify a max object property:

        "complexity": ["error", 2]

        is equivalent to

        "complexity": ["error", { "max": 2 }]

        Deprecated: the object property maximum is deprecated. Please use the property max instead.

        When Not To Use It

        If you can't determine an appropriate complexity limit for your code, then it's best to disable this rule.

        Further Reading

        Related Rules

        • [max-depth](max-depth.md)
        • [max-len](max-len.md)
        • [max-nested-callbacks](max-nested-callbacks.md)
        • [max-params](max-params.md)
        • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

        Function geocode has 36 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

              geocode: function(query, cb, context) {
                var params = this.options.geocodingQueryParams;
                if (
                  typeof params.proximity !== 'undefined' &&
                  params.proximity.hasOwnProperty('lat') &&
        Severity: Minor
        Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

          Function _keydown has 35 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

                _keydown: function(e) {
                  var _this = this,
                    select = function select(dir) {
                      if (_this._selection) {
                        L.DomUtil.removeClass(_this._selection, 'leaflet-control-geocoder-selected');
          Severity: Minor
          Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

            Function reverse has 34 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

                  reverse: function(location, scale, cb, context) {
                    getJSON(
                      this.options.serviceUrl +
                      encodeURIComponent(location.lng) +
                      ',' +
            Severity: Minor
            Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

              Function _createAlt has 32 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

                    _createAlt: function(result, index) {
                      var li = L.DomUtil.create('li', ''),
                        a = L.DomUtil.create('a', '', li),
                        icon = this.options.showResultIcons && result.icon ? L.DomUtil.create('img', '', a) : null,
                        text = result.html ? undefined : document.createTextNode(result.name),
              Severity: Minor
              Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                Function geocode has 32 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                      geocode: function(query, cb, context) {
                        var params = {
                          SingleLine: query,
                          outFields: 'Addr_Type',
                          forStorage: false,
                Severity: Minor
                Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                  Function geocode has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                        geocode: function(query, cb, context) {
                          var params = {
                            address: query
                          };
                  
                  
                  Severity: Minor
                  Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                    Function reverse has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                          reverse: function(location, scale, cb, context) {
                            var params = {
                              latlng: encodeURIComponent(location.lat) + ',' + encodeURIComponent(location.lng)
                            };
                            params = L.Util.extend(params, this.options.reverseQueryParams);
                    Severity: Minor
                    Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                      Function geocode has 28 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                            geocode: function(query, cb, context) {
                              getJSON(
                                this.options.serviceUrl + 'search',
                                L.extend(
                                  {
                      Severity: Minor
                      Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                        Function reverse has 28 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                              reverse: function(location, scale, cb, context) {
                                getJSON(
                                  this.options.serviceUrl + 'reverse',
                                  L.extend(
                                    {
                        Severity: Minor
                        Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                          Function _decodeFeatures has 28 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                                _decodeFeatures: function(data) {
                                  var results = [],
                                    i,
                                    f,
                                    c,
                          Severity: Minor
                          Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                            Function geocode has 26 lines of code (exceeds 25 allowed). Consider refactoring.
                            Open

                                  geocode: function(query, cb, context) {
                                    getJSON(
                                      this.options.serviceUrl + '/address',
                                      {
                                        key: this._key,
                            Severity: Minor
                            Found in js/third-party/leaflet-geocoder.js - About 1 hr to fix

                              Function jsonp has 5 arguments (exceeds 4 allowed). Consider refactoring.
                              Open

                                function jsonp(url, params, callback, context, jsonpParam) {
                              Severity: Minor
                              Found in js/third-party/leaflet-geocoder.js - About 35 mins to fix

                                Use ‘===’ to compare with ‘null’.
                                Open

                                    if (string == null) {
                                Severity: Minor
                                Found in js/third-party/leaflet-geocoder.js by eslint

                                Disallow Null Comparisons (no-eq-null)

                                Comparing to null without a type-checking operator (== or !=), can have unintended results as the comparison will evaluate to true when comparing to not just a null, but also an undefined value.

                                if (foo == null) {
                                  bar();
                                }

                                Rule Details

                                The no-eq-null rule aims reduce potential bug and unwanted behavior by ensuring that comparisons to null only match null, and not also undefined. As such it will flag comparisons to null when using == and !=.

                                Examples of incorrect code for this rule:

                                /*eslint no-eq-null: "error"*/
                                
                                if (foo == null) {
                                  bar();
                                }
                                
                                while (qux != null) {
                                  baz();
                                }

                                Examples of correct code for this rule:

                                /*eslint no-eq-null: "error"*/
                                
                                if (foo === null) {
                                  bar();
                                }
                                
                                while (qux !== null) {
                                  baz();
                                }

                                Source: http://eslint.org/docs/rules/

                                Expected '===' and instead saw '=='.
                                Open

                                    if (string == null) {
                                Severity: Minor
                                Found in js/third-party/leaflet-geocoder.js by eslint

                                Require === and !== (eqeqeq)

                                It is considered good practice to use the type-safe equality operators === and !== instead of their regular counterparts == and !=.

                                The reason for this is that == and != do type coercion which follows the rather obscure Abstract Equality Comparison Algorithm. For instance, the following statements are all considered true:

                                • [] == false
                                • [] == ![]
                                • 3 == "03"

                                If one of those occurs in an innocent-looking statement such as a == b the actual problem is very difficult to spot.

                                Rule Details

                                This rule is aimed at eliminating the type-unsafe equality operators.

                                Examples of incorrect code for this rule:

                                /*eslint eqeqeq: "error"*/
                                
                                if (x == 42) { }
                                
                                if ("" == text) { }
                                
                                if (obj.getStuff() != undefined) { }

                                The --fix option on the command line automatically fixes some problems reported by this rule. A problem is only fixed if one of the operands is a typeof expression, or if both operands are literals with the same type.

                                Options

                                always

                                The "always" option (default) enforces the use of === and !== in every situation (except when you opt-in to more specific handling of null [see below]).

                                Examples of incorrect code for the "always" option:

                                /*eslint eqeqeq: ["error", "always"]*/
                                
                                a == b
                                foo == true
                                bananas != 1
                                value == undefined
                                typeof foo == 'undefined'
                                'hello' != 'world'
                                0 == 0
                                true == true
                                foo == null

                                Examples of correct code for the "always" option:

                                /*eslint eqeqeq: ["error", "always"]*/
                                
                                a === b
                                foo === true
                                bananas !== 1
                                value === undefined
                                typeof foo === 'undefined'
                                'hello' !== 'world'
                                0 === 0
                                true === true
                                foo === null

                                This rule optionally takes a second argument, which should be an object with the following supported properties:

                                • "null": Customize how this rule treats null literals. Possible values:
                                  • always (default) - Always use === or !==.
                                  • never - Never use === or !== with null.
                                  • ignore - Do not apply this rule to null.

                                smart

                                The "smart" option enforces the use of === and !== except for these cases:

                                • Comparing two literal values
                                • Evaluating the value of typeof
                                • Comparing against null

                                Examples of incorrect code for the "smart" option:

                                /*eslint eqeqeq: ["error", "smart"]*/
                                
                                // comparing two variables requires ===
                                a == b
                                
                                // only one side is a literal
                                foo == true
                                bananas != 1
                                
                                // comparing to undefined requires ===
                                value == undefined

                                Examples of correct code for the "smart" option:

                                /*eslint eqeqeq: ["error", "smart"]*/
                                
                                typeof foo == 'undefined'
                                'hello' != 'world'
                                0 == 0
                                true == true
                                foo == null

                                allow-null

                                Deprecated: Instead of using this option use "always" and pass a "null" option property with value "ignore". This will tell eslint to always enforce strict equality except when comparing with the null literal.

                                ["error", "always", {"null": "ignore"}]

                                When Not To Use It

                                If you don't want to enforce a style for using equality operators, then it's safe to disable this rule. Source: http://eslint.org/docs/rules/

                                Expected '===' and instead saw '=='.
                                Open

                                            if (data.status.status == 200) {
                                Severity: Minor
                                Found in js/third-party/leaflet-geocoder.js by eslint

                                Require === and !== (eqeqeq)

                                It is considered good practice to use the type-safe equality operators === and !== instead of their regular counterparts == and !=.

                                The reason for this is that == and != do type coercion which follows the rather obscure Abstract Equality Comparison Algorithm. For instance, the following statements are all considered true:

                                • [] == false
                                • [] == ![]
                                • 3 == "03"

                                If one of those occurs in an innocent-looking statement such as a == b the actual problem is very difficult to spot.

                                Rule Details

                                This rule is aimed at eliminating the type-unsafe equality operators.

                                Examples of incorrect code for this rule:

                                /*eslint eqeqeq: "error"*/
                                
                                if (x == 42) { }
                                
                                if ("" == text) { }
                                
                                if (obj.getStuff() != undefined) { }

                                The --fix option on the command line automatically fixes some problems reported by this rule. A problem is only fixed if one of the operands is a typeof expression, or if both operands are literals with the same type.

                                Options

                                always

                                The "always" option (default) enforces the use of === and !== in every situation (except when you opt-in to more specific handling of null [see below]).

                                Examples of incorrect code for the "always" option:

                                /*eslint eqeqeq: ["error", "always"]*/
                                
                                a == b
                                foo == true
                                bananas != 1
                                value == undefined
                                typeof foo == 'undefined'
                                'hello' != 'world'
                                0 == 0
                                true == true
                                foo == null

                                Examples of correct code for the "always" option:

                                /*eslint eqeqeq: ["error", "always"]*/
                                
                                a === b
                                foo === true
                                bananas !== 1
                                value === undefined
                                typeof foo === 'undefined'
                                'hello' !== 'world'
                                0 === 0
                                true === true
                                foo === null

                                This rule optionally takes a second argument, which should be an object with the following supported properties:

                                • "null": Customize how this rule treats null literals. Possible values:
                                  • always (default) - Always use === or !==.
                                  • never - Never use === or !== with null.
                                  • ignore - Do not apply this rule to null.

                                smart

                                The "smart" option enforces the use of === and !== except for these cases:

                                • Comparing two literal values
                                • Evaluating the value of typeof
                                • Comparing against null

                                Examples of incorrect code for the "smart" option:

                                /*eslint eqeqeq: ["error", "smart"]*/
                                
                                // comparing two variables requires ===
                                a == b
                                
                                // only one side is a literal
                                foo == true
                                bananas != 1
                                
                                // comparing to undefined requires ===
                                value == undefined

                                Examples of correct code for the "smart" option:

                                /*eslint eqeqeq: ["error", "smart"]*/
                                
                                typeof foo == 'undefined'
                                'hello' != 'world'
                                0 == 0
                                true == true
                                foo == null

                                allow-null

                                Deprecated: Instead of using this option use "always" and pass a "null" option property with value "ignore". This will tell eslint to always enforce strict equality except when comparing with the null literal.

                                ["error", "always", {"null": "ignore"}]

                                When Not To Use It

                                If you don't want to enforce a style for using equality operators, then it's safe to disable this rule. Source: http://eslint.org/docs/rules/

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                    class: L.Class.extend({
                                      options: {
                                        serviceUrl: 'https://maps.googleapis.com/maps/api/geocode/json',
                                        geocodingQueryParams: {},
                                        reverseQueryParams: {}
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 4 days to fix
                                js/third-party/leaflet.js on lines 274..359

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 808.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                    class: L.Class.extend({
                                      options: {
                                        serviceUrl: 'https://www.mapquestapi.com/geocoding/v1'
                                      },
                                
                                
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 4 days to fix
                                js/third-party/leaflet.js on lines 642..725

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 716.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                    class: L.Class.extend({
                                      initialize: function(key) {
                                        this.key = key;
                                      },
                                
                                
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 2 days to fix
                                js/third-party/leaflet.js on lines 213..268

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 507.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Similar blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      _createAlt: function(result, index) {
                                        var li = L.DomUtil.create('li', ''),
                                          a = L.DomUtil.create('a', '', li),
                                          icon = this.options.showResultIcons && result.icon ? L.DomUtil.create('img', '', a) : null,
                                          text = result.html ? undefined : document.createTextNode(result.name),
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 1636..1682

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 349.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      geocode: function(query, cb, context) {
                                        getJSON(
                                          this.options.serviceUrl + 'search',
                                          L.extend(
                                            {
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 842..871

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 340.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Similar blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      _decodeFeatures: function(data) {
                                        var results = [],
                                          i,
                                          f,
                                          c,
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 1226..1259

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 293.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      reverse: function(location, scale, cb, context) {
                                        getJSON(
                                          this.options.serviceUrl + 'reverse',
                                          L.extend(
                                            {
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 873..904

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 279.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                        getJSON(this.options.serviceUrl + encodeURIComponent(query) + '.json', params, function(
                                          data
                                        ) {
                                          var results = [],
                                            loc,
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet-geocoder.js on lines 756..782

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 273.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                          function(data) {
                                            var results = [],
                                              loc,
                                              latLng,
                                              latLngBounds;
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet-geocoder.js on lines 713..741

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 273.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                        getJSON(this.options.service_url + '/findAddressCandidates', params, function(data) {
                                          var results = [],
                                            loc,
                                            latLng,
                                            latLngBounds;
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 153..176

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 238.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      reverse: function(location, scale, cb, context) {
                                        var params = {
                                          location: encodeURIComponent(location.lng) + ',' + encodeURIComponent(location.lat),
                                          distance: 100,
                                          f: 'json'
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 184..206

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 204.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      reverse: function(location, scale, cb, context) {
                                        getJSON(
                                          this.options.serviceUrl + 'reverse',
                                          {
                                            key: this._accessToken,
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 day to fix
                                js/third-party/leaflet.js on lines 1317..1340

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 199.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                        var _this = this,
                                          select = function select(dir) {
                                            if (_this._selection) {
                                              L.DomUtil.removeClass(_this._selection, 'leaflet-control-geocoder-selected');
                                              _this._selection = _this._selection[dir > 0 ? 'nextSibling' : 'previousSibling'];
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 5 hrs to fix
                                js/third-party/leaflet.js on lines 1685..1698

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 153.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      suggest: function(query, cb, context) {
                                        var _this = this;
                                        getJSON(
                                          this.options.serviceUrl + '/autocomplete',
                                          L.extend(
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 5 hrs to fix
                                js/third-party/leaflet.js on lines 1084..1102

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 151.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      markGeocode: function(result) {
                                        result = result.geocode || result;
                                
                                        this._map.fitBounds(result.bbox);
                                
                                
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 5 hrs to fix
                                js/third-party/leaflet.js on lines 1554..1569

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 140.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      _change: function() {
                                        var v = this._input.value;
                                        if (v !== this._lastGeocode) {
                                          clearTimeout(this._suggestTimeout);
                                          if (v.length >= this.options.suggestMinLength) {
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 5 hrs to fix
                                js/third-party/leaflet.js on lines 1733..1748

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 137.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      reverse: function(location, scale, cb, context) {
                                        var _this = this;
                                        getJSON(
                                          this.options.serviceUrl + '/reverse',
                                          L.extend(
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 3 hrs to fix
                                js/third-party/leaflet.js on lines 1104..1120

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 114.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      geocode: function(query, cb, context) {
                                        var params = {
                                          searchtext: query,
                                          gen: 9,
                                          app_id: this.options.app_id,
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 3 hrs to fix
                                js/third-party/leaflet.js on lines 378..388

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 112.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      reverse: function(latLng, scale, cb, context) {
                                        var params = L.extend(
                                          {
                                            lat: latLng.lat,
                                            lon: latLng.lng
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 3 hrs to fix
                                js/third-party/leaflet.js on lines 1208..1224

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 109.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      geocode: function(query, cb, context) {
                                        var _this = this;
                                        getJSON(
                                          this.options.serviceUrl + '/search',
                                          L.extend(
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 3 hrs to fix
                                js/third-party/leaflet.js on lines 1067..1082

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 100.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                        if (this.options.collapsed) {
                                          if (this.options.expand === 'click') {
                                            L.DomEvent.addListener(
                                              container,
                                              'click',
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 3 hrs to fix
                                js/third-party/leaflet.js on lines 1467..1516

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 99.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      geocode: function(query, cb, context) {
                                        var params = L.extend(
                                          {
                                            q: query
                                          },
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 3 hrs to fix
                                js/third-party/leaflet.js on lines 1187..1202

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 95.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                  function htmlEscape(string) {
                                    if (string == null) {
                                      return '';
                                    } else if (!string) {
                                      return string + '';
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 2 hrs to fix
                                js/third-party/leaflet.js on lines 42..58

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 91.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                  function template(str, data) {
                                    return str.replace(/\{ *([\w_]+) *\}/g, function(str, key) {
                                      var value = data[key];
                                      if (value === undefined) {
                                        value = '';
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 2 hrs to fix
                                js/third-party/leaflet.js on lines 99..109

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 90.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Similar blocks of code found in 2 locations. Consider refactoring.
                                Open

                                        var className = 'leaflet-control-geocoder',
                                          container = L.DomUtil.create('div', className + ' leaflet-bar'),
                                          icon = L.DomUtil.create('button', className + '-icon', container),
                                          form = (this._form = L.DomUtil.create('div', className + '-form', container)),
                                          input;
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 2 hrs to fix
                                js/third-party/leaflet.js on lines 1422..1426

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 86.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                          case 13:
                                            if (this._selection) {
                                              var index = parseInt(this._selection.getAttribute('data-result-index'), 10);
                                              this._geocodeResultSelected(this._results[index]);
                                              this._clearResults();
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 2 hrs to fix
                                js/third-party/leaflet.js on lines 1718..1726

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 85.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                              latLngBounds = L.latLngBounds(
                                                L.latLng(loc.mapView.topLeft.latitude, loc.mapView.topLeft.longitude),
                                                L.latLng(loc.mapView.bottomRight.latitude, loc.mapView.bottomRight.longitude)
                                              );
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 2 hrs to fix
                                js/third-party/leaflet.js on lines 415..418

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 82.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                        L.DomEvent.addListener(
                                          input,
                                          'blur',
                                          function() {
                                            if (this.options.collapsed && !this._preventBlurCollapse) {
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1455..1465

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 69.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                          } else if (L.Browser.touch && this.options.expand === 'touch') {
                                            L.DomEvent.addListener(
                                              container,
                                              'touchstart mousedown',
                                              function(e) {
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1479..1494

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 69.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                          if (this.options.expand === 'click') {
                                            L.DomEvent.addListener(
                                              container,
                                              'click',
                                              function(e) {
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1468..1494

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 65.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      initialize: function(accessToken, options) {
                                        L.setOptions(this, options);
                                        this.options.geocodingQueryParams.access_token = accessToken;
                                        this.options.reverseQueryParams.access_token = accessToken;
                                      },
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 539..543

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 62.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                          function(results) {
                                            if (requestCount === this._requestCount) {
                                              eventData.results = results;
                                              this.fire('finish' + mode, eventData);
                                              this._geocodeResult(results, suggest);
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1589..1595

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 61.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      _toggle: function() {
                                        if (L.DomUtil.hasClass(this._container, 'leaflet-control-geocoder-expanded')) {
                                          this._collapse();
                                        } else {
                                          this._expand();
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1604..1610

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 58.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                          for (var i = 0; i < results.length; i++) {
                                            this._alts.appendChild(this._createAlt(results[i], i));
                                          }
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1545..1547

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 55.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      _expand: function() {
                                        L.DomUtil.addClass(this._container, 'leaflet-control-geocoder-expanded');
                                        this._input.select();
                                        this.fire('expand');
                                      },
                                Severity: Major
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 1 hr to fix
                                js/third-party/leaflet.js on lines 1612..1616

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 55.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                Identical blocks of code found in 2 locations. Consider refactoring.
                                Open

                                      initialize: function(apiKey, options) {
                                        L.Util.setOptions(this, options);
                                        this._apiKey = apiKey;
                                        this._lastSuggest = 0;
                                      },
                                Severity: Minor
                                Found in js/third-party/leaflet-geocoder.js and 1 other location - About 45 mins to fix
                                js/third-party/leaflet.js on lines 1061..1065

                                Duplicated Code

                                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                Tuning

                                This issue has a mass of 50.

                                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                Refactorings

                                Further Reading

                                There are no issues that match your filters.

                                Category
                                Status