•  » Plugins
  •  » [Plugin] CommentEditor

#31 2009-06-18 23:14:06

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

1.0.d postée. Du checking en plus et le paramètre "action" renommé en "action_comment".


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

#32 2009-06-18 23:20:51

nicolas
Former Piwigo Team
2004-12-30
1526

Re: [Plugin] CommentEditor

Pourquoi redéclarer la fonction update_user_comment() ? En plus je ne comprends pas pourquoi je n'ai pas un avertissement me signalant qu'elle existe déjà.


Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#33 2009-06-18 23:24:14

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

nicolas a écrit:

Pourquoi redéclarer la fonction update_user_comment() ? En plus je ne comprends pas pourquoi je n'ai pas un avertissement me signalant qu'elle existe déjà.

Je ne la redéclare pas, je l'ai rajoutée dès la version 1.0.a dans ce_functions.inc.php car elle n'existait pas en native dans piwigo (seule insert_user_comment() existait).

Ne l'aurais-tu point rajoutée dans le core ?
si non, alors je vois pas qui l'a fait, sauf un autre plugin...


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

#34 2009-06-18 23:32:08

nicolas
Former Piwigo Team
2004-12-30
1526

Re: [Plugin] CommentEditor

Criss a écrit:

Ne l'aurais-tu point rajoutée dans le core ?
si non, alors je vois pas qui l'a fait, sauf un autre plugin...

Si. Quel boulet. Bon la mienne ne fait que 10 lignes ! Cela va poser des problèmes !!! Comment on règle ? Tu modifies ou moi ?


Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#35 2009-06-18 23:37:15

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

nicolas a écrit:

Criss a écrit:

Ne l'aurais-tu point rajoutée dans le core ?
si non, alors je vois pas qui l'a fait, sauf un autre plugin...

Si. Quel boulet. Bon la mienne ne fait que 10 lignes ! Cela va poser des problèmes !!! Comment on règle ? Tu modifies ou moi ?

J'avais prévu de rajouter une vérification comme celle-ci :

Code:

if (!function_exists('update_user_comment')) {
/**
 * Changed from Piwigo core function  insert_user_comment
 */

/**
 * Tries to update a user comment in the database and returns one of :
 * validate, moderate, reject
 * @param array comm contains author, content, image_id
 * @param string key secret key sent back to the browser
 * @param array infos out array of messages
 */
function update_user_comment( &$comm, $key, &$infos )
{

[...]

}

} // function_exists

pour garder une compatibilité ascendante. J'avais prévu à terme de supprimer la fonction si elle existe dans le core.

Si la mienne est si longue (la fonction hein :-O) c'est qu'elle reprend quasi tout de sa soeur insert, ne comprenant ni n'ayant cherché à comprendre tous les tenants et aboutissants de ce qu'elle fait.
(les flood check, trigger, etc.)


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

#36 2009-06-18 23:38:52

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

Ah de plus il faudrait qu'elles aient les même signatures. :D


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

#37 2009-06-19 00:46:16

P@t
Équipe Piwigo
Nice
2007-06-13
5694

Re: [Plugin] CommentEditor

nicolas a écrit:

Sans maintain.inc.php, on ne peut pas désactiver le plugin sans le supprimer par exemple. Je dis ça sans tester; ni regarder le code.

Evidemment, le fichier maintain.inc.php n'est absolument pas obligatoire!
D'ailleurs, j'ai quelques plugins qui n'en ont pas (Extended description, Most commented, Has high, etc...)

Ce fichier est inclus uniquement s'il existe... et il est utile uniquement si on a une action à faire lors de l'install ou de l'activation. S'il n'existe pas, le plugin se désactive et se désinstalle tout à fait normalement.

Criss a écrit:

Je sais bien que l'auteur "semble ne pas pouvoir" éditer son commentaire, en fait juste il n'a pas le lien ;)
C'est ce que j'ai mis dans le premier post de ce topic : si l'utilisateur connait l'adresse du lien il peut éditer son commentaire tout de même.

C'est une limitation du moment et je ne sais pas comment la contourner...

Qu'est-ce que tu n'arrives pas à contourner? Il suffit de mettre le lien "Edit" pour tous les commentaires de l'utilisateur, non?

Criss a écrit:

