Sujet fermé
Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

[Résolu] CGFeedback : Suivi des commentaires effectués
#1

Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.9.4.2
#~ Url du site : www.numastickwebfactory.fr
#~ Hébergeur / Soft : OVH
#~ Informations Système :
#~ Version du CMS
#~ 1.9.4.1
#~ Modules installés
#~ CMSMailer
#~ 2.0.1
#~ FileManager
#~ 1.1.0
#~ MenuManager
#~ 1.7.6
#~ ModuleManager
#~ 1.4.2
#~ News
#~ 2.11.2
#~ nuSOAP
#~ 1.0.2
#~ Printing
#~ 1.1.2
#~ Search
#~ 1.6.10
#~ ThemeManager
#~ 1.1.4
#~ TinyMCE
#~ 2.8.4
#~ Gallery
#~ 1.4.4
#~ FormBuilder
#~ 0.7
#~ Captcha
#~ 0.4.3
#~ simpletagging
#~ 0.3.1
#~ SEOTools
#~ 1.2
#~ CGExtensions
#~ 1.25.4
#~ SiteMapMadeSimple
#~ 1.2.2
#~ RSS2HTML
#~ 1.2.4
#~ CGFeedback
#~ 1.3.5
#~ CGFeedMaker
#~ 1.0.14
#~ CGSimpleSmarty
#~ 1.4.8
#~ CGBlog
#~ 1.7.5
#~ Informations de configuration
#~ php_memory_limit:
#~ process_whole_template:
#~ false
#~ output_compression:
#~ false
#~ max_upload_size:
#~ 64000000
#~ default_upload_permission:
#~ 664
#~ url_rewriting:
#~ mod_rewrite
#~ page_extension:
#~ .html
#~ query_var:
#~ page
#~ image_manipulation_prog:
#~ GD
#~ auto_alias_content:
#~ true
#~ locale:
#~ fr_FR.utf-8
#~ default_encoding:
#~ utf-8
#~ admin_encoding:
#~ utf-8
#~ set_names:
#~ true
#~ debug:
#~ false
#~ root_url:
#~ http://www.numastickwebfactory.fr
#~ ssl_url:
#~ https://www.numastickwebfactory.fr
#~ root_path:
#~ /homez.323/numastic/www (0705)
#~ previews_path:
#~ /homez.323/numastic/www/tmp/cache (0777)
#~ uploads_path:
#~ /homez.323/numastic/www/uploads (0755)
#~ uploads_url:
#~ http://www.numastickwebfactory.fr/uploads
#~ image_uploads_path:
#~ /homez.323/numastic/www/uploads/images (0777)
#~ image_uploads_url:
#~ http://www.numastickwebfactory.fr/uploads/images
#~ ssl_uploads_url:
#~ /uploads
#~ use_smarty_php_tags:
#~ false
#~ Informations PHP :
#~ Version PHP actuelle (phpversion):
#~ 5.2.17
#~ Fonction md5 (md5_function):
#~ On (Vrai)
#~ Version GD (gd_version):
#~ 2
#~ Fonction PHP tempnam (tempnam_function):
#~ On (Vrai)
#~ Test magic_quotes_runtime (magic_quotes_runtime):
#~ Off (Faux)
#~ E_STRICT est désactivé dans error_reporting (E_STRICT):
#~ Mémoire Limite PHP effective (memory_limit):
#~ 128M
#~ Temps Maximum d'éxecution (max_execution_time):
#~ 120
#~ Fonction PHP output_buffering (output_buffering):
#~ On
#~ Safe Mode PHP (safe_mode):
#~ Off (Faux)
#~ Upload de fichier (file_uploads):
#~ On (Vrai)
#~ Taille maximum par méthode POST (post_max_size):
#~ 64M
#~ Taille maximum pour l'Upload (upload_max_filesize):
#~ 64M
#~ Chemin du dossier Session (session_save_path):
#~ /tmp (1777)
#~ Autorisation pour l'utilisation des cookies de session (session_use_cookies):
#~ On (Vrai)
#~ Support de Basic XML (expat) (xml_function):
#~ On (Vrai)
#~ Vérification si le processus httpd peut créer un fichier dans un nouveau dossier. (create_dir_and_file):
#~ Fonction PHP register_globals (register_globals):
#~ On (Vrai)
#~ Directive PHP disable_functions (disable_functions):
#~ PHP open_basedir (open_basedir):
#~ Test l'URL distant (test_remote_url):
#~ fsockopen: Connexion ok !
#~ fopen: Connexion ok !
#~ Test ini_set (check_ini_set):
#~ On (Vrai)
#~ Informations serveur :
#~ API serveur (server_api):
#~ cgi
#~ Serveur de base de données (server_db_type):
#~ MySQL (mysql)
#~ Version du serveur de base de données (server_db_version):
#~ 5.0.90
#~ Version software du serveur (server_software):
#~ Apache/2.2.X (OVH)
#~ Système d'exploitation serveur (server_os):
#~ Linux 2.6.36.2-grsec-mutu-grs-ipv4-32 On i686
#~ Informations sur les Permissions
#~ tmp:
#~ /homez.323/numastic/www/tmp (0705)
#~ templates_c:
#~ /homez.323/numastic/www/tmp/templates_c (0777)
#~ modules:
#~ /homez.323/numastic/www/modules (0777)
#~ Masque de création de fichier (umask) :
#~ /homez.323/numastic/www/tmp/cache (0777)
#~ config_file:
#~ 0444
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~


