Actions

Optional settings/bg: Difference between revisions

From LimeSurvey Manual

(Created page with "*''bFixNumAuto:'' Числовите полета могат да бъдат автоматично филтрирани, за да се премахнат всички неч...")
(Created page with "=Разработване и отстраняване на грешки= *'''debug:''' С тази настройка вие задавате отчитането на PHP г...")
Line 267: Line 267:
*'''bNumRealValue:'''' Числовите полета, използвани в диспечера на изрази, могат да бъдат фиксирани или не. Това е фиксирано по подразбиране. Ако NUMERIC е числов въпрос: деактивирайте или 0: {NUMERIC} с лоши символи изпратете<nowiki> ''</nowiki> , активиране или 1 : {NUMERIC} изпраща всички въведени знаци. Тези настройки са свързани с „Автоматично коригиране на числова стойност“ в основните опции на темата. Беше активиран за „Да“ и „Само за изразяване“ и деактивиран за „Не“.
*'''bNumRealValue:'''' Числовите полета, използвани в диспечера на изрази, могат да бъдат фиксирани или не. Това е фиксирано по подразбиране. Ако NUMERIC е числов въпрос: деактивирайте или 0: {NUMERIC} с лоши символи изпратете<nowiki> ''</nowiki> , активиране или 1 : {NUMERIC} изпраща всички въведени знаци. Тези настройки са свързани с „Автоматично коригиране на числова стойност“ в основните опции на темата. Беше активиран за „Да“ и „Само за изразяване“ и деактивиран за „Не“.


=Development and debugging=
=Разработване и отстраняване на грешки=
*'''debug:''' With this setting, you set the PHP error reporting to E_ALL. This means that every little notice, warning or error related to 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. The default value is '0' and it can be edited in config.php.  
*'''debug:''' С тази настройка вие задавате отчитането на PHP грешки на E_ALL. Това означава, че се показва всяка малка бележка, предупреждение или грешка, свързана със скрипта. Тази настройка трябва да бъде превключена на '1' само ако се опитвате да отстраните грешки в приложението по някаква причина. Ако сте разработчик, превключете на „2“. Не го превключвайте на „1“ или „2“ в производството, тъй като това може да доведе до разкриване на пътя. Стойността по подразбиране е '0' и може да се редактира в config.php.  
*'''debugsql:''' Activate this setting if you want to display all SQL queries executed for the script on the bottom of each page. Very useful for the optimization of the the number of queries. In order to activate it, change the default value to '1' from the config.php file.
*'''debugsql:''' Активирайте тази настройка, ако искате да показвате всички SQL заявки, изпълнени за скрипта в долната част на всяка страница. Много полезно за оптимизиране на броя на заявките. За да го активирате, променете стойността по подразбиране на '1' от файла config.php.
*'''use_asset_manager:''' By default : debug mode disable asset manager, you can allow you to use asse manager with debug mode enable.  
*'''use_asset_manager:''' По подразбиране: режимът за отстраняване на грешки деактивира диспечера на активи, можете да ви позволите да използвате диспечера на активи с разрешен режим на отстраняване на грешки.  


In the case in which you experience an error in the application, we strongly recommend to activate the debug setting in order to get a more detailed error that you can submit with the bug report:
В случай, че срещнете грешка в приложението, силно препоръчваме да активирате настройката за отстраняване на грешки, за да получите по-подробна грешка, която можете да изпратите с доклада за грешка:


<syntaxhighlight lang="php" enclose="pre">
<syntaxhighlight lang="php" enclose="pre">

Revision as of 07:55, 27 November 2023

Следващият раздел е адресиран до онези от вас, които биха искали да редактират тези настройки на конфигурацията, които не могат да бъдат променени с помощта на GUI (графичен потребителски интерфейс) на инсталацията на LimeSurvey. Моля, имайте предвид, че всички промени от основната директория на LimeSurvey се извършват на ваш собствен риск. Независимо от това, в случай, че изпитвате проблеми/имате нужда от допълнителни насоки, присъединете се към дискусионните форуми или IRC канал за помощ от общността на LimeSurvey.

