JumpstartLab/tracks

View on GitHub

Showing 182 of 244 total issues

Method calendar has 40 lines of code (exceeds 25 allowed). Consider refactoring.
Open

  def calendar
    @source_view = params['_source_view'] || 'calendar'
    @page_title = t('todos.calendar_page_title')

    @projects = current_user.projects
Severity: Minor
Found in app/controllers/todos_controller.rb - About 1 hr to fix

    Method get_xth_day_of_month has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
    Open

      def get_xth_day_of_month(x, weekday, month, year)
        if x == 5
          # last -> count backwards. use UTC to avoid strange timezone oddities
          # where last_day -= 1.day seems to shift tz+0100 to tz+0000
          last_day = Time.utc(year, month, Time.days_in_month(month))
    Severity: Minor
    Found in app/models/recurring_todo.rb - About 1 hr 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

    Method show_selected_actions_from_chart has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
    Open

      def show_selected_actions_from_chart
        @page_title = t('stats.action_selection_title')
        @count = 99
    
        @source_view = 'stats'
    Severity: Minor
    Found in app/controllers/stats_controller.rb - About 1 hr 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

    Function setup_autocomplete_for_tag_list has 39 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        setup_autocomplete_for_tag_list: function(id) {
            $(id+':not(.ac_input)')
            .bind( "keydown", function( event ) { // don't navigate away from the field on tab when selecting an item
                if ( event.keyCode === $.ui.keyCode.TAB &&
                    $( this ).data( "autocomplete" ).menu.active ) {
    Severity: Minor
    Found in app/assets/javascripts/tracks.js - About 1 hr to fix

      Method show has 39 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

        def show
          @max_completed = current_user.prefs.show_number_completed
          init_data_for_sidebar unless mobile?
          @page_title = t('projects.page_title', :project => @project.name)
      
      
      Severity: Minor
      Found in app/controllers/projects_controller.rb - About 1 hr to fix

        Method get_stats_tags has 37 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

          def get_stats_tags
            # tag cloud code inspired by this article
            #  http://www.juixe.com/techknow/index.php/2006/07/15/acts-as-taggable-tag-cloud/
        
            levels=10
        Severity: Minor
        Found in app/controllers/stats_controller.rb - About 1 hr to fix

          Method update has 37 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

            def update
              # TODO: write tests for updating
              @recurring_todo.tag_with(params[:edit_recurring_todo_tag_list]) if params[:edit_recurring_todo_tag_list]
              @original_item_context_id = @recurring_todo.context_id
              @original_item_project_id = @recurring_todo.project_id
          Severity: Minor
          Found in app/controllers/recurring_todos_controller.rb - About 1 hr to fix

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

                setup_behavior: function () {
                    /* main menu */
                    $('ul.sf-menu').superfish({
                        delay: 250,
                        animation:   {
            Severity: Minor
            Found in app/assets/javascripts/tracks.js - About 1 hr to fix

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

                  setup_behavior: function() {
                      /* in place edit of context name */
                      $('div.context span#context_name').editable(ContextListPage.save_context_name, {
                          style: 'padding:0px',
                          submit: i18n['common.ok'],
              Severity: Minor
              Found in app/assets/javascripts/tracks.js - About 1 hr to fix

                Method create has 36 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                  def create
                    p = RecurringTodoCreateParamsHelper.new(params)
                    p.attributes['end_date']=parse_date_per_user_prefs(p.attributes['end_date'])
                    p.attributes['start_from']=parse_date_per_user_prefs(p.attributes['start_from'])
                
                
                Severity: Minor
                Found in app/controllers/recurring_todos_controller.rb - About 1 hr to fix

                  Method determine_down_count has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                  Open

                    def determine_down_count
                      source_view do |from|
                        from.todo do
                          @down_count = current_user.todos.active.not_hidden.count
                        end
                  Severity: Minor
                  Found in app/controllers/todos_controller.rb - About 1 hr 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

                  Method authenticate has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                  Open

                    def self.authenticate(login, pass)
                      return nil if login.blank?
                      candidate = where("login = ?", login).first
                      return nil if candidate.nil?
                  
                  
                  Severity: Minor
                  Found in app/models/user.rb - About 1 hr 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

                  Method update has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                  Open

                    def update
                      @prefs = current_user.prefs
                      @user = current_user
                      user_updated = current_user.update_attributes(params['user'])
                      prefs_updated = current_user.preference.update_attributes(params['prefs'])
                  Severity: Minor
                  Found in app/controllers/preferences_controller.rb - About 1 hr 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

                  Method index has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                  Open

                    def index
                      @source_view = params['_source_view'] || 'todo'
                      init_data_for_sidebar unless mobile?
                      
                      @todos = current_user.todos.includes(Todo::DEFAULT_INCLUDES)
                  Severity: Minor
                  Found in app/controllers/todos_controller.rb - About 1 hr 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

                  Method auto_complete_for_predecessor has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                  Open

                    def auto_complete_for_predecessor
                      unless params['id'].nil?
                        get_todo_from_params
                        # Begin matching todos in current project, excluding @todo itself
                        @items = @todo.project.todos.not_completed.
                  Severity: Minor
                  Found in app/controllers/todos_controller.rb - About 1 hr 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

                  Method create_todo_from_recurring_todo has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                  Open

                    def create_todo_from_recurring_todo(rt, date=nil)
                      # create todo and initialize with data from recurring_todo rt
                      todo = current_user.todos.build( { :description => rt.description, :notes => rt.notes, :project_id => rt.project_id, :context_id => rt.context_id})
                      todo.recurring_todo_id = rt.id
                  
                  
                  Severity: Minor
                  Found in app/controllers/application_controller.rb - About 1 hr 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

                  Method update has 35 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                    def update
                      @todo = current_user.todos.find(params['id'])
                      @source_view = params['_source_view'] || 'todo'
                      # init_data_for_sidebar unless mobile?
                  
                  
                  Severity: Minor
                  Found in app/controllers/todos_controller.rb - About 1 hr to fix

                    Method get_stats_projects has 34 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                      def get_stats_projects
                        # get the first 10 projects and their action count (all actions)
                        #
                        # Went from GROUP BY p.id to p.name for compatibility with postgresql. Since
                        # the name is forced to be unique, this should work.
                    Severity: Minor
                    Found in app/controllers/stats_controller.rb - About 1 hr to fix

                      Method update has 34 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                        def update
                          params['context'] ||= {}
                          success_text = if params['field'] == 'name' && params['value']
                            params['context']['id'] = params['id']
                            params['context']['name'] = params['value']
                      Severity: Minor
                      Found in app/controllers/contexts_controller.rb - About 1 hr to fix

                        Method from_rich_message has 33 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                          def self.from_rich_message(user, default_context_id, description, notes)
                            fields = description.match(/([^>@]*)@?([^>]*)>?(.*)/)
                            description = fields[1].strip
                            context = fields[2].strip
                            project = fields[3].strip
                        Severity: Minor
                        Found in app/models/todo.rb - About 1 hr to fix
                          Severity
                          Category
                          Status
                          Source
                          Language