Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
4.3 kB
5
Indexable
Never
function tiago_custom_user_register_fields()
{
    ?>

	 <p>
        <label for="password"><?php _e('Senha:', 'mydomain');?></label>
        <input type="password" name="password" id="password" required>
    </p>	

    <p>
        <label for="user_role"><?php _e('Escolha a sua função:', 'mydomain');?></label>
        <select  onchange="handleSelectionChange()"name="user_role" id="user_role" required placeholder="Selecione uma função...">
            <option value="candidate"><?php _e('Candidato', 'mydomain');?></option>
            <option value="employer"><?php _e('Empresa', 'mydomain');?></option>
        </select>
    </p>

    <p id="ville1">
    <label for="pays">Selecione o seu distrito:</label>
    <select id="ville" name="ville" required>
		<option value="">Selecione o seu distrito...</option>
		<option value="Açores">Açores</option>
		<option value="Aveiro">Aveiro</option>
		<option value="Beja">Beja</option>
		<option value="Braga">Braga</option>
		<option value="Bragança">Bragança</option>
		<option value="Castelo Branco">Castelo Branco</option>
		<option value="Coimbra">Coimbra</option>
		<option value="Évora">Évora</option>
		<option value="Faro">Faro</option>
		<option value="Guarda">Guarda</option>
		<option value="Leiria">Leiria</option>
		<option value="Lisboa">Lisboa</option>
		<option value="Madeira">Madeira</option>
		<option value="Portalegre">Portalegre</option>
		<option value="Porto">Porto</option>
		<option value="Santarém">Santarém</option>
		<option value="Setúbal">Setúbal</option>
		<option value="Viana do Castelo">Viana do Castelo</option>
		<option value="Vila Real">Vila Real</option>
		<option value="Viseu">Viseu</option>
    </select>
    </p>
    <script>

        // Récupère les éléments DOM nécessaires
        const selectRole = document.getElementById('user_role');
        const selectPays = document.getElementById('ville1');

        // Cache le formulaire de sélection de pays par défaut
        if (selectRole.value === 'candidate') {
            // Si "Candidato" est sélectionné, affiche le formulaire de sélection de pays
            selectPays.style.display = 'block';
        } else {
            // Sinon, cache le formulaire de sélection de pays
            selectPays.style.display = 'none';
        }

        // Ajoute un écouteur d'événements sur le formulaire de sélection de rôle


        function handleSelectionChange() {
            const selectRole = document.getElementById('user_role');
            const selectPays = document.getElementById('ville1');

            if (selectRole.value === 'candidate') {
                // Si "Candidato" est sélectionné, affiche le formulaire de sélection de pays
                selectPays.style.display = 'block';
            } else {
                // Sinon, cache le formulaire de sélection de pays
                selectPays.style.display = 'none';
            }
        }

    </script>


    <?php
}
// Ajoute la colonne "Ville" à la liste des utilisateurs
add_filter( 'manage_users_columns', 'ajouter_colonne_ville' );
function ajouter_colonne_ville( $columns ) {
    $columns['ville'] = __( 'Ville', 'text-domain' );
    return $columns;
}

// Affiche la valeur de la métadonnée "ville" dans la colonne "Ville"
add_action( 'manage_users_custom_column', 'afficher_ville', 10, 3 );
function afficher_ville( $value, $column_name, $user_id ) {
    if ( 'ville' === $column_name ) {
        $ville = get_user_meta( $user_id, 'ville', true );
        return $ville;
    }
    return $value;
}

add_action('register_form', 'tiago_custom_user_register_fields');

function tiago_custom_user_register($user_id)
{
    $ville = $_POST['ville'];
    if (isset($_POST['user_role'])) {
        $user_role = sanitize_text_field($_POST['user_role']);
        if ($user_role === 'candidate' || $user_role === 'employer') {
            add_user_meta($user_id, 'ville', $ville);
            $user = new WP_User($user_id);
            $user->set_role($user_role);

            // Add a password field
            if (isset($_POST['password']) && !empty($_POST['password'])) {
                $password = sanitize_text_field($_POST['password']);
                wp_set_password($password, $user_id);
            }
        }
    }
}
add_action('user_register', 'tiago_custom_user_register');