<!-- Error and Success templates -->

<script type="text/template" id="xos-error-template">
  <button id="close-error-box">Close Error Message</button>
  <h3>An error has occurred.</h3>
  <table class="test-error-table">
  <tr><td>Code:</td><td><%= status %></td></tr>
  <tr><td>Message:</td><td><%= statusText %></td></tr>
  </table>
</script>

<script type="text/template" id="xos-success-template">
  <button id="close-success-box">Close Success Message</button>
  <h3>Success!</h3>
  <table class="test-success-table">
  <tr><td>Code:</td><td><%= status %></td></tr>
  <tr><td>Message:</td><td><%= statusText %></td></tr>
  </table>
</script>

<script type="text/template" id="xos-navbutton-old">
  <button class="btn btn-default btn-xosnav" onclick="<%= router %>.navigate('<%= routeUrl %>', {trigger: true})"><%= name %></button><br>
</script>

<script type="text/template" id="xos-log-template">
  <tr id="<%= logMessageId %>">
     <td><%= success %></td>
     <td><%= what %></td>
     <td><%= status %></td>
     <td><%= statusText %></td>
  </tr>
</script>

<script type="text/template" id="xos-tabs-template">
  <ul class="xos-nav-list">
  <% _.each(tabs, function(tab) { %>
      <li class="xos-nav-item" id="xos-nav-<%= tab["region"] %>"><%= tab["name"] %></li>
  <% }); %>
  </ul>
</script>

<script type="text/template" id="xos-title-list">
  <h3><%= title %></h3>
</script>

<script type="text/template" id="xos-title-detail">
  <h3><%= title %></h3>
</script>


<script type="text/template" id="xos-navbutton">
  <li>
      <a href="<%= routeUrl %>">
          <i class="<%= iconClass %>"></i>
          <%= name %>
      </a>
  </li>
</script>

<!-- Deployment -->

<script type="text/template" id="xosAdmin-deployment-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>backend</th>
     <th>admin_tenant</th>
     <th># sites</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-deployment-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= backend_type %></td>
  <td><%= admin_tenant %></td>
  <td><%= sites.length %></td>
</script>

<script type="text/template" id="xosAdmin-deployment-detail-template">
  <h3 class="xos-detail-title">Detail View: Deployment</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>Backend:</td><td><input type="text" name="backend_type" value="<%= backend_type %>"></td></tr>
  <tr><td>Admin Tenant:</td><td><input type="text" name="admin_tenant" value="<%= admin_tenant %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Image -->

<script type="text/template" id="xosAdmin-image-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>disk_format</th>
     <th>container_format</th>
     <th>path</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-image-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= disk_format %></td>
  <td><%= container_format %></td>
  <td><%= path %></td>
</script>

<script type="text/template" id="xosAdmin-image-detail-template">
  <h3 class="xos-detail-title">Detail View: Image</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>Disk Format:</td><td><input type="text" name="backend_type" value="<%= disk_format %>"></td></tr>
  <tr><td>Container Format:</td><td><input type="text" name="admin_tenant" value="<%= container_format %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- NetworkTemplate -->

<script type="text/template" id="xosAdmin-networkTemplate-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>description</th>
     <th>visibility</th>
     <th>translation</th>
     <th>sharedNetworkName</th>
     <th>sharedNetworkId</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-networkTemplate-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= description %></td>
  <td><%= visibility %></td>
  <td><%= translation %></td>
  <td><%= sharedNetworkName %></td>
  <td><%= sharedNetworkId %></td>
</script>

<script type="text/template" id="xosAdmin-networkTemplate-detail-template">
  <h3 class="xos-detail-title">Detail View: NetworkTemplate</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>description:</td><td><input type="text" name="description" value="<%= description %>"></td></tr>
  <tr><td>Visibility:</td><td><input type="text" name="visibility" value="<%= visibility %>"></td></tr>
  <tr><td>Translation:</td><td><input type="text" name="translation" value="<%= translation %>"></td></tr>
  <tr><td>Shared Network Name:</td><td><input type="text" name="sharedNetworkName" value="<%= sharedNetworkName %>"></td></tr>
  <tr><td>Shared Network Id:</td><td><input type="text" name="sharedNetworkId" value="<%= sharedNetworkId %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Network -->