Въведение

За да промените конфигурационните настройки на инсталацията, трябва да редактирате незадължителните настройки. Те могат да бъдат намерени в /application/config/config-defaults.php, който се намира в основната директория на LimeSurvey. Настройките по подразбиране на стандартната инсталация могат да бъдат намерени в config-defaults.php. Някои от тях могат да бъдат отменени чрез диалога глобални настройки, докато другите ще трябва да бъдат редактирани ръчно.

  Ако искате да промените тези настройки, моля, не ги променяйте в config-defaults.php, а копирайте конкретната настройка/ред в /application/config/config.php'' в 'config'=>array( ) и го смени там. Всички новопроменени/въведени настройки от файла config.php ще заменят стойностите по подразбиране от config-defaults.php.


Когато се извърши надграждане, се променят само настройките на config-defaults.php. Следователно редактирането на файла config.php ще запази вашите персонализирани настройки.

За да актуализирате/добавите настройките на LimeSurvey в /application/config/config.php', трябва да актуализирате конфигурационния масив:

 !Н! 'config'=>array(
 'debug'=>0,
 'debugsql'=>0,
 'LimeSurveySetting'=>'Нова стойност', // Актуализиране на конфигурацията на LimeSurvey по подразбиране тук
 )!Н!

Yii настройки

LimeSurvey използва рамката Yii, която има свои собствени конфигурационни параметри във файла application/config/internal.php' и application/config/'config.php'. Можете също да получите достъп до някои специфични конфигурационни настройки на LimeSurvey чрез конфигурацията на Yii.

Тъй като масивът config.php е обединен с цялата конфигурация, можете да замените всички Yii параметри във файла config.php.

Специфичните настройки на Yii са зададени в масива на компонентите:

 !Н! 'components' => array(
 'db' => array(
 ....
 ),
 'Специфични настройки'=>array(
 ....
 ),
 ),

Template:Забележка

Настройки на базата данни

Настройките на базата данни се записват в config.php от инсталационния файл, когато инсталирате LimeSurvey за първи път. Ако е необходимо, можете да актуализирате тази част от файла config.php. Моля, не забравяйте, че правите това на свой собствен риск!

Вижте също Yii документация и моля не забравяйте, че LimeSurvey поддържа само следните типове бази данни: mysql, pgsql, dblib, mssql и sqlsrv.

Настройки на сесията

Можете да зададете някои параметри на сесията в config.php (проверете двата примера отдолу). Можете да разкоментирате/добавите необходимата част в config.php. Вижте Yii документация за други настройки.

  Ако трябва да актуализирате настройките на сесията, за да имате множество екземпляри на LimeSurvey, работещи на един и същи сървър, проверете дали не трябва да актуализирате настройките на заявката за crsf бисквитка.


Използвайте сесии, базирани на таблици

LimeSurvey може да използва сесии, базирани на таблици, намирате коментирана част в генерирания файл по подразбиране config.php. За да използвате сесия, базирана на таблици, премахнете // преди всеки ред.

'session' => масив (
 'class' => 'application.core.web.DbHttpSession',
 'connectionID' => 'db',
 'sessionTableName' => '{{sessions} }',
 ),

Template:Предупреждение

Актуализация на други сесии

Ако използвате SSL ('https') за вашата инсталация на LimeSurvey, добавянето на следните редове към вашия config.php ще увеличи сигурността на сесията:

 // Задайте бисквитката чрез SSL
 'session' => array (
 'cookieParams' => array(
 'secure' => true, // използва SSL за бисквитки
 'httponly' => true // Бисквитките не могат да се използват от други протоколи - експериментални
 ),
 ),

Ако искате да коригирате домейна за бисквитка, използвайте следния синтаксис в config.php:

 // Задайте домейна за cookie
 'session' => array (
 'cookieParams' => array(
 'domain' => '.example.org',
 ),
 ),

