+{% endblock %}
\ No newline at end of file
diff --git a/templates/instances.html b/templates/instances.html
index 22edd2e..3277835 100644
--- a/templates/instances.html
+++ b/templates/instances.html
@@ -13,12 +13,16 @@
{% include 'errors.html' %}
+
+
+ {% trans "Incorrect username or password." %}
+
+ {% endif %}
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/templates/logout.html b/templates/logout.html
new file mode 100644
index 0000000..f82ad5d
--- /dev/null
+++ b/templates/logout.html
@@ -0,0 +1,12 @@
+{% extends "base.html" %}
+{% load i18n %}
+{% block title %}{% trans "Sign Out" %}{% endblock %}
+{% block content %}
+
+
+
+
{% trans "Successful log out" %}
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/templates/sidebar.html b/templates/sidebar.html
index 9a4d92d..1b0960f 100644
--- a/templates/sidebar.html
+++ b/templates/sidebar.html
@@ -5,8 +5,10 @@
-
-
+ {% if request.user.is_superuser %}
+
+
+ {% endif %}
diff --git a/users/migrations/0001_initial.py b/users/migrations/0001_initial.py
index 1c99b96..3989532 100644
--- a/users/migrations/0001_initial.py
+++ b/users/migrations/0001_initial.py
@@ -17,6 +17,8 @@ class Migration(migrations.Migration):
name='UserInstance',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('is_change', models.BooleanField(default=False)),
+ ('is_delete', models.BooleanField(default=False)),
('instance', models.ForeignKey(to='instances.Instance')),
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
],
diff --git a/users/migrations/0002_auto_20150227_1353.py b/users/migrations/0002_userinstance_is_block.py
similarity index 63%
rename from users/migrations/0002_auto_20150227_1353.py
rename to users/migrations/0002_userinstance_is_block.py
index 6ed7eba..d6f3a08 100644
--- a/users/migrations/0002_auto_20150227_1353.py
+++ b/users/migrations/0002_userinstance_is_block.py
@@ -13,13 +13,7 @@ class Migration(migrations.Migration):
operations = [
migrations.AddField(
model_name='userinstance',
- name='is_change',
- field=models.BooleanField(default=False),
- preserve_default=True,
- ),
- migrations.AddField(
- model_name='userinstance',
- name='is_delete',
+ name='is_block',
field=models.BooleanField(default=False),
preserve_default=True,
),
diff --git a/users/models.py b/users/models.py
index 2334901..850f613 100644
--- a/users/models.py
+++ b/users/models.py
@@ -8,6 +8,7 @@ class UserInstance(models.Model):
instance = models.ForeignKey(Instance)
is_change = models.BooleanField(default=False)
is_delete = models.BooleanField(default=False)
+ is_block = models.BooleanField(default=False)
def __unicode__(self):
return self.instance.name
\ No newline at end of file
diff --git a/vrtManager/connection.py b/vrtManager/connection.py
index b0de72d..09cd005 100644
--- a/vrtManager/connection.py
+++ b/vrtManager/connection.py
@@ -435,9 +435,27 @@ class wvmConnect(object):
vname = {}
for name in self.get_instances():
dom = self.get_instance(name)
- vname[dom.name()] = {'status': dom.info()[0], 'uuid': dom.UUIDString()}
+ mem = util.get_xml_path(dom.XMLDesc(0), "/domain/currentMemory")
+ mem = int(mem) * 1024
+ cur_vcpu = util.get_xml_path(dom.XMLDesc(0), "/domain/vcpu/@current")
+ if cur_vcpu:
+ vcpu = cur_vcpu
+ else:
+ vcpu = util.get_xml_path(dom.XMLDesc(0), "/domain/vcpu")
+ vname[dom.name()] = {'status': dom.info()[0], 'uuid': dom.UUIDString(), 'vcpu': vcpu, 'memory': mem}
return vname
+ def get_user_instances(self, name):
+ dom = self.get_instance(name)
+ mem = util.get_xml_path(dom.XMLDesc(0), "/domain/currentMemory")
+ mem = int(mem) / 1024
+ cur_vcpu = util.get_xml_path(dom.XMLDesc(0), "/domain/vcpu/@current")
+ if cur_vcpu:
+ vcpu = cur_vcpu
+ else:
+ vcpu = util.get_xml_path(dom.XMLDesc(0), "/domain/vcpu")
+ return {'name': dom.name(), 'status': dom.info()[0], 'uuid': dom.UUIDString(), 'vcpu': vcpu, 'memory': mem}
+
def close(self):
"""Close connection"""
# to-do: do not close connection ;)
diff --git a/webvirtcloud/urls.py b/webvirtcloud/urls.py
index 5638a4f..7357695 100644
--- a/webvirtcloud/urls.py
+++ b/webvirtcloud/urls.py
@@ -2,7 +2,7 @@ from django.conf.urls import patterns, include, url
from django.contrib import admin
urlpatterns = patterns('',
- # url(r'^login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}, name='login'),
+ url(r'^login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}, name='login'),
url(r'^logout/$', 'django.contrib.auth.views.logout', {'template_name': 'logout.html'}, name='logout'),
url(r'^login/$', 'django.contrib.auth.views.login'),