Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Masquer un élément d'une page d'option de theme

  • riqcles
  • riqcles's Avatar Topic Author
  • Offline
  • Elite Member
  • Elite Member
More
4 years 4 months ago #191540 by riqcles
Bonjour,
Sur un serveur avec Limesurvey, je souhaite avoir un admin et des utilisateurs.

Je souhaiterais que l'admin (et ceux qui auront le droit admin) peuvent modifier les thèmes et option de thèmes en ajoutant des images.

Les utilisateurs doivent pouvoir accéder aux options du thème pour leur questionnaire et modifier tout sauf ajouter des images.

Le but est de permettre à un groupe de 4 utilisateurs (ou plus) d'utiliser un template avec des images (en fait des logos) pré-défini pour leurs questionnaires.

Le risque est qu'un utilisateur choisi de faire un upload d'image en choisissant un nom d'image déjà existant (ex: j'ai un logo qui s'appelle lime.png (qui est un citron) et l'utilisateur charge une image de son poste de travail qui s'appelle aussi lime.png (mais qui est une orange).)

Il n'y a pas d'avertissement et l'application est immédiate.

Pour éviter ce soucis, j'ai pensé à utiliser ceci :
Menu configuration :
Dans les configuration entrée de menu
faire une copie de "Theme_option" (admin/themeoptions/sa/updatesurvey)

J'aurais donc 2 theme_option :
- un qui est affecté à l'adminstrateur
- un qui est affecté à tous.

Le but est que le theme_option qui est affecté à tous, n'affiche pas le bloc qui contient l'envoi de fichier.

J'ai essayé de voir dans le fichier update.php
ici : /limesurvey/application/views/admin/themeoptions

je trouve bien la ligne que je pourrais commenter, mais cela ne fonctionne pas. J'ai l'impression que la page html est regénéré à chaque fois pour cette partie.

Si il y a une solution plus élégante que de modifier le code, je prends, sinon je prends aussi pour le code.

P.S : si j'utilise les options du mode développeur de Firefox (touche F12), et que je modifie le code (je mets le bloc incriminé en commentaire), la page prends en compte la modification.

LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /

Future LimeSurvey version 6.4.1
OS : CentOS 7.9 / RockyLinux / PHP 8.2
BDD : PostGresql 15.x
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 3 months ago #191650 by DenisChenu
Replied by DenisChenu on topic Masquer un élément d'une page d'option de theme
Sur la version 3, dans les options de ton theme :
pourquoi ne pas ajouter
Code:
{% if templateConfiguration.sid is empty or templateConfiguration.gsid is empty %}

Juste avant le système d'envoi d'image : github.com/LimeSurvey/LimeSurvey/blob/f3...ns/options.twig#L309 ?

Sur la version 2.73 : de souvenir : il ne permet les images que dans le theme …

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The following user(s) said Thank You: riqcles
The topic has been locked.
  • riqcles
  • riqcles's Avatar Topic Author
  • Offline
  • Elite Member
  • Elite Member
More
4 years 3 months ago #191681 by riqcles
Merci Denis, la modification fonctionne bien.....mais l'option est caché au niveau globale, mais pas au niveau survey (dans les options de thème).


ici fonctionne : Options de questionnaire pour le thème ADMIN2_test_extends_fruity ( Niveau global )


ici KO : Options de questionnaire pour le thème ADMIN2_test_extends_fruity ( for survey id: 292337 )


Donc cela fait l'inverse de ce que je voulais :
Les admins ne peuvent pas ajouter des images, mais les utilisateurs peuvent !!! :woohoo:



On peut pas ajouter quelque chose dans la partie Option Avancé dans la sous rubrique Option du survey 292337 ?

