Actions

Optional settings/fr: Difference between revisions

From LimeSurvey Manual

No edit summary
No edit summary
Line 265: Line 265:
*'''memorylimit:''' Ceci détermine la quantité de mémoire de LimeSurvey Peut accéder. « 128 Mo » est le minimum (Mo=Mégaoctet) recommandé. Si vous recevez des erreurs de délai d'attente ou rencontrez des problèmes pour générer des statistiques ou exporter des fichiers, augmentez cette limite à « 256 Mo » ou plus. Si votre serveur Web a défini une limite plus élevée dans config.php, alors ce paramètre sera ignoré.  
*'''memorylimit:''' Ceci détermine la quantité de mémoire de LimeSurvey Peut accéder. « 128 Mo » est le minimum (Mo=Mégaoctet) recommandé. Si vous recevez des erreurs de délai d'attente ou rencontrez des problèmes pour générer des statistiques ou exporter des fichiers, augmentez cette limite à « 256 Mo » ou plus. Si votre serveur Web a défini une limite plus élevée dans config.php, alors ce paramètre sera ignoré.  


<div class="mw-translate-fuzzy">
<div class="warningbox">'''Veuillez garder à l'esprit que ces paramètres locaux peuvent toujours être annulés par les modifications effectuées dans la boîte de dialogue des paramètres globaux'''.</div>
Attention, ces paramètres locaux par application peuvent être désactivé par les paramètres généraux du serveur. Augmenter la limite de mémoire de 128M vous pourriez également essayer d'ajouter:
*memory_limit = 128M de votre serveur principal fichier php.ini (si vous y avez accès)
*memory_limit = 128M à un fichier php.ini dans le LimeSurvey racine
*php_value memory_limit 128M dans un fichier .htaccess à la racine LimeSurvey
</div>


Pour augmenter la limite de mémoire à 128 Mo, vous pouvez également essayer d'ajouter :
Pour augmenter la limite de mémoire à 128 Mo, vous pouvez également essayer d'ajouter :

Revision as of 13:51, 2 October 2023

La section suivante s'adresse à ceux d'entre vous qui souhaitent modifier les paramètres de configuration qui n'ont pas pu être modifiés à l'aide de l'interface GUI (Graphical User Interface) de l'installation de LimeSurvey. Veuillez garder à l'esprit que toutes les modifications depuis le répertoire racine de LimeSurvey sont effectuées à vos propres risques. Néanmoins, dans le cas où vous rencontrez des problèmes/avez besoin de conseils supplémentaires, rejoignez les [forums de discussion https://www.limesurvey.org/forum] ou le IRC canal pour obtenir l'aide de la communauté LimeSurvey.

Comment modifier les réglages optionnels

Pour modifier les paramètres de configuration de l'installation, vous devez éditer les paramètres facultatifs. Ils peuvent être trouvés dans le fichier /application/config/config-defaults.php, qui se trouve dans le répertoire racine de LimeSurvey. Les paramètres par défaut de l'installation standard se trouvent dans config-defaults.php. Certains d'entre eux peuvent être remplacés à l'aide de la boîte de dialogue paramètres globaux, tandis que les autres devront être modifiés manuellement.

  Si vous souhaitez modifier ces réglages, merci de ne pas le faire dans config-defaults.php mais copiez le réglage ou la ligne dans /application/config/config.php in 'config'=>array() and modifiez-la à cet endroit.


Tous les réglages de config.php récrivent les valeurs par défaut de config-defaults.php et certains de ce réglages serontécras&és dans le dialogue des réglages globaux (New in 1.87 ). Cette procédure rendra beaucoup plus facile la mise à jour ultérieure de votre installation !

Lorsqu'il y a une mise à jour, seul les paramètres onfig-defaults.php sont changés. Toutefois, modifier le fichier config.php sauvegardera les paramètre que vous avez customisé.

Pour modifier/ajouter les options de LimeSurvey settings dans /application/config/config.php vous devez modifier le tableau de configuration :

    'config'=>array(
        'debug'=>0,
        'debugsql'=>0,
        'LimeSurveySetting'=>'New value',
    )

Paramètres Yii

LimeSurvey utilise le framework Yii, qui possède ses propres paramètres de configuration dans les fichiers application/config/internal.php et application/config/config.php. Vous pouvez également accéder à certains paramètres de configuration spécifiques de LimeSurvey via la configuration Yii.

Étant donné que le tableau config.php est fusionné avec l'ensemble de la configuration, vous pouvez remplacer n'importe quel paramètre Yii dans le fichier config.php.

Les paramètres spécifiques de Yii sont déclarés dans le tableau des composants :

    'components' => array(
        'db' => array(
            ....
        ),
        'Specific settings'=>array(
            ....
        ),
    ),
Pour plus d'informations à propos du framework Yii, Veuillez accéder au lien suivant.

Paramètres de base de données

Les paramètres de base de données sont écrits lors de l'installation dans le fichier config.php lorsque vous installez LimeSurvey pour la première fois. Si vous le souhaitez vous pouvez modifier cette partie de la configuration. Mais rappelez-vous SVP que vous le faites à vos propres risques Voir aussi [documentation de Yii], et souvenez-vous que LimeSurvey supporte seulement les types de bases de données mysql, pgsql, dblib, mssql and sqlsrv.

Paramètres de session

Vous pouvez définir certains paramètres de session dans config.php (consultez les deux exemples ci-dessous). Vous pouvez décommenter/ajouter la partie nécessaire dans config.php. Consultez la Yii Documentation pour d'autres paramètres.

Template:Alerte

Utiliser des sessions basées sur des tables

LimeSurvey peut utiliser des sessions basées sur des tables, vous trouvez une partie commentée sur le fichier généré par défaut config.php. Pour utiliser une session basée sur une table, supprimez le // avant chaque ligne.

 'session' => tableau (
 'class' => 'application.core.web.DbHttpSession',
 'connectionID' => 'db',
 'sessionTableName' => '{{sessions} }',
 ),

Template:Alerte

Mise à jour des autres sessions

Si vous utilisez SSL ('https') pour votre installation de LimeSurvey, ajouter les lignes suivantes dans votre config.php augmentera la sécurité de la session :

        // Définir le cookie avec SSL
        'session' => array (
            'cookieParams' => array(
                    'secure' => true, // utiliser SSL pour les  cookies
                    'httponly' => true // Les cookies ne seront pas utilisés pour les autres protocoles - experimental
                ),
            ),

Si vous souhaitez fixer le domaine pour un cookie, utilisez ceci dans config.php:

        // Set the domain for cookie
        'session' => array (
            'cookieParams' => array(
                    'domain' => '.example.org',
                ),
            ),

Si vous avez de multiples installations sur le même serveur, il serait plus rapide et facile d'installer différents noms de sessions pour chaque instance de LimeSurvey. Cela pourrait être utile pour IE11 sous certaines conditions (voir issue 12083)

        // Mettre le nom de la session
        'session' => array (
            'sessionName' => "LimeSurveyN1",
            ),

Paramètres de requête

Les paramètres de requête sont importants, mais les paramètres par défaut sont déjà optimisés pour l'utilisation de LimeSurvey. Voir documentation de Yii pour plus d'information.

Par exemple, la configuration des paramètres de requête LimeSurvey peut être modifiée de la manière suivante (à vos propres risques) :

 // Désactive la protection CSRF
'request' => array(
 'enableCsrfValidation'=>false, 
 ),
 // Applique une certaine base d'URL 
 'request' => array(
 'hostInfo' => 'http://www.example.org/' 
 ),
 // Définissez le nom de domaine et le chemin du cookie pour la protection CSRF, le chemin est utilisé si vous avez une instance différente sur le même domaine 'request' => array(
 'csrfCookie' => array( 
 'domain' => '.example.com',
 'path' => '/limesurvey/',
 ) 
 ),

Si vous devez mettre à jour uniquement l'url pour les emails symboliques, définissez votre publicurl dans votre fichier config.php.


Autoriser l'utilisation de la session et la validation Csrf dans iFrame

Après avoir autorisé l'Iframe embedding, vous devez mettre à jour certaines parties de la configuration.

Attention : Cette solution ne fonctionnera pas de manière fiable dans tous les navigateurs, même avec tous les paramètres définis.

Une solution meilleure et 100 % fiable ne peut être garantie que si le site de cadrage utilise le même domaine racine.

Ces paramètres ont été testés avec Firefox 81.0.2 et Chromium 85.0.4183.121.

Autoriser le démarrage de la session dans iframe

La session doit être sécurisée (https valide), http uniquement et identique au site Aucun. Tous les paramètres doivent être définis en minuscules.

'session' => array (
 'sessionName'=>'LS-VBXZZORFJZCAKGYI',
 // Décommentez les lignes suivantes si vous avez besoin de sessions basées sur des tables.
 // Remarque : les sessions basées sur des tables sont actuellement non pris en charge sur le serveur MSSQL.
 // 'class' => 'application.core.web.DbHttpSession',
 // 'connectionID' => 'db',
 // 'sessionTableName' = > '{{sessions}}',
 'cookieParams' => array(
 'secure' => true,
 'httponly' => true,
 'samesite' => 'Aucun' ,
 ),
 ),

Autoriser le cookie csrf dans iframe

Identique à la session : doit être sécurisée et le même site défini sur Aucun. L'ensemble du tableau doit être ajouté au même niveau que la session.

'request' => array(
 'enableCsrfValidation'=>true,
 'csrfCookie' => array(
 'sameSite' => 'Aucun',
 'secure' => true,! N! ),
 ),

Paramètres URL

Template:Alerte

Pour modifier les paramètres d'URL par défaut, mettez à jour le fichier urlManager:

 // Utilisez une URL courte 
 'urlManager' => array(
 'urlFormat' => 'chemin',
 'showScriptName' => false,
 ),


Vous pouvez également ajouter .html après l'identifiant de l'enquête de la manière suivante :

 // Utilisez une URL courte 
 'urlManager' => tableau(
 'urlFormat' => 'chemin',
 'rules' => tableau (
 '<sid:\d+> ' => array('survey/index','urlSuffix'=>'.html','matchValue'=>true),
 ),
 'showScriptName' => faux,
 ),

