Actions

Optional settings/pl: Difference between revisions

From LimeSurvey Manual

(Created page with "*'''max_execution_time:''' Ustawia liczbę sekund, przez jaką skrypt może działać. Jeśli zostanie osiągnięty, skrypt zwróci błąd krytyczny. Aby móc eksportować du...")
(Created page with "=Wygląd= *'''dropdownthreshold'''{{ObsoleteIn|2.50}}: Gdy dla <code>$dropdowns</code> wybrane jest "R", administrator może ustawić maksymalną liczbę opcji, które będą...")
Line 270: Line 270:
*'''max_execution_time:''' Ustawia liczbę sekund, przez jaką skrypt może działać. Jeśli zostanie osiągnięty, skrypt zwróci błąd krytyczny. Aby móc eksportować duże dane i statystyki z ankiet, LimeSurvey próbuje ustawić go domyślnie na 1200 sekund. W razie potrzeby możesz ustawić większy lub krótszy czas. Dostępne tylko poprzez plik konfiguracyjny php.
*'''max_execution_time:''' Ustawia liczbę sekund, przez jaką skrypt może działać. Jeśli zostanie osiągnięty, skrypt zwróci błąd krytyczny. Aby móc eksportować duże dane i statystyki z ankiet, LimeSurvey próbuje ustawić go domyślnie na 1200 sekund. W razie potrzeby możesz ustawić większy lub krótszy czas. Dostępne tylko poprzez plik konfiguracyjny php.