Ако имате множество инсталации на един и същ сървър, може да бъде по-бързо и лесно да зададете различно име на сесия за всеки екземпляр на LimeSurvey. Това може да е необходимо за IE11 при някои условия (вижте проблем 12083)

 // Задайте името на сесията
 'session' => масив (
 'sessionName' => "LimeSurveyN1",
 ),

Настройки на заявката

Настройките на заявката са важни, но настройките по подразбиране вече са оптимизирани за използване на LimeSurvey. За да прочетете повече за тях, вижте Yii документация.

Например, конфигурацията на настройките на заявката на LimeSurvey може да бъде променена по следния начин (на ваш собствен риск) :

 // Деактивирайте CSRF защитата
 'request' => array(
 'enableCsrfValidation'=>false, 
 ),
 // Налагане на определена URL база 
 'request' => array(
 'hostInfo' => 'http://www.example.org/' 
 ),
 // Задайте името на домейна на бисквитката и пътя за CSRF защита, пътят се използва, ако имате различен екземпляр на същия домейн
 'request' => array(
 'csrfCookie' => array( 
 'domain' => '.example.com',
 'path' => '/limesurvey/',
 ) 
 ),

Ако трябва да актуализирате само URL адреса за токен имейли, задайте publicurl във вашия файл config.php.


Разрешете използването на анкети във вградена рамка

След разрешаване на вграждане на Iframe 100% надеждно решение може да бъде гарантирано само ако сайтът за рамкиране използва същия основен домейн. Ако използвате LimeSurvey Cloud, това може да се постигне чрез нужда от псевдоним на домейн

URL настройки

  Ако трябва да актуализирате само URL адреса за токена и други имейли, задайте publicurl във вашия файл config.php.


За да промените настройките на URL по подразбиране, актуализирайте urlManager:

 // Използвайте кратък URL
 'urlManager' => array(
 'urlFormat' => 'path',
 'showScriptName' => false,
 ),


Можете също така да добавите .html след идентификатора на анкетата по следния начин:

 // Използвайте кратък URL
 'urlManager' => array(
 'urlFormat' => 'path',
 'rules' => array (
 '<sid:\d+> ' => array('survey/index','urlSuffix'=>'.html','matchValue'=>true),
 ),
'showScriptName' => false,
 ),

За повече информация проверете Yii документация.

Настройки за регистриране

Yii предоставя различни решения за генериране на регистрационни файлове. За да научите повече за тях, проверете специална тема за регистриране. LimeSurvey използва '1' или '2' по подразбиране, което позволява на всеки уеб потребител да види регистрационните файлове. Можете да създадете свои собствени настройки, като използвате директно Yii.

Например, бързо решение за регистриране на грешки и предупреждения във файлове е:

 
return array(
 'components' => array(
 /* Друг компонент тук 'db' например */
 'log' => array(
 'routes' => array(
 'fileError' => array(
 'class' => 'CFileLogRoute',
 'levels' => 'предупреждение, грешка',
 'except' => 'exception.CHttpException .404',
 ),
 ),
 ),
 /* Друг компонент тук 'urlManager' например */
 ),
 /* Финална част (с ' runtimePath' 'config' например) */
);
 Hint: Файлът се записва по подразбиране в <code>limesurvey/tmp/runtime/application.log</code> , който се намира в основната папка на LimeSurvey.
  Yii използва път за изпълнение. По подразбиране регистрационните файлове са достъпни в мрежата. Те могат да съдържат много информация от вашия сървър. По-добре е да използвате директория, която не може да бъде достъпна през мрежата. Можете да го зададете в маршрути или като актуализирате Runtime path.

.

Път на изпълнение

Пътят по време на изпълнение трябва да бъде четлива и записвана директория за „уеб потребителя“. Пътят по време на изпълнение обаче съдържа файлове с потенциална информация за сигурност, които се намират в зоната за публичен уеб достъп. LimeSurvey събира тези файлове във временната директория на основната директория на LimeSurvey. За да елиминирате достъпа до такива важни данни, можете да зададете пътя на изпълнение извън публичния уеб достъп, като редактирате съответните редове във файла /application/config/config.php:

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

