%h3.page-title New file
%hr
.file-editor
  = form_tag(project_new_tree_path(@project, @id), method: :put, class: 'form-horizontal form-new-file') do
    .form-group.commit_message-group
      = label_tag 'file_name', class: 'control-label' do
        File name
      .col-sm-10
        .input-group
          %span.input-group-addon
            = @path[-1] == "/" ? @path : @path + "/"
          = text_field_tag 'file_name', params[:file_name], placeholder: "sample.rb", required: true, class: 'form-control'
          %span.input-group-addon
            on
            %span= @ref

    .form-group.commit_message-group
      = label_tag :encoding, class: "control-label" do
        Encoding
      .col-sm-10
        = select_tag :encoding, options_for_select([ "base64", "text" ], "text"), class: 'form-control'
    .file-holder
      .file-title
        %i.fa.fa-file
      .file-content.code
        %pre#editor= params[:content]

    = render 'shared/commit_message_container', params: params,
             placeholder: 'Add new file'
    = hidden_field_tag 'content', '', id: 'file-content'
    = render 'projects/commit_button', ref: @ref,
              cancel_path: project_tree_path(@project, @id)

:javascript
  ace.config.set("modePath", gon.relative_url_root + "#{Gitlab::Application.config.assets.prefix}/ace-src-noconflict")
  var editor = ace.edit("editor");

  disableButtonIfAnyEmptyField($('.form-new-file'), '.form-control', '.btn-create')

  $(".js-commit-button").click(function(){
    $("#file-content").val(editor.getValue());
    $(".file-editor form").submit();
  });
