Advertisement
Guest User

Untitled

a guest
Aug 10th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 5.96 KB | None | 0 0
  1. '''
  2. Created on Nov 3, 2010
  3.  
  4. @author: JWH
  5. '''
  6.  
  7. import psycopg2
  8. import sys
  9. from PySide.QtGui import *
  10. from tabtest import Form
  11. #from PySide.QtSql import QSqlRelationalTableModel, QSqlTableModel, QSqlRecord, QSqlField
  12. from DatabaseLogic import DatabaseLogic
  13.  
  14. class Database():
  15.     '''
  16.    classdocs
  17.    '''
  18.  
  19.     def __init__(self):
  20.         '''
  21.        Constructor
  22.        '''
  23.         self.host = None
  24.         self.database = None
  25.         self.user = None
  26.         self.password = "kingkong1"
  27.         self.port = "5432"
  28.         self.sslmode = "require"
  29.         self.connection = None
  30.        
  31.     def connect(self):
  32.         self.connection = psycopg2.connect(host="localhost", database=self.database,user=self.user,password=self.password,port="5432")
  33.    
  34.     def disconnect(self):
  35.         self.connection.c.listlose()
  36.    
  37.    
  38.  
  39.    
  40. if __name__ == "__main__":
  41.     print "main"
  42.     db = Database()
  43.  
  44.     db.host = "localhost"
  45.     db.user = "postgres"
  46.     db.password = "kingkong1"
  47.     db.database = "vfs1"
  48.     db.connect()
  49.     cur = db.connection.cursor()
  50.    
  51.     dbl = DatabaseLogic(db)
  52.    
  53.     #tables=["Location","Users","Server","VirtualFS"]
  54.    
  55.    
  56.    
  57.     #cur.execute("SET search_path TO %s",(self.schemaname,))
  58.    
  59.     #LOCATIONS ANFANG
  60.    
  61.     #cur.execute('''select * from "config"."Location" ;''')
  62.    
  63.     app = QApplication(sys.argv)
  64.    
  65.     form = Form()
  66.    
  67.    
  68.    
  69.    
  70.      
  71.     form.locs_table=dbl.fillLocTable()
  72.    
  73.    
  74.     form.users_tree=dbl.fillUserTree()
  75.    
  76.     #USER
  77.     #User-Namen fetchen und dann in den Tree einaengen
  78.     #cur.execute("select usename from pg_user;")
  79.    
  80.    
  81.     #top_temp=cur.fetchall()
  82.     #top_items=["","","",""]
  83.    
  84.     #for i in range(len(top_temp)):
  85.     #    top_items[i]=top_items[i].join(top_temp[i])
  86.    
  87.     #print top_items
  88.     #print top_temp
  89.    
  90.     #items = []
  91.     #for i in range(len(top_items)):
  92.     #    items.append(QTreeWidgetItem(form.users_tree))
  93.     #    items[-1].setText(0,top_items[i])
  94.        
  95.     #form.users_tree.insertTopLevelItems(0,items)
  96.    
  97.     #Nun wollen wir die Privilegien der User und diese als Childs der jeweiligen Namen einhaengen
  98.     #for i in range(len(items)):
  99.     #   cur.execute("select ")
  100.     #cur.execute('''select usecreatedb,usesuper,usecatupd,valuntil from pg_user where usename like 'postgres';''')
  101.     #cur.execute('''select usecreatedb,usesuper,usecatupd,valuntil from pg_user where usename like %s;''',(form.users_tree.itemAt(0,1).text(0),))
  102.    
  103.    
  104.     #check=cur.fetchall();
  105.     #print check;
  106.    
  107.    
  108.     #Childs der TopLevelItems einfuegen... entweder Rechte mit den einzelnen Rechten als Childs oder direkt die Rechte fuer VFS
  109.    
  110.     #form.users_tree.itemAt(0,1).addChild(QTreeWidgetItem(form.users_tree.itemAt(0,1)))
  111.     #print form.users_tree.itemAt(0,1).childCount()
  112.     #form.users_tree.itemAt(0,1).child(0).setText(0,"Hugo")
  113.     #form.users_tree.itemAt(0,1).child(0).addChild(QTreeWidgetItem(form.users_tree.itemAt(0,1).child(0)))
  114.     #print form.users_tree.itemAt(0,1).child(0).child(0).setText(0,"Petersen")
  115.    
  116.     #cur.execute('''select attname from pg_attribute,pg_class where attrelid = pg_class.oid and relname = 'pg_user' and attnum>0;''')
  117.    
  118.    
  119.     #USER ENDE
  120.    
  121.    
  122.     #GROUP ANFANG!
  123.    
  124.     #cur.execute("select groname from pg_group;")
  125.    
  126.    
  127.     #top_temp=cur.fetchall()
  128.     #top_items=[]
  129.    
  130.     #for i in range(len(top_temp)):
  131.     #    top_items.append("".join(top_temp[i]))
  132.    
  133.     #print top_items
  134.     #print top_temp
  135.    
  136.     #items = []
  137.     #for i in range(len(top_items)):
  138.     #    items.append(QTreeWidgetItem(form.groups_tree))
  139.     #    items[-1].setText(0,top_items[i])
  140.        
  141.     #form.groups_tree.insertTopLevelItems(0,items)
  142.    
  143.    
  144.     #cur.execute("select usename from pg_user, pg_group where grolist @> array[usesysid];")
  145.    
  146.     #grp_temp=cur.fetchall()
  147.     #grp_items=[]
  148.    
  149.     #for i in range(len(grp_temp)):
  150.     #    grp_items.append("".join(grp_temp[i]))
  151.    
  152.     #print len(grp_items)
  153.     #print grp_temp
  154.    
  155.     #items = []
  156.     #for i in range(len(grp_items)):
  157.     #    items.append(QTreeWidgetItem(form.groups_tree.itemAt(0,1)))
  158.     #    items[-1].setText(0,grp_items[i])
  159.        
  160.        
  161.     #GROUP ENDE
  162.    
  163.    
  164.     #VFS
  165.    
  166.     cur.execute('''select "VFSID", "UID", "Name", "Description", "RootFolderID", "SchemaName" from "config"."VirtualFS" ;''')
  167.    
  168.     for j in range(cur.rowcount):
  169.         b=cur.fetchone()
  170.         for i in range(len(b)):
  171.             newItem = QTableWidgetItem(str(b[i]))
  172.             form.vfs_table.setItem(j,i, newItem)
  173.    
  174.     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%';''')
  175.     #Die Encryption-IDs entfernen
  176.  
  177.    
  178.     #Columnnames in eine Liste fetchen
  179.    
  180.     vfs_temp=cur.fetchall()
  181.     vfs_items=[]
  182.    
  183.     for i in range(len(vfs_temp)):
  184.             vfs_items.append("".join(vfs_temp[i]))
  185.        
  186.    
  187.    
  188.     for i in range(len(vfs_items)):
  189.         newItem = QTableWidgetItem(str(vfs_items[i]))
  190.         form.vfs_table.setHorizontalHeaderItem(i,newItem)
  191.        
  192.    
  193.     #print vfs_items
  194.    
  195.    
  196.     #VFS ENDE
  197.    
  198.     def __init__(self, parent=None):
  199.         super(Form, self).__init__(parent)
  200.         # Create widgets
  201.        
  202.         # "Tabbed Pane" for Widgetsheader
  203.         self.wadm_tab=QTabWidget()
  204.        
  205.         # Users Tree
  206.         #self.users_tree = QTreeWidget()
  207.         self.wadm_tab.addTab(self.users_tree,"Users")
  208.         #Tree instead of Table, with a config-Panel on the right side
  209.  
  210.         # Groups Tree
  211.         self.groups_tree = QTreeWidget()
  212.         self.wadm_tab.addTab(self.groups_tree,"Groups")
  213.         #Tree instead of Table, with a config-Panel on the right side
  214.        
  215.    
  216.        
  217.        
  218.     form.show()
  219.     #in_usr.show()
  220.    
  221.    
  222.     #cur.close()
  223.     db.connection.close()
  224.     sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement