Class: Tokite::RepositoriesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/tokite/repositories_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject



19
20
21
22
23
24
25
26
# File 'app/controllers/tokite/repositories_controller.rb', line 19

def create
  params[:names].each do |name|
    github_repo = octokit_client.repository(name)
    Repository.hook!(octokit_client, github_repo)
  end
  flash[:info] = "Import repositories."
  redirect_to repositories_path
end

#destroyObject



28
29
30
31
32
33
# File 'app/controllers/tokite/repositories_controller.rb', line 28

def destroy
  repo = Repository.find(params[:id])
  repo.unhook!(octokit_client)
  flash[:info] = "Unhook repository #{repo.name}"
  redirect_to repositories_path
end

#indexObject



5
6
7
# File 'app/controllers/tokite/repositories_controller.rb', line 5

def index
  @repositories = Repository.all
end

#newObject



9
10
11
12
13
14
15
16
17
# File 'app/controllers/tokite/repositories_controller.rb', line 9

def new
  github_repos = octokit_client.repositories.select{|r| r.permissions.admin }.delete_if(&:fork)
  @repositories = github_repos.map do |repo|
    Repository.new(name: repo.full_name, url: repo.html_url)
  end
  Repository.all.pluck(:name).each do |existing_name|
    @repositories.delete_if {|repo| repo.name == existing_name }
  end
end