Pour plus d'informations, consultez la Documentation Yii.

Paramètres d'identification

Yii apporte différentes solution pour générer des journaux. Pour plus d'informations, rendez vous sur logging special topic. LimeSurvey utilise '1' ou '2' par défaut, ce qui permet chaque utilisateur du web de voir ces journaux. Vous pouvez créer vos propres paramètres en utilisant directement Yii.

Par exemple, une solution rapide pour ces erreurs de log et avertissements dans les fichiers est :

return array(
	'components' => array(
		/* Other component part here 'db' for example */
		'log' => array(
			'routes' => array(
				'fileError' => array(
					'class' => 'CFileLogRoute',
					'levels' => 'warning, error',
					'except' => 'exception.CHttpException.404',
				),
			),
		),
		/* Other component part here 'urlManager' for example */
	),
	/* Final part (with 'runtimePath' 'config' for example) */
);
 Hint: Le fichier est sauvé par défaut dans limesurvey/tmp/runtime/application.log, qui est situé dans le dossier base de LimeSurvey.
  Yii utilise un chemin d'exécution. Par défaut, les registres sont accessible sur le web. Ils peuvent contenir beaucoup d'information de votre serveur. Il est préférable d'utiliser un répertoire inaccessible via le web. Vous pouvez le définir dans les itinéraires ou en mettant à jour les Runtime path.

.

Chemin d'exécution

The runtime path doit être un répertoire lisible et accessible en écriture pour "l'internaute". Toutefois, le chemin d'exécution contient des fichiers avec des informations de sécurité potentielles qui sont situées dans la zone d'accès du Web publique. LimeSurvey collecte ces fichiers dans le répertoire temporaire du répertoire racine de LimeSurvey. Dans le but d'éliminer l'accès à de telles informations, vous pouvez définir le chemin d'exécution en dehors de l'accès Web public en modifiant les lignes respectives dans le fichier /application/config/config.php:

 
return array(
  'components' => array(
    []
    'runtimePath'=>'/var/limesurvey/runtime/',
    'config'=>array(
    []
    )
  )
)

Paramètres généraux

  • $sitename : Permet de donner un nom à votre site d'enquêtes en ligne. Ce nom apparaitra dans la vue de la liste des questionnaires et dans l'entête de l'administration. (depuis la version 1.87 ce paramètre est écrasé par les paramètres généraux)
  • $siteadminemail : Adresse par défaut de l’administrateur du site. Elle est utilisée pour les messages systèmes et les opérations de contact. (depuis la version 1.87 ce paramètre est écrasé par les paramètres généraux)
  • $siteadminbounce : Adresse vers laquelle seront acheminés les messages rejetés. (depuis la version 1.87 ce paramètre est écrasé par les paramètres généraux)
  • $siteadminname : Nom réel de l'administrateur du site. (depuis la version 1.87 ce paramètre est écrasé par les paramètres généraux)
  • Nomdusite: Donnez à votre questionnaire un nom. Ce nom va apparaitre dans la liste de l'aperçu and dans l'en-tête d'administration. La valeur par défaut est 'LimeSurvey' et peut être substitué dans la boite de dialogue paramètres globaux ou modifié dans config.php.
  • emaildel'administrateur: C'est l'adresse mail par défaut de l'administrateur du questionnaire et c'est utilisé pour les messages de système ou les options de contact. Ce paramètre est utilisé uniquement comme valeur par défaut et peut être remplacé dans le paramètres globaux dialogue.
  • messagesrenvoyésadministrateur: C'est l'adresse email à laquelle les emails renvoyés seront envoyés. Ce paramètre est utilisé uniquement comme valeur par défaut et peut être remplacé par la boîte de dialogue paramètres globaux.
  • nomdel'administrateur: Le vrai nom de l'administrateur du site. Ce paramètre est utilisé uniquement comme valeur par défaut et peut être remplacé dans la boîte de dialogue paramètres globaux).
  • nom_d'hôte_proxy: C'est le nom d'hôte de votre serveur proxy (il doit être mentionné si vous êtes derrière un proxy et que vous voulez mettre à jour LimeSurvey en utilisant ComfortUpdate).
  • port_d'hôte_proxy: C'est le port de votre serveur proxy (il doit être mentionné si vous êtes derrière un proxy et que vous voulez mettre à jour LimeSurvey en utilisant ComfortUpdate).