=Appearance=
=Wygląd=
*'''dropdownthreshold'''{{ObsoleteIn|2.50}}: When "R" is selected for <code>$dropdowns</code>, the administrator is allowed to set a maximum number of options that will be displayed as radio buttons, before converting back to a dropdown list. If there is a question that has a large number of options, displaying all of them at once as radio buttons can look unwieldy, and can become counter-intuitive to users. Setting this to a maximum of, say 25 (which is the default) means that large lists are easier to be used by the administrators for the survey participant.
*'''dropdownthreshold'''{{ObsoleteIn|2.50}}: Gdy dla <code>$dropdowns</code> wybrane jest "R", administrator może ustawić maksymalną liczbę opcji, które będą wyświetlane jako przyciski opcji , przed konwersją z powrotem do listy rozwijanej. Jeśli pytanie ma dużą liczbę opcji, wyświetlenie ich wszystkich na raz w postaci przycisków opcji może wyglądać nieporęcznie i może stać się sprzeczne z intuicją dla użytkowników. Ustawienie tej wartości na maksymalnie, powiedzmy 25 (co jest wartością domyślną) oznacza, że administratorom łatwiej będzie używać dużych list dla uczestnika ankiety.
*'''repeatheadings:''' With the Array question type, you'll often have a lot of subquestions, which - when displayed on screen - take up more than one page. This setting lets you decide how many subquestions should be displayed before repeating the header information for the question. A good setting for this is around 15. If you don't want the headings to repeat at all, set this to 0. This setting is overridden in the [[Global settings|global settings]] dialog {{NewIn|2.05}}.
*'''powtarzanie nagłówków:''' W przypadku pytania typu Array, często będziesz mieć wiele pytań podrzędnych, które - wyświetlane na ekranie - zajmują więcej niż jedną stronę. To ustawienie pozwala Ci zdecydować, ile pytań podrzędnych powinno zostać wyświetlonych przed powtórzeniem informacji z nagłówka pytania. Dobre ustawienie to około 15. Jeśli nie chcesz, aby nagłówki w ogóle się powtarzały, ustaw tę wartość na 0. To ustawienie zostanie zastąpione w oknie dialogowym [[Ustawienia globalne|ustawienia globalne]] {{NewIn|2.05}} .
*'''minrepeatheadings:''' The minimum number of remaining subquestions that are required before repeating the headings in Array questions. The default value is 3 and it can be edited in config.php.  
*'''minrepeatheadings:''' Minimalna liczba pozostałych pytań podrzędnych wymaganych przed powtórzeniem nagłówków w pytaniach tablicowych. Wartość domyślna to 3 i można ją edytować w config.php.  
*'''defaulttemplate:''' This setting specifies the default theme used for the 'public list' of surveys. This setting can be overridden in the [[Global settings|global settings]] dialog or edited in config.php.
*'''defaulttemplate:''' To ustawienie określa domyślny motyw używany dla „publicznej listy” ankiet. To ustawienie można zastąpić w oknie dialogowym [[Ustawienia globalne|ustawienia globalne]] lub edytować w config.php.
*'''defaulthtmleditormode:''' Sets the default mode for the integrated HTML editor. This setting can be overridden in the [[Global settings|global settings]] dialog or edited in config.php. The valid settings are:
*'''defaulthtmleditormode:''' Ustawia domyślny tryb zintegrowanego edytora HTML. To ustawienie można zastąpić w oknie dialogowym [[Ustawienia globalne|ustawienia globalne]] lub edytować w config.php. Prawidłowe ustawienia to:
** 'inline' - Inline replacement of fields by an HTML editor. Slow but convenient and user friendly;
** 'inline' - Inline zastępowanie pól przez edytor HTML. Powolny, ale wygodny i przyjazny dla użytkownika;
** 'popup' - Adds an icon that runs the HTML editor in a popup if needed. Faster, but HTML code is displayed in the form;
** „popup” — w razie potrzeby dodaje ikonę uruchamiającą edytor HTML w wyskakującym okienku. Szybciej, ale kod HTML jest wyświetlany w formie;
** 'none'- No HTML editor;
** 'none' - Brak edytora HTML;
*'''column_style:''' Defines how columns are rendered for survey answers when using [[QS:Display_columns|display_columns]]. It can be edited in the config.php file. The valid settings are:  
*'''column_style:''' Określa sposób renderowania kolumn z odpowiedziami na ankietę przy użyciu [[QS: Kolumny_wyświetlające|kolumny_wyświetlające]]. Można go edytować w pliku config.php. Poprawne ustawienia to:  
** 'css' - it uses one of the various CSS methods to create columns (see the template style sheet for details);
** 'css' - używa jednej z różnych metod CSS do tworzenia kolumn (szczegóły znajdziesz w arkuszu stylów szablonu);
** 'ul' - the columns are rendered as multiple floated unordered lists (default);
** 'ul' - kolumny są renderowane jako wielokrotne pływające listy nieuporządkowane (domyślnie);
** 'table' - it uses conventional-tables-based layout;
** 'table' - wykorzystuje konwencjonalny układ oparty na tabelach;
** NULL - it disables the use of columns.
** NULL - wyłącza użycie kolumn.


=Language & time=
=Language & time=

Revision as of 08:40, 26 September 2023

Poniższa sekcja jest skierowana do tych z Was, którzy chcieliby edytować te ustawienia konfiguracyjne, których nie można było zmodyfikować za pomocą GUI (graficznego interfejsu użytkownika) instalacji LimeSurvey. Pamiętaj, że wszelkich zmian w katalogu głównym LimeSurvey dokonujesz na własne ryzyko. Niemniej jednak, jeśli napotkasz problemy/potrzebujesz dalszych wskazówek, dołącz do forów dyskusyjnych lub IRC kanał, aby uzyskać pomoc od społeczności LimeSurvey.

Wprowadzenie

Aby zmodyfikować ustawienia konfiguracyjne instalacji, należy edytować ustawienia opcjonalne. Można je znaleźć w pliku /application/config/config-defaults.php, który znajduje się w katalogu głównym LimeSurvey. Domyślne ustawienia standardowej instalacji można znaleźć w config-defaults.php. Niektóre z nich można zastąpić za pomocą okna dialogowego ustawienia globalne, inne trzeba będzie edytować ręcznie.

  Jeśli chcesz zmienić te ustawienia, nie zmieniaj ich w config-defaults.php, ale skopiuj określone ustawienie/linię do /application/config/config.php w 'config'=>tablica() i tam to zmień. Wszystkie nowo zmodyfikowane/wprowadzone ustawienia z pliku config.php zastąpią wartości domyślne z config-defaults.php.


