summaryrefslogtreecommitdiff
path: root/app/views/import
diff options
context:
space:
mode:
authorKim "BKC" Carlbäcker <kim.carlbacker@gmail.com>2016-10-17 17:58:57 +0200
committerRémy Coutable <remy@rymai.me>2016-12-19 17:35:51 +0100
commit5d4531db2555d3051fc47e9268728a670ece95f9 (patch)
tree90c26002c5c804c6d3628f138bf1db60b4563d8c /app/views/import
parent60f61096e17dee7ebedd94cc5f70703067528bc7 (diff)
downloadgitlab-ce-5d4531db2555d3051fc47e9268728a670ece95f9.tar.gz
Gogs Importer
Diffstat (limited to 'app/views/import')
-rw-r--r--app/views/import/gogs/new.html.haml17
-rw-r--r--app/views/import/gogs/status.html.haml64
2 files changed, 81 insertions, 0 deletions
diff --git a/app/views/import/gogs/new.html.haml b/app/views/import/gogs/new.html.haml
new file mode 100644
index 00000000000..e1ae1be283c
--- /dev/null
+++ b/app/views/import/gogs/new.html.haml
@@ -0,0 +1,17 @@
+- page_title "Gogs Import"
+- header_title "Projects", root_path
+
+%h3.page-title
+ = image_tag(image_path('gogs-logo.svg'), alt: 'Gogs', size: "16x16")
+ Gogs
+
+%p
+ To import a Gogs project, you can use a
+ = succeed '.' do
+ = link_to 'Personal Access Token', 'https://github.com/gogits/go-gogs-client/wiki#access-token'
+
+= form_tag personal_access_token_import_gogs_path, method: :post, class: 'form-inline' do
+ .form-group
+ = text_field_tag :personal_access_token, '', class: 'form-control', placeholder: "Personal Access Token", size: 40
+ = text_field_tag :gogs_host_url, '', class: 'form-control', placeholder: "Gogs Host URL", size: 128
+ = submit_tag 'List Your Gogs Repositories', class: 'btn btn-success'
diff --git a/app/views/import/gogs/status.html.haml b/app/views/import/gogs/status.html.haml
new file mode 100644
index 00000000000..86ccc79efc8
--- /dev/null
+++ b/app/views/import/gogs/status.html.haml
@@ -0,0 +1,64 @@
+- page_title "Gogs import"
+- header_title "Projects", root_path
+%h3.page-title
+ %i.fa.fa-github
+ Import projects from Gogs
+
+%p.light
+ Select projects you want to import.
+%hr
+%p
+ = button_tag class: "btn btn-import btn-success js-import-all" do
+ Import all projects
+ = icon("spinner spin", class: "loading-icon")
+
+.table-responsive
+ %table.table.import-jobs
+ %colgroup.import-jobs-from-col
+ %colgroup.import-jobs-to-col
+ %colgroup.import-jobs-status-col
+ %thead
+ %tr
+ %th From Gogs
+ %th To GitLab
+ %th Status
+ %tbody
+ - @already_added_projects.each do |project|
+ %tr{id: "project_#{project.id}", class: "#{project_status_css_class(project.import_status)}"}
+ %td
+ = gogs_project_link(project.import_source)
+ %td
+ = link_to project.path_with_namespace, [project.namespace.becomes(Namespace), project]
+ %td.job-status
+ - if project.import_status == 'finished'
+ %span
+ %i.fa.fa-check
+ done
+ - elsif project.import_status == 'started'
+ %i.fa.fa-spinner.fa-spin
+ started
+ - else
+ = project.human_import_status_name
+
+ - @repos.each do |repo|
+ %tr{id: "repo_#{repo.id}"}
+ %td
+ = gogs_project_link(repo.full_name)
+ %td.import-target
+ %fieldset.row
+ .input-group
+ .project-path.input-group-btn
+ - if current_user.can_select_namespace?
+ - selected = params[:namespace_id] || :current_user
+ - opts = current_user.can_create_group? ? { extra_group: Group.new(name: repo.owner.login, path: repo.owner.login) } : {}
+ = select_tag :namespace_id, namespaces_options(selected, opts.merge({ display_path: true })), { class: 'select2 js-select-namespace', tabindex: 1 }
+ - else
+ = text_field_tag :path, current_user.namespace_path, class: "input-large form-control", tabindex: 1, disabled: true
+ %span.input-group-addon /
+ = text_field_tag :path, repo.name, class: "input-mini form-control", tabindex: 2, autofocus: true, required: true
+ %td.import-actions.job-status
+ = button_tag class: "btn btn-import js-add-to-import" do
+ Import
+ = icon("spinner spin", class: "loading-icon")
+
+.js-importer-status{ data: { jobs_import_path: "#{jobs_import_gogs_path}", import_path: "#{import_gogs_path}" } }