{% extends "base.html" %}

{% block styles %}
{{ super() }}
<style type="text/css">
.tg  {border-collapse:collapse;border-spacing:0;}
.tg td{font-family:Arial, sans-serif;font-size:14px;padding:1px 1px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;}
.tg th{font-family:Arial, sans-serif;font-size:14px;padding:1px 1px;font-weight:normal;padding:border-style:solid;border-width:1px;overflow:hidden;word-break:normal;}
.tg .tg-yw4l{vertical-align:top}

@media only screen and (max-width: 768px) {
        /* Force table to not be like tables anymore */
        #no-more-tables table,
        #no-more-tables thead,
        #no-more-tables tbody,
        #no-more-tables th,
        #no-more-tables td,
        #no-more-tables tr {
        display: block;
        }
         
        /* Hide table headers (but not display: none;, for accessibility) */
        #no-more-tables thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
        }
         
        #no-more-tables tr { border: 1px solid #ccc; }
          
        #no-more-tables td {
        /* Behave like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
        white-space: normal;
        text-align:left;
        }
         
        #no-more-tables td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align:left;
        font-weight: bold;
        }
         
        /*
        Label the data
        */
        #no-more-tables td:before { content: attr(data-title); }
        }
</style>
{% endblock %}

{% block scripts %}
{{ super() }}
<script type="text/javascript">
$('a[data-toggle="tooltip"]').tooltip({
    animated: 'fade',
    placement: 'bottom',
    html: true
});
</script>

<script>
// Only run what comes next *after* the page has loaded
addEventListener("DOMContentLoaded", function() {
  // Grab all of the elements with a class of command
  // (which all of the buttons we just created have)
  var commandButtons = document.querySelectorAll(".command");
  for (var i=0, l=commandButtons.length; i<l; i++) {
    var button = commandButtons[i];
    // For each button, listen for the "click" event
    button.addEventListener("click", function(e) {
      // When a click happens, stop the button
      // from submitting our form (if we have one)
    e.preventDefault();

    if (window.confirm("Are you sure?")) {
      var clickedButton = e.target;
      var command = clickedButton.value;
      var vmid = clickedButton.getAttribute('vmid');

      // Now we need to send the data to our server
      // without reloading the page - this is the domain of
      // AJAX (Asynchronous JavaScript And XML)
      // We will create a new request object
      // and set up a handler for the response
      var request = new XMLHttpRequest();
      request.onload = function() {
          // We could do more interesting things with the response
          // or, we could ignore it entirely
          //alert(request.responseText);
      };
      // We point the request at the appropriate command
      request.open("GET", "/vmanager/" + command + "/" + vmid, true);
      // and then we send it off
      request.send();
      alert("command " + command + " executed.");
      window.location.reload();
   }
  });
 }
}, true);
</script>
{% endblock %}