Kiedy nastąpi aktualizacja, zmieniane są tylko ustawienia config-defaults.php. Dlatego edycja pliku config.php spowoduje zapisanie dostosowanych ustawień.

Aby zaktualizować/dodać ustawienia LimeSurvey w /application/config/config.php, musisz zaktualizować tablicę config:

 
 'config'=>array(
 'debug'=>0,
 'debugsql'=>0,
 'LimeSurveySetting'=>'Nowa wartość', // Zaktualizuj tutaj domyślną konfigurację LimeSurvey
 )

Ustawienia Yii

LimeSurvey wykorzystuje framework Yii, który posiada własne parametry konfiguracyjne w plikach application/config/internal.php i application/config/config.php. Możesz także uzyskać dostęp do niektórych ustawień konfiguracyjnych LimeSurvey poprzez konfigurację Yii.

Ponieważ tablica config.php jest połączona z całą konfiguracją, możesz zastąpić dowolne parametry Yii w pliku config.php.

Ustawienia specyficzne dla Yii są ustawione w tablicy komponentów:

 
 'components' => array(
 'db' => array(
 ....
 ),
 'Specyficzne ustawienia'=>array(
 ....
 ),
 ),

Template:Uwaga

Ustawienia bazy danych

Ustawienia bazy danych są zapisywane w config.php przez plik instalacyjny podczas pierwszej instalacji LimeSurvey. W razie potrzeby możesz zaktualizować tę część pliku config.php. Pamiętaj, że robisz to na własne ryzyko! Zapoznaj się także z dokumentacją Yii i proszę pamiętaj, że LimeSurvey obsługuje tylko następujące typy baz danych: mysql, pgsql, dblib, mssql i sqlsrv.

Ustawienia sesji

Możesz ustawić niektóre parametry sesji w config.php (sprawdź dwa przykłady poniżej). Możesz odkomentować/dodać potrzebną część w config.php. Zobacz Yii Dokumentacja, aby poznać inne ustawienia.

  Jeśli musisz zaktualizować ustawienia sesji, aby wiele instancji LimeSurvey działało na tym samym serwerze, sprawdź, czy nie musisz aktualizować ustawień żądania dla pliku cookie crsf.


Użyj sesji opartych na tabelach

LimeSurvey może korzystać z sesji opartych na tabelach, część z komentarzem znajdziesz w domyślnym pliku wygenerowanym przez config.php. Aby użyć sesji opartej na tabeli, usuń // przed każdą linią.

 'session' => tablica (
 'class' => 'application.core.web.DbHttpSession',
 'connectionID' => 'db',
 'sessionTableName' => '{{sessions} }',
 ),
  Sesje oparte na tabelach nie są obecnie obsługiwane na serwerze MSSQL.


Inne aktualizacje sesji

Jeśli używasz SSL („https”) do instalacji LimeSurvey, dodanie następujących linii do pliku config.php zwiększy bezpieczeństwo sesji:

 // Ustaw plik cookie przez SSL
 'session' => array (
 'cookieParams' => array(
 'secure' => true, // używaj protokołu SSL dla plików cookie
 'httponly' => true // Pliki cookie nie mogą być używane przez inne protokoły - eksperymentalne
 ),
 ),

Jeśli chcesz naprawić domenę dla pliku cookie, użyj następującej składni w config.php:

 // Ustaw domenę dla pliku cookie
 'session' => tablica (
 'cookieParams' => tablica(
 'domain' => '.example.org',
 ),
 ),