Sécurité

  • maxLoginAttempt : Il s'agit du nombre de tentatives dont dispose un utilisateur pour saisir le mot de passe correct avant de voir son adresse IP bloquée/verrouillée. La valeur par défaut est 3 et elle peut être modifiée depuis config.php.
  • timeOutTime : Si l'utilisateur saisit un mot de passe incorrect pour<maxLoginAttempt> , il ou elle est exclu pendant<timeOutTime> secondes. La valeur par défaut est de 10 minutes et elle peut être modifiée depuis config.php.
  • maxLoginAttemptParticipants : Il s'agit du nombre de tentatives dont dispose un participant pour saisir un token valide avant d'obtenir son Adresse IP bloquée/verrouillée. La valeur par défaut est 3 et elle peut être modifiée depuis config.php.
  • timeOutParticipants : Si le participant saisit incorrectement le token pour<maxLoginAttemptParticipants> , il ou elle est exclu pendant<timeOutParticipants> secondes. La valeur par défaut est de 10 minutes et elle peut être modifiée depuis config.php.
  • surveyPreview_require_Auth : définie sur true par défaut. Si vous définissez ce paramètre sur « false », toute personne peut tester votre enquête en utilisant l'URL de l'enquête, sans se connecter au panneau d'administration et sans avoir à activer l'enquête au préalable. Ce paramètre est une valeur par défaut et peut être remplacé dans la boîte de dialogue paramètres globaux ou modifié dans config.php.
  • usercontrolSameGroupPolicy : défini sur true par défaut. Par défaut, les utilisateurs non administrateurs définis dans l'interface de gestion de LimeSurvey ne pourront voir que les utilisateurs qu'ils créent ou les utilisateurs appartenant à au moins un même groupe. La valeur par défaut peut être remplacée dans la boîte de dialogue paramètres globaux ou modifiée dans config.php.
  • filterxsshtml: Ce paramètre permet de filtrer les balises html suspectes situées dans les enquêtes, groupes, ainsi que des textes de questions et réponses dans l'interface d'administration. Laissez ceci à 'false' seulement si vous faites absolument confiance aux utilisateurs que vous avez créés pour l'administration de LimeSurvey et si vous souhaitez permettre à ces utilisateurs de pouvoir utiliser Javascript, Flash Movies, etc. Les super admins n'ont jamais leur code HTML filtré . La valeur par défaut peut être remplacée dans la boîte de dialogue paramètres globaux ou modifiée dans config.php.
  • demoMode: Si cette option est définie sur 'true' dans config.php. , alors LimeSurvey passera en mode démo. Le mode démo modifie les éléments suivants :
    • Désactive les détails de l'utilisateur administrateur et la modification du mot de passe ;
    • Désactive le téléchargement de fichiers sur l'éditeur de modèles;
    • Désactive l'envoi d'invitations et de rappels par courrier électronique ;
    • Désactive la création d'un dump de base de données;
    • Désactive la possibilité de modifier les paramètres globaux suivants : nom du site, langue par défaut, mode éditeur HTML par défaut, filtre XSS.
  • 'forcedsuperadmin:' Tableau d'identifiants d'utilisateur avec tous les droits sur tous LimeSurvey. Ces paramètres ne peuvent être mis à jour que dans le fichier config.php. Les droits de cet utilisateur ne peuvent pas être modifiés dans les autorisations globales pour un utilisateur, même par un autre super-administrateur forcé. Par défaut : l'utilisateur avec ces droits est l'utilisateur avec l'identifiant : 1. Le premier utilisateur créé juste après l'installation.
  • force_ssl: force LimeSurvey à s'exécuter via HTTPS ou à bloquer HTTPS. Voir Force HTTPS dans l'interface graphique d'administration des paramètres globaux.
  • ssl_emergency_override: Ce paramètre force la désactivation de SSL. Si vous avez activé HTTPS/SSL dans les paramètres globaux mais que HTTPS n'est pas activé sur votre serveur, la seule façon de le désactiver est de modifier directement une valeur dans la base de données. Cela vous permet de forcer la désactivation de HTTPS pendant que vous modifiez les paramètres globaux de Force Secure. Cela devrait toujours être faux, sauf en cas d'urgence où vous le remplacez par vrai jusqu'à ce que vous résolviez le problème. Ce paramètre ne peut être défini que via le fichier config.php.
  • ssl_disable_alert: Désactivez l'alerte pour le super-administrateur concernant SSL non forcé, si vous ne pouvez vraiment pas ou ne voulez pas forcer SSL. Ce paramètre ne peut être défini que via le fichier config.php.

Resources

  • sessionlifetime: Définit le temps en secondes après lequel une session d'enquête expire. Cela s'applique uniquement si vous utilisez des sessions de base de données. Si vous utilisez des sessions de base de données, modifiez le paramètre dans config.php ou remplacez la valeur par défaut dans la boîte de dialogue paramètres globaux.
  • memorylimit: Ceci détermine la quantité de mémoire de LimeSurvey Peut accéder. « 128 Mo » est le minimum (Mo=Mégaoctet) recommandé. Si vous recevez des erreurs de délai d'attente ou rencontrez des problèmes pour générer des statistiques ou exporter des fichiers, augmentez cette limite à « 256 Mo » ou plus. Si votre serveur Web a défini une limite plus élevée dans config.php, alors ce paramètre sera ignoré.
Veuillez garder à l'esprit que ces paramètres locaux peuvent toujours être annulés par les modifications effectuées dans la boîte de dialogue des paramètres globaux.

