Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1
  • 2

TOPIC: Personnalisation des Impression le Retour de la Vengeance de la V2....

Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 3 months ago #90489

  • Philippe
  • Philippe's Avatar
  • OFFLINE
  • Junior Lime
  • Posts: 38
  • Thank you received: 1
  • Karma: 0
Bonjour à toutes et tous,

J'ai upgradé ma version de LS vers la nouvelle V2...
Pas trop de problème ...
Cependant j'avais une de mes enquêtes qui se finissait par une impression personnalisée selon la méthode des fichiers clonés ( printanswers.pstpl') décrite par Benitov dans ce post : www.limesurvey.org/forum/french-forum/63...nnaire?lang=en#63238.
J'avais posté il y a quelques mois à ce propos ici.

Mon problème c'est que l'upgrade a du modifier l'emplacement des templates car j'ai maintenant une belle page blanche lorsque je clique sur le lien d'impression.
La modification initiale se trouvait dans le fichier printanswer.php (qui est à la racine de LS) et dont l'avant dernière ligne a été modifiée comme suivant :
echo templatereplace(file_get_contents(sGetTemplatePath($thistpl).'/printanswers-main.pstpl'),array('ANSWERTABLE'=>$printoutput));
.
J'imagine que c'est la variable $thistpl qui est importante mais même en changeant cette dernière, en testant un chemin en "dur" ça fonctionne pas...

Est ce qu'un esprit éclairé aurait une solution ?

Merci d'avance et bonnes fêtes de fin d'année

Philippe
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 3 months ago #90543

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Salut Philippe,
Autant te dire que je ne connais vraiment pas grand chose de la V2 (J'ai juste fait quelques essais) :( ...

Ceci-dit si c'est une question de chemin, peut-être une piste:
Dans le fichier /application/controllers/PrintanswersController.php (le nouveau "printanswers.php") essaie de remplacer les dernières lignes (après les avoir adaptées pour ton template) par:
echo templatereplace(file_get_contents(dirname($rootdir).'/upload/templates/YOUR_TEMPLATE/startpage.pstpl'));
 echo templatereplace(file_get_contents(dirname($rootdir).'/upload/templates/YOUR_TEMPLATE/printanswers.pstpl'),array('ANSWERTABLE'=>$printoutput));
 echo templatereplace(file_get_contents(dirname($rootdir).'/upload/templates/YOUR_TEMPLATE/endpage.pstpl'));
Meilleurs voeux également à tous ceux qui liront ce post...
Benoît
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
Last Edit: 1 year 3 months ago by Ben_V.
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 3 months ago #90552

  • DenisChenu
  • DenisChenu's Avatar
  • OFFLINE
  • Moderator Lime
  • Posts: 5869
  • Thank you received: 719
  • Karma: 223
Salut,

Il me semble avoir corrigé quelques bugs sur le PrintanswersController.php .

Sinon, comme le lien n'est plus bon (j'ai une 404), peut tu rappeler la méthode et son objectif ?

Denis
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 3 months ago #90554

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Salut Denis,
ça doit être par-là
Ben/
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 3 months ago #90557

  • DenisChenu
  • DenisChenu's Avatar
  • OFFLINE
  • Moderator Lime
  • Posts: 5869
  • Thank you received: 719
  • Karma: 223
Ben_V wrote:
Salut Denis,
ça doit être par-là
Ben/
Donc, théoriquement, sans changement du cœur de LS, cela doit rester faisable modèle pra modèle ?

Quitte à avoir un modèle par questionnaire ?

Denis
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 3 months ago #90561

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Donc, théoriquement, sans changement du cœur de LS, cela doit rester faisable modèle pra modèle ?
Oui bien sûr dans 99% des cas je pense ...