Jeśli masz wiele instalacji na tym samym serwerze, szybsze i łatwiejsze może być ustawienie różnych nazw sesji dla każdej instancji LimeSurvey. Może to być potrzebne w IE11 w pewnych warunkach (patrz wydanie 12083)

 // Ustaw nazwę sesji
 'session' => tablica (
 'sessionName' => "LimeSurveyN1",
 ),

Ustawienia żądania

Ustawienia żądania są ważne, ale ustawienia domyślne są już zoptymalizowane pod kątem użycia LimeSurvey. Aby przeczytać więcej na ich temat, zobacz Dokumentacja Yii.

Przykładowo konfigurację ustawień żądania LimeSurvey można modyfikować w następujący sposób (na własne ryzyko):

 // Wyłącz ochronę CSRF
 'request' => array(
 'enableCsrfValidation'=>false, 
 ),
 // Wymuś określoną bazę adresów URL 
 'request' => array(
 'hostInfo' => 'http://www.example.org/' 
 ),
 // Ustaw nazwę domeny cookie i ścieżkę dla ochrony CSRF. Ścieżka jest używana, jeśli masz inną instancję w tej samej domenie
 'request' => array(
 'csrfCookie' => array( 
 'domain' => '.example.com',
 'path' => '/limesurvey/',
 ) 
),

Jeśli chcesz zaktualizować tylko adres URL dla e-maili zawierających tokeny, ustaw publicurl w pliku config.php.


Zezwól na użycie sesji i sprawdzanie poprawności Csrf w iFrame

Po zezwoleniu na Osadzanie elementów iframe musisz zaktualizować niektóre części konfiguracji.

Uwaga: to rozwiązanie nie będzie działać niezawodnie we wszystkich przeglądarkach, nawet przy ustawionych wszystkich ustawieniach.

Lepsze i w 100% niezawodne rozwiązanie można zagwarantować tylko wtedy, gdy witryna ramkowa korzysta z tej samej domeny głównej.

Te ustawienia zostały przetestowane w przeglądarkach Firefox 81.0.2 i Chromium 85.0.4183.121.

Zezwól na rozpoczęcie sesji w ramce iframe

Sesja musi być bezpieczna (ważny https), tylko http i ta sama witryna na Brak. Wszystkie ustawienia muszą być ustawione na małe litery.

'session' => array (
 'sessionName'=>'LS-VBXZZORFJZCAKGYI',
 // Odkomentuj poniższe linie, jeśli potrzebujesz sesji opartych na tabelach.
 // Uwaga: Sesje oparte na tabelach są obecnie nieobsługiwane na serwerze MSSQL.
 // 'class' => 'application.core.web.DbHttpSession',
 // 'connectionID' => 'db',
 // 'sessionTableName' = > '{{sessions}}',
 'cookieParams' => array(
 'secure' => true,
 'httponly' => true,
 'samesite' => 'Brak' ,
 ),
 ),

Zezwalaj na plik cookie csrf w ramce iframe

Taka sama jak sesja: musi być bezpieczna, a ta sama witryna ustawiona na Brak. Cała tablica musi zostać dodana na tym samym poziomie co sesja.

'request' => array(
 'enableCsrfValidation'=>true,
 'csrfCookie' => array(
 'sameSite' => 'Brak',
 'secure' => true,
 ),
 ),

Ustawienia adresu URL

  Jeśli chcesz zaktualizować tylko adres URL tokena i innych e-maili, ustaw publicurl w pliku config.php.


Aby zmienić domyślne ustawienia adresu URL, zaktualizuj urlManager:

 // Użyj krótkiego adresu URL
 'urlManager' => array(
 'urlFormat' => 'ścieżka',
 'showScriptName' => false,
 ),


Możesz także dodać .html po identyfikatorze ankiety w następujący sposób:

 // Użyj krótkiego adresu URL
 'urlManager' => array(
 'urlFormat' => 'ścieżka',
 'rules' => tablica (
 '<sid:\d+> ' => array('ankieta/indeks','urlSuffix'=>'.html','matchValue'=>true),
 ),
 'showScriptName' => fałsz,
 ),