Bonjour,

Je n'arrive pas à faire fonctionner le suivi automatique des posts effectués sur les articles de mon Blog (créé avec CGBlog) : si un utilisateur saisit un commentaire, il n'est pas du tout informé des nouveaux commentaires ajoutés par la suite.

Pourtant, je force la variable en ce sens (comme dans FB par exemple : dès qu'on met un commentaire, un est au courant de ce qu'il se dit ensuite).

Ci-dessous le gabarit du formulaire de soumission du commentaire dans CGFeedback :

Code :
{* comment form template *}
{if isset($message)}
  <div class="pagemessage">{$message}</div>
{else}
{* no message... display the form *}
<div class="cgfeedback_addcoment">
{if isset($error)}
  <div class="error" style="font-weight:bold; font-size :12px;color: #ff0000;">{$error}</div>
<br/>
{/if}
{$formstart}
<fieldset style="margin: 0em;">
  <legend> {$mod->Lang('prompt_add_comment')}</legend>

<div style="font-size:10px; height:15px; font-weight:bold;margin-left:10px;">Tous les champs sont obligatoires</div>

<div  style="margin:10px;">    
{*    <div  style="float: left;width:160px;">
      {$mod->Lang('prompt_title')}* :
    </div>
    <div style="float:left;" >
      <input type="text" name="{$actionid}title" size="40" maxlength="150" value="{$title}"/>
    </div>
    <div class="clearfix"></div>
*}
    <div style="float: left;width:160px;">
      Nom / Surnom
    </div>
    <div style="float:left;" >
      <input type="text" name="{$actionid}author_name" size="70" maxlength="150" value="{$author_name}"/>
    </div>
    <div class="clearfix"></div>

    <div style="float: left;width:160px;">
      Email (ne sera pas publié)
    </div>
    <div style="float:left;" >
      <input type="text" name="{$actionid}author_email" size="70" maxlength="150" value="{$author_email}"/>
    </div>
    <div class="clearfix"></div>


{*    <div style="float: left;width:450px;font-size:10px; height:15px;"> L’adresse email est requise si vous souhaitez suivre les commentaires effectués sur cette page
     </div>
    <div class="clearfix"></div>
*}
{*
    <div style="float: left;width:395px;">
      Me tenir au courant si un commentaire est publié après le mien :
    </div>
    <div style="float: left; ">
      <input type="checkbox" name="{$actionid}author_notify" value="1" {if $author_notify == 1}checked="checked"{/if}/>
    </div>
    <div class="clearfix"></div>
*}

    <div style="display:none">
      <input type="checkbox" name="{$actionid}author_notify" value="1" checked />
    </div>


