private fork from github

This commit is contained in:
soneill 2020-08-30 19:59:19 +12:00
commit ddcacca5c3
37 changed files with 5748 additions and 0 deletions

View file

@ -0,0 +1,144 @@
; Global Framework Config
[SERVER]
SERVER_NAME = CARLFINDER
[globals]
; Verbosity level of error stack trace for errors
; This affects error logging and stack traces returned to clients on error.
; DEBUG level can be overwritten in environment.ini
; Syntax: 0 | 1 | 2 | 3
; Default: 0
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.
; Hint: You should not change this.
; Syntax: TRUE | FALSE
; Default: FALSE
HALT = FALSE
; Timezone to use
; Sync Pathfinder with EVE server time.
; Hint: You should not change this.
; Default: UTC
TZ = UTC
; Default language
; Overwrites HTTP Accept-Language request header.
; Used by setlocale() and affects number formatting.
; Syntax: String
; Default: en-US
LANGUAGE = en-US
; Cache key prefix
; Same for all cache values for this installation.
; CLI (cronjob) scripts use it for cache manipulation.
; Hint: You should not change this.
; Syntax String
; Default: {{ md5(@SERVER.SERVER_NAME) }}
SEED = {{ md5(@SERVER.SERVER_NAME) }}
; Cache backend
; This sets the primary cache backend for Pathfinder. Used for e.g.:
; DB query, DB schema, HTTP response, or even simple key->value caches
; Can handle Redis, Memcache module, APC, WinCache, XCache and a filesystem-based cache.
; Hint: Redis is recommended and gives the best performance.
; Syntax: folder=[DIR] | redis=[SERVER]
; Default: folder=tmp/cache/
; Value: FALSE
; - Disables caching
; folder=[DIR]
; - Cache data is stored on disc
; redis=[SERVER]
; - Cache data is stored in Redis. redis=[host]:[port]:[db]:[auth] (e.g. redis=localhost:6379:1:myPass)
CACHE = redis=${CONTAINER_NAME}-redis:6379
; Cache backend for API data
; This sets the cache backend for API response data and other temp data relates to API requests.
; Response data with proper 'Expire' HTTP Header will be cached here and speed up further requests.
; As default 'API_CACHE' and 'CACHE' share the same backend (cache location)
; Hint1: You can specify e.g. a dedicated Redis DB here, then 'CACHE' and 'API_CACHE' can be cleared independently
; Hint2: Redis is recommended and gives the best performance.
; Default: {{@CACHE}}
; Value: FALSE
; - Disables caching
; folder=[DIR]
; - Cache data is stored on disc
; redis=[SERVER]
; - Cache data is stored in Redis. redis=[host]:[port]:[db]:[auth] (e.g. redis=localhost:6379:2:myPass)
API_CACHE = {{@CACHE}}
; Cache backend used by PHPs 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)
; 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
; - Session data get stored in 'pathfinder'.'sessions' table (environment.ini → DB_PF_NAME).
; Table `sessions` is auto created if not exist.
; default
; - Session data get stored in PHPs default Session handler (php.ini → session.save_handler and session.save_path)
; PHPs default session.save_handler is `files` and each Session is written to disc (slowest)
SESSION_CACHE = mysql
; Callback functions ==============================================================================
ONERROR = {{ @NAMESPACE }}\Controller\Controller->showError
UNLOAD = {{ @NAMESPACE }}\Controller\Controller->unload
; Path configurations =============================================================================
; All path configurations are relative to BASE dir and should NOT be changed
; Temporary folder for cache
; Used for compiled templates.
; Syntax: [DIR]
; Default: tmp/
TEMP = tmp/
; Log file folder
; Syntax: [DIR]
; Default: logs/
LOGS = logs/
; UI folder
; Where all the public assets (templates, images, styles, scripts) are located.
; Syntax: [DIR]
; Default: public/
UI = public/
; Autoload folder
; Where PHP attempts to autoload PHP classes at runtime.
; Syntax: [DIR]
; Default: app/
;AUTOLOAD = app/
; Favicon folder
; Syntax: [DIR]
; Default: favicon/
FAVICON = favicon/
; Export folder
; Where DB dump files are located/created at.
; Syntax: [DIR]
; Default: export/
EXPORT = export/
; Custom *.ini file folder
; Can be used to overwrite default *.ini files and settings
; See: https://github.com/exodus4d/pathfinder/wiki/Configuration#custom-confpathfinderini
; Syntax: [DIR]
CONF.CUSTOM = conf/
CONF.DEFAULT = app/
; Load additional config files
; DO NOT load environment.ini, it is loaded automatically
[configs]
{{@CONF.DEFAULT}}routes.ini = true
{{@CONF.DEFAULT}}pathfinder.ini = true
{{@CONF.DEFAULT}}plugin.ini = true
{{@CONF.CUSTOM}}pathfinder.ini = true
{{@CONF.CUSTOM}}plugin.ini = true
{{@CONF.DEFAULT}}requirements.ini = true
{{@CONF.DEFAULT}}cron.ini = true

View file

