add user selection to create slice screen
[sface.git] / sface / screens / userscreen.py
index 9eb2e6c..6b800b7 100644 (file)
@@ -59,6 +59,9 @@ class UserView(QTableView):
         node_data = node_index.data().toString()
         self.emit(SIGNAL('hostnameClicked(QString)'), node_data)
 
+    def hideUnusableColumns(self):
+        self.hideColumn(SERVER_MEMBERSHIP_STATUS_COLUMN)
+
 class UserModel(QStandardItemModel):
     def __init__(self, rows=0, columns=4, parent=None):
          QStandardItemModel.__init__(self, rows, columns, parent)
@@ -126,6 +129,19 @@ class UserModel(QStandardItemModel):
 
         return change
 
+    def getResearchers(self):
+        researchers = []
+        item = self.invisibleRootItem()
+        children = item.rowCount()
+        for row in range(0, children):
+            childName = str(item.child(row, NAME_COLUMN).data(Qt.DisplayRole).toString())
+            childStatus = str(item.child(row, MEMBERSHIP_STATUS_COLUMN).data(Qt.DisplayRole).toString())
+
+            if (childStatus == user_status['add']) or (childStatus == user_status['in']):
+                researchers.append(childName)
+
+        return researchers
+
     def readUserRecord(self, i):
         rec_file = config.getAuthorityListFile(i)
         if os.path.exists(rec_file):