Le "clonage" du printanswers.php répond lui aux autres besoins, non-manipulables via le template: (sûrement il y a des choses dorénavant possibles avec les versions ≥1.92 qui ne l'étaient pas avant)
- Habiliter ou non tout ce qu'il y a après "//Get the fieldmap @TODO: do we need to filter out some fields?"
- Ma problématique très spécifique: Tous les questionnaires d'une même installation doivent pouvoir être imprimés de 2 ou 3 façons différentes, disons avec des entêtes et pieds de pages bien déterminés;
Ben/
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 2 months ago #91803

  • Philippe
  • Philippe's Avatar
  • OFFLINE
  • Junior Lime
  • Posts: 38
  • Thank you received: 1
  • Karma: 0
Bonjour à tous,

Je reviens (enfin) sur ce dossier que j'avais mis de coté depuis les fêtes.
-
Mon problème reste entier : comment faire une impression personnalisée spécifiquement pour un questionnaire donné avec la V2.
-
Au niveau des avancées j'ai testé ce que disait Denis, à savoir modifier les dernières lignes du PrintanswersController.php
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/startpage.pstpl'),array(),$redata);
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/printanswers.pstpl'),array('ANSWERTABLE'=>$printoutput),$redata);
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/endpage.pstpl'),array(),$redata);

J'ai juste remplacé le printanswers.pstpl par le nom de mon printanswers-main.pstpl (le personnalisé)

Alors ça marche bien entendu MAIS PAS en option et PAS pour un seul questionnaire précis...
(ça change toutes les impressions de tous mes questionnaires)
--
J'ai essayé de mettre ça en URL de fin de questionnaire, car c'est comme ça qu'au final ça devra fonctionner mais ça ne fonctionne pas du tout...

Bref, y a quelque chose qui m'échappe dans la V2,

Quelqu'un(e) aurait une idée ?

En vous remerciant

Philippe
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 2 months ago #91807

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Salut Philippe,
ben vu comment sont composées les urls (ex: index.php/printanswers/view/surveyid/2345) je ne suis pas super optimiste pour trouver une combine pour faire ce que tu veux comme au bon vieux temps du printanswer-cequejeveux.php...
Par contre, comme rappelait Denis un peu plus haut, celà n'empêche pas de chercher une solution qui depende à 100% du template... Normalement c'est suffisant pour les en-têtes et pieds de page, et comme la présentation reste un tableau, il est possible d'y mettre la main en jouant des pseudos-éléments CSS; voir ici et sur le web

Possible également dans le PrintanswersController.php de jeter un oeuil sur le html généré en rajoutant des classes css, pour faire apparaître ou cacher des trucs selon le template ... Bien sûr il faut alors faire gaffe aux updates

Ben/
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 2 months ago #91829

  • DenisChenu
  • DenisChenu's Avatar
  • OFFLINE
  • Moderator Lime
  • Posts: 5869
  • Thank you received: 719
  • Karma: 223
Ben_V wrote:
Possible également dans le PrintanswersController.php de jeter un oeuil sur le html généré en rajoutant des classes css, pour faire apparaître ou cacher des trucs selon le template ... Bien sûr il faut alors faire gaffe aux updates
Salut,

Le PrintanswersController va sans doute être mis à jour pour la future version. en effet comme les questions passent en plugin[*], cela demande un travail complet. Donc, c'est le moment de demander des évolutions de ce coté.

Sinon,
dans le printanswercontroller, il est possible d'effectuer des test en fonction de l'identifant du questionnaire:
if($surveyid=42){
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/startpage.pstpl'),array(),$redata);
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/printanswers.pstpl'),array('ANSWERTABLE'=>$printoutput),$redata);
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/endpage.pstpl'),array(),$redata);
}else{
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/startpage.pstpl'),array(),$redata);
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/printanswers_perso.pstpl'),array('ANSWERTABLE'=>$printoutput),$redata);
echo templatereplace(file_get_contents(getTemplatePath($thistpl).'/endpage.pstpl'),array(),$redata);
}
The administrator has disabled public write access.

Re: Personnalisation des Impression le Retour de la Vengeance de la V2.... 1 year 2 months ago #91834

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Bonjour,
il est possible d'effectuer des test en fonction de l'identifant du questionnaire
Je n'avais jamais pensé à ça... mais ça peut permettre des usages bien interessants (en faisant gaffe aux updates, bien sûr)
les questions passent en plugin
Tu peux nous décrire STP (brièvement bien sûr) ce que celà implique, change ou apporte comme améliorations au software?

Merci...
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
The administrator has disabled public write access.
  • Page:
  • 1
  • 2
Moderators: Nickko
Time to create page: 0.347 seconds
Donation Image