Общи настройки

  • 'sitename: Дава име на вашия сайт за проучване. Това име ще се появи в прегледа на списъка с анкети и в административния колонтитул. Стойността по подразбиране е „LimeSurvey“ и може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • 'siteadminemail:' Това е имейл адресът по подразбиране на администратора на сайта и се използва за системни съобщения и опции за контакт. Тази настройка се използва само като стойност по подразбиране и може да бъде заменена в диалоговия прозорец глобални настройки.
  • 'siteadminbounce:' Това е имейл адресът, на който ще се изпращат върнатите имейли. Тази настройка се използва само като стойност по подразбиране и може да бъде заменена от диалоговия прозорец глобални настройки.
  • siteadminname:'' Истинското име на администратора на сайта. Тази настройка се използва само като стойност по подразбиране и може да бъде заменена в диалоговия прозорец глобални настройки.
  • 'proxy_host_name:' Това е името на хоста на вашия прокси сървър (има да бъде споменат, ако сте зад прокси и искате да актуализирате LimeSurvey с помощта на ComfortUpdate).
  • 'proxy_host_port:' Това е портът на вашия прокси сървър (трябва да бъде споменати, ако сте зад прокси и искате да актуализирате LimeSurvey с помощта на ComfortUpdate).

Сигурност

  • maxLoginAttempt: Това е броят опити, които потребителят трябва да въведе правилната парола, преди той или тя да блокира/заключи своя IP адрес. Стойността по подразбиране е 3 и може да бъде променена от config.php.
  • timeOutTime: Ако потребителят въведе неправилна парола за<maxLoginAttempt> , тя или той се заключва за<timeOutTime> секунди. Стойността по подразбиране е 10 минути и може да бъде променена от config.php.
  • maxLoginAttemptParticipants: Това е броят опити, които участникът трябва да въведе валиден токен, преди той или тя да получи своя IP адресът е блокиран/заключен. Стойността по подразбиране е 3 и може да бъде променена от config.php.
  • timeOutParticipants: Ако участникът въведе токена неправилно за<maxLoginAttemptParticipants> , тя или той се заключва за<timeOutParticipants> секунди. Стойността по подразбиране е 10 минути и може да бъде променена от config.php.
  • surveyPreview_require_Auth: Задайте true по подразбиране. Ако зададете това на 'false', всяко лице може да тества вашата анкета, като използва URL адреса на анкетата, без да влиза в административния панел и без да е необходимо първо да активира анкетата. Тази настройка е стойност по подразбиране и може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • usercontrolSameGroupPolicy: Зададена на true по подразбиране. По подразбиране потребители, които не са администратори, дефинирани в интерфейса за управление на LimeSurvey, ще могат да виждат само създадени от тях потребители или потребители, които принадлежат към поне една и съща група. Стойността по подразбиране може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • filterxsshtml:'' Тази настройка позволява филтрирането на подозрителни html тагове, намиращи се в анкети, групи и текстове за въпроси и отговори в административния интерфейс. Оставете това на 'false' само ако имате абсолютно доверие на потребителите, които сте създали за администриране на LimeSurvey и ако искате да позволите на тези потребители да могат да използват Javascript, Flash филми и т.н. Супер администраторите никога не филтрират HTML . Стойността по подразбиране може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • 'demoMode:' Ако тази опция е зададена на 'true' в config.php , тогава LimeSurvey ще премине в демо режим. Демонстрационният режим променя следните неща:
    • Деактивира данните на администраторския потребител и промяната на паролата;
    • Деактивира качването на файлове в редактора на шаблони;
    • Деактивира изпращането на имейл покани и напомняния;!N !** Деактивира създаването на дъмп на база данни;
    • Деактивира възможността за промяна на следните глобални настройки: име на сайта, език по подразбиране, режим на HTML редактор по подразбиране, XSS филтър.
  • ''forcedsuperadmin:' Масив от потребителски идентификатор с всички права върху всички LimeSurvey. Тези настройки могат да се актуализират само във файла config.php. Правата на този потребител не могат да се редактират в глобални разрешения за потребител дори от друг принуден супер администратор. По подразбиране: потребител с тези права е потребител с id: 1. Първият потребител, създаден точно след инсталацията.
  • force_ssl:' принуждава LimeSurvey да работи през HTTPS или да блокира HTTPS. Вижте Force HTTPS в GUI за администриране на глобални настройки.
  • ssl_emergency_override:' Тази настройка принудително изключва SSL. Ако сте включили HTTPS/SSL в глобалните настройки, но вашият сървър не е активирал HTTPS, единственият начин да го изключите е като промените директно стойност в базата данни. Това ви позволява принудително да изключите HTTPS, докато променяте глобалните настройки за Force Secure. Това винаги трябва да е false, освен в спешни случаи, когато го промените на true, докато не отстраните проблема. Тази настройка може да бъде зададена само чрез файла config.php.
  • ssl_disable_alert:' Деактивирайте известието за супер-администратор за непринуден SSL, ако наистина не можете или не искате да принудите ssl. Тази настройка може да бъде зададена само чрез файла config.php.

