From e64d30332a41aaa081e6fb6292e03016611bdb3f Mon Sep 17 00:00:00 2001
From: Őry Máté <ory.mate@cloud.bme.hu>
Date: Wed, 27 Aug 2014 09:49:24 +0200
Subject: [PATCH] dashboard: use inheritance for MassOperationView.factory

---
 circle/dashboard/views.py | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/circle/dashboard/views.py b/circle/dashboard/views.py
index 0116282..61df042 100644
--- a/circle/dashboard/views.py
+++ b/circle/dashboard/views.py
@@ -1012,7 +1012,6 @@ def get_operations(instance, user):
 
 class MassOperationView(OperationView):
     template_name = 'dashboard/mass-operate.html'
-    effect = "info"
 
     @classmethod
     def get_urlname(cls):
@@ -1102,10 +1101,8 @@ class MassOperationView(OperationView):
 
     @classmethod
     def factory(cls, vm_op, extra_bases=(), **kwargs):
-        kwargs.update({'op': vm_op.op, 'icon': vm_op.icon,
-                       'effect': vm_op.effect})
         return type(str(cls.__name__ + vm_op.op),
-                    tuple(list(extra_bases) + [cls]), kwargs)
+                    tuple(list(extra_bases) + [cls, vm_op]), kwargs)
 
 
 class MassMigrationView(MassOperationView):
@@ -1113,6 +1110,7 @@ class MassMigrationView(MassOperationView):
     icon = "info"
     op = "migrate"
     icon = "truck"
+    effect = "info"
 
     def get_context_data(self, **kwargs):
         ctx = super(MassMigrationView, self).get_context_data(**kwargs)
--
libgit2 0.26.0