Browse Source

Correction du cas où le rangement ne doit pas supprimer la position de départ.

svn/attic/tags/v010/106508
eric@smellup.net 5 years ago
parent
commit
e1757fe3c5
  1. 2
      inc/ncore_noisette.php
  2. 7
      ncore/ncore.php

2
inc/ncore_noisette.php

@ -314,8 +314,10 @@ function noisette_deplacer($plugin, $noisette, $rang_destination, $stockage = ''
// - ou par un tableau à deux entrées fournissant le squelette et le rang (qui est unique pour un squelette donné).
if (!empty($noisette) and (is_string($noisette) or is_numeric($noisette) or is_array($noisette))) {
// Avant de deplacer la noisette on sauvegarde sa description et son rang origine.
// On met le rang à zéro pour indiquer que la noisette est sortie temporairement du rangement.
$description = ncore_noisette_decrire($plugin, $noisette, $stockage);
$rang_origine = $description['rang'];
$description['rang'] = 0;
// Si les rangs origine et destination sont identiques on ne fait rien !
if ($rang_destination != $rang_origine) {

7
ncore/ncore.php

@ -338,9 +338,14 @@ function ncore_noisette_ranger($plugin, $description, $rang_destination, $stocka
// On ajoute la noisette au rang choisi même si on doit écraser un index existant.
// Il est donc nécessaire de gérer la collision en amont de cette fonction.
// De même, l'ancien rang de la noisette n'est pas supprimé, cela est aussi à gérer en amont.
// De plus, l'ancien rang de la noisette est pas supprimé sauf si celui-ci est à zéro pour indiquer
// que la noisette a été temporairement sortie.
$rang_source = $description['rang'];
$description['rang'] = $rang_destination;
$noisettes[$squelette_contextualise][$rang_destination] = $description;
if ($rang_source != 0) {
unset($noisettes[$squelette_contextualise][$rang_source]);
}
// On met à jour la meta
ecrire_config("${plugin}_noisettes", $noisettes);

Loading…
Cancel
Save