BigW Consortium Gitlab

new.html.haml 6.29 KB
- @breadcrumb_link = dashboard_projects_path
- breadcrumb_title "Projects"
- @hide_top_links = true
- page_title    'New Project'
- header_title  "Projects", dashboard_projects_path
- visibility_level = params.dig(:project, :visibility_level) || default_project_visibility
- content_for :page_specific_javascripts do
  = webpack_bundle_tag 'project_new'

.project-edit-container
  .project-edit-errors
    = render 'projects/errors'
  .row.prepend-top-default
    .col-lg-3.profile-settings-sidebar
      %h4.prepend-top-0
        New project
      - if import_sources_enabled?
        %p
          Create or Import your project from popular Git services
    .col-lg-9.js-toggle-container
      = form_for @project, html: { class: 'new_project' } do |f|
        .create-project-options
          .first-column
            .project-template
              .form-group
                = f.label :template_project, class: 'label-light' do
                  Create from template
                  = link_to icon('question-circle'), help_page_path("gitlab-basics/create-project"), target: '_blank', aria: { label: "What’s included in a template?" }, title: "What’s included in a template?", class: 'has-tooltip', data: { placement: 'top'}
                %div
                  = render 'project_templates', f: f
          - if import_sources_enabled?
            .second-column
              .project-import
                .form-group.clearfix
                  = f.label :visibility_level, class: 'label-light' do #the label here seems wrong
                    Import project from
                  .col-sm-12.import-buttons
                    %div
                      - if github_import_enabled?
                        = link_to new_import_github_path, class: 'btn import_github' do
                          = icon('github', text: 'GitHub')
                    %div
                      - if bitbucket_import_enabled?
                        = link_to status_import_bitbucket_path, class: "btn import_bitbucket #{'how_to_import_link' unless bitbucket_import_configured?}" do
                          = icon('bitbucket', text: 'Bitbucket')
                        - unless bitbucket_import_configured?
                          = render 'bitbucket_import_modal'
                    %div
                      - if gitlab_import_enabled?
                        = link_to status_import_gitlab_path, class: "btn import_gitlab #{'how_to_import_link' unless gitlab_import_configured?}" do
                          = icon('gitlab', text: 'GitLab.com')
                        - unless gitlab_import_configured?
                          = render 'gitlab_import_modal'
                    %div
                      - if google_code_import_enabled?
                        = link_to new_import_google_code_path, class: 'btn import_google_code' do
                          = icon('google', text: 'Google Code')
                    %div
                      - if fogbugz_import_enabled?
                        = link_to new_import_fogbugz_path, class: 'btn import_fogbugz' do
                          = icon('bug', text: 'Fogbugz')
                    %div
                      - if gitea_import_enabled?
                        = link_to new_import_gitea_url, class: 'btn import_gitea' do
                          = custom_icon('go_logo')
                          Gitea
                    %div
                      - if git_import_enabled?
                        %button.btn.js-toggle-button.import_git{ type: "button" }
                          = icon('git', text: 'Repo by URL')
                    - if gitlab_project_import_enabled?
                      .import_gitlab_project.has-tooltip{ data: { container: 'body' } }
                        = link_to new_import_gitlab_project_path, class: 'btn btn_import_gitlab_project project-submit' do
                          = icon('gitlab', text: 'GitLab export')

        .row
          .col-lg-12
            .js-toggle-content.hide
              %hr
                = render "shared/import_form", f: f
        %hr

        .row
          .form-group.col-xs-12.col-sm-6
            = f.label :namespace_id, class: 'label-light' do
              %span
                Project path
            .form-group
              .input-group
                - if current_user.can_select_namespace?
                  .input-group-addon
                    = root_url
                  = f.select :namespace_id, namespaces_options(namespace_id_from(params) || :current_user, display_path: true, extra_group: namespace_id_from(params)), {}, { class: 'select2 js-select-namespace', tabindex: 1}

                - else
                  .input-group-addon.static-namespace
                    #{root_url}#{current_user.username}/
                  = f.hidden_field :namespace_id, value: current_user.namespace_id
          .form-group.col-xs-12.col-sm-6.project-path
            = f.label :path, class: 'label-light' do
              %span
                Project name
            = f.text_field :path, placeholder: "my-awesome-project", class: "form-control", tabindex: 2, autofocus: true, required: true
        - if current_user.can_create_group?
          .help-block
            Want to house several dependent projects under the same namespace?
            = link_to "Create a group", new_group_path

        .form-group
          = f.label :description, class: 'label-light' do
            Project description
            %span.light (optional)
          = f.text_area :description, placeholder: 'Description format',  class: "form-control", rows: 3, maxlength: 250

        .form-group.visibility-level-setting
          = f.label :visibility_level, class: 'label-light' do
            Visibility Level
            = link_to icon('question-circle'), help_page_path("public_access/public_access"), aria: { label: 'Documentation for Visibility Level' }
          = render 'shared/visibility_level', f: f, visibility_level: visibility_level.to_i, can_change_visibility_level: true, form_model: @project, with_label: false

        = f.submit 'Create project', class: "btn btn-create project-submit", tabindex: 4
        = link_to 'Cancel', dashboard_projects_path, class: 'btn btn-cancel'

.save-project-loader.hide
  .center
    %h2
      %i.fa.fa-spinner.fa-spin
      Creating project & repository.
    %p Please wait a moment, this page will automatically refresh when ready.