path_helpers.rb revision 9ef865993490bbd4e8d95ebb2b19a78c24981b38
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornbergermodule PathHelpers
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger extend ActiveSupport::Concern
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger included do
9ef865993490bbd4e8d95ebb2b19a78c24981b38Eugen Kuksa helper_method :fancy_repository_path, :in_ref_path?
9ef865993490bbd4e8d95ebb2b19a78c24981b38Eugen Kuksa end
9ef865993490bbd4e8d95ebb2b19a78c24981b38Eugen Kuksa
9ef865993490bbd4e8d95ebb2b19a78c24981b38Eugen Kuksa def in_ref_path?
9ef865993490bbd4e8d95ebb2b19a78c24981b38Eugen Kuksa !params[:ref].nil?
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger end
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger
843b1e0f620247429ef66831a201aabf0fb6db9dEugen Kuksa def fancy_repository_path(repository, args)
843b1e0f620247429ef66831a201aabf0fb6db9dEugen Kuksa args ||= {}
843b1e0f620247429ef66831a201aabf0fb6db9dEugen Kuksa action = args[:action] || :files
9ef865993490bbd4e8d95ebb2b19a78c24981b38Eugen Kuksa if !in_ref_path? && action == :files
843b1e0f620247429ef66831a201aabf0fb6db9dEugen Kuksa repository_tree_path repository, path: args[:path]
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger else
843b1e0f620247429ef66831a201aabf0fb6db9dEugen Kuksa repository_ref_path repository_id: repository, ref: args[:ref], action: action, path: args[:path]
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger end
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger end
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornberger
9cfb01db247ca04bb4b5b337bbd77c66b7150e53Julian Kornbergerend