Ресурси

  • 'sessionlifetime: Определя времето в секунди, след което изтича сесията на анкетата. Прилага се само ако използвате сесии на база данни. Ако все пак използвате сесии на база данни, променете параметъра в config.php или заменете стойността по подразбиране от глобални настройки диалоговия прозорец.
  • memorylimit:'' Това определя колко памет LimeSurvey може да има достъп. „128 MB“ е препоръчителният минимум (MB=мегабайт). Ако получавате грешки при изчакване или имате проблеми с генерирането на статистика или експортирането на файлове, увеличете това ограничение до „256 MB“ или по-високо. Ако вашият уеб сървър е задал по-висок лимит в config.php, тази настройка ще бъде игнорирана.
Моля, имайте предвид, че такива локални настройки винаги могат да бъдат отменени от промените, направени в диалога за глобални настройки'.

За да увеличите лимита на паметта до 128M, можете също да опитате да добавите:

  • memory_limit = 128M към главния php.ini файл на вашия сървър (препоръчва се, ако имате достъп)
  • memory_limit = 128M към php.ini файл в коренът на LimeSurvey
  • php_value memory_limit 128M във файл .htaccess в корена на LimeSurvey
  • 'max_execution_time:' Задайте броя секунди, в които е разрешено да се изпълнява скрипт. Ако това се достигне, скриптът връща фатална грешка. За да му бъде позволено да експортира данни и статистика от големи проучвания, LimeSurvey се опитва да го зададе по подразбиране на 1200 секунди. Можете да зададете по-голямо или по-ниско време, ако е необходимо. Достъпно само чрез php конфигурационен файл.

Appearance

  • 'dropdownthreshold (Obsolete since 2.50): Когато "R" е избрано за $dropdowns , администраторът има право да зададе максимален брой опции, които ще се показват като радио бутони , преди да конвертирате обратно в падащ списък. Ако има въпрос, който има голям брой опции, показването на всички наведнъж като радио бутони може да изглежда тромаво и може да стане контраинтуитивно за потребителите. Задаването на това на максимум, да речем, 25 (което е по подразбиране) означава, че големите списъци са по-лесни за използване от администраторите за участника в проучването.
  • 'repeatheadings:' С типа въпрос Array, често ще имате много подвъпроси, които - когато се показват на екрана - заемат повече от една страница. Тази настройка ви позволява да решите колко подвъпроси да бъдат показани, преди да повторите информацията в заглавието на въпроса. Добра настройка за това е около 15. Ако изобщо не искате заглавията да се повтарят, задайте това на 0. Тази настройка се отменя в диалоговия прозорец глобални настройки (New in 2.05 ) .
  • 'minrepeatheadings: Минималният брой оставащи подвъпроси, които са необходими, преди да се повторят заглавията във въпросите за масива. Стойността по подразбиране е 3 и може да се редактира в config.php.
  • defaulttemplate: Тази настройка определя темата по подразбиране, използвана за 'публичния списък' с анкети. Тази настройка може да бъде заменена в глобални настройки или редактирана в config.php.
  • 'defaulthtmleditormode:' Задава режима по подразбиране за интегрирания HTML редактор. Тази настройка може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php. Валидните настройки са:
    • 'inline' - Вградена замяна на полета от HTML редактор. Бавен, но удобен и лесен за използване;
    • „изскачащ прозорец“ – Добавя икона, която стартира HTML редактора в изскачащ прозорец, ако е необходимо. По-бързо, но HTML кодът се показва във формуляра;
    • 'няма'- Няма HTML редактор;
  • 'column_style:' Определя как се изобразяват колоните за отговорите на анкетата, когато се използва показване_колони. Може да се редактира във файла config.php. Валидните настройки са:
    • 'css' - използва един от различните CSS методи за създаване на колони (вижте таблицата със стилове на шаблона за подробности);
    • 'ul' - колоните се изобразяват като множество плаващи неподредени списъци (по подразбиране);
    • 'table' - използва оформление, базирано на конвенционални таблици;
    • NULL - забранява използването на колони.