Więcej informacji znajdziesz w dokumentacji Yii.

Ustawienia rejestrowania

Yii zapewnia różne rozwiązania do generowania logów. Aby dowiedzieć się więcej na ich temat, zapoznaj się z specjalny temat dotyczący rejestrowania. LimeSurvey domyślnie używa „1” lub „2”, co pozwala każdemu użytkownikowi sieci zobaczyć logi. Możesz tworzyć własne ustawienia bezpośrednio za pomocą Yii.

Na przykład, szybkim sposobem rejestrowania błędów i ostrzeżeń w plikach jest:

 
return array(
 'components' => array(
 /* Inna część komponentu tutaj 'db' na przykład */
 'log' => array(
 'routes' => array(
 'fileError' => array(
 'class' => 'CFileLogRoute',
 'levels' => 'ostrzeżenie, błąd',
 'except' => 'wyjątek.CHttpException .404',
 ),
 ),
 ),
 /* Inna część komponentu tutaj „urlManager”, na przykład */
 ),
 /* Część końcowa (z ' runtimePath' 'config' na przykład) */
);
 Hint: Plik jest domyślnie zapisywany w <code>limesurvey/tmp/runtime/application.log</code> , który znajduje się w folderze głównym LimeSurvey.
  Yii używa ścieżki wykonawczej. Domyślnie dzienniki są dostępne w Internecie. Mogą zawierać wiele informacji z Twojego serwera. Lepiej jest korzystać z katalogu, do którego nie można uzyskać dostępu przez Internet. Możesz ustawić to w trasach lub aktualizując Ścieżka środowiska wykonawczego.

.

Ścieżka wykonania

Ścieżka środowiska wykonawczego musi być katalogiem możliwym do odczytu i zapisu dla „użytkownika sieci”. Ścieżka środowiska wykonawczego zawiera jednak pliki z potencjalnymi informacjami dotyczącymi bezpieczeństwa, które znajdują się w publicznym obszarze dostępu do sieci. LimeSurvey gromadzi te pliki w katalogu tymczasowym katalogu głównego LimeSurvey. Aby wyeliminować dostęp do tak ważnych danych, możesz ustawić ścieżkę uruchomieniową poza publicznym dostępem do Internetu, edytując odpowiednie linie w pliku /application/config/config.php:

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

Ustawienia ogólne

  • sitename: Nadaje nazwę witrynie z ankietami. Nazwa ta pojawi się w przeglądzie listy ankiet oraz w nagłówku administracyjnym. Wartość domyślna to „LimeSurvey” i można ją zastąpić w oknie dialogowym ustawienia globalne lub edytować w config.php.
  • siteadminemail: To jest domyślny adres e-mail administratora witryny i jest używany do wiadomości systemowych i opcji kontaktu. To ustawienie jest używane tylko jako wartość domyślna i można je zastąpić w oknie dialogowym ustawienia globalne.
  • siteadminbounce: To jest adres e-mail, na który będą wysyłane odsyłane wiadomości e-mail. To ustawienie jest używane tylko jako wartość domyślna i można je zastąpić w oknie dialogowym ustawienia globalne.
  • siteadminname: Prawdziwe imię i nazwisko administratora witryny. To ustawienie jest używane tylko jako wartość domyślna i można je zastąpić w oknie dialogowym ustawienia globalne.
  • nazwa_hosta_proxy: To jest nazwa hosta Twojego serwera proxy (ma o czym należy wspomnieć, jeśli korzystasz z serwera proxy i chcesz zaktualizować LimeSurvey za pomocą ComfortUpdate).
  • proxy_host_port: To jest port twojego serwera proxy (musi być wspomniane, jeśli korzystasz z serwera proxy i chcesz zaktualizować LimeSurvey za pomocą ComfortUpdate).