Pour augmenter la limite de mémoire à 128 Mo, vous pouvez également essayer d'ajouter :

  • memory_limit = 128M au fichier principal php.ini de votre serveur (recommandé, si vous avez accès)
  • memory_limit = 128M au fichier php.ini dans la base de LimeSurvey
  • php_value memory_limit = 128M dans le fichier .htaccess de la base de LimeSurvey
  • max_execution_time: Set the number of seconds a script is allowed to run. If this is reached, the script returns a fatal error. To be allowed to export big survey data and statistics, LimeSurvey try to set it by default to 1200 seconds. You can set a bigger time or a lower time if needed. Only accessible via php config file.

Apparence

  • $lwcdropdowns : Peut être défini à "L" ou "R". Le choix de "R" résultera dans l'affichage des questions de type "Liste avec commentaire" sous forme de boutons radio. En mettant la valeur "L", les choix de réponses seront affichés sous forme d'une liste déroulante.
  • $dropdownthreshold : Quand vous choisissez "R" pour le paramètre $dropdowns, cela permet de définir une valeur maximale au delà de laquelle les options de réponses seront tout de même affichées sous forme de liste déroulante. Si vous avez une question qui possède de nombreuses options de réponse, cela peut être dérangeant voir contre-productif pour le participant de les afficher toutes sous forme de boutons radio. En définissant un maximum, par exemple à 25 (qui est la valeur par défaut), cela permettra que les longues listes seront plus faciles à utiliser par les participants aux questionnaires.
  • $repeatheadings : Avec les questions de type tableaux, vous aurez souvent plusieurs réponses qui, lors de l'affichage sur écran, tiendront sur plus d'une page. Ce paramètre permet de définir combien de réponses seront affichées avant de répéter les entêtes pour la question. Une bonne valeur pour ce paramètre tourne autour de 15. Si vous ne souhaitez pas répéter les entêtes, mettez la valeur "0" (qui est la valeur par défaut).
  • $minrepeatheadings : Le minimum de réponses restantes requises pour répéter les entêtes dans les questions de type tableau.
  • $addTitleToLinks : Si ce paramètre est à "true", alors LimeSurvey ajoutera une élément 'title' à tous les liens utilisés dans les menus. Cela aidera les lecteurs d'écran à analyser les menus. Ne mettez à "true" que si vous utiliser des lecteurs d'écrans car cela interfère avec les bulles d'aides.
  • $defaulttemplate : Définit le thème par défaut utilisé pour afficher la liste des questionnaires publics. (depuis la version 1.87 ce paramètre est écrasé par les paramètres généraux)
  • $defaulthtmleditormode : Définit le mode pour l'éditeur HTML intégré (depuis la version 1.87 ce paramètre est écrasé par les paramètres généraux). Les valeurs valides sont : inline (défaut), popup et none :
    • inline : Remplacement en temps réel et en ligne des champs par un éditeur HTML. Lent mais commode et convivial.
    • popup: Ajoute un icône qui ouvre un popup comprenant un éditeur HTML. Plus rapide mais affiche du code HTML dans les formulaires.
    • none: Pas d'éditeur HTML.