<script type="text/template" id="xosAdmin-network-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>template</th>
     <th>ports</th>
     <th>labels</th>
     <th>owner</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-network-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= idToName(template,"networkTemplates","name") %></td>
  <td><%= ports %></td>
  <td><%= labels %></td>
  <td><%= idToName(owner,"slices","name") %></td>
</script>

<script type="text/template" id="xosAdmin-network-detail-template">
  <h3 class="xos-detail-title">Detail View: Network</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>Template:</td><td><%= idToSelect("template",template,"networkTemplates","name") %></td></tr>
  <tr><td>Ports:</td><td><input type="text" name="ports" value="<%= ports %>"></td></tr>
  <tr><td>Labels:</td><td><input type="text" name="labels" value="<%= labels %>"></td></tr>
  <tr><td>Owner:</td><td><%= idToSelect("owner",owner,"slices","name") %></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- NetworkSliver -->

<script type="text/template" id="xosAdmin-networkSliver-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>network</th>
     <th>sliver</th>
     <th>ip</th>
     <th>port_id</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-networkSliver-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td><%= idToName(network,"networks","name") %></td>
  <td><%= idToName(sliver,"slivers","name") %></td>
  <td><%= ip %></td>
  <td><%= port_id %></td>
</script>

<script type="text/template" id="xosAdmin-networkSliver-detail-template">
  <h3 class="xos-detail-title">Detail View: Network</h3>
  <form>
  <table>
  <tr><td>Network:</td><td><input type="text" name="network" value="<%= network %>"></td></tr>
  <tr><td>Sliver:</td><td><input type="text" name="sliver" value="<%= sliver %>"></td></tr>
  <tr><td>Ip:</td><td><input type="text" name="ip" value="<%= ip %>"></td></tr>
  <tr><td>Port_id:</td><td><input type="text" name="port_id" value="<%= port_id %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- NetworkDeployment -->

<script type="text/template" id="xosAdmin-networkDeployment-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>network</th>
     <th>deployment</th>
     <th>net_id</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-networkDeployment-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td><%= idToName(network,"networks","name") %></td>
  <td><%= idToName(deployment,"deployments","name") %></td>
  <td><%= net_id %></td>
</script>

<script type="text/template" id="xosAdmin-networkDeployment-detail-template">
  <h3 class="xos-detail-title">Detail View: Network</h3>
  <form>
  <table>
  <tr><td>Network:</td><td><input type="text" name="network" value="<%= network %>"></td></tr>
  <tr><td>Sliver:</td><td><input type="text" name="deployment" value="<%= deployment %>"></td></tr>
  <tr><td>Ip:</td><td><input type="text" name="net_id" value="<%= net_id %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Node -->

<script type="text/template" id="xosAdmin-node-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>site</th>
     <th>deployment</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-node-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= idToName(site,"sites","name") %></td>
  <td><%= idToName(deployment,"deployments","name") %></td>
</script>

<script type="text/template" id="xosAdmin-node-detail-template">
  <h3 class="xos-detail-title">Detail View: Node</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>Site:</td><td><%= idToSelect("site",site,"sites","name") %></td></tr>
  <tr><td>Deployment:</td><td><%= idToSelect("deployment",deployment,"deployments","name") %></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- SliceRole -->

<script type="text/template" id="xosAdmin-sliceRole-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>role</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-sliceRole-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td><%= role %></td>
</script>

<script type="text/template" id="xosAdmin-sliceRole-detail-template">
  <h3 class="xos-detail-title">Detail View: Service</h3>
  <form>
  <table>
  <tr><td>Role:</td><td><input type="text" name="role" value="<%= role %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Service -->

<script type="text/template" id="xosAdmin-service-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>description</th>
     <th>enabled</th>
     <th>versionNumber</th>
     <th>published</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-service-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= description %></td>
  <td><%= enabled %></td>
  <td><%= versionNumber %></td>
  <td><%= published %></td>
</script>

