# TEST DU MODULE CHANGETIERS

## Corrections effectuées

### 1. Boutons multiples - RÉSOLU ✅
- Supprimé l'affichage du bouton dans `printObjectLine` (appelé pour chaque ligne)
- Supprimé l'affichage dans `printCommonFooter` (doublon)
- Le bouton s'affiche maintenant uniquement dans `addMoreActionsButtons` (appelé une fois)

### 2. Changement de tiers ne fonctionne pas - EN COURS

#### Modification effectuée :
Changé la condition dans `doActions` :
```php
// AVANT (ne marchait pas)
if ($action == 'confirm_change_thirdparty' && GETPOST('confirm') == 'yes')

// APRÈS (devrait marcher)
if ($action == 'confirm_change_thirdparty' && GETPOST('confirm'))
```

#### Logs ajoutés pour debug :
- `error_log("CHANGETIERS: Processing change thirdparty action");`
- `error_log("CHANGETIERS: New socid = " . $new_socid);`

## TESTS À FAIRE

### Test 1 : Vérifier les boutons
1. Rafraîchissez la page du devis (Ctrl+F5)
2. Vérifiez qu'il n'y a plus qu'UN SEUL bouton "Changer le tiers"

### Test 2 : Tester le changement
1. Cliquez sur le bouton "Changer le tiers"
2. Que se passe-t-il ?
   - ✅ Un formulaire s'affiche avec un champ pour sélectionner le nouveau tiers ?
   - ❌ Une erreur s'affiche ?
   - ❌ Rien ne se passe ?

### Test 3 : Si le formulaire s'affiche
1. Sélectionnez un nouveau tiers
2. Cliquez sur "Confirmer"
3. Que se passe-t-il ?
   - ✅ Le tiers change et un message de succès s'affiche ?
   - ❌ Une erreur s'affiche ? (Quelle erreur ?)
   - ❌ Rien ne se passe ?

## PROBLÈMES POSSIBLES

### Si le formulaire ne s'affiche pas
Problème : Le hook `formObjectOptions` n'est peut-être pas appelé
Solution : Utiliser un autre hook ou afficher le formulaire directement dans `addMoreActionsButtons`

### Si une erreur s'affiche au clic sur Confirmer
- Vérifier les logs PHP (voir check-logs.ps1)
- Regarder le code source HTML pour voir les messages d'erreur
- Copier le message d'erreur exact

### Si le changement ne s'enregistre pas
Problème : La fonction `changetiers_change_thirdparty()` a un bug
Solution : Vérifier le fichier `lib/changetiers.lib.php`

## PROCHAINES ÉTAPES

1. Testez maintenant et dites-moi :
   - Combien de boutons vous voyez ?
   - Ce qui se passe quand vous cliquez sur le bouton ?
   - S'il y a des erreurs, copiez le message exact

2. Si besoin, je modifierai le code en fonction de vos retours
