Optionele instellingen
From LimeSurvey Manual
In dit gedeelte wordt beschreven hoe je de configuratie van LimeSurvey kunt wijzigen voor het gedeelte dat niet via een GUI (het scherm) kan worden gedaan. Wees voorzichtig als je iets in de root-map van LimeSurvey wijzigt. Als je problemen krijgt, of meer hulp nodig hebt, ga dan naar de forums of het IRC channel voor ondersteuning van andere LimeSurvey gebruikers.
Inleiding
Om de configuratie-instelling te wijzigen moet je mogelijk de optionele instellingen wijzigen. De instellingen zijn te vinden in het bestand /application/config/config-defaults.php bij een standaard installatie. Sommige van deze instellingen worden gebruikt tijdens de installatie, en worden overschreven door de waarden in de Algemene instellingen. Andere moeten handmatig worden gewijzigd.
Bij het upgraden wordt alleen het bestand config-defaults.php gewijzigd. Daardoor blijven dan je eigen aanpassingen in het bestand config.php bewaard.
Om de instellingen van LimeSurvey te wijzigen moet je het array config in application/config/config.php aanpassen:
'config'=>array(
'debug'=>0,
'debugsql'=>0,
'LimeSurveySetting'=>'New value','// wijzig de code hier
)
Yii-instellingen
LimeSurvey gebruikt het Yii-framework, Yii heeft zijn eigen configuratie in het bestand application/config/config.php. Je kunt enkele specifieke configuratie-instellingen van LimeSurvey benaderen via de Yii-configuratie.
Aangezien het config.php-array is samengevoegd met de hele config, kun je elke Yii-params in het config.php-bestand vervangen.
Deze instellingen worden gezet in het array components:
'components' => array(
'db' => array(
....
),
'Specific settings'=>array(
....
),
),
Database
De instellingen van de database wordt bepaald bij de eerste installatie van LimeSurvey. Indien nodig kun je deze configuratie wijzigen. Dat doe je dan op eigen risico. Lees ook de Yii-documentatie, en denk eraan dat LimeSurvey alleen de database-types mysql, pgsql, dblib, mssql en sqlsrv ondersteund.
Sessie
Je kunt enkele sessie-parameters in config.php zetten (bekijk de 2 onderstaande voorbeelden). Je kunt, indien nodig, commentaar verwijderen/toevoegen. Lees de Yii-documentatie voor andere instellingen.
Gebruik table-based sessies
LimeSurvey kan table-based sessies gebruiken. Zoek in het gegenereerde bestand config.php naar dit onderdeel dat standaard op commentaar staat. Als je table-based sessies wilt gebruiken, verwijder dan alle // die vóór deze regels van dit onderdeel staan.
'session' => array (
'class' => 'application.core.web.DbHttpSession',
'connectionID' => 'db',
'sessionTableName' => '{{sessions}}',
),
Andere sessie update
Als je SSL ('https') gebruikt voor LimeSurvey voeg dan de volgende regels toe in config.php:
// Set the cookie via SSL
'session' => array (
'cookieParams' => array(
'secure' => true, // use SSL for cookies
'httponly' => true // Cookies may not be used by other protocols - experimental
),
),
Als je het domein wilt aanpassen voor het gebruik van cookies plaats dan in de config.php:
// Set the domain for cookie
'session' => array (
'cookieParams' => array(
'domain' => '.example.org',
),
),
Als je meerdere installaties op één server hebt staan, kun je mogelijk sneller en gemakkelijker per installatie een sessie-naam zetten. Dit kan soms nodig zijn in IE11 (lees issue 12083)
// Zet sessie-naam
'session' => array (
'sessionName' => "LimeSurveyN1",
),
Request
Deze instellingen zijn veelomvattend, maar de optionele instellingen zijn al geoptimaliseerd voor het gebruik van LimeSurvey. Lees Yii-documentatie voor meer informatie.
Een aanpassing die je (op eigen risico) in je LimeSurvey-configuratie kunt doen :
// Disable CSRF protection
'request' => array(
'enableCsrfValidation'=>false,
),
// Enforce a certain URL base
'request' => array(
'hostInfo' => 'http://www.example.org/'
),
// Set the cookie domain name and path for CSRF protection, path is used if you have different instance on same domain
'request' => array(
'csrfCookie' => array(
'domain' => '.example.com',
'path' => '/limesurvey/',
)
),
Als je alleen de url voor toegangscode e-mail wilt bijwerken: plaats de publicurl in het bestand config.php.
Gebruik van sessie en Csrf-validatie toestaan in iFrame (New in 3.24.3 )
Nadat u Iframe embedding hebt toegestaan, moet u wat configuratie bijwerken.
Sessie in iframe toestaan
De sessie moet beveiligd zijn (geldige https), met httponly en samesite met de waarde None. Alle instellingen moeten in kleine letters zijn gedaan.
'session' => array (
'sessionName'=>'LS-VBXZZORFJZCAKGYI',
// Haal de vinkjes weg als je sessies op basis van table wilt hebben.
// NB: Table-based sessies worden nu niet ondersteund op een MSSQL-server.
// 'class' => 'application.core.web.DbHttpSession',
// 'connectionID' => 'db',
// 'sessionTableName' => '{{sessions}}',
'cookieParams' => array(
'secure' => true,
'httponly' => true,
'samesite' => 'None',
),
),
csrf-cookie in iframe toestaan
Hetzelfde als bij sessie: moet beveiligd zijn en sameSite moet None zijn. Hele array moet op hetzelfde niveau worden toegevoegd als de sessie
'request' => array(
'enableCsrfValidation'=>true,
'csrfCookie' => array(
'sameSite' => 'None',
'secure' => true,
),
),
URL
Om de standaard URL-instellingen te wijzigen, wijzig de urlManager:
// Use short URL
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName' => false,
),
U kunt ook .html achter het id van de enquête zetten:
// Use short URL
'urlManager' => array(
'urlFormat' => 'path',
'rules' => array (
'<sid:\d+>' => array('survey/index','urlSuffix'=>'.html','matchValue'=>true),
),
'showScriptName' => false,
),
Meer informatie: Yii documentatie.
Logging instellingen
Yii kent een paar mogelijkheden om een log aan te laten maken. Lees hier een uitleg. LimeSurvey gebruikt '1' of '2' standaard, waardoor elke webgebruiker de logs kan bekijken. Je kunt in Yii je eigen instellingen aanmaken.
Om snel errors en warnings te loggen kun je volstaan met:
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) */
);
limesurvey/tmp/runtime/application.log
, uitgaande van de LimeSurvey root..
Runtime pad
Het runtime pad moet een lees- en schrijfbare map zijn voor de “webuser”. Echter omdat het runtime pad bestanden bevat die mogelijk beveiligingsinformatie bevatten die openbaar toegankelijk is, zijn deze bestanden geplaatst in de map temp in de rootmap. Om toegang tot deze bestanden te voorkomen kun je het runtime-pad buiten het via het web openbare gedeelte plaatsen door de volgende regels in het bestand /application/config/config.php te wijzigen:
return array(
'components' => array(
[…]
'runtimePath'=>'/var/limesurvey/runtime/',
'config'=>array(
[…]
)
)
)
Algemene instellingen
- sitename: Geeft je enquête-site een naam. De naam verschijnt in de lijst met enquêtes en in het administratiepaneel. Alleen gebruikt als standaard en kan worden gewijzigd in de Algemene instellingen en in config.php.
- siteadminemail: Dit is het standaard e-mailadres van de websitebeheerder, waar meldingen en contactverzoeken naar worden verstuurd. Alleen gebruikt als standaard en kan worden gewijzigd in de Algemene instellingen
- siteadminbounce: Dit is het e-mailadres waarnaar niet verzonden e-mails worden verstuurd. Alleen gebruikt als standaard en kan worden gewijzigd in de Algemene instellingen
- siteadminname: De naam van de websitebeheerder. Alleen gebruikt als standaard en kan worden gewijzigd in de Algemene instellingen
- proxy_host_name: De hostnaam van de proxy-server (als je achter een proxy zit en LimeSurvey wilt updaten met ComfortUpdate).
- proxy_host_port: De poort van de proxy-server (als je achter een proxy zit en LimeSurvey wilt updaten met ComfortUpdate).
Beveiliging
- maxLoginAttempt: Het aantal toegestane pogingen dat de gebruiker het gebruikerswachtwoord foutief mag invullen voordat het geblokkeerd wordt (op IP) . Standaardwaarde is 3, te wijzigen in config.php.
- timeOutTime: Als de gebruiker het gebruikerswachtwoord <maxLoginAttempt> keer foutief invult : tijd dat het IP is geblokkeerd. Standaardwaarde is 10 minuten, te wijzigen in config.php.
- maxLoginAttemptParticipants: Het aantal pogingen dat een deelnemer mag doen een geldig token in te voeren voordat het IP-adres wordt geblokkeerd. De standaardwaarde is 3, het kan in config.php worden gewijzigd.
* timeOutParticipants: Als de deelnemer het token <maxLoginAttemptParticipants> ongeldig invoert, dan wordt de gebruiker geblokkeerd voor <timeOutParticipants> seconden. De standaardwaarde van 10 minuten kan worden gewijzigd in config.php.
- surveyPreview_require_Auth: standaard true. Zet deze false als iedereen de enquête kan testen, zonder in het beheergedeelte in te loggen, en zonder dat de enquête actief is. Deze waarde kan worden overschreven met de waarde in de Algemene instellingen of in config.php.
- usercontrolSameGroupPolicy: Standaard true. Niet-beheerders (opgenomen in de LimeSurvey beheerinterface) zullen alleen andere gebruikers kunnen zien als ze beiden aan minstens één dezelfde groep gekoppeld zijn. Deze waarde kan worden gewijzigd in de Algemene instellingen of in config.php.
- filterxsshtml: Als deze instelling true is zal LimeSurvey enquêtes, vragen, antwoorden en groepen scannen op verdachte html-tags. Zet deze instelling alleen op false als je je gebruikers vertrouwd met JavaScript, flashfilmpjes en dergelijke. Deze waarde kan worden overschreven met de waarde in de Algemene instellingen of in config.php. Er is geen filtering voor de hoofdbeheerder.
- demoMode: Als deze instelling "aan" (true) staat zal LimeSurvey in demo-modus werken. Dat betekent:
- Het is niet mogelijk om het beheeraccount te wijzigen
- Het is niet mogelijk om bestanden te uploaden in sjaboonbeheer
- Het is niet mogelijk om uitnodigingen en herinneringen via email te verzenden
- Het is niet mogelijk om een dump van een database te maken
- Het is niet mogelijk om de volgende zaken aan te passen: sitenaam, standaardtaal, standaard html-editor modus, XSS filter.
- forcedsuperadmin: Array van user-id's met alle rechten binnen LimeSurvey. Deze instelling kan alleen in het bestand config.php worden gewijzigd. De gebruikersrechten kunnen niet worden gewijzigd bij de globale rechten door een andere hoofdbeheerder. Standaard heeft de eerste na aanmaken installatie toegevoegde gebruiker deze rechten, deze heeft dan user-id 1.
- force_ssl: forceert dat LimeSurvey werkt met HTTPS of dat juist blokkeert. Lees Forceer HTTPS in de algemene instellingen.
- ssl_emergency_override: Deze instelling zet SSL uit. Als je HTTPS/SSL bij de algemene instellingen hebt ingeschakeld maar op je server HTTPS niet ingeschakeld is, is dat de enige manier op HTTPS uit te zetten, door direct een waarde in de database te zetten. Je kunt dan de algemene instelling weer aanpassen, dit is bedoeld als zeer tijdelijke maatregel, SSL hoort aan te staan. De waarde kan alleen in het bestand config.php gewijzigd worden.
- ssl_disable_alert: Als je de waarschuwing dat SSL uitstaat als hoofdbeheerder niet meer wilt krijgen en je dus zeker geen SSL wilt gebruiken dan kun je deze melding uitzetten in het bestand config.php.
Bronbeheer
- sessionlifetime: geeft aan hoe lang de sessie van een enquête geldig is. Alleen van toepassing bij gebruik van database-sessies. (Deze waarde kan worden gewijzigd met Algemene instellingen) of in config.php.
- memorylimit: geeft aan hoeveel geheugen LimeSurvey mag gebruiken. 128M (Megabyte) is het minimum om goed te kunnen werken. Mocht je time-outs (of andere problemen) hebben bij het genereren van statistieken, overweeg dan om 256M of nog hoger te gebruiken. Als je webserver een hogere limiet toekent dan wordt deze instelling niet gebruikt.
Mocht het dus niet werken, probeer dan:
- memory_limit = 128M te zetten in het php.ini-bestand op de server (als dat kan en mag)
- memory_limit = 128M te zetten in een php.ini-bestand in de directory waar LimeSurvey staat
- php_value memory_limit 128M te zetten in een .htaccess-bestand in de directory waar LimeSurvey staat
- max_execution_time: Het aantal seconden dat een script mag lopen voordat het afgebroken wordt. Standaard op 1200 seconden, vanwege het exporteren van een enquête met veel gegevens. Je kunt het alleen aanpassen via het bestand config.php.
Presentatie
- dropdownthreshold: (Vervallen sinds 2.50) als je
$dropdowns
op "R" hebt gezet, is dit het maximale aantal opties dat getoond wordt als radioknoppen, voordat LimeSurvey deze vervangt door een dropdown-selectielijst. Als je dit maximum op iets van 25 zet (de standaardwaarde) zijn lange lijsten voor de gebruiker evenvoudiger gebruiken. - repeatheadings: Zet deze op een waarde om bij vragen van het arraytype de kop opnieuw te tonen na dit aantal subvragen. Dit is nuttig als je veel subvragen, meer dan een scherm, hebt. Een redelijk geschikte waarde is 15. Als je de kop niet wilt herhalen, zet dan deze waarde op 0. (Deze waarde wordt overschreven in de Algemene instellingen dialoog) (Nieuw in 2.05).
- minrepeatheadings: Het minimale aantal resterende subvragen dat verplicht is voordat de koppen bij arrayvragen wordt herhaald. Standaardwaarde 3, te wijzigen in config.php.
- defaulttemplate: deze instelling bepaald het standaardthema dat gebruikt wordt voor het tonen van de 'publieke lijst' van enquêtes. (Deze waarde wordt gewizjigd in de Algemene instellingen) of in config.php.
- defaulthtmleditormode: bepaalt de standaardmodus waarin de HTML-editor opstart. (Deze waarde kan worden gewijzigd in de Algemene instellingen) of in config.php.
- inline inline vervanging van velden door een HTML-editor. Langzaam, maar makkelijk en gebruikersvriendelijk
- popup voegt een icoon toe, die bij selectie de HTML-editor indien nodig in een popup toont. Sneller, maar de html-code is zichtbaar
- none geen HTML-editor gebruiken
- column_style: Bepaald hoe kolommen van antwoorden worden weergegeven bij gebruik van display_columns. De waarden zijn:
- 'css' gebruik een van de verschillende CSS alleen methoden voor aanmaken kolommen (bekijk het sjabloon stylesheet voor details).
- 'ul' gebruik multiple floated unordered lists. (standaard)
- 'table' gebruik traditionele tabellenlayout.
- NULL uitschakelen gebruik kolommen
Taal en tijd
- defaultlang: Zet deze op de standaardtaal waarin het beheerpaneel, en de openbare enquêtes getoond worden. Binnen een enquête kun je zelf een afwijkende taal gebruiken. Deze waarde worden gewijzigd in de Algemene instellingen of in config.php.
- timeadjust: Als de webserver in een andere tijdzone staat dan waar jouw enquête wordt gebruikt, zet hier dan de afwijking in uren. Dit is met name van belang voor enquêtes die werken met de tijd of een tijdstempel gebruiken. Voorbeeld: je voert een enquête uit in Australië en gebruikt een server in de VS. Er is dan een tijdsverschil van 14 uur, de instelling wordt dan "14". Deze waarde kan worden gewijzigd in de Algemene instellingen of in config.php.
Gedrag
- deletenonvalues: Wees hier voorzichtig mee. Standaard (waarde '1') worden antwoorden die niet ter zake doen opgeslagen met waarde 'NULL'. Een voorbeeld is dat een deelnemer de vraag 'geslacht?' beantwoord met 'vrouw'. Vervolgens beantwoord hij een aantal vrouw-specifieke vragen, zich realiseert dat hij een fout gemaakt heeft, terugkeert naar die vraag en dan de optie 'man' kiest. Nu zijn de antwoorden op de vrouw-vragen irrelevant, want hij krijgt (en beantwoordt) de man-specifieke vragen. Bij
$deletenonvalues==1
, worden deze irrelevante waarden gewist (NULL) in de database. Bij$deletenonvalues==0
blijven de waarden aanwezig, maar waarom zou je dat willen. - shownoanswer: Als de antwoorden op een vraag van een selectielijst (radio/select) invulbaar zijn (List of Array-vragen) en deze instelling staat op '1', wordt er een optie toegevoegd met de waarde 'Geen antwoord'. Zo kan de gebruiker kiezen om de vraag niet te beantwoorden.
- '0' : Nee
- '1' : Ja, de optie 'Geen antwoord' wordt getoond.
- '2' : De beheerder van de enquête kan kiezen.
- printanswershonorsconditions: Deze instelling bepaalt of antwoorden die niet mogelijk zijn vanwege één of meerdere conditie(s) getoond worden. De standaard '1' verbergt deze antwoorden.
- hide_groupdescr_allinone: Deze instelling wordt gebruikt door enquêtes met condities. Zet deze op de waarde true (de standaardwaarde) als je wilt dat de groepsnaam en beschrijving ook verborgen worden als alle condities in de groep ook verborgen zijn.
- showpopups: Deze instelling bepaald of er popups getoond worden als vragen niet of niet correct beantwoord zijn.
- '2' bepaald door optie in Thema (standaard)
- '1' betekent dat popups getoond worden,
- '0' betekent dat de melding op de pagina zelf getoond wordt,
- en '-1' betekent dat er geen melding gedaan wordt. Gebruikers zien echter wel de indicatie bij de vragen die verplicht beantwoord moeten worden.
Numeriek vraagtype gedrag
- bFixNumAuto: Numerieke velden kunnen automatisch worden gefilterd om alle niet-numerieke tekens te verwijderen. Standaard is dit ingeschakeld, je kunt het globaal uitschakelen. Deze instellingen zijn gerelateerd aan Herstel automatisch numerieke waarde in standaardthema-opties. Inschakelen: Ja, uitschakelen met Alleen voor expressie en Nee.
- BNumRealValue: Numerieke velden die in ExpressionScript worden gebruikt, kunnen worden hersteld, standaard is herstellen. Als NUMERIC een numerieke vraag is: schakel uit of 0: {NUMERIC} met verkeerde tekens verzonden '' , schakel in of 1: {NUMERIC} verzend alle ingevoerde tekens. Deze instellingen zijn gerelateerd aan Herstel automatisch numerieke waarde in standaardthema-opties. Inschakelen : Ja en Alleen voor expressie en uitschakelen met Nee.
Ontwikkeling en debugging
- debug: Met deze instelling zet je in config.php de PHP-error mededelingen op niveau E_ALL. Dit betekent dat elke afwijking op een script getoond wordt. Zet de waarde op '1' als je de applicatie aan het debuggen bent, of '2' als je een ontwikkelaar bent. Laat deze waarde in productieomgeving op (de standaard) '0' staan, anders kunnen hackers mogelijk belangrijke informatie inzien.
- debugsql: Activeer deze instelling on config.php als je de SQL-queries die worden uitgevoerd wilt tonen, ze worden getoond onderaan de pagina. Handig als je de queries wilt optimaliseren.
- use_asset_manager: Standaard : schakel bij debug mode de asset-manager uit, maar hier kun je instellen dat je bij het debuggen toch de asset-manager wilt gebruiken.
Als je een fout in de applicatie wilt melden en informatie op het forum wilt geven, dan kun je eerst de debugging inschakelen zodat je meer informatie kunt geven.
'config'=>array(
'debug'=>2,
'debugsql'=>0,
)
Als je een plug-in ontwikkelt en een snelle manier nodig hebt om variabelen op het scherm te tonen kun je de traceVar-functie gebruiken. Als debug voor deze functie is ingesteld : gebruik CWebLogRoute om op de HTML-pagina weer te geven. Gebruik traceVar($MyVariable)
Email instellingen
De waarden kunnen worden gewijzigd in de Algemene instellingen.
- emailmethod: Bepaalt via welke methode een email verzonden wordt:
- mail: via de interne PHP mailer
- sendmail: via sendmail
- smtp: via smtp-verwijzing. Gebruik deze optie als je LimeSurvey draait op een computer die niet je mailserver is.
- emailsmtphost: Als je als mailmethode 'smtp' gekozen hebt, vul hier dan de SMTP-server in. Als je bijvoorbeeld Google-mail gebruikt, vul dan indien nodig ook de poort in
$emailsmtphost = 'smtp.gmail.com:465';
- emailsmtpuser: Vul hier de gebruikersnaam voor de SMTP-server in. Als de server geen toegangscontrole heeft, laat het dan leeg
- emailsmtppassword: Vul hier het wachtwoord voor de SMTP-server in. Als de server geen toegangscontrole heeft, laat het dan leeg
- emailsmtpssl: Vul hier de waarde 'ssl' of 'tls' in om SSL/TLS te gebruiken voor de connectie met de SMTP-server
- maxemails: Als je uitnodigingen of herinneringen stuurt aan deelnemers bepaalt deze instelling hoeveel mails er in een batch maximaal verstuurd mogen worden. Als dit getal te hoog staat kan het zijn dat het mailscript in een time-out loopt. Een gemiddelde webserver kan ongeveer 100 mails versturen in de 30 seconden dat een script draait. Krijg je daarbij time-outs, zet dan hier een lager aantal neer. Als je de emails gaat versturen en er zijn er meer emails dan het hier opgegeven maximum aantal dan kun je de emails per dit maximum versturen, je moet dan per zending op een vervolgknop klikken. Je hoeft dit versturen niet in een sessie te doen.
Statistieken en respons bekijken
- filterout_incomplete_answers: Bepaal het standaardgedrag van de respons bij niet compleet gegeven antwoorden. Omdat deze de statistieken kunnen vervuilen, zit er een optie in de interface om deze uit te zetten. Voor meer informatie : Responsen bekijken. Het standaardgedrag kan als volgt ingesteld worden:
- show: Toon zowel de compleet, als de niet compleet gegeven antwoorden
- filter: Toon alleen de complete gegeven antwoorden
- incomplete: Toon alleen de niet compleet gegeven antwoorden
- strip_query_from_referer_url: Deze instelling bepaalt of de complete URL, inclusief parameters, van de aanvrager wordt opgeslagen. Zet deze op false (standaard) als de URL inclusief parameters wilt opslaan, op true als je alleen de URL wilt opslaan.
- showaggregateddata: Zet deze instelling op "aan" om standaard deviatie en gemiddelde bij statistieken te tonen. Ook worden geschaalde antwoorden (Array 5 punten en 5 puntkeuze) samengepakt tot de waarden "goed" *(1+2), "matig" (3), en "slecht" (4+5).
- PDF Export Settings: Zet de mogelijkheid om naar PDF te kunnen exporteren. Nog zeer experimenteel: de output is lelijk. Wil je ons helpen om dit te verbeteren? Neem dan contact met ons op.
- usepdfexport: Zet deze op "0" om geen PDF te kunnen exporteren, "1" om dat wel te kunnen.
- pdfdefaultfont: Standaard lettertype van de PDF-export.
Standaardwaarde is 'auto'. Je kunt het wijzigen in een van de PDF core fonts.
- alternatepdffontfile: een array met key voor taal en specifiek font voor die taal, kan worden vervangen of gewijzigd .
- pdffontsize: Standaard lettergrootte van de PDF-export. De titel van de enquête is +4, groepen worden als +2 weergegeven.
- notsupportlanguages: Een lijst met talen waar geen PDF-font voor is, onder andere Amharic ('am'), Sinhala ('si'), en Thai ('th'). Kijk in het bestand config-defaults.php.
- pdforientation: Zet deze op 'L' voor Landschap of 'P' voor Portretafdruk
- '"Graph setting"'
- chartfontfile : te gebruiken font-bestand : moet staan in fontmap van de server of in de map ./fot
- alternatechartfontfile : een array met key voor taal en specifiek font voor de taal, kan worden vervangen of gewijzigd.
- showsgqacode: Deze instelling wordt gebruikt bij het afdrukken van de enquête. De waarde true zorgt ervoor dat de ID's van iedere vraag (en antwoorden) getoond worden. Deze kunnen dan gebruikt worden bij handmatige query's op de tabel 'Lime_survey_12345'. Standaardwaarde false.
LDAP instellingen
Gezien de uitgebreidheid van dit onderwerp, staat de tekst hier.
Authenticatie
Vanaf LimeSurvey 2.05 wordt de authenticatie gedaan met plugins. De onderstaande informatie kan daarom verouderd zijn.
Authenticatie verplaatsen naar de webserver
Systeembeheerders willen wellicht hun "enquêtebeheerders" authenticeren bij een centraal systeem (Active Directory, openLdap, Radius etc.) in plaats van via de LimeSurvey-database. Hiervoor zet je de benodigde software en opties aan op de webserver, en zet "auth_webserver"op "true"(aan) in config.php.
Bedenk daarbij wel dat
- LimeSurvey nu direct de gebruikersnaam van de webserver als geldige inlog gebruikt
- Dit alleen geldt voor de beheerinterface, niet voor het deelnemersgedeelte.
Authenticatie verplaatsen zonder automatische import van gebruikers
Doordat de authenticatie verplaatste wordt is er geen wachtwoordonderhoud nodig. Maar er moeten nog steeds wel gebruikers in de database aangemaakt worden (plus de rechten die ze hebben) om LimeSurvey te laten werken.
Een gebruiker heeft toegang tot LimeSurvey als:
- hij/zij geauthenticeerd is door de webserver
- de gebruikte loginnaam geldig is als gebruiker voor de LimeSurvey database.
Authenticatie verplaatsen met automatische import van gebruikers
Dit kan lastig worden als je veel gebruikers moet beheren. Daarom is het wellicht makkelijker om de automatische import aan te zetten. Hiervoor gebruik je:
- auth_webserver_autocreate_user: als deze "aan"(true) staat zal LimeSurvey geauthenticeerde gebruikers importeren.
- auth_webserver_autocreate_profile: beschrijft de array van waarden die aan het gebruikersprofiel gehangen worden (zoals een nep-voornaam en nep-achternaam, email en rechten)
Als je deze nep-waarden door echte waarden (uit het authenticatiesysteem) wilt vervangen, ontwikkel dan de functie hook_get_autouserprofile, waarin je het authenticatiesysteem vraagt naar deze waarden.
De hook_get_auth_webserver_profile functie heeft de gebruikersnaam als input, en levert:
- "false" of een lege array als de gebruiker niet geauthenticeerd is voor LimeSurvey
- een array met alle waarden zoals beschreven in
$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();
Gebruikersnaam omsleutelen
Soms verschillen de gebruikersnaam in het authenticatieproces en de gebruikersnaam in LimeSurvey. Deze kun je echter omsleutelen met de auth_webserver_user_map parameter. Voorbeeld: je hebt geen externe gebruiker die 'admin' heet, maar je wilt wel dat de gebruiker 'myname' die rol krijgt. Deze kun je dan als volgt omsleutelen:
'config'=>array(
...
'auth_webserver_user_map' => array ('myname' => 'admin');
)
Zodra de gebruiker 'myname' is geauthenticeerd, zal deze als de 'admin' gebruiker door LimeSurvey gezien worden.
Uiteraard is dit onveilig, dus wees er voorzichtig mee, en bescherm de config.php tegen het wijzigen door de webserver.
Wegwerpwachtwoorden
(Nieuw in 1.81) Een gebruiker kan het beheerpaneel openen op /limesurvey/admin, en een wegwerpwachtwoord gebruiken. Hiervoor is de kolom 'one_time_pw' in de gebruikerstabel beschikbaar.
Deze mogelijkheid moet echter wel gezet worden in het bestand config.php, want die staat standaard uit.
'config'=>array(
'debug'=>0,
'debugsql'=>0,
'use_one_time_passwords'=>true,
)
Encryptie instellingen
(Nieuw in 4.0.0)
application/config/security.php
. Je zou dit kunnen laten staan of het verplaatsen naar config.php.Dit is beschreven in encryptie.
- encryptionkeypair
- encryptionpublickey
- encryptionsecretkey
Geavanceerde URL instellingen
- publicurl: Dit moet worden ingesteld op de URL-locatie van uw 'openbare scripts'. De publieke scripts zijn degene die zich in de map "limesurvey" bevinden (of welke naam je ook hebt gegeven aan de map waarin alle andere scripts en mappen worden bewaard). 'Deze instellingen zijn beschikbaar in config.php en worden gebruikt als LimeSurvey een absolute url nodig heeft (bijvoorbeeld wanneer token e-mails worden verzonden).'
- Homeurl: Dit moet worden ingesteld naar de URL-locatie van uw beheerscripts. Deze bevinden zich in de map / limesurvey / admin. Dit moet worden ingesteld op de WEB-URL-locatie, bijvoorbeeld http://www.example.com/limesurvey/html/admin . Voeg geen slash toe aan dit item. De standaardinstelling in config.php probeert de naam van uw server automatisch te detecteren met behulp van een php-variabele-instelling -
{$_SERVER [ 'SERVER_NAME']}
<code>{$_SERVER [ 'SERVER_NAME']}</code>{$_SERVER [ 'SERVER_NAME']}
. 'In de meeste gevallen kun je dit laten staan en gewoon de rest van deze string aanpassen zodat het overeenkomt met de mapnaam waarin je de LimeSurvey-scripts hebt geplaatst.' - Tempurl: Dit zou moeten zijn ingesteld op de URL-locatie van je map "/ limesurvey / tmp" - of op een map waarin je LimeSurvey wilt gebruiken om tijdelijke bestanden te serveren.
- Uploadurl: Dit moet worden ingesteld op de URL-locatie van je map "/ limesurvey / upload" of op een map waarin je LimeSurvey wilt gebruiken om geüploade bestanden te serveren. Hiermee kunt u geüploade bestanden op een ander url-domein instellen.
Geavanceerde padinstellingen
- homedir: Dit moet worden ingesteld op de fysieke schijflocatie van uw beheerscripts - bijvoorbeeld "/home/usr/htdocs/limesurvey/admin". Voeg geen slash toe aan dit item. De standaardinstelling in config.php probeert het standaard rootpad van al uw documenten te detecteren met behulp van de php-variabele-instelling
{$_SERVER [ 'DOCUMENT_ROOT']}
<code>{$_SERVER [ 'DOCUMENT_ROOT']}</code>{$_SERVER [ 'DOCUMENT_ROOT']}
. In de meeste gevallen kun je dit laten staan en gewoon de rest van deze string aanpassen zodat het overeenkomt met de directorynaam waarin je de LimeSurvey-scripts hebt geplaatst. - Publicdir: Dit moet worden ingesteld op de fysieke schijflocatie van uw 'openbare scripts'.
- tempdir: Dit moet worden ingesteld op de fysieke schijflocatie van uw /limesurvey/tmp zodat het script bestanden kan lezen en schrijven.
- uploaddir: Dit moet worden ingesteld op de fysieke schijflocatie van uw map /limesurvey/upload zodat het script bestanden kan lezen en schrijven.
- sCKEditorURL: url van het fckeditor-script.
- Fckeditexpandtoolbar: definieert of de fckeditor werkbalk standaard geopend moet worden.
- Pdfexportdir: Dit is de map met de tcpdf.php extensietcpdf.php.
- pdffonts: Dit is de map voor de TCPDF-lettertypen.
Andere geavanceerde instellingen
Bestanden uploaden
- allowedthemeuploads: De bestandstypes die in de thema editor geüpload mogen worden
- allowedresourcesuploads: De bestandstypes die in de bronsecties en met de HTML-editor geüpload mogen worden
- allowedfileuploads (Nieuw in 4.0.0) Globale beperking van up te loaden bestandstypes
- magic_database: (Nieuw in 3.17.17) Toestaan om een andere MIME-database te gebruiken voor finfo_open . Kan alleen handmatig gewijzigd worden in het bestand config.php. Voorbeeld:
/usr/share/misc/magic.mgc
voor op redhat gebaseerde linux. - Magic_file: (Nieuw in 3.17.17) Sta toe om een ander bestand te gebruiken om de reeks extensies te verkrijgen per mime-type dan het standaardbestand. Moet een PHP-bestand zijn dat een array retourneert. Kan alleen handmatig gewijzigd worden in het bestand config.php.
Update
- updatable: Deze instelling staat in version.php. Kan true of false zijn. Als je true instelt: wanneer een superbeheerder zich aanmeldt: limesurvey controleren of er een update beschikbaar is en of er een waarschuwing getoond moet worden. Indien ingesteld op false: er wordt geen controle uitgevoerd, je kunt ComfortUpdate niet gebruiken.