{% block page_content %}
{% if current_user.fresh_user == True %}
  <div class="row">
  <center>
  <img class="img-responsive img-rounded" src="{{ url_for('static', filename='images/createvm.gif') }}" alt="ping">
  </center><br/>
  </div>
{% endif %}

  <div class="row">

  {% if inv_deployments != [] %}
  <div class="col-md-12">
  <div class="panel panel-info" id="deployments">
  <div class="panel-heading">Deployments</div>
  <div class="panel-body"><p>
  <div id="no-more-tables">
  <table class="table table-hover table-striped table-condensed cf">
    <thead>
     <tr>
      <th>Name</th>
      <th>CPU</th>
      <th>Mem</th>
      <th>HDD</th>
      <th>Network</th>
      <th>Control</th>
      <th>Remote</th>
      <th>Time Left</th> 
     </tr>
    </thead>
    <tbody>
    {% for deploy in inv_deployments %}
     {% if deploy.enabled == False %}
     <tr class="danger">
     <td data-title="Name"><b>{% if status[deploy.machine_id] == 'running' %}<font color="green">{% else %}<font color="red">{% endif %}{{ deploy.machine_alias }}</font></b></td>
     <td data-title="CPU">{{ deploy.machine_cpu }} Cores</td>
     <td data-title="Memory">{{ deploy.machine_mem }} MB</td>
     <td data-title="Disk">{{ deploy.machine_hdd }} GB</td>
     <td data-title="Network">{% for addr in deploy.machine_addresses %} {{ addr.ip }}<br /> {% endfor %}</td>
     <td data-title="Control"> </td>
     <td data-title="Remote"> </td>
     <td data-title="Time Left"><button class="btn btn-default btn-success" onclick="window.open('/vmanager/activate/{{ deploy.machine_id }}');"><span class="glyphicon glyphicon-bell" aria-hidden="true"></span> Activate</td>
    {% else %}
      {% if deploy.warning == True %}
     <tr class="warning">
      {% else %}
     <tr>
      {% endif %} 
     <td data-title="Name"><a class="rrd" data-toggle="tooltip" title="ID# {{ deploy.machine_id }}<br />Deployment state: {{ status[deploy.machine_id] }}"><b>{% if status[deploy.machine_id] == 'running' %}<font color="green">{% else %}<font color="red">{% endif %}{{ deploy.machine_alias }}</font></b></a></td>
     <td data-title="CPU"><a class="rrd" data-toggle="tooltip" title="<img src='data:image/png;base64,{{ rrd[deploy.machine_id]['cpu'] }}' />">{{ deploy.machine_cpu }} Cores</a></td>
     <td data-title="Memory"><a class="rrd" data-toggle="tooltip" title="<img src='data:image/png;base64,{{ rrd[deploy.machine_id]['mem'] }}' />">{{ deploy.machine_mem }} MB</a></td>
     <td data-title="Disk"><a class="rrd" data-toggle="tooltip" title="<img src='data:image/png;base64,{{ rrd[deploy.machine_id]['hdd'] }}' />">{{ deploy.machine_hdd }} GB</a></td>
     <td data-title="Network">{% for addr in deploy.machine_addresses %}<a class="rrd" data-toggle="tooltip" title="<img src='data:image/png;base64,{{ rrd[deploy.machine_id]['net'] }}' />">{{ addr.ip }}</a><br />{% endfor %}</td>
     <td data-title="Control">{% if status[deploy.machine_id] == 'running' %}
            <button class="confirm command command-vmshutdown btn btn-default btn-warning" value="vmshutdown" vmid="{{ deploy.machine_id }}"><span class="glyphicon glyphicon-off" aria-hidden="true"></span> Shutdown</button>
            <button class="confirm command command-vmstop btn btn-default btn-danger" value="vmstop" vmid="{{ deploy.machine_id }}"><span class="glyphicon glyphicon-alert" aria-hidden="true"></span> Force Stop</button>
          {% else %}             
            <button class="command command-vmstart btn btn-default btn-success" value="vmstart" vmid="{{ deploy.machine_id }}"><span class="glyphicon glyphicon-play" aria-hidden="true"></span> Start</button>
          {% endif %}</td>
    <td data-title="Remote">{% if status[deploy.machine_id] == 'running' %}
            <button class="btn btn-default btn-info" onclick="window.open('/vmanager/vmvnc/{{ deploy.machine_id }}', '_blank');"><span class="glyphicon glyphicon-console" aria-hidden="true"></span> Console</button>
    {% if deploy.warning == True %}
    <td data-title="Time Left"><button class="btn btn-default btn-success" onclick="window.open('/vmanager/activate/{{ deploy.machine_id }}');"><span class="glyphicon glyphicon-bell" aria-hidden="true"></span> Renew ({{ deploy.daysleft }} days left)</button></td>
    {% else %}
    <td data-title="Time Left">{{ deploy.daysleft }} day(s)</td>
    {% endif %}

          {% endif %}</td>
    </tr>
    {% endif %}
    {% endfor %}
    </tbody>
   </table>
  </div>
  <button class="btn btn-default" onclick="window.open('{{ url_for('main.dashboard') }}')"><span class="glyphicon glyphicon-plus" aria-hiddent="true"></span> Create</button>
  </div>
  </div>
  </div>
  {% endif %}

  {% if inv_services != [] %}
  <div class="col-md-12">
  <div class="panel panel-info" id="services">
  <div class="panel-heading">Services</div>
  <div class="panel-body"><p>
  <div id="no-more-tables"> 
  <table class="table table-hover table-striped table-condensed cf">
   <thead>
    <tr>
     <th>Category</th>
     <th>Description</th>
     <th>Last Charged</th>
     <th>Time Left</th>
    </tr>
    <tbody>
    {% for service in inv_services %}
    {% if service.enabled == False %}
     <tr class="danger">
    {% else %}
      {% if service.warning == True %}
      <tr class="warning">
      {% else %}
      <tr>
      {% endif %} 
    {% endif %}
     <td data-title="Category">{{ service.category }}</td>
     <td data-title="Description" >{{ service.description }}</td>
     <td data-title="Last Charged">{{ moment(service.date_last_charge).format('lll') }} ({{ moment(service.date_last_charge).fromNow() }})</td>
    {% if service.enabled == False %}
    <td data-title="Time Left"><button class="btn btn-default btn-success" onclick="window.open('/smanager/activate/{{ service.pid }}');"><span class="glyphicon glyphicon-bell" aria-hidden="true"></span> Activate</button></td>
    {% else %}
      {% if service.warning == True %}
    <td data-title="Time Left"><button class="btn btn-default btn-success" onclick="window.open('/smanager/activate/{{ service.pid }}');"><span class="glyphicon glyphicon-bell" aria-hidden="true"></span> Renew ({{ service.daysleft }} days left)</button></td>
      {% else %}
    <td data-title="Time Left">{{ service.daysleft }} day(s)</td>
      {% endif %}
    {% endif %}
    </tr >
    {% endfor %}
    </tbody>
   </table>
  </div>
  <button class="btn btn-default" onclick="window.open('{{ url_for('main.dashboard') }}')"><span class="glyphicon glyphicon-plus" aria-hiddent="true"></span> Order</button>
  </div>
  </div>
  </div>
  {% endif %}

  {% if inv_domains != [] %}
  <div class="col-md-12">
  <div class="panel panel-info" id="domains">
  <div class="panel-heading">Domains</div>
  <div class="panel-body"><p>
  <div id="no-more-tables">
  <table class="table table-hover table-striped table-condensed cf">
   <thead>
    <tr>
     <th>Name</th>
     <th>Expiry Date</th>
     <th>Time Left</th>
    </tr>
    <tbody>
    {% for domain in inv_domains %}
    <tr>
    <td data-title="Domain"><b><a href="http://{{ domain.fqdn }}">{{ domain.fqdn }}</a></b></td>
    <td data-title="Expiry Date">{{ domain.date_expire }}</td>
    {% if domain.enabled == False %}
      <td data-title="Time Left">EXPIRED</td>
    {% else %}
      {% if domain.warning == True %}
      <td data-title="Time Left"><button class="btn btn-default btn-warning" onclick="window.open('/dmanager/activate/{{ domain.pid }}');"><span class="glyphicon glyphicon-bell" aria-hidden="true"></span> Renew </button></td>
      {% else %}
      <td data-title="Time Left">{{ domain.daysleft }} day(s)</td>
      {% endif %}
    {% endif %}

    </tr>
    {% endfor %}
    </tbody>
   </table>
   </div>
  <button class="btn btn-default" onclick="window.open('{{ url_for('main.dashboard') }}')"><span class="glyphicon glyphicon-plus" aria-hiddent="true"></span> Order</button>
  </div>
  </div>
  </div>
  {% endif %}

  {% if inv_addresses != [] %}
  <div class="col-md-12">
  <div class="panel panel-info" id="addresses">
  <div class="panel-heading">Addresses</div>
  <div class="panel-body"><p>
  <div id="no-more-tables"> 
  <table class="table table-hover table-striped table-condensed cf">
   <thead>
    <tr>
     <th>IP</th>
     <th>Region</th>
     <th>MAC Addr.</th>
     <th>Reverse DNS</th>
    </tr>
    <tbody>
    {% for address in inv_addresses %}
    <tr>
     <td data-title="IP">{{ address.ip }}</td>
     <td data-title="Region">{{ region[address.region_id] }}</td>
     <td data-title="MAC">{{ address.mac }}</td>
     <td data-title="RDNS">{{ address.rdns }}</td>
    {% endfor %}
    </tr>
    </tbody>
   </table>
   </div>
  <!--<button class="btn btn-default" onclick="window.open('{{ url_for('main.dashboard') }}')"><span class="glyphicon glyphicon-plus" aria-hiddent="true"></span> Assign</button> -->
  </div>
  </div>
  </div>
 {% endif %}

 </div>


 <div class="row">
 </div>

{% endblock %}