<script type="text/template" id="xosAdmin-service-detail-template">
  <h3 class="xos-detail-title">Detail View: Service</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>description:</td><td><input type="text" name="description" value="<%= description %>"></td></tr>
  <tr><td>Version Number:</td><td><input type="text" name="versionNumber" value="<%= versionNumber %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Site -->

<script type="text/template" id="xosAdmin-site-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>url</th>
     <th>enabled</th>
     <th>login_base</th>
     <th>is_public</th>
     <th>abbreviated_name</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-site-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= site_url %></td>
  <td><%= enabled %></td>
  <td><%= login_base %></td>
  <td><%= is_public %></td>
  <td><%= abbreviated_name %></td>
</script>

<script type="text/template" id="xosAdmin-site-detail-template">
  <h3 class="xos-detail-title">Detail View: Site</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>url:</td><td><input type="text" name="site_url" value="<%= site_url %>"></td></tr>
  <tr><td>login_base:</td><td><input type="text" name="login_base" value="<%= login_base %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Slice -->

<script type="text/template" id="xosAdmin-slice-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>enabled</th>
     <th>omf_friendly</th>
     <th>description</th>
     <th>slice_url</th>
     <th>site</th>
     <th>max_slivers</th>
     <th>service</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-slice-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= enabled %></td>
  <td><%= omf_friendly %></td>
  <td><%= description %></td>
  <td><%= slice_url %></td>
  <td><%= idToName(site,"sites","name") %></td>
  <td><%= max_slivers %></td>
  <td><%= idToName(service,"services","name") %></td>
</script>

<script type="text/template" id="xosAdmin-slice-detail-template">
  <h3 class="xos-detail-title">Detail View: Slice</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>Enabled:</td><td><input type="checkbox" name="enabled" <% if (enabled) print("checked"); %>></td></tr>
  <tr><td>Description:</td><td><input type="text" name="description" value="<%= description %>"></td></tr>
  <tr><td>Url:</td><td><input type="text" name="slice_url" value="<%= slice_url %>"></td></tr>
  <tr><td>Max Slivers:</td><td><input type="text" name="max_slivers" value="<%= max_slivers %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- SliceDeployment -->

<script type="text/template" id="xosAdmin-sliceDeployment-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>slice</th>
     <th>deployment</th>
     <th>tenant_id</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-sliceDeployment-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td><%= idToName(slice,"slices","name") %></td>
  <td><%= idToName(deployment,"deployments","name") %></td>
  <td><%= tenant_id %></td>
</script>

<script type="text/template" id="xosAdmin-sliceDeployment-detail-template">
  <h3 class="xos-detail-title">Detail View: Slice Deployment</h3>
  <form>
  <table>
  <tr><td>Slice:</td><td><input type="text" name="slice" value="<%= slice %>"></td></tr>
  <tr><td>Deployment:</td><td><input type="text" name="deployment" value="<%= deployment %>"></td></tr>
  <tr><td>Tenant Id:</td><td><input type="text" name="tenant_id" value="<%= tenant_id %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- SlicePrivilege -->

<script type="text/template" id="xosAdmin-slicePrivilege-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>user</th>
     <th>slice</th>
     <th>role</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>

<script type="text/template" id="xosAdmin-slicePrivilege-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td><%= idToName(user,"users","username") %></td>
  <td><%= idToName(slice,"slices","name") %></td>
  <td><%= idToName(role,"sliceRoles","role") %></td>
</script>

<script type="text/template" id="xosAdmin-slicePrivilege-detail-template">
  <h3 class="xos-detail-title">Detail View: Slice Privilege</h3>
  <form>
  <table>
  <tr><td>User:</td><td><input type="text" name="user" value="<%= user %>"></td></tr>
  <tr><td>Slice:</td><td><input type="text" name="slice" value="<%= slice %>"></td></tr>
  <tr><td>Role:</td><td><input type="text" name="role" value="<%= role %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- Sliver -->

