/usr/lib/python2.6/site-packages/clcommon/cpapi/plugins
NameSizeModeActions
cpanel.py118650644editdlrm
cpanel.pyc111780644editdlrm
cpanel.pyo111780644editdlrm
directadmin.py45620644editdlrm
directadmin.pyc58230644editdlrm
directadmin.pyo58230644editdlrm
interworx.py13530644editdlrm
interworx.pyc20930644editdlrm
interworx.pyo20930644editdlrm
ispmanager.py45220644editdlrm
ispmanager.pyc50590644editdlrm
ispmanager.pyo50590644editdlrm
nopanel.py10020644editdlrm
nopanel.pyc16880644editdlrm
nopanel.pyo16880644editdlrm
plesk.py26420644editdlrm
plesk.pyc37440644editdlrm
plesk.pyo37440644editdlrm
universal.py14510644editdlrm
universal.pyc19680644editdlrm
universal.pyo19680644editdlrm
__init__.py410644editdlrm
__init__.pyc1540644editdlrm
__init__.pyo1540644editdlrm
Edit: /usr/lib/python2.6/site-packages/clcommon/cpapi/plugins/universal.py (1451B)
#!/usr/bin/python # -*- coding: utf-8 -*- """ api that is suitable for both cPanel, Directadmin, interWorx """ try: import MySQLdb except ImportError: MySQLdb = None from clcommon.cpapi.cpapiexceptions import NoPackage def _dblogin_cplogin_pairs(access, cplogin_lst=None, dbname='mysql'): """ Extracting database login control panel login pairs from mysql database supported for cPanel, interWorx, Directadmin :param dblogin: :param dbpass: :param dbhost: :param dbname: :param cplogin_lst: :return: """ if not MySQLdb: raise NoPackage('Can not connect to database; MySQL-python package not installed.') dbhost = access.get('host', 'localhost') dblogin = access['login'] dbpass = access['pass'] db = MySQLdb.connect(host=dbhost, user=dblogin, passwd=dbpass, db=dbname) cursor = db.cursor() sql = r"SELECT User, LEFT(Db, LOCATE('\\', Db) - 1) FROM db WHERE User != '' and Db LIKE '%\\\%'" if cplogin_lst: sql += r" and LEFT(Db, LOCATE('\\', Db) - 1) in ('%s')" % ("', '".join(cplogin_lst),) sql += r" GROUP BY User" cursor.execute(sql) data = cursor.fetchall() db.close() return data def get_admin_email(_hostname=None): """ Gets admin email :param str|None _hostname: hostname for testing :return: admin's email :rtype: string """ import socket return 'root@' + (_hostname or socket.gethostname())