{"font":"inherit","bodybackgroundcolor":"inherit","fontcolor":"inherit","questionbackgroundcolor":"inherit","checkicon":"inherit","backgroundimagefile":"inherit","brandlogofile":"inherit","bodyanimation":"inherit","bodyanimationduration":"inherit","questionanimation":"inherit","questionanimationduration":"inherit","alertanimation":"inherit","alertanimationduration":"inherit","checkboxanimation":"inherit","checkboxanimationduration":"inherit","radioanimation":"inherit","radioanimationduration":"inherit","container":"inherit","questionborder":"inherit","questioncontainershadow":"inherit","showpopups":"inherit","fixnumauto":"inherit","zebrastriping":"inherit","stickymatrixheaders":"inherit","greyoutselected":"inherit","hideprivacyinfo":"inherit","crosshover":"inherit","backgroundimage":"inherit","brandlogo":"inherit","animatebody":"inherit","animatequestion":"inherit","animatealert":"inherit","animatecheckbox":"inherit","animateradio":"inherit"}

LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /

Future LimeSurvey version 6.4.1
OS : CentOS 7.9 / RockyLinux / PHP 8.2
BDD : PostGresql 15.x
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 3 months ago #191689 by DenisChenu
Replied by DenisChenu on topic Masquer un élément d'une page d'option de theme
Dans ce cas : tu as tenté l'inverse ?
Code:
{% if not(templateConfiguration.sid is empty or templateConfiguration.gsid is empty) %}
(en même temps : cela ne me semble pas logique …)

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The following user(s) said Thank You: riqcles
The topic has been locked.
  • riqcles
  • riqcles's Avatar Topic Author
  • Offline
  • Elite Member
  • Elite Member
More
4 years 3 months ago #191796 by riqcles
Je viens de tenter et .....cela fonctionne bien :)

Bon, cela va m'enlever une bonne épine du pieds.

Mais c'est normal ou il va y avoir une correction dans le futur ?

(J'ai un peu de marge avant la V4 ?)

LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /

Future LimeSurvey version 6.4.1
OS : CentOS 7.9 / RockyLinux / PHP 8.2
BDD : PostGresql 15.x
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 3 months ago #191954 by DenisChenu
Replied by DenisChenu on topic Masquer un élément d'une page d'option de theme

riqcles wrote: Mais c'est normal ou il va y avoir une correction dans le futur ?

Je ne comprend pas : il n'y a pas de bogue …

Normalement :
1. Tu es en mode édition du theme : tu envoi tes images dans le theme
2. Tu envoi tes image en édition des options du theme du questionnaire : les images sont envoyé dans le questionaire.

C'est le cas sur la dernière version.

Ce qui fait que même sans les droits de modification du theme au global : tu peux changer et choisir tes images : c'est une fonctionalité de ppouvoir choisir les images.

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The following user(s) said Thank You: riqcles
The topic has been locked.
  • riqcles
  • riqcles's Avatar Topic Author
  • Offline
  • Elite Member
  • Elite Member
More
4 years 3 months ago #191997 by riqcles
Non, il n'y a pas de bogue. C'est ton message "(en même temps : cela ne me semble pas logique …) " qui m'a fait me demander si une correction devait avoir lieu.

Mais n'en faite rien. Moi le fonctionnement me va bien :)

Effectivement, donner la possibilité de charger des images est excellente, mais dans le problème que j'avais indiqué en début de message, je dois pas donner cette possibilité.

LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /

Future LimeSurvey version 6.4.1
OS : CentOS 7.9 / RockyLinux / PHP 8.2
BDD : PostGresql 15.x
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 3 months ago #191998 by DenisChenu
Replied by DenisChenu on topic Masquer un élément d'une page d'option de theme
Nan,

On s'est mal compris,

{% if not(templateConfiguration.sid is empty or templateConfiguration.gsid is empty) %}

C'est ce test qu'est pas très logique : on est sur une double inversion avec un OU ¿ c'est à devenir fou …

Je me demande si
{% if (templateConfiguration.sid is empty AND templateConfiguration.gsid is empty) %}
Afficher le truc d'pload des images
{% endif %}

Ne serait pas plus logique : si on est NI dans un questionnaire, ni dans un groupe de quetsionnaire : on permet l'émission des images.

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The topic has been locked.
Moderators: Nickko

Lime-years ahead

Online-surveys for every purse and purpose