Bezpieczeństwo

  • maxLoginAttempt: Jest to liczba prób, jakie musi podjąć użytkownik, aby wprowadzić prawidłowe hasło, zanim jego adres IP zostanie zablokowany/zablokowany. Wartość domyślna to 3 i można ją zmodyfikować w pliku config.php.
  • timeOutTime: Jeśli użytkownik wprowadzi nieprawidłowe hasło dla<maxLoginAttempt> , ona lub on zostaje zablokowany<timeOutTime> sekundy. Wartość domyślna to 10 minut i można ją zmodyfikować w config.php.
  • maxLoginAttemptParticipants: Jest to liczba prób, jakie uczestnik musi wprowadzić ważny token, zanim otrzyma swój Adres IP zablokowany/zablokowany. Wartość domyślna to 3 i można ją zmodyfikować w pliku config.php.
  • timeOutParticipants: Jeżeli uczestnik wprowadzi błędnie token dla<maxLoginAttemptParticipants> , ona lub on zostaje zablokowany<timeOutParticipants> sekundy. Wartość domyślna to 10 minut i można ją zmodyfikować w config.php.
  • surveyPreview_require_Auth: Domyślnie ustawione na true. Jeżeli ustawisz tę opcję na 'false', każda osoba będzie mogła przetestować Twoją ankietę korzystając z adresu URL ankiety, bez konieczności logowania się do panelu administracyjnego i bez konieczności wcześniejszej aktywacji ankiety. To ustawienie jest wartością domyślną i można je zastąpić w oknie dialogowym ustawienia globalne lub edytować w config.php.
  • usercontrolSameGroupPolicy: Domyślnie ustawione na true. Domyślnie użytkownicy niebędący administratorami zdefiniowani w interfejsie zarządzania LimeSurvey będą mogli zobaczyć tylko użytkowników, których utworzyli lub użytkowników należących do co najmniej jednej tej samej grupy. Wartość domyślną można zmienić w oknie dialogowym ustawienia globalne lub edytować w config.php.
  • filterxsshtml: To ustawienie umożliwia filtrowanie podejrzanych znaczników HTML znajdujących się w ankietach, grupy oraz pytania i odpowiedzi w interfejsie administracyjnym. Pozostaw tę opcję na „false” tylko wtedy, gdy całkowicie ufasz użytkownikom, których utworzyłeś do administrowania LimeSurvey i jeśli chcesz pozwolić tym użytkownikom na korzystanie z JavaScript, filmów Flash itp.. Superadministratorzy nigdy nie filtrują kodu HTML . Wartość domyślną można zastąpić w oknie dialogowym ustawienia globalne lub edytować w config.php.
  • demoMode: Jeśli ta opcja jest ustawiona na 'true' w config.php , wtedy LimeSurvey przejdzie w tryb demonstracyjny. Tryb demo zmienia następujące rzeczy:
    • Wyłącza dane administratora i zmianę hasła;
    • Wyłącza przesyłanie plików w edytorze szablonów;
    • Wyłącza wysyłanie zaproszeń i przypomnień e-mailem;!N !** Wyłącza tworzenie zrzutu bazy danych;
    • Wyłącza możliwość modyfikacji następujących ustawień globalnych: nazwa witryny, domyślny język, domyślny tryb edytora HTML, filtr XSS.
  • 'forcedsuperadmin:' Tablica identyfikatorów użytkowników ze wszystkimi uprawnieniami we wszystkich LimeSurvey. Te ustawienia można zaktualizować tylko w pliku config.php. Prawa tego użytkownika nie mogą być edytowane w globalne uprawnienia użytkownika nawet przez innego wymuszonego superadministratora. Domyślnie: użytkownikiem z tymi uprawnieniami jest użytkownik o identyfikatorze: 1. Pierwszy użytkownik utworzony tuż po instalacji.
  • force_ssl: zmusza LimeSurvey do działania przez HTTPS lub blokowania HTTPS. Zobacz Force HTTPS w graficznym interfejsie administratora ustawień globalnych.
  • ssl_emergency_override:' To ustawienie wymusza wyłączenie protokołu SSL. Jeśli w ustawieniach globalnych włączyłeś HTTPS/SSL, ale Twój serwer nie ma włączonego protokołu HTTPS, jedynym sposobem na jego wyłączenie jest bezpośrednia zmiana wartości w bazie danych. Umożliwia to wymuszenie wyłączenia protokołu HTTPS podczas zmiany ustawień globalnych funkcji Force Secure. Wartość ta powinna zawsze być fałszywa, z wyjątkiem sytuacji awaryjnych, w których zmienia się ją na true do czasu rozwiązania problemu. To ustawienie można ustawić tylko poprzez plik config.php.
  • ssl_disable_alert: Wyłącz alert dla superadministratora o niewymuszonym SSL, jeśli naprawdę nie możesz lub nie chcesz wymusić SSL. To ustawienie można ustawić tylko za pomocą pliku config.php.

