From 78d6211e62bf05b288e08e439e8832861bcf393b Mon Sep 17 00:00:00 2001 From: Mark Friedrich Date: Sat, 22 Dec 2018 14:31:17 +0100 Subject: [PATCH] - improved documentation in pathfinder.ini (no value changes) --- app/config.ini | 12 +- app/pathfinder.ini | 273 ++++++++++++++++++++++++++++++++++----------- 2 files changed, 214 insertions(+), 71 deletions(-) diff --git a/app/config.ini b/app/config.ini index e21a138d..90be3bc5 100644 --- a/app/config.ini +++ b/app/config.ini @@ -14,14 +14,14 @@ DEBUG = 0 ; How to behave on 'non-fatal' errors ; If TRUE, the framework, after having logged stack trace and errors, stops execution ; (die without any status) when a non-fatal error is detected. -; Tip: You should not change this. +; Hint: You should not change this. ; Syntax: TRUE | FALSE ; Default: FALSE HALT = FALSE ; Timezone to use ; Sync Pathfinder with EVE server time. -; Tip: You should not change this. +; Hint: You should not change this. ; Default: UTC TZ = UTC @@ -35,14 +35,14 @@ LANGUAGE = en-US ; Cache key prefix ; Same for all cache values for this installation. ; CLI (cronjob) scripts use it for cache manipulation. -; Tip: You should not change this. +; Hint: You should not change this. ; Syntax String ; Default: {{ md5(@SERVER.SERVER_NAME) }} SEED = {{ md5(@SERVER.SERVER_NAME) }} ; Cache backend ; Can handle Redis, Memcache module, APC, WinCache, XCache and a filesystem-based cache. -; Tip: Redis is recommended and gives the best performance. +; Hint: Redis is recommended and gives the best performance. ; Syntax: folder=[DIR] | redis=[SERVER] ; Default: folder=tmp/cache/ ; Value: folder=[DIR] @@ -52,9 +52,9 @@ SEED = {{ md5(@SERVER.SERVER_NAME) }} CACHE = folder=tmp/cache/ ; Cache backend used by PHPs Session handler. -; Tip1: Best performance and recommended configuration for Pathfinder is to configured Redis as PHPs default Session handler +; Hint1: Best performance and recommended configuration for Pathfinder is to configured Redis as PHPs default Session handler ; in your php.ini and set 'default' value here in order to use Redis (fastest) -; Tip2: If Redis is not available for you, leave this at 'mysql' (faster than PHPs default files bases Sessions) +; Hint2: If Redis is not available for you, leave this at 'mysql' (faster than PHPs default files bases Sessions) ; Syntax: mysql | default ; Default: mysql ; Value: mysql diff --git a/app/pathfinder.ini b/app/pathfinder.ini index 75058276..77d7fa6a 100644 --- a/app/pathfinder.ini +++ b/app/pathfinder.ini @@ -1,57 +1,116 @@ -; Main Config +; Pathfinder Config [PATHFINDER] +; Name of installation +; This can be changed to any name +; This name is used in e.g. emails, user interface +; Syntax: String +; Default: Pathfinder NAME = Pathfinder -; installed version (used for CSS/JS cache busting) + +; Pathfinder version +; Version number should not be changed manually. +; Version is used for CSS/JS cache busting and is part of the URL for static resources: +; e.g. public/js/vX.X.X/app.js +; Syntax: String (current version) +; Default: v1.4.4 VERSION = v1.4.4 -; contact information [optional] + +; Contact information [optional] +; Shown on 'licence', 'contact' page. +; Syntax: String +; Default: https://github.com/exodus4d CONTACT = https://github.com/exodus4d -; public contact email [optional] + +; Public contact email [optional] +; Syntax: String +; Default: EMAIL = -; source code [optional] + +; Repository URL [optional] +; Used for 'licence', 'contact' page. +; Syntax: String +; Default: https://github.com/exodus4d/pathfinder REPO = https://github.com/exodus4d/pathfinder -; show warning on "login" form if /setup route is active -; DO NOT disable this warning unless /setup route is protected by e.g. WebAuth +; Show warning on 'login' page if /setup route is active +; DO NOT disable this warning unless /setup route is protected or commented in routes.ini +; Syntax: 0 | 1 +; Default: 1 SHOW_SETUP_WARNING = 1 -; show complete login page -; if disabled, some section dont appear (Slideshow, Features, Admin, Install, About) (default: 1) +; Show full login page +; If disabled, some section don“t appear: +; 'Slideshow', 'Features', 'Admin', 'Install', 'About' +; Syntax: 0 | 1 +; Default: 1 SHOW_COMPLETE_LOGIN_PAGE = 1 ; REGISTRATION ==================================================================================== [PATHFINDER.REGISTRATION] -; registration status (for new users) (0=disabled, 1=enabled) +; Registration status (for new users) +; If disabled, users can no longer register a new account on this installation. +; Syntax: 0 | 1 +; Default: 1 STATUS = 1 [PATHFINDER.LOGIN] -; expire time (in days) for login cookies +; Expire time for login cookies +; Login Cookie information send by clients is re-validated by the server. +; The expire time for each cookie is stored in DB. Expired Cookies become invalid. +; Syntax: Integer (days) +; Default: 30 COOKIE_EXPIRE = 30 -; shows "scheduled maintenance" warning to users (default: 0) +; Show 'scheduled maintenance' warning +; If enabled, active users will see a notification panel. +; This can be used to inform users about upcoming maintenance shutdown. +; This flag can be enabled "on the fly" (no page reload required to see the notice). +; Syntax: 0 | 1 +; Default: 0 MODE_MAINTENANCE = 0 -; restrict login to specific corporations/alliances by id (e.g. 1000166,1000080) +; Login restrictions (white lists) +; Login/registration can be restricted to specific groups. +; Use comma separated strings for CCP Ids (e.g. 1000166,1000080). +; If no groups are specified, all characters are allowed. +; Syntax: String (comma separated) +; Default: CHARACTER = CORPORATION = ALLIANCE = [PATHFINDER.CHARACTER] +; Auto location select for characters +; If enabled, characters can activate the "auto location select" checkbox in their account settings. +; If checkbox active, solar systems get auto selected on map based on their current system. +; Hint: This can increase server load because of more client requests. +; Syntax: 0 | 1 +; Default: 1 AUTO_LOCATION_SELECT = 1 ; Slack API integration =========================================================================== [PATHFINDER.SLACK] -; Global Slack API status, check PATHFINDER.MAP section for individual control (0=disabled, 1=enabled) +; Slack API status +; This is a global toggle for all Slack related features. +; Check PATHFINDER.MAP section for individual control. +; Syntax: 0 | 1 +; Default: 1 STATUS = 1 ; Discord API integration ========================================================================= [PATHFINDER.DISCORD] -; Global Discord API status, check PATHFINDER.MAP section for individual control (0=disabled, 1=enabled) +; Discord API status +; This is a global toggle for all Discord related features. +; Check PATHFINDER.MAP section for individual control. +; Syntax: 0 | 1 +; Default: 1 STATUS = 1 ; View ============================================================================================ [PATHFINDER.VIEW] -; static page templates +; Page templates +; Hint: You should not change this. INDEX = templates/view/index.html SETUP = templates/view/setup.html LOGIN = templates/view/login.html @@ -59,33 +118,38 @@ ADMIN = templates/view/admin.html ; HTTP status pages =============================================================================== [PATHFINDER.STATUS] -; error pages +; Error page templates +; Hint: You should not change this. 4XX = templates/status/4xx.html 5XX = templates/status/5xx.html ; MAP ============================================================================================= -; Map settings for "private", "corporation" and "alliance" maps -; LIFETIME (days): -; - Map will be deleted after "X" days, by cronjob -; MAX_COUNT: -; - Users can create/view up to "X" maps of a type -; MAX_SHARED: -; - Max number of shared entities per map -; MAX_SYSTEMS: -; - Max number of active systems per map -; LOG_ACTIVITY_ENABLED (0: disable, 1: enable): -; - Whether user activity statistics can be anabled for a map type -; - E.g. create/update/delete of systems/connections/signatures/... -; LOG_HISTORY_ENABLED (0: disable, 1: enable): -; - Whether map change history should be logged to separat *.log files -; - see: [PATHFINDER.HISTORY] config section below -; SEND_HISTORY_SLACK_ENABLED (0: disable, 1: enable): -; - Send map updates to a Slack channel per map -; SEND_RALLY_SLACK_ENABLED (0: disable, 1: enable): -; - Send rally point pokes to a Slack channel per map -; SEND_RALLY_Mail_ENABLED (0: disable, 1: enable): -; - Send rally point pokes by mail -; - see: [PATHFINDER.NOTIFICATION] section below +; Map settings for 'private', 'corporation' and 'alliance' maps: +; LIFETIME (days) +; - Map will be deleted after 'X' days, by cronjob +; MAX_COUNT +; - Users can create/view up to 'X' maps of a type +; MAX_SHARED +; - Max number of shared entities per map +; MAX_SYSTEMS +; - Max number of active systems per map +; LOG_ACTIVITY_ENABLED (Syntax: 0 | 1) +; - Whether user activity statistics can be enabled for a map type +; - E.g. create/update/delete of systems/connections/signatures/... +; LOG_HISTORY_ENABLED (Syntax: 0 | 1) +; - Whether map change history should be logged to separate *.log files +; - see: [PATHFINDER.HISTORY] config section below +; SEND_HISTORY_SLACK_ENABLED (Syntax: 0 | 1) +; - Send map updates to a Slack channel per map +; SEND_RALLY_SLACK_ENABLED (Syntax: 0 | 1) +; - Send rally point pokes to a Slack channel per map +; SEND_HISTORY_DISCORD_ENABLED (Syntax: 0 | 1) +; - Send map updates to a Discord channel per map +; SEND_RALLY_DISCORD_ENABLED (Syntax: 0 | 1) +; - Send rally point pokes to a Discord channel per map +; SEND_RALLY_Mail_ENABLED (Syntax: 0 | 1) +; - Send rally point pokes by mail +; - see: [PATHFINDER.NOTIFICATION] section below [PATHFINDER.MAP.PRIVATE] LIFETIME = 60 MAX_COUNT = 3 @@ -127,77 +191,151 @@ SEND_RALLY_Mail_ENABLED = 0 ; Route search ==================================================================================== [PATHFINDER.ROUTE] -; max recursive search depth for routes (default: 9000) -; decrease it on performance problems +; Search depth for system route search +; Recursive search depth for search algorithm. +; This is only used in case ESIs /route/ API responds with errors and the custom search algorithm is used. +; Hint: Higher values can lead to high CPU load. If to low, routes might not be found even if exist. +; Syntax: Integer +; Default: 9000 SEARCH_DEPTH = 9000 -; default count of routes that will be checked (initial) when a system is selected (default: 4) + +; Initial count of routes that will be checked when a system becomes active +; Syntax: Integer +; Default: 4 SEARCH_DEFAULT_COUNT = 4 -; max count of routes that can be selected in "route settings" dialog (default: 6) + +; Max count of routes that can be selected in 'route settings' dialog +; Syntax: Integer +; Default: 6 MAX_DEFAULT_COUNT = 6 -; max count of routes that will be checked (MAX_COUNT + custom routes ) (default: 8) + +; Max count of routes that will be checked (MAX_DEFAULT_COUNT + custom routes) +; Syntax: Integer +; Default: 8 LIMIT = 8 ; Email notifications ============================================================================= -; Requires SMTP configuration (see environment.ini) -; Set mail address for recipient (e.g. pathfinder.notification@[YOUR_DOMAIN] ) [PATHFINDER.NOTIFICATION] +; Email address for rally point pokes +; Requires SMTP configuration (see environment.ini). +; Hint: This only makes sens if the installation is restricted to allied groups only. +; This email address is used for all maps on this installation. +; Syntax: String +; Default: RALLY_SET = ; TIMER =========================================================================================== +; Timer values should NOT be changed unless you know what they affect! +; ================================================================================================= [PATHFINDER.TIMER] -; login time (minutes) (default: 480) +; Login time for characters. Users get logged out after X minutes +; Syntax: Integer (minutes) +; Default: 480 LOGGED = 480 -; double click timer (milliseconds) (default: 250) + +; Double click timer +; Syntax: Integer (milliseconds) +; Default: 250 DBL_CLICK = 250 -; time for status change visibility in header (milliseconds) (default: 5000) + +; Time for status change visibility in header +; Syntax: Integer (milliseconds) +; Default: 5000 PROGRAM_STATUS_VISIBLE = 5000 -; main map update ping (ajax) (milliseconds) [PATHFINDER.TIMER.UPDATE_SERVER_MAP] +; Map data update interval (ajax long polling) +; This is not used for 'WebSocket' configured installations. +; Syntax: Integer (milliseconds) +; Default: 5000 DELAY = 5000 + +; Execution limit for map data update request (ajax long polling) +; Requests that exceed the limit are logged as 'warning'. +; Syntax: Integer (milliseconds) +; Default: 200 EXECUTION_LIMIT = 200 -; update client map data (milliseconds) [PATHFINDER.TIMER.UPDATE_CLIENT_MAP] +; Execution limit for client side (javascript) map data updates +; Map data updates that exceed the limit are logged as 'warning'. +; Syntax: Integer (milliseconds) +; Default: 50 EXECUTION_LIMIT = 50 -; map user update ping (ajax) (milliseconds) [PATHFINDER.TIMER.UPDATE_SERVER_USER_DATA] +; User data update interval (ajax long polling) +; This is not used for 'WebSocket' configured installations. +; Syntax: Integer (milliseconds) +; Default: 5000 DELAY = 5000 + +; Execution limit for user data update request (ajax long polling) +; Requests that exceed the limit are logged as 'warning'. +; Syntax: Integer (milliseconds) +; Default: 500 EXECUTION_LIMIT = 500 ; update client user data (milliseconds) [PATHFINDER.TIMER.UPDATE_CLIENT_USER_DATA] +; Execution limit for client side (javascript) user data updates +; User data updates that exceed the limit are logged as 'warning'. +; Syntax: Integer (milliseconds) +; Default: 50 EXECUTION_LIMIT = 50 ; CACHE =========================================================================================== [PATHFINDER.CACHE] -; delete character log data if if nothing (ship/system/...) for X seconds (seconds) (default: 3min) +; Delete character log data if nothing (ship/system/...) changed for X seconds +; Syntax: Integer (seconds) +; Default: 180 CHARACTER_LOG_INACTIVE = 180 -; max expire time. Expired cache files will be deleted by cronjob (seconds) (default: 10d) + +; Max expire time for cache files +; Files will be deleted by cronjob afterwards. +; This setting only affects 'file cache'. Redis installations are not affected by this. +; Syntax: Integer (seconds) +; Default: 864000 (10d) EXPIRE_MAX = 864000 -; expire time for EOL (end of life) connections (seconds) (default: 4h + 15min) + +; Expire time for EOL (end of life) connections +; EOL connections get auto deleted by cronjob afterwards. +; Syntax: Integer (seconds) +; Default: 15300 (4h + 15min) EXPIRE_CONNECTIONS_EOL = 15300 -; expire time for WH connections (seconds) (default: 2d) + +; Expire time for WH connections +; WH connections get auto deleted by cronjob afterwards. +; This can be overwritten for each map in the UI. +; Syntax: Integer (seconds) +; Default: 172800 (2d) EXPIRE_CONNECTIONS_WH = 172800 -; expire time for signatures (inactive systems) (seconds) (default 3d) + +; Expire time for signatures (inactive systems) +; Signatures get auto deleted by cronjob afterwards. +; This can be overwritten for each map in the UI. +; Syntax: Integer (seconds) +; Default: 259200 (3d) EXPIRE_SIGNATURES = 259200 ; LOGGING ========================================================================================= +; Log file configurations +; Log files are location in [PATHFINDER]/logs/ dir (see: config.ini) +; Syntax: String [PATHFINDER.LOGFILES] -; error log +; Error log ERROR = error ; SSO error log SSO = sso -; login info +; Login info CHARACTER_LOGIN = character_login -; character access info +; Character access CHARACTER_ACCESS = character_access -; session warnings (suspect) +; Session warnings (mysql sessions only) SESSION_SUSPECT = session_suspect -; account deleted +; Account deleted DELETE_ACCOUNT = account_delete -; admin action (e.g. kick, ban) log +; Admin action (e.g. kick, ban) ADMIN = admin ; TCP socket errors SOCKET_ERROR = socket_error @@ -205,9 +343,14 @@ SOCKET_ERROR = socket_error DEBUG = debug [PATHFINDER.HISTORY] -; cache time for parsed log files (seconds) (default: 5) +; cache time for parsed history log file data +; Syntax: Integer (seconds) +; Default: 5 CACHE = 5 -; file folder for 'history' logs (e.g. map history) (default: history/) + +; File folder for 'history' logs (e.g. map history) +; Syntax: String +; Default: history/ LOG = history/ ; ADMIN ===========================================================================================