function tb_menu_hooks() { ?> <div class="wrap"> <?php if (!current_user_can('manage_options')) { wp_die(__('Vous n\'avez pas les droits suffisants pour accéder à cette page.')); } ?> <?php screen_icon(); ?> <!-- Titre --> <h2>Configuration des hooks de synchro</h2> <!-- Description --> <div class="description"> <p>Permet de modifier les URLs à appeler pour synchroniser des modifications de données entre les différents outils Tela.<br>Par exemple, lorsqu'un utilisateur change son adresse email dans le profil.</p> </div> <?php settings_errors(); ?> <?php require_once dirname(__FILE__) . '/../hooks/hooks.php'; $hidden_field_name = 'tb_submit_hidden'; $hooks_config = Hooks::getConfig(); // enregistre les changements de config en BdD if (isset($_POST[$hidden_field_name]) && $_POST[$hidden_field_name] == 'Y') { $hooks_config['email-modification-urls'] = preg_split('/\\r\\n|[\\r\\n]/', stripslashes($_POST['email-modification-urls'])); $hooks_config['user-creation-urls'] = preg_split('/\\r\\n|[\\r\\n]/', stripslashes($_POST['user-creation-urls'])); $hooks_config['error-recipients-emails'] = preg_split('/\\r\\n|[\\r\\n]/', stripslashes($_POST['error-recipients-emails'])); // suppression des lignes vides $hooks_config['email-modification-urls'] = array_filter($hooks_config['email-modification-urls']); $hooks_config['user-creation-urls'] = array_filter($hooks_config['user-creation-urls']); $hooks_config['error-recipients-emails'] = array_filter($hooks_config['error-recipients-emails']); update_option(Hooks::STORAGE_OPTION_NAME, json_encode($hooks_config)); ?> <!-- Confirmation de l'enregistrement --> <div class="updated"> <p><strong>Mise à jour effectuée</strong></p> </div> <?php } ?> <form method="post" action=""> <input type="hidden" name="<?php echo $hidden_field_name; ?> " value="Y"> <table class="form-table"> <tbody> </tr> <th scope="row"> <label for="email-modification-urls">URLs à appeler en cas de modification de l'adresse mail d'un utilisateur</label> </th> <td> <textarea id="email-modification-urls" name="email-modification-urls" rows="5" cols="80" class="regular-text"><?php echo implode(PHP_EOL, $hooks_config['email-modification-urls']); ?> </textarea> <p class="description"> Une URL par ligne.<br> Ex : http://example.org/changeusermail/{user_id}/{old_email}/to/{new_email}<br> Les paramètres {user_id}, {old_email} et {new_email} sont remplacés par les valeurs utilisateur lors de l'appel<br> Les lignes commençant par # seront ignorées </p> </td> <tr> </tr> <th scope="row"> <label for="user-creation-urls">URLs à appeler en cas de création d'un utilisateur</label> </th> <td> <textarea id="user-creation-urls" name="user-creation-urls" rows="3" cols="80" class="regular-text"><?php echo implode(PHP_EOL, $hooks_config['user-creation-urls']); ?> </textarea> <p class="description"> Une URL par ligne.<br> Ex : http://example.org/createuser/{user_id}/{new_email}<br> Les paramètres {user_id} et {new_email} sont remplacés par les valeurs utilisateur lors de l'appel<br> Les lignes commençant par # seront ignorées </p> </td> <tr> </tr> <th scope="row"> <label for="error-recipients-emails">Destinataires des emails d'erreurs des hooks</label> </th> <td> <textarea id="error-recipients-emails" name="error-recipients-emails" rows="3" cols="80" class="regular-text"><?php echo implode(PHP_EOL, $hooks_config['error-recipients-emails']); ?> </textarea> <p class="description"> Une adresse par ligne<br> Les lignes commençant par # seront ignorées </p> </td> <tr> </tbody> </table> <hr/> <p class="submit"> <input type="submit" name="Submit" class="button-primary" value="<?php esc_attr_e('Save Changes'); ?> " /> </p> </form> <?php }