Resources

  • sessionlifetime: Określa czas w sekundach, po upływie którego sesja ankiety wygasa. Ma zastosowanie tylko w przypadku korzystania z sesji bazy danych. Jeśli korzystasz z sesji bazy danych, zmień parametr w config.php lub zastąp wartość domyślną z okna dialogowego ustawienia globalne.
  • memorylimit: Określa ilość pamięci LimeSurvey można uzyskać dostęp. Zalecane minimum (MB = megabajt) to „128 MB”. Jeśli otrzymujesz błędy związane z przekroczeniem limitu czasu lub masz problemy z generowaniem statystyk lub eksportowaniem plików, zwiększ ten limit do „256 MB” lub więcej. Jeśli Twój serwer WWW ustawił wyższy limit w config.php, to ustawienie to zostanie zignorowane.
Proszę pamiętać, że takie ustawienia lokalne zawsze można zastąpić zmianami dokonanymi w oknie dialogowym ustawień globalnych.

Aby zwiększyć limit pamięci do 128M, możesz także spróbować dodać:

  • memory_limit = 128M do głównego pliku php.ini serwera (zalecane, jeśli masz dostęp)
  • memory_limit = 128M do pliku php.ini w katalog główny LimeSurvey
  • php_value memory_limit 128M w pliku .htaccess w katalogu głównym LimeSurvey
  • max_execution_time: Ustawia liczbę sekund, przez jaką skrypt może działać. Jeśli zostanie osiągnięty, skrypt zwróci błąd krytyczny. Aby móc eksportować duże dane i statystyki z ankiet, LimeSurvey próbuje ustawić go domyślnie na 1200 sekund. W razie potrzeby możesz ustawić większy lub krótszy czas. Dostępne tylko poprzez plik konfiguracyjny php.