{*    <div style="float: left;width:150px;">
      {$mod->Lang('prompt_your_rating')}* :
    </div>
    <div style="float: left;width:150px; ">
      <select name="{$actionid}rating">
        {html_options options=$rating_options selected=$rating}
      </select>
    </div>
    <div class="clearfix"></div>
*}
   <div style="float: left;width:160px;">
      Commentaire
    </div>
    <div style="float: left; ">
{*      {$input_comment}  *}
{$input_comment|html_entity_decode:$smarty.const.ENT_QUOTES}
    </div>
    <div class="clearfix"></div>

  {* custom fields *}
  {if isset($fields)}
  {foreach from=$fields key='fieldid' item='field'}
    <div style="float: left;width:150px;">
      {$field.name}:
    </div>
    <div style="float: left;">
    {if isset($field.input)}
      {$field.input}
    {elseif $field.type == 0 or $field.type == 1 }
      <input type="text" name="{$actionid}field_{$fieldid}" value="{$field.value}" size="{$field.attrib.length}" maxlength="{$field.attrib.maxlength}"/>
    {elseif $field.type == 2}
      {* text area fields should have an input... so this should never get caled... but just in case *}
      <textarea name="{$actionid}field_{$fieldid}">{$field.value}</textarea>
    {elseif $field.type == 3}
      <select name="{$actionid}field_{$fieldid}">
        {html_options options=$field.attrib.options selected="{$field.value}"}
      </select>
    {elseif $field.type == 4}
      <select multiple="multiple" size="4" name="{$actionid}field_{$fieldid}[]">
        {html_options options=$field.attrib.options selected="{$field.value}"}
      </select>
    {/if}
    </div>
  {/foreach}
  {/if}

  {if isset($captcha_img)}
     {* handle captcha image *}
    <div style="float: left;width:200px; ">
      {$captcha_img}
    </div>
    <div style="float: left; ">
      <input type="text" name="{$actionid}feedback_captcha" value="" size="20"/>
    </div>
    <div class="clearfix"></div>
  {/if}

    <div style="clear:both; ">
      <input type="submit" name="{$actionid}submit" value="{$mod->Lang('submit')}"/>
    </div>
  </div>
<div style="font-size:10px; height:15px; font-weight:bold;margin-left:10px;">Attention : les commentaires sont modérés avant publication</div>

</fieldset>
{$formend}
</div>
{/if}


Ci-dessous la partie appel de CGFeedback depuis le gabarit détail de l'article :
Code :
{CGFeedback action='summary' key1='Blog' key2=$cgblog_nom_page}
<br/>
{CGFeedback key1='Blog' key2=$cgblog_nom_page titlerequired="0" }


Merci d'avance pour votre aide et indiquez-moi si vous aviez besoin d'informations complémentaires....
#2

Bon, bon, bon... on dirait que je fais un bide avec ma(es) question(s)...

Personne n'aurait une petite idée pour orienter mes recherches, sachant :
- que lorsque je poste un commentaire, je reçois un mail de notification sans problème ;
- après validation, le commentaire s'affiche correctement ;
- en revanche, je ne suis pas du tout informée si je poste un autre commentaire par la suite...
PS : J'ai forcé tous les utilisateurs à suivre les commentaire systématiquement.

J'ai effectué le même test en désactivant la modération, et là j'obtiens une erreur :

Fatal error: Call to undefined method CGFeedback::prepare_smarty_vars() in /homez.323/numastic/www/modules/CGFeedback/lib/class.cgfb_comment_notifier.php on line 77

Dans la BDD, le commentaire est bien créé mais les champs rating, title, admin_notes et notified sont à NULL, ce qui est très étrange, puisque ces champs sont normalement renseignés à la création du formulaire...

J'ai trouvé sur un forum cmsms_ russe je crois (voir
Code :
http://forum.cmsmadesimple.org/viewtopic.php?f=27&t=55189&view=previous
) _ une modification de code (77 | self::prepare_smarty_vars($comment)Wink, mais ça n'a pas l'air très performant pour eux (ma compréhension de la langue étant toutefois limitée)...
Et pour moi, le résultat était pire.

J'ai donc tout remis comme avant...

Quelqu'un aurait-il des idées de pistes à me suggérer...?
Merci d'avance à tous !
#3

perso je n'ai pas cherché à reproduire à fond ce procédé d'emailling sur cmsms.fr , je peux donc pas t'aider dessus :/
#4

Ok, pas grave, je vais continuer à chercher...
Merci en tout cas pour la réponse, je me sens moins seule d'un coup !
#5

Pour info, youpi, c'est résolu (l'info que j'avais trouvée sur cms ms russe était bien la bonne) !
Voir bug ouvert : http://dev.cmsmadesimple.org/bug/view/6600

Dans CGFeedbcak/lib/class.cgfb_comment_notifier.php (ligne 77)
Remplacer :
Code :
$this->prepare_smarty_vars($comment);

par :
Code :
self::prepare_smarty_vars($comment);

Voilu. J'espère que ça pourra être utile à quelqu'un !
#6

félicitation, ce genre de bug sont plutôt vicelard à corriger Smile

mais attention à la prochaine mise à jour du module Wink
#7

Yes, yes, merci de me le rappeler !

Y'a de grande chance que j'oublie, malheureusement, avec mon cerveau de blonde... mais par contre, ce qui est certain, c'est que je reconnaîtrais ce bug dès qu'il se représentera (tellement ça m'a pris le chou) !
On est sauvés !

A la prochaine (j'espère pas trop vite) !
Sujet fermé


Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)