Hors ligne
FreeBiker a écrit:
J'ai remarqué que quand on note une photo directement dans sa rubrique, ça marche et quand on veux noter la même photo sur la page "les mieux notées" ça marche pas!
Peut être un indice!
Est-ce que cela correspond bien à ce bug: 600?
En franglais...
8-)
Hors ligne
Je comprends pas tout mais ça à l'air d'être ça ;-)
Hors ligne
FreeBiker a écrit:
J'ai remarqué que quand on note une photo directement dans sa rubrique, ça marche et quand on veux noter la même photo sur la page "les mieux notées" ça marche pas!
Peut être un indice!
[Bugtracker] ticket 600
P@t, pourrais-tu prendre un moment et nous trouver une solution à ce bug?
Un défi? Non, je te sens bien capable de le relever rapidement.
8-)
Hors ligne
Pour info, ce problème est le meme pour la section most_visited (entre autre)
Par exemple, je suis sur la section most_visited, j'ai devant moi les 15 images les plus vues.
Pendant ce temps la, un autre visiteur est en train de parcourir la galerie, et il visionne l'image qui se trouve (virtuellement) en 16e position dans la liste des images les plus vues (à un hit près).
Du coup, si je clique sur la 15e image, j'ai aussi le message d'erreur puisqu'entre temps, elle est passée en 16e position...
Bon, je reconnais que pour ce cas précis, il faut une bonne accumulation de malchance!
Comme radu, pour l'instant, je ne vois pas vraiment de solution propre à mettre en place... je réfléchis...
Dernière modification par P@t (2008-07-04 13:09:12)
Hors ligne
Bon, la solution la plus simple, c'est de supprimer tout simplement la section de l'adresse si l'image n'appartient plus à cette section.
Je ferais ainsi:
Dans picture.php, ligne 41, remplacer:
// if this image_id doesn't correspond to this category, an error message is
// displayed, and execution is stopped
if (!in_array($page['image_id'], $page['items']))
{
page_not_found(
'The requested image does not belong to this image set',
duplicate_index_url()
);
}
Par
// if this image_id doesn't correspond to this category, an error message is
// displayed, and execution is stopped
if (!in_array($page['image_id'], $page['items']))
{
if (isset($page['section']) and $page['section'] == 'categories')
{
page_not_found(
'The requested image does not belong to this image set',
duplicate_index_url()
);
}
else
{
redirect(
duplicate_picture_url(array(), array('section'))
);
}
}
Hors ligne
Je préfère ça, tu nous le "commit".
8-)
Hors ligne
Il y a quand meme un inconvénient....
Un utilisateur qui parcourt la section "mieux notées" ne va pas s'apercevoir qu'il a quitté la section en notant une des images...
Et la, je ne vois vraiment pas quoi faire...
Dernière modification par P@t (2008-07-04 16:22:51)
Hors ligne
mathiasm a écrit:
Et si on mettait en cache utilisateur l'image_set de la special_cat en cours de visite, afin de ne rien changer tant qu'il ne reparcoure pas la page de ladite catégorie ?
Réutilisons la table #_search
Non?
8-)
Hors ligne
VDigital a écrit:
mathiasm a écrit:
Et si on mettait en cache utilisateur l'image_set de la special_cat en cours de visite, afin de ne rien changer tant qu'il ne reparcoure pas la page de ladite catégorie ?
Réutilisons la table #_search
Non?
8-)
Comment ?
Avec ces 3 champs, on n'a jamais le résultat en cache, mais les règles d'obtention, comme maintenant quand PWG recalcule l'image_set:
id last_seen rules
Hors ligne
mathiasm a écrit:
Et si on mettait en cache utilisateur l'image_set de la special_cat en cours de visite, afin de ne rien changer tant qu'il ne reparcoure pas la page de ladite catégorie ?
Après réflexion, j'ai eu à peu près la meme idée...
On pourrait mettre la liste des images parcourues dans l'url (exactement de la meme manière que pour les images au hasard)
On aura quelque chose comme: index.php?/best_rated/5,4,9,1,3,2,8,6,7
Ca ne devrait pas etre trop comliqué à mettre en place... vu que c'est déjà fait pour les images au hasard
Autre solution (plus simple à mettre en place), ajouter l'image "en trop" dans le $page['items'].
On aura ainsi 16 images au lieu de 15 (ou $conf['top_number'] + 1), avec l'image en trop à la fin.
Dernière modification par P@t (2008-07-04 23:50:51)
Hors ligne
8-)
Hors ligne