Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '''
- Created on Nov 3, 2010
- @author: JWH
- '''
- import psycopg2
- import sys
- from PySide.QtGui import *
- from tabtest import Form
- #from PySide.QtSql import QSqlRelationalTableModel, QSqlTableModel, QSqlRecord, QSqlField
- from DatabaseLogic import DatabaseLogic
- class Database():
- '''
- classdocs
- '''
- def __init__(self):
- '''
- Constructor
- '''
- self.host = None
- self.database = None
- self.user = None
- self.password = "kingkong1"
- self.port = "5432"
- self.sslmode = "require"
- self.connection = None
- def connect(self):
- self.connection = psycopg2.connect(host="localhost", database=self.database,user=self.user,password=self.password,port="5432")
- def disconnect(self):
- self.connection.c.listlose()
- if __name__ == "__main__":
- print "main"
- db = Database()
- db.host = "localhost"
- db.user = "postgres"
- db.password = "kingkong1"
- db.database = "vfs1"
- db.connect()
- cur = db.connection.cursor()
- dbl = DatabaseLogic(db)
- #tables=["Location","Users","Server","VirtualFS"]
- #cur.execute("SET search_path TO %s",(self.schemaname,))
- #LOCATIONS ANFANG
- #cur.execute('''select * from "config"."Location" ;''')
- app = QApplication(sys.argv)
- form = Form()
- form.locs_table=dbl.fillLocTable()
- form.users_tree=dbl.fillUserTree()
- #USER
- #User-Namen fetchen und dann in den Tree einaengen
- #cur.execute("select usename from pg_user;")
- #top_temp=cur.fetchall()
- #top_items=["","","",""]
- #for i in range(len(top_temp)):
- # top_items[i]=top_items[i].join(top_temp[i])
- #print top_items
- #print top_temp
- #items = []
- #for i in range(len(top_items)):
- # items.append(QTreeWidgetItem(form.users_tree))
- # items[-1].setText(0,top_items[i])
- #form.users_tree.insertTopLevelItems(0,items)
- #Nun wollen wir die Privilegien der User und diese als Childs der jeweiligen Namen einhaengen
- #for i in range(len(items)):
- # cur.execute("select ")
- #cur.execute('''select usecreatedb,usesuper,usecatupd,valuntil from pg_user where usename like 'postgres';''')
- #cur.execute('''select usecreatedb,usesuper,usecatupd,valuntil from pg_user where usename like %s;''',(form.users_tree.itemAt(0,1).text(0),))
- #check=cur.fetchall();
- #print check;
- #Childs der TopLevelItems einfuegen... entweder Rechte mit den einzelnen Rechten als Childs oder direkt die Rechte fuer VFS
- #form.users_tree.itemAt(0,1).addChild(QTreeWidgetItem(form.users_tree.itemAt(0,1)))
- #print form.users_tree.itemAt(0,1).childCount()
- #form.users_tree.itemAt(0,1).child(0).setText(0,"Hugo")
- #form.users_tree.itemAt(0,1).child(0).addChild(QTreeWidgetItem(form.users_tree.itemAt(0,1).child(0)))
- #print form.users_tree.itemAt(0,1).child(0).child(0).setText(0,"Petersen")
- #cur.execute('''select attname from pg_attribute,pg_class where attrelid = pg_class.oid and relname = 'pg_user' and attnum>0;''')
- #USER ENDE
- #GROUP ANFANG!
- #cur.execute("select groname from pg_group;")
- #top_temp=cur.fetchall()
- #top_items=[]
- #for i in range(len(top_temp)):
- # top_items.append("".join(top_temp[i]))
- #print top_items
- #print top_temp
- #items = []
- #for i in range(len(top_items)):
- # items.append(QTreeWidgetItem(form.groups_tree))
- # items[-1].setText(0,top_items[i])
- #form.groups_tree.insertTopLevelItems(0,items)
- #cur.execute("select usename from pg_user, pg_group where grolist @> array[usesysid];")
- #grp_temp=cur.fetchall()
- #grp_items=[]
- #for i in range(len(grp_temp)):
- # grp_items.append("".join(grp_temp[i]))
- #print len(grp_items)
- #print grp_temp
- #items = []
- #for i in range(len(grp_items)):
- # items.append(QTreeWidgetItem(form.groups_tree.itemAt(0,1)))
- # items[-1].setText(0,grp_items[i])
- #GROUP ENDE
- #VFS
- cur.execute('''select "VFSID", "UID", "Name", "Description", "RootFolderID", "SchemaName" from "config"."VirtualFS" ;''')
- for j in range(cur.rowcount):
- b=cur.fetchone()
- for i in range(len(b)):
- newItem = QTableWidgetItem(str(b[i]))
- form.vfs_table.setItem(j,i, newItem)
- cur.execute('''select attname from pg_attribute,pg_class where attrelid = pg_class.oid and relname = 'VirtualFS' and attnum>0 and attname not like '%Type%';''')
- #Die Encryption-IDs entfernen
- #Columnnames in eine Liste fetchen
- vfs_temp=cur.fetchall()
- vfs_items=[]
- for i in range(len(vfs_temp)):
- vfs_items.append("".join(vfs_temp[i]))
- for i in range(len(vfs_items)):
- newItem = QTableWidgetItem(str(vfs_items[i]))
- form.vfs_table.setHorizontalHeaderItem(i,newItem)
- #print vfs_items
- #VFS ENDE
- def __init__(self, parent=None):
- super(Form, self).__init__(parent)
- # Create widgets
- # "Tabbed Pane" for Widgetsheader
- self.wadm_tab=QTabWidget()
- # Users Tree
- #self.users_tree = QTreeWidget()
- self.wadm_tab.addTab(self.users_tree,"Users")
- #Tree instead of Table, with a config-Panel on the right side
- # Groups Tree
- self.groups_tree = QTreeWidget()
- self.wadm_tab.addTab(self.groups_tree,"Groups")
- #Tree instead of Table, with a config-Panel on the right side
- form.show()
- #in_usr.show()
- #cur.close()
- db.connection.close()
- sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement