Exemple #1
0
function OnAppvCD_AdminServicesTabFieldsSave($params)
{
    if ($_POST[OnAppvCDModule::MODULE_NAME . '_Prev'] === 'null') {
        $module = new OnAppvCDModule($params);
        $OnAppUser = $module->getObject('User');
        $OnAppUser->id = $_POST[$module::MODULE_NAME]['OnAppUserID'];
        $OnAppUser = $OnAppUser->load();
        if (!is_null($OnAppUser->error)) {
            $lang = $module->loadLang()->Admin;
            $errorMsg = $lang->Error_LinkUser . ":\\n";
            $errorMsg .= $OnAppUser->getErrorsAsString("\\n");
            echo '<script>alert("' . $errorMsg . '");</script><meta http-equiv="refresh" content="0">';
            exit;
        } else {
            $id = $OnAppUser->id;
            $login = $OnAppUser->login;
        }
        # save user link
        Capsule::table(OnAppvCDModule::MODULE_NAME . '_Users')->insert(['serviceID' => $params['serviceid'], 'WHMCSUserID' => $params['userid'], 'OnAppUserID' => $id, 'serverID' => $params['serverid'], 'billingType' => $params['configoption2']]);
        $password = $module::generatePassword();
        $OnAppUser = $module->getObject('User');
        $OnAppUser->id = $id;
        $OnAppUser->password = $password;
        $OnAppUser->save();
        # save OnApp login and password
        Capsule::table('tblhosting')->where('id', $params['serviceid'])->update(['password' => encrypt($password), 'username' => $login]);
    } else {
        $prev = json_decode(html_entity_decode($_POST[OnAppvCDModule::MODULE_NAME . '_Prev']));
        # check server change
        if ($prev->serverID != $_POST['server']) {
            $_POST[OnAppvCDModule::MODULE_NAME]['serverID'] = $_POST['server'];
        }
        Capsule::table(OnAppvCDModule::MODULE_NAME . '_Users')->where('id', $prev->id)->update($_POST[OnAppvCDModule::MODULE_NAME]);
    }
}