|
|
- import MySQLdb
- import member
- import group
- from exceptions import MemberNotFoundException
-
-
- class Admidio:
- """Creates the Admidio Class"""
-
- def __init__(self, mysql_host, mysql_user, mysql_pass, mysql_db):
- self.db = MySQLdb.connect(
- host=mysql_host, user=mysql_user, passwd=mysql_pass, db=mysql_db)
- self.members = dict()
- self.groups = dict()
- self.userfields = None
- self.initAll()
-
- def __del__(self):
- self.db.close()
-
- def initAll(self):
- """initializes all Members and Groups"""
- c = self.db.cursor()
- # Initializing member. Get ID and Name for the user fields.
- sql = "SELECT usf_id,usf_name_intern FROM `adm_user_fields`"
- c.execute(sql)
- self.userfields = dict(c.fetchall())
-
- sql = """SELECT usr_id, usr_login_name, usr_password
- FROM adm_users WHERE usr_valid = 1"""
- c.execute(sql)
-
- for row in c.fetchall():
- self.members[row[0]] = member.Member(
- self.db, row[0], row[1],
- row[2], self.userfields, self)
- print(self.members[row[0]])
-
- sql = """SELECT rol_id, rol_name, rol_description FROM adm_roles
- WHERE rol_visible=1 AND rol_valid=1"""
- c.execute(sql)
- for row in c.fetchall():
- self.groups[row[0]] = group.Group(self.db, row[0], row[1], self)
-
- def getMemberFromID(self, user_id):
- """Returns Member object if user_id exists,""" \
- """ otherwise throws MemberNotFoundException"""
- if user_id in self.members:
- return self.members[user_id]
- else:
- raise MemberNotFoundException(
- f"Member with id {user_id} not found")
|