Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
Est-ce que le bug initial a été corrigé (pour que les posts déplacés s'affichent dans le bon ordre, il faut que l'affichage se fasse par rapport à la date et non par rapport à l'ID) ?
Hors ligne
???
Ce n'est pas un bug, c'est PunBB qui fait le tri et non mon mod.
Mais il n'y a aucune raison (à part des modifications dans la BDD) que vous ayez un ordre différent avec ID avec POSTED, si ?
Hors ligne
???
Ce n'est pas un bug, c'est PunBB qui fait le tri et non mon mod.Mais il n'y a aucune raison (à part des modifications dans la BDD) que vous ayez un ordre différent avec ID avec POSTED, si ?
Ben si, justement... 
Si on déplace (grâce à ta mod) des posts d'un topic 'récent' dans un topic plus 'ancient', il peut y avoir un pbm de classement (en fait, c'est carrément la merde..
).
Il faut donc explicitement changer l'ordre de la requête, en l'occurrence rajouter une étape dans le 'readme.txt' concernant cette modification (POSTED au lieu de ID, comme tu l'as toi-même suggéré).
Hors ligne
Non pas d'accord, j'ai du mal à comprendre même quel est l'intérêt...
Si je reprends ton exemple :
Un message d'un topic 'récent' transféré dans un topic 'ancien' se trouvera à la fin dans le topic 'ancien' Ce qui est normal puisque ce message est plus récent que les messages du topic réceptacle. Pourquoi le mettre avant des messages qui sont antérieurs ?
Cependant j'ai fait un bout de code pour des besoins internes (bordel pendant une migration d'un système bancal).
Attention c'est du perso ce n'est pas une mod parfaite juste un moyen pour arriver à faire (je crois) ce que tu demande.. Il ne fonctionne que si movepost est intégré. La valeur 99999999 en fin de traitement est une valeur arbitraire, elle doit être changé si vous avez un jour la possibilité un jour d'avoir un post_id aussi gros sur votre forum, toutefois je pense avoir prévu suffisement large 
Dans movepost.php
Trouver
else
message($lang_common['Bad request']);Au-dessus insérer
elseif (isset($_GET['pid']) && isset($_GET['tid']) && isset($_GET['tri']))
{
$pid = intval($_GET['pid']);
$tid = intval($_GET['tid']);
$tr = strval($_GET['tri']);
$tri =($tr == 'up') ? '<' : '>';
$order = ($tr == 'up') ? 'desc' : 'asc';
$result = $db->query('SELECT id, poster, poster_id, poster_ip, poster_email, message, hide_smilies, posted, edited, edited_by FROM '.$db->prefix.'posts WHERE topic_id='.$tid.' AND id '.$tri.'= '.$pid.' ORDER BY id '.$order.' LIMIT 2') or error('Unable to fetch first and second posts info', __FILE__, __LINE__, $db->error());
$num = $db->num_rows($result);
if ($num != 2)
message($lang_common['Bad request']);
list($id, $poster, $poster_id, $poster_ip, $poster_email, $message, $hide_smilies, $posted, $edited, $edited_by) = $db->fetch_row($result);
list($id2, $poster2, $poster_id2, $poster_ip2, $poster_email2, $message2, $hide_smilies2, $posted2, $edited2, $edited_by2) = $db->fetch_row($result);
$poster_ip = ($poster_ip != '') ? $poster_ip : 'NULL';
$poster_ip2 = ($poster_ip2 != '') ? $poster_ip2 : 'NULL';
$poster_email = ($poster_email != '') ? $poster_email : 'NULL';
$poster_email2 = ($poster_email2 != '') ? $poster_email2 : 'NULL';
$edited = ($edited != '') ? $edited : 'NULL';
$edited2 = ($edited2 != '') ? $edited2 : 'NULL';
//Swith the posts
$db->query('UPDATE '.$db->prefix.'posts SET poster=\''.$db->escape($poster2).'\',poster_id='.$poster_id2.',poster_ip=\''.$poster_ip2.'\',poster_email='.$poster_email2.',message=\''.$db->escape($message2).'\',hide_smilies='.$hide_smilies2.',posted='.$posted2.',edited='.$edited2.',edited_by=\''.$db->escape($edited_by2).'\' WHERE id='.$id) or error('Unable to switch post 1', __FILE__, __LINE__, $db->error());
$db->query('UPDATE '.$db->prefix.'posts SET poster=\''.$db->escape($poster).'\',poster_id='.$poster_id.',poster_ip=\''.$poster_ip.'\',poster_email='.$poster_email.',message=\''.$db->escape($message).'\',hide_smilies='.$hide_smilies.',posted='.$posted.',edited='.$edited.',edited_by=\''.$db->escape($edited_by).'\' WHERE id='.$id2) or error('Unable to switch post 2', __FILE__, __LINE__, $db->error());
//Update search_matches
$db->query('UPDATE '.$db->prefix.'search_matches SET post_id =99999999 WHERE post_id='.$id) or error('Unable to switch 1 to 99999999', __FILE__, __LINE__, $db->error());
$db->query('UPDATE '.$db->prefix.'search_matches SET post_id ='.$id.' WHERE post_id='.$id2) or error('Unable to switch 2 to 1', __FILE__, __LINE__, $db->error());
$db->query('UPDATE '.$db->prefix.'search_matches SET post_id ='.$id2.' WHERE post_id=99999999') or error('Unable to switch 2 to 99999999', __FILE__, __LINE__, $db->error());
//Update topics
update_topic($tid);
redirect('viewtopic.php?pid='.$id.'#p'.$id, 'Switch entre les messages fait');
}Dans viewtopic.php trouver
<li class="postquote"><a href="movepost.php?id='.$cur_post['id'].'">'.$lang_topic['Move'].'</a>'.$lang_topic['Link separator'].'</li>et juste après sans aller à la ligne :
<li class="postquote"><a href="movepost.php?pid='.$cur_post['id'].'&tid='.$id.'&tri=up">Monte</a>'.$lang_topic['Link separator'].'</li><li class="postquote"><a href="movepost.php?pid='.$cur_post['id'].'&tid='.$id.'&tri=down">Descend</a>'.$lang_topic['Link separator'].'</li>Ce mod permet d'échanger le contenu de deux posts mitoyens dans un même sujet (en gros, en échangeant les IDs de ces deux posts)
ex si :
id:1000, message:'tagada ga ga gada', poster:'tutu'
id:1001, message:'togodo go go godo' poster:'titi'en fin de traitement = clic sur 'bas' dans 1000 (ou 'haut' pour 1001)
id:1000, message:'togodo go go godo', poster:'titi'
id:1001, message:'tagada ga ga gada', poster:'tutu'C'est ce que tu voulais ?
Dernière modification par fpouget (17-02-2008 20:52:18)
Hors ligne
C'est ce que tu voulais ?
Mais non.. 
(très franchement, je n'ai pas regardé le code fourni)
Ce que je voulais dire (et peut-être mon exemple n'était pas très explicite, désolé), c'est que à partir du moment où on décide de ré-organiser l'ordre des posts (ce qui est un effet induit par cette mod), il faut DECIDER (et spécifier explicitement dans le code) l'ordre dans lequel ils seront affichés.
(la date étant le critère le plus logique).
Donc, la seule modification que je suggérais, c'est le remplacement de 'ORDER by ID' par 'ORDER by POSTED' dans la requête de viewforum.php.
Non seulement cela règle les problèmes éventuels du déplacement de posts (cette mod), mais également les problèmes de changement de date des mêmes posts (autre mod).
A noter également qu'il faudra voir comment traiter le 'first_post' d'un topic recevant des posts par cette mod, lors du portage en 1.3..
Hors ligne
Ce mod ne réorganise pas l'ordre des posts, seul le code original de PunBB le fait ...
Pour éviter que ce dialogue de sourd ne s'éternise, je t'invite à mettre des exemples explicites sur mon forum de test : http://georezo.net/demo (login : demo, mdp : demo).
Au moins là ou pourra parler à partir d'exemple concret 
Hors ligne
Euh ! Je veux bien des exemples pour être sûr que je n'ai pas fait d'erreur 
Hors ligne
Euh ! Je veux bien des exemples pour être sûr que je n'ai pas fait d'erreur
Oui, désolé, j'ai un peu laissé tomber ces derniers jours... 
De toutes façons, j'ai été sur ton site de test, puis j'ai commencé à essayer de réfléchir au moyen de reproduire le bug... ...et là, j'avoue que j'ai été bloqué. 
Donc : je suis certain que j'ai eu un problème lorsque j'ai testé (et installé) cette mod (à l'époque version 1.2), ce qui m'a conduit à changer l'ordre (id -> date) de la requête... MAIS je ne me souviens plus des conditions initiales qui peuvent poser des problèmes (dans le cas général, tout marche bien, évidemment).
Hors ligne
Bonjour à tous,
je viens d'installer le mod Move Post 1.3 sur un punBB 1.2.15
et j'ai un souci d'affichage des caractères accentués...
Comment puis-je le résoudre ?

Hors ligne
Bonjour,
Peut-on installer ce mod sur FluxBB 1.2.18 avec un taux de risque raisonnable sur un forum en prod ?
Quelqu'un l'a-t-il déjà fait ?
Quelqu'un a-t-il migré vers FluxBB avec cette mod installée préalablement sur PunBB ?
Vaut-il mieux installer la mod avant ou après migration de PunBB 1.2.15 vers FluxBB 1.2.18 ?
[EDIT]
Ouuups ! suis peut-être pas sur le bon forum, là ? 
Désolé : une recherche google m'a amené ici, mais j'aurais peut-être plutôt dû être dans "Mods et plugins" ?
Pas fait gaffe... :boulet:
[/EDIT]
Dernière modification par jibe74 (12-05-2008 16:55:27)
Hors ligne
Ca fonctionne sur 1.2.18 sans probleme, je conseillerai de l'installer apres la mise a jour
Hors ligne
Merci pour ta réponse !
Me reste plus qu'à décider de quelle migration je fais 
Hors ligne
J'ai dû faire une boulette, le déplacement d'un message avec Fluxbb et MovePost 1.3 me l'a tout simplement supprimé.
Je vais donc auditer mes fichiers.
Hors ligne
Tu as trouvé la boulette Sagitarius ?
Hors ligne
Je viens d'installer ce Mod trouvé après une recherche ... obstinée
(je ne l'ai pas trouvé dans la liste des Mod, je n'ai pas les yeux en face des trous, ou il n'y est effectivement pas ?)
Après installation, j'ai trouvé sur l'écran de déplacement des posts la chaîne de caractères
">qui se baladait juste au-dessus de "choisir le sujet réceptacle".
Après vérification, le module concerné est movepost.php, qui ne subit pas de mise à jour dans la procédure d'installation, donc l'erreur est bien dans le code téléchargé ; pour corriger, il suffit de supprimer les 2 derniers caractères (ceux listés ci-dessus) de la ligne 378.
Hors ligne
Je viens d'installer ce Mod trouvé après une recherche ... obstinée
(je ne l'ai pas trouvé dans la liste des Mod, je n'ai pas les yeux en face des trous, ou il n'y est effectivement pas ?)
C'est actuellement une astuce. Pas une modifications. (Elle aurait sa place
)
Merci de ta correction. 
...
Hors ligne
La différence m'échappe
Un point .zip que je récupère sur le site officiel, avec des instructions d'installation similaires à celles de tous les mods que j'ai installés, ça n'en fait pas un mod ?
Il faut peut-être une déclaration officielle en 3 exemplaires ... 
Hors ligne
Il n'y a pas réellement de différence. Libre à l'auteur d'en faire une astuce ou une modification.
L'astuce est généralement assez simple à faire, modifier un léger morceau de code.
(D'ailleurs le titre du post contient le mot "[mod]")
M@x.
...
Hors ligne
Hello, je suis en train de tester ce mod (suite à ma question).
J'ai remarqué quelques erreurs mineur dans movepost.php :
* Celle signalée par tosca mais je ne suis pas d'accord avec sont correctif, à mon avis il ne faut pas supprimer le dernier "> mais l'avant dernier
* Beaucoup de "&" dans les adresses au lieu de "&" ce qui rend le code non valide w3c
Hors ligne