@ -0,0 +1,397 @@
; 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 = Goryn Are Lost
; 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: v2.0.0
VERSION = v2.0.1
; Contact information [optional]
; Shown on 'licence', 'contact' page.
; Syntax: String
; Default: https://github.com/exodus4d
CONTACT = https://github.com/exodus4d
; Public contact email [optional]
; Syntax: String
; Default:
EMAIL =
; 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' 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 = 0
; 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)
; If disabled, users can no longer register a new account on this installation.
; Syntax: 0 | 1
; Default: 1
STATUS = 1
[PATHFINDER.LOGIN]
; 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
; 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
; 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]
; 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]
; 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]
; Page templates
; Hint: You should not change this.
INDEX = templates/view/index.html
SETUP = templates/view/setup.html
LOGIN = templates/view/login.html
ADMIN = templates/view/admin.html
; HTTP status pages ===============================================================================
[PATHFINDER.STATUS]
; 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 (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 = 5
MAX_SHARED = 10
MAX_SYSTEMS = 50
LOG_ACTIVITY_ENABLED = 1
LOG_HISTORY_ENABLED = 1
SEND_HISTORY_SLACK_ENABLED = 0
SEND_RALLY_SLACK_ENABLED = 1
SEND_HISTORY_DISCORD_ENABLED = 0
SEND_RALLY_DISCORD_ENABLED = 1
SEND_RALLY_Mail_ENABLED = 0
[PATHFINDER.MAP.CORPORATION]
LIFETIME = 99999
MAX_COUNT = 7
MAX_SHARED = 4
MAX_SYSTEMS = 100
LOG_ACTIVITY_ENABLED = 1
LOG_HISTORY_ENABLED = 1
SEND_HISTORY_SLACK_ENABLED = 1
SEND_RALLY_SLACK_ENABLED = 1
SEND_HISTORY_DISCORD_ENABLED = 1
SEND_RALLY_DISCORD_ENABLED = 1
SEND_RALLY_Mail_ENABLED = 0
[PATHFINDER.MAP.ALLIANCE]
LIFETIME = 99999
MAX_COUNT = 4
MAX_SHARED = 2
MAX_SYSTEMS = 100
LOG_ACTIVITY_ENABLED = 1
LOG_HISTORY_ENABLED = 1
SEND_HISTORY_SLACK_ENABLED = 1
SEND_RALLY_SLACK_ENABLED = 1
SEND_HISTORY_DISCORD_ENABLED = 1
SEND_RALLY_DISCORD_ENABLED = 1
SEND_RALLY_Mail_ENABLED = 0
; Route search ====================================================================================
[PATHFINDER.ROUTE]
; 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
; Initial count of routes that will be checked when a system becomes active
; Syntax: Integer
; Default: 4
SEARCH_DEFAULT_COUNT = 10
; Max count of routes that can be selected in 'route settings' dialog
; Syntax: Integer
; Default: 6
MAX_DEFAULT_COUNT = 10
; Max count of routes that will be checked (MAX_DEFAULT_COUNT + custom routes)
; Syntax: Integer
; Default: 8
LIMIT = 12
; Email notifications =============================================================================
[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 for characters. Users get logged out after X minutes
; Hint: Set to 0 disables login time and characters stay logged in until Cookie data expires
; Syntax: Integer (minutes)
; Default: 480
LOGGED = 480
; Double click timer
; Syntax: Integer (milliseconds)
; Default: 250
DBL_CLICK = 250
; Time for status change visibility in header
; Syntax: Integer (milliseconds)
; Default: 5000
PROGRAM_STATUS_VISIBLE = 5000
[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 = 500
[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 = 100
[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 = 1000
; 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 = 100
; CACHE ===========================================================================================
[PATHFINDER.CACHE]
; Checks "character log" data by cronjob after x seconds
; If character is ingame offline -> delete "character log"
; Syntax: Integer (seconds)
; Default: 180
CHARACTER_LOG_INACTIVE = 180
; 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
; EOL connections get auto deleted by cronjob afterwards.
; Syntax: Integer (seconds)
; Default: 15300 (4h + 15min)
EXPIRE_CONNECTIONS_EOL = 15300
; 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)
; 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 = error
; SSO error log
SSO = sso
; Login info
CHARACTER_LOGIN = character_login
; Character access
CHARACTER_ACCESS = character_access
; Session warnings (mysql sessions only)
SESSION_SUSPECT = session_suspect
; Account deleted
DELETE_ACCOUNT = account_delete
; Admin action (e.g. kick, ban)
ADMIN = admin
; TCP socket errors
SOCKET_ERROR = socket_error
; debug log for development
DEBUG = debug
[PATHFINDER.HISTORY]
; cache time for parsed history log file data
; Syntax: Integer (seconds)
; Default: 5
CACHE = 5
; File folder for 'history' logs (e.g. map history)
; Syntax: String
; Default: history/
LOG = history/
; Max file size for 'history' logs before getting truncated by cronjob
; Syntax: Integer (MB)
; Default: 2
LOG_SIZE_THRESHOLD = 2
; log entries (lines) after file getting truncated by cronjob
; Syntax: Integer
; Default: 1000
LOG_LINES = 1000
; ADMIN ===========================================================================================
; "SUPER" admins and additional "CORPORATION" admins can be added here
;[PATHFINDER.ROLES]
;CHARACTER.0.ID = 123456789
;CHARACTER.0.ROLE = SUPER
;CHARACTER.1.ID = 1122334455
;CHARACTER.1.ROLE = CORPORATION
; API =============================================================================================
[PATHFINDER.API]
CCP_IMAGE_SERVER = https://images.evetech.net
Z_KILLBOARD = https://zkillboard.com/api
EVEEYE = https://eveeye.com
DOTLAN = http://evemaps.dotlan.net
ANOIK = http://anoik.is
EVE_SCOUT = https://www.eve-scout.com/api
; GitHub Developer API
GIT_HUB = https://api.github.com
; EXPERIMENTAL [BETA] =============================================================================
; Use these settings with caution!
; They are currently under testing and might be removed in further releases.
[PATHFINDER.EXPERIMENTS]
; Try to use persistent database connections
; PDO connections get initialized with ATTR_PERSISTENT => true .
; http://php.net/manual/en/pdo.connections.php#example-1030
; Hint: Set 'wait_timeout' to a high value in your my.conf to keep them open
; Syntax: 0 | 1
; Default: 0
PERSISTENT_DB_CONNECTIONS = 1