Език и време

  • defaultlang: Това трябва да бъде зададено на езика по подразбиране, който да се използва във вашите административни скриптове, както и настройката по подразбиране за език в списъка с обществени проучвания. Тази настройка може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • timeadjust:'' Ако вашият уеб сървър е в различна часова зона от мястото, където вашите анкети ще се базират, поставете разликата между вашия сървър и вашата домашна часова зона тук. Например, живея в Австралия, но използвам американски уеб сървър. Уеб сървърът е 14 часа зад моята местна часова зона. Така че моята настройка тук е "14". С други думи, той добавя 14 часа към времето на уеб сървърите. Тази настройка е особено важна, когато анкетите отбелязват отговорите във времето. Тази настройка може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.

Поведение на анкетата

  • 'deletenonvalues: Използвайте тази функция с повишено внимание. По подразбиране (стойност 1) неподходящите въпроси са NULL в базата данни. Това гарантира, че данните във вашата база данни са вътрешно съгласувани. Въпреки това, има редки случаи, в които може да искате да задържите неподходящи стойности, в който случай можете да зададете стойността на 0. Например, вие питате човек от мъжки пол за пола му и той случайно казва „жена“ и след това отговаря някаква жена - специфични въпроси (въпроси, които са обусловени от женски пол, така че са подходящи само за жени). След това той осъзнава грешката си, прави резервно копие, задава пола на „мъжки“ и продължава с анкетата. Сега специфичните за жените въпроси са без значение. Ако $deletenonvalues==1 , тези неподходящи стойности ще бъдат изчистени (NULLed) в базата данни. Ако $deletenonvalues==0 , неговите грешни отговори няма да бъдат изтрити, така че те все още ще присъстват в базата данни, когато я анализирате.
  • shownoanswer: Когато бутон за избор/изберете тип въпрос, който съдържа отговори с възможност за редактиране (т.е.: Списък, въпроси с масив) не е задължителен и 'shownoanswer' е зададено на 1, допълнителен 'Без отговор' се показва запис - така че участниците да могат да изберат да не отговарят на въпроса. Някои хора предпочитат това да не е налично. Тази настройка може да бъде заменена от диалоговия прозорец глобални настройки или редактирана в config.php. Валидни стойности са:
    • '0': No;
    • '1': Да;
    • '2': Администраторът на анкетата може да избира.
  • printanswershonorsconditions: Тази настройка определя дали функцията printanswers ще показва записи от въпроси, които са били скрити от разклоняване на условия (По подразбиране: 1 = скриване на отговорите от въпроси, скрити от условия).
  • ' hide_groupdescr_allinone:' Тази настройка е подходяща за проучвания "всичко в едно", използващи условия. Когато това е зададено на „вярно“, името и описанието на групата са скрити, ако всички въпроси в групата са скрити. Стойността по подразбиране е 'true' - скрива името и описанието на групата, когато всички въпроси в групата са скрити от условия. Може да се редактира в config.php.
  • showpopups: Показване на изскачащи съобщения, ако на задължителни или условни въпроси не е отговорено правилно:
    • '2' = определено от опцията за тема (по подразбиране )
    • '1'= показване на изскачащо съобщение;
    • '0'= вместо това показва съобщение на страницата;
    • '-1'= изобщо не показва съобщението (в този случай , потребителите ще продължат да виждат съветите за конкретни въпроси, показващи на кои въпроси трябва да се отговори).