Langue & Temps

  • $defaultlang: This should be set to the default language to be used in your administration scripts, and also the default setting for language in the public surveys. You can change this setting for public surveys on a survey-by-survey basis from the admin scripts. Remplacer par les paramètres généraux depuis la version 1.87.
  • $timeadjust: If your web server is in a different time zone to the location where your surveys will be based, put the difference between your server and your home time zone here. For example, I live in Australia but use a US web server. The web server is 14 hours behind my local time zone. So my setting here is "14". In other words, it adds 14 hours to the web servers time. This setting is particularly important when surveys timestamp the responses. Surcharger par les paramètres généraux depuis la version 1.87.
  • $modrewrite: (Obsolète dans la version 2.0). If set to 1, active fancy URL Feature (Example: http://survey.example.com/123456/lang-fr/tk-sdlfkjozeiru instead of http://survey.example.com/index.php?sid=123456⟨=fr&token;=sdlfkjozeiru) . Before activate, you MUST rename "htaccess.txt" file to ".htaccess". Prerequies: Apache + mod_rewrite.

Survey Behavior

  • $allowmandbackwards: A setting of 1 for this variable will allow survey participants to move to a previous question even if they haven't answered a mandatory question. If it is set on 0, then participants will have to answer that question even to move to a previous question.
  • $deletenonvalues: This is a fairly difficult setting to explain. If set to 0, if a question (let's call it question "b") is only displayed conditionally (ie: based on the answer to a previous question - let's call it question "a"), and a survey user answers that question (question "b"), but then moves backwards through the script and changes the previous question (question "a") such that this question (question "b") no longer displays, the survey will still remember and save their answer to the no longer applicable question (question "b"). I generally prefer this to be the case, on the basis that it may be interesting to know this information anyway. But, if you would prefer that the script be consistent and refuse to store information that shouldn't logically display you can change this setting to 1, and the script will not save this redundant information.
  • $shownoanswer: When a question of a radio button/select type that contains editable answers (ie: List, Array questions) is not mandatory and $shownoanswer is set to 1, an additional entry is shown for "N/A" - so that participants may choose to not answer the question. Some people prefer this not to be available. Set this to 0 to turn this off.
  • $sessionlifetime: This setting determines how many seconds your survey participants can remain inactive (that means not changing the page) until his session times out and the data on the current page is lost. (Default: 3600)
  • $printanswershonorsconditions: This setting determines if the printaswers feature will display entries from questions that were hidden by conditions-branching. (Default: 1 [hide answers from questions hidden by conditions])
  • $hide_groupdescr_allinone: This setting is relevant for all-in-one surveys using conditions and has bene introduced in LimeSurvey 1.85RC3. When this is set to true the group name and description is hidden if all questions in the group are hidden. (Default: true (hide group name and description when all conditions in the group are hidden by conditions))
  • $showpopups:  Show popup messages if mandatory or conditional questions have not been answered correctly. 1=Show popup message (default), 0=Show message on page instead.

Numerical question type behavior

  • bFixNumAuto: Numeric fields can be automatically filtered to remove all non numeric values. By default this is enable, you can disable it globally. This settings is related to Fix automatically numeric value in core theme options. It was enable for Yes, disable for Only for expression and No.
  • bNumRealValue: Numeric fields used in expression manager can be fixed or not. It's fixed by default. If NUMERIC is a numerical question : disable or 0 : {NUMERIC} with bad caracters send '', enable or 1 : {NUMERIC} send all character entered. This settings is related to Fix automatically numeric value in core theme options. It was enable for Yes and Only for expression and disable for No.

Development

  • $debug: With this setting you set the PHP error reporting to E_ALL. That means every little notice, warning or error with the script is shown. This setting should be only switched to 1 if you are trying to debug the application for any reason, if you are a developer switch it to 2. Don't switch it to 1 or 2 in production since it might cause path disclosure. (Default: 0)

Dans le cas où vous rencontrez une erreur dans l'application, nous vous recommandons fortement d'activer le paramètre de debug pour obtenir une erreur plus détaillée que vous pourrez soumettre avec le report du bug.

    'config'=>array(
        'debug'=>2,
        'debugsql'=>0,
    )

If you work on plugin and need a quick way to dump variables on screen : you can use traceVar function. If debug is set : this function use CWebLogRoute to be shown on HTML page. Usage traceVar($MyVariable)

Paramétrage des E-mails

All the settings from below can be overridden in the global settings dialog.

  • 'emailmethod: This determines how email messages are being sent. The following options are available:
    • 'mail:' it uses internal PHP mailer;
    • 'sendmail:' it uses sendmail mailer;
    • 'smtp:' it uses SMTP relaying. Use this setting when you are running LimeSurvey on a host that is not your mail server.
  • 'emailsmtphost: If you use 'smtp' as $emailmethod, then you have to put your SMTP-server here. If you are using Google mail you might have to add the port number like $emailsmtphost = 'smtp.gmail.com:465'.
  • emailsmtpuser: If your SMTP-server needs authentication then set this to your user name, otherwise it must be blank.
  • emailsmtppassword: If your SMTP-server needs authentication then set this to your password, otherwise it must be blank.
  • emailsmtpssl: Set this to 'ssl' or 'tls' to use SSL/TLS for SMTP connection.
  • maxemails: When sending invitations or reminders to survey participants, this setting is used to determine how many emails can be sent in one bunch. Different web servers have different email capacities and if your script takes too long to send a bunch of emails, the script could time out and cause errors. Most web servers can send 100 emails at a time within the default 30 second time limit for a PHP script. If you get script timeout errors when sending large numbers of emails, reduce the number in this setting. Clicking the 'send email invitation' button from the token control toolbar (not the button situated on the right of each token) sends the <maxemails> number of invitations, then it displays a list of the addresses of the recipients and a warning that there are more emails pending than could be sent in one batch. Continue sending emails by clicking below. There are ### emails still to be sent. and provides a "continue button" to proceed with the next batch. I.e., the user determines when to send the next batch after each batch gets emailed. It is not necessary to wait with this screen active. The admin could log out and come back at a later time to send the next batch of invites.

Statistics and response browsing

  • filterout_incomplete_answers: Control the default behavior of filtering incomplete answers when browsing or analyzing responses. For a discussion on incomplete responses see our browsing survey results wiki. Since these records can corrupt the statistics, an option is given to switch this filter on or off in several GUI forms. The parameter can be edited in the config.php. The following options are available:
    • 'show': Allows you to visualize both complete and incomplete answers;
    • 'filter': It shows only complete answers;
    • 'incomplete': Show only incomplete answers.
  • strip_query_from_referer_url: This setting determines if the referrer URL saves the parameter or not. The default value is 'false' (in this case, the referrer URL saves all parameters). Alternatively, this value can be set to 'true' and the parameter part of the referrer URL will be removed.
  • showaggregateddata: when activated, additional statistical values such as the arithmetic mean and standard deviation are shown. Furthermore, the data is aggregated to get a faster overview. For example, results of scale 1+2 and 4+5 are added to have a general ranking like "good" (1/2), "average" (3) and "bad" (4/5). This only affects question types "A" (5 point array) and "5" (5 point choice).
  • PDF Export Settings: This feature activates PDF export for printable surveys and Print Answers. The PDF export function is totally experimental and the output is far from being perfect. Unfortunately, no support can be given at the moment - if you want to help to fix it, please get in touch with us.
    • 'usepdfexport': Set '0' to disable and '1' to enable;
    • 'pdfdefaultfont': It represents the default font that will be used by the pdf export function. The default value is 'auto'. To change it, you have to set it to one of the PDF core fonts.
    • 'alternatepdffontfile': It's an array with language keys and their corresponding font. The default font for each language can be replaced in the config.php file;
    • 'pdffontsize': it shows the font size for normal texts; For the title of the survey, it is <pdffontsize>+4, while for the group title is <pdffontsize>+2. It can be edited in the config.php file or from the [Global settings|global settings]] dialog;
    • 'notsupportlanguages': it includes a list with the languages for which no PDF font was found. The list includes Amharic ('am'), Sinhala ('si'), and Thai ('th'), and it can be found in the config-defaults.php file;
    • 'pdforientation': Set 'L' for Landscape or 'P' for portrait format. It can be edited from the config.php file.
  • Graph setting
    • 'chartfontfile': Sets the font file name that is used to create the statistical charts. The file has to be located in the fonts directory, located in the LimeSurvey root folder. It can be edited in the config.php file;
    • 'alternatechartfontfile': It's an array with language keys and their corresponding font. It can be edited in the config.php file.
  • showsgqacode: This setting is used at the printable survey feature and defaults to 'false. If you set showsgqacode = 'true';, the IDs of each question - and answer if applicable - will be shown. These IDs match the column heading at the Lime_survey_12345 table, which holds the answer data for a certain survey. These IDs can be used for a code book for manual database queries.

