There are instances where you want readers to be logged in before accessing the documentation pages. QuickieDox does not implement user authentication but provides an Auth.php page with a method canRead that returns true or false.
When REQUIRE_SIGNIN in the .env file is set to true, the Doc->read() method responsible for rendering the documentation pages calls Auth->canRead() and allows access to the page if the return value is true, otherwise the content of views/auth-required.md are displayed.
To ensure only authenticated users can access your docs:
REQUIRE_SIGNIN=true in the .env file.Controllers/AuthController.php and Core/Auth.php and implement your authentication logic.routes.php to handle the page interactions.canRead() method in Auth.php returns true if a user is authenticated and false if a user is not.Setting REQUIRE_SIGNIN=true in the .env file affects every markdown file that makes up your docuemntation. Meaning, any page the user tries to read will check if they are signed in. It is possible to define files that will always be accessible and excluded from this check.
# .env
...
REQUIRE_SIGNIN=true
...
// config.php
...
'whitelisted_docs' => [
'installation.md',
'getting-started.md',
'known-issues.md'
],
...
The files listed in whitelisted_docs above will always be available for reading.
In This Document