drhenner/ror_ecommerce

View on GitHub
app/assets/javascripts/foundation/foundation.joyride.js

Summary

Maintainability
F
5 days
Test Coverage

File foundation.joyride.js has 657 lines of code (exceeds 250 allowed). Consider refactoring.
Open

/*jslint unparam: true, browser: true, indent: 2 */

(function ($, window, document, undefined) {
  'use strict';

Severity: Major
Found in app/assets/javascripts/foundation/foundation.joyride.js - About 1 day to fix

    Function show has 68 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        show : function (init) {
          var $timer = null;
    
          // are we paused?
          if (this.settings.$li === undefined
    Severity: Major
    Found in app/assets/javascripts/foundation/foundation.joyride.js - About 2 hrs to fix

      Function pos_default has 59 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

          pos_default : function (init, resizing) {
            var half_fold = Math.ceil($(window).height() / 2),
                tip_position = this.settings.$next_tip.offset(),
                $nub = this.settings.$next_tip.find('.joyride-nub'),
                nub_width = Math.ceil(this.outerWidth($nub) / 2),
      Severity: Major
      Found in app/assets/javascripts/foundation/foundation.joyride.js - About 2 hrs to fix

        Function expose has 52 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

            expose : function () {
              var expose,
                  exposeCover,
                  el,
                  origCSS,
        Severity: Major
        Found in app/assets/javascripts/foundation/foundation.joyride.js - About 2 hrs to fix

          Function un_expose has 48 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

              un_expose : function () {
                var exposeId,
                    el,
                    expose ,
                    origCSS,
          Severity: Minor
          Found in app/assets/javascripts/foundation/foundation.joyride.js - About 1 hr to fix

            Function events has 38 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

                events : function () {
                  var self = this;
            
                  $(this.scope)
                    .on('click.joyride', '.joyride-next-tip, .joyride-modal-bg', function (e) {
            Severity: Minor
            Found in app/assets/javascripts/foundation/foundation.joyride.js - About 1 hr to fix

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

                  start : function () {
                    var self = this,
                        $this = $(this.scope).find('[data-joyride]'),
                        integer_settings = ['timer', 'scrollSpeed', 'startOffset', 'tipAnimationFadeSpeed', 'cookieExpires'],
                        int_settings_count = integer_settings.length;
              Severity: Minor
              Found in app/assets/javascripts/foundation/foundation.joyride.js - About 1 hr to fix

                Function pos_phone has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                    pos_phone : function (init) {
                      var tip_height = this.outerHeight(this.settings.$next_tip),
                          tip_offset = this.settings.$next_tip.offset(),
                          target_height = this.outerHeight(this.settings.$target),
                          $nub = $('.joyride-nub', this.settings.$next_tip),
                Severity: Minor
                Found in app/assets/javascripts/foundation/foundation.joyride.js - About 1 hr to fix

                  Avoid deeply nested control flow statements.
                  Open

                              if (this.settings.timer > 0) {
                  
                                this.settings.$next_tip
                                  .fadeIn(this.settings.tipAnimationFadeSpeed)
                                  .show();
                  Severity: Major
                  Found in app/assets/javascripts/foundation/foundation.joyride.js - About 45 mins to fix

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

                          if (arguments.length > 0 && arguments[0] instanceof $) {
                            el = arguments[0];
                          } else if(this.settings.$target && !/body/i.test(this.settings.$target.selector)){
                            el = this.settings.$target;
                          }  else {
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 3 hrs to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 580..586

                    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 102.

                    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 (arguments.length > 0 && arguments[0] instanceof $) {
                            el = arguments[0];
                          } else if(this.settings.$target && !/body/i.test(this.settings.$target.selector)){
                            el = this.settings.$target;
                          }  else {
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 3 hrs to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 646..652

                    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 102.

                    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

                                  this.delay(function () {
                                    $timer.animate({
                                      width: $timer.parent().width()
                                    }, this.settings.timer, 'linear');
                                  }.bind(this), this.settings.tipAnimationFadeSpeed);
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 307..311

                    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 74.

                    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

                                  this.delay(function () {
                                    $timer.animate({
                                      width: $timer.parent().width()
                                    }, this.settings.timer, 'linear');
                                  }.bind(this), this.settings.tipAnimationFadeSpeed);
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 285..289

                    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 74.

                    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

                          exposeCover.css({
                            top: el.offset().top,
                            left: el.offset().left,
                            width: this.outerWidth(el, true),
                            height: this.outerHeight(el, true)
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 597..602

                    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 72.

                    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

                          expose.css({
                            top: el.offset().top,
                            left: el.offset().left,
                            width: this.outerWidth(el, true),
                            height: this.outerHeight(el, true)
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 623..628

                    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 72.

                    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

                            } else {
                    
                              this.settings.$next_tip.offset({top: this.settings.$target.offset().top + target_height + nub_height});
                              $nub.addClass('top');
                    
                    
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 528..533

                    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 66.

                    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

                            if (this.top()) {
                    
                                this.settings.$next_tip.offset({top: this.settings.$target.offset().top - tip_height - nub_height});
                                $nub.addClass('bottom');
                    
                    
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 533..538

                    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 66.

                    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 (Foundation.rtl) {
                                  leftOffset = this.settings.$target.offset().width - this.settings.$next_tip.width() + leftOffset;
                                }
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 453..455

                    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 60.

                    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 (Foundation.rtl) {
                                  leftOffset = this.settings.$target.offset().width - this.settings.$next_tip.width() + leftOffset;
                                }
                    Severity: Major
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 1 hr to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 442..444

                    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 60.

                    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

                                  top: (this.settings.$target.offset().top - this.outerHeight(this.settings.$next_tip) - nub_height),
                    Severity: Minor
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 40 mins to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 474..474

                    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 48.

                    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

                                  left: (this.settings.$target.offset().left - this.outerWidth(this.settings.$next_tip) - nub_width)});
                    Severity: Minor
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 40 mins to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 457..457

                    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 48.

                    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 (toggle) {
                            this.settings.$next_tip.hide();
                            this.settings.$next_tip.css('visibility', 'visible');
                          }
                    Severity: Minor
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 30 mins to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 544..547

                    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 45.

                    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 (toggle) {
                            this.settings.$next_tip.hide();
                            this.settings.$next_tip.css('visibility', 'visible');
                          }
                    Severity: Minor
                    Found in app/assets/javascripts/foundation/foundation.joyride.js and 1 other location - About 30 mins to fix
                    app/assets/javascripts/foundation/foundation.joyride.js on lines 501..504

                    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 45.

                    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