LDAP settings

Comme il s'agit d'un sujet complet, nous avons déplacé Paramètres LDAP vers une autre page.

Authentication

À partir de LimeSurvey 2.05, l'authentification sera gérée par des plugins. Par conséquent, les informations ci-dessous peuvent être obsolètes. Voir les plugins wiki pour les informations les plus récentes.

Délégation d'authentification sur le serveur web

Les administrateurs système peuvent souhaiter que leurs administrateurs d'enquête soient authentifiés par rapport à un système d'authentification central (Active Directory, openLdap, Radius, ...) plutôt que d'utiliser la base de données interne de LimeSurvey. Un moyen facile de le faire est de configurer votre logiciel de serveur Web pour utiliser ce système d'authentification externe, puis demander à LimeSurvey de faire confiance à l'identité de l'utilisateur signalée par le serveur Web. Pour activer cette fonctionnalité, vous devez :

  • définir 'auth_webserver' sur 'true' dans config.php;
  • activer l'authentification du côté du serveur Web.

Please note that:

  • LimeSurvey will then bypass its own authentication process (by using the login name reported by the web server without asking for a password);
  • this can only replace the LimeSurvey GUI authentication system, not the survey invitation system (participant interface).

Délégation d'authentification sans importation automatique d'utilisateur

Please note that Authentication Delegation doesn't bypass the LimeSurvey authorization system by default - meaning that, even if you don't have to manage passwords in LimeSurvey, you still need to define the users in the LimeSurvey database and assign them the correct set of rights in order to let them access the administration panel.

A user is then granted access to LimeSurvey if and only if:

  • he has been authenticated to the web server;
  • his login name is defined as a user in the LimeSurvey user database (the user is then granted the privileges of the user defined in the LimeSurvey user database).

Authentication delegation with automatic user import

When managing a huge user database, it is sometimes easier to auto-import users in the LimeSurvey database:

  • auth_webserver_autocreate_user: If set to 'true', LimeSurvey will try to auto-import users authenticated by the web server but not already in its users DB.
  • auth_webserver_autocreate_profile: An array describing the default profile that will be assigned to the user, including the full (fake) name, email, and privileges.

Si vous voulez customiser votre profil d'utilisateur pour qu'il corresponde au nom que vous avez utilisé pour vous enregistrer, vous avez à développer une fonction simple appelée hook_get_autouserprofile - avec cette fonction vous pouvez récupérer à partir d'une base de données de compte utilisateur centrale (par exemple, à partir d'un annuaire LDAP) le vrai nom complet, les noms et l'adresse e-mail d'un utilisateur particulier. Vous pouvez même personnaliser ses privilèges sur le système en fonction des groupes auxquels il est affecté dans la base de données externe.

The hook_get_auth_webserver_profile function takes the user login name as the only argument and can return:

  • False or an empty array - in this case the user is denied access to LimeSurvey;
  • an array containing all common userprofile entries as described in the $WebserverAuth_autouserprofile
function hook_get_auth_webserver_profile($user_name)
{
     // Retrieve user's data from your database backend (for instance LDAP) here
     ... get $user_name_from_backend
     ... get $user_email_from_backend
     ... get $user_lang_from_backend
     ... from groups defined in your backend set $user_admin_status_frombackend_0_or_1
     return Array(
                     'full_name' => "$user_name_from_backend",
                     'email' => "$user_email_from_backend",
                     'lang' => '$user_lang_from_backend',
                     'htmleditormode' => 'inline',
                     'templatelist' => 'default,basic,MyOrgTemplate',
                     'create_survey' => 1,
                     'create_user' => 0,
                     'delete_user' => 0,
                     'superadmin' => $user_admin_status_frombackend_0_or_1,
                     'configurator' =>0,
                     'manage_template' => 0,
                     'manage_label' => 0);
}

     // If user should be denied access, return an empty array

     // return Array();
  The optionnal 'hook_get_auth_webserver_profile' function is for advanced user usage only! For further details, please read the comments from the config-defaults.php file.


