コード例 #1
0
/**
 * Atualiza dados do usuário no WebContatos
 * @param WP_User $user
 * @param unknown $permissao
 * @param unknown $grupo
 * @return boolean
 */
function webcontatos_update_user($user, $pass, $permissao, $grupo)
{
    try {
        $opt = webcontatos_get_config();
        $client = new SoapClient($opt['webcontatos_url'] . '/index.php?servicos=ServicoContatos.wsdl');
        $auth = $client->__soapCall('doLogin', array('nome' => $opt['webcontatos_user'], 'password' => $opt['webcontatos_pass']), array(), null, $output_headers);
        if (!$auth) {
            return false;
        }
        $ret = $client->__soapCall('UpdateUsuario', array('nome' => $user->user_login, 'pass' => $pass, 'grupo' => $grupo, 'permissao' => $permissao, 'nomeCompleto' => $user->first_name . ' ' . $user->last_name), array(), null, $output_headers);
    } catch (Exception $e) {
        webcontatos_report_error(print_r($e, true), $opt);
    }
}
コード例 #2
0
/**
 * 
 * @param WP_User $user
 */
function webcontatos_user_panel_update($user)
{
    if (!current_user_can('create_users') && !current_user_can('promote_users')) {
        return;
    }
    if (is_int($user)) {
        $user = get_user_by('id', $user);
    }
    if (!is_object($user)) {
        wp_die(__('can not locate a valid user', 'WebContatos'));
    }
    $opt = webcontatos_get_config();
    if ($user->user_login == $opt['webcontatos_user']) {
        return;
    }
    $perm = "D";
    if (array_key_exists('user_webcontatos', $_POST)) {
        $perm = $_POST['user_webcontatos'];
    }
    if (array_key_exists('grupo_webcontatos', $_POST)) {
        if (!is_object($user)) {
            $user = get_user_by('id', $user);
        }
        if ($user !== false) {
            update_user_meta($user->ID, 'grupo_webcontatos', $_POST['grupo_webcontatos']);
            update_user_meta($user->ID, 'user_webcontatos', $perm);
            //update_user_meta($user->ID. 'webcontatos_pass', $_POST['webcontatos_pass']); // TODO Campo para Senha
            $pass = uniqid();
            update_user_meta($user->ID, 'webcontatos_pass', md5($pass));
            webcontatos_update_user($user, $pass, $perm, $_POST['grupo_webcontatos']);
        }
    }
}