<!--
Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this file except in compliance with the License. You may obtain a copy of
the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations under
the License.
-->

<% if (option.index === 0) {%>
<th> <%= option.section %> </th>
<% } else { %>
<td></td>
<% } %>
<td> <%= option.name %> </td>
<td>
  <div id="show-value">
    <%= option.value %> <button class="edit-button btn-mini btn"> Edit </button>
  </div>
  <div id="edit-value-form" style="display:none">
    <input class="value-input" type="text" value="<%= option.value %>" />
    <button id="save-value" class="btn btn-success btn-small"> Save </button>
    <button id="cancel-value" class="btn btn-danger btn-small"> Cancel </button>
  </div>
</td>
<td id="delete-value"> <i class="icon-trash"> </i> </td>