Pourquoi ramené sur l'index ? Parce que c'était le plus simple à gérer. :P

Je rappelle que je ne sais pas utiliser jQuery donc le faire directement sur le commentaire c'est pas pour de suite.
Quant à garder la page je vais voir si c'est facile. Je vois déjà pointer un conflit sur le paramètre "action" :P

Hum... en effet, c'est dommage, il faudrait mieux rester sur la page picture...
Je ne vois pas trop en quoi c'est plus simple de le faire sur l'index ;-)

Dernière modification par P@t (2009-06-19 01:01:04)


P@t

Hors ligne

#38 2009-06-19 08:20:07

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

P@t a écrit:

Qu'est-ce que tu n'arrives pas à contourner? Il suffit de mettre le lien "Edit" pour tous les commentaires de l'utilisateur, non?

J'en ai parlé sur l'autre topic : je n'ai pas moyen d'avoir l'id du commentaire, donc je ne peux mettre le lien... :/

P@t a écrit:

Hum... en effet, c'est dommage, il faudrait mieux rester sur la page picture...
Je ne vois pas trop en quoi c'est plus simple de le faire sur l'index ;-)

Bah tout simplement pour le lien, mettre en dur index.php?.... c'est simple. :D


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

#39 2009-06-19 15:31:53

nicolas
Former Piwigo Team
2004-12-30
1526

Re: [Plugin] CommentEditor

Criss a écrit:

P@t a écrit:

Qu'est-ce que tu n'arrives pas à contourner? Il suffit de mettre le lien "Edit" pour tous les commentaires de l'utilisateur, non?

J'en ai parlé sur l'autre topic : je n'ai pas moyen d'avoir l'id du commentaire, donc je ne peux mettre le lien... :/

Et il n'y a pas de moyen sans modifier le core de piwigo ! :-(

Criss a écrit:

P@t a écrit:

Hum... en effet, c'est dommage, il faudrait mieux rester sur la page picture...
Je ne vois pas trop en quoi c'est plus simple de le faire sur l'index ;-)

Bah tout simplement pour le lien, mettre en dur index.php?.... c'est simple. :D

C'est certes plus simple pour toi mais l'utilisateur perd le fil de sa navigation.


Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#40 2009-06-19 16:32:02

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

nicolas a écrit:

Et il n'y a pas de moyen sans modifier le core de piwigo ! :-(

C'est certes plus simple pour toi mais l'utilisateur perd le fil de sa navigation.

J'ai jamais dit que ça allait rester comme ceci ;)


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

#41 2009-06-19 17:42:41

nicolas
Former Piwigo Team
2004-12-30
1526

Re: [Plugin] CommentEditor

Criss a écrit:

nicolas a écrit:

Et il n'y a pas de moyen sans modifier le core de piwigo ! :-(

C'est certes plus simple pour toi mais l'utilisateur perd le fil de sa navigation.

J'ai jamais dit que ça allait rester comme ceci ;)

Hé, hé. Tiens tu peux t'inspirer du code dans comments.php. Cela ressemble à ça :

Code:

$url = get_root_url().script_basename().'.php'
               .get_query_string_diff(array(CE_ACTION, CE_ID));

$comment['U_ID'] =  $this->getCommentId($comment['U_DELETE']);
$comment['DATE'] .= ' - <a href="';
$comment['DATE'] .= add_url_params($url,
              array(CE_ACTION => CE_ACTION_EDIT,
             CE_ID=>$comment['U_ID'])
              );
$comment['DATE'] .= '">';
$comment['DATE'] .= 'Edit';
$comment['DATE'] .= '</a>';

Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#42 2009-06-19 20:22:07

P@t
Équipe Piwigo
Nice
2007-06-13
5694

Re: [Plugin] CommentEditor

nicolas a écrit:

Criss a écrit:

P@t a écrit:

Qu'est-ce que tu n'arrives pas à contourner? Il suffit de mettre le lien "Edit" pour tous les commentaires de l'utilisateur, non?

J'en ai parlé sur l'autre topic : je n'ai pas moyen d'avoir l'id du commentaire, donc je ne peux mettre le lien... :/

Et il n'y a pas de moyen sans modifier le core de piwigo ! :-(

