<commit_before>= if request.xhr?
  = render :partial => '/layouts/new_notification'
%header.page-header
  %h1{:class => controller.controller_name}
    New Deployment in
    = @pool.name
  #obj_actions.button-container
    = link_to 'Cancel', pool_path(@pool), :class => 'button danger', :id => 'cancel_deployment_button'
  .corner &nbsp;

%section.content-section.deployment
  %header
    %h2
      Deployment Details

  .content
    - form_for :deployment, {:url => new_deployment_path, :method => :get} do
      = hidden_field :deployment, :pool_id
      %p
        What do you want to launch?
      %p
        Select the Deployable definition
        = select_tag :suggested_deployable_id, options_for_select([['other (enter below)', 'other']] + @suggested_deployables.map {|d| [d.name, d.id]}, params[:suggested_deployable_id])
      %p
        Or provide the URL of the Deployable definition
        = text_field('deployable', 'url')
      %p
        Name your deployment
        = text_field(:deployment, :name)
        %span.name_available
      %p
        Choose a realm
        = select :deployment, :frontend_realm_id, @realms.map{|r| [r.name, r.id]}, :include_blank => true
      = submit_tag 'Next', :class => 'button'
' -- user-entered deployable aren't really any more "custom" than suggested deployables -- they all go to an arbitrary httpd uRL to pull content.

:javascript
  // FIXME: This has a theoretical race condition: if responses come back out of order, the value
  // might reflect some previous entry and tell you a name is available when it's not.
  // Might be nice to build something in application.js to guard against this, and that also
  // introduces a ~250ms buffer so we don't do a lookup on every single keystroke...<commit_msg>extraneous line got added before push<commit_after>= if request.xhr?
  = render :partial => '/layouts/new_notification'
%header.page-header
  %h1{:class => controller.controller_name}
    New Deployment in
    = @pool.name
  #obj_actions.button-container
    = link_to 'Cancel', pool_path(@pool), :class => 'button danger', :id => 'cancel_deployment_button'
  .corner &nbsp;

%section.content-section.deployment
  %header
    %h2
      Deployment Details

  .content
    - form_for :deployment, {:url => new_deployment_path, :method => :get} do
      = hidden_field :deployment, :pool_id
      %p
        What do you want to launch?
      %p
        Select the Deployable definition
        = select_tag :suggested_deployable_id, options_for_select([['other (enter below)', 'other']] + @suggested_deployables.map {|d| [d.name, d.id]}, params[:suggested_deployable_id])
      %p
        Or provide the URL of the Deployable definition
        = text_field('deployable', 'url')
      %p
        Name your deployment
        = text_field(:deployment, :name)
        %span.name_available
      %p
        Choose a realm
        = select :deployment, :frontend_realm_id, @realms.map{|r| [r.name, r.id]}, :include_blank => true
      = submit_tag 'Next', :class => 'button'

:javascript
  // FIXME: This has a theoretical race condition: if responses come back out of order, the value
  // might reflect some previous entry and tell you a name is available when it's not.
  // Might be nice to build something in application.js to guard against this, and that also
  // introduces a ~250ms buffer so we don't do a lookup on every single keystroke...
{'fraction_non_alphanumeric': 0.10856807511737089, 'fraction_numerical': 0.0029342723004694834, 'mean_word_length': 3.219059405940594, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 19, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3619690', 'n_tokens_mistral': 1050, 'n_tokens_neox': 1016, 'n_words': 341}