<script type="text/template" id="xosAdmin-sliver-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>name</th>
     <th>instance_id</th>
     <th>instance_name</th>
     <th>image</th>
     <th>creator</th>
     <th>slice</th>
     <th>node</th>
     <th>deploymentNetwork</th>
     <th>flavor</th>
     <th>userData</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-sliver-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= name %></td>
  <td><%= instance_id %></td>
  <td><%= instance_name %></td>
  <td><%= idToName(image,"images","name") %></td>
  <td><%= idToName(creator,"users","name") %></td>
  <td><%= idToName(slice,"slices","name") %></td>
  <td><%= idToName(node,"nodes","name") %></td>
  <td><%= idToName(deploymentNetwork,"deployments","name") %></td>
  <td><%= flavor %></td>
  <td><%= userData %></td>
</script>

<script type="text/template" id="xosAdmin-sliver-detail-template">
  <h3 class="xos-detail-title">Detail View: Sliver</h3>
  <form>
  <table>
  <tr><td>Name:</td><td><input type="text" name="name" value="<%= name %>"></td></tr>
  <tr><td>instance_id:</td><td><input type="text" name="instance_id" value="<%= instance_id %>"></td></tr>
  <tr><td>instance_name:</td><td><input type="text" name="instance_name" value="<%= instance_name %>"></td></tr>
  <tr><td>Image:</td><td><%= idToSelect("image",image,"images","name") %></td></tr>
  <tr><td>Creator:</td><td><%= idToSelect("creator",creator,"users","username") %></td></tr>
  <tr><td>Slice:</td><td><%= idToSelect("slice",slice,"slices","name") %></td></tr>
  <tr><td>Deployment:</td><td><%= idToSelect("deploymentNetwork",deploymentNetwork,"deployments","name") %></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- User -->

<script type="text/template" id="xosAdmin-user-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>username</th>
     <th>firstname</th>
     <th>lastname</th>
     <th>phone</th>
     <th>user_url</th>
     <th>site</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-user-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td class="objectLink"><%= username %></td>
  <td><%= firstname %></td>
  <td><%= lastname %></td>
  <td><%= phone %></td>
  <td><%= user_url %></td>
  <td><%= idToName(site,"sites","name") %></td>
</script>

<script type="text/template" id="xosAdmin-user-detail-template">
  <h3 class="xos-detail-title">Detail View: User</h3>
  <form>
  <table>
  <tr><td>User Name:</td><td><input type="text" name="username" value="<%= username %>"></td></tr>
  <tr><td>First Name:</td><td><input type="text" name="firstname" value="<%= firstname %>"></td></tr>
  <tr><td>Last Name:</td><td><input type="text" name="lastname" value="<%= lastname %>"></td></tr>
  <tr><td>Phone:</td><td><input type="text" name="phone" value="<%= phone %>"></td></tr>
  <tr><td>Url:</td><td><input type="text" name="user_url" value="<%= user_url %>"></td></tr>
  <tr><td>Site:</td><td><%= idToSelect("site",site,"sites","name") %></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>

<!-- UserDeployments -->

<script type="text/template" id="xosAdmin-userDeployment-list-template">
  <h3 class="xos-list-title"><%= title %></h3>
  <table class="test-table">
  <thead><tr>
     <th>id</th>
     <th>user</th>
     <th>deployment</th>
     <th>kuser_id</th>
  </tr></thead>
  <tbody></tbody>
  </table>
</script>


<script type="text/template" id="xosAdmin-userDeployment-listitem-template">
  <td class="objectLink"><%= id %></td>
  <td><%= idToName(user,"users","username") %></td>
  <td><%= idToName(deployment,"deployments","name") %></td>
  <td><%= kuser_id %></td>
</script>

<script type="text/template" id="xosAdmin-userDeployment-detail-template">
  <h3 class="xos-detail-title">Detail View: UserDeployment</h3>
  <form>
  <table>
  <tr><td>User:</td><td><input type="text" name="user" value="<%= user %>"></td></tr>
  <tr><td>Deployment:</td><td><input type="text" name="deployment" value="<%= deployment %>"></td></tr>
  <tr><td>kuser_id:</td><td><input type="text" name="kuser_id" value="<%= kuser_id %>"></td></tr>
  <tr><td colspan=2><button class="btn js-submit">Save</button></td></tr>
  </table>
  </form>
</script>