Il y a TOUJOURS un moyen!

Allez, par exemple:

add_event_handler('render_comment_content', 'get_comment_ids');

function get_comment_ids($content)
{
  global $template, $row, $user, $comments_ids;

  if ((!is_a_guest() and $user['username'] == $row['author'])
    or is_admin())
  {
    $key = count($template->get_template_vars('comments'));
    $comments_ids[$key] = $row['id'];
  }

  return $content;
}

Ensuite, la fonction loc_begin_page_header de la classe CE_Plugin nous donnera:

function loc_begin_page_header() {
    global $template, $comments_ids;

    $all_comments = &$template->get_template_vars('comments');
    for ($i=0; $i < count($all_comments) ; $i++) {
        if (isset($all_comments[$i]) and is_array($all_comments[$i])) {
            $comment = &$all_comments[$i];
            if (isset($comments_ids[$i])) {
                $comment['U_ID'] =  $comments_ids[$i];
                $comment['DATE'] .= ' - <a href="' . $this->getEditUrlPrefix();
                $comment['DATE'] .= $comment['U_ID'] . '">';
                $comment['DATE'] .= 'Edit';
                $comment['DATE'] .= '</a>';
            }
        }
    }
}

Et voila, le tour est joué...

PS: c'est pas terrible de mettre les fichiers directement à la racine de l'archive zip....
Il vaut mieux avoir un sous-dossier, car sinon, le plugins manager utilise "extension_296" comme nom de dossier.
Tu peux le faire pour tes prochaines versions, cela ne perturbera pas les mises à jour automatiques...

Dernière modification par P@t (2009-06-19 20:36:55)


P@t

Hors ligne

#43 2009-06-19 20:48:58

nicolas
Former Piwigo Team
2004-12-30
1526

Re: [Plugin] CommentEditor

Pas mal P@t. :-)


Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#44 2009-06-19 21:01:00

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
15124

Re: [Plugin] CommentEditor

P@t a écrit:

..., la fonction loc_begin_page_header de la classe CE_Plugin nous donnera:

function loc_begin_page_header() {
    global $template, $comments_ids;

    $all_comments = &$template->get_template_vars('comments');
    for ($i=0; $i < count($all_comments) ; $i++) {
        if (isset($all_comments[$i]) and is_array($all_comments[$i])) {
            $comment = &$all_comments[$i];
            if (isset($comments_ids[$i])) {
                $comment['U_ID'] =  $comments_ids[$i];
                $comment['DATE'] .= ' - <a href="' . $this->getEditUrlPrefix();
                $comment['DATE'] .= $comment['U_ID'] . '">';
                $comment['DATE'] .= 'Edit';
                $comment['DATE'] .= '</a>';
            }
        }
    }
}

Et voila, le tour est joué...

C'est parfait. Mais... il me faut 10 minutes pour piger (je reconnais que c'est excellent quand même).

Référence de référence, tu nous en fais à mon avis un peu trop. Il faut qu'on statue dans les normes de coding.
http://www.php.net/manual/fr/language.references.php


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#45 2009-06-19 22:44:28

Criss
Former Piwigo Team
Nice
2008-03-31
323

Re: [Plugin] CommentEditor

P@t a écrit:

[...]
Et voila, le tour est joué...

Joli :P
Je testerai ça la semaine prochaine (pas le temps avant)

PS: c'est pas terrible de mettre les fichiers directement à la racine de l'archive zip....
Il vaut mieux avoir un sous-dossier, car sinon, le plugins manager utilise "extension_296" comme nom de dossier.
Tu peux le faire pour tes prochaines versions, cela ne perturbera pas les mises à jour automatiques...

Je ne savais pas comment faire, j'ai pris exemple sur une extension au pif (tag2file, le premier dans la liste)...
En plus c'est plus facile de générer avec le nom de l'extension en répertoire ;)


La beta de Piwigo.com a été mise en ligne le 30 juin 2009. Enregistrez vous pour obtenir une galerie Piwigo hébergée. Venez nous aider à faire du beta-test !

Hors ligne

  •  » Plugins
  •  » [Plugin] CommentEditor

Pied de page des forums

Propulsé par FluxBB

github twitter facebook newsletter Faire un don Piwigo.org © 2002-2019 · Contact