Wygląd

  • dropdownthreshold (Obsolete since 2.50): Gdy dla $dropdowns wybrane jest "R", administrator może ustawić maksymalną liczbę opcji, które będą wyświetlane jako przyciski opcji , przed konwersją z powrotem do listy rozwijanej. Jeśli pytanie ma dużą liczbę opcji, wyświetlenie ich wszystkich na raz w postaci przycisków opcji może wyglądać nieporęcznie i może stać się sprzeczne z intuicją dla użytkowników. Ustawienie tej wartości na maksymalnie, powiedzmy 25 (co jest wartością domyślną) oznacza, że administratorom łatwiej będzie używać dużych list dla uczestnika ankiety.
  • powtarzanie nagłówków: W przypadku pytania typu Array, często będziesz mieć wiele pytań podrzędnych, które - wyświetlane na ekranie - zajmują więcej niż jedną stronę. To ustawienie pozwala Ci zdecydować, ile pytań podrzędnych powinno zostać wyświetlonych przed powtórzeniem informacji z nagłówka pytania. Dobre ustawienie to około 15. Jeśli nie chcesz, aby nagłówki w ogóle się powtarzały, ustaw tę wartość na 0. To ustawienie zostanie zastąpione w oknie dialogowym ustawienia globalne (New in 2.05 ) .
  • minrepeatheadings: Minimalna liczba pozostałych pytań podrzędnych wymaganych przed powtórzeniem nagłówków w pytaniach tablicowych. Wartość domyślna to 3 i można ją edytować w config.php.
  • defaulttemplate: To ustawienie określa domyślny motyw używany dla „publicznej listy” ankiet. To ustawienie można zastąpić w oknie dialogowym ustawienia globalne lub edytować w config.php.
  • defaulthtmleditormode: Ustawia domyślny tryb zintegrowanego edytora HTML. To ustawienie można zastąpić w oknie dialogowym ustawienia globalne lub edytować w config.php. Prawidłowe ustawienia to:
    • 'inline' - Inline zastępowanie pól przez edytor HTML. Powolny, ale wygodny i przyjazny dla użytkownika;
    • „popup” — w razie potrzeby dodaje ikonę uruchamiającą edytor HTML w wyskakującym okienku. Szybciej, ale kod HTML jest wyświetlany w formie;
    • 'none' - Brak edytora HTML;
  • column_style: Określa sposób renderowania kolumn z odpowiedziami na ankietę przy użyciu kolumny_wyświetlające. Można go edytować w pliku config.php. Poprawne ustawienia to:
    • 'css' - używa jednej z różnych metod CSS do tworzenia kolumn (szczegóły znajdziesz w arkuszu stylów szablonu);
    • 'ul' - kolumny są renderowane jako wielokrotne pływające listy nieuporządkowane (domyślnie);
    • 'table' - wykorzystuje konwencjonalny układ oparty na tabelach;
    • NULL - wyłącza użycie kolumn.

Language & time

  • 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 survey list. This setting can be overridden in the global settings dialog or edited in config.php.
  • 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 I 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. This setting can be overridden in the global settings dialog or edited in config.php.

Survey behavior

  • deletenonvalues: Use this feature with caution. By default (a value of 1), irrelevant questions are NULLed in the database. This ensures that the data in your database is internally consistent. However, there are rare cases where you might want to hold onto irrelevant values, in which case you can set the value to 0. For example, you ask a male person his gender, and he accidentally says 'female' and then answers some female-specific questions (questions that are conditioned on being female, so are only relevant for women). Then, he realizes his mistake, backs up, sets the gender to 'male', and continues with the survey.  Now, the female-specific questions are irrelevant. If $deletenonvalues==1, those irrelevant values will be cleared (NULLed) in the database. If $deletenonvalues==0, his erroneous answers will not be deleted, so they will still be present in the database when you analyze it.
  • shownoanswer: When a radio button/select type question that contains editable answers (i.e.: List, Array questions) is not mandatory and 'shownoanswer' is set to 1, an additional 'No answer' entry is shown - so that participants may choose to not answer the question. Some people prefer this not to be available. This setting can be overridden from the global settings dialog or edited in config.php. Valid values are:
    • '0': No;
    • '1': Yes;
    • '2': The Survey admin can choose.
  • printanswershonorsconditions: This setting determines if the printanswers 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 . When this is set to 'true', the group name and description is hidden if all questions in the group are hidden. The default value is 'true' - hides group name and description when all questions in the group are hidden by conditions. It can be edited in config.php.
  • showpopups:  Show popup messages if mandatory or conditional questions have not been answered correctly:
    • '2' = defined by Theme option (default)
    • '1'= show popup message;
    • '0'= show message on page instead;
    • '-1'= do not show the message at all (in this case, users will still see the question-specific tips indicating which questions must be answered).

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 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.
  • 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.
  • use_asset_manager: By default : debug mode disable asset manager, you can allow you to use asse manager with debug mode enable.

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:

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