User name mapping

In the case in which some users have an external user name that is different from their LimeSurvey user name, you may find useful to use a user name mapping. This is done in LimeSurvey by using the auth_webserver_user_map parameter. For instance, imagine you don't have an 'admin' user name defined in your external authentication database. Then, in order to login to LimeSurvey as admin, you'll have to map your external user name (let's call it 'myname') to the admin login name in LimeSurvey. The corresponding setup is:

'config'=>array(
...
'auth_webserver_user_map' => array ('myname' => 'admin');
)

After a successful authentication with the 'myname' login and web server password, you'll be directly authorized to use LimeSurvey as the 'admin' user.

Cela a de graves implications sur le plan de la sécurité, alors utilisez-le avec soin. Protégez également votre config.php de l'accès en écriture par le serveur Web.

Utilisation de mots de passe à utilisation unique

Un utilisateur peut ouvrir la page de connection de LimeSurvey sur efault.com/limesurvey/admin et inscrire son identifiant et son mot de passe à utilisation unique qui aura été écrit précédemment dans la table des utilisateurs (column one_time_pw) par une application externe.

Ce paramètre doit être activé ( config ['use_one_time_passwords'] = true;</ code>) pour permettre l'utilisation de mots de passe à usage unique (default = false). Vous trouverez plus d'informations dans la section Gérer les utilisateurs.

More information can be found in the "Manage Users" section.


Encryption settings (New in 4.0.0 )

  Attention : Once set, encryption keys should never be changed, otherwise all encrypted data could be lost !


When update or install, this parameters was generated by LimeSurvey and set in application/config/security.php file. You can move this settings in config.php if you want or leave in security.php.

See data encryption for detail on this feature.

  • encryptionkeypair
  • encryptionpublickey
  • encryptionsecretkey

Advanced url settings

  • publicurl: This should be set to the URL location of your 'public scripts'. The public scripts are those located in the "limesurvey" folder (or whatever name you gave to the directory that all the other scripts and directories are kept in). This settings is available in config.php and it is used when LimeSurvey need an absolute url (for example when token emails are sent).
  • homeurl: This should be set to the URL location of your administration scripts. These are located in the /limesurvey/admin folder. This should be set to the WEB URL location - for example, http://www.example.com/limesurvey/html/admin. Don't add a trailing slash to this entry. The default setting in config.php attempts to detect the name of your server automatically using a php variable setting - {$_SERVER['SERVER_NAME']}. In most cases, you can leave this and just modify the remainder of this string to match the directory name you have put the LimeSurvey scripts in.
  • tempurl: This should be set to the URL location of your "/limesurvey/tmp" directory - or to a directory in which you would like LimeSurvey to use to serve temporary files.
  • uploadurl: This should be set to the URL location of your "/limesurvey/upload" directory - or to a directory in which you would like LimeSurvey to use to serve uploaded files. This allow you to set uploaded files on another url domain.

Paramètres de répertoires avancés

  • homedir: This should be set to the physical disk location of your administration scripts - for example "/home/usr/htdocs/limesurvey/admin". Don't add a trailing slash to this entry. The default setting in config.php attempts to detect the default root path of all your documents using the php variable setting {$_SERVER['DOCUMENT_ROOT']}. In most cases you can leave this and just modify the remainder of this string to match the directory name you have put the LimeSurvey scripts in.
  • publicdir: This should be set to the physical disk location of your 'public scripts'.
  • tempdir: This should be set to the physical disk location of your /limesurvey/tmp directory so that the script can read and write files.
  • uploaddir: This should be set to the physical disk location of your /limesurvey/upload directory so that the script can read and write files.
  • sCKEditorURL: url of the fckeditor script.
  • fckeditexpandtoolbar: defines if the fckeditor toolbar should be opened by default.
  • pdfexportdir: This is the directory with the tcpdf.php extensiontcpdf.php.
  • pdffonts: This is the directory for the TCPDF fonts.

Other advanced settings

Upload files

  • allowedthemeuploads: File types allowed to be uploaded in theme editor
  • allowedresourcesuploads: File types allowed to be uploaded in the resources sections, and with the HTML Editor
  • allowedfileuploads (New in 4.0.0 ) Global restriction on file type to be uploaded
  • magic_database: (New in 3.17.17 ) Allow to use a different MIME database for finfo_open. Can be updated only in config.php file. Example : /usr/share/misc/magic.mgc for redhat based linux.
  • magic_file: (New in 3.17.17 ) Allow to use a different file to get the array of extension by mime type than the included one. Must be a PHP file return an array. Can be updated only in config.php file.

Update

  • updatable: This setting is in version.php. Can be true or false. If you set to true : when an super admin user log in : LimeSurvey checks if an update is available and show you a warning. If set to false : no check is done and you can't use ComfortUpdate.