gitlab

in app/controllers/projects_controller.rb [18:38]


  def gitlab
    @limit, @offset = (params[:limit] || PROJECTS_BATCH).to_i, (params[:offset] || 0).to_i
    @page = @offset == 0 ? 1 : (@offset / @limit + 1)

    current_user.reset_cache if params[:reset_cache]

    @gl_projects = current_user.gitlab_projects(params[:search], @page, @limit)
    @projects = Project.where(gitlab_id: @gl_projects.map(&:id)).ordered_by_last_commit_date
    @total_count = @gl_projects.size
    @gl_projects.reject! { |gl_project| @projects.map(&:gitlab_id).include?(gl_project.id) }
    respond_to do |format|
      format.json do
        pager_json("projects/gitlab", @total_count)
      end
    end
  rescue Network::UnauthorizedError
    raise
  rescue
    @error = 'Failed to fetch GitLab projects'
  end