Поведение тип числов въпрос

  • bFixNumAuto: Числовите полета могат да бъдат автоматично филтрирани, за да се премахнат всички нечислови стойности. По подразбиране това е активирано, можете да го деактивирате глобално. Тези настройки са свързани с „Автоматично коригиране на числова стойност“ в основните опции на темата. Беше разрешено за „Да“, деактивирано за „Само за израз“ и „Не“.
  • bNumRealValue:' Числовите полета, използвани в диспечера на изрази, могат да бъдат фиксирани или не. Това е фиксирано по подразбиране. Ако NUMERIC е числов въпрос: деактивирайте или 0: {NUMERIC} с лоши символи изпратете '' , активиране или 1 : {NUMERIC} изпраща всички въведени знаци. Тези настройки са свързани с „Автоматично коригиране на числова стойност“ в основните опции на темата. Беше активиран за „Да“ и „Само за изразяване“ и деактивиран за „Не“.

Разработване и отстраняване на грешки

  • debug: С тази настройка вие задавате отчитането на PHP грешки на E_ALL. Това означава, че се показва всяка малка бележка, предупреждение или грешка, свързана със скрипта. Тази настройка трябва да бъде превключена на '1' само ако се опитвате да отстраните грешки в приложението по някаква причина. Ако сте разработчик, превключете на „2“. Не го превключвайте на „1“ или „2“ в производството, тъй като това може да доведе до разкриване на пътя. Стойността по подразбиране е '0' и може да се редактира в config.php.
  • debugsql: Активирайте тази настройка, ако искате да показвате всички SQL заявки, изпълнени за скрипта в долната част на всяка страница. Много полезно за оптимизиране на броя на заявките. За да го активирате, променете стойността по подразбиране на '1' от файла config.php.
  • use_asset_manager: По подразбиране: режимът за отстраняване на грешки деактивира диспечера на активи, можете да ви позволите да използвате диспечера на активи с разрешен режим на отстраняване на грешки.

В случай, че срещнете грешка в приложението, силно препоръчваме да активирате настройката за отстраняване на грешки, за да получите по-подробна грешка, която можете да изпратите с доклада за грешка:

    '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)

Email settings

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

As this is an extensive topic we have moved LDAP settings to another page.

Authentication

Starting with LimeSurvey 2.05, authentication will be handled by plugins. As a result, the information below might be outdated. See the plugins wiki for most up to date information.

Authentication delegation to the webserver

System administrators may want to have their survey administrators authenticated against a central authentication system (Active Directory, openLdap, Radius, ...) rather than using the internal LimeSurvey database. An easy way to do this is to setup your web server software to use this external authentication system, and then ask LimeSurvey to trust the user identity reported by the web server. In order to enable this feature, you have to:

  • set auth_webserver to 'true' in config.php;
  • enable authentication from the web server side.

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).

Authentication delegation with no automatic user import

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.

If you want to customize the user profile so that it matches the logged-in user, you'll have to develop a simple function called hook_get_autouserprofile - with this function you can retrieve from a central user account database (for instance, from a LDAP directory) the true full name, names, and email of a particular user. You can even customize his privileges on the system based on the groups he is allocated in the external database.

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.

This has serious security implications, so use it with care. Also, protect your config.php from write access by the web server.

Use one-time passwords

A user can open the LimeSurvey login page at default.com/limesurvey/admin and type the username and the one-time password which was previously written into the users table (column one_time_pw) by an external application.

This setting has to be turned on config.php file to enable the usage of one-time passwords (default = false).

    'config'=>array(
        'debug'=>0,
        'debugsql'=>0,
        'use_one_time_passwords'=>true,
    )

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.

Advanced path settings

  • 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.