Sha256: 0231556c9e410defb6fc45cf6eeb23d0eb9599c3a25a0866222247a00284220b

Contents?: true

Size: 1.35 KB

Versions: 20

Compression:

Stored size: 1.35 KB

Contents

module GithubUrlHelper
  def github_avatar(user, options = {})
    uri = user.avatar_uri
    attributes = options.slice(:class).merge(alt: user.try!(:name))
    if options[:size]
      uri.query ||= ''
      uri.query += "&s=#{options[:size]}"
      attributes[:width] = options[:size]
      attributes[:height] = options[:size]
    end

    image_tag(uri.to_s, attributes)
  end

  def github_commit_range_url(stack, since_commit, until_commit)
    github_repo_url(stack.repo_owner, stack.repo_name, 'compare', "#{since_commit.sha}...#{until_commit.sha}")
  end

  def github_user_url(user, *args)
    [Shipit.github_url, user, *args].join('/')
  end

  def render_github_user(user)
    link_to(github_user_url(user.login), class: 'user main-user') do
      github_avatar(user, size: 20) + user.name
    end
  end

  def github_repo_url(owner, repo, *args)
    github_user_url(owner, repo, *args)
  end

  def github_commit_url(commit)
    github_repo_url(commit.stack.repo_owner, commit.stack.repo_name, 'commit', commit.sha)
  end

  def github_diff_url(owner, repo, from_sha, to_sha)
    github_repo_url(owner, repo, 'compare', "#{from_sha}...#{to_sha}")
  end

  def link_to_github_deploy(deploy)
    url = github_commit_range_url(deploy.stack, *deploy.commit_range)
    text = deploy.commit_range.map(&:short_sha).join('...')
    link_to(text, url, class: 'number')
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
shipit-engine-0.5.2 app/helpers/github_url_helper.rb
shipit-engine-0.5.1 app/helpers/github_url_helper.rb
shipit-engine-0.5.0 app/helpers/github_url_helper.rb
shipit-engine-0.4.10 app/helpers/github_url_helper.rb
shipit-engine-0.4.9 app/helpers/github_url_helper.rb
shipit-engine-0.4.8 app/helpers/github_url_helper.rb
shipit-engine-0.4.7 app/helpers/github_url_helper.rb
shipit-engine-0.4.6 app/helpers/github_url_helper.rb
shipit-engine-0.4.5 app/helpers/github_url_helper.rb
shipit-engine-0.4.4 app/helpers/github_url_helper.rb
shipit-engine-0.4.3 app/helpers/github_url_helper.rb
shipit-engine-0.4.2 app/helpers/github_url_helper.rb
shipit-engine-0.4.1 app/helpers/github_url_helper.rb
shipit-engine-0.4.0 app/helpers/github_url_helper.rb
shipit-engine-0.3.1 app/helpers/github_url_helper.rb
shipit-engine-0.3.0 app/helpers/github_url_helper.rb
shipit-engine-0.2.3 app/helpers/github_url_helper.rb
shipit-engine-0.2.2 app/helpers/github_url_helper.rb
shipit-engine-0.2.1 app/helpers/github_url_helper.rb
shipit-engine-0.2.0 app/helpers/github_url_helper.rb