Parameter Management

<%= if @selected_template_for_params do %>

Viewing Parameter Relationships

OEM: <%= @selected_template_info.vendor %> | Device Type: <%= @selected_template_info.model %> | Template: <%= @selected_template_info.name %>

Parameters below show their current values for this specific OEM/Device combination. Set means the parameter has a value in this template. Not Set means no value is configured for this OEM/Device.

<% end %>

OEM & Device Types

<%= for {vendor, vendor_templates} <- @templates |> Enum.group_by(& &1.vendor) do %>
<%= if vendor == "universal", do: "Universal", else: vendor %>
<%= for template <- vendor_templates do %> <% end %>
<% end %>

Parameter Categories

<%= for category <- @categories do %> <% end %>

Parameters

<%= if @selected_template_for_params do %>
For: <%= @selected_template_info.vendor %> <%= @selected_template_info.model %>
<% end %>
<%= if @selected_category do %>
<%= for parameter <- @parameters do %>

<%= parameter.name %>

<%= parameter.key %>

<%= parameter.description %>

<%= parameter.data_type %> <%= if parameter.is_required do %> Required <% end %> <%= if @selected_template_for_params do %> <%= case get_template_value(@template_values, parameter.id) do %> <% {value, is_overridden} when not is_nil(value) -> %> <%= if is_overridden, do: "Overridden", else: "Set" %> Value: <%= value %> <% _ -> %> Not Set <% end %> <% end %>
<% end %>
<% else %>

Select a category to view parameters

<% end %>

Template Management

<%= for template <- @templates do %>

<%= template.name %>

<%= template.vendor %> - <%= template.model %>

<%= template.description %>

<%= if template.is_default do %> Default <% end %> <%= if template.is_active do %> Active <% else %> Inactive <% end %> <%= @template_parameter_counts[template.id] || 0 %> parameters
<% end %>
<%= if @selected_template do %>

Template Values

<%= for template_value <- @template_values do %>

<%= template_value.parameter_definition.name %>

<%= template_value.parameter_definition.key %>

Value: <%= template_value.value %>

Category: <%= template_value.parameter_definition.category.name %>
<%= if template_value.is_overridden do %> Overridden <% end %>
<% end %>
<% end %>
<%= if @show_parameter_form do %> <.live_component module={DaProductAppWeb.ParameterManagementLive.ParameterFormComponent} id="parameter-form" form_type={@form_type} parameter={@editing_parameter} categories={@categories} /> <% end %> <%= if @show_template_form do %> <.live_component module={DaProductAppWeb.ParameterManagementLive.TemplateFormComponent} id="template-form" form_type={@form_type} template={@editing_template} /> <% end %>