Hacked By AnonymousFox

Current Path : /lib/python2.7/site-packages/hw_cpbackup/util/whm/
Upload File :
Current File : //lib/python2.7/site-packages/hw_cpbackup/util/whm/whmapi.py

import json
import logging
import subprocess

logger = logging.getLogger(__name__)


class WhmApi:
    """
    Enumerate WHM data from the current host
    """

    def __init__(self):
        self.whmapi1 = '/usr/sbin/whmapi1'

    def run_cmd(self, cmd, output='json', **kwargs):
        cmd_arr = [self.whmapi1, '--output={output}'.format(output=output), cmd]
        for k, v in kwargs.items():
            cmd_arr.append('{key}={value}'.format(key=k, value=v))

        p = subprocess.Popen(cmd_arr, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        out, err = p.communicate()
        if p.returncode != 0:
            raise Exception('Command failed: {err}'.format(err=err.decode()))

        if output == 'json':
            data = json.loads(out.decode(encoding='utf-8'))
        else:
            data = out.decode()

        return data

    def get_user_info(self, user):
        return self.run_cmd('listaccts', search=user, searchtype='user')

    def get_users_with_backups_enabled(self):
        _accounts_with_backups = []
        accounts = self.run_cmd('listaccts', want='backup,domain,user')
        if 'data' in accounts:
            for account in accounts['data']['acct']:
                if account.get('backup', 0) == 1:
                    _accounts_with_backups.append(account)
        return _accounts_with_backups

    def enable_user_backups(self, user):
        logger.info('enabling backups for {user}...'.format(user=user))
        self.run_cmd('modifyacct', user=user, BACKUP=1)
        logger.info('enabled backups for {user}'.format(user=user))

    def disable_user_backups(self, user):
        logger.info('disabling backups for {user}...'.format(user=user))
        self.run_cmd('modifyacct', user=user, BACKUP=0)
        logger.info('disabled backups for {user}'.format(user=user))

Hacked By AnonymousFox1.0, Coded By AnonymousFox
Warning: unlink(/tmp/138.201.207.117:802): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/142.11.217.94): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/142.11.217.94:80): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/94.217.11.142:80): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1