index-vm.html 4.82 KB
Newer Older
1 2 3 4 5
{% load i18n %}
<div class="panel panel-default">
  <div class="panel-heading">
    <div class="pull-right toolbar">
      <div class="btn-group">
6
        <a href="#index-graph-view" data-index-box="vm" class="btn btn-default btn-xs"
7 8
          data-container="body"
          title="{% trans "summary view" %}"><i class="fa fa-dashboard"></i></a>
9
        <a href="#index-list-view" data-index-box="vm" class="btn btn-default btn-xs disabled"
10 11
          data-container="body"
          title="{% trans "list view" %}"><i class="fa fa-list"></i></a>
12
      </div>
13
      <span class="btn btn-default btn-xs infobtn" title="{% trans "List of your current virtual machines. Favourited ones are ahead of others." %}"><i class="fa fa-info-circle"></i></span>
14 15
    </div>
    <h3 class="no-margin">
16
      <i class="fa fa-desktop"></i> {% trans "Virtual machines" %}
17 18 19
    </h3>
  </div>
  <div class="list-group" id="vm-list-view">
20 21
    <div id="dashboard-vm-list">
      {% for i in instances %}
22 23
      <a href="{{ i.get_absolute_url }}" class="list-group-item
        {% if forloop.last and instances|length < 5 %} list-group-item-last{% endif %}">
24
        <span class="index-vm-list-name">
25
          <i class="fa {{ i.get_status_icon }}" title="{{ i.get_status_display }}"></i>
26 27
          {{ i.name }}
        </span>
28
        <small class="text-muted"> {{ i.short_hostname }}</small>
29 30
        <div class="pull-right dashboard-vm-favourite" data-vm="{{ i.pk }}">
          {% if i.fav %}
31
            <i class="fa fa-star text-primary title-favourite" title="{% trans "Unfavourite" %}"></i>
32
          {% else %}
33
            <i class="fa fa-star-o text-primary title-favourite" title="{% trans "Mark as favorite" %}"></i>
34 35
          {% endif %}
        </div>
36
      <div style="clear: both;"></div>
37
      </a>
38 39 40 41
      {% empty %}
        <div class="list-group-item list-group-item-last">
          {% trans "You have no virtual machines." %}
        </div>
42 43
      {% endfor %}
    </div>
44 45 46 47 48
    <style>
      .list-group-item-last {
        border-bottom: 1px solid #ddd !important;
      }
    </style>
49 50
    <div href="#" class="list-group-item list-group-footer">
      <div class="row">
Kálmán Viktor committed
51 52
        <form action="{% url "dashboard.views.vm-list" %}" method="GET" id="dashboard-vm-search-form">
          <div class="col-sm-6 col-xs-6 input-group input-group-sm">
53
            <input id="dashboard-vm-search-input" type="text" class="form-control" name="s"
Kálmán Viktor committed
54 55 56 57
            placeholder="{% trans "Search..." %}" />
            <div class="input-group-btn">
              <button type="submit" class="form-control btn btn-primary"><i class="fa fa-search"></i></button>
            </div>
58
          </div>
Kálmán Viktor committed
59
        </form>
60
        <div class="col-sm-6 text-right">
61
          <a class="btn btn-primary btn-xs" href="{% url "dashboard.views.vm-list" %}">
62
            <i class="fa fa-chevron-circle-right"></i>
63
            {% if more_instances > 0 %}
64 65 66 67 68
            {% blocktrans count counter=more_instances %}
              <strong>{{ counter }}</strong>  more
              {% plural %}
              <strong>{{ counter }}</strong>  more
            {% endblocktrans %}
69 70 71
            {% else %}
              {% trans "list" %}
            {% endif %}
72
          </a>
73
          <a class="btn btn-success btn-xs vm-create" href="{% url "dashboard.views.vm-create" %}"><i class="fa fa-plus-circle"></i> {% trans "new" %}</a>
74 75 76 77 78
        </div>
      </div>
    </div>
  </div>
  <div class="panel-body" id="vm-graph-view" style="display: none">
79 80 81
    <p class="pull-right">
    <input class="knob" data-fgColor="chartreuse" data-thickness=".4" data-max="{{ request.user.profile.instance_limit }}" data-width="100" data-height="100" data-readOnly="true" value="{{ instances|length|add:more_instances }}">
    </p>
82
    <p><span class="bigbig">{% blocktrans with count=running_vm_num %}<big>{{ count }}</big> running{% endblocktrans %}</span>
83
      <ul class="list-inline" style="max-height: 95px; overflow: hidden;">
84
        {% for vm in running_vms %}
85 86
        <li style="display: inline-block; padding: 2px;">
          <a href="{{vm.get_absolute_url}}" title="{{vm.primary_host.get_fqdn}}"  class="label label-success">
87
            <i class="fa {{vm.get_status_icon}}"></i> {{vm.name}}
88 89
          </a>
        </li>
90
        {% endfor %}
91 92 93 94
      </ul>
    </p>

    <div class="clearfix"></div>
95 96
    <div>
      <a style="float: right; margin-top: 17px;" href="{% url "dashboard.views.vm-list" %}" class="btn btn-primary btn-xs">
97
        <i class="fa fa-chevron-circle-right"></i>
98 99 100 101 102
        {% blocktrans count counter=instances|length|add:more_instances %}
          <strong>{{ counter }}</strong> machine total
          {% plural %}
          <strong>{{ counter }}</strong> machines total
        {% endblocktrans %}
103
      </a>
104
      <p class="big text-warning">{% blocktrans with count=stopped_vm_num %}<big>{{ count }}</big> stopped{% endblocktrans %}</p>
105 106 107
    </div>
  </div>
</div>