Wednesday, July 15, 2026 2:54:38 AM
> _edit.html.erb
<h1>Modify Server</h1>

<div class="uk-margin">
  <label class="uk-form-label esm-text-subtle">Selected server</label>
  <div class="uk-form-controls">
    <%= select_tag :servers, options_for_servers, class: "uk-select uk-width-large@m uk-width-1-1" %>
  </div>
</div>

<%= tag.div id: "app-server", data: { server: @server, setting: @setting, mod: @mod, mods: @mods, reward: @reward, server_names: @server_names, community_id: current_community.community_id } do %>
  <%= form_for @server, url: community_server_path(@community.public_id, @server.public_id), method: :patch, "@submit.prevent": "disableSaveServerButton" do |f| %>
    <% if @server.v2_ui? %>
      <%= f.hidden_field :ui_version, value: "2.0.0" %>
      <div class="uk-grid-match" uk-grid>
        <div class="uk-width-3-4@xl uk-width-2-3@m uk-width-1-1">
          <div class="alert alert-info" uk-alert>
            <strong>Next Steps</strong>

            <p>To complete the preview setup:</p>
            <ol class="uk-margin-small">
              <li>Follow the <%= link_to "setup instructions", wiki_getting_started_v2_path, target: "_blank" %> to upgrade your server</li>
              <li>Don't forget to download the v2 server key using the "Download Server Key" button below</li>
            </ol>
          </div>
        </div>

        <div class="uk-width-1-4@xl uk-width-1-3@m uk-width-1-1">
          <div class="alert alert-info" uk-alert>
            <strong>ESM v2 Preview Access Enabled</strong>

            <p class="uk-text-small">Remember: If you switch back to the original version, you'll need to use your original server key and mod.</p>

            <%= link_to "Switch to Original Version",
              disable_v2_community_server_path(@community.public_id, @server.public_id),
              class: "uk-button esm-button uk-button-small",
              method: :patch
            %>
          </div>
        </div>
      </div>

      <div class="uk-grid-divider" uk-grid>
        <div class="uk-width-1-2@xl uk-width-1-1">
          <%= render partial: "servers/server_info", locals: { f: f } %>
        </div>
        <div class="uk-width-1-2@xl uk-width-1-1">
          <%= render partial: "servers/server_settings", locals: { f: f } %>
        </div>
      </div>

      <%= render partial: "servers/server_config", locals: { f: f } %>
    <% else %>
      <% if current_community.allow_v2_servers? %>
        <div class="alert alert-info" uk-alert>
          <strong>ESM v2 Preview Available</strong> <span class="uk-label">NEW</span>

          <p>You can now enable the updated server management interface.</p>

          <%= link_to "Try Preview Version",
            enable_v2_community_server_path(@community.public_id, @server.public_id),
            class: "uk-button uk-button-primary color-white uk-button-small",
            method: :patch
          %>
        </div>
      <% end %>

      <div class="uk-grid-divider" uk-grid>
        <div class="uk-width-1-2@xl uk-width-1-1">
          <%= render partial: "servers/server_info_v1", locals: { f: f } %>
        </div>
        <div class="uk-width-1-2@xl uk-width-1-1">
          <%= render partial: "servers/server_settings_v1", locals: { f: f } %>
        </div>
      </div>
    <% end %>

    <div class="uk-margin"><br>
    </div>

    <div class="uk-position-bottom-right uk-position-medium uk-visible@m">
      <button class="uk-button esm-button uk-margin-right esm-button-danger" type="button" uk-tooltip="You will be required to confirm removal" uk-toggle="target: #remove-server" :disabled="processing">Remove Server</button>

      <% if @server.v2_ui? %>
        <%= link_to "Download Server Key",
          server_token_community_server_path(current_community.public_id, @server.public_id),
          class: "uk-button esm-button uk-margin-right",
          target: "_blank",
          ":disabled": "processing"
        %>

        <%= link_to "Download Server Config",
          server_config_community_server_path(current_community.public_id, @server.public_id),
          class: "uk-button esm-button uk-margin-right",
          target: "_blank",
          ":disabled": "processing"
        %>
      <% else %>
        <%= link_to "Download Server Key", key_community_server_path(current_community.public_id, @server.public_id), class: "uk-button esm-button uk-margin-right", target: "_blank", ":disabled": "processing" %>
      <% end %>

      <%= f.submit "Update Server", class: "uk-button esm-button-confirm", ":disabled": "disableSaveServerButton" %>
    </div>

    <div class="uk-hidden@m uk-margin-top uk-margin-bottom" uk-margin>
      <button class="uk-button esm-button uk-margin-right esm-button-danger uk-width-1-1" type="button" uk-tooltip="You will be required to confirm removal" uk-toggle="target: #remove-server" :disabled="processing">Remove Server</button>

      <% if @server.v2_ui? %>
        <%= link_to "Download Server Key",
          server_token_community_server_path(current_community.public_id, @server.public_id),
          class: "uk-button esm-button uk-margin-right uk-width-1-1",
          target: "_blank", ":disabled": "processing"
        %>

        <%= link_to "Download Server Config",
          server_config_community_server_path(current_community.public_id, @server.public_id),
          class: "uk-button esm-button uk-margin-right uk-width-1-1",
          target: "_blank", ":disabled": "processing"
        %>
      <% else %>
        <%= link_to "Download Server Key", key_community_server_path(current_community.public_id, @server.public_id), class: "uk-button esm-button uk-margin-right uk-width-1-1", target: "_blank", ":disabled": "processing" %>
      <% end %>

      <%= f.submit "Update Server", class: "uk-button esm-button-confirm uk-width-1-1", ":disabled": "disableSaveServerButton" %>
    </div>
  <% end %>

  <%= render partial: "servers/add_mod" %>
  <%= render partial: "servers/edit_mod" %>
  <%= render partial: "servers/remove_server" %>

  <% if @server.recently_created? %>
    <%= render partial: "servers/server_key" %>
  <% end %>

  <% if params[:config_changed] %>
    <%= render partial: "servers/server_config_modal" %>
  <% end %>
<% end %>

<% if @server.recently_created? %>
  <script>
    // Open the key modal as soon as the page loads
    $(window).on("load", function() {
      UIkit.modal("#key-download").show();
    });
  </script>
<% elsif params[:config_changed] %>
  <script>
    // Open the config modal as soon as the page loads
    $(window).on("load", function() {
      UIkit.modal("#config-modal").show();
    });
  </script>
<% end %>
All opinions represented herein are my own
- © 2024 - 2026 